OpenCV 图像基本操作

之前几篇文章介绍了OpenCV的一些模块概念,并没有细说每个模块具体的方法和使用。接下来就会详细介绍每个模块模块包含的方法和使用。

本文将详细介绍图像的四种基本操作:访问和修改像素值、图像 ROI (Region of Interest) 操作、图像通道分离与合并、以及图像的缩放、旋转、平移和翻转。
常用方法:

操作函数/方法说明
访问像素值image[y, x]获取或修改像素值
图像 ROIimage[y1:y2, x1:x2]获取或修改图像中的矩形区域
通道分离与合并cv2.split() / cv2.merge()分离或合并图像通道
图像缩放cv2.resize()调整图像大小
图像旋转cv2.getRotationMatrix2D()旋转图像
图像平移cv2.warpAffine()平移图像
图像翻转cv2.flip()翻转图像
图像加法cv2.add()对两幅图像进行加法运算
图像减法cv2.subtract()对两幅图像进行减法运算
图像混合cv2.addWeighted()对两幅图像进行加权混合
阈值处理cv2.threshold()对图像进行阈值处理
平滑处理cv2.blur() / cv2.GaussianBlur()对图像进行平滑处理

1. 访问和修改像素值

图像是由像素组成的矩阵,每个像素都有一个或多个值,表示颜色或灰度。在灰度图像中,每个像素只有一个值,表示灰度强度;在彩色图像中,每个像素通常有三个值,分别表示红色、绿色和蓝色(RGB)通道的强度。

访问像素值

在 Python 中,可以使用 OpenCV 库来访问图像的像素值。假设我们有一个灰度图像 img,可以通过 img[y, x] 来访问位于 (x, y) 位置的像素值。对于彩色图像,可以通过 img[y, x, c] 来访问特定通道 c 的像素值,其中 c 为 0(蓝色)、1(绿色)或 2(红色)。

