æªãã ç»åã埩å
ããããšã¯ãç»ååŠçã¿ã¹ã¯ã§æãè峿·±ãéèŠãªåé¡ã®1ã€ã§ããçè«çããã³å®çšçãªèгç¹ããã§ãã ç¹æ®ãªã±ãŒã¹ã¯ãäžé©åãªçŠç¹ãšãŒããã®ããã«ãŒãããŠããŸã-ãããã®æ¬ é¥ã¯ãããªããããç¥ã£ãŠãããã®ã§ãããä¿®æ£ããã®ã¯éåžžã«å°é£ã§ã-ãããã¯èšäºã®ãããã¯ã«ãã£ãŠéžæããããã®ã§ãã æ®ãã®æªã¿ïŒãã€ãºãäžé©åãªé²åºãæªã¿ïŒã«ããã人é¡ã¯å¹æçã«å¯ŸåŠããããšãåŠã³ãé©åãªããŒã«ããã¹ãŠã®èªå°å¿ã®ããåçãšãã£ã¿ãŒã«ãããŸãã
ãªãã°ãªãŒã¹ãšçŠç¹ãŒããé€å»ããããã«å®è³ªçã«äœããªãã®ãïŒäžé®®æãªãã¹ã¯ã¯ã«ãŠã³ããããªãïŒ-ããã¯ååçã«äžå¯èœã§ããããïŒ å®éãããã¯å¯èœã§ã-察å¿ããæ°åŠçè£
眮ã¯çŽ70幎åã«éçºããå§ããŸããããä»ã®å€ãã®ç»ååŠçã¢ã«ãŽãªãºã ãšåæ§ã«ãããããã¹ãŠã¯æè¿ã«ãªã£ãŠåºã䜿çšãããŠããŸãã ããã§ãããã广ã®ãã¢ã³ã¹ãã¬ãŒã·ã§ã³ãšããŠãããã€ãã®åçïŒ

