opencv期末练习题(7)附带解析

打印图像各个点的颜色

import cv2
import numpy as np

"""
分别获得左上角、右上角、左下角、右下角各自的颜色,并打印相关颜色的值
"""
img = cv2.imread('test.png')

(x, y, z) = img.shape
print("当前图像的尺寸:", x, y, z)

(x1, y1, z1) = img[int(x / 4), int(y / 4)]  # 左上角的中心
(x2, y2, z2) = img[int(x * 3 / 4), int(y / 4)]  # 右上角的中心
(x3, y3, z3) = img[int(x / 4), int(y * 3 / 4)]  # 左下角的中心
(x4, y4, z4) = img[int(x * 3 / 4), int(y * 3 / 4)]  # 右下角的中心

print("左上角的中心颜色:", x1, y1, z1)
print("右上角的中心颜色:", x2, y2, z2)
print("左下角的中心颜色:", x3, y3, z3)
print("右下角的中心颜色:", x4, y4, z4)

这段代码使用 OpenCV 读取图像文件('test.png'),然后分别获取图像的左上角、右上角、左下角和右下角中心点处的像素颜色值,并打印输出这些颜色值。

主要步骤如下:

  1. 使用 cv2.imread 读取图像文件,存储在变量 img 中。
  2. 获取图像的尺寸,使用 img.shape 得到 (行数, 列数, 通道数)
  3. 计算图像四个角中心点的坐标。
  4. 分别获取四个角中心点处的像素颜色值,通过数组索引的方式得到颜色值。
  5. 打印输出每个角中心点处的颜色值。

这个代码片段展示了如何使用 OpenCV 获取图像特定位置的颜色值,并可根据需要进行后续的处理或分析。

你可能感兴趣的:(opencv,人工智能,计算机视觉)