#include "cv.h"
#include "highgui.h"
int main()
{
IplImage* img = cvCreateImage( cvSize(200,200), IPL_DEPTH_8U, 1 ); //创建一指向尺寸为210*210像素、深度为8、通道为1的IplImage指针img
cvZero( img ); //将img指向的图像清零
/*绘制上部分*/
int x = 0;
int y = 0;
int scalar = 0;
int add = 0;
while (add < 200)
{
cvSetImageROI( img, cvRect( x, y, 200-add, 10 ));
cvSet( img, cvScalar(scalar));
x += 10;
y += 10;
scalar += 20;
add += 20;
cvResetImageROI( img );
}
/*绘制下部分*/
x = 0;
y = 189;
scalar = 0;
add = 0;
while (add < 200)
{
cvSetImageROI( img, cvRect( x, y, 200-add, 10 ));
cvSet( img, cvScalar(scalar));
x += 10;
y -= 10;
scalar += 20;
add += 20;
cvResetImageROI( img );
}
/*绘制左部分*/
x = 0;
y = 0;
scalar = 0;
add = 0;
while (add < 200)
{
cvSetImageROI( img, cvRect( x, y, 10, 200-add ));
cvSet( img, cvScalar(scalar));
x += 10;
y += 10;
scalar += 20;
add += 20;
cvResetImageROI( img );
}
/*绘制右部分*/
x = 189;
y = 0;
scalar = 0;
add = 0;
while (add < 200)
{
cvSetImageROI( img, cvRect( x, y, 10, 200-add ));
cvSet( img, cvScalar(scalar));
x -= 10;
y += 10;
scalar += 20;
add += 20;
cvResetImageROI( img );
}
cvNamedWindow( "homework_3-5", CV_WINDOW_AUTOSIZE );
cvShowImage( "homework_3-5", img );
cvWaitKey(0);
cvReleaseImage( &img );
cvDestroyWindow( "homework_3-5" );
return 0;
}
《学习OpenCV》练习3-5
最新推荐文章于 2019-07-04 15:02:31 发布