ç§ã¯æ·åããã
ã¬ãã䜿ããªãã£ããããŽã§ããã£ã¢ã®ç§ã®åçãèŠã€ããã å³ã®ç»åã¯ãå·Šããæ£çŽã«ååŸããã48ããã圢åŒã®ãããªããªãã¯ã䜿çšããããšãªãïŒãã®å Žåãå
ã®ç»åã100ïŒ
埩å
ãããŸãïŒ-å·Šã¯äººçºçã«ãŒãããæãäžè¬çãªPNGã§ãã çµæã¯å°è±¡çã§ãã...å®éã«ã¯ããã»ã©åçŽã§ã¯ãããŸããã ç«ã®äžã§çè«ãšå®éã®çµæã®è©³çްãªã¬ãã¥ãŒã
泚æãããããã®PNGç»åïŒ
ã¯ããã«
é ãããå§ããŸãããã å€ãã®äººã
ã¯ããŒããã¯äžå¯éçãªæäœã§ãããæ
å ±ã¯å®å
šã«å€±ããããšä¿¡ããŠããŸãã åãã¯ã»ã«ãã¹ãããã«å€ããããã¹ãŠãæ··ããåãã倧ããªãŒããååŸã§ç»åå
šäœã«åäžãªè²ãåŸãããŸãã ããã¯å®å
šã«çå®ã§ã¯ãããŸãã-ãã¹ãŠã®æ
å ±ã¯ããã€ãã®æ³åŸã«åŸã£ãŠåã«åé
åžãããããã€ãã®çä¿ã«ãã£ãŠæç¢ºã«åŸ©å
ããããšãã§ããŸãã äŸå€ã¯ããŒããååŸã®å¹
ãæã€ç»åã®ãšããžã®ã¿ã§ã-å®å
šãªåŸ©å
ã¯ããã§ã¯äžå¯èœã§ãã
1次å
ã®å Žåã®å°ããªäŸã䜿çšããŠãããããæã§ã宿ŒããŸããå€ãæã€ãã¯ã»ã«ã®è¡ããããšæ³åããŠãã ããã
x
1 | x
2 | x
3 | x
4 ...-ãªãªãžãã«ç»å
æªã¿ã®åŸãåãã¯ã»ã«ã®å€ã¯å·Šã®å€ãšåèšãããŸãã x '
i = x
i + x
i-1 ã çè«çã«ã¯ã2ã§å²ãå¿
èŠããããŸãããç°¡åã«ããããã«ãããçç¥ããŸãã ãã®çµæããã¯ã»ã«å€ãæã€ãŒãããç»åãã§ããŸãïŒ
x
1 + x
0 | x
2 + x
1 | x
3 + x
2 | x
4 + x
3 ...-ãŒãããç»å
次ã«ãã¹ããŒã ã«åŸã£ãŠãã§ãŒã³ã«åŸã£ãŠå€ãé æ¬¡æžç®ããŠåŸ©å
ããããšããŸã-1çªç®ã¯2çªç®ã®ãã¯ã»ã«ããã2çªç®ã¯3çªç®ããã3çªç®ã¯4çªç®ããããšããããã«ãªããŸãã
x
1 + x
0 | x
2 -x
0 | x
3 + x
0 | x
4 -x
0 ...-埩å
ãããç»å
ãã®çµæããŒãããç»åã®ä»£ããã«ãå
ã®ç»åãåŸããããã®ãã¯ã»ã«ã«ã¯ã笊å·ã亀äºã«å€ããæªç¥ã®å®æ°x
0ã远å ãããŸããã ããã¯ãã§ã«ã¯ããã«åªããŠããŸã-ãã®å®æ°ã¯èŠèŠçã«éžæã§ããå€x
1ã«ã»ãŒçãããšä»®å®ã§ãã飿¥ãã¯ã»ã«ã®å€ãã§ããéãããžã£ã³ãããããªã©ã®åºæºã§èªåçã«éžæã§ããŸãã ãã ãããã€ãºã远å ãããšããã«ãã¹ãŠãå€åããŸãïŒåžžã«å®éã®ç»åã«ãããŸãïŒã 説æããã¹ããŒã ã§ã¯ãåã¹ãããã§ãç·æåãžã®ãã€ãºã®å¯äžãèç©ãããæçµçã«ã¯å®å
šã«åãå
¥ããããªãçµæãããããå¯èœæ§ããããŸããããããŸã§èŠãŠããããã«ã埩å
ã¯ãã®ãããªåå§çãªæ¹æ³ã§ãéåžžã«çŸå®çã§ãã
æªã¿ããã»ã¹ã¢ãã«
ããã§ã¯ããããã®æªã¿ãšåŸ©å
ã®ããã»ã¹ã«ã€ããŠãããæ£åŒã§ç§åŠçãªèª¬æã«ç§»ããŸãããã ãã«ã«ã©ãŒç»åãåŠçããã«ã¯ãRGBã«ã©ãŒãã£ã³ãã«ããšã«å¿
èŠãªãã¹ãŠã®ã¹ããããç¹°ãè¿ãã ãã§ååã§ãããšããä»®å®ã®äžã§ãã°ã¬ãŒã¹ã±ãŒã«ã®çœé»ç»åã®ã¿ãèæ
®ããŸãã æ¬¡ã®è¡šèšæ³ã玹ä»ããŸãã
fïŒxãyïŒ -æªã¿ã®ãªãå
ã®ç»å
hïŒxãyïŒã¯æªã¿é¢æ°ã§ã
nïŒxãyïŒ -å æ³æ§ãã€ãº
gïŒxãyïŒã¯æªã¿ã®çµæã§ãã çµæãšããŠèгå¯ããããã®ïŒãŒãããç»åãŸãã¯ãã³ãŒãããç»åïŒ
æªã¿ããã»ã¹ã®ã¢ãã«ã次ã®ããã«å®åŒåããŸãã
gïŒxãyïŒ= hïŒxãyïŒ* fïŒxãyïŒ+ nïŒxãyïŒ ïŒ1ïŒ
æªãã ç»åã埩å
ããã¿ã¹ã¯ã¯
ãå
ã®ç»åã®æé©ãªè¿äŒŒ
f 'ïŒxãyïŒãèŠã€ããããšã§ãã åã³ã³ããŒãã³ããããè©³çŽ°ã«æ€èšããŠãã ããã
fïŒxãyïŒãš
gïŒxãyïŒã§ã¯ããã¹ãŠãæç¢ºã§ãã ãããã颿°
hïŒxãy ïŒã«ã€ããŠã¯ãããã€ãã®èšèãèšãå¿
èŠããããŸã-ã©ããªæãã§ããïŒ æªã¿ã®éçšã§ãå
ã®ç»åã®åãã¯ã»ã«ã¯ããã³ãŒãã®å Žåã¯ã¹ãããã«ãªããåçŽãªã°ãªãŒã¹ã®å Žåã¯ã»ã°ã¡ã³ãã«ãªããŸãã ãŸãã¯ãå察ã«ãæªãã ç»åã®åãã¯ã»ã«ã¯å
ã®ç»åã®ç¹å®ã®è¿åã®ãã¯ã»ã«ãããçµã¿ç«ãŠãããããšããããšãã§ããŸãã ãããã¯ãã¹ãŠäºãã«éãªãåã£ãŠããããã®çµæãç»åãæªãã§ããŸããŸãã ããã¯ã1ã€ã®ãã¯ã»ã«ãã¹ã¡ã¢ãŸãã¯åéãããæ³åã«åŸã£ãŠãæªã¿é¢æ°ãšåŒã°ããŸãã ä»ã®å矩èªã¯ãPSFïŒç¹åºãã颿°ãã€ãŸãç¹ã®ååžé¢æ°ïŒãæªæ²æŒç®åã®æ žãã«ãŒãã«ãªã©ã§ãã ãã®é¢æ°ã®æ¬¡å
ã¯ãååãšããŠãç»åèªäœã®æ¬¡å
ãããå°ããã§ããããšãã°ããæã§ãã®äŸã®æåã®æ€æ»ã§ã¯ã颿°ã®æ¬¡å
ã¯2ã§ããã åãã¯ã»ã«ã¯2ã€ã§æ§æãããŠããŸããã
æªã¿é¢æ°
å
žåçãªæªã¿é¢æ°ãã©ã®ããã«èŠãããèŠãŠã¿ãŸãããã 以äžã§ã¯ãMatlabããŒã«ã䜿çšããŸã.MatlabããŒã«ã¯ããã®ãããªç®çã®ããã«æ¢ã«æšæºã«ãªã£ãŠããŸããããã«ã¯ãããŸããŸãªç»ååŠçå®éšã«å¿
èŠãªãã¹ãŠã®ãã®ãå«ãŸããŠããïŒã ãã§ãªãïŒãã¢ã«ãŽãªãºã èªäœã«éäžããŠããã¹ãŠã®ã«ãŒãã³äœæ¥ã颿°ã©ã€ãã©ãªã«ã·ããã§ããŸãã ãã ãããã®ããã«ã¯ããã©ãŒãã³ã¹ãæ¯æãå¿
èŠããããŸãã ããã§ãPSFã«æ»ã£ãŠããã®çš®é¡ã®äŸã瀺ããŸãã
fspecial颿°ã«ããã¬ãŠã¹ãŒããã®å Žåã®PSFïŒãã¬ãŠã¹ãã30ã8ïŒã
fspecialæ©èœïŒãã¢ãŒã·ã§ã³ãã40ã45ïŒã䜿çšããæœ€æ»ã®å Žåã®PSFãæªã¿é¢æ°ãå¥ã®é¢æ°ïŒãã®å Žåã¯ç»åïŒã«é©çšããæäœã¯ãç³ã¿èŸŒã¿ãšåŒã°ããŸãã å
ã®ç»åã®äžéšã®é åã¯ãæªãã ç»åã®1ãã¯ã»ã«ã«çž®å°ãããŸãã éåžžã®ä¹ç®ââãšæ··åããªãããã«ãæŒç®åã*ãã§æå®ããŸãïŒ æ°åŠçã«ã¯ã次å
M x Nã®ç»å
fãšæ¬¡å
mxnã®æªã¿é¢æ°
hã«å¯ŸããŠã次ã®ããã«èšè¿°ãããŸãã

