www.gusucode.com > IPCV_Eval_Kit_R2019a_0ce6858工具箱matlab程序源码 > IPCV_Eval_Kit_R2019a_0ce6858/code/demo_files/I2_07_6_inpaint.m

    %% 夋憸偺廋暅乮僀儞儁僀儞僥傿儞僌丒晄梫暔偺彍嫀乯

%% 夋憸撉傒崬傒偲壜帇壔
I = imread('coloredChips.png');
figure
imshow(I,[])

%% 廋暅売強傪墌偱巜掕
h = drawcircle('Center',[130,42],'Radius',40);
numRegion = 6;
roiCenter = [130 42;433 78;208 108;334 124;434 167;273 58];
roiRadius = [40 50 40 40 40 30];
roi = cell([numRegion,1]);
for i = 1:numRegion
    c = roiCenter(i,:);
    r = roiRadius(i);
    h = drawcircle('Center',c,'Radius',r);
    roi{i} = h;
end

%% createMask娭悢偱巜掕偟偨ROI偺儅僗僋傪惗惉
mask = zeros(size(I,1),size(I,2));
for i = 1:numRegion
    newmask = createMask(roi{i});
    mask = xor(mask,newmask);
end
% 壜帇壔
montage({I,mask});
title('廋暅慜夋憸 vs 廋暅売強偺儅僗僋夋憸');

%% 奩摉売強偺夋憸廋暅
J = inpaintCoherent(I,mask,'SmoothingFactor',0.5,'Radius',1);
montage({I,J});
title('廋暅慜夋憸 vs 廋暅屻夋憸');

%% 
% Copyright 2019 The MathWorks, Inc.