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

打印图像各个点的颜色

python 复制代码
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 获取图像特定位置的颜色值,并可根据需要进行后续的处理或分析。

相关推荐
谷粒.32 分钟前
Cypress vs Playwright vs Selenium:现代Web自动化测试框架深度评测
java·前端·网络·人工智能·python·selenium·测试工具
Dev7z2 小时前
基于MATLAB数学形态学的边缘检测算法仿真实现
算法·计算机视觉·matlab
CareyWYR5 小时前
每周AI论文速递(251201-251205)
人工智能
北京耐用通信7 小时前
电磁阀通讯频频“掉链”?耐达讯自动化Ethernet/IP转DeviceNet救场全行业!
人工智能·物联网·网络协议·安全·自动化·信息与通信
cooldream20097 小时前
小智 AI 智能音箱深度体验全解析:人设、音色、记忆与多场景玩法的全面指南
人工智能·嵌入式硬件·智能音箱
oil欧哟7 小时前
AI 虚拟试穿实战,如何低成本生成模特上身图
人工智能·ai作画
央链知播7 小时前
中国移联元宇宙与人工智能产业委联席秘书长叶毓睿受邀到北京联合大学做大模型智能体现状与趋势专题报告
人工智能·科技·业界资讯
人工智能培训7 小时前
卷积神经网络(CNN)详细介绍及其原理详解(2)
人工智能·神经网络·cnn
懷淰メ8 小时前
【AI加持】基于PyQt5+YOLOv8+DeepSeek的输电隐患检测系统(详细介绍)
yolo·目标检测·计算机视觉·pyqt·deepseek·监测系统·输电隐患
YIN_尹8 小时前
目标检测模型量化加速在 openEuler 上的实现
人工智能·目标检测·计算机视觉