opencv_c++学习(八)

news2024/11/26 20:28:47

一、两张图像的像素比较

比较最大最小

最小:

min(lnputArray src1, InputArray src2, outputArray dst)

最大:

max(lnputArray src1, InputArray src2, outputArray dst)

src1 :第一个图像矩阵,可以是任意通道数的矩阵。
src2:第二个图像矩阵,尺寸和通道数以及数据类型都需要与src1一致。
dst:保留对应位置较大(较小)灰度值后的图像矩阵,尺寸、通道数和数据类型与src1一致。

minMaxLoc(lnputArray src,double* minVal, double* maxval=0, Point *minLoc=0, Point *maxLoc=0, lnputArray mask = noArray())

src:输入单通道矩阵
minVal:指向最小值的指针,如果不需要,则使用NULL。
maxVal:指向最大值的指针,如果不需要,则使用NULL。
minLoc:指向最小值位置的指针,如果不需要,则使用NULL。
maxLoc:指向最大值位置的指针,如果不需要,则使用NULL。
mask:掩码矩阵,用于标记寻找上述四个值的范围,参数默认值noArray(),表示寻找范围是矩阵中所有数据。

以上函数的使用实例如下:

	//读入两张图片
	Mat src1 = imread("图片1.png");
	Mat src2 = imread("图片2.png");

	Mat Min, Max;

	//比较两张图片中的最小、大值
	min(src1, src2, Min);
	max(src1, src2, Max); 

	//将图像转化为灰度图像
	Mat gray;
	cvtColor(src1, gray, COLOR_BGR2GRAY);

	//定义要使用的变量
	double minVal, maxVal;
	Point MinLoc, MaxLoc;

	minMaxLoc(gray, &minVal, &maxVal, &MinLoc, &MaxLoc);

二、图像像素逻辑运算

在这里插入图片描述
如果图像的数据类型为二值类型,则直接进行逻辑运算,如果图像为0-255数据类型,则先将数据转换为8为2进制数据类型之后再逻辑运算。
非运算只针对单幅图像进行操作:

bitwise2not(lnputArray src,outputArray dst, lnputArray mask = naArray())

与运算:

bitwise_and(InputArray src1, lnputArray src2,outputArray dst, lnputArray mask = noArray())

或运算:

bitwise_or(InputArray src1, lnputArray src2,outputArray dst, lnputArray mask = noArray())

异或运算:

bitwise_xor(InputArray src1, lnputArray src2,outputArray dst, lnputArray mask = noArray())

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

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

相关文章

电源电压过冲

前言: 前段时间突然想起来以前的一个问题,这个问题相信大家也都遇到过,甚至是解决过,或者没解决,也就不了了之,今天这篇文章,主要来讲下这个问题,看完喜欢的欢迎给我留言或者点赞&a…

【Linux】常见指令

🌇个人主页:平凡的小苏 📚学习格言:别人可以拷贝我的模式,但不能拷贝我不断往前的激情 🛸C专栏:Linux修炼内功基地 家人们更新不易,你们的👍点赞👍和⭐关注⭐…

EasyYapi插件—快速生成API接口文档

EasyYapi插件—快速生成API接口文档 1. 功能 导出http到(Controller注解类) YapiPostmanmarkdown导出RPC到 YapimarkdownCall api调用API接口 注意点: 注释中可以使用module标注模块所属的模块。表示接口会发布到yapi模块下;只…

生存分析利器:Python 中的 Kaplan-Meier Fitter 类详解

KaplanMeierFitter是lifelines库中用于计算生存分析的一个类。使用KaplanMeierFitter类,我们可以对我们的数据进行不同组之间的生存分析,比如根据年龄、性别、治疗手段等分类变量进行分组分析。 该类包含许多方法和属性,其中最常用的是fit()…

FPGA复位信号设计讨论

复位概述 复位作为电子系统中最常见的信号同时也是最重要的信号,它对工程师整体的设计表现有着极大的影响。复位信号可能深刻影响设计的性能表现,功耗,面积等等。对于一个优秀的系统设计,很难不把复位信号当成一个关键信号来设计。…

【车载基础软件 |ASF中间件 系列二】— 国产汽车生态平台ASF的生态框架

本文主要介绍国产基础软件开发平台架构下基于ASF的生态框架。 背景信息 随着E/E架构演进,从最初传统的分布式架构,由独立功能的ECU通过CANLIN等高实时性 总线通讯。诼渐演进到当前分域集中式结合车联网功能的结构,车载以大网逐渐步入了整车电子电器架构之中,除了高实时性…

【AIGC使用教程】论文阅读神器 SciSpace 从注册到体验

