OpenCV半小時掌握基本操作之圖像基礎操作
【OpenCV】⚠️高手勿入! 半小時學會基本操作⚠️ 圖像基礎操作
概述
OpenCV 是一個跨平臺的計算機視覺庫, 支持多語言, 功能強大. 今天小白就帶大傢一起攜手走進 OpenCV 的世界.
截取圖像
例子:
# 截取圖像 img = cv2.imread("picture.jpg") img = img[200:600, 400:1000] cv2.imshow("cut", img) cv2.waitKey(0) cv2.destroyAllWindows()
輸出結果:
獲取顏色通道
cv2.split
可以幫助我們獲取不同顏色通道.
格式:
cv2.split(img)
例子:
# 獲取顏色通道 img = cv2.imread("picture.jpg") # 讀取圖片 b, g, r = cv2.split(img) # 分割顏色通道 print(r.shape, g.shape, b.shape) # 調試輸出
輸出結果:
(1263, 1920) (1263, 1920) (1263, 1920)
單通道顯示
# 單通道顯示 img = cv2.imread("picture.jpg") # 讀取圖片 cur_img = img.copy() # 深拷貝 cur_img[:, :, 0] = 0 # B通道設置為0 cur_img[:, :, 1] = 0 # G通道設置為0 cv2.imshow("B channel", cur_img) # 圖片展示 cv2.waitKey(0) cv2.destroyAllWindows()
輸出結果:
讀取視頻
cv2.VideoCapture
可以幫助我們讀取視頻. 通過數字來控制不同的設備, 例如 0, 1. 或者指定視頻文件路徑.
格式:
cv2.VideoCapture(video_path or device_index )
參數:
- video_path: 視頻文件路徑
- device_index: 錄像設備 (攝像頭) 索引, 例如 0, 1
例子:
# 讀取視頻 vc = cv2.VideoCapture("video.mp4") # 循環 while (True): # 讀取一幀,ret為bool類型,指示是否成功讀取這一幀 ret, frame = vc.read() # 轉為灰度圖 gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # 顯示 cv2.imshow('frame', gray) # 若沒有按下q鍵,則每1毫秒顯示一幀 if cv2.waitKey(1) & 0xFF == ord('q'): break # 釋放 vc.release() cv2.destroyAllWindows()
到此這篇關於OpenCV半小時掌握基本操作之圖像基礎操作的文章就介紹到這瞭,更多相關OpenCV圖像基礎操作內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- opencv-python圖像處理安裝與基本操作方法
- Python opencv操作深入詳解
- opencv python簡易文檔之圖片基本操作指南
- 如何使用Python的OpenCV庫處理圖像和視頻
- 利用python調用攝像頭的實例分析