关于用matlab处理图像的问题,如何将下进行边缘提取,得到比较清晰的轮廓,最好是能寻找到偏心孔的坐标

可以联系我哈 474323571
2025-01-25 05:04:53
推荐回答(3个)
回答1:


用MATLAB处理图片除了提到的“灰度(转换)”去除噪声,如果就直接二值化得话,对于一副对比度不大的图片,是不容易清楚地区分的。可以试试灰度拉伸,灰度值均衡化,自适应阈值分割等图像增强的方法。
尺寸测量也就是特征提取,面积可以用扫描法计算区域的像素值,如
sum=0;
for i=30:480
for j=5:505
if j2(i,j)>=0.5 (j2为处理图像)
sum=sum+1;
end如果是计算轮廓长度,用边缘提取的计算再用扫描法计算像素值点。

MATLAB图像处理的算法用到得程序都不难,只要你的图像处理流程试出来的效果好,计算相对都比较简单。

回答2:

gImg=rgb2gray(Img);%Img是彩色图像,gImg是灰度图像
eImg=edge(gImg,'sobel');%sobel边缘检测,eImg是二值图像
剩下的可以用数学形态学运算,计算每个连通域的面积和周长,
圆的周长面积满足一定比例,满足此比例的就是偏心孔位置

回答3:

可以先二值化;然后用bwlabel做统计处理