视频中的Opencv马赛克

Posted

技术标签:

【中文标题】视频中的Opencv马赛克【英文标题】:Opencv Mosaic from video 【发布时间】:2015-04-11 17:50:47 【问题描述】:

我需要对这个视频https://youtu.be/59RJeLlDAxQ 做同样的事情,但在 Opencv 中。现在我正在做这件事http://ramsrigoutham.com/2012/11/22/panorama-image-stitching-in-opencv/,在最终的图像合并中稍作修改,但效果不太好。我该如何继续?

编辑 为了进行测试,我正在使用此页面上的视频实验室http://www.cs.ucsb.edu/~holl/CS290I/Assignments/Assignments-3/Assignment3Mosaicing.html

我在那个视频上运行了我的代码,我得到了这个:

它不是很准确,但没关系。如果我让程序运行,在某个点我的缝合器会产生这个: .

对于拼接 ROI,而不是 ramsrigoutham.com 的,我正在使用这个:

warpPerspective(current_frame, rImg, H, Size(current_frame.cols, current_frame.rows), INTER_NEAREST);


        Mat roi1(final_img, Rect(img_loop.cols, img_loop.rows, vImg[1].cols, vImg[1].rows));
        Mat roi2(final_img, Rect(img_loop.cols, img_loop.rows, rImg.cols, rImg.rows));
        rImg.copyTo(roi2);
        vImg[1].copyTo(roi1);

【问题讨论】:

你应该运行你的算法,直到最后一个正确的帧,然后使用 imshow 逐步调试并检查你的变量,看看它在哪里失败,然后理解为什么。我在您的代码中没有发现任何问题,而且我的窗口非常有限。告诉我们你是否有新的东西。祝你好运! 不知道,检查你的代码。调试是工作的 50%。 【参考方案1】:

为什么不使用:http://docs.opencv.org/modules/stitching/doc/high_level.html#stitcher-composepanorama

它在 2.4.11 和 3.0.0 上可用。

【讨论】:

我尝试了内置模块,但它非常慢(我需要程序尽可能实时)并且类似的帧给了我错误。我必须逐帧拼接,因为我是从流中获取帧,而不是从视频文件中获取帧! 您的问题中的“但效果不佳”是什么意思?在哪些情况下,输出是什么? 它工作得很好,直到某一点,然后它缝合很糟糕。我认为这是选择正确参考框架的问题,或者是单应性问题。我现在不在家,明天如果你愿意,我会用图片编辑帖子! 你不能帮帮我吗? :(【参考方案2】:

您提到的链接是拒绝访问http://www.cs.ucsb.edu/~holl/CS290I/Assignments/Assignments-3/Assignment3Mosaicing.html .

您的代码中的 'img_loop' 和 'Vimg' 和 'rimg' 是什么?您的代码和您链接的代码之间存在一些差异。如果可以解释一下,以便我可以解决您的问题,因为我在 opencv 中做同样的事情

【讨论】:

以上是关于视频中的Opencv马赛克的主要内容,如果未能解决你的问题,请参考以下文章

能去码也能打码!OpenCV实时检测视频流人脸并马赛克之,视频后期福音

Python计算机视觉:视频人脸马赛克

Python计算机视觉:视频人脸马赛克

Python计算机视觉:视频人脸马赛克

OpenCV 例程200篇220.对图像进行马赛克处理

OpenCV 例程200篇220.对图像进行马赛克处理