python opencv如何實現圖片繪製
阿新 • • 發佈:2020-01-19
這篇文章主要介紹了python opencv如何實現圖片繪製,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
點和圓 :
circle(img,center,radius,color,thickness=None,lineType=None,shift=None)。各引數意義及作用如下。
- img:待畫圓所在的影象。
- center:待畫圓的圓心座標。
- radius:待畫圓的半徑。
- color:待畫圓的邊框顏色,顏色格式為bgr格式。就是通道值
- thickness:待畫圓的邊框寬度,正數表示邊框寬度,負數表示填充圓形。
- lineType:圓邊框線型,可為 0,4,8
- shift:圓心座標和半徑的小數點位數
畫點實際上就是畫半徑很小的實心圓
import cv2 img = cv2.imread("500x400.jpg") img1=cv2.circle(img,(60,60),30,(0,255),-1) #畫一個紅色實心圓 img1=cv2.circle(img1,(200,200),50,(255,0),3) #畫一個藍邊框的圓 cv2.imwrite("linsi.jpg",img1) cv2.waitKey(0)
注意:在img和img1上同時畫
效果圖:
畫線 :
import cv2 img = cv2.imread("500x400.jpg") img1=cv2.line(img,(10,10),255,3) #直線 #引數2 起點座標;引數3 終點座標;引數4 顏色;引數5 線條寬度 cv2.imwrite("linsi.jpg",img1) cv2.waitKey(0)
畫矩形:
import cv2 img = cv2.imread("500x400.jpg") img1=cv2.rectangle(img,(30,40),2) #畫矩形 #引數2 左上角座標;引數3 右下角座標;引數4 顏色;引數5 線條寬度 cv2.imwrite("linsi.jpg",img1) cv2.waitKey(0)
橢圓:
import cv2 img = cv2.imread("500x400.jpg") img1=cv2.ellipse(img,(256,256),(100,50),180,-1) # 畫橢圓 #引數2 橢圓中心 #第三個引數 橢圓的長短軸的長度 #第四個引數 整個橢圓的偏轉角度(順時針) #第五個引數 圓弧起始角的角度 #第六個引數 圓弧終結角的角度 # 圓弧角度->x軸方向為0,逆時針方向為正 #第七個引數 color 線條的顏色 #第八個引數 線條的粗細程度,如果是負數表示填充 #第九個引數 line_type 線條的型別 ??? cv2.imwrite("linsi.jpg",img1) cv2.waitKey(0)
多邊形:
畫多邊形——需要指定每個頂點的座標
import cv2 import numpy as np img = cv2.imread("500x400.jpg") points = np.array([[150,50],[140,140],[200,170],[250,250],[150,50]],np.int32) #多邊形各頂點座標 #資料型別必須是np.int32 points = points.reshape(-1,1,2) img1=cv2.polylines(img,[points],True,3) #畫多邊形 #引數2 各頂點 #引數3 True表示封閉,False表示不封閉 #引數4 顏色 #引數5 線條粗細 cv2.imwrite("linsi.jpg",img1) cv2.waitKey(0)
新增文字 :
import cv2 import numpy as np img = cv2.imread("500x400.jpg") font=cv2.FONT_HERSHEY_SIMPLEX font=cv2.FONT_HERSHEY_DUPLEX img1=cv2.putText(img,'wo is liming',(80,90),font,2,3) #畫文字 #引數3 位置 #引數5 字型大小 #引數7 線型 cv2.imwrite("linsi.jpg",img1) cv2.waitKey(0)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。