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

相关推荐
偶信科技10 分钟前
国产极细拖曳线列阵:16mm“水下之耳”如何撬动智慧海洋新蓝海?
人工智能·科技·偶信科技·海洋设备·极细拖曳线列阵
Java后端的Ai之路32 分钟前
【神经网络基础】-神经网络学习全过程(大白话版)
人工智能·深度学习·神经网络·学习
庚昀◟1 小时前
用AI来“造AI”!Nexent部署本地智能体的沉浸式体验
人工智能·ai·nlp·持续部署
喜欢吃豆1 小时前
OpenAI Realtime API 深度技术架构与实现指南——如何实现AI实时通话
人工智能·语言模型·架构·大模型
数据分析能量站1 小时前
AI如何重塑个人生产力、组织架构和经济模式
人工智能
wscats2 小时前
Markdown 编辑器技术调研
前端·人工智能·markdown
AI科技星2 小时前
张祥前统一场论宇宙大统一方程的求导验证
服务器·人工智能·科技·线性代数·算法·生活
GIS数据转换器2 小时前
基于知识图谱的个性化旅游规划平台
人工智能·3d·无人机·知识图谱·旅游
EnoYao2 小时前
Markdown 编辑器技术调研
前端·javascript·人工智能
TMT星球2 小时前
曹操出行上市后首次战略并购,进军万亿to B商旅市场
人工智能·汽车