2
私はGigaEカメラを持っていて、グレースケール画像を与えて、ビデオとして録画して後で処理したい。OpenCV機能を使用したグレースケール画像用のVideowriter機能
ウェブカメラでビデオを録画しようとしましたが、ビデオに書き込む前にグレースケールに変換してみました。私はビデオを取得していません。 私のコードは、私がfcc
が-1
は、それらのどれもが映像を録画することはできませんすべての可能性を試してみました使用済み
int main(int argc, char* argv[])
{
VideoCapture cap(0);
VideoWriter writer;
if (!cap.isOpened())
{
cout << "not opened" << endl;
return -1;
}
char* windowName = "Webcam Feed";
namedWindow(windowName, CV_WINDOW_AUTOSIZE);
string filename = "D:\myVideo_greyscale.avi";
int fcc = CV_FOURCC('8', 'B', 'P', 'S');
int fps = 30;
Size frameSize(cap.get(CV_CAP_PROP_FRAME_WIDTH),cap.get(CV_CAP_PROP_FRAME_HEIGHT));
writer = VideoWriter(filename,-1,fps,frameSize);
if(!writer.isOpened())
{
cout<<"Error not opened"<<endl;
getchar();
return -1;
}
while (1)
{
Mat frame;
bool bSuccess = cap.read(frame);
if (!bSuccess)
{
cout << "ERROR READING FRAME FROM CAMERA FEED" << endl;
break;
}
cvtColor(frame, frame, CV_BGR2GRAY);
writer.write(frame);
imshow(windowName, frame);
}
return 0;
} `
を下回っています。 fcc
のcreating a grayscale video using opencvもを持っていますが、それは私を助けませんでした。
ちょっとミカ、私はそれを試してみました。私はフレームfccはCV_FOURCC( 'D'、 'I'、 'V'、 '3')を持っています。または、グレースケール画像用に他の特定のコーデックをご存知ですか? – Reddy2810
、ごめんなさい。 「カラー」に変換するオプションがありますか? cv :: cvtColor(src、dst、CV_GRAY2BGR)。 – Micka
ちょっと動作しますが、私のGigaE Proカメラでは動作しません – Reddy2810