ããã«å ããŠããŒãããŒãã解æ¶ããããã®åºæ¬çãªã¢ã«ãŽãªãºã ãå®è£ ãããã¢ããã°ã©ã ãäœæããŸããã ãã®ããã°ã©ã ã¯ããœãŒã¹ã³ãŒããšãã£ã¹ããªãã¥ãŒã·ã§ã³ãšãšãã«GitHubã«æçš¿ãããŠããŸãã
å®éã®ãŒããç»åïŒåæãŒãããªãïŒã®åŠççµæã以äžã«ç€ºããŸãã å ã®ç»åã¯ãEF 85mm / 1.8ã¬ã³ãºãåããCanon 500Dã«ã¡ã©ã§æ®åœ±ãããŸããã ãã©ãŒã«ã¹ãæåã§èšå®ããŠããŒãããååŸããŸããã ã芧ã®ãšãããããã¹ãã¯å®å šã«å€èªäžèœã§ãããWindows 7ãã€ã¢ãã°ããã¯ã¹ã®ã¿ãæšæž¬ãããŸãã

ãããŠãåŠçã®çµæã¯æ¬¡ã®ãšããã§ãã

ããã€ãã®ç¹åŸŽçãªæªã¿ãèŠãããŸãããã»ãšãã©ã®ããã¹ãã¯éåžžã«ããèªãŸããŸãã
ã«ããã®äžã§ããã³ã³ããªã¥ãŒã·ã§ã³ã®åé¡ã®è©³çŽ°ãªèª¬æããããã解決ããæ¹æ³ãããã³å€ãã®äŸãšæ¯èŒã 泚æãããããã®åçïŒ
çè«ãæãåºããŠãã ãã
çè«ã®è©³çŽ°ãªèª¬æã¯æåã®éšåã«ãããŸããããããã§ãèŠç¹ãç°¡åã«æãåºããŠãã ããã å ã®ç»åã®åãã¯ã»ã«ããã®æªã¿ã®éçšã§ãçŠç¹ãŒãã®å Žåã¯ç¹å®ã®ã¹ããããååŸãããåŸæ¥ã®ã¹ãã¢ã®å Žåã¯ã»ã°ã¡ã³ããååŸãããŸãã ããã¯ãã¹ãŠäºãã«éãªãåã£ãŠããããã®çµæãæªãã ç»åãåŸãããŸã-ããã¯ç»åã®ç³ã¿èŸŒã¿ãŸãã¯ç³ã¿èŸŒã¿ãšåŒã°ããŸãã 1ã€ã®ãã¯ã»ã«ãäžé®®æã«ãªãæ³åã¯ãæªã¿é¢æ°ãšåŒã°ããŸãã ä»ã®å矩èªã¯ãPSFïŒç¹åºããé¢æ°ãã€ãŸãç¹ã®ååžé¢æ°ïŒãæªæ²æŒç®åã®æ žãã«ãŒãã«ãªã©ã§ãã
å ã®ç»åã埩å ããã«ã¯ããã€ãºãå¿ããã«ãäœããã®æ¹æ³ã§ç³ã¿èŸŒã¿ãéã«ããå¿ èŠããããŸãã ããããããã¯ããã»ã©åçŽã§ã¯ãããŸããããé¡ã§ããšèšãããããã«è¡åãããšã蚱容å¯èœãªæéã§ã¯è§£æ±ºã§ããªã巚倧ãªæ¹çšåŒç³»ãåŸãããŸãã
ããããããŒãªãšå€æãšç³ã¿èŸŒã¿å®çãå©ãã«ãªããŸãã空éé åã§ã®ç³ã¿èŸŒã¿æŒç®ã¯ãåšæ³¢æ°é åã§ã®éåžžã®ä¹ç®ââïŒããã«ãè¡åä¹ç®ã§ã¯ãªããèŠçŽ ããšã®ä¹ç®ïŒãšåçã§ãããšè¿°ã¹ãŠããŸãã ãããã£ãŠãéç³ã¿èŸŒã¿æŒç®ã¯ãåšæ³¢æ°é åã§ã®é€ç®ãšåçã§ãã ãããã£ãŠãæªã¿ããã»ã¹ã¯æ¬¡ã®ããã«æžãæããããšãã§ããŸãã

