当前位置: 首页 > news >正文

计算机视觉-OpenCV

一·下载第三方库

opencv-python=3.4.18.65

opencv-contrib-python=3.4.18.65

import cv2  # 读取的格式是BGR  numpy
import numpy as np# 读取图片
a = cv2.imread('generated_image.jpg')  # 读取图片
print(a)  # NumPy数组,其中存储了读取的图像文件的像素值。cv2.imshow('tu', a)  # 显示图片,显示图片的名称,显示的图片数据。
b = cv2.waitKey(1000000)  # 是在一个给定的时间内(单位ms)触发,如果用户没有按下键,到时自动结束。设置waitKey(0),代表按任意键继续
print(b)  # 当前按下按键 ASCII码值
cv2.destroyAllWindows()  # 关闭所有打开的窗口并释放所有相关内存。# 对于简单的程序不需要调用这些函数,应用程序的所有资源和窗口在退出时都会由操作系统自动关闭 。
# 调试模型观察shape. dtype. size属性
print("图像形状(shape):", a.shape)  # 高、宽、通道数
print("图像数据类型(dtype):", a.dtype)  # 无符号8位整数,用于表示像素值的范围在0到255之间。
print("图像大小(size):", a.size)  # 表示图像的大小,通常是一个整数,表示图像的总像素数,即图像的高度乘以宽度乘以通道数

鼠标放在这里呢也会把信息标注出来


a = cv2.imread('generated_image.jpg')

im是图片的意思,

D:\AI\pythonProject1\venv\Scripts\python.exe D:\AI\pythonProject1\25_08_07\mo\01.py 
[[[254   0   0][254   0   0][254   0   0]...[  2   0 253][  2   0 253][  2   0 253]][[254   0   0][254   0   0][254   0   0]...[  2   0 253][  2   0 253][  2   0 253]][[255   1   1][255   1   1][253   2   1]...[  2   1 251][  2   0 253][  3   1 254]]...[[255 252   0][255 252   0][253 252   0]...[  2 252 253][  2 252 253][  2 252 253]][[254 253   1][254 253   1][254 253   1]...[  3 254 253][  2 253 254][  2 253 254]][[254 253   1][254 253   1][254 253   1]...[  3 254 253][  2 253 254][  2 253 254]]]

这个是print(a)打印出来样子,

二·改为灰度


# 读取图像,注意路径写法,这里修正了原路径中的'.generated_image.jpg'可能的笔误
# 建议使用完整相对路径或绝对路径
import cv2
image_path = r'generated_image.jpg'
b = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)cv2.imshow('xx', b)
cv2.waitKey(0)
cv2.destroyAllWindows()print("图像形状(shape):", b.shape)
print("图像数据类型(dtype):", b.dtype)
print("图像大小(size):", b.size)save_success = cv2.imwrite('generated_image.jpg', b)

三·切片

import cv2
a = cv2.imread(r'generated_image.jpg')
b = a[30:230, 50:300]
cv2.imshow('yuantu', a)
cv2.imshow('qiepian', b)
cv2.waitKey(0)
cv2.destroyAllWindows()

http://www.dtcms.com/a/319495.html

相关文章:

  • GPT-5 将在周五凌晨1点正式发布,王炸模型将免费使用??
  • Android 之 Kotlin 扩展库KTX
  • 突破距离桎梏:5G 高清视频终端如何延伸无人机图传边界
  • RK3568项目(十三)--linux驱动开发之基础通讯接口(下)
  • 闪迪 SN8100 旗舰固态评测:读 14.9GB/s,写 14.0GB/s 的性能怪兽
  • 8.结构健康监测选自动化:实时数据 + 智能分析,远超人工
  • 深度学习中主要库的使用:(一)pandas,读取 excel 文件,支持主流的 .xlsx/.xls 格式
  • Flink-1.19.0-核心源码详解
  • 网站IP被劫持?三步自建防护盾
  • 【中微半导体】BAT32G139 逆变器,中微半导体pack包安装使用说明(参考例程获取DemoCode)
  • 51c大模型~合集165
  • 【动态规划 | 完全背包】动态规划经典应用:完全背包问题详解
  • 【CS创世SD NAND征文】额贴式睡眠监测仪的数据守护者:存储芯片如何实现7×24小时安眠状态下的全时稳定记录
  • Redis面试精讲 Day 13:Redis Cluster集群设计与原理
  • Flutter 三棵树
  • 数字取证:可以恢复手机上被覆盖的数据吗?
  • 【免费】小学数学算术专项突破随机生成加法减法乘法除法
  • 无人机计算机视觉数据集-7,000 张图片 空域安全监管 无人机反制系统 智能安防监控 交通执法应用 边境管控系统 赛事安保服务
  • 香港网站服务器被占用的资源怎么释放?
  • 《深入Java包装类体系:类型转换原理与Integer缓存实战指南》
  • 基于IPD流程体系的研发项目计划管理
  • Go 开发环境配置完整指南
  • 如何将普通HTTP API接口改造为MCP服务器
  • Numpy科学计算与数据分析:Numpy数组属性入门之形状、维度与大小
  • Node.js特训专栏-实战进阶:21.Nginx反向代理配置
  • Spring MVC文件上传详解
  • 使用 Tauri 开发 Android 应用:环境搭建与入门指南
  • Android 之 面试八股文
  • MySQL GROUP BY 语句详细说明
  • 什么是负载均衡,有哪些常见算法?