图像中的对象检测(HOG)

时间:2015-04-21 13:18:59

标签: python image scikit-learn object-detection scikit-image

我想检测显微镜图像细胞内的物体。我有很多带注释的图像(带有对象的应用程序50.000个图像和没有对象的500.000个图像)。

到目前为止,我尝试使用HOG提取特征并使用逻辑回归和LinearSVC进行分类。我已经为HOG或颜色空间(RGB,HSV,LAB)尝试了几个参数,但我没有看到很大的差异,预测率约为70%。

我有几个问题。我应该使用多少图像来训练描述符?我应该使用多少图像来测试预测?

我已经尝试过大约1000张图像用于训练,这给了我55%的正面和5000,这给了我约72%的正面。但是,它也很大程度上取决于测试集,有时测试集可以达到80-90%的正检测图像。

以下是两个包含对象和两个没有对象的图像的示例:

object 01

object 02

cell 01

cell 02

另一个问题是,有时图像包含多个对象:

objects

我应该尝试增加学习集的示例吗?我该如何选择训练集的图像,只是随机的?我还能尝试什么?

任何帮助都会非常感激,我刚开始发现机器学习。我正在使用Python(scikit-image& scikit-learn)。

1 个答案:

答案 0 :(得分:2)

我认为你正走在正确的道路上,但让我提出一些考虑因素:

1 - 训练集的编号在分类中始终很重要 问题(通常,越多越好)。但是,您必须有良好的注释 并且你的方法对异常值应该是稳健的。

2 - 从您放置的图像中,似乎颜色直方图会 比HOG更具辨别力。当我使用颜色直方图时,我通常会去 用于具有相关a-b直方图的Lab颜色空间。 L是亮度和 非常依赖于图像采集(例如亮度)。一种方法 用于重新识别行人的是将图像分成 阻止并计算这些块内的直方图。这个可以 很有帮助。

3 - 测试分类方法的最佳方法是交叉验证: http://en.wikipedia.org/wiki/Cross-validation_%28statistics%29#k-fold_cross-validation

4 - 你有没有尝试其他分类器? Weka可能非常有趣 轻松测试不同的方法/参数: http://www.cs.waikato.ac.nz/ml/weka/

5 - 最后,如果你仍然有不好的结果而且不知道哪个 你应该使用的功能,你可以应用深度神经网络 对它!

希望它有所帮助。