我想計算一行中二進制圖像的像素數。但是,我需要統計所有圖層,黑色圖層中的像素爲黑色,並且該層中的像素爲白色。計算二進制圖像中的像素數
對不起,我的英語... 我的代碼是:
I = rgb2gray(imread('pass_p.png'));
level = graythresh(I);
bw = im2uint8(im2bw(I,level));
imshow(bw);
[Nx, Ny] = size(I);
cP = 0;
cB = 0;
%Vectores
B = zeros(1,9);
P = zeros(1,9);
for k = 2:Ny-1
index = 1;
if(bw(((Nx-1)/2),k) == 0) %preto
cP = cP + 1;
if(bw(((Nx-1)/2)-1, (k-1)) == 255)
B(1,index) = B(1,cB);
cB = 0;
index = index +1;
end
end
if(bw(((Nx-1)/2),k) == 255) %branco
cB = cB + 1;
if(bw(((Nx-1)/2)-1, (k-1)) == 0)
P(1,index) = P(1,cP);
cP = 0;
index = index +1;
end
end
end
我的目標是檢測一個人行橫道。 感謝您花時間:)
編輯
這是一個例子形象:
我真的不明白你在做什麼。你可以試着解釋一下自己嗎? – Shai
目標是計算在二進制圖像中有多少層我有黑色和白色(在我的情況下,是人行橫道),並在這些層中計算存在的像素數。你明白 ? – NatsuDragonEye
更好地包含圖像鏈接,以便我們可以運行您的代碼。你是什麼意思層? –