ïŒ2ïŒ
ããã§
ãa =ïŒm-1ïŒ/ 2ãb =ïŒn-1ïŒ/ 2ã§ãã ç³ã¿èŸŒã¿ã®åå¯Ÿã®æäœã¯ãã³ã³ããªã¥ãŒã·ã§ã³ãšåŒã°ãããã®ãããªåé¡ã®è§£æ±ºã¯éåžžã«éèŠã§ãã
ãã€ãºã¢ãã«
ãã€ãºã®åå ãšãªãæåŸã®é
ãåŒïŒ1ïŒã®
nïŒxãyïŒãèæ
®ããå¿
èŠããããŸãã ããžã¿ã«ã»ã³ãµãŒã®ãã€ãºã®åå ã¯å€§ããç°ãªãå¯èœæ§ããããŸãããäž»ãªåå ã¯ç±å€åãšæé»æµã§ãã ãã€ãºå€ã¯ãISOå€ããããªãã¯ã¹ã¿ã€ãããã¯ã»ã«ãµã€ãºã枩床ãé»ç£å¹²æžãªã©ã®å€ãã®èŠå ã®åœ±é¿ãåããŸããã»ãšãã©ã®å Žåããã€ãºã¯ã¬ãŠã¹ïŒå¹³åãšåæ£ã®2ã€ã®ãã©ã¡ãŒã¿ãŒã«ãã£ãŠæ±ºå®ãããŸãïŒã§ãããçžé¢ããããŸããç»åãšãšãã«ããã¯ã»ã«ã®åº§æšã«äŸåããŸããã æåŸã®3ã€ã®ä»®å®ã¯ãä»åŸã®äœæ¥ã«ãšã£ãŠéåžžã«éèŠã§ãã
ç³ã¿èŸŒã¿å®ç
å埩åé¡ã®åæå®åŒåã«æ»ããŸããã-ãã€ãºãå¿ããã«ãäœããã®æ¹æ³ã§ç³ã¿èŸŒã¿ãéã«ããå¿
èŠããããŸãã åŒïŒ2ïŒããã
g ïŒxãyïŒãã
fïŒxãy ïŒãååŸããããšã¯ããã»ã©å®¹æã§
ã¯ãªãããšãããããŸãããæ£é¢ããšåŒã°ãããã®ã決å®ãããšãå·šå€§ãªæ¹çšåŒç³»ãåŸãããŸãã ãããã
ããŒãªãšå€æã¯ç§ãã¡ã®å©ãã«ãªããŸãã詳现ã«ã€ããŠã¯èª¬æããŸããããã®ãããã¯ã«ã€ããŠã¯ãã§ã«å€ãã®ããšãè¿°ã¹ãããŠããŸãã ãã®ããã空éé åã§ã®ç³ã¿èŸŒã¿æŒç®ã¯ãåšæ³¢æ°é åã§ã®éåžžã®ä¹ç®ââïŒããã«ãè¡åä¹ç®ã§ã¯ãªããèŠçŽ ããšã®ä¹ç®ïŒãšåçã§ãããšè¿°ã¹ããããªç³ã¿èŸŒã¿å®çããããŸãã ãããã£ãŠãéç³ã¿èŸŒã¿æŒç®ã¯ãåšæ³¢æ°é åã§ã®é€ç®ãšåçã§ããã€ãŸããæ¬¡ã®ããã«èšè¿°ã§ããŸãã

