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

相关推荐
IvorySQL1 分钟前
IvorySQL Agent 探索与实践
数据库·人工智能·postgresql·oracle·ivorysql
谙忆102420 分钟前
图片放大为什么会糊?从插值到AI超分,超分辨率技术是怎么演进的
人工智能·计算机视觉
程序员小杰@21 分钟前
AI工程与开发生成:DeepMetier如何用AI生成CAD图纸、3D模型、代码和JSON
人工智能
阿黎梨梨23 分钟前
Node.js 工程化路上的“路径”与“IO”避坑指南
人工智能
Listen·Rain25 分钟前
提示词和提示词模板
java·人工智能·spring boot
阿里云大数据AI技术1 小时前
DataWorks Data Agent 实战课堂(一):解锁你的7×24h全能“数据搭子”DataWorks AI助理!
大数据·人工智能·agent
韭菜钟1 小时前
利用OpenCV进行3d相机手眼标定(眼在手上/眼在手外)
opencv·3d
得一录1 小时前
大模型中Temperature的解释
人工智能
Database_Cool_1 小时前
阿里云RDS主从延迟解决方案_只读实例半同步复制最佳实践
数据库·人工智能
XMan_Liu1 小时前
AI聊天机器人架构学习
人工智能·架构·机器人