How to perform GLCM?
3 ビュー (過去 30 日間)
古いコメントを表示
Hi. I have a code. but there's a trouble with it. here's the code:
function[cont, ent, enr] = GLCM(CM)
P = CM/sum(sum(CM));
[N,M] = size(CM);
cont = 0;
ent = 0;
enr = 0;
for m = 1:N
mX=0
for m = 1:M
mX = mX + P(n,m);
cont = cont + ((n-1)-(m-1))^2 * P(n,m);
enr = enr + (P(n,m))^2;
if P(n,m)>0
ent = ent - P(n,m) * log10(P(n,m));
end
end
end
here's the error message:

does anyone know what should I do to execute that function? Thanks.
1 件のコメント
Rik
2018 年 8 月 10 日
Apparently your input is not 2D. I must say that this function is very light on comments, making it's use/maintenance more difficult.
回答 (1 件)
Image Analyst
2018 年 10 月 16 日
編集済み: Image Analyst
2018 年 10 月 16 日
Try converting from color to gray scale with rgb2gray() or extracting just one of the color channels.
Also, you're using the size function incorrectly for images. See Steve's blog: http://blogs.mathworks.com/steve/2011/03/22/too-much-information-about-the-size-function/
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!