【发布时间】:2014-02-08 21:29:32
【问题描述】:
我试图在特定阈值处绘制连接组件的面积与其灰度强度级别。
我想出的代码尝试通过首先将文本图像转换为选定阈值的二进制文件来完成此操作,然后使用regionprops 找到该区域,将此图像转换回灰度。然后我使用hist 找到了强度级别。然后绘制强度与面积的关系。这基本上给了我一个大约 6000 个元素的强度向量,并且连接的组件只有 513。当我尝试 plot 时,我收到以下错误:
???使用 ==> 绘图时出错 向量的长度必须相同。
这是我的代码
img = rgb2gray(imread('urdu.jpg'));
for k = 0:0.01:1
bw_normal = im2bw(img, k);
bw = imcomplement(bw_normal);
[label,n] = bwlabel(bw);
stats = regionprops(label, 'Area');
gray = double(bw_normal);
h = hist(gray);
h = h(:);
plot([stats.Area],h);
%axis([0 350 0 1.1])
hold on;
end
如您所知,我正在尝试以阈值的增量查找连接组件的区域。
我对挑战的实施是错误的吗?这可以通过其他方式完成吗?
为了清楚起见,最终产品应该是这样的:
【问题讨论】:
标签: matlab image-processing plot histogram image-segmentation