ïŒ3ïŒ
ããã§ã
HïŒuãvïŒãFïŒuãvïŒã¯å¯Ÿå¿ãã颿°ã®ããŒãªãšç»åã§ãã ãããã£ãŠãåŒïŒ1ïŒã®æªã¿ããã»ã¹ã¯ãåšæ³¢æ°é åã§æ¬¡ã®ããã«æžãæããããšãã§ããŸãã

ïŒ4ïŒ
éãã£ã«ã¿ãªã³ã°
ããã«ãã®çåŒã
HïŒuãvïŒã«åå²ã
ãå
ã®ç»åã®æ¬¡ã®æšå®å€
F ^ ïŒuãvïŒãååŸããããæ±ããŸãã

ïŒ5ïŒ
ããã¯éãã£ã«ã¿ãªã³ã°ãšåŒã°ããŸãããå®éã«ã¯ã»ãšãã©æ©èœããŸããã ãªãããã§ããïŒ ãã®è³ªåã«çããããã«ãåŒïŒ5ïŒã®æåŸã®é
ãèŠãŠã¿ãŸãããã颿°
HïŒuãvïŒããŒããŸãã¯ãŒãã«è¿ãå€ãåãå Žåããã®é
ã®å¯äžãæ¯é
çã«ãªããŸãã ããã¯ã»ãšãã©ã®å Žåãå®éã®äŸã§èŠãããŸã-ããã説æããããã«ãããŒãªãšå€æåŸã®ã¹ãã¯ãã«ãã©ã®ããã«èŠãããæãåºããŠã¿ãŸãããã
å
ã®ç»åãæ®ãã

