我想计算给定图像中边缘像素的数量。我通过在图像上使用 Canny 运算符计算得到的图像的白色像素来尝试它。
I = rgb2gray(imread('replay1.jpg'));
bw = edge(I,'canny');
numberOfBins = 256;
[r, cl, x] = size(bw);
[pixelCount, grayLevels] = imhist(bw);
c = sum(pixelCount(pixelCount==255));
disp(c*100/(r*cl));
问题:
1.但这以某种方式对所有图像给出了相同的答案,这表明我做错了。我应该如何在matlab中找到图像的边缘像素数?
2.我也可以在 YCbCr 格式的图像上使用 canny 运算符吗?我试过这样做,但它给了我错误。