简体   繁体   English

在OpenCV中识别手绘形状

[英]Recognize hand drawn shape in OpenCV

I have the following task: recognize a set of simple hand-drawn shapes on a sheet of paper from a still image (not a video stream), so they might not be exactly identically pixelwise. 我有以下任务:从静止图像(不是视频流)识别一张纸上的一组简单手绘形状,因此它们在像素方向上可能并不完全相同。

Those shapes are basically symbols for doors, windows, etc. in a floor plan (see attached image), so they might be slightly scaled or rotated (90° steps). 这些形状基本上是平面图中门,窗等的符号(请参见附图),因此它们可能会略微缩放或旋转(90°步进)。 There are about 5 different ones. 大约有5种。

So far I came across SIFT (and its OpenCV-variants SURF and ORB ) as well as a cascaded classifier to recognize haar-like features . 到目前为止,我遇到了SIFT (及其OpenCV变体SURFORB )以及用于识别类似haar的特征级联分类器

For SIFT there seem to be too little key points in such a shape whereas I did not manage to get the haar-trained cascaded classifier to work. 对于SIFT,这种形状的关键点似乎太少 ,而我却没有设法使经过哈尔训练的级联分类器起作用。 Also, a cascaded classifier seems a bit heavy for recognizing such simple shapes, no? 另外,级联分类器对于识别这种简单形状似乎有点沉重,不是吗?


Does anyone of you have any good hints or alternative approaches? 你们中有人有什么好的提示或替代方法吗? Or maybe you even have a snippet of code lying around which I can use? 也许您甚至还可以使用一小段代码?

门的符号

我认为,梯度直方图(HOG)对于此类元素应适用。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM