
如果这个是摆正的矩形,就是说没有偏角,那就只要找到左上角坐标和长,宽,然后设置一个mask,复制出来就行。但是这个点坐标和长宽不好确定。对你这个图,我提供一种办法吧,你可以试试,以前项目遇到过,肯定能行。你用轮廓检测,然后对所有内轮廓经行循环找到最大的一个内轮廓,获取这个最大的轮廓,然后设置一张和这个原图一样的全0图,在这张全0上画出那个你找到轮廓的内填充域,画完的这个作为你的mask,最后用个copy函数把mask里面的复制下来就行啦。
方法有点笨,但是很实用,楼主可以试试~~·话说去年遇到过类似情况,几个师兄弟一起讨论来讨论去,最后还是这个套路OPENCV能实现。歪的用我说的也没事,真的,你可以试试,不试永远不知道。要智能获取两个点,我看着背景是不怎么好获取~~,如果要把绿线一起抠下来就用外轮廓,canny的时候把系数设置好,绿线外轮廓的面积绝对是最大的,可以弄出来
大概的技术方向吧:
Python调用ffmpeg 或者opencv 读取媒体的帧。
然后针对每一帧,或者自己定义关键帧来提取特征值(SIFT), 用OpenCV来处理。这一段可以存到数据库或者其它别的方向。
任何一帧提取后,计算 SIFT 去上面的数据库匹配。
总结一下就是你要懂OpenCV也就是一定的图像处理能力,然后就是个特征匹配或者图像检索问题。
opencv里面专门设置分辨率的函数根本不起作用。我也是学习者,后来网上查找了手动更改opencv里面的文件/modules/highgui/src/cap_v4lcpp 里面的#define DEFAULT_V4L_WIDTH 640再重新编译opencv。调用设置分辨率才行的。我是在linux下的,驱动本来就不好,也一卡卡的。但是如果offline处理的话,可以自己设置帧率。。。我用的是24版本的
以上就是关于opencv在图像中提取多个图形,怎么 *** 作全部的内容,包括:opencv在图像中提取多个图形,怎么 *** 作、pythonopencv获取不到帧、求C++调用opencv设置获取摄像头图像大小的方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)