2012-07-07 63 views
0

虽然我可以在整个图像写入一个文件与写部分文件

cvSaveImage("image.png", img); 

我怎么能写只能从我工作的文件图像的给定矩形?

+2

你有没有试过用cvSetImageROI(img,roi)设置图像ROI? – 2012-07-07 14:37:03

+0

@LukeMorgan其实,我并不知道。谢谢,你应该发布这个答案。 – winck 2012-07-07 14:44:15

回答

1

Mat构造:

Mat(const Mat& m, const Rect& roi); 

所以只是用它!

或者,如果你使用c(不c++)接口比你要设置ROI(感兴趣区域):

http://nashruddin.com/OpenCV_Region_of_Interest_(ROI)/

您的代码应该是这样的:

cvSetImageROI(img, rect);//rect is a ROI 
cvSaveImage("image.png", img); 

如果您想要以完整图像重新工作,而不是重置投资回报率:

cvResetImageROI(IplImage* img) 
+1

他正在使用C界面,而不是C++一个 – 2012-07-07 14:39:24

+0

@LukeMorgan耶刚刚编辑我的帖子。 – ArtemStorozhuk 2012-07-07 14:39:48