C++?opencv實現(xiàn)幾何圖形繪制
更新時間:2022年05月12日 17:08:51 作者:淺念念52
這篇文章主要為大家介紹了C++?opencv實現(xiàn)幾何圖形的繪制示例實現(xiàn)代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
在學(xué)習過程中,我們可以在圖像中繪制一些幾何圖形,比如矩形,橢圓,線段,填充多邊形等,這些函數(shù)都挺容易理解,下面簡單看一下。
1.矩形 rectangle()
通過對角線上的兩個頂點繪制矩形
void rectangle(InputOutputArray img, Rect rec, const Scalar& color, int thickness = 1, int lineType = LINE_8, int shift = 0); img 名稱 rec pt1矩形的頂點 pt2與pt1相對的矩形頂點 color 顏色 也可以用像素存放類Scalar thickness 寬度 如果是-1,就代表對改矩形進行填充 lineType 類型 shift 移位點坐標中的小數(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 名稱 center 圓心坐標 radius 圓的半徑 color 圓環(huán)顏色 thickness 正數(shù),則表示圓輪廓的厚度 負數(shù) 對該圓填充顏色 lineType 類型 shift 移位中心坐標和半徑值的小數(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 名稱 center 橢圓的中心。 axes 軸 橢圓主軸大小的一半。 angle 橢圓旋轉(zhuǎn)角度。 startAngle 橢圓弧的起始角,以度表示。 endAngle 橢圓弧的結(jié)束角,以度數(shù)表示。 color 橢圓顏色。 thickness 正數(shù) 橢圓圓弧輪廓的厚度 負數(shù) 對橢圓進行填充。 linetype 橢圓邊界類型。 shift 中心坐標和坐標軸值的小數(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實現(xiàn)幾何圖形繪制的詳細內(nèi)容,更多關(guān)于C++ opencv繪制幾何圖形的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
動態(tài)數(shù)組C++實現(xiàn)方法(分享)
下面小編就為大家?guī)硪黄獎討B(tài)數(shù)組C++實現(xiàn)方法(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05