将图像的部分写入文件

时间:2012-07-07 14:32:55

标签: c opencv

虽然我可以使用

将整个图像写入文件
cvSaveImage("image.png", img);

如何只将我正在处理的图像中的给定矩形写入文件?

1 个答案:

答案 0 :(得分:1)

Mat构造函数:

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

所以只需使用它!

或者,如果您使用c(非c++)界面,则必须设置投资回报率(感兴趣区域):

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

您的代码应如下所示:

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

如果您想要使用完整图像再次工作,则需要重置ROI:

cvResetImageROI( IplImage* img )