05 OpenCV图像混合技术
文章目录
- 理论
- 算子
- 示例
理论
其中 的取值范围为0~1之间
算子
addWeighted
CV_EXPORTS_W void addWeighted(InputArray src1, double alpha, InputArray src2, double beta,double gamma, OutputArray dst, int dtype = -1
);
参数1:输入图像Mat – src1
参数2:输入图像src1的alpha值
参数3:输入图像Mat – src2
参数4:输入图像src2的alpha值
参数5:gamma值,添加到每个和的标量。
参数6:输出混合图像
add
void add(InputArray src1, InputArray src2, OutputArray dst,InputArray mask = noArray(), int dtype = -1
);
InputArray类型的src1 ,第一个输入数组或scalar。InputArray类型的src2 ,第二个输入数组或scalar。OutputArray类型的dst ,输出图像,图像的尺寸、通道数和输入图像相同。InputArray类型的mask,可选操作掩码-8位单通道数组,指定要更改的输出数组元素。int类型的dtype,输出数组的可选深度。
subtract
void subtract(InputArray src1, InputArray src2, OutputArray dst,InputArray mask = noArray(), int dtype = -1
);
InputArray类型的src1 ,第一个输入数组或scalar。InputArray类型的src2 ,第二个输入数组或scalar。OutputArray类型的dst ,输出图像,图像的尺寸、通道数和输入图像相同。InputArray类型的mask,可选操作掩码-8位单通道数组,指定要更改的输出数组元素。int类型的dtype,输出数组的可选深度。
multiply
void multiply(InputArray src1, InputArray src2, OutputArray dst,double scale = 1,int dtype = -1
);
InputArray类型的src1 ,第一个输入数组或scalar。InputArray类型的src2 ,第二个输入数组或scalar,尺寸和类型要与src1一致。OutputArray类型的dst ,输出图像,尺寸和类型要与src1一致。
double类型的scale,可选比例因子。
int类型的dtype,输出数组的可选深度。
divide
void divide(InputArray src1, InputArray src2, OutputArray dst,double scale = 1,int dtype = -1
);void divide(double scale, InputArray src2, OutputArray dst, int dtype = -1
);InputArray类型的src1 ,第一个输入数组或scalar。
InputArray类型的src2 ,第二个输入数组或scalar,尺寸和类型要与src1一致。
OutputArray类型的dst ,输出图像,尺寸和类型要与src1一致。
double类型的scale,scalar因子。
int类型的dtype,输出数组的可选深度。
示例
#include <opencv2/opencv.hpp>
#include <iostream>using namespace std;
using namespace cv;int main(int argc, char** argv) {Mat src1, src2, dst;src1 = imread("D:/vcprojects/images/LinuxLogo.jpg");src2 = imread("D:/vcprojects/images/win7logo.jpg");if (!src1.data) {cout << "could not load image Linux Logo..." << endl;return -1;}if (!src2.data) {cout << "could not load image WIN7 Logo..." << endl;return -1;}double alpha = 0.5;if (src1.rows == src2.rows && src1.cols == src2.cols && src1.type() == src2.type()) {addWeighted(src1, alpha, src2, (1.0 - alpha), 0.0, dst);// multiply(src1, src2, dst, 1.0);//两个图片相乘imshow("linuxlogo", src1);imshow("win7logo", src2);namedWindow("blend demo", CV_WINDOW_AUTOSIZE);imshow("blend demo", dst);}else {printf("could not blend images , the size of images is not same...\n");return -1;}waitKey(0);return 0;
}

相关文章:
05 OpenCV图像混合技术
文章目录 理论算子示例 理论 其中 的取值范围为0~1之间 算子 addWeighted CV_EXPORTS_W void addWeighted(InputArray src1, double alpha, InputArray src2, double beta,double gamma, OutputArray dst, int dtype -1 ); 参数1:输入图像Mat …...
2326. 王者之剑(网络流,最小割,最大权独立集,最小点权覆盖)
活动 - AcWing 给出一个 nm 网格,每个格子上有一个价值 vi,j 的宝石。 Amber 可以自己决定起点,开始时刻为第 0 秒。 以下操作,在每秒内按顺序执行。 若第 i 秒开始时,Amber 在 (x,y),则 Amber 可以拿走 (x,y) 上的…...
内网信息搜集
目录 内网基础知识 基本流程图 怎么判断是否在域内 常规信息类收集-应用&服务&权限等 cs信息搜集 bloodhound安装及使用 内网基础知识 工作组:将不同的计算机按照功能分别列入不同的组,想要访问某个部门的资源,只要在【网络】里…...
微型力量,巨大作用:嵌入式技术的创新应用
微型力量,巨大作用:嵌入式技术的创新应用 嵌入式技术是一种将计算机技术嵌入到各种设备和系统中的技术,它的应用范围非常广泛,包括但不限于智能手机、智能家居、医疗设备、工业自动化等领域。这种微型的技术在各个领域中发挥着巨…...
华为 OD 一面算法原题
2.2 亿彩票公布调查结果 昨天,闹得沸沸扬扬的《10 万中 2.2 亿》的彩票事件,迎来了官方公告。 简单来说,调查结果就是:一切正常,合规合法。 关于福利彩票事件,之前的推文我们已经分析过。 甚至在后面出现《…...
FPGA-学会使用vivado中的存储器资源ROM(IP核)
问题: 某芯片,有500个寄存器,需要在上电的时候由FPGA向这些寄存器中写入初始值,初始值已经通过相应的文档给出了具体值,这些值都是已知的。 分析关键点: 数据量比较多(Verilog代码,通过case语句、always语句这种查找表的方式,数…...
自测-1 打印沙漏
文章预览: 题目算法代码 题目 算法 以前做过这个,那次是c语言写的,一点一点处理一层一层完成,这次我换了一种语言用了另一种思想使用递归去写,还是我们要先求出应该有多少层这个很容易,中间输出部分我们算…...
高级语言期末2009级B卷(计算机学院)
1.编写一个名为mystrcpy的函数,实现将字符串str1的偶数位子的字符的拷贝到另一个字符串str2中。并编写主函数,在主函数中从键盘读入一个长度<100的字符串str1,然后调用函数mystrcpy;最后输出str2,例如,读…...
c# using 用法
using命令空间 导入命名空间中的所有类型 如:using System.Text; using别名 using别名包括详细命名空间信息的具体类型,这种做法有个好处就是当同一个cs引用了两个不同的命名空间,但两个命名空间都包括了一个相同名字的类型的时候。当需要…...
【Django】执行查询—跨关系查询中的跨多值关联问题
跨多值查询 跨越 ManyToManyField 或反查 ForeignKey (例如从 Blog 到 Entry )时,对多个属性进行过滤会产生这样的问题:是否要求每个属性都在同一个相关对象中重合。 filter() 先看filter(),通过一个例子看…...
Spring八股 常见面试题
什么是Spring Bean 简单来说,Bean 代指的就是那些被 IoC 容器所管理的对象。我们需要告诉 IoC 容器帮助我们管理哪些对象,这个是通过配置元数据来定义的。配置元数据可以是 XML 文件、注解或者 Java 配置类。 将一个类声明为 Bean 的注解有哪些? Com…...
今年面试潮,说实话这个开发岗能不能冲?
自打华为 2019 年发布鸿蒙操作系统以来,网上各种声音百家争鸣。尤其是 2023 年发布会公布的鸿蒙 4.0 宣称不再支持 Android,更激烈的讨论随之而来。 当下移动端两大巨头瓜分了绝大部分市场: iOS 是闭源的,只有唯一的一家厂商&am…...
【前端素材】推荐优质在线花卉商城电商网页Flowery平台模板(附源码)
一、需求分析 1、系统定义 在线花卉商城是一个通过互联网提供花卉销售服务的电子商务平台,用户可以在该平台上浏览、选择和购买各种花卉产品。 2、功能需求 在线花卉商城是一个通过互联网提供花卉销售服务的电子商务平台,用户可以在该平台上浏览、选…...
★【递归】【构造二叉树】Leetcode 106.从中序与后序遍历序列构造二叉树
★【递归前序】【构造二叉树】Leetcode 106.从中序与后序遍历序列构造二叉树 105. 从前序与中序遍历序列构造二叉树 106.从中序与后序遍历序列构造二叉树:star:思路分析递归解法 105. 从前序与中序遍历序列构造二叉树递归解法 凡是构造二叉树>>>>>>>>&…...
linux检测和重启python脚本
#!/bin/bash# 检测Flask应用是否挂了 if ! pgrep -f "flask_app.py" >/dev/null; then# 重启Flask应用cd /path/to/your/flask/appnohup python3 flask_app.py >/dev/null 2>&1 & fi这是一个简单的bash脚本,用于检测Flask应用是否挂掉&a…...
HTML+CSS+JS:花瓣登录组件
效果演示 实现了一个具有动态花朵背景和简洁登录框的登录页面效果。 Code <section><img src"./img/background.jpeg" class"background"><div class"login"><h2>Sign In</h2><div class"inputBox"…...
Unity中URP下实现水体(水面反射)
文章目录 前言一、原理1、法一:使用立方体纹理 CubeMap,作为反射纹理使用2、法二:使用反射探针生成环境反射图,所谓反射的采样纹理 二、实现水面反射1、定义和申明CubeMap2、反射向量需要什么3、计算 N ⃗ \vec{N} N 4、计算 V ⃗…...
基于FastJson实现Json数据文件导入导出解析
哈喽,大家好,我是灰小猿,一个超会写bug的程序猿! 今天来记录一个在项目实战中比较实用的方法,主要是针对一些需要存在简单数据文件导入导出的场景,如:数据文件的简单备份、软件升版前后配置导入…...
JVM内存分配与垃圾收集流程
3.8 实战:内存分配与回收策略 3.8.1 对象优先在Eden分配 大多数情况下,对象在新生代Eden区中分配。当Eden区没有足够空间进行分配时,虚拟机将发起一次Minor GC。 3.8.2 大对象直接进入老年代 HotSpot虚拟机提供了-XX:Prete…...
【python】yaml转成json
姊妹篇:【python】json转成成yaml yaml数据: address:city: 北京市postalCode: 100000street: 北京路123号 age: 30 cart: - product:name: 笔记本电脑price: 1199.99quantity: 2 - product:name: 智能手机price: 599.99quantity: 1 children: - age: …...
深入解析Buildroot:从零构建定制化Linux根文件系统
1. Buildroot入门:嵌入式开发的瑞士军刀 第一次接触Buildroot是在2015年开发智能家居网关时,当时我们需要一个仅占用8MB存储空间的轻量级Linux系统。传统发行版动辄几百MB的体积完全不适合资源受限的嵌入式设备,而手动构建根文件系统又像在走…...
企业专属Agent开发从入门到精通(非常详细),看这篇就够了!
导读 随着 2025 年通用 Agent 在 C 端市场的爆发式增长,包括 Manus 被 Meta 收购等标志性事件的出现,人工智能正在重塑个人生产力。然而,当目光转向企业级(ToB)市场时,Agent 的落地进程却呈现出明显的滞后与…...
正确构建与还原特征分解:NumPy 中特征向量矩阵的列优先约定详解
本文详解为何用 NumPy 进行特征分解重建时 eigenvectors 顺序和方向“看似错乱”,核心在于明确 eig() 的输入/输出约定——特征向量必须以列(而非行)组织,且数值精度、排序与标量倍数等数学本质需同步理解。 本文详解为何用 …...
AI安全进阶:AI对抗性攻击的类型与防御策略
AI安全进阶:AI对抗性攻击的类型与防御策略📝 本章学习目标:本章进入进阶环节,帮助读者深入理解AI安全合规治理的核心要点。通过本章学习,你将全面掌握"AI安全进阶:AI对抗性攻击的类型与防御策略"…...
扫地机器人全场景测试实战:从实验室仿真到真实家庭环境的闭环验证
1. 为什么需要全场景测试? 家里有扫地机器人的朋友应该都遇到过这种情况:明明在店里演示时避障灵敏的机器,到家后却总卡在拖鞋堆里;实验室数据标注"续航120分钟"的机型,实际清扫80平米户型就得回充两次。问…...
GitHub汉化插件终极指南:3分钟实现GitHub中文界面的完整教程
GitHub汉化插件终极指南:3分钟实现GitHub中文界面的完整教程 【免费下载链接】github-chinese GitHub 汉化插件,GitHub 中文化界面。 (GitHub Translation To Chinese) 项目地址: https://gitcode.com/gh_mirrors/gi/github-chinese 还在为GitHub…...
鸿蒙Next实战:5分钟搞定跨应用拖拽图片功能(附完整代码)
鸿蒙Next实战:5分钟搞定跨应用拖拽图片功能(附完整代码) 在移动应用开发中,跨应用数据交互一直是提升用户体验的关键技术点。想象一下,用户无需繁琐的保存-导入流程,只需简单拖拽就能将图片从相册应用转移到…...
理解 JavaScript 的单线程
简单来说:JavaScript 语言规范规定了它的执行模型是单线程的,但承载它的运行环境(浏览器或 Node.js)是多进程的。一、为什么说 JS 是“单线程”?这里的“单线程”指的是 JavaScript 的“执行上下文”和“内存模型”。 …...
大模型量化秘籍:小白程序员也能轻松玩转Int8/Int4,建议收藏!
大模型量化秘籍:小白程序员也能轻松玩转Int8/Int4,建议收藏! 本文深入浅出地解析了大语言模型(LLM)量化技术的原理,解释了为何在降低显存占用和计算压力的同时,模型性能仍能基本保持。核心在于模…...
保姆级教程:给你的Jetson Orin NX换个‘大房子’——新SSD初始化与JetPack 6.x刷机全流程
深度指南:Jetson Orin NX存储升级与JetPack 6.x系统部署实战 当AI模型的参数量从百万级跃升至十亿级,开发板的存储系统便成了制约创新的隐形瓶颈。Jetson Orin NX作为边缘计算领域的性能标杆,其原装存储配置往往难以应对持续增长的模型体积和…...

