Image Processing - Absolute sum of the differences employing a weighted kernel
1 回表示 (過去 30 日間)
古いコメントを表示
Dear all,
I hope you can help. I am trying to replicate an alghoritm (for target detection) found in a research paper:
Unfortunately, I am stuck with an equation (see Eq. 20 and 21 in the link above), and I would grately appreciate your help.
I have an image, let's call it I (I=5x5).
I performed a Top-hat transform and now I need to apply a 'Local Difference Criterion'.
I created four direction vectors centered at I(i,j), where i and j are the coordinates of the central pixel. The four vectors are defined as:
L1=[I(i-2,j-2),I(i-1,j-1),I(i+1,j+1),I(i+2,j+2)];
L2=[I(i,j-2),I(i,j-1),I(i,j+1),I(i,j+2)];
L3=[I(i+2,j-2),I(i+1,j-1),I(i-1,j+1),I(i-2,j+2)];
L4=[I(i-2,j),I(i-1,j),I(i+1,j),I(i+2,j)];
Now, I need to calculate the sum of the differences in gray values between I(i+x,j+y) and I(i,j) as follows:
where Wx,y is the weighted kernel to describe the absolute difference between I(i+x,j+y) and I(i,j), and is equal to:
Would anyone be able to help me with writing a code to accomplish the above?
Thanks a lot in advance
3 件のコメント
Image Analyst
2023 年 5 月 1 日
編集済み: Image Analyst
2023 年 5 月 1 日
An image of 5x5 is too small for this. Let's hope you made a mistake when you said "I have an image, let's call it I (I=5x5)". I've attached a manual filtering demo. You can build in the weights into it.
採用された回答
Matt J
2023 年 5 月 1 日
編集済み: Matt J
2023 年 5 月 1 日
There are problems with the mathematical formulation, as noted in the comments above. However, for the general task of computing shift-invariant weighted differences, I would set it up like the following:
L(1).deltaX=[-2 -1 1 2]
L(1).deltaY=[-2 -1 1 2]
L(1).weight=rand(1,4);
L(2).deltaX=[0 0 0 0]
L(2).deltaY=[-2 -1 1 2]
L(2).weight=rand(1,4);
...
clear d
for i=numel(L):-1:1
tmp=0;
for j=1:4
x=L(i).deltaX(j); y=L(i).deltaY(j); wxy=L(i).weight(j);
tmp=tmp+wxy*abs(circshift(I,[x,y])-I);
end
d(:,:,i)=tmp;
end
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Mathematics and Optimization についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!