// demo19.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include
#include
#include
#include
int _tmain(int argc, _TCHAR* argv[])
{
IplImage* frame;
IplImage* frame2;
IplImage* frame3;
frame=cvLoadImage("E:\\imgs\\9bb8e197jw1e3nbkoi3hgj.jpg",1);
frame2 = cvCreateImage(cvGetSize(frame), IPL_DEPTH_8U, 1);
frame3 = cvCreateImage(cvGetSize(frame), IPL_DEPTH_8U, 1);
CvSize dstSize;
dstSize.width = frame->width;
dstSize.height = frame->height;
IplImage* dstImg=cvCreateImage(dstSize, frame->depth, frame->nChannels);
cvZero(dstImg);
cvConvertImage(frame, frame2, 1);
cvCanny(frame2, frame3, 10, 100, 3);
cvSetImageROI(dstImg,cvRect(
0,
0,
frame->width/2,
frame->height/2
));
cvCopy(frame, dstImg);
cvResetImageROI(dstImg);
cvSetImageROI(dstImg,cvRect(
frame->width/2,
0,
frame->width/2,
frame->height/2
));
dstImg->nChannels =1;
cvCopy(frame2, dstImg);
cvResetImageROI(dstImg);
cvSetImageROI(dstImg,cvRect(
0,
frame->height/2,
frame->width,
frame->height/2
));
dstImg->nChannels =1;
cvCopy(frame3, dstImg);
cvResetImageROI(dstImg);
cvNamedWindow("dstImg");
cvShowImage("dstImg", dstImg);
cvWaitKey(0);
cvReleaseImage(&frame);
cvReleaseImage(&frame2);
cvReleaseImage(&frame3);
cvReleaseImage(&dstImg);
cvDestroyWindow("dstImg");
}