计算机视觉:opencv(一)

文章目录

      • 图片的读取
        • 图像属性读取
        • 原图像读取
        • 灰度方式读取
        • RGB通道更改顺序
        • 只显示某一通道
        • 读取某个像素点的通道值
        • 读取图像的局部
      • 图像的预处理
      • 轮廓识别
      • 颜色识别
      • 形状识别
      • 数字识别
      • 图像的保存

cv2.imread() (文件路径,flags) 读取图像
cv2.imshow() (图像title,图片对象) 显示图像
cv2.imwrite() (文件名,图片对象) 保存图像
cv2.split()
cv2.merge()
cv2.waitKey()
cv2.destroyAllWindows()

图片的读取

图像属性读取

img = cv2.imread(r'C:\Users\Administrator\Desktop\beginning.jpg')
# 行、列和通道的数量(如果图像是彩色的)
dimensions = img.shape
print(dimensions)
# 图像的大小(图像高度 × 图像宽度 × 图像通道数)
total_number_of_elements= img.size
print(total_number_of_elements)
# 图像的类型
image_dtype = img.dtype
print(image_dtype)

计算机视觉:opencv(一)_第1张图片

原图像读取

import cv2
img_OpenCV = cv2.imread(r'C:\Users\Administrator\Desktop\beginning.jpg')
cv2.imshow('bgr image', img_OpenCV)
cv2.waitKey(0)
cv2.destroyAllWindows()

计算机视觉:opencv(一)_第2张图片

灰度方式读取

img_OpenCV = cv2.imread(r'C:\Users\Administrator\Desktop\beginning.jpg',cv2.IMREAD_GRAYSCALE)
或
img_OpenCV = cv2.imread(r'C:\Users\Administrator\Desktop\beginning.jpg',2)

cv2.imread参数说明:cv2.imread(文件路径,flags)

文件路径——一般使用绝对路径即可
flags=1——读取前后,图片格式不变
flags=2——读取后,图片格式转为灰度图
flags=3——读取后,图片格式转为BGR三信道图像
计算机视觉:opencv(一)_第3张图片

RGB通道更改顺序

b, g, r = cv2.split(img_OpenCV)
img_matplotlib = cv2.merge([r, g, b])

计算机视觉:opencv(一)_第4张图片

只显示某一通道

img_OpenCV = cv2.imread(r'C:\Users\Administrator\Desktop\beginning.jpg')
# img_OpenCV[:, :, 0]=0
img_OpenCV[:, :, 1]=0
img_OpenCV[:, :, 2]=0

计算机视觉:opencv(一)_第5张图片

读取某个像素点的通道值

img = cv2.imread(r'C:\Users\Administrator\Desktop\beginning.jpg')
(b, g, r) = img[0, 0]
print(b)
print(g)
print(r)
x=img[0, 0,0]
y=img[0, 0,1]
z=img[0, 0,2]
print(x)
print(y)
print(z)

计算机视觉:opencv(一)_第6张图片

读取图像的局部

计算机视觉:opencv(一)_第7张图片

图像的预处理

图像灰度化
图像去噪声

轮廓识别

颜色识别

形状识别

数字识别

图像的保存

cv2.imwrite('data/1.png',img)

你可能感兴趣的:(Python,AI,python,计算机视觉,opencv)