图像修复基于Lucy_Richardson迭代法图像修复matlab源码

Posted Matlab咨询QQ1575304183

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了图像修复基于Lucy_Richardson迭代法图像修复matlab源码相关的知识,希望对你有一定的参考价值。

一、简介

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、源代码

function varargout = Lucy_Richadson(varargin)
% LUCY_RICHADSON M-file for Lucy_Richadson.fig
%      LUCY_RICHADSON, by itself, creates a new LUCY_RICHADSON or raises the existing
%      singleton*.
%
%      H = LUCY_RICHADSON returns the handle to a new LUCY_RICHADSON or the handle to
%      the existing singleton*.
%
%      LUCY_RICHADSON('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in LUCY_RICHADSON.M with the given input arguments.
%
%      LUCY_RICHADSON('Property','Value',...) creates a new LUCY_RICHADSON or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before Lucy_Richadson_OpeningFunction gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to Lucy_Richadson_OpeningFcn via varargin.
%
%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one
%      instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help Lucy_Richadson

% Last Modified by GUIDE v2.5 22-May-2009 10:28:41

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @Lucy_Richadson_OpeningFcn, ...
                   'gui_OutputFcn',  @Lucy_Richadson_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin & isstr(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before Lucy_Richadson is made visible.
function Lucy_Richadson_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
% varargin   command line arguments to Lucy_Richadson (see VARARGIN)
I = checkerboard(8);
axes(handles.axes1);
imshow(I);
PSF = fspecial('gaussian',7,10);
V = 0.0001;
noise = imnoise(imfilter(I,PSF),'gaussian',0,V);
axes(handles.axes2);
imshow(noise);
WT = zeros(size(I));
WT(5:end-4,5:end-4) = 1;
J = deconvlucy(noise,PSF,20,sqrt(V),WT);
axes(handles.axes3);
imshow(J);
set(handles.r_edit,'string',7);
set(handles.sig_edit,'string',10);
set(handles.m_edit,'string',0);
set(handles.v_edit,'string',0.0001);
% Choose default command line output for Lucy_Richadson
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes Lucy_Richadson wait for user response (see UIRESUME)
% uiwait(handles.Lucy_Richadson);


% --- Outputs from this function are returned to the command line.
function varargout = Lucy_Richadson_OutputFcn(hObject, eventdata, handles)
% varargout  cell array for returning output args (see VARARGOUT);
% hObject    handle to figure
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;


% --- Executes during object creation, after setting all properties.
function r_edit_CreateFcn(hObject, eventdata, handles)
% hObject    handle to r_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc
    set(hObject,'BackgroundColor','white');
else
    set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end



function r_edit_Callback(hObject, eventdata, handles)
% hObject    handle to r_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of r_edit as text
%        str2double(get(hObject,'String')) returns contents of r_edit as a double


% --- Executes during object creation, after setting all properties.
function sig_edit_CreateFcn(hObject, eventdata, handles)
% hObject    handle to sig_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc
    set(hObject,'BackgroundColor','white');
else
    set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end



function sig_edit_Callback(hObject, eventdata, handles)
% hObject    handle to sig_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of sig_edit as text
%        str2double(get(hObject,'String')) returns contents of sig_edit as a double


% --- Executes during object creation, after setting all properties.
function m_edit_CreateFcn(hObject, eventdata, handles)
% hObject    handle to m_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc
    set(hObject,'BackgroundColor','white');
else
    set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end



function m_edit_Callback(hObject, eventdata, handles)
% hObject    handle to m_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of m_edit as text
%        str2double(get(hObject,'String')) returns contents of m_edit as a double


% --- Executes during object creation, after setting all properties.
function v_edit_CreateFcn(hObject, eventdata, handles)
% hObject    handle to v_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc
    set(hObject,'BackgroundColor','white');
else
    set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end



function v_edit_Callback(hObject, eventdata, handles)
% hObject    handle to v_edit (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of v_edit as text
%        str2double(get(hObject,'String')) returns contents of v_edit as a double

三、运行结果

在这里插入图片描述

完整代码或仿真咨询QQ1575304183

以上是关于图像修复基于Lucy_Richardson迭代法图像修复matlab源码的主要内容,如果未能解决你的问题,请参考以下文章

基于深度学习的图像语义编辑

基于深度学习的图像语义编辑

图像修复基于matlab深度信息图像修复含Matlab源码 2299期

图像修复基于matlab深度信息图像修复含Matlab源码 2299期

论文阅读RePaint: Inpainting using Denoising Diffusion Probabilistic Models(CVPR 2022)

论文阅读RePaint: Inpainting using Denoising Diffusion Probabilistic Models(CVPR 2022)