【图像插值】基于稀疏拉普拉斯滤波器处理红绿蓝三种像素实现插值效果附matlab代码

简介: 【图像插值】基于稀疏拉普拉斯滤波器处理红绿蓝三种像素实现插值效果附matlab代码

1 内容介绍

本文研究了一种空域中的图像分解技术,进而利用改种分解方法,探 讨了图像插值算法.本文提出的图像分解方法的主要思想是:利用类型确定的滤波器(如低通)对原始图像滤波,将图像分解为高频和低频两部分,并对分解得到的 低频或高频成分进行处理,图像可分解成不同频率分量的图层之和,进而在各个图层上进行相应的插值处理,最后利用逆变换得到最终的结果.

2 仿真代码

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%

%   Implementation of 'Minimized-Laplacian Residual Interpolation for Color Image Demosaicking'

%

%   This code is available only for reserch purpose.

%   If you use this code for future publications,

%   please cite the following paper.

%

%   Daisuke Kiku, Yusuke Monno, Masayuki Tanaka, and Masatoshi Okutomi,

%   'Minimized-Laplacian Residual Interpolation for Color Image Demosaicking',

%   IS&T/SPIE Electronic Imaging, Digital Photography X, 2014.

%

%   Main funtion

%     rgb_dem = demosaick(rgb, pattern, sigma)

%

%      Input

%       - rgb : full RGB image

%       - pattern : mosaic pattern

%                       default : 'grbg'

%                       others  : 'rggb','gbrg','bggr'

%       - sigma : standard deviation of gaussian filter(default : 1.4)

%                       * For IMAX image dataset, 1 works well.

%                       * For Kodak image dataset, 1e8 works well.

%

%      Output

%       - rgb_dem   : result image

%

%   Copyright (C) 2013 Daisuke Kiku. All rights reserved.

%   dkiku@ok.ctrl.titech.ac.jp

%

%   November 26, 2013.

%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

clear all

close all

% read image

rgb = imread('lena.tiff');

figure

subplot(211)

imshow(rgb,[]);title('原图')

% cast to double

rgb = double(rgb);

% mosaic pattern

% G R ..

% B G ..

% : :  

pattern = 'grbg';

% demosaicking

sigma = 1.4;

rgb_dem = demosaick(rgb, pattern, sigma);

% save image

imwrite(uint8(rgb_dem), 'lena_MLRI.tiff');

% show image


subplot(212)

imshow(rgb_dem/255);title('插值图')

% calculate PSNR and CPSNR

psnr = impsnr(rgb, rgb_dem, 255, 10);

cpsnr = imcpsnr(rgb, rgb_dem, 255, 10);


% print PSNR and CPSNR

fprintf( sprintf( 'Red:%f\n',     psnr(1)     ) );

fprintf( sprintf( 'Green:%f\n',   psnr(2)     ) );

fprintf( sprintf( 'Blue:%f\n',    psnr(3)     ) );

fprintf( sprintf( 'CPSNR:%f\n',   cpsnr       ) );

3 运行结果

4 参考文献

[1]吴颖, 田岩. 基于滤波器分解的图像插值算法[J]. 武汉船舶职业技术学院学报, 2009, 8(2):3.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


相关文章
|
4月前
|
数据采集 算法 5G
基于稀疏CoSaMP算法的大规模MIMO信道估计matlab性能仿真,对比LS,OMP,MOMP,CoSaMP
该研究采用MATLAB 2022a仿真大规模MIMO系统中的信道估计,利用压缩感知技术克服传统方法的高开销问题。在稀疏信号恢复理论基础上,通过CoSaMP等算法实现高效信道估计。核心程序对比了LS、OMP、NOMP及CoSaMP等多种算法的均方误差(MSE),验证其在不同信噪比下的性能。仿真结果显示,稀疏CoSaMP表现优异。
77 2
|
6月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
272 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
6月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
162 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
6月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
138 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
9月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
9月前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
|
9月前
|
Serverless
基于Logistic函数的负荷需求响应(matlab代码)
基于Logistic函数的负荷需求响应(matlab代码)
|
9月前
|
供应链 算法
基于分布式优化的多产消者非合作博弈能量共享(Matlab代码)
基于分布式优化的多产消者非合作博弈能量共享(Matlab代码)
|
9月前
|
算法 调度
基于多目标粒子群算法冷热电联供综合能源系统运行优化(matlab代码)
基于多目标粒子群算法冷热电联供综合能源系统运行优化(matlab代码)

热门文章

最新文章