IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 图像配准(image registration)与图像融合(image fusion) -> 正文阅读

[人工智能]图像配准(image registration)与图像融合(image fusion)

在ISP多帧图像降噪过程中第一步就是对采集到的n帧图像进行帧间配准,然后根据各帧的像素值进行时域噪声判断。正确的配准是准确判断时域噪声的关键,否则会因为误判造成去噪过多或去噪不够的问题。而且帧间配准出现问题会导致图像简单叠加融合时出现重影现象。图像配准是图像融合的基础操作。

根据以下参考博客内容:

https://www.cnblogs.com/carsonzhu/p/11188574.html

https://blog.csdn.net/yu253/article/details/80055295

https://blog.csdn.net/qq_28901541/article/details/88817122

https://baijiahao.baidu.com/s?id=1640538648476237607&wfr=spider&for=pc

https://blog.csdn.net/RURUD/article/details/72828812

https://blog.csdn.net/langyuewu/article/details/4166192

https://blog.csdn.net/qq_37806107/article/details/105368425

1.图像配准

1.1图像配准的概念及原理

图像配准概念:

图像配准(Image registration)就是将不同时间、不同传感器(成像设备)或不同条件下(天候、照度、摄像位置和角度等)获取的两幅或多幅图像进行匹配、叠加的过程。是使用某种方法,基于某种评估标准,将一副或多副图片(局部)最优映射到目标图片上的方法。

具体地说,对于一组图像数据集中的两幅图像,通过寻找一种空间变换把一幅图像(浮动图像,moving image)映射到另一幅图像(参考图像,fixed image)上,使得两图中对应于空间同一位置的点一一对应起来,从而达到信息融合的目的。

图像配准算法原理:

1.2图像配准的流程

任何一种配准算法都必须考虑图像的成像原理、几何变形、噪声影响、配准精度等因素。从原理上讲,配准大致可以分为以下四个步骤:

  • 特征检测。手动或者可能自动检测显著和独特的对象(闭合边界区域,边缘,轮廓,交线,角点等)。为了进一步处理,这些特征可以通过点来表示(重心,线尾,特征点),这些点称为控制点(CP)。
  • 特征匹配。建立场景图像和参考图像特征之间的相关性。使用各种各样的特征描述符,相似性度量,连同特征的空间相关性。
  • 转换模型估计。估计将感测图像和参考图像对齐的所谓映射函数的类型和参数。映射函数的参数通过特征相关性计算。
  • 图像重采样和转换。使用映射函数转换感测图像。使用合适的插值技术计算非整数坐标的图像值。

1.3图像配准评估标准

相似性测度包括:均方根距离、互信息、归一化互信息、相关系数、梯度差、图像差熵

2.图像融合

2.1 图像融合的概念

百度百科说:图像融合(Image Fusion)是指将多源信道所采集到的关于同一目标的图像数据经过图像处理和计算机技术等,最大限度的提取各自信道中的有利信息,最后综合成高质量的图像,以提高图像信息的利用率、改善计算机解译精度和可靠性、提升原始图像的空间分辨率和光谱分辨率,利于监测。

图像融合:图像融合是指将多幅图像,在经过去噪、配准等预处理后,再依据某些融合规则合成一幅图像的过程。融合图像对目标的描述更清晰和准确,更适合图像后续的处理。(多传感器图像融合(可见光图像和红外图像融合)、单一传感器多聚焦图像融合)

参考博客:https://www.cnblogs.com/libai123456/p/9622944.html

2.2 图像融合的方法及分类

参考博客:https://blog.csdn.net/m0_37933882/article/details/107613719

?

2.3 简单图像融合的举例代码

clc,clear all;close all
%主函数:平移量和旋转量的获取并进行图像拼接
%读入待拼接图像A和B
A=imread('strawberries.jpg');
B=imread('trailer.jpg');
figure(1),imshow(A)
figure(2),imshow(B)
%彩色图像变灰度图像
imm=rgb2gray(A);
imm1=rgb2gray(B);
f=double(imm);
g=double(imm1);
[GM,GN]=size(g);
%取B图像的左侧1000列像素,在A图像中找对应
g1=g(:,1:1000);
for i=1:size(g,2)-1000
    d(i)=sum(sum(abs(f(:,i:i+999)-g1)./g1));
end
m=min(d);
a=find(d==m);
%确定对应区域,裁剪出公共重复区域
x=imm(:,a:size(imm,2));
y=imm1(:,1:(size(imm,2)-a+1));
%互相关方法确定平移量参数
[detal,x0,y0]=Crossspectrum(x,y);
%平移量Tx,Ty如下:
Tx=x0-100;
Ty=y0-1;
%裁剪公共部分,进行平移
x_cross=x(100:end-Tx+100,:);
y_cross=y(Tx:end,:);
%求公共区域的边界及边界角度,获得边界点位置yyy和xxx
[ed,tang]=Tedge(x_cross);
[ed1,tang1]=Tedge(y_cross);
yyy=tang(find(tang~=100));
xxx=tang1(find(tang1~=100));
%统计边界点方向最集中的点
t1=hist(reshape(yyy,1,size(yyy,1)*size(yyy,2)),360);
t2=hist(reshape(xxx,1,size(xxx,1)*size(xxx,2)),360);
%将边界点数按数量排序,找第三多的角度,第一和第二均为90和270的角度,舍去
[P1,index]=sort(t1,'descend');
[P2,index]=sort(t2,'descend');
Rotate_theta1=find(t1==P1(3));
Rotate_theta2=find(t2==P2(3));
%确定旋转参量theta
theta=Rotate_theta2-Rotate_theta1;
%彩色图像整体进行平移旋转
f_cross=A(1:end-Tx+1,:,:);
g_cross=B(Tx:end,:,:);
GT=imrotate(g_cross,-theta/2,'crop');
FT=imrotate(f_cross,theta/2,'crop');
%图像直接拼接
Whole1=[FT,GT(:,(size(g_cross,2)-a):end,:)];
%小波融合图像拼接,分通道进行融合
A_R=FT(:,a:size(GT,2),1);
A_G=FT(:,a:size(GT,2),2);
A_B=FT(:,a:size(GT,2),3);
B_R=GT(:,1:(size(GT,2)-a+1),1);
B_G=GT(:,1:(size(GT,2)-a+1),2);
B_B=GT(:,1:(size(GT,2)-a+1),3);
XFUS_R=wfusimg(A_R,B_R,'db2',3,'max','max');
XFUS_G=wfusimg(A_G,B_G,'db2',3,'max','max');
XFUS_B=wfusimg(A_B,B_B,'db2',3,'max','max');
XFUS=cat(3,XFUS_R,XFUS_G,XFUS_B);
Whole2=[FT(:,1:a-1,:),XFUS,GT(:,(size(g_cross,2)-a):end,:)];
%裁剪构成完整图像
Whole2=Whole2(1:end-1,1:end-1,:);
T_R=histeq(Whole2(:,:,1));
T_G=histeq(Whole2(:,:,2));
T_B=histeq(Whole2(:,:,3));
T=cat(3,T_R,T_G,T_B);
figure(3)
subplot(1,2,1),imshow(x_cross,[]);
subplot(1,2,2),imshow(y_cross,[]);
figure(4)
subplot(1,2,1),imshow(Whole2,[]);
subplot(1,2,2),imshow(T,[]);

图像A

图像B

拼接后图像

?

?

?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-09-10 10:50:39  更:2021-09-10 10:52:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 15:29:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码