欢迎关注【AIGC使用教程】 专栏 【AIGC使用教程】论文阅读神器 SciSpace 从注册到体验 【AIGC使用教程】Microsoft Edge/Bing Chat 注册使用完全指南 【AIGC使用教程】GitHub Copilot 免费注册及在 VS Code 中的安装使用 【AIGC使用教程】GitHub Copilot 免费注册及在 PyCharm …

golang第一个简单项目实战+源码(gin+gorm)

创建项目并新建包 点击file->settings->GOPATH,把当前项目加进GOPATH目录中,然后点击apply, 点击加号完成之后,在左边选择go build 新建数据库 编写配置信息 这里将数据的信息都写在了配置文件里面 dns的内容为&#x…

二叉树概念结构,以及画图加代码分析二叉树遍历,创建,销毁,层序遍历,判断是否完全二叉树等等

二叉树 树的概念及结构树的概念树的相关概念树的表示 二叉树的概念及结构概念特殊的二叉树二叉树性质二叉树的存储结构 二叉树的实现二叉树顺序结构的实现二叉树链式结构的实现二叉树的遍历前序遍历中序遍历后序遍历 二叉树结点数量叶子结点数量求树高求k层结点数量 二叉树创建…

SpringMVC第一阶段:SpringMVC的介绍和使用

1、SpringMVC的概述 Spring MVC框架是一个开源的Java平台,为开发强大的基于JavaWeb应用程序提供全面的基础架构支持,并且使用起来非常简单容易。 Spring web MVC框架提供了MVC(模型 - 视图 - 控制器)架构,用于开发灵活和松散耦合的Web应用程…

【原创】创建Vue3 ts项目

文章目录 创建Vue3 ts项目工作空间创建vue 项目进入项目目录启动项目 & 停止项目访问成功 创建Vue3 ts项目 工作空间 进入工作空间目录:D:\workspace\vue 创建vue 项目 vue create vt #创建vt项目vue test 选择手动进行配置: 选中下面几个核心…

利用 Mybatis-Plus 的动态数据源实现多数据源配置

目录 一、导入依赖 二、Application.yaml配置文件 三、切换数据源 四、其他方法 4.1 配置多个数据源 4.2 定义Datasource和EntityManager 4.3 在需要使用数据源的地方注入不同的EntityManager 官网:https://baomidou.com/pages/a61e1b/#dynamic-datasource …

vue2实现路由跳转后隐藏底部固定导航栏Tabber的一种方式

在使用vue路由的时候,跳转到某些页面上是不需要展示底部固定的导航栏的,所以在某些特定的页面跳转时候,就需要隐藏底部的导航栏 这里用了一种方式去解决这个问题 1、前提 这里我把底部导航栏做了一个组件的封装,然后在App.vue里…

玩转 LLMs 之基础设施「利刃出鞘」

LLMs 时代已经到来,这个由 ChatGPT 开始的全球化技术浪潮,所经之处,风起云涌。LLMs 之于当下,更像是 iOS 、Android 之于移动互联网时代。开发者沸腾,投资机构争抢,与赛道相关的基础设施建设自然也成为整个…

IOC容器中的核心容器ApplicationContext

文章目录 1 环境准备2 容器2.1 容器的创建方式2.2 Bean的三种获取方式2.3 容器类层次结构2.4 BeanFactory的使用 前面已经完成bean与依赖注入的相关知识学习,接下来我们主要学习的是IOC容器中的核心容器。 这里所说的核心容器,大家可以把它简单的理解为…

聊聊我在三家IT公司的工作经历,C++程序员都在做什么?

我想分享一些关于C程序员工作的经验。我先自我介绍一下:我是一名毕业于普通985大学的程序员,已经工作了5年,但是我曾在三家互联网公司工作过,这些公司都还算是比较有名的互联网公司。 好了,不多说了,进入正…

真题详解(自顶向下)-软件设计(七十六)

真题详解(传引用)-软件设计(七十五)https://blog.csdn.net/ke1ying/article/details/130695214 计算机软件著作权,正确的是_____。 非法进行拷贝、发布或更改软件的人被称为软件盗版者 循环冗余CRC校验,设数据位为k位…

KVM网络管理-创建桥接网络

KVM网络管理-创建桥接网络 分类 网络: nat isolated 接口: bridge 虚拟交换机: linux-bridge(linux) ovs(open-Vswitch) NAT网络拓扑图 仅主机模式网络拓扑图 桥接模式网络拓扑图 在Linux主机上开启vm1,从交换机上把…

第五章 面向对象-6.内部类

内部类 内部类分为: 成员内部类、静态嵌套类、匿名内部类(直接new 抽象类,直接new 接口)$1 $2。 如果是函数式接口,可以使用lambda表达,这样可以避免new 接口产生内部匿名类 内部类仍然是一个独立的类,在…

接口测试要测试什么?怎么测?我来告诉你

目录 本文主要分为两个部分: 第一部分: 第二部分: 备注: 本文主要分为两个部分: 第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与…