基本形狀的繪制&添加文字
阿新 • • 發佈:2018-09-09
complex pre 目標 弧度 pan 顯示 main 角度 oid
本次用opencv在圖像上繪制了線,矩形,橢圓,圓的形狀和放置了文字。
#include<iostream> using namespace std; using namespace cv; void plot_line(); void plot_rectangle(); void plot_Ellipse(); void plot_circle(); void text(); Mat src; //聲明一個全局變量Src int main(int argc, char ** argv) { src = imread("D:/meinv.jpg"); namedWindow("原圖像",CV_WINDOW_AUTOSIZE); imshow("原圖像", src); plot_line(); //畫線 plot_rectangle(); //畫矩形 plot_Ellipse(); //畫橢圓 plot_circle(); //畫圓 text(); //添加文字 namedWindow("目標圖像", CV_WINDOW_AUTOSIZE); imshow("目標圖像", src); waitKey(0); return 0; } void plot_rectangle() //畫矩形 { Rect rect = Rect(400, 240, 200, 200); //400,240代表矩形的起點,200代表矩形的長和寬 Scalar color = Scalar(0, 0, 255); //顏色 rectangle(src, rect, color, 2, 8, 0); //調用API } void plot_line() //畫線 { Point x1 = Point(20, 30); //線段第一個點的坐標 Point x2 = Point(60, 280); //線段第二個點的坐標 Scalar color = Scalar(0, 255, 0); line(src, x1, x2, color, 2, 8, 0); //調用API } void plot_Ellipse() //畫橢圓 { Scalar color = Scalar(255,0, 0); ellipse(src, Point(src.cols / 2, src.rows / 2), Size(src.cols / 6, src.rows / 6), 90, 0, 360, color, 2, 8, 0); //第二個參數為橢圓的中心,第三個參數為半徑 //第三個參數為橢圓的旋轉角度,第四個參數為從0度畫到360度的弧度 } void plot_circle() //畫圓 { Scalar color = Scalar(255, 255, 0); Point center = Point(src.cols / 2, src.rows / 2); //定義圓的中心 circle(src, center, 150, color, 2, 8, 0); } void text() { Scalar color = Scalar(255, 0, 255); putText(src, "Hello OpenCv!", Point(400, 300), CV_FONT_HERSHEY_COMPLEX, 1.0, color, 2, 8); }
顯示效果如下:
(1)原圖:
(2)目標圖像
基本形狀的繪制&添加文字