C++?opencv實(shí)現(xiàn)幾何圖形繪制
在學(xué)習(xí)過(guò)程中,我們可以在圖像中繪制一些幾何圖形,比如矩形,橢圓,線段,填充多邊形等,這些函數(shù)都挺容易理解,下面簡(jiǎn)單看一下。
1.矩形 rectangle()
通過(guò)對(duì)角線上的兩個(gè)頂點(diǎn)繪制矩形
void rectangle(InputOutputArray img, Rect rec, const Scalar& color, int thickness = 1, int lineType = LINE_8, int shift = 0); img 名稱(chēng) rec pt1矩形的頂點(diǎn) pt2與pt1相對(duì)的矩形頂點(diǎn) color 顏色 也可以用像素存放類(lèi)Scalar thickness 寬度 如果是-1,就代表對(duì)改矩形進(jìn)行填充 lineType 類(lèi)型 shift 移位點(diǎn)坐標(biāo)中的小數(shù)位數(shù)。
代碼:
int main() { Mat img = Mat::ones(240, 240, CV_8UC3); rectangle(img, Rect(20, 20, 100, 100), Scalar(0, 0, 255),7); imshow("www", img); waitKey(0); }
效果圖:
2. 圓 circle()
void circle(InputOutputArray img, Point center, int radius, const Scalar& color, int thickness = 1, int lineType = LINE_8, int shift = 0); img 名稱(chēng) center 圓心坐標(biāo) radius 圓的半徑 color 圓環(huán)顏色 thickness 正數(shù),則表示圓輪廓的厚度 負(fù)數(shù) 對(duì)該圓填充顏色 lineType 類(lèi)型 shift 移位中心坐標(biāo)和半徑值的小數(shù)位數(shù)。
代碼:
int main() { Mat img1=Mat::zeros(100, 100, CV_8UC3); circle(img1, Point(40, 40), 20, Scalar(0, 0, 255),-1);//-1 填充 imshow("www", img1); waitKey(0); }
效果圖:
3.橢圓 elliple()
void ellipse(InputOutputArray img, Point center, Size axes, double angle, double startAngle, double endAngle, const Scalar& color, int thickness = 1, int lineType = LINE_8, int shift = 0); img 名稱(chēng) center 橢圓的中心。 axes 軸 橢圓主軸大小的一半。 angle 橢圓旋轉(zhuǎn)角度。 startAngle 橢圓弧的起始角,以度表示。 endAngle 橢圓弧的結(jié)束角,以度數(shù)表示。 color 橢圓顏色。 thickness 正數(shù) 橢圓圓弧輪廓的厚度 負(fù)數(shù) 對(duì)橢圓進(jìn)行填充。 linetype 橢圓邊界類(lèi)型。 shift 中心坐標(biāo)和坐標(biāo)軸值的小數(shù)位數(shù)。
代碼:
int main() { Mat img1 = Mat::zeros(300, 300, CV_8UC3); ellipse(img1, Point(100, 100), Size(40, 25), 0, 0, 360, Scalar(0, 0, 255),5); imshow("111", img1); waitKey(0); }
效果圖:
以上就是C++ opencv實(shí)現(xiàn)幾何圖形繪制的詳細(xì)內(nèi)容,更多關(guān)于C++ opencv繪制幾何圖形的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
C標(biāo)準(zhǔn)庫(kù)<assert.h>的實(shí)現(xiàn)詳解
這篇文章主要介紹了C標(biāo)準(zhǔn)庫(kù)<assert.h>的實(shí)現(xiàn),主要包括了<assert.h>的基本概念、實(shí)現(xiàn)及用法等,需要的朋友可以參考下2014-09-09C++中實(shí)現(xiàn)OpenCV圖像分割與分水嶺算法
分水嶺算法是一種常用的圖像區(qū)域分割法,本文主要介紹了OpenCV圖像分割與分水嶺算法,使用C++實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2021-06-06動(dòng)態(tài)數(shù)組C++實(shí)現(xiàn)方法(分享)
下面小編就為大家?guī)?lái)一篇?jiǎng)討B(tài)數(shù)組C++實(shí)現(xiàn)方法(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05