ããã§ããã¹ãŠã®èŠçŽ ã¯å¯Ÿå¿ããé¢æ°ã®ããŒãªãšç»åã§ãã
GïŒuãvïŒã¯æªã¿ã®çµæãã€ãŸã çµæãšããŠèŠ³å¯ããããã®ïŒãŒãããç»åãŸãã¯ãã³ãŒãããç»åïŒ
HïŒuãvïŒ-æªã¿é¢æ°ãPSF
FïŒuãvïŒ-æªã¿ã®ãªãå ã®ç»å
NïŒuãvïŒ-å æ³æ§ãã€ãº
ãã®ãããå ã®ç»åFïŒuãvïŒã®æ倧è¿äŒŒã埩å ããå¿ èŠããããŸãã å³ãšå·Šã®éšåãHïŒuãvïŒã§å²ãã ãã§ã¯æ©èœããŸããã éåžžã«å°ããªãã€ãºãååšããå Žåã§ãïŒå®éã®ç»åã§ã¯åžžã«ïŒãNïŒuãvïŒ/ HïŒuãvïŒãšããçšèªãæ¯é çãšãªããå ã®ç»åããã€ãºã®äžã«å®å šã«é ããŠããŸããšããäºå®ã«ã€ãªãããŸãã
ãã®åé¡ã解決ããããã«ãããæç¶å¯èœãªæ¹æ³ãéçºãããŠããããã®1ã€ãWienerãã£ã«ã¿ãŒã§ãã 圌ã¯ç»åãšãã€ãºãã©ã³ãã ãªããã»ã¹ãšèŠãªãããããã®å€ã®æšæºåå·®ãæå°ã«ãªãããã«ãæªã¿ã®ãªãç»åfã®æšå®å€f 'ãèŠã€ããŸãã

