【发布时间】:2012-03-19 03:40:50
【问题描述】:
在 Matlab 中,我想对灰度图像进行阈值化以将其转换为黑白图像:
for k=1:Y
for i=1:X
if gray(i,k)>T
gray(i,k)=1;
else
gray(i,k)=0;
end
end
end
你认为T的值应该是多少?
【问题讨论】:
-
为 T 选择一个值(实际上,特别是只选择 一个 值)确实是一个相当困难的问题,上次我查看了有关该主题的新研究论文.
-
此外,它在很大程度上取决于您的应用程序以及您将使用的特定数据的性质。你能扩展一下你的问题描述吗?
-
正如他们所提到的,二值化算法数量众多。对于使用全局阈值的简单示例,您可以尝试旧的备用方法,Otsu 的方法:en.wikipedia.org/wiki/Otsu's_method 但如果不实际查看您的数据,没有人能够告诉您 T 的好值。
-
这取决于你想对输出做什么。是给人看的吗?做什么机器检测?打印?投影? ...
-
这类问题也请访问 dsp.stackexchange.com! :)