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线程池的实现实例
Nov 18 Python
Python的Urllib库的基本使用教程
Apr 30 Python
Python解惑之True和False详解
Apr 24 Python
对Python生成器、装饰器、递归的使用详解
Jul 19 Python
django数据关系一对多、多对多模型、自关联的建立
Jul 24 Python
Python 脚本实现淘宝准点秒杀功能
Nov 13 Python
pytorch实现mnist数据集的图像可视化及保存
Jan 14 Python
pytorch ImageFolder的覆写实例
Feb 20 Python
解决python使用list()时总是报错的问题
May 05 Python
Python reduce函数作用及实例解析
May 08 Python
python实现邮件循环自动发件功能
Sep 11 Python
Django实现随机图形验证码的示例
Oct 15 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
提问的智慧(2)
2006/10/09 PHP
PHP运行出现Notice : Use of undefined constant 的完美解决方案分享
2012/03/05 PHP
使用PHP curl模拟浏览器抓取网站信息
2013/10/28 PHP
Yii视图CGridView列表用法实例分析
2016/07/12 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
java script编程起步(第三课)
2007/01/10 Javascript
深入探究AngularJS框架中Scope对象的超级教程
2016/01/04 Javascript
javascript实现PC网页里的拖拽效果
2016/03/14 Javascript
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
2016/05/16 Javascript
javascript正则表达式之分组概念与用法实例
2016/06/16 Javascript
jQuery拖拽通过八个点改变div大小
2020/11/29 Javascript
详解vue配置后台接口方式
2019/03/29 Javascript
layui对工具条进行选择性的显示方法
2019/09/19 Javascript
JS 设计模式之:工厂模式定义与实现方法浅析
2020/05/06 Javascript
解决vue单页面 回退页面 keeplive 缓存问题
2020/07/22 Javascript
[01:56]生活中的妖精之七夕特别档
2016/08/09 DOTA
[57:29]Alliance vs KG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/17 DOTA
[42:32]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
python在windows下实现备份程序实例
2014/07/04 Python
Python实现的选择排序算法原理与用法实例分析
2017/11/22 Python
python实现简单遗传算法
2018/03/19 Python
详解python selenium 爬取网易云音乐歌单名
2019/03/28 Python
python实现ip代理池功能示例
2019/07/05 Python
Python Selenium 之数据驱动测试的实现
2019/08/01 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
2019/08/05 Python
神话般的珠宝:Ross-Simons
2020/07/13 全球购物
95%的面试官都会问到的50道Java线程题,附答案
2012/08/03 面试题
法律工作求职自荐信
2013/10/31 职场文书
个人授权委托书范本
2014/04/03 职场文书
项目经理任命书范本
2014/06/05 职场文书
爸爸的三轮车观后感
2015/06/16 职场文书
小学毕业感言200字
2015/07/30 职场文书
导游词之吉林花园山
2019/10/17 职场文书
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery
Python selenium模拟网页点击爬虫交管12123违章数据
2021/05/26 Python
数据库之SQL技巧整理案例
2021/07/07 SQL Server