ããã§ã®é¢æ°Sã¯ããããããã€ãºãšå ã®ç»åã®ãšãã«ã®ãŒã¹ãã¯ãã«ã瀺ããŠããŸã-ãããã®éã¯ãã£ãã«ããããªããããS n / S fã®éšåã¯å®æ°Kã«çœ®ãæããããŸãã
PSFã®å ¥ææ¹æ³
ããã§ã¯ã説æãããŠã£ããŒãã£ã«ã¿ãŒãåºçºç¹ãšããŠã¿ãŸããããäžè¬çã«èšãã°ãä»ã«ãå€ãã®ã¢ãããŒãããããŸããããããã¯ãã¹ãŠã»ãŒåãçµæããããããŸãã ãããã£ãŠã以äžã§èª¬æãããã¹ãŠã¯ããã³ã³ããªã¥ãŒã·ã§ã³ã®ä»ã®æ¹æ³ã«ãåœãŠã¯ãŸããŸãã
äž»ãªã¿ã¹ã¯ã¯ããã€ã³ãååžé¢æ°ïŒPSFïŒã®æšå®å€ãååŸããããšã§ãã ãããè¡ãã«ã¯ãããã€ãã®æ¹æ³ããããŸãã
1.ã¢ããªã³ã°ã éåžžã«å°é£ã§æéãããã çŸä»£ã®ã¬ã³ãºã¯ãããŒã¹ãä»ã®ç°ãªãã¬ã³ãºãå åŠçŽ åã§æ§æãããŠããããã®äžéšã¯åœ¢ç¶ãéçé¢ã§ãããåã¬ã©ã¹ã«ã¯ç¹å®ã®æ³¢é·ã®å ç·ã®å±æãšããç¬èªã®ç¹æ§ããããŸãã ãã®çµæãéå£ãåå°ãªã©ã®åœ±é¿ãèæ ®ããŠããã®ãããªè€éãªå åŠã·ã¹ãã ã§ã®å ã®äŒæãæ£ããèšç®ããã¿ã¹ã¯ ã»ãšãã©äžå¯èœã«ãªããŸãã ãããŠãããããããã®ãœãªã¥ãŒã·ã§ã³ã¯ãææ°ã®ã¬ã³ãºã®éçºè ã®ã¿ãå©çšã§ããŸãã
2.çŽæ¥èŠ³å¯ã PSFã¯ãã€ã¡ãŒãžã®ãã¹ãŠã®ãã€ã³ããå€åãããã®ã§ããããšãæãåºããŠãã ããã ã€ãŸã é»ã®èæ¯ãšãã®äžã«1ã€ã®çœããããã圢æããç®çã®ããã©ãŒã«ã¹å€ã§æ®åœ±ãããšãPSFãçŽæ¥ååŸãããŸãã åçŽã«æããŸãããå€ãã®ãã¥ã¢ã³ã¹ãšåŸ®åŠãããããŸãã
3.èšç®ãŸãã¯éæ¥èŠ³å¯ã æªã¿ããã»ã¹ã®åŒïŒ1ïŒãèŠãŠãHïŒuãvïŒãååŸããæ¹æ³ãèããŸããïŒ è§£æ±ºçã¯ããã«åŸãããŸã-å ã®FïŒuãvïŒç»åãšæªãã GïŒuãvïŒç»åãå¿ èŠã§ãã 次ã«ãæªãã ç»åã®ããŒãªãšå€æãå ã®ç»åã®ããŒãªãšå€æã«åå²ãããšãç®çã®PSFãåŸãããŸãã
ãã±ã«ã€ããŠ
詳现ã«é²ãåã«ãå åŠã«é¢ããçŠç¹å€ãã®çè«ã«ã€ããŠå°ã説æããŸãã çæ³çãªã¬ã³ãºã¯ããããåã®åœ¢ã®PSFãæã¡ãåç¹ã¯ç¹å®ã®çŽåŸã®åã«ãªããŸãã ãšããã§ãããã¯å€ãã®äººã«ãšã£ãŠé©ãã§ãããªããªãã äžèŠãããšãçŠç¹ããŒããŠããã ãã§ç»åå šäœãæããªã£ãŠããããã«èŠããŸãã ããã¯ãŸããPhotoshopã®ã¬ãŠã¹ã®ãŒããããã¬ã³ãºã§èŠãããèæ¯ãã¿ãŒã³ïŒãã±ãšãåŒã°ããïŒã«ãŸã£ãã䌌ãŠããªãçç±ã説æããŠããŸãã å®éããããã¯2ã€ã®ç°ãªãã¿ã€ãã®ãŒããã§ããã¬ãŠã¹ã«ããã°ãåãã€ã³ãã¯ãã¡ãžãŒã¹ãããïŒã¬ãŠã¹ãã«ïŒã«å€ãããããã©ãŒã«ã¹ã¯åãã€ã³ããåã«å€ããŸãã ãããã£ãŠãç°ãªãçµæã
ããããçæ³çãªã¬ã³ãºã¯ãªããå®éã«ã¯çæ³çãªåãã1ã€ãŸãã¯å¥ã®åå·®ãçããŸãã ãããåã¬ã³ãºã®ãŠããŒã¯ãªãã±ãã¿ãŒã³ã圢æãããã®ã§ãããåç家ã¯çŸãããã±ã®ã¬ã³ãºã«å€é¡ã®ãéãè²»ããå¿ èŠããããŸã:)ãã±ã¯3ã€ã®ã¿ã€ãã«åããããŸãã
-ãã¥ãŒãã©ã«ã ããã¯ãåã«æãè¿ãã¢ãããŒãã§ãã
-ãœããã ãšããžãäžå€®ãããæãããªãå Žå
-ã¿ãã ãšããžãäžå€®ãããæããå Žåã
以äžã®å³ã¯ããã瀺ããŠããŸãã

