c++ - 使用 opencv 创建灰度视频

标签 c++ opencv camera

我需要在 Mac os X 10.8 上使用 OpenCV 保存来自 GIge 相机的灰度视频。我使用了这段代码:

 namedWindow("My video",CV_WINDOW_AUTOSIZE);
 Size frameSize(659, 493);
 VideoWriter oVideoWriter ("MyVideo.avi",-1, 30, frameSize, false);

 While(1)
 {
 ...
     Mat Image=Mat(Size(GCamera.Frames[Index].Width,GCamera.Frames[Index].Height),CV_8UC1,GCamera.Frames[Index].ImageBuffer);

     oVideoWriter.write(Image);
 ...   
 }

我遇到了这个错误:

OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cvtColor, file /Users/rosa/OpenCV-2.4.3/modules/imgproc/src/color.cpp, line 3270 libc++abi.dylib: terminate called throwing an exception The program has unexpectedly finished.

最佳答案

我是这样做的:

 VideoWriter oVideoWriter ("MyVideo.avi",CV_FOURCC('M','J','P','G'), 30, frameSize);

 While(1)
 {
     Mat Image=Mat(Size(GCamera.Frames[Index].Width,GCamera.Frames[Index].Height),CV_8UC1,GCamera.Frames[Index].ImageBuffer);
     Mat colorFrame;
     cvtColor(Image, colorFrame, CV_GRAY2BGR);
     oVideoWriter.write(colorFrame);
 }

关于c++ - 使用 opencv 创建灰度视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23066542/

相关文章:

c++ - 为什么 C++ 构造函数接受不正确的类型作为参数?

android - 下载并检查未为 luac 定义的目标

c++ - Boost Python : Fails to call a C++ virtual function, 在 Python 派生类中被覆盖

opencv - 如何找到 opencv 函数源代码?

android - 使用 Android NDK 和内核不支持的摄像头的原始 USB 连接实现 UVC 驱动程序

c++ - ICU 的 BreakIterator 文档不正确?

python - 开放式 CV 轮廓面积计算错误

c++ - 数组的卷积

python - TypeError:来自Jetson Nano上的Raspberry Pi Camera的cv2.imread()的错误参数类型

cordova - PhoneGap/Cordova 的 getUserMedia() 垫片?