【问题标题】:Picture and text on video capture视频拍摄中的图片和文字
【发布时间】:2019-03-29 01:42:03
【问题描述】:

我想在视频上放一张图片,我想知道在没有多线程的情况下是否可以在 opencv 中使用。 我想避免它,因为在我的项目中我在 RPI 0W 上运行(这就是我不想要多线程的原因)。 我在互联网上找不到任何关于它的信息。我在 c++ 中得到了一些基本代码。我是新开简历的人。

      int main(){
VideoCapture cap(0);
if (!cap.isOpened())
{
    cout << "error"<<endl;
    return -1;
}
Mat edges;
namedWindow("edges", 1);
Mat img = imread("logo.png");
   for (;;)
{
    Mat frame;
    cap >> frame; // get a new frame from camera
    imshow("edges", WINDOW_AUTOSIZE );
        imshow("edges", img);
    imshow("edges", frame);
    if (waitKey(30) >= 0) break;
 }
}

【问题讨论】:

  • 您能否尝试更详细地解释您已经尝试过的内容?
  • 我尝试在另一个 Mat 变量上加载图像并在同一帧中显示它(imshow(“同名”,图像))但在循环中它会显示一个图像捕获的视频。这就是我谈论多线程的原因
  • “同框显示”是指并排还是并排?
  • 是的,我就是这个意思

标签: c++ opencv


【解决方案1】:

在 OpenCV 中,在同一个窗口中显示两件事会覆盖我认为在你的情况下发生的前一个。 您可以使用 OpenCV addWeighted() 函数或按位运算。 OpenCV 对此有很好的文档。你可以找到它here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-03
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    相关资源
    最近更新 更多