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

相关推荐
程序员cxuan7 分钟前
一句话,让你用上 GPT-5.6
人工智能·后端·程序员
机器之心9 分钟前
AI圈刚开始谈Loop Engineering,两位95后博士已经盯上了人类闭环数据
人工智能·openai
澄旭10 分钟前
一文讲清 MCP:AI 应用连接外部世界的标准协议
人工智能
机器之心19 分钟前
不只DeepSeek,阶跃等开源JetSpec:大模型解码提速近10倍
人工智能·openai
moMo1 小时前
当LLM学会"递纸条",AI是如何调用工具的
人工智能
拾年2751 小时前
大模型的"聪明"从哪来?聊聊 AI 数据集的那些事儿
人工智能·深度学习·机器学习
拾年2751 小时前
从 Prompt 到 Context 再到 Harness:AI 工程化的三年三级跳
人工智能
用户3090463613941 小时前
Claude 不会直接执行你的函数,它只会生成一段结构化的工具调用请求。真正执行函数、访问数据库、请求外部 API 的动作,必须由你的后端完成。
人工智能
不加辣椒1 小时前
第14章 Prompt 编排与优化技术
人工智能