计算机视觉-OpenCV
一·下载第三方库
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()