运动图像序列增强重建的matlab设计和仿真

发布时间:2022/11/21 浏览数:3565
一、理论基础
熟悉图像处理相关理论知识,并能熟练运用opencv,matlab等工具对图像进行相关处理。
对质量较差的运动图像进行图像增强处理,包括对图像光照的处理,图像的去噪和图像增强,实现消除噪声,提高图像对比度,使图像的边缘轮廓和细节特征能够很好的突显出来。
运动图像序列的重建根据一些低分辨率运动图像,通过一定的重建算法重建出一幅高质量高分辨率的图像,为整个空间合作项目提供高质量的图片。
针对运动图像序列中图像背景忽明忽暗等问题,采用相关图像增强方法如直方规定化,空域变换相等方法来实现图像亮度均衡,并利用帧间相关性,实现对运动图像序列下图像亮度矫正。
针对运动图像的去噪问题,采用一种自适应的去噪和增强模型,实现在抑制噪声的同时,增强图像细节和边缘轮廓信息,提高图像对比度。

针对运动图像超分辨率重建问题,采用一种是不依赖于亚像素的精确运动估计的重建方法,能够适应复杂的运动模式,且能够达到较好的重建效果。

二、核心程序

clc;
clear;
close all;
warning off;
addpath 'func\'
 
%步骤一,读取连续图像
folder   = 'image\2\';
list     = dir('image\2\*.bmp');
N        = length(list);
 
 
for i=1:N
    I         = imread(fullfile(folder,list(i).name));
    [s1,s2,k] = size(I);
    %这里,我们人为的加入一些噪声等干扰,从来检测算法性能
    r         = imnoise2('gaussian',s1,s2,1,50);%填加高斯白噪声
    tmpr      = double(I(:,:,1)) + r;
    tmpg      = double(I(:,:,2)) + r;
    tmpb      = double(I(:,:,3)) + r;
    Is(:,:,1) = tmpr;
    Is(:,:,2) = tmpg;
    Is(:,:,3) = tmpb;
    I_Seq1{i} = I;
    I_Seq2{i} = Is.^(0.95);
end
 
for i=1:N
    i
    I_curr       = uint8(I_Seq1{i});
    I_curr_noise = uint8(I_Seq2{i});
    %第一步:当前帧
    figure(1);
    subplot(121);
    imshow(I_curr,[]);title('原始图像');
    subplot(122);
    imshow(I_curr_noise,[]);title('加入干扰后的图像');
    
 
    %第二步:图像亮度纠正
    figure(2);
    J = func_eq(I_curr_noise);
    subplot(121);
    imshow(I_curr_noise,[]); 
    title('原始图像');
    subplot(122);
    imshow(J,[]);    
    title('图像-光效亮度调整');
 
    
    %第三步,第四步:去噪|自适应图像增强
    figure(3);
    subplot(121);
    imshow(J,[]); 
    title('图像-光效亮度调整');
    Jd = func_imagedenoise2(J);
    subplot(122);
    imshow(Jd,[]);     
    title('图像-光效亮度调整,去噪,增强');
 
    %第五步:提高分辨率
    figure(4);
    subplot(121);
    imshow(Jd,[]);     
    title('图像-光效亮度调整,去噪,增强');
    Jd2 = func_fbl(Jd);
    subplot(122);
    imshow(Jd2,[]);     
    title('图像-光效亮度调整,去噪,增强,提高分辨率');  
 
    pause(2);
    %保存最后处理后的图片
    I_Seq3{i} = Jd2;
end
 
 
%第六步:最终处理效果对比
figure(5);
for i = 1:N
    subplot(131);
    imshow(uint8(I_Seq1{i}),[]);
    title('原始图像');    
    subplot(132);
    imshow(uint8(I_Seq2{i}),[]);
    title('原始干扰图像');
    subplot(133);
    imshow(uint8(I_Seq3{i}),[]);
    title('处理后图像'); 
    pause(2);
end
 

三、仿真测试结果


 


Copyright 2017-2024 © 嘉兴麦特莱博软件开发工作室
  • 网站备案号:浙ICP备18008591号-1