简单的图像处理
一、数据读取-图像
# 读取彩色图片数据
img = cv2.imread(r"C:\Users\admin\Desktop\ztz.jpg")
print(img)
返回值类型为:<class ‘numpy.ndarray’>
# 获取图片的灰度图
img_h = cv2.imread(r"C:\Users\admin\Desktop\yy.jpg",cv2.IMREAD_GRAYSCALE)
二、图片的显示
img = cv2.imread(r"C:\Users\admin\Desktop\ztz.jpg")
# 图像的显示,也可以创建多个窗口
# 参数1:图片名称自定义 参数二:图片对象
cv2.imshow('img', img)
# 图像显示的等待时间,毫秒级:0表示任意键终止
cv2.waitKey(0)
cv2.destroyAllWindows()
会弹出windows框来显示图片,效果如下
三、图片的属性
img = cv2.imread(r"C:\Users\admin\Desktop\ztz.jpg")
print(img.shape) # 图片的行数,列数,色彩通道数
print(img.size) # 图片的像素个数
易错的地方:
行数其实对应于坐标轴上的y,即表示的是图像的高度
列数对应于坐标轴上的x,即表示的是图像的宽度
四、截取图片内区域
img = cv2.imread(r"C:\Users\admin\Desktop\yy.jpg",cv2.IMREAD_GRAYSCALE)
img = img_h[0:600, 0:600] # 截取部位
cv2.imshow('img', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
效果如下