【发布时间】:2012-07-01 05:49:33
【问题描述】:
我正在 OpenCV 中编写一个 Android 应用程序来检测 blob。一项任务是对图像进行阈值化,以区分前景对象和背景(见图)。
只要图像是已知的,它就可以正常工作,并且我可以手动将阈值传递给 threshold()——在这个特定的图像中,比如说 200。但是假设图像不知道,唯一的知识是是深色实心背景和浅色前景对象如何动态计算阈值?
我遇到了可以计算灰度图像强度分布的直方图。但我找不到分析直方图并选择感兴趣对象(较轻)所在的值的方法。那是;我想将明显较暗的背景尖峰与较浅的前景尖峰区分开来——在这种情况下高于 200,但在另一种情况下,如果对象是灰色的,则可以说是 100。
【问题讨论】:
-
有很多方法可以做到这一点。也许大津的方法可能对你有用。如果不是,恕我直言,它仍然是一个很好的起点。 en.wikipedia.org/wiki/Otsu%27s_Method
-
你能上传100阈值的图片吗?因为在图像上高于 50 的阈值也是可以接受的...
标签: image-processing opencv computer-vision