发布网友 发布时间:2022-04-21 01:42
共2个回答
热心网友 时间:2023-11-03 11:35
连通器 把面积小于一个值的连通器置为0(白色)
L
= bwlabel(bw3, 8);--求连通器
Num = max(L(:));%记录联通器数目
for i = 1:Num %遍历各个连通器
obj= (L == i); %在新矩阵中只记录第i个连通器部分
objArea = sum(obj(:));%第i个连通器有多大
if objArea < objThd 小于100的记为要消除的
tmpPos = find(obj > 0);
xxxx 置零
以上 大意追问二值图像,是把面积大于一个值的连通器置为1(白色)吧?
你的代码objThd,tmpPos和obj代表什么呢?
我的指纹图像实际上是灰度图像,不是二值图像,应该怎么写呢?
热心网友 时间:2023-11-03 11:35
您好,注意是三维矩阵哦,RGB模型!(不过修改过后玉米周围比较模糊,是你的判断算法: if i(x,y,z)==0,不是太恰当,可以考虑优化下!)
代码:
i=imread('1.jpg');
[m,n,q]=size(i);
for z=1:q
for x=1:m
for y=1:n
if i(x,y,z)==0
i(x,y,z)=255;
end
end
end
end