使用 OpenCV 繪製基本圖形與文字的 Python 程式解析
以下程式展示了如何使用 OpenCV 在空白圖像上繪製線條、矩形、圓形、多邊形及添加文字。
程式碼範例與註解
# 匯入 OpenCV 與 NumPy 模組
import cv2
import numpy as np
# 建立一個 512x512 大小的白色畫布
gc = np.zeros((512, 512, 3), dtype=np.uint8)
gc.fill(255)
# 在畫布上繪製文字 'OpenCV'
font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(gc, 'OpenCV', (10,200), font, 4, (0,0,0), 2, cv2.LINE_AA)
# 顯示畫布
cv2.imshow('draw', gc)
cv2.waitKey(0)
cv2.destroyAllWindows()程式解析
• 匯入模組: cv2 用於影像處理,numpy 用於數值運算,特別是在建立空白畫布時。
• 建立畫布: 使用 np.zeros 創建一個全黑畫布,大小為 512x512,且具有 3 個通道 (RGB)。接著使用 fill(255) 將畫布填充為白色。
• 添加文字: cv2.putText 用於在畫布上添加文字。參數包括: gc:畫布對象。
• 'OpenCV':要顯示的文字。
• (10,200):文字的起始座標。
• font:字體樣式。
• 4:字體大小比例。
• (0,0,0):文字顏色 (黑色)。
• 2:字體的線條厚度。
• cv2.LINE_AA:文字的抗鋸齒效果。
• 顯示畫布: 使用 cv2.imshow 顯示畫布,並使用 cv2.waitKey(0) 等待用戶按鍵關閉視窗。
結論
此程式展示了如何使用 OpenCV 繪製基本圖形(如文字)並顯示於視窗中。用戶可以在此基礎上解開註解部分(如繪製線條、矩形、圓形等)來實現更豐富的效果,進一步熟悉 OpenCV 的繪圖功能。
劉老師的跨域創想工坊