我有一本书的照片,就像这样
this http://img9.imageshack.us/img9/8981/photoexl.jpg
我想通过OpenCV获得本书的区域。
我尝试过几种方法:Canny,findContours,cvblobs ......但我在这个领域根本没有经验,我想知道是否有最佳的方法。
我不能对背景的颜色做任何假设(除了它与书的不同)。
由于
答案 0 :(得分:1)
您可以使用CvFindContours,因此您可以获得所有轮廓的列表。 探索列表并查找具有更多元素(点)的计数,然后应用函数cvConvexHull(轮廓将不完美,您丢弃一些点并获得凸区域) 如果它仍然不起作用,你可以添加从第一个函数中恢复的其他轮廓,但你需要通过trting检查它
答案 1 :(得分:0)
您应该考虑使用基于SIFT或SURF的算法,以便检测和描述图像中的局部特征(如本例中的书籍)。
一个有趣的实现是OpenSurf,它在内部使用OpenCV来实现一般的计算机视觉功能。我今年已经将它用于基于图像的搜索引擎(巧合的是,对于使用过的测试用例书)。
答案 2 :(得分:0)
你可以尝试这个在线设计师 http://www.3p-publisher.com/index.php/id-3p-online-photobook-designer-photo-book-editor-print-business.html
答案 3 :(得分:-1)
我认为这本书的轮廓是照片中最大的封闭轮廓。