error in calculating distance
显示 更早的评论
I have a image and have divided it into blocks
C = mat2cell(I,[128 128],[128 128])
my output is
C =
[128x128 uint8] [128x128 uint8]
[128x128 uint8] [128x128 uint8]
i have taken first block
A1=I(1:128, 1:128);
i want to calculte distance of A1 with C1 ,i tried euclidean distance but i get error
Error in ==> EuD at 23
Distance= sqrt(d);
9 个评论
Pat
2012-1-13
Grzegorz Knor
2012-1-13
How do you calculate d?
Image Analyst
2012-1-13
Is d the Pythagorean theorem between each pixel's intensity, like sqrt(A1 - C1)? Wouldn't that be zero? What is C1? Is that the first block? Well isn't that also A1? So the difference would be zero?
Pat
2012-1-13
Image Analyst
2012-1-13
Well why wouldn't your (inefficient, non-vectorized) function work for any A and B you pass in? Why not use RMS Error or PSNR instead?
Walter Roberson
2012-1-13
You do not show us the error message, and you do not show us what C1 is.
Pat
2012-1-14
Image Analyst
2012-1-14
That's not an official MATLAB error message - the text that shows up in red in the command window. We need the official error message. Please, please simply copy and paste your command window - DON'T paraphrase.
Walter Roberson
2012-1-14
C1 might be that size and data type, but did define it as
C1 = C{1,1};
or as something else?
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Image Arithmetic 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!