国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

opencv python 畫圖操作/畫線/畫矩形/畫圓/畫多邊形/添加文字

SQC / 2624人閱讀

摘要:代碼畫圓圓心位置半徑應(yīng)用在上面繪制的矩形內(nèi)繪制一個圓。字體類型檢查文檔以獲取支持的字體字體比例指定字體大小常規(guī)的東西,如顏色,粗細,線型等。應(yīng)用我們將在圖像上寫白色的幾個字母代碼

Drawing Functions in OpenCV

學(xué)習目標函數(shù)

cv2.line(), cv2.circle() , cv2.rectangle(), cv2.ellipse(), cv2.putText() etc

參數(shù)介紹

img:需要繪制形狀的圖像

color:顏色的形式. 對于BGR,將作為元組傳遞比如(255,0,0)表示藍色.對于灰度圖,只需要傳遞標量值.

thickness:線或圓形等圖像的厚度.如果對閉合圖像像圓形傳遞“-1”,它將填充形狀. 默認厚度 = 1.

lineType:線的類型.默認情況下,它是8連接的.cv2.LINE_AA 是適合曲線的抗鋸齒線.

1畫線

cv2.line(img, pt1, pt2, color[, thickness[, lineType[, shift]]])

pt1:直線起點

pt2:直線終點

應(yīng)用

我們將創(chuàng)建一個黑色圖像,并在其上從左上角到右下角繪制一條藍線。
代碼 :

import numpy as np
import cv2

# Create a black image
img = np.zeros((512,512,3), np.uint8)

# Draw a diagonal blue line with thickness of 5 px
cv2.line(img,(0,0),(511,511),(255,0,0),5)
cv2.imshow("line",img)
cv2.waitKey()

2繪制矩形

cv2.rectangle(img, pt1, pt2, color[, thickness[, lineType[, shift]]])

pt1:矩形左上角坐標

pt2:矩形右下角坐標

應(yīng)用

在圖像的右上角繪制一個綠色矩形。
代碼 :

import numpy as np
import cv2

# Create a black image
img = np.zeros((512,512,3), np.uint8)

cv2.rectangle(img,(384,0),(510,128),(0,255,0),3)

cv2.imshow("line",img)
cv2.waitKey()

3畫圓

cv2.circle(img, center, radius, color[, thickness[, lineType[, shift]]])

center:圓心位置

radius:半徑

應(yīng)用

在上面繪制的矩形內(nèi)繪制一個圓。
代碼 :

import numpy as np
import cv2

# Create a black image
img = np.zeros((512,512,3), np.uint8)

cv2.rectangle(img,(384,0),(510,128),(0,255,0),3)
cv2.circle(img,(447,63), 63, (0,0,255), -1)


cv2.imshow("line",img)
cv2.waitKey()

4繪制橢圓

cv2.ellipse(img, center, axes, angle, startAngle, endAngle, color[, thickness[, lineType[, shift]]])

center:中心位置

axes:軸長度(長軸長度,短軸長度)

angle:橢圓在逆時針方向上的旋轉(zhuǎn)角度

startAngle:主軸順時針方向測量的橢圓弧的起點

endAngle:主軸順時針方向測量的橢圓弧的終點

應(yīng)用

在圖像的中心繪制一個半橢圓。
代碼 :

import numpy as np
import cv2

# Create a black image
img = np.zeros((512,512,3), np.uint8)

cv2.ellipse(img,(256,256),(100,50),0,0,180,255,-1)

cv2.imshow("line",img)
cv2.waitKey()

5繪制多邊形

cv2.polylines(img, pts, isClosed, color[, thickness[, lineType[, shift]]])

要繪制多邊形,首先需要頂點坐標.將這些點轉(zhuǎn)換為ROWSx1x2形狀的數(shù)組,其中ROWS是頂點數(shù),它應(yīng)該是int32類型.

應(yīng)用

繪制一個帶有四個黃色頂點的小多邊形.
代碼 :

import numpy as np
import cv2

# Create a black image
img = np.zeros((512,512,3), np.uint8)

pts = np.array([[10,5],[20,30],[70,20],[50,10]], np.int32)
pts = pts.reshape((-1,1,2))
cv2.polylines(img,[pts],True,(0,255,255))


cv2.imshow("line",img)
cv2.waitKey()

Note:
如果第三個參數(shù)為False,您將獲得連接所有點的折線,而不是閉合形狀.
cv2.polylines()可用于繪制多條線.只需創(chuàng)建要繪制的所有行的列表并將其傳遞給函數(shù), 所有線條都將多帶帶繪制.繪制一組行比為每行調(diào)用cv2.line()要好得多,速度更快.

6向圖像添加文字

向圖像添加文字:
cv2.putText(img, text, org, fontFace, fontScale, color[, thickness[, lineType[, bottomLeftOrigin]]])
要將文本放入圖像中,您需要指定以下內(nèi)容。

text:要寫入的文本數(shù)據(jù)

org:您想要放置它的位置坐標(即數(shù)據(jù)開始的左下角)。

fontFace:字體類型(檢查cv2.putText()文檔以獲取支持的字體)

fontScale:字體比例(指定字體大小)

?常規(guī)的東西,如顏色,粗細,線型等。為了更好看,建議使用lineType = cv.LINE_AA。

應(yīng)用

我們將在圖像上寫白色的opencv幾個字母.
代碼 :

import numpy as np
import cv2

# Create a black image
img = np.zeros((512,512,3), np.uint8)

font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img,"OpenCV",(10,500), font, 4,(255,255,255),2,cv2.LINE_AA)

cv2.imshow("show",img)
cv2.waitKey()

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/41964.html

相關(guān)文章

  • HTML5 Canvas游戲開發(fā)實戰(zhàn) PDF掃描版

    摘要:游戲開發(fā)實戰(zhàn)主要講解使用來開發(fā)和設(shè)計各類常見游戲的思路和技巧,在介紹相關(guān)特性的同時,還通過游戲開發(fā)實例深入剖析了其內(nèi)在原理,讓讀者不僅知其然,而且知其所以然。HTML5 Canvas游戲開發(fā)實戰(zhàn)主要講解使用HTML5 Canvas來開發(fā)和設(shè)計各類常見游戲的思路和技巧,在介紹HTML5 Canvas相關(guān)特性的同時,還通過游戲開發(fā)實例深入剖析了其內(nèi)在原理,讓讀者不僅知其然,而且知其所以然。在本書...

    cocopeak 評論0 收藏0

發(fā)表評論

0條評論

SQC

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<