OpenCV 圖像繪制的實現(xiàn)
更新時間:2021年07月14日 14:41:52 作者:琉璃燈的眷戀
本文主要介紹了OpenCV 圖像繪制的實現(xiàn),主要包括直線,圓,多邊形和自定義圖形等,具有一定的參考價值,感興趣的可以了解一下
+直線繪制
參數(shù)解析:(圖像矩陣,直線起始坐標, 直線終止坐標、顏色、線條厚度)
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)

圓形繪制
參數(shù) (圖像,圓心,半徑,顏色,線條厚度)
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)

矩形繪制
參數(shù)(圖像,左上角坐標,右下角坐標,顏色,線條厚度)
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:橢圓旋轉(zhuǎn)角度,以度為單位。
- startAngle:橢圓弧的起始角度,以度為單位。
- endAngle:橢圓弧的終止角度,以度為單位。
- color:它是要繪制的形狀邊界線的顏色。對于BGR,我們通過一個元組。例如:(255,0,0)為藍色。
- thickness:是形狀邊界線的粗細像素。厚度-1像素將用指定的顏色填充形狀。
- lineType:這是一個可選參數(shù),它給出了橢圓邊界的類型。
- shift:這是一個可選參數(shù)。它表示中心坐標中的小數(shù)位數(shù)和軸的值。
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)

到此這篇關(guān)于OpenCV 圖像繪制的實現(xiàn)的文章就介紹到這了,更多相關(guān)OpenCV 圖像繪制內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)生命游戲的示例代碼(tkinter版)
生命游戲是由劍橋大學(xué)約翰·何頓·康威設(shè)計的計算機程序,一時吸引了各行各業(yè)一大批人的興趣。本文將用Python實現(xiàn)這一游戲,感興趣的可以嘗試一下2022-08-08
Python中用pyinstaller打包時的圖標問題及解決方法
這篇文章主要介紹了python中用pyinstaller打包時的圖標問題及解決方法,本文從兩方面給大家分析原因所在,通過截圖實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2020-02-02

