opencv在图像中提取多个图形,怎么 *** 作

opencv在图像中提取多个图形,怎么 *** 作,第1张

如果这个是摆正的矩形,就是说没有偏角,那就只要找到左上角坐标和长,宽,然后设置一个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设置获取摄像头图像大小的方法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9276866.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存