我正在我的大学里建立一个网络摄像头应用程序作为我的C ++项目。我正在集成QT(用于GUI)和OpenCV(用于图像处理)。我的应用程序将是一个简单的网络摄像头应用程序,将访问网络摄像头,显示/录制视频,捕获图像和其他东西。
好吧,我还想提供一个功能,为捕获的图像或流媒体视频添加剪贴画。在我的研究中,我发现我们无法使用OpenCV覆盖两个图像。我能找到的最佳选择是重新配置整个图像,将剪贴画添加到原始图像中,使其成为单个图像。你看,这对我不起作用,因为我必须能够移动剪贴画并调整大小或旋转画布中的剪贴画。 所以,我想知道是否有人能告诉我如何最有效地实现我想要的效果。
我真的很感谢你的帮助。项目提交的截止日期即将结束,并且在完成的道路上有巨大的冲击。 PLEEEASE ...... RELP !!
答案 0 :(得分:1)
如果您只是想在openCV图像上贴一个徽标,那么您只需在目标视频图像上定义一个感兴趣的区域(roi)并将源图像复制到此(详细信息因opencv的每个版本而异)
如果您希望徽标是半透明的 - 就像电视频道ID一样 - 那么您可以复制图像,但会在写入目标为source_pixel / 2 + dest_pixel / 2的像素上循环;