ãããã°ã¬ãŒã¹ã±ãŒã«ã«å€æããMatlabã䜿çšããŠãã¹ãã¯ãã«ãååŸããŸãã
% Load image I = imread('image_src.png'); figure(1); imshow(I); title(' '); % Convert image into grayscale I = rgb2gray(I); % Compute Fourier Transform and center it fftRes = fftshift(fft2(I)); % Show result figure(2); imshow(mat2gray(log(1+abs(fftRes)))); title('FFT - ( )'); figure(3); imshow(mat2gray(angle(fftRes))); title('FFT - ');

ãã®çµæãæ¯å¹
ã¹ãã¯ãã«ãšäœçžã¹ãã¯ãã«ã®2ã€ã®ã³ã³ããŒãã³ããåŸãããŸãã ã¡ãªã¿ã«ãå€ãã®äººã¯ãã®æ®µéãå¿ããŠããŸãã æ¯å¹
ã¹ãã¯ãã«ã¯ã察æ°ç®çã§ç€ºãããŠããããšã«æ³šæããŠãã ããã ãã®å€ã¯å€§ããç°ãªããŸã-äžå¿ã¯æ°çŸäžã®æå€§å€ã§ããïŒæ°çŸäžã®ãªãŒããŒïŒãäžå¿ããé ãããã«ã€ããŠæ¥éã«ã»ãŒãŒããŸã§æžå°ããŸãã ãã®ãããéãã£ã«ã¿ãªã³ã°ã¯ãŒããŸãã¯ã»ãŒãŒãã®ãã€ãºå€ã§ã®ã¿æ©èœããŸãã æ¬¡ã®ã¹ã¯ãªããã䜿çšããŠãå®éã«ããã瀺ããŸãããã
% Load image I = im2double(imread('image_src.png')); figure(1); imshow(I); title(' '); % Blur image Blurred = imfilter(I, PSF,'circular','conv' ); figure(2); imshow(Blurred); title(' '); % Add noise noise_mean = 0; noise_var = 0.0; Blurred = imnoise(Blurred, 'gaussian', noise_mean, noise_var); % Deconvolution figure(3); imshow(deconvwnr(Blurred, PSF, 0)); title('');

noise_var = 0.0000001 noise_var = 0.000005
éåžžã«å°ããªãã€ãºã®è¿œå ã§ãããèããå¹²æžã«ã€ãªãããããããã®æ¹æ³ã®å®éã®å¿çšã倧ããå¶éããããšãæããã«èŠãããŸãã
ãã³ã³ããªã¥ãŒã·ã§ã³ã®æ¢åã®ã¢ãããŒã
ããããç»åå
ã®ãã€ãºã®ååšãèæ
®ã«å
¥ããã¢ãããŒãããããŸã-æãæåãªãã®ã®1ã€ã¯ãWienerãã£ã«ã¿ãŒã§ãã 圌ã¯ãç»åãšãã€ãºãã©ã³ãã ããã»ã¹ãšèŠãªãããããã®å€ã®æšæºåå·®ãæå°ã«
ãªãããã«ãæªã¿ã®ãªãç»å
fã®æšå®å€
f 'ãèŠã€ããŸãã ãã®åå·®ã®æå°å€ã¯ãåšæ³¢æ°é åã®é¢æ°ã§éæãããŸãã