ããã«ããã±ã®ã¿ã€ã-ãœãããããŒããã¯ãããã³ããã©ãŒã«ã¹ããªã¢ãã©ãŒã«ã¹ãã«ãã£ãŠãç°ãªããŸãã ã€ãŸã ã«ã¡ã©ã¯è¢«åäœã®åãŸãã¯åŸãã«çŠç¹ãåãããŸãã ããšãã°ãã¬ã³ãºã®ããã³ããã©ãŒã«ã¹ã«ãœãããªãã±ãã¿ãŒã³ãããå ŽåïŒããšãã°ããã©ãŒã«ã¹ãé¡ã«ãããèæ¯ããŒãããŠããå ŽåïŒãåãã¬ã³ãºã®ãã±ã¯ããã¯ãã©ãŒã«ã¹ã§ç¡¬ããªããŸãã ãããŠãã®éã äžç«çãªãã±ã®ã¿ãçŠç¹ã®ã¿ã€ãããå€åããŸããã
ããããããã ãã§ã¯ãããŸãããåã¬ã³ãºã«ã¯ç¹å®ã®å¹ŸäœåŠçæªã¿ããããããPSFã®ã¿ã€ããäœçœ®ã«äŸåããŸãã äžå€®-åã«è¿ãã端ã«æ²¿ã£ãŠ-æ¥åããã³ä»ã®å¹³ããªå³åœ¢ã ããã¯æ¬¡ã®åçã«ã¯ã£ãããšç€ºãããŠããŸã-å³äžé ã«æ³šæããŠãã ããã

ããã§ãPSFãååŸããæåŸã®2ã€ã®æ¹æ³ã詳ããèŠãŠã¿ãŸãããã
PSF-çŽæ¥èŠ³å¯
äžèšã®ããã«ãé»ã®èæ¯ãšçœã®ãããã圢æããå¿ èŠããããŸãã ããããããªã³ã¿ãŒã§1ã€ã®ããããå°å·ããã ãã§ã¯ååã§ã¯ãããŸããã é»ãèæ¯ãšçœãç¹ã®æããã«ã¯ãã¯ããã«å€§ããªå·®ãå¿ èŠã§ãã 1ã€ã®ãã€ã³ãã¯å€§ããªåã§ãŒãããŸã-ãããã£ãŠããŒãããåŸã«èŠããããã«ããã«ã¯ããã倧ããªæãããå¿ èŠã§ãã
ãããè¡ãããã«ããã¬ãããã®é»ãåè§ãå°å·ããŸããïŒã¯ãã倧éã®ãããŒãå¿ èŠã§ããããç§åŠã®ããã«ã§ããŸããïŒïŒã çŽã¯ãŸã ããèŠããéã§å°ããªç©ŽãéããŸããã ãããã圌ã¯200ã¯ããã®ã©ã³ããšé»ãã·ãŒããšãã€ã«ã®ãµã³ãã€ããã®ã·ã³ãã«ãªæ§é ãäœããŸããã ãã®ããã«èŠããïŒ

ãããã圌ã¯ã©ã³ããã€ããã·ãŒãã§ãããéããäžè¬çãªå ãæ¶ãããã€ãã³EF 18-55ããããšãã€ãã³EF 85mm / 1.8ããŒãã¬ãŒãã®2ã€ã®ã¬ã³ãºã䜿ã£ãŠåçãæ®ããŸããã çµæã®åçããPSFãåãåãããããã¡ã€ã«ã°ã©ããäœæããŸããã
ã¯ãžã©ã®ã¬ã³ãºã§èµ·ãã£ãããšã¯æ¬¡ã®ãšããã§ãã

Canon EF 85mm / 1.8ã®ããŒãã¬ãŒãããŒãã¬ãŒãã®å ŽåïŒ

