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:13 3/2 星期六 2013
23
*/
24
25
//
圖像寬高宏定義
26
#define
IMG_WIDTH 400
27
#define
IMG_HEIGHT 400
28
29
//
兩個頂點
30
CvPoint point1 = cvPoint(
80
,
20
);
31
CvPoint point2 = cvPoint(
160
,
80
);
32
33
//
Help function
34
//
檢查當前點是否在要畫的長方形區域內
35
bool
isThePointInRectangle(
int
x,
int
y)
36
{
37
if
( (x <= point2.x) && (y <=
point2.y)
38
& (x >= point1.x) && (y >=
point1.y))
39
return
true
;
40
else
41
return
false
;
42
}
43
44
45
int
main()
46
{
47
//
創建一個三通道RGB圖像
48
IplImage* image = cvCreateImage(cvSize(IMG_WIDTH, IMG_HEIGHT),
8
,
3
);
49
50
//
將矩陣元素全部置零
51
cvZero(image);
52
uchar*
p;
53
for
(
int
i =
0
; i < image->height; i++
)
54
{
55
for
(
int
j =
0
; j < image->width; j++
)
56
{
57
p = cvPtr2D(image, i, j,
0
);
58
if
(isThePointInRectangle(i, j) ==
true
)
59
{
60
*(++p) =
255
;
61
}
62
}
63
}
64
cvNamedWindow(
"
img
"
,
1
);
65
cvShowImage(
"
img
"
, image);
66
cvWaitKey(
0
);
67
68
cvReleaseImage(&
image);
69
cvDestroyWindow(
"
img
"
);
70
71
return
0
;
72
}
運行結果:
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

