【问题标题】:OpenCV-How to rotate captured video from cameraOpenCV-如何从相机旋转捕获的视频
【发布时间】:2018-06-22 03:22:29
【问题描述】:

我有使用 C 语言的 OpenCV 项目。我想旋转从相机捕获的视频,我该怎么做? OpenCV中的旋转功能是什么?我的代码如下

static CvCapture * cap;

cap = cvCaptureFromCAM(cam_index);

Flip(cap, 0);

但它出错了。如何旋转我的视频?请帮忙

【问题讨论】:

  • 就用cvWarpAffinedocs.opencv.org/2.4/modules/imgproc/doc/…,我来宾:)
  • 错误是什么?你确定你正在获取图像吗?
  • 我现在可以翻转它,只是它只能翻转 180 度。不能翻转 90 度。我怎样才能翻转 90 度。
  • @TuấnTrầnDuy 有没有类似的 C 语言项目可以分享给我作为参考?谢谢
  • @DerickLoo 这只是一些简单的行代码。可以参考stackoverflow.com/a/15043287/5832644

标签: opencv


【解决方案1】:

您可以逐帧旋转视频。首先,使用getRotationMatrix2D() 得到旋转矩阵,然后使用warpAffine() 旋转每一帧。

Mat image = imread("test.jpg");
Mat rot = getRotationMatrix2D(Point2f(image.cols/2.0, image.rows/2.0), angle, 1.0);
Mat rotated;
warpAffine(image, rotated, rot, image.size());

【讨论】:

  • 如何在 C 语言中使用这 2 个函数?有没有类似的C语言项目可以分享给我作为参考?非常感谢。
  • @DerickLoo 查看我添加到答案中的代码 sn-p。
猜你喜欢
  • 1970-01-01
  • 2020-02-11
  • 2022-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多