OpenCV 圖像繪制的實現
+直線繪制
參數解析:(圖像矩陣,直線起始坐標, 直線終止坐標、顏色、線條厚度)
import cv2 import numpy as np img = cv2.imread(r"./images/1.jpg") cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2) cv2.imshow("pic show",img) cv2.waitKey(0)
圓形繪制
參數 (圖像,圓心,半徑,顏色,線條厚度)
import cv2 import numpy as np img = cv2.imread(r"./images/1.jpg") # cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2) cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2) cv2.imshow("pic show",img) cv2.waitKey(0)
矩形繪制
參數(圖像,左上角坐標,右下角坐標,顏色,線條厚度)
import cv2 import numpy as np img = cv2.imread(r"./images/1.jpg") # cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2) # cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2) cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2) cv2.imshow("pic show",img) cv2.waitKey(0)
橢圓型繪制
- image:它是要在其上繪制橢圓的圖像。
- centerCoordinates:它是橢圓的中心坐標。坐標表示為兩個值的元組,即(X坐標值,Y坐標值)。
- axesLength:它包含兩個變量的元組,分別包含橢圓的長軸和短軸(長軸長度,短軸長度)。
- angle:橢圓旋轉角度,以度為單位。
- startAngle:橢圓弧的起始角度,以度為單位。
- endAngle:橢圓弧的終止角度,以度為單位。
- color:它是要繪制的形狀邊界線的顏色。對於BGR,我們通過一個元組。例如:(255,0,0)為藍色。
- thickness:是形狀邊界線的粗細像素。厚度-1像素將用指定的顏色填充形狀。
- lineType:這是一個可選參數,它給出瞭橢圓邊界的類型。
- shift:這是一個可選參數。它表示中心坐標中的小數位數和軸的值。
import cv2 import numpy as np img = cv2.imread(r"./images/1.jpg") # cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2) # cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2) # cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2) cv2.ellipse(img,center=(100,100),axes=(100,50),angle=0,startAngle=0,endAngle=360,color=(255,0,0),thickness=2) cv2.imshow("pic show",img) cv2.waitKey(0)
自定義形狀
多邊形,isClosed 代表是否是封閉
import cv2 import numpy as np img = cv2.imread(r"./images/1.jpg") # cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2) # cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2) # cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2) # cv2.ellipse(img,center=(100,100),axes=(100,50),angle=0,startAngle=0,endAngle=360,color=(255,0,0),thickness=2) pts = np.array([[10,5],[50,10],[70,20],[20,30]],dtype=np.int32) pts = pts.reshape((-1,1,2)) cv2.polylines(img,[pts],isClosed=True,color=(0,0,255),thickness=2) cv2.imshow("pic show",img) cv2.waitKey(0)
繪制文本
import cv2 import numpy as np img = cv2.imread(r"./images/1.jpg") # cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2) # cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2) # cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2) # cv2.ellipse(img,center=(100,100),axes=(100,50),angle=0,startAngle=0,endAngle=360,color=(255,0,0),thickness=2) # pts = np.array([[10,5],[50,10],[70,20],[20,30]],dtype=np.int32) # pts = pts.reshape((-1,1,2)) # cv2.polylines(img,[pts],isClosed=True,color=(0,0,255),thickness=2) cv2.putText(img,"gril",(10,30),cv2.FONT_HERSHEY_SIMPLEX,fontScale=1,color=(0,0,255),thickness=1,lineType=cv2.LINE_AA) cv2.imshow("pic show",img) cv2.waitKey(0)
到此這篇關於OpenCV 圖像繪制的實現的文章就介紹到這瞭,更多相關OpenCV 圖像繪制內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- C++ opencv實現幾何圖形繪制
- Android OpenCv4 繪制多邊形的方法
- C++ OpenCV繪制幾何圖形
- 如何使用Python的OpenCV庫處理圖像和視頻
- Python+OpenCV實現鼠標畫瞄準星的方法詳解