Otsu算法在Canny算子中的应用中,Otsu算法的程序后,要不要再添加在Canny算子的程序

来源:百度知道 编辑:UC知道 时间:2024/05/13 20:00:34
我要写的是Otsu算法在Canny算子中的应用中,以下是完成Otsu算法的程序部分:
I = imread('D:\4.jpg');
[x,map]=rgb2ind(I,128);
imshow(x,map);
I = imread('D:\4.jpg');
[x,map]=rgb2ind(I,128);
imshow(x,map); %rgb2ind函数将RGB图像转化成索引图像
Q=ind2gray(x,map);
imshow(x,map)
figure,imshow(Q);
S=medfilt2(Q,[7 7]); %中值滤波,窗口大小为7×7
figure,imshow(S);
figure,imhist(S);

Threshold=graythresh(S); %默认的就是用otsu
I3=im2bw(S,Threshold);
figure,imshow(I3);

问题一:在以上程序后,我还要不要再添加下面这段canny算子的程序呀:
BW5=edge(I3,'Canny');
figure,imshow(BW5);

问题二:请问,我做Otsu算法,要不要做中值滤波呀

问题一:
OTSU法是二值化图像的算法,经过OTSU处理图像就成了黑白二值图。
CANNY算法是针对灰度图的边缘提取算法。OTSU处理后,不需要再加CANNY处理了。

问题二:
如果图像噪音较大,就需要先做中值滤波,或其它降噪处理。这是图像处理的前处理。做前处理的目的是提高图像质量,然后再做OTSU,效果会好一些。但图像本身就很清晰的话,就不需要加中值滤波了。

通过你的问题,我感觉你还没有透彻理解几个术语的概念。
先想清楚想把什么样的图像处理成什么样的图像,然后根据目的选择处理方法。

如果话说重了,请原谅。