Calculate the difference between adjacent pixels

9 次查看(过去 30 天)
Hello Team,
I have written this Matlab code to calculate the absolute difference between horizontally adjacent pixels.
imageArray = imread('index.jpg');
information = imfinfo('index.jpg')
for j = 1:1:information.Height - 1
for i = 1:1:information.Width - 2
D_hor(i,j) = abs(imageArray(i,j) - imageArray(i+1, j))
i = i +1
end
j = j+1
end
Once I started verifying the code using a simple Matrix, it displayed incorrect results.
Can you please help me?
Regards,

采纳的回答

jonas
jonas 2018-9-30

Try this instead

abs(diff(imageArray,1,2)) 
  7 个评论
Matlab Student
Matlab Student 2018-10-3
Good Morning Jonas,
May I ask how can I calculate the same in the vertical direction? I mean how to calculate the difference between vertically adjacent pixels?
Thanks in advance,
jonas
jonas 2018-10-3
Just change the dimension argument from 2 to 1 :)
abs(diff(imageArray,1,1))

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by