怎么在MATLAB里求出一个二值图像1值像素和0值像素个数?
答案:2 悬赏:50 手机版
解决时间 2021-04-27 09:08
- 提问者网友:感性作祟
- 2021-04-26 22:39
怎么在MATLAB里求出一个二值图像1值像素和0值像素个数?
最佳答案
- 五星知识达人网友:醉吻情书
- 2021-04-26 22:45
假设你的二值图像变量为“bw”,则数值为“1”的像素个数(设变量“numVal_1”)是:
numVal_1 = sum(sum(bw));
连用两次sum是将图像中数值的行和列分别加在一起,就可求出像素为1的总数。
要求数值为“0”的像素数(设变量“numVal_0”)可以这样:
numVal_0 = length(find(bw==0));
其中“find(bw==0)”输出所有bw为0的像素序号,“length”函数求序号的长度,也就是所求的数值为“0”的像素个数;
比例:
numVal_1/(numVal_1+numVal_0)
或者:
numVal_1/(size(bw,1)*size(bw,2))
其中“size(bw,1)”求bw中的行数,“size(bw,2)”求bw中的列数。
numVal_1 = sum(sum(bw));
连用两次sum是将图像中数值的行和列分别加在一起,就可求出像素为1的总数。
要求数值为“0”的像素数(设变量“numVal_0”)可以这样:
numVal_0 = length(find(bw==0));
其中“find(bw==0)”输出所有bw为0的像素序号,“length”函数求序号的长度,也就是所求的数值为“0”的像素个数;
比例:
numVal_1/(numVal_1+numVal_0)
或者:
numVal_1/(size(bw,1)*size(bw,2))
其中“size(bw,1)”求bw中的行数,“size(bw,2)”求bw中的列数。
全部回答
- 1楼网友:污到你湿
- 2021-04-27 00:14
假设你的图像是x,那么1值的总数就是sum(sum(x)),所占比例就是sum(sum(x))/(length(x(:,1))*length(x(1,:)))
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