だから私はビデオのフレームに色の形(緑、赤、白)を描いています。すべてがうまく機能します。しかし、フレームを VideoWriter に書き込もうとすると、フレーム内のこれらすべての形状が黒に変換されます。これが私のコードです:
CvVideoWriter *new_writer = cvCreateVideoWriter("video.avi",CV_FOURCC('M', 'J', 'P', 'G'), 30, Size(640, 480), 1);
IplImage new_img;
while(!frame.empty()){
//My code
imshow("Frame", frame);
new_img = frame.operator IplImage();
int ret = cvWriteFrame(new_writer, (const IplImage*)&new_img);
}
cvReleaseVideoWriter(&new_writer);
ここでの問題はcvWriteFrame()の行です。この後、すべての形状が黒に変換されます。それらは新しいフレームで黒く表示され、作成されたビデオでも黒く表示されます。何か不足していますか?