在图像处理的过程中,我们时常需要对指定区域或目标进行操作,这个区域我们称之为感兴趣区域。在学习opencv的初级阶段,对于感兴趣区域的操作方法是必须要掌握的。 Mat image,mask; Rect r1(100,100,50,100); Mat img1,img2,img3,img4; for(;;) { sequence >> image; mask = Mat::zeros(image.size(),CV_8UC1);//zero为与image相同大小的全0图像 mask(r1).setTo(255); //把mask图像的r1区域设为255,即r1大小的白色块 img1 = image(r1); //把image中的r1区域取出保存到img1中 image.copyTo(img2,mask);//把image与mask合并保存到img2中,即image与mask的非0区域合并 image.copyTo(img3); img3.setTo(0,mask);//相当于把image中的与mask的非0区域相同的区域置0,即只有r1区域被置0 imshow("Image sequence", image); imshow("img1",img1); imshow("img2",img2); imshow("img3",img3); imshow("mask",mask); waitKey(0); }