iT邦幫忙

2024 iThome 鐵人賽

DAY 23
0
Python

探索 Python 世界:從語法基礎到圖像魔法系列 第 23

探索 Python 世界:從語法基礎到圖像魔法 Day23

  • 分享至 

  • xImage
  •  

OpenCV 入門圖像處理,圖像讀取、BGR輸出、原圖輸出、灰階輸出、關閉視窗

函數介紹

imread('image.jpg', cv2.IMREAD_COLOR) 用來讀取圖片,並設定圖片色彩
(預設 : cv2.IMREAD_COLOR 該參數會導入彩色圖像)

imshow('window name', image) 包含兩個參數,window name 表示要開啟圖片的視窗名稱,第二個 image 是使用 imread() 讀取的圖片

waiKey() 表示欲等待多久時間關閉 imshow 顯示的圖片,如果設定 0 表示會持續等待到使用者按下按鍵為止,也可以設定時間讓圖例自行關閉(注意!這裡預設的時間單位為:毫秒(ms))

destroyAllWindows() 關閉所有 imshow 打開的視窗

destroyWindow('window name') 關閉指定名稱視窗

色彩模式對照表

cv2.IMREAD_UNCHANGED 可將 imread 讀取之圖像依照原樣顯示
cv2.IMREAD_GRAYSCALE 可將 imread 讀取之圖像以灰階形式顯示
cv2.IMREAD_COLOR 可將 imread 讀取之圖像以 BGR 色彩顯示
cv2.IMREAD_ANYDEPTH 在具對應的深度時返回 16/32 位元圖像,否則將其轉換為 8 位元圖像
cv2.IMREAD_ANYCOLOR 以任何可能顏色讀取圖像
cv2.IMREAD_LOAD_GDAL 使用驅動程式 gdal 加載圖像
cv2.IMREAD_REDUCED_GRAYSCALE_2 灰階圖像,尺寸減小 1/2 ,若是將 2 換成 n 尺寸將會縮減 1/n 倍
cv2.IMREAD_REDUCED_COLOR_2 BGR 圖像,尺寸減小 1/2,若是將 2 換成 n 尺寸將會縮減 1/n 倍
cv2.IMREAD_IGNORE_ORIENTATION 不根據 EXIF 資訊的方向標誌旋轉圖像

範例

預設顯示:

import cv2

# 讀取圖像
image = cv2.imread('image.jpg')

cv2.imshow('Image', image)
cv2.waitKey(0) # 按下按鍵為止
cv2.destroyAllWindows() # 關閉所有 imshow 開啟之圖片

預設輸出畫面:
https://ithelp.ithome.com.tw/upload/images/20241001/201686879pOCMxXNvJ.png

灰階顯示:

import cv2

# 使用絕對路徑確保路徑位置正確,並將圖像以灰階讀取
img = cv2.imread('path/to/your/image.jpg', cv2.IMREAD_GRAYSCALE)

cv2.imshow('GRAYSCALE Image', img)
cv2.waitKey(0) # 按下按鍵為止
cv2.destroyAllWindows() # 關閉所有 imshow 開啟之圖片

灰階輸出畫面:
https://ithelp.ithome.com.tw/upload/images/20241001/20168687HUQ68skfs4.png

參考資料:
https://medium.com/jimmy-wang/opencv-%E5%9F%BA%E7%A4%8E%E6%95%99%E5%AD%B8%E7%AD%86%E8%A8%98-with-python-d780f571a57a


上一篇
探索 Python 世界:從語法基礎到圖像魔法 Day22
下一篇
探索 Python 世界:從語法基礎到圖像魔法 Day24
系列文
探索 Python 世界:從語法基礎到圖像魔法30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言