cvCopyで行列のコピーを作成できる

void Mat::copyTo( OutputArray m ) const;

cv::Mat のメソッド。画像データをコピーする

引数

返り値

Mat Mat::clone() const;

画像をまるまるコピーする。

引数

返り値

void cvCopy( CvMat* src, CvMat* dst, CvMat* mask = NULL);

行列srcから行列dstへ中身をコピーする関数.Mat::copyTo のCインタフェース、CvMat

引数

返り値

IplImage* cvCloneImage(IplImage* image);

画像のコピーを作る。Mat::clone のCインタフェース、IplImage

引数

返り値

CvMat* cvCloneMat(CvMat* matrix);

行列のコピーを作る。Mat::clone のCインタフェース、CvMat

引数

返り値

解説

サンプルコード

行列の場合

CvMat	*S = cvCreateMat( 3, 3, CV_32F);
CvMat	*R = cvCreateMat( 3, 3, CV_32F);
cvCopy( S, R); //これだけだと空っぽの行列同士のコピーになるが

画像の場合

IplImage *input = cvLoadImage("./test.bmp",0);
IplImage *copy = cvCreateImage( cvGetSize(input), input->depth, input->nChannels);
//ここで同じ領域を宣言しておかないといけない
cvCopy( input, copy);

下位互換性

cvCopyは昔cvmCopyと言う名前で実装されていた.下位互換性のため,今でもcvmCopyは利用できるが,将来的にOpenCVから削除される可能性があるため,cvCopyを利用することが推奨されている.

参考:後方互換関数を使わないようにする

実体ファイル

ジャンル:OpenCV:OpenCV 1.0:OpenCV 2.4準拠


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-05-13 (火) 09:20:41