Сделать шаг оценки шага пространственной однородности
Мы хотим сделать алгоритмы
(average) Md=1/(N^2-K) ∑||(x,y)-S(x,y)||
где N - размер блока, S(x, y) - местоположение выбранного пикселя, ближайшего к пикселю в местоположении (x, y), а K - количество выбранных пикселей. Чем ниже значения µd и σ2 d, тем больше пространственная однородность решетки выборки.
За K=9
Я пишу код Matlab для этого алгоритма. Я не нашел, что случилось с кодом
for i=2:1:a-1
for j=2:1:b-1
S=blok(i-1:i+1;j-1:j+1);
sum=sum+abs(blok(i,j)-S(i,j));
end
end
Md =double(sum/((a*b)-9));
1 ответ
Решение
Входной блок 16х16 блок =16х16 (фрагмент изображения)
я нашел S(x,y), делающий ядро [1 1 1; 1 1 1; 1 1 1] свертка с блоком
for i=1:1:14
for j=1:1:14
for m=-1:1
for n=-1:1
S(i+1,j+1)=S(i+1,j+1)+kernel(m+2,n+2).*blok(i-m+1,j-m+1);
end
end
% S=blok(i-1:i+1;j-1:j+1);
total=total+abs(blok(i+1,j+1)-S(i+1,j+1));
end
end
Кажется, это работает на данный момент, но я не уверен.