使用该代码对图像进行二值化: 读取图像 img = imread2bmp; 创建结构元素 se = streldisk 5; 应用底帽变换 img_tophat = imtophatimg se; 二值化图像 img_bw = imbinarizeimg_tophat; 显示原始图像、底帽变换后的图像和二值化后的图像 subplot131 imshowimg; titleOrigi
这个错误通常是由于输入的图像类型不正确导致的。在这种情况下,可能是因为输入的图像是一个多通道图像,而函数要求一个单通道图像。 解决方法是将图像转换为灰度图像。以下是修改后的代码:
% 读取图像 img = imread('2.bmp');
% 将图像转换为灰度图像 img_gray = rgb2gray(img);
% 创建结构元素 se = strel('disk', 5);
% 应用底帽变换 img_tophat = imtophat(img_gray, se);
% 二值化图像 img_bw = imbinarize(img_tophat);
% 显示原始图像、底帽变换后的图像和二值化后的图像 subplot(1,3,1), imshow(img_gray); title('Original Image'); subplot(1,3,2), imshow(img_tophat); title('Top-hat Transformed Image'); subplot(1,3,3), imshow(img_bw); title('Binary Image');
原文地址: http://www.cveoy.top/t/topic/bnf9 著作权归作者所有。请勿转载和采集!