2013-02-17 12 views
7

私は、フレームの反転を必要とするビデオ処理プロジェクトに取り組んでいます。私はcvFlipを使ってみましたが、y軸(x軸は動作しています...)に沿って反転しているように見え、セグメンテーションエラーが発生します。他のオプションはありますか?鏡映効果を得るために画像を反転する

cv::Mat dst=src;  //src= source image from cam 
cv::flip(dst, dst, 1);  //segmentation fault shown 

imshow("flipped",dst); 
+0

人々は、あなたがそれを修正することができますので、該当するコードを投稿してくださいあなたは別の出力先cv::Matを必要としています。 – Mat

+0

これはQtとどのように関連していますか? –

+0

@Stephen Chu全くありません – berak

答えて

4

使用cv::flipflipcodeとして1を渡します。

サンプルコードを使用して編集を確認すると、元に戻すことができません。キーは正確にsrcようdstを作成することです

cv::Mat dst; 
cv::flip(src, dst, 1); 
imshow("flipped",dst); 
+0

私はその人を試しましたが、セグメンテーションフォルトが発生しました.... – ranger

+1

@ranger場所を入れ替えることはできません。編集を参照してください。 – juanchopanza

+0

セグメンテーションフォルトを示す別の宛先も試しました! – ranger

10
cv::Mat src=imload("bla.png"); 
cv::Mat dst;    // dst must be a different Mat 
cv::flip(src, dst, 1);  // because you can't flip in-place (leads to segfault) 
2

cv::Mat dst = cv::Mat(src.rows, src.cols, CV_8UC3); 
cv::flip(src, dst, 1); 

imshow("flipped", dst); 
+1

'dst = cv :: Mat(src.rows、src.cols、CV_8UC3);を設定する必要はありません。flip関数は自動的にそれを処理します。 – PaulrBear

関連する問題