opencv在图片指定区域内填充矩形,并在图片中显示矩形的轮廓

需求:
在图片中画出指定区域的轮廓
解决方法:
先在图片中填充一块矩形,然后画出矩形的轮廓在图片中显示

//画出指定区域的轮廓;

#include "stdafx.h"
#include 
#include 
using namespace cv;
int _tmain(int argc, _TCHAR* argv[])
{
    Mat img= imread("图片.JPG");
    Mat mask = Mat::zeros(img.size(),CV_8UC1);
    Rect rect;
    rect.x = 100;
    rect.y = 100;
    rect.width = 100;
    rect.height = 100;
    mask(rect).setTo(255);

    vector<vector> v;//存储轮廓
    vectorhierarchy;
    findContours(mask,v,hierarchy,CV_RETR_CCOMP, CV_CHAIN_APPROX_SIMPLE);
    drawContours(img,v,0,CV_RGB(255,0,0),1,8);
    imshow("img",img);
    waitKey();
    return 0;
}

你可能感兴趣的:(C++)