我正在尝试使用 opencv 的 VideoWriter 编写视频。这是代码:
int main() {
//read image from file:
Mat image(cvLoadImage("temp.bmp"));
//create videowriter (DivX codec):
VideoWriter record("output.avi", CV_FOURCC('D','I','V','X'), 30, image.size(), true);
for (int i=0; i<100; ++i) {
//write frame to video:
record<<image;
}
}
这是我正在尝试编写的图像(temp.bmp):
(我可以上传原始 bmp 文件,但即使使用此 png 结果也是相同的 - 见下文)。
但是当我打开视频(output.avi)时,我看到了:
视频为何如此偏移?我尝试了不同的编解码器并使用cvtColor (CV_BGR2xxx)将图像转换为不同的类型,但没有运气。
是时候报告错误了吗?