Day12_畫線畫矩形畫橢圓_lines_rectangle_ellipse.ipynb
完成下一份我們的大作前,我們先來補充一些基本技能吧!
畢竟基本技能才是最經常被我們使用的呢!
def draw_lines(img):
start_point = (20, 20)
end_point = (120, 120)
color = (0, 255, 0) # green
thickness = 3 # 寬度
cv2.line(img, start_point, end_point, color, thickness)
return img
重點在 cv2.line
那一行,
其他都是在設定相關的參數~ 可以依照需求變動。
cv2.line(img, start_point, end_point, color, thickness)
def draw_rectangle(img):
left_up = (20, 60)
right_down = (180, 120)
color = (0, 0, 255) # red
thickness = 2 # 寬度 (-1 表示填滿)
cv2.rectangle(img, left_up, right_down, color, thickness)
cv2.rectangle(img, (125, 20), (175, 40), (255, 0, 255), -1)
return img
重點在 cv2.rectangle
那一行,
其他都是在設定相關的參數~ 可以依照需求變動。
cv2.rectangle(img, left_up, right_down, color, thickness)
比較特別的為 thickness = -1
,具有填滿矩形的功能。
另外補充說明,「left_up 矩形左上角座標」 與 「right_down 矩形右下角座標」,
並非一定要是左上&右下
,只要能描述矩形四個端點即可
,
例如:也可以給
左下&右上
def draw_ellipse(img):
center = (100, 100) #圓心
axes = (25, 55) #橢圓的長半軸與短半軸的大小
rotateAngle = 45 #橢圓的旋轉角度 (傾斜 +45度)
startAngle = 0 #橢圓弧的起始角度
endAngle = 360 #橢圓弧的終止角度 (180 表示只畫一半)
color = (255, 0, 0) # blue
thickness = 2 # 寬度 (-1 表示填滿)
cv2.ellipse(img, center, axes, rotateAngle, startAngle, endAngle, color, thickness)
cv2.ellipse(img, (50, 50), (20, 30), -45, 0, 180, (0, 255, 255), -1)
return img
重點在 cv2.ellipse
那一行,
其他都是在設定相關的參數~ 可以依照需求變動。
cv2.ellipse(img, center, axes, rotateAngle, startAngle, endAngle, color, thickness)
比較特別的為 thickness = -1
,具有填滿橢圓的功能。
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.full.html
https://blog.gtwang.org/programming/opencv-basic-image-read-and-write-tutorial/
https://blog.csdn.net/u011520181/article/details/83933325
https://blog.gtwang.org/programming/opencv-drawing-functions-tutorial/
https://blog.gtwang.org/tag/opencv/
https://www.geeksforgeeks.org/python-opencv-cv2-circle-method/