cvFlipで画像を反転
画像を水平、垂直に反転する関数flip
返り値†
void cvFlip(IplImage* src, IplImage* dst, int mode);†
画像を反転してくれる関数cvFlip.その際原点は移動しない
返り値†
srcを垂直方向に反転
- src:IplImage*型の原画像
- dst:IplImage*型の出力画像
- flags:int型のフラグ
- CV_CVTIMG_FLIP
- CV_CVTIMG_SWAP_RB
返り値†
- mode で反転する軸の向きを与える
- mode = 0で垂直反転
- mode = 正の数で水平反転
- mode = 負の数で両方反転
- 内部的には
- modeが0を含んだ負の数なら垂直反転、それ以外なら水平反転
- modeが0を含まない負の数ならもう一度水平反転
- という2段階のロジックが組まれている。
- 以下Cインタフェースの情報
- modeは省略した場合はデフォルト0が利用される
- dstも省略可能
- 原点は変えずに,中身だけ反転させる関数
- 単純に反転だけさせたかったら,IplImage->originの数字のXORを取ればよい
- cvConvertImageも内部ではcvFlipを使ってるだけ
- cvFlipも、内部的にcv::flipをコールしてる
サンプルコード†
#geshi(c++){{
cvFlip( pRaw, pMirror, 1);
// これはpInputRaw水平反転させた画像pMirrorが返ってくる.
cvFlip( pRaw, pUpSideDown, 0);
// これはpInputRawを垂直反転させた画像pUpSideDownが返ってくる.
cv::flip(input, output, 0);
// これは inputを垂直反転させた画像がoutputに格納される
}}
実体ファイル†
- :OpenCV 2.4
- sources/modules/core/src/copy.cpp (cvFlip, flip)
- sources/modules/core/include/opencv2/core/core.hpp
- sources/modules/highgui/src/utils.cpp (cvConvertImage)
- sources/modules/highgui/include/opencv2/highgui/highgui_c.h
- :OpenCV 1.0
- cxcore/src/cxcopy.cpp
- cxcore/include/cxcore.h
- otherlibs/highgui/utils.cpp
- otherlibs/highgui/highgui.h
ジャンル:OpenCV:OpenCV 1.0:OpenCV 2.4準拠