2

OpenCV での RAW YUB ビデオの読み込みに問題があります。次のコマンドを使用して mplayer で再生できます。

mplayer myvideo.raw -rawvideo w=1280:h=1024:fps=30:y8 -demuxer rawvideo

OpenCV でロードするための私のコードは次のとおりです。

CvCapture* capture=cvCaptureFromFile("C:\\myvideo.raw");

cvCaptureFromFile常に NULL を返します。しかし、通常の avi ファイルで試してみると、コードは正常に実行されます (キャプチャは null ではありません)。

Windows 7 で最新バージョンの OpenCV を使用しています。

編集:出力メッセージは

[IMGUTILS @ 0036f724] Picture size 0x0 is invalid  
[image2 @ 009f3300] Could not find codec parameters (Video: rawvideo, yuv420p)

ありがとう

4

1 に答える 1

1

OpenCV は ffmpeg をバックエンドとして使用しますが、ffmpeg 関数のサブセットのみが含まれています。試すことができるのは、いくつかのコーデックをインストールすることです。(K-liteは少し前に私を助けてくれました)

しかし、OpenCV で生の YUV を取得することが目的である場合、答えは「不可能」です。

OpenCV はすべての入力形式を BGR に変換するようにハードコードされているため、生の入力を開くことができたとしても、渡す前に自動的に BGR に変換されます。それを解決する機会はありません。唯一の方法は、別のキャプチャ ライブラリを使用するか、OpenCV にハッキングすることです。

(YUV入力をシミュレートするために)できることは、aviをキャプチャしてYUVに変換することです

cvtColor(...,CV_BGR2YCBCR /* or CV_BGR2YUV */ );

そしてそれを処理します

于 2011-11-17T10:47:09.823 に答える