opencv 图像加法与图像融合的实现代码


Posted in Python onJuly 08, 2020

图像加法

1.使用Numpy加法

运算方式:结果=图像1+图像2

原理:图像数据格式为unit8
8位二进制表示范围是0到255。
二进制相加
1.不超过255的,如100+58=158
2.两数相加可能超过255,超过255的取模运算
如255+58=(255+58)%255=58

2.使用opencv加法

方法:结果=cv2.add(图像1,图像2)
饱和运算:
1.如果 两数相加小于255,100+58=158
2.两数相加可能超过255,值取255.255+58=255

算法比较

注意参与运算的两个图比较大小 格式一样。程序无法对不同尺寸和格式(如PNG,JPG)进行运算。

import cv2
import numpy as np
a=cv2.imread('lenacolor.png',flags=cv2.IMREAD_UNCHANGED)#cv2.IMREAD_UNCHANGED 未改变
b = a
result1 = a + b
result2 = cv2.add(a, b)
cv2.imshow("original", a)
cv2.imshow("result1", result1)
cv2.imshow("result2", result2)
cv2.waitKey(0)
cv2.destroyAllWindows()

opencv 图像加法与图像融合的实现代码

图像融合

将2张或者2张以上的图像信息融合到一张图片上。
不同于图像相加,它需进过一系列算法处理。
如将两张相同但各有不同缺陷的图,融合成一张完美图,结合各自优点。

opencv 图像加法与图像融合的实现代码

图像加法:
结果图像=图像1+图像2
图像融合:
结果图像=图像1x系数1+图像2x系数2+亮度调节量

方法:函数addWeighted
cv2.addWeighted(图像1,系数1,图像2,系数2,亮度调节量)

算例
算例中系数为1,1.实际中,我们一般设为不等

import cv2
b=cv2.imread('lena.bmp')#cv2.IMREAD_UNCHANGED 未改变
a=cv2.imread("boat.bmp")
result=cv2.addWeighted(a,1,b,1,0)
cv2.imshow("boat",a)
cv2.imshow("lena",b)
cv2.imshow("result",result)
cv2.waitKey()
cv2.destroyAllWindows()

opencv 图像加法与图像融合的实现代码

到此这篇关于opencv 图像加法与图像融合的实现代码的文章就介绍到这了,更多相关opencv 图像加法与图像融合内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python打印scrapy蜘蛛抓取树结构的方法
Apr 08 Python
Python检测QQ在线状态的方法
May 09 Python
Python3中的真除和Floor除法用法分析
Mar 16 Python
Python PyQt5标准对话框用法示例
Aug 23 Python
Python实现输出程序执行进度百分比的方法
Sep 16 Python
PyQt5利用QPainter绘制各种图形的实例
Oct 19 Python
python中的随机函数random的用法示例
Jan 27 Python
python修改txt文件中的某一项方法
Dec 29 Python
只需7行Python代码玩转微信自动聊天
Jan 27 Python
Python线程之定位与销毁的实现
Feb 17 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
Dec 17 Python
python实现的web监控系统
Apr 27 Python
opencv 图像轮廓的实现示例
Jul 08 #Python
opencv 图像滤波(均值,方框,高斯,中值)
Jul 08 #Python
用opencv给图片换背景色的示例代码
Jul 08 #Python
python文件及目录操作代码汇总
Jul 08 #Python
Python预测2020高考分数和录取情况
Jul 08 #Python
Python venv虚拟环境配置过程解析
Jul 08 #Python
Python如何实现自带HTTP文件传输服务
Jul 08 #Python
You might like
输出控制类
2006/10/09 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
2014/08/20 PHP
PHP children()函数讲解
2019/02/03 PHP
php7 错误处理机制修改实例分析
2020/05/25 PHP
如何实现iframe(嵌入式帧)的自适应高度
2006/07/26 Javascript
JavaScript Timer实现代码
2010/02/17 Javascript
Javascript 网页水印(非图片水印)实现代码
2010/03/01 Javascript
JQuery操作表格(隔行着色,高亮显示,筛选数据)
2012/02/23 Javascript
Js-$.extend扩展方法使方法参数更灵活
2013/01/15 Javascript
js传参数受特殊字符影响错误的解决方法
2013/10/21 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
前端设计师们最常用的JS代码汇总
2016/09/25 Javascript
JS中setTimeout和setInterval的最大延时值详解
2017/02/13 Javascript
vue模板语法-插值详解
2017/03/06 Javascript
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
vuejs实现本地数据的筛选分页功能思路详解
2017/11/15 Javascript
微信小程序实现左滑动删除效果
2020/03/30 Javascript
微信小程序之数据绑定原理解析
2019/08/14 Javascript
JavaScript创建、读取和删除cookie
2019/09/03 Javascript
基于node+vue实现简单的WebSocket聊天功能
2020/02/01 Javascript
vue使用keep-alive实现组件切换时保存原组件数据方法
2020/10/30 Javascript
python实现基于信息增益的决策树归纳
2018/12/18 Python
Python实现的企业粉丝抽奖功能示例
2019/07/26 Python
python logging添加filter教程
2019/12/24 Python
解决pytorch下出现multi-target not supported at的一种可能原因
2021/02/06 Python
法国大使拉杆箱官网:DELSEY Paris
2018/03/20 全球购物
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
什么是servlet链?
2014/07/13 面试题
大学生求职简历的自我评价
2013/10/14 职场文书
公司承诺书怎么写
2014/05/24 职场文书
公司年终奖分配方案
2014/06/16 职场文书
2014市府办领导班子“四风问题”对照检查材料思想汇报
2014/09/24 职场文书
大三学生英语考试作弊检讨书
2015/01/01 职场文书
培训师岗位职责
2015/02/14 职场文书
大学学生会主席竞选稿
2015/11/19 职场文书
CSS精灵图的原理与使用方法介绍
2022/03/17 HTML / CSS