Opencvは、ピクチャ指定領域に矩形を塗りつぶし、ピクチャに矩形の輪郭を表示する

1754 ワード

需要:画像に指定した領域の輪郭を描く解決方法:まず画像に矩形を塗り、それから矩形の輪郭を描いて画像に表示する
//         ;

#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;
}