ããã³ããã©ãŒã«ã¹ãšããã¯ãã©ãŒã«ã¹ã®å Žåãåãã¬ã³ãºã®ãã±ã®æ§è³ªãããŒããããœããã«ã©ã®ããã«å€åããããæ確ã«èŠãããšãã§ããŸãã ãŸããPSFã®é£ãããããããŸããçæ³çãªåããã¯ã»ã©é ãã§ãã ããŒãã¬ãŒãã®å Žåãã¬ã³ãºã®å€§å£åŸãš1.8ã®å°å£åŸã«ããã倧ããªè²åå·®ãèŠãããŸãã
ãããŠãããã«14ã®å£åŸãæã€ããã€ãã®ã·ã§ããããããŸã-ããã¯åœ¢ãã©ã®ããã«å圢ããæ£å è§åœ¢ã«å€ãã£ããã瀺ããŸãïŒ

PSF-èšç®ãŸãã¯éæ¥èŠ³å¯
次ã®ã¢ãããŒãã¯éæ¥çãªèŠ³å¯ã§ãã ãã®ãããäžèšã®ããã«ãå ã®FïŒuãvïŒç»åãšæªãã GïŒuãvïŒç»åãå¿ èŠã§ãã ããããå ¥æããã«ã¯ïŒ éåžžã«ç°¡å-ã«ã¡ã©ãäžèã«åãä»ããŠãåãç»åã®é®®æãªåçãšãŒãããåçã1æãã€æ®ãå¿ èŠããããŸãã ããã«ãæªãã ç»åã®ããŒãªãšå€æãå ã®ç»åã®ããŒãªãšå€æã§é€ç®ããããšã«ãããç®çã®PSFã®ããŒãªãšå€æãååŸããŸãã 次ã«ãéããŒãªãšå€æãé©çšããŠãçŽæ¥åœ¢åŒã®PSFãååŸããŸãã
ç§ã¯2ã€ã®åçãæ®ããŸããïŒ


ãããŠãã®çµæãç§ã¯ãŸãã«ãã®ãããªPSFãåŸãŸããïŒ

æ°Žå¹³ç·ã«æ³šæããªãã§ãã ãããããã¯ãMATLABã§ã®ããŒãªãšå€æåŸã®ã¢ãŒãã£ãã¡ã¯ãã§ãã çµæã¯å¹³å¡ã§ã-å€ãã®ãã€ãºãšPSFã®è©³çŽ°ã¯ããŸãèŠããŸããã ãã ããã¡ãœããã«ã¯ååšããæš©å©ããããŸãã
説æããæ¹æ³ã¯ããŒãããç»åã埩å ãããšãã«PSFãæ§ç¯ããããã«äœ¿çšã§ããŸãã ãªããªã å ã®ç»åã®åŸ©å ã®å質ã¯ããã®é¢æ°ãå®éã®é¢æ°ã«ã©ãã ãè¿ããã«çŽæ¥äŸåããŸãã çããããšå®éã®PSFãäžèŽããªãå Žåãããªã³ã®ã³ã°ãããããŒãæç床ã®äœäžãšãã圢ã§å€æ°ã®ã¢ãŒãã£ãã¡ã¯ãã芳å¯ãããŸãã ã»ãšãã©ã®å ŽåãPSFã¯å圢ã§ãããšæ³å®ãããŠããŸãããæ倧éã®å埩ãå®çŸããã«ã¯ãäžè¬çãªã¬ã³ãºããããã€ãã®ãªãã·ã§ã³ãè©ŠããŠããã®é¢æ°ã®åœ¢åŒãè©ŠããŠã¿ãããšããå§ãããŸãããã®ä»ã®æ¡ä»¶ã
ãšããžå¹æ
次ã®åé¡ã¯ããŠã£ããŒãã£ã«ã¿ãŒãçŽæ¥é©çšãããšãç»åã®ç«¯ã«äžçš®ã®ããªã³ã®ã³ã°ããçããããšã§ãã ãã®çç±ã¯ãæã§èª¬æãããŠããå Žåã次ã®ãšããã§ã-ãšããžäžã«ãããã€ã³ãã«å¯ŸããŠãã³ã³ããªã¥ãŒã·ã§ã³ãè¡ããããšãã¢ã»ã³ããªã«ã¯ç»åã®ãšããžã®å€åŽã«ããååãªãã¯ã»ã«ããªãããŒããŸãã¯å察åŽããååŸãããŸãWienerãã£ã«ã¿ãŒãšããŒãªãšå€æã®å®è£ ããïŒã 次ã®ããã«ãªããŸãã

