查找图像中的子图像

Lex*_*Lex 5 c# image-processing

我有一个相当简单的情况.我只是不知道任何具体的搜索条件.我有一个图像,在该图像中我有几个其他图像遵循基本模式.它们是矩形,可能具有标志性的图像,可以作为基础.一个重要的部分是,我需要检测旋转/错误缩放的子图像.

基本上我需要做的是将"名片"从单个图像拆分为正确对齐的单个图像.

请原谅我糟糕的油漆技巧! http://yfrog.com/eaproblemjj由于我还在设计要扫描的卡片,我可以放入任何符号或其他可以使检测更容易的东西(正如我所说的那样具有里程碑意义)

AVB*_*AVB 2

如果你的例子具有代表性(我出于某种原因对此表示怀疑),那么霍夫变换就是你的朋友(谷歌搜索,有很多解释和代码)。有了它,您将能够检测矩形。

C# 中霍夫变换的一些示例是http://www.koders.com/csharp/fid3A88BC1FF95FCA9D6A182698263A40EE7883CF26.aspxhttp://www.shedletsky.com/hough/index.html

如果实际发生的情况是您扫描了一些卡片,并且您对过程有一定的控制,那么我建议您确保卡片之间没有重叠,并提供对比背景(与卡片非常不同的背景)。然后任何边缘检测都会让您足够接近您在示例中绘​​制的内容,之后您可以使用霍夫变换。

或者,您可以实现论文http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.59.4239,它使用霍夫变换直接检测矩形,而不进行边缘检测。

如果我不明白您的问题,或者您需要澄清,请进一步编辑您的问题并对此答案发表评论。