60

cv::Mat画像 (ソース) を別の (宛先)cv::Mat画像の ROIにコピーする必要があります。

このリファレンスを見つけましたが、私の場合はうまくいかないようです。OpenCV C++ インターフェースを使用してこれを行う方法を教えてください。

4

3 に答える 3

88

OpenCV 2.4:

src.copyTo(dst(Rect(left, top, src.cols, src.rows)));

OpenCV 2.x:

Mat dst_roi = dst(Rect(left, top, src.cols, src.rows));
src.copyTo(dst_roi);
于 2012-05-07T12:40:33.703 に答える
12

上記の回答に加えて、または修正して、開いている小さな領域Matを別の領域にコピーするMat場合は、次のことを行う必要があります。

src(Rect(left,top,width, height)).copyTo(dst);
于 2015-07-08T02:11:29.730 に答える
9

このように私のために働いた:

Mat imgPanel(100, 250, CV_8UC1, Scalar(0));
Mat imgPanelRoi(imgPanel, Rect(0, 0, imgSrc.cols, imgSrc.rows));
imgSrc.copyTo(imgPanelRoi);

imshow("imgPanel", imgPanel);
waitKey();

アンドレイの回答に基づいて、Opencv 2.4.9 を使用しています。

于 2014-10-05T12:07:17.617 に答える