1
#include <highgui.h>
2
#include <cv.h>
3
#include <stdio.h>
4
5
#pragma
comment (lib,"opencv_calib3d231d.lib")
6
#pragma
comment (lib,"opencv_contrib231d.lib")
7
#pragma
comment (lib,"opencv_core231d.lib")
8
#pragma
comment (lib,"opencv_features2d231d.lib")
9
#pragma
comment (lib,"opencv_flann231d.lib")
10
#pragma
comment (lib,"opencv_gpu231d.lib")
11
#pragma
comment (lib,"opencv_haartraining_engined.lib")
12
#pragma
comment (lib,"opencv_highgui231d.lib")
13
#pragma
comment (lib,"opencv_imgproc231d.lib")
14
#pragma
comment (lib,"opencv_legacy231d.lib")
15
#pragma
comment (lib,"opencv_ml231d.lib")
16
#pragma
comment (lib,"opencv_objdetect231d.lib")
17
#pragma
comment (lib,"opencv_ts231d.lib")
18
#pragma
comment (lib,"opencv_video231d.lib")
19
20
/*
21
*《学习OpenCV》第三章第五题
22
* 完成时间:2:49 3/2 星期六 2013
23
*/
24
25
//
图像高宽
26
#define
IMG_SIZE 420
27
28
//
边界宽度
29
#define
BORDER_WIDTH 10
30
31
int
main()
32
{
33
//
创建8位单通道图像
34
IplImage * image = cvCreateImage(cvSize(IMG_SIZE, IMG_SIZE),
8
,
1
);
35
36
//
初始化置零
37
cvZero(image);
38
39
//
灰度值
40
int
value =
0
;
41
//
ROI区域大小
42
int
rect_size =
IMG_SIZE;
43
for
(
int
length = IMG_SIZE; length >=
0
&& value <=
200
; length -= BORDER_WIDTH, value +=
10
)
44
{
45
cvSetImageROI(image, cvRect(IMG_SIZE - length, IMG_SIZE-
length, rect_size, rect_size));
46
47
rect_size -=
2
*
BORDER_WIDTH;
48
cvSet(image, cvScalarAll(value));
49
cvResetImageROI(image);
50
}
51
52
cvNamedWindow(
"
img
"
,
1
);
53
cvShowImage(
"
img
"
, image);
54
55
cvWaitKey(
0
);
56
cvReleaseImage(&
image);
57
cvDestroyAllWindows();
58
59
return
0
;
60
}
运行结果:

