复杂的形状识别

时间:2011-11-14 14:13:37

标签: image-processing opencv shape image-recognition itk

我需要完成演示项目,旨在识别X射线图像上的牙齿。我不熟悉这个主题,我不确定在这种情况下哪种方法更适合。 (我在考虑纹理分割 - 但这只是猜测,我仍然不确定这是否是一个选项)

我需要做的事情基本上是获取牙齿的方向(角度)和放置在每颗牙齿轮廓上的一组点,以完成特定任务的计算。

请就方法和建议提出建议算法/库可能会有所帮助。 C#是可以执行的,但其他语言也可以。

提前致谢。

图像样本都与此相似(我特别感兴趣的是右边第二和第三颗牙齿):

2 个答案:

答案 0 :(得分:2)

我肯定会建议使用OpenCV。它有一个名为EmguCV的C#包装器,应该会有所帮助。

您可能还会考虑查看ITK库,它具有比OpenCV更多的图像注册和分段类型算法,但我相信它只有C ++实现。

希望有帮助!

答案 1 :(得分:1)

哎呀,看起来很痛苦! (图片)我发现AForge库非常有用。它是用C#编写的,你可以在这里下载源代码:

http://www.aforgenet.com/framework/downloads.html

这是一篇很好用的文章:

http://www.codeproject.com/KB/GDI-plus/Image_Processing_Lab.aspx

也许是灰度,然后是高像素强度的阈值,只显示牙齿最轻的部分,然后是边缘检测或轮廓痕迹。看起来牙齿的上边缘具有最高的像素强度,所以一旦找到这些轮廓,你可以做一些触发来找到这个轮廓的角度使用它的lhs和rhs四肢?