ãããåé¿ãã1ã€ã®è§£æ±ºçã¯ãç»åã®ãšããžãååŠçããããšã§ãã åãPSFã䜿çšããŠãŒãããŠããŸãã å®éã«ã¯ãããã¯æ¬¡ã®ããã«å®è£ ãããŸã-å ¥åç»åFïŒxãyïŒãååŸãããPSFã䜿çšããŠãŒããããF 'ïŒxãyïŒãååŸãããŸãããããŠãæçµå ¥åç»åF' 'ïŒxãyïŒã¯FïŒxãy ïŒããã³F 'ïŒxãyïŒã¯éã¿é¢æ°ã䜿çšãããšããžã§å€1ïŒç¹å šäœããŒãããF'ïŒxãyïŒããååŸãããŸãïŒãããã³ç»åã®ãšããžããPSFã®ååŸä»¥äžã®è·é¢ã§å€ãååŸããŸã0.çµæã¯ããã§ã-ãšããžã®ãªã³ã®ã³ã°ãæ¶ããŸããïŒ

å®çšçãªå®è£
ãŒããç»åãšãŒããç»åã®åŸ©å ã瀺ãããã°ã©ã ãäœæããŸããã Qtã䜿çšããŠC ++ã§èšè¿°ãããŠããŸãã ããŒãªãšå€æã®å®è£ ãšããŠãç§ã¯æéã®ãªãŒãã³ãœãŒã¹å®è£ ãšããŠFFTWã©ã€ãã©ãªãéžæããŸããã ç§ã®ããã°ã©ã ã¯SmartDeblurãšåŒã°ããgithub.com / Y-Vladimir / SmartDeblurããããŠã³ããŒãã§ããŸãããã¹ãŠã®ãœãŒã¹ã¯GPL v3ã©ã€ã»ã³ã¹ã®äžã§éãããŠããŸãã
ã¡ã€ã³ãŠã£ã³ããŠã®ã¹ã¯ãªãŒã³ã·ã§ããïŒ

