2014-03-01 43 views
3

我是纹理识别领域的新手,我想知道哪些方法可以解决opencv中的纹理问题。图片中特定区域的纹理识别

我需要识别图片中某个区域内的纹理,并判断它在整个区域中是否均匀,均匀。

更深层次,我需要能够判断一个可能的堕落者是一个人(有许多不同类型的纹理),或者是像枕头或毛毯那样的错误。

任何人都可以提出解决方案吗? 有没有一些已经使opencv代码适应?

提前致谢!

+0

你试过甚么?请包含代码。请更新您的文章,并附上一张样本图片,如果可能的话,还包括您手动绘制您尝试检测的区域的其他图片。 – kkuilla

+0

你为什么要用纹理来识别一个人?例如,你如何区分一个躺在地上的人与一件皮大衣和一只动物?他们可以有相同的纹理... – kkuilla

回答

3

为什么不使用haralick功能?我换句话说它们被称为纹理特征。其基本思想是从计算haralick特征的基础上计算给定灰度图像的共生矩阵。你可以选择不同的功能,如对比度,相关性,熵等,它可以描述你的纹理。我想对于相同的纹理,给定的特征应该具有相同(相似)的值,以便可以区分纹理。

这里有些链接可能会有所帮助:

所以,据我所知,没有在OpenCV的haralick功能的实现,但你可以使用python与scikit-image(当然,如果你不介意使用与C++不同的东西,你可以使用Python的opencv)。

+0

感谢您的建议!它听起来不错,并且对我想要的东西很接近,但是我不确定python,因为我正在编程一个移动机器人,并且我想尽一切努力来完成同样的实现。我将在opencv中查找它,甚至我可以如何通过自己来实现它。 – user3368005

+0

在opencv中实现这样的功能将会很好。这不是一项艰苦的工作,如果你为自己做实现,考虑在opencv组上提交你的代码,以便他们可以将你的代码与库合并。 – marol