import cv2# 读取图像
img = cv2.imread('image.jpg')# 访问像素值
pixel_value = img[100

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/73238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

酷淘商场项目【从零到一详解】Web端

✨博客主页: https://blog.csdn.net/m0_63815035?typeblog 💗《博客内容》:.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 📢博客专栏: https://blog.csdn.net/m0_63815035/cat…

Gemini 2.0 Flash 图片去水印测试

Gemini 2.0 Flash 模型不仅会生成包含名人和受版权保护角色的图像,还会去除现有照片中的水印。 据 X 和 Reddit 上的多位用户指出,Gemini 2.0 Flash 模型不仅会去除水印,还会尝试填补因水印删除而产生的空白区域。其他基于人工智能的工具也能…

STM32学习笔记之keil使用记录

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…

MQTT消息服务器新玩法:EMQX结合内网穿透的实战配置指南

文章目录 前言1. 查看EMQX本地WS端口2. Linux安装Cpolar工具3. 配置WS公网连接地址4. WS公网地址连接测试5. 配置WSS公网连接地址6. WSS公网地址连接测试 前言 随着物联网技术的不断发展,MQTT作为一种轻量级的消息发布/订阅协议,在物联网通信中扮演着越…

编程题记录3

九宫幻方 题目链接:https://www.lanqiao.cn/problems/100/learning/?page1&first_category_id1&second_category_id3&tags%E7%9C%81%E8%B5%9B&tag_relationintersection 先旋转、镜像得到所有的情况,可以发现情况是可以暴力得出的。…

电机控制常见面试问题(十八)

文章目录 一.电机控制高级拓扑结构1.LLC 二.谈谈电压器饱和后果三.电压器绕组连接方式的影响四.有源逆变的条件 一.电机控制高级拓扑结构 1.LLC LLC是什么?—— 一个会"变魔术"的电源盒子 想象你有一个魔法盒子,能把电池的电压变大或变小&…

C#设计模式快速回顾

知识点来源:人间自有韬哥在,豆包 目录 一、七大原则1. 单一职责原则 (Single Responsibility Principle)2. 开放封闭原则 (Open-Closed Principle)3. 里氏替换原则 (Liskov Substitution Principle)4. 接口隔离原则 (Interface Segregation Principle)5…

汇编语言高级编程技巧:从基础到进阶

前言 汇编语言作为底层编程语言,直接操作硬件,执行效率高,但编写复杂逻辑时往往显得繁琐。通过使用汇编伪指令和宏,我们可以实现类似于高级语言的结构,如条件判断、循环、结构体和函数等,从而提升代码的可读…

XSS跨站脚本攻击漏洞(Cross Site Scripting)

前提概要 本文章主要用于分享XSS跨站脚本攻击漏洞基础学习,以下是对XSS跨站脚本攻击漏洞的一些个人解析,请大家结合参考其他文章中的相关信息进行归纳和补充。 XSS跨站脚本攻击漏洞描述 跨站脚本攻击(XSS)漏洞是一种常见且危害较…

2、pytest核心功能(进阶用法)

目录 1、标记(Markers): 自定义插件 内置标记 2、夹具(Fixtures): 夹具得用法 夹具作用域 3、钩子(hook): 这篇是最重要的 测试文件中需要用到的 总的来说 有以下…

恒流源电路深度解析:各类架构的优缺点与应用场景

点击下面图片,为您提供全新的嵌入式学习路线 文章目录 ①. 单晶体管恒流源②. NPNPNP组合恒流源③. 双晶体管恒流源④. 镜像电流源⑤. 比例电流源⑥. 微电流源⑦. 加射极输出的镜像电流源⑧. 威尔逊电流源⑨.综合对比表⑩.选型建议 恒流源是电子电路中的基础模块&…

研究生入学前文献翻译训练

文献翻译 人工智能《Meta - Learning with Memory - Augmented Neural Networks》one-shot learning:Neural Turing Machines,NTMs《Model - Agnostic Meta - Learning for Fast Adaptation of Deep Networks》Meta - learninggradient stepsfinetune《Attention Is All You …

在IDEA中快速注释所有console.log

在IDEA中快速注释所有console.log 在前端IDEA中,快速注释所有console.log语句可以通过以下步骤实现2: 打开要修改的文件。使用快捷键CtrlF打开搜索框。点击打开使用正则搜索的开关或者通过AltR快捷键来打开。在搜索框输入[]*console.log[]*,…

#C8# UVM中的factory机制 #S8.2.1# factory 机制重载法则

factory机制最伟大的地方在于其具有重载功能。重载并不是factory机制的发明,前面已经介绍过的所有面向对象的语言都支持函数/任务重载,另外,SystemVerilog还额外支持对约束的重载。只是factory机制的重载与这些重载都不一样。 一 问题引出 以8.1.1节的代码清单8-1和代码清…

macOS 15 通过 MacPorts 安装 PHP 7 构建错误找不到符号在 dns.o 中解决方法

构建遇到的问题如下: "_res_9_dn_expand", referenced from:_php_parserr in dns.o_php_parserr in dns.o_php_parserr in dns.o_php_parserr in dns.o_php_parserr in dns.o_php_parserr in dns.o_zif_dns_get_mx in dns.o..."_res_9_dn_skipname&…

MDK优化等级对浮点运算效率的影响

MDK优化等级:Default模式 和 O0模式 在支持浮点运算的MCU(如STM32的Cortex-M4或Cortex-M7系列)上,执行浮点运算的算法时,MDK编译器的优化等级配置为 default模式(通常是O1或O2)和 O0模式&#…

嵌入式学习第二十八天--栈

栈的基本代码 栈是限定仅在表尾进行插入和删除操作的线性表。 先进后出、后进先出 栈顶:允许操作的一端 栈底:不允许操作的一端 入栈,出栈。 顺序栈 链式栈 302\5 1.创建 CreateSeqStack 2.销毁 DestroySeqStack 3.判断是否为空栈 IsEmptySeqStack 4.判断是否为满…

MySQL中怎么分析性能?

MySQL中主要有4种方式可以分析数据库性能,分别是慢查询日志,profile,Com_xxx和explain。 慢查询日志 先用下面命令查询慢查询日志是否开启, show variables like slow_query_log;# 一般默认都是以下结果 ---------------------…

大模型在支气管哮喘手术全流程风险预测与治疗方案制定中的应用研究

目录 一、引言 1.1 研究背景与意义 1.2 研究目标与方法 1.3 研究创新点 二、支气管哮喘概述 2.1 定义与发病机制 2.2 分类与临床表现 2.3 诊断标准与方法 三、大模型技术原理与应用现状 3.1 大模型的基本原理 3.2 在医疗领域的应用案例分析 3.3 适用于支气管哮喘预…

《AI Agent智能应用从0到1定制开发》学习笔记:使用RAG技术增强大模型能力,实现与各种文档的对话

思维导图 📚 引言 大型语言模型(如ChatGPT)虽然功能强大,但它们存在一些明显的局限性。这些模型的知识库更新较慢,无法实时学习最新内容,而且对私有数据或特定领域的专业知识了解有限。例如,Ch…