2

opencvでは、画像と画像のROIに違いはありません。cv :: Matオブジェクトは、次のいずれかになります。

cv::Mat img = cv::imread(fileName);
cv::Mat imgROI(img,cv::Rect(1,2,30,40));

私の質問は、元の画像から元のROI座標をどのように抽出できるか、つまり、次のことを実行する関数です。

cv::Rect originalROIcoords  = roiLocationInOriginalImg(imgROI);
cv::Rect originalROIcoords2 = roiLocationInOriginalImg(img );

originalROIcoordsは(1,2,30,40)である必要があり、originalROIcoords2は(0,0、w、h)である必要があります。ここで、whはそれぞれ元の画像の幅と高さです。

ありがとう。

オハド

4

2 に答える 2

2

元の行列の部分行列の座標を知るには、関数を使用できますMat::locateROI

// locates matrix header within a parent matrix
void locateROI( Size& wholeSize, Point& ofs ) const;
于 2012-12-11T10:24:04.677 に答える