äž»ãªæ©èœïŒ
-é«éã 2048 * 1500ãã¯ã»ã«ã®ãµã€ãºã®ç»åã®åŠçã«ã¯ããã¬ãã¥ãŒã¢ãŒãïŒèšå®ã¹ã©ã€ããŒã移åããŠããå ŽåïŒã§çŽ300ããªç§ãå®äºã¢ãŒãïŒèšå®ã¹ã©ã€ããŒãé¢ããå ŽåïŒã§1.5ç§ããããŸãã
-ãªã¢ã«ã¿ã€ã ã¢ãŒãã§ã®ãã©ã¡ãŒã¿ã®éžæã ãã¬ãã¥ãŒãã¿ã³ãã¯ãªãã¯ããå¿ èŠã¯ãããŸããããã¹ãŠãèªåçã«è¡ãããæªã¿èšå®ã®ã¹ã©ã€ããŒãåããã ãã§ãã
-ãã¹ãŠã®åŠçã¯ããã«è§£å床ã®ç»åçšã§ãã ã€ãŸã å°ããªãã¬ãã¥ãŒãŠã£ã³ããŠãš[é©çš]ãã¿ã³ã¯ãããŸããã
-ãŒãããç»åããã³ãŒãããç»åã®å埩ããµããŒã
-ãã¥ãŒPSFã調æŽããå¯èœæ§
éçºã®äž»ãªéç¹ã¯é床ã«çœ®ãããŸããã ãã®çµæãåžè²©ã®ã¢ããã°ã10åäžåãããšãå€æããŸããã ãã¹ãŠã®åŠçã¯ãå¥ã®ã¹ã¬ããã§æ人åãã«è¡ãããŸãã 300 msã®éãããã°ã©ã ã¯æ°ããPSFãçæãã3ã€ã®ããŒãªãšå€æãè¡ããWienerãã³ã³ããªã¥ãŒã·ã§ã³ãè¡ããçµæã衚瀺ããŸããããã¯ãã¹ãŠã2048 * 1500ãã¯ã»ã«ã®ãµã€ãºã®ç»åã«å¯ŸããŠè¡ãããŸãã ä»äžãã¢ãŒãã§ã¯ã12åã®ããŒãªãšå€æãå®è¡ãããŸãïŒåãã£ãã«ã«3ã€ãããã«ãšããžå¹æãæå¶ããããã«åãã£ãã«ã«1ã€ïŒ-ããã«ã¯çŽ1.5ç§ããããŸãã ãã¹ãŠã®æéã¯Core i7ããã»ããµãŒçšã§ãã
ããã°ã©ã ã«ã¯å€ãã®ãã°ãšæ©èœããããŸãããäžéšã®èšå®ã§ã¯ç»åãæ³¢æã£ãŠãããšããŸãããã æ£ç¢ºãªçç±ãèŠã€ããããšã¯ã§ããŸããã§ãããããããã-FFTWã©ã€ãã©ãªã®æ©èœã§ãã
ãŸããäžè¬ã«ãéçºããã»ã¹äžã«ãFFTWã®ããã«å€ãã®é ããåé¡ãåé¿ããå¿ èŠããããŸããïŒããšãã°ã423 * 440ãªã©ã®çåŽã®å¥æ°ãµã€ãºã®ç»åã¯ãµããŒããããŠããŸããïŒã Qtã«åé¡ããããŸãã-ã¢ã³ããšã€ãªã¢ã¹ããªã³ã«ããŠç·ãã¬ã³ããªã³ã°ãããšãæ£ç¢ºã«æ©èœããªãããšãå€æããŸããã è§åºŠã®å€ã«ãã£ãŠã¯ãç·ããã¯ã»ã«ã®ç«¯æ°ã«ãžã£ã³ããã匷ãæ³¢çŽã®åœ¢ã§ã¢ãŒããã¡ã¯ããçããŸããã ãã®åé¡ãåé¿ããã«ã¯ã次ã®è¡ãè¿œå ããŸããã
// Workarround to have high accuracy, otherwise drawLine method has some micro-mistakes in the rendering QPen pen = kernelPainter.pen(); pen.setWidthF(1.01); kernelPainter.setPen(pen);
æ¯èŒ
åŠçã®å質ãåžè²©ã®ã¢ããã°ãšæ¯èŒããããšã¯æ®ã£ãŠããŸãã
ç§ã¯2ã€ã®æãæåãªããã°ã©ã ãéžã³ãŸãã
1. Topaz InFocus-www.topazlabs.com/infocus
2.ãã©ãŒã«ã¹ããžãã¯-www.focusmagic.com
å®éšã®çŽåºŠã®ããã«ãå ¬åŒãµã€ãã«ãªã¹ããããŠããåºåç»åã䜿çšããŸã-ãããã®ããã°ã©ã ã®ãã©ã¡ãŒã¿ãŒãæé©ã«éžæãããŠããããšãä¿èšŒãããŠããŸãïŒéçºè ãæ éã«ç»åãéžæãããµã€ãã§åºåã«å ¬éããåã«ãã©ã¡ãŒã¿ãŒãéžæãããšæããŸãïŒ
ããã§ã¯ãè¡ãã-ã°ãªãŒã¹ã®ååïŒ
Topaz InFocus Webãµã€ãã®äŸãã芧ãã ããã
www.topazlabs.com/infocus/_images/licenseplate_compare.jpg

