【发布时间】:2013-11-11 17:50:00
【问题描述】:
我正在努力寻找在纯色背景上跟踪不同颜色对象的最佳方法。
我已经阅读过,似乎区分颜色的最佳方法是首先将图像转换为 HSV 空间,然后基于色调进行阈值。但是,由于我不仅在跟踪一个对象,而且不知道用哪些值对其进行阈值,因此哪种方法最好找到这些对象的颜色?直方图方法是否有效,我忽略峰值,因为背景占据了大部分像素,然后其余的峰值代表不同的颜色?
找到不同的颜色后,我可以对图像进行阈值处理,然后找到轮廓,从而勾勒出物体的轮廓。
有没有比我建议的方法更好的方法来跟踪 blob?
我还查看了诸如 cvBlob 之类的库,但是我在尝试安装这些库时遇到了麻烦,所以我宁愿坚持使用纯 OpenCV 实现。
附带说明,我使用的是 C++ OpenCV 库。
【问题讨论】:
-
每个对象都有不同的颜色,还是什么?如果您有一个颜色项目,则无需机器学习或类似的东西。
-
你能上传一些示例图片吗?
标签: c++ opencv image-processing