【MATLAB图像融合】[2]像素加权融合及图像融合的主观性
一、像素加权融合
原理
在上一篇文章中提过,在MATLAB中,图像会以矩阵的形式读入、存入程序,对像素级的操作就是对矩阵中每个元素的操作。因此,如果想实现带权的操作,那么对像素点赋予权值,然后再对像素点进行计算就可以了。
MATLAB实现
clear;clc;x1=imread('coffe1.tif');
x2=imread('coffe2.tif');x1=rgb2gray(x1); %rgb2gray函数可以将RGB图像转化成灰度图像。
x2=rgb2gray(x2);[m,n]=size(x1);
for i=1:m %两次for循环遍历整个矩阵for j=1:ny(i,j)=0.4*x1(i,j)+0.6*x2(i,j); %每个像素带权相加end
endsubplot 221;imshow(x1);title('原图像1');
subplot 222;imshow(x2);title('原图像2');
subplot 223;imshow(y);title('加权融合图像');
运行结果:
二、图像融合的主观性
图像融合具有的主观性,它体现在:
1、观察者侧重点不同,观察者认为的融合效果就不同。
2、同一方法在不同图像无论对观察者还是数学公式来说,体现的结果都不同。
3、反过来应用1、2两点,通过提前观察图像的特性,可以对特定一类的图像融合做出方法调整,达到更好的主观感受。
以上面最简单的加权融合来说,通过观察,我们发现:对于原图像1,2。在图像的上半区域是图2清晰,而在图像的下半区域,是图1清晰。那么简单调整代码,融合效果就会发生变化。
MATLAB实现
clear;clc;x1=imread('coffe1.tif');
x2=imread('coffe2.tif');x1=rgb2gray(x1); %rgb2gray函数可以将RGB图像转化成灰度图像。
x2=rgb2gray(x2);[m,n]=size(x1);
m2=floor(m*9/20); %floor函数实现小数的向左取整。
for i=1:m2 %两次for循环遍历整个矩阵。for j=1:ny(i,j)=0.2*x1(i,j)+0.8*x2(i,j); %上半区域给图2更多的权重。end
end
for i=m2+1:m %两次for循环遍历整个矩阵。for j=1:ny(i,j)=0.8*x1(i,j)+0.2*x2(i,j); %下半区域给图1更多的权重。end
end
subplot 221;imshow(x1);title('原图像1');
subplot 222;imshow(x2);title('原图像2');
subplot 223;imshow(y);title('加权融合图像');
运行结果:
三、彩色图像的处理
在一、二的代码中,我读入的都是RGB图像,然后进行灰度化的处理之后再对灰度图进行图像融合的操作。那么如果想对彩色图像直接进行处理该怎么做呢?这里有一种简单的方法可以参考。
MATLAB实现
clear;clc;x1=imread('coffe1.tif');
x2=imread('coffe2.tif');[m,n,d]=size(x1); %新加入的d代表维度。这里的d=3。
y=[]; %预分配内存,提高运行效率。
for i=1:mfor j=1:nfor dim=1:d %对r,g,b三个通道处理。y(i,j,dim)=0.5*x1(i,j,dim)+0.5*x2(i,j,dim);endend
endsubplot 221;imshow(x1);title('原图像1');
subplot 222;imshow(x2);title('原图像2');
subplot 223;imshow(uint8(y));title('加权融合图像');
运行结果:
虽然最终实现了彩色图像的处理。但是在实际学习过程中,为了减少不必要的麻烦、减少运行时间、减少潜在错误的风险,今后的图像融合方法还是会以灰度图像的融合为主,在阐明原理之后,向彩色图像拓展,都是可行的。
下一篇将会给出像素极大值极限值方法,并且涉及函数的定义和调用方法。原理本身在本篇都以介绍。欢迎大家私信,评论。
【MATLAB图像融合】[2]像素加权融合及图像融合的主观性相关推荐
- 光学成像模型\和物距、像距、焦距、三者关系\和世界坐标、相机坐标、图像坐标、像素坐标关系\和图像畸变标定处理(二)
来自百度百科:https://zhidao.baidu.com/question/55907940.html 原文链接:https://blog.csdn.net/qq_35250841/articl ...
- 【图像融合】简单加权融合
简单加权融合 简单加权融合也叫做像素加权平均法(Weighted Averaging,WA)是最简单.直接的图像融合方法.它具有简单易实现.运算速度快的优点,并能提高融合图像的信噪比,但是这种方法 ...
- 《OpenCV3编程入门》学习笔记5 Core组件进阶(一)访问图像中的像素
第5章 Core组件进阶 5.1 访问图像中的像素 5.1.1 图像在内存中的存储方式 1.图像矩阵大小取决于通道数,矩阵中的子列个数与通道数相等. 2.如果内存足够大,可以实现连续存储,有助于提升图 ...
- 多传感器融合——激光雷达点云投影到图像(kitti数据集)
从csdn上下载了激光雷达点云投影到图像的matlab程序,连接见下方. KITTI雷达点云与图像数据融合matlab源码_点云与rgb图像融合-机器学习代码类资源-CSDN下载KITTI数据集中雷达 ...
- 融合多层级特征的遥感图像地面弱小目标检测
论文基本信息 标题:融合多层级特征的遥感图像地面弱小目标检测 发表时间:2022.03 期刊:仪 器 仪 表 学 报 第一作者:闫钧华 创新点如何出现的: 0.背景 本文针对单帧遥感图像中地面弱小目标 ...
- 深度学习图像融合_基于深度学习的图像超分辨率最新进展与趋势【附PDF】
因PDF资源在微信公众号关注公众号:人工智能前沿讲习回复"超分辨"获取文章PDF 1.主题简介 图像超分辨率是计算机视觉和图像处理领域一个非常重要的研究问题,在医疗图像分析.生物特 ...
- Opencv图像基本操作——读取、显示、截取图像、属性、颜色通道、边界填充、图像融合
引言 我们都会有一个疑惑:计算机眼中的图像长什么样子呢? 首先拿来一张图片分割成无数个小格,每一个小格叫做像素点,计算机中的图像是由像素点构成的像素矩阵,像素点构成它的每一个值都是在0-255之间浮动 ...
- 图像isp 详解_首创ISP+NPU融合架构,详解华为摄影在算法以及硬件方面的创新
本文从芯片以及算法层面科普华为在摄影方面的创新. 内容极为硬核 麒麟9000作为全球首款5nm 5G SoC,在影像领域的技术创新堪称跨越式升级,麒麟9000作为全球首款5nm 5G SoC,在影像领 ...
- 数据挖掘终篇!一文学习模型融合!从加权融合到stacking, boosting
Datawhale 作者:田杨军 ,Datawhale优秀学习者 摘要:对于数据挖掘项目,本文将学习如何进行模型融合?常见的模型融合的方法有哪些?针对不同的问题类型,应该选择哪种方法呢? 模型融合:通 ...
最新文章
- 源代码解读Cas实现单点登出(single sign out)功能实现原理
- iphone以旧换新活动_iPhone:我降价 1600 元!安卓:我有 5G
- 数字图像处理:第十五章 图象分割
- 2013计算机系统导论,【精选】2013计算机系统导论-期末考卷-发布.pdf
- oracle 10g rman catalog数据库版本问题
- 红橙Darren视频笔记 仿QQ步数计数view 画笔的使用
- python下载图片到文件夹_python实现解析markdown文档中的图片,并且保存到本地~
- A股收盘:深证区块链50指数跌3.80%,爱迪尔等9股涨停
- 文献按时间排序_论文参考文献详解~
- 熟悉java的写什么毕业设计_计算机专业Java相关的毕业论文该如何写?
- Qt::WA_QuitOnClose
- c语言tc游戏代码大全,wintcC语言小游戏画图代码.doc
- 英语: 听力(Listening)
- 三大语言关于负数除整数余数和商的总结
- PCL学习笔记(3)——openni2_grabber从相机获取点云数据
- python对月饼数据进行可视化,看看哪家最划算
- 为什么书呆子不受欢迎
- 【讲清楚,说明白!】Zabbix企业级自动化监控与无人报警系统--实战演练
- python使用xlwt模块操作Excel
- python守护进程进程池_Python—守护进程管理工具(Supervisor)