ãããã®ãã©ã¡ãŒã¿ãŒã䜿çšããŠåŠçããŸãã

ãã®çµæãååŸããŸãïŒ

Topaz InFocus Webãµã€ãã®çµæïŒ

çµæã¯éåžžã«ãã䌌ãŠããŸããããã¯ãTopaz InFocusã®åºç€ãåæ§ã®ãã³ã³ããªã¥ãŒã·ã§ã³ã¢ã«ãŽãªãºã ã«å ããŠãå¹³æ»åãã€ãºãšäžç·ã®èŒªéã®åœ¢ã§åŸåŠçã䜿çšããããšã瀺åããŠããŸãã
ãã®ããã°ã©ã ã®ãµã€ãã§æ·±å»ãªããã©ãŒã«ã¹ã®äŸã¯èŠã€ãããŸããã§ããããããã¯æå³ãããŠããŸããïŒæ倧ãŒããååŸã¯æ°ãã¯ã»ã«ã§ãïŒã
ãã1ã€æ³šæããããšãã§ããŸã-åŸæè§ã¯æ£ç¢ºã«45床ã§ãã¹ãã¢ã®é·ãã¯10ãã¯ã»ã«ã§ããã ããã¯ãç»åã人工çã«ãŒãããŠããããšã瀺åããŠããŸãã ãã®äºå®ã¯ãå埩å質ãéåžžã«åªããŠãããšããäºå®ã«ãè£ä»ããããŠããŸãã
äŸ2ã¯çŠç¹ãŒãã埩å ããŠããŸãã ãããè¡ãã«ã¯ãFocus Magicã®Webãµã€ãïŒ www.focusmagic.com/focusing-examples.htmïŒããäŸãåããŸãã

ãã®çµæãåŸãŸããïŒ
![]() | ![]() |
SmartDeblurçµæ | ãã©ãŒã«ã¹ããžãã¯çµæ |
äœãè¯ããã¯ããã»ã©æããã§ã¯ãããŸããã
ãããã«
ããã§ç§ã¯ãã®èšäºãçµäºããããšæããŸãã ç§ã¯ãŸã å€ãã®ããšãæžãããã£ãã®ã§ããããã§ã«é·ãããã¹ããå€æããŸããã SmartDeblurãããŠã³ããŒãããŠå®éã®ç»åã§ãã¹ãããŠã¿ãŠãã ãããæ®å¿µãªããããŒããç»åããŒãããç»åã¯ããŸããªãã®ã§ããã¹ãŠãåé€ãããŸããã
ãããŠãããªãã®ãã£ãŒãããã¯ãšæåãã/倱æããå埩ã®äŸãç§ã«éã£ãŠãããã°ïŒãããã¡ã€ã«ã«ç³é¹žããããŸãïŒãç¹ã«æè¬ããŸãã ããŠããã¹ãŠã®ãã°ãã³ã¡ã³ããææ¡ãå ±åããŠãã ãã-ãšã㊠ã¢ããªã±ãŒã·ã§ã³ã¯ãŸã ãããã湿ã£ãŠããŠãå°ãäžå®å®ã§ãã
PSãœãŒã¹ã¯ãŸã ã¹ã¿ã€ã«ã®ç¹ã§ã¯ããŸããããã§ã¯ãããŸãã-ãŸã å€ãã®ã¡ã¢ãªãªãŒã¯ãããããŸã ã¹ããŒããã€ã³ã¿ãŒã«è»¢éããããšãã§ããŠããªããããããã€ãã®ç»åã®åŸã«ãã¡ã€ã«ãéãããšãã§ããŸããã ããããå šäœçã«ã¯æ©èœããŸãã
SmartDeblurãªã³ã¯ïŒ github.com/Y-Vladimir/SmartDeblur
UPDïŒ ç¶è¡ãããªã³ã¯
--
ãŠã©ãžããŒã«ã»ãŠãžã³ã