ïŒ6ïŒ
ãã®çµæã¯ã1942幎ã«Wienerã«ãã£ãŠåŸãããŸããã ããã§ã¯è©³çްãªçµè«ãè¿°ã¹ãŸããããèå³ããã人ã¯
ããã§ãããèŠãããšãã§ã
ãŸã ã ããã§ã®é¢æ°Sã¯ããããããã€ãºãšå
ã®ç»åã®ãšãã«ã®ãŒã¹ãã¯ãã«ã瀺ããŠããŸã-ãããã®éã¯ã»ãšãã©ç¥ãããŠããªããããS
n / S
fã®éšå㯠ãä¿¡å·å¯Ÿé鳿¯ãšããŠã»ãŒèšè¿°ã§ãã宿°Kã«çœ®ãæããããŸãã
æ¬¡ã®æ¹æ³ã¯ãããªã³ã¯ã«ããå¹³æ»åæå°äºä¹ãã£ã«ã¿ãªã³ã°ããä»ã®ååïŒãTikhonovãã£ã«ã¿ãªã³ã°ãããTikhonovæ£ååãã§ãã 圌ã®èãã¯ã察å¿ããæé©ååé¡ã®ãããªã解決çãçšããŠãåé¡ãè¡å圢åŒã§å®åŒåããããšã§ãã ãã®ãœãªã¥ãŒã·ã§ã³ã¯æ¬¡ã®ããã«æžãããŠããŸãã

ïŒ7ïŒ
ããã§ã
yã¯æ£ååãã©ã¡ãŒã¿ãŒã
PïŒuãvïŒã¯ã©ãã©ã¹æŒç®åïŒ3 * 3è¡åïŒã®ããŒãªãšå€æã§ãã
å¥ã®è峿·±ãã¢ãããŒãã¯ããªãã£ãŒããœã³ïŒ1972ïŒãšã«ãŒã·ãŒïŒ1974ïŒã«ãã£ãŠç¬ç«ããŠææ¡ãããŸããã ãã®ã¡ãœããã¯ããã«ãŒã·ãŒã»ãªãã£ãŒããœã³ã¡ãœããããšåŒã°ããŸãã ãã®éç«ã£ãç¹åŸŽã¯ãæåã®3ã€ãšã¯ç°ãªããéç·åœ¢ã§ããããšã§ããããã«ãããæé«ã®çµæãåŸãããå¯èœæ§ããããŸãã 2çªç®ã®æ©èœ-ã¡ãœããã¯å埩çã§ãããããå埩ã忢ããããã®åºæºã§åé¡ãçºçããŸãã åºæ¬çãªèãæ¹ã¯ãç»åããã¢ãœã³ååžã«åŸããšæ³å®ãããæå°€æ³ã䜿çšããããšã§ãã èšç®åŒã¯ãããŒãªãšå€æã䜿çšããã«éåžžã«ç°¡åã§ã-ãã¹ãŠã空éé åã§è¡ãããŸãïŒ

