Как решить «неопределенную функцию или переменную» - PullRequest
0 голосов
/ 14 января 2011

Я получаю сообщение об ошибке 'Неопределенная функция или переменная' Test_x ', когда я запускаю следующие коды .. Почему я получаю эту ошибку ??

Ниже приведено то, что у меня есть,

for D=max(max(X))                         % Find max value                  
    if D >= 5                       % For only when at least one value >= the threshold

    sumx=conv2(X,kernel,'same');          % Compute the sum of neighbors for each pixel
    nx=conv2(double(X>0),kernel,'same');  % Compute the number of non-zero neighbors          
    avg_x=X;
    avg_x(avg_x<5)=0;                     
    index=(avg_x>=5);                     % Find logical index of pixels >=40
    avg_x(index)=sumx(index)./max(nx(index),1);  % Center or average of the nonzeros
    avg_x1=(avg_x>0);

    tmp_x=avg_x;
    maxVal=max(avg_x(:))+1;
    tmp_x(tmp_x==0)=maxVal;   % Replace all the zeros in the tmp_Z1 with a larger value
    tmp_x=imerode(tmp_x,kernel);

    Test_x=X>=tmp_x;                      % Put one wherever new_Z1(k)>=tmp_Z1(k)   
    Test=Test_x+avg_x1;                   
    Test_X=(Test>0);

   elseif D<5                             % Use when there is no value >= threshold
      Test_X=Test_x.*avg_x1;              % Give Zero matrix

   end
end

Спасибо за вашу помощь:)

1 Ответ

1 голос
/ 17 января 2011

Вы получите ошибку ??? Undefined function or variable 'Test_x'. в своем коде, если начальное значение D меньше 5, и в этом случае ваш код будет выполнять последнюю строку Test_X=Test_x.*avg_x1; без предварительной установки Test_x на что-либо. Вам также придется инициализировать avg_x1 чем-то другим, иначе вы получите ту же ошибку для этой переменной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...