在另一个ROI中复制一个cv :: Mat

我需要将cv::Mat图像(源)复制到另一个(目标) cv::Mat图像的ROI。

我发现这个参考 ,但它似乎不适合我的情况。 你有什么指针我怎么能使用OpenCV C ++接口来做到这一点?

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); 

以这种方式为我工作:

 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基于Andrey的答案。

除了上述答案之外,如果您想将开放式Mat的较小区域复制到另一个Mat ,您应该:

 src(Rect(left,top,width, height)).copyTo(dst);