ïŒ8ïŒ
ããã§ãã·ã³ãã«ã*ãã¯ãåè¿°ã®ããã«ãç³ã¿èŸŒã¿æŒç®ã瀺ããŸãã ãã®æ¹æ³ã¯ã倩æåçãåŠçããããã°ã©ã ã§åºã䜿çšãããŠããŸããããã©ãã³ã³ããªã¥ãŒã·ã§ã³ïŒãã©ããšãã£ã¿ã®ããã«ã·ã£ãŒãã§ãªããã¹ã¯ã®ä»£ããã«ïŒã䜿çšããããšãäºå®äžã®æšæºã§ãã äŸã¯Astra Imageã§ãããã
ã«ãã³ã³ããªã¥ãŒã·ã§ã³ã®äŸããããŸãã ãã®æ¹æ³ã®èšç®ã®è€éãã¯éåžžã«å€§ãããååŸ©åæ°ã«å¿ããŠå¹³åçãªåçãåŠçããã®ã«ãäœæéããããã«ã¯äœæ¥ããããããšããããŸãã
æ€èšäžã®æåŸã®ã¡ãœããããŸãã¯ããããçŸåšç©æ¥µçã«éçºããã³éçºãããŠããã¡ãœããã®ãã¡ããªãŒå
šäœã¯ããã©ã€ã³ããã³ã³ããªã¥ãŒã·ã§ã³ã§ãã 以åã®ãã¹ãŠã®æ¹æ³ã§ã¯ãPSFã®æªã¿é¢æ°ã¯æ£ç¢ºã«æ¢ç¥ã§ãããšæ³å®ãããŠããŸããããå®éã«ã¯ããã§ã¯ãªããéåžžãPSFã¯å¯èŠæªã¿ã®æ§è³ªã«ãã£ãŠã®ã¿æ¢ç¥ã§ãã ãã©ã€ã³ããã³ã³ããªã¥ãŒã·ã§ã³ã¯ããããèæ
®ã«å
¥ããããã®åãªã詊ã¿ã§ãã ååã¯éåžžã«ç°¡åã§ãã詳现ã«å
¥ããªãå ŽåãPSFã®æåã®è¿äŒŒãéžæããããã³ã³ããªã¥ãŒã·ã§ã³ã¯ããããã®æ¹æ³ã䜿çšããŠå®è¡ãããŸãããã®åŸãå質ã¬ãã«ãäœããã®åºæºã«ãã£ãŠæ±ºå®ãããããã«åºã¥ããŠPSF颿°ãæŽç·Žãããç®çã®çµæãåŸããããŸã§å埩ãç¹°ãè¿ãããŸã
ç·Žç¿ãã
ããŠãçè«ã§ããã¹ãŠ-ç·Žç¿ã«ç§»ããŸããããç»åã«ãªã¹ããããæ¹æ³ã人工çãªãŒãããšãã€ãºãšæ¯èŒããããšããå§ããŸãããã

% Load image I = im2double(imread('image_src.png')); figure(1); imshow(I); title(' '); % Blur image PSF = fspecial('disk', 15); Blurred = imfilter(I, PSF,'circular','conv' ); % Add noise noise_mean = 0; noise_var = 0.00001; Blurred = imnoise(Blurred, 'gaussian', noise_mean, noise_var); figure(2); imshow(Blurred); title(' '); estimated_nsr = noise_var / var(Blurred(:)); % Restore image figure(3), imshow(deconvwnr(Blurred, PSF, estimated_nsr)), title('Wiener'); figure(4); imshow(deconvreg(Blurred, PSF)); title('Regul'); figure(5); imshow(deconvblind(Blurred, PSF, 100)); title('Blind'); figure(6); imshow(deconvlucy(Blurred, PSF, 100)); title('Lucy');
çµæïŒ
ãŠã£ããŒãã£ã«ã¿ãŒ
ããããæ£åå
ã«ãŒã·ãŒãªãã£ãŒããœã³ãã£ã«ã¿ãŒ
ãã©ã€ã³ããã³ã³ããªã¥ãŒã·ã§ã³ãããã«
ãããŠãæåã®éšåã®æåŸã§ãå®éã®ç»åã®äŸãå°ãè§ŠããŸãã ãã以åã¯ããã¹ãŠã®æªã¿ã¯äººçºçãªãã®ã§ããããã¡ãããèµ°ã£ãŠå匷ããã®ã«é©ããŠããŸãããå®éã®åçã§ãããã©ã®ããã«æ©èœããããèŠãã®ã¯éåžžã«è峿·±ãã§ãã Canon 500D DSLRã§æ®åœ±ãããã®ãããªåçã®äžäŸã次ã«ç€ºããŸãã

