1、使用cv::point(代表點),cv::scalar(代表顏色向量);
2、繪製線,矩形,圓,橢圓等基本幾何形狀;
3、隨機生成與(影象上)繪製文字;
4、**演示;
1、point表示2d平面上乙個點x,y;
//use
point p;
p.x =10;
p.y =8;
orp =
point(10
,8);
2、scalar表示四個元素的向量(scalar最多只能傳入4個引數)
scalar
(a,b,c)
;//a = blue;b = green;c = red表示rgb的3個通道
畫線:cv::line;
line()中有個引數:linetype:line_4\line_8\line_aa(反鋸齒);
畫橢圓:cv::eliipse();
畫矩形:cv::rectangle();
畫圓:cv::circle;
畫填充:cv::fillpoly;
寫字:puttext();
使用rng類生成隨機數,傳入種子12345,方法uniform限定在規定範圍內生成隨機數;
void
randomlinedemo()
line
(bg, pt1, pt2, color,
1, line_8)
;imshow
("random line window"
, bg);}
}
#include
#include
using
namespace std;
using
namespace cv;
mat bgimage;
const
char
* drawdemo_win =
"draw shapes and text demo"
;void
mylines()
;void
myrectangle()
;void
myellipse()
;void
mycircle()
;void
mypolygon()
;void
randomlinedemo()
;int
main
(int argc,
char
** ar**)
mylines()
;myrectangle()
;myellipse()
;mycircle()
;mypolygon()
;//繪製文字 (fontscale)字型大小 thickness: 粗細
puttext
(bgimage,
"hello opencv"
,point
(300
,300
), cv_font_hershey_complex,
1.0,
scalar(12
,23,200),
2, line_8)
;namedwindow
(drawdemo_win, cv_window_autosize)
;imshow
(drawdemo_win, bgimage)
;randomlinedemo()
;waitkey(0
);return0;
}void
mylines()
void
myrectangle()
void
myellipse()
void
mycircle()
void
mypolygon()
//填充圖形
OpenCV 08 繪製形狀和文字
point表示2d平面上乙個點x,y point p p.x 10 p.y 8 or p pont 10,8 scalar表示四個元素的向量scalar a,b,c a blue,b green,c red 表示rgb三個通道 畫線 cv line line 4 line 8 line aa 畫橢圓...
繪製形狀和文字
繪製點 point 繪製線lint 繪製矩形 rectangle 繪製圓形 circle 繪製橢圓 或者弧線 ellipse 繪製多邊形 繪製填充多邊形 繪製文字 puttext 注 字型為 font 或 qt font 備註 linttype line aa 消除鋸齒 隨機生成線 for int ...
opencv 繪製形狀和文字
以下程式可以在影象上寫文字,畫圓,畫矩形,畫線條,寫文字。還可以不斷畫線,非常美。include include includeusing namespace std using namespace cv mat bgimage const char drawdemo win draw shapes...