一·下載第三方庫
opencv-python=3.4.18.65
opencv-contrib-python=3.4.18.65
import cv2 # 讀取的格式是BGR numpy
import numpy as np# 讀取圖片
a = cv2.imread('generated_image.jpg') # 讀取圖片
print(a) # NumPy數組,其中存儲了讀取的圖像文件的像素值。cv2.imshow('tu', a) # 顯示圖片,顯示圖片的名稱,顯示的圖片數據。
b = cv2.waitKey(1000000) # 是在一個給定的時間內(單位ms)觸發,如果用戶沒有按下鍵,到時自動結束。設置waitKey(0),代表按任意鍵繼續
print(b) # 當前按下按鍵 ASCII碼值
cv2.destroyAllWindows() # 關閉所有打開的窗口并釋放所有相關內存。# 對于簡單的程序不需要調用這些函數,應用程序的所有資源和窗口在退出時都會由操作系統自動關閉 。
# 調試模型觀察shape. dtype. size屬性
print("圖像形狀(shape):", a.shape) # 高、寬、通道數
print("圖像數據類型(dtype):", a.dtype) # 無符號8位整數,用于表示像素值的范圍在0到255之間。
print("圖像大小(size):", a.size) # 表示圖像的大小,通常是一個整數,表示圖像的總像素數,即圖像的高度乘以寬度乘以通道數
鼠標放在這里呢也會把信息標注出來
a = cv2.imread('generated_image.jpg')
im是圖片的意思,
D:\AI\pythonProject1\venv\Scripts\python.exe D:\AI\pythonProject1\25_08_07\mo\01.py
[[[254 0 0][254 0 0][254 0 0]...[ 2 0 253][ 2 0 253][ 2 0 253]][[254 0 0][254 0 0][254 0 0]...[ 2 0 253][ 2 0 253][ 2 0 253]][[255 1 1][255 1 1][253 2 1]...[ 2 1 251][ 2 0 253][ 3 1 254]]...[[255 252 0][255 252 0][253 252 0]...[ 2 252 253][ 2 252 253][ 2 252 253]][[254 253 1][254 253 1][254 253 1]...[ 3 254 253][ 2 253 254][ 2 253 254]][[254 253 1][254 253 1][254 253 1]...[ 3 254 253][ 2 253 254][ 2 253 254]]]
這個是print(a)打印出來樣子,
二·改為灰度
# 讀取圖像,注意路徑寫法,這里修正了原路徑中的'.generated_image.jpg'可能的筆誤
# 建議使用完整相對路徑或絕對路徑
import cv2
image_path = r'generated_image.jpg'
b = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)cv2.imshow('xx', b)
cv2.waitKey(0)
cv2.destroyAllWindows()print("圖像形狀(shape):", b.shape)
print("圖像數據類型(dtype):", b.dtype)
print("圖像大小(size):", b.size)save_success = cv2.imwrite('generated_image.jpg', b)
三·切片
import cv2
a = cv2.imread(r'generated_image.jpg')
b = a[30:230, 50:300]
cv2.imshow('yuantu', a)
cv2.imshow('qiepian', b)
cv2.waitKey(0)
cv2.destroyAllWindows()