次ã«ãç°¡åãªã¹ã¯ãªãããå®è¡ããŸãã
% Load image I = im2double(imread('IMG_REAL.PNG')); figure(1); imshow(I); title(' '); %PSF PSF = fspecial('disk', 8); noise_mean = 0; noise_var = 0.0001; estimated_nsr = noise_var / var(I(:)); I = edgetaper(I, PSF); figure(2); imshow(deconvwnr(I, PSF, estimated_nsr)); title('');
ãããŠã次ã®çµæãåŸãããŸãã

ã芧ã®ããã«ãç»åã«æ°ãã詳现ã衚瀺ãããæç床ã¯ã¯ããã«é«ããªããŸããããå¹²æžã¯å¯Ÿç
§çãªå¢çã§ããªã³ã®ã³ã°ãã®åœ¢ã§çŸããŸããã
å®éã®ã°ãªãŒã¹ã䜿çšããäŸ-ãã®å®è£
ã§ã¯ãã«ã¡ã©ãäžèã«åãä»ããæ¯èŒçé
ãã·ã£ãã¿ãŒã¹ããŒããèšå®ããã·ã£ãã¿ãŒãæŸããç¬éã«åäžãªåããåŸãããŸããã

ã¹ã¯ãªããã¯ã»ãŒåãã§ãPSFã¿ã€ãã®ã¿ããã¢ãŒã·ã§ã³ãã«ãªããŸãã
% Load image I = im2double(imread('IMG_REAL_motion_blur.PNG')); figure(1); imshow(I); title(' '); %PSF PSF = fspecial('motion', 14, 0); noise_mean = 0; noise_var = 0.0001; estimated_nsr = noise_var / var(I(:)); I = edgetaper(I, PSF); figure(2); imshow(deconvwnr(I, PSF, estimated_nsr)); title('');
çµæïŒ

åã³ãå質ãèããåäžããŸãã-çªãšè»ã®ãã¬ãŒã ãåºå¥å¯èœã«ãªããŸããã ã¢ãŒãã£ãã¡ã¯ãã¯ã以åã®ããã©ãŒã«ã¹ãããäŸãšã¯ãã§ã«ç°ãªã£ãŠããŸãã
ããã§é¢çœããšæåã®éšåãçµäºããŸãã
第2éšã§ã¯ãå®éã®ç»åã®åŠçã®åé¡ã«çŠç¹ãåœãŠãŸã-PSFã®æ§ç¯ãšè©äŸ¡ãããè€éã§é«åºŠãªãã³ã³ããªã¥ãŒã·ã§ã³æè¡ããªã³ã®ã³ã°ãªã©ã®æ¬ é¥ã®é€å»æ¹æ³ãæ¢åã®ãœãããŠã§ã¢ã®ã¬ãã¥ãŒãšæ¯èŒãªã©ãæ€èšããŸãã
PSå°ãå
ã«ãæ°ããããŒãžã§ã³ã®Photoshopã§ãŒãããåçãä¿®æ£ããããšã«é¢ããèšäºãããã§å
¬éãããŸãã
ã°ãªãŒã¹ãé€å»ããããã®åæ§ã®æè¡ïŒããããPhotoshopã§äœ¿çšããããã®ïŒã䜿çšãããå Žåã¯ã
ãã®ãªã³ã¯ã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ã®ãã¢ããŒãžã§ã³
ãããŠã³ããŒãããå埩äŸãåç
§ã
ãæäœã®ååã«ã€ããŠèªãã§ãã ããã
æåŠ
ãŽã³ã¶ã¬ã¹R.ããŠããºR.ããžã¿ã«ç»ååŠç
Gonzalez R.ãWoods R.ãEddins S.MATLABã§ã®ããžã¿ã«ç»ååŠç
UPDïŒ ç¶è¡ãããªã³ã¯ -
ãŠã©ãžããŒã«ã»ãŠãžã³ã