TrainScannerã®äœ¿ãæ¹
ã€ã³ã¹ããŒã«
ã³ãã³ãã©ã€ã³ããã€ã³ã¹ããŒã«ãšå®è¡
% pip install trainscanner
% trainscanner
Anacondaã䜿ãå ŽåããTerminalãéããŠäžã®ããã«å ¥åããã ãã§ãã
æ®åœ±æ¹æ³
åè»ããããªã«ã¡ã©ã§åŽé¢ããæ®åœ±ããŸãã
- å¿ ãäžèã䜿çšããŠäžãããææ¯ããããšãæçµçãªåè»ã®åçããã«ããã«ãã«ãªããŸãã
ãã©ããããŒã ã§ã®äžèã®å©çšãçŠããŠããé§ ããããŸãããããã工倫ããŠã¿ãŠäžããã ã»ãã«ãããããã¢ããã€ã¹ã¯ãããŸãããã¯ããã¯æ°ã«ããªããŠã倧äžå€«ã§ãã
TrainScannerã§éã
-
ãŸãããã ãŒããŒãéãããæŒããŠã ãŒããŒãã¡ã€ã«ãéããŠäžãããäž»èŠãªãã©ãŒãããã§ããã°ãã®ãŸãŸéããŸãããéããªãå Žåã¯ãQuickTimeãffmpegãªã©ãå©çšããŠãã©ãŒããããå€æããŠããåææŠããŠäžããã(以åäœã£ãæã«ã§ãã
.tsconf
ãã¡ã€ã«ãèªã¿ããããšãã§ããŸã) ãŸãããã ãŒããŒãéãããæŒã代ããã«ããã€ã¢ãã°ãŠã£ã³ããŠäžã«çŽæ¥ãããªãã¡ã€ã«ãtsconfãã¡ã€ã«ããã©ãã°ã¢ã³ãããããããããšãã§ããŸãã -
ãã¡ã€ã«ãç¡äºã«éããšã倧ããªãã€ã¢ãã°ç»é¢ã衚瀺ãããŸããäžçªäžãé åºãã®ããã®ã¹ãããã·ã§ãã衚瀺çªãå·Šãåè»ã®æªã¿ãä¿®æ£ããããã®çªããããŠå³ãåããæ€åºããæ ãæå®ããããã®çªã§ãããã®é çªã§äœæ¥ããŸãã
-
瞊äœçœ®ã§æ®åœ±ããå Žåããã«ã¡ã©ãåŸããŠãã(ãããã¯ããŒãªã³ã°ã·ã£ãã¿ãŒã§ç»åãåŸããŠãã)å Žåã«ã¯ãå·Šçªäžã®ãã¿ã³ã§ç»åãå転ããŠãåè»ã®çªæ ãåçŽã«ãªãããã«ããŠäžããã(æ°Žå¹³ã¯å¥ã®æ¹æ³ã§ã調ç¯ã§ããŸãã)
-
ãŸããäžçªäžã®çªã§ãã¹ã©ã€ããŒã䜿ã£ãŠãåè»ãèŠéã«å ¥ããããç¬éãæå®ããŠäžãããäžã®å·Šå³ã®çªã«ã¯ãæå®ããããã¬ãŒã ã衚瀺ãããŸãã
-
å·Šçªã®åé ã«ããã¹ã©ã€ããŒã䜿ã£ãŠãç»é¢å ã®èµ€ãç·ãåè»ã«å¹³è¡ã«ãªãããã«èª¿ç¯ããŠäžãããå³ã®çªã«è¡šç€ºãããåè»ããé·æ¹åœ¢ã«ãªããŸã§èª¿æŽããŸãããã®äœæ¥ã¯çç¥ããŠãæ§ããŸããã
-
次ã«å³ã®ããã«ã«é²ã¿ãŸãã空ãå°é¢ã¯ãããããå³åŽã®ã¹ã©ã€ããŒã§åã£ãŠãããšãããšã®åŠçãéããªããŸãã
-
åè»ã®åããæ€ç¥ããæ (å€äœæ€ç¥çª)ãæå®ããŸããåæèšå®ã§ã¯èŠéã®äžäžå·Šå³1/3ã®äžå€®éšåãæå®ãããŠããŸãããããŸãåããæ€ç¥ã§ããªãå Žåã¯ãæ ãæå®ããªãããŠäžããã
äžã®äŸã§ã¯ãããæãããæ®åœ±ãããŠé è¿ãã€ããŠããè»äœã«ãå·Šçªã§èµ€ãç·ãåè»ã«æ²¿ãããããšã§ãå³çªã§ã¯è»äœã®ããŒã¹ãã¯ãã£ããè£æ£ãããŠããã®ãããããŸãã
-
èµ€ã瞊ç·ã®äœçœ®ããã¹ãªããã®äœçœ®ã§ããã€ãŸãããã®èµ€ãç·ã«æ²¿ã£ã现é·ãåçã®çåã䞊ã¹ãããšã§ãé·ãåè»ã®åçãã§ããŸãã2æ¬ã®ç·ã¯ãå³åãã®åè»ãšå·Šåãã®åè»ã®å Žåã®ã¹ãªããäœçœ®ãè¡šããŠããŸããèµ€ãç·ã®äœçœ®ã¯ãå³çªäžã®ã¹ã©ã€ããŒã§åãããŸããèæ¯ã«ããããŠãã¹ãªããã®äœçœ®ã決ããŠäžãããã¹ãªããã®äœçœ®ã¯ãç·ã®å€äœæ€ç¥æ ãããåæ¹(å³åãã«é²ãåè»ãªãå³åŽ)ã®ã»ããè¯ãã§ãã
TrainScannerã§ã€ãªã
ãããŸã§çµãã£ããããããã«ã€ãªãã§ã¿ãŸãããã
- å°ããæ¹ã®ãŠã£ã³ããŠã«æ»ãããéå§ããã¿ã³ãæŒããŠäžããã(ãšãã£ã¿çªã¯éããªãã§äžãããéãããšãã¡ã€ã«ãéããŠããŸããŸã)
- ãŸãé£çµäœæ¥ã®éäžçµéã衚瀺ãããŠã£ã³ããŠãéãããããå¥åŠãªæ åã衚瀺ãããŸãããã®æ åã¯ãé£ç¶ãã2ã€ã®ç»åãããããŠãããããããå·®ã衚瀺ããŠããŸããå®å šã«éãªãã°çã£çœã§ãããåçã«ããããããšè²ãåºçŸããŸããåè»ã®åããæ£ç¢ºã«æããŠããã°ãåè»ã¯çã£çœã«ãªããèæ¯éšåã«è²ãåºçŸããŸãããåè»ã®åãããšããããããŠãããšãéã«èæ¯ãçã£çœã«ãªã£ãŠåè»ãè²ä»ãã«ãªããŸããåè»ã移åããŠããéãåããæ€ç¥ããæ (ç·ã®é·æ¹åœ¢)ã®äžãã§ããã ãçã£çœã«ãªãããã«ãæ ã®äœçœ®ãéžã¶ãšãããããªããããã«ãªããŸãã
- é£çµäœæ¥ãããã£ããããã¬ãã¥ãŒãŠã£ã³ããŠãéããŸãããã¬ãã¥ãŒãŠã£ã³ããŠã«ã¯ã¹ã¯ããŒã«ããŒãã€ããŠããŠãåè»ã®åçãäœãããéçšãèŠãããŸãããã¬ãã¥ãŒãããã£ãããã§ãããã£ãç»åã¯ããšã®ã ãŒããŒãã¡ã€ã«ãšåããã©ã«ãã«åºåãããŸãããã¡ã€ã«åã¯ãããšã®ã ãŒããŒã®ãã¡ã€ã«åã«ã©ã³ãã ãªæ°åãšæ¡åŒµå â.pngâãä»ãããã®ã«ãªããŸãã
è¯ãä»äžãã®ããã«
å°ããã»ãã®ãŠã£ã³ããŠã«ã¯ãããã€ãèšå®é ç®ããããŸãã
- ãã¹ãªããã®ã€ãªãç®ããã¬ãŒã å士ãã€ãªãããããæã«ãããããããŒããå¹ ãæå®ããŸããå°ãããããšã·ã£ãŒãã«ãªããŸãããæ°Žå¹³ã®ããããè²ãããç®ç«ã€ããšã«ãªããããããŸããã倧ãããããšèæ¯ããªããããŠã¹ã ãŒãºã«ãªããŸãããåè»èªäœãããããã±ãŸãã
- ãæ€ç¥ã§ããæå°ã®ç§»åéãåè»ã®åãããã®æ°åãããå°ããå Žåã«ã¯ãåè»ã¯åããŠããªããã®ãšã¿ãªãããŸããã«ã¡ã©ã埮åŠã«åããŠããå Žåã«ã¯å€§ããã«èšå®ãããšè¯ãã§ãããã
- ãé床ãèŠç©ãã®ã«äœ¿ãã³ãæ°ãTrainScannerã¯ãåè»ã®åããæ€ç¥ããŠãããã°ããã®éãé床ãèŠç©ãããã«æéã®ãããç §åãè¡ããŸãããé床ãèŠç©ã£ãããšã¯ãéåžžã«é«éã«åäœããŸãããã®ã³ãæ°ãå¢ãããšãå é éšåã®ç§»åéãããæ£ç¢ºã«ãªããŸããéåžžã¯å€æŽããå¿ èŠã¯ãããŸããã
- ã瞊æ¹åã®ãããç¡èŠãããåŸãè£æ£ãè¡ã£ãŠããåè»ã®åããå®å šã«æ°Žå¹³ã§ã¯ãªããåŸã ã«äžäžäœçœ®ããããŠãã£ãŠããŸãå Žåã«ã¯ããããã¯ãªãã¯ãããšã匷å¶çã«äžäžã®åããç¡èŠããŸããããã©ã«ãã§ã¯ãªã³ã«ãªã£ãŠããŸãããè¹ãªã©äžäžã®åãã倧ããç©äœãæ®åœ±ããå Žåããã«ã¡ã©ãäžäžåããŠããŸã£ãå Žåã«ã¯ãªãã«ããŸãããã
- ãæåãåè»ã¯ç§»åæ€ç¥çªã®äžã«æ¢ãŸã£ãŠãããç¹æ®ãªç¶æ³ãšããŠãéæ¢ç¶æ ããæ®åœ±ããå Žåã«ã¯ããããã§ãã¯ããŠäžãããTrainScannerã¯ã移åæ€ç¥çªã«ã¯çªç¶åè»ãé£ã³ããã§ãããšæ³å®ããçªç¶ã®å€§ããªåãããåè»ã®åéãæšå®ããŸããããããã¯ããããèŠéã«åè»ãéæ¢ããŠããå Žåã«ã¯ããã®æšå®æ©æ§ãããã£ãŠéªéã«ãªã(倧ããªåãã«ãªããŸã§ç¡èŠããŠããŸã)ã®ã§ãé床æšå®æ©æ§ããªãã«ããŸãã
- ãæ倧å é床ãããã³ãã§ãäŸãã°åè»ã20ç»çŽ é²ãã ãšãããã次ã®ã³ãã§ã20ç»çŽ çšåºŠé²ãå¯èœæ§ãéåžžã«é«ãã§ãããæã«21ç»çŽ å€äœãããããããŸããããã®å·®ãå é床ã§ããåè»ã¯ãããªã«åŒ·çã«å éããªãã®ã§ãéåžžã¯1ã®ãŸãŸã§è¯ãã§ãããäŸãã°åè»ãééããæ¯åã颚ã§ã«ã¡ã©ãã¶ãããããå Žåã«ã¯ãããã倧ããã«ããã»ããããŸãã€ãªãããŸãã
- ãåè»ãå»ã£ãããšãã¹ãã£ã³ãç¶ç¶ãããããã倧ãããããšãåè»ãå»ã£ãããšãããã°ããã¯åè»ã®é床ã«ããããŠã€ãªãããããç¶ããŸããçããããšãããã«ã¹ãã£ã³ãæã¡åããŸãã(ãã®æ©èœã¯ããŸãããŸããã£ãŠãŸãã)
- ãå®æåçã®å¹ ã®äžéãæå®ããã§ãã¯ãããšãæå€§å¹ ãæå®ã§ããŸããmacOSã®ãã¬ãã¥ãŒ.appã§ã¯ã30000ç»çŽ ãè¶ããå¹ ã®åçã¯ããŸã衚瀺ã§ããªãå ŽåããããŸãããŸãã10äžç»çŽ ãè¶ããç»åã¯ãæ±ãããœãããŠã§ã¢ãéãããã¡ã¢ãªå¿ èŠéãè«å€§ã«ãªããŸãããã§ãã¯ãå ¥ããªãå Žåã«ã¯ãæ倧éã®è§£å床ã®ç»åãçæããŸãã
å°å·ã«ã€ããŠ
åè»ã®åçã¯éåžžã«é·ããªãã®ã§ïŒå°å·ã«ã¯äžå·¥å€«å¿ èŠã§ãïŒ
- å梱ã®
converter_gui.py
(ã¢ããªã±ãŒã·ã§ã³åã¯TrainConverter.app
)ã䜿ããšã暪é·ã®åçãA4ã©ã³ãã¹ã±ãŒãã«ã¡ããã©ãããŸãããã«ïŒåçã®å€§ãããèªå調æŽããŠãããŸãïŒA4çšçŽãªããã·ãŒã«çŽããã°ãããçŽãªã©ïŒããããªçŽ æãéžã¹ãã®ã§ïŒããããçšéãèããŠã¿ãŠäžããïŒ - ã€ã³ã¯ãžã§ããããªã³ã¿ã®ãªãã«ã¯ïŒããŒã«çŽã«å¯Ÿå¿ããŠãããã®ããããŸããããä»ã¯ãªãããã§ããä»åè©Šãã«è²·ã£ãŠã¿ãPM-105ã®å Žåã1.1 mãŸã§ãªããªããšãå°å·ã§ããŸããããã以äžé·ãçšçŽãèšå®(ãšããœã³ã®ãã©ã€ããŒã¯çŽã®å€§ãããèªç±ã«èšå®ã§ããŸã)ããŠããããªã³ã¿ãæŽèµ°ããã°ããã§å°å·ã§ããŸããã§ãããæ®å¿µã§ããä»ã¯ããã¹ã¿ãŒããªã³ã¿ã§ãæã«å ¥ããªãéããããŒã«çŽã«ã¯å°å·ã§ããªãã®ã§ããããã
- ããŒã«çŽãçŸåšã®ããªã³ã¿ã§äœ¿ãå Žåã«ãããããªåé¡ãçããŸãã
- å°å·ãçµãããšãçŽã®çµãããŸã§çŽéããããæ©èœãæèŒãããŠããŸãããããŒã«çŽã«ã¯ãããããªãã®ã§ãå°å·ãçµãããšã¯ãŠããªãçŽãéã£ãŠããŸããŸããããªã³ã¿ã®ã»ã³ãµãŒãã ãŸãã°è¯ãã®ã§ãããã»ã³ãµãŒã¯ãããã®ã¬ãŒã«ã®äžã®çãã¹ããŒã¹ã«ãããæ¹é ã¯é£ãããã§ããå°å·ãçµããã¿ã€ãã³ã°ãã¿ã¯ããã£ãŠãçŽãã¯ãã¿ã§åãããããããã1 mã®çåãäœã£ãŠãããããããŸããã
- çŽãå ¥ã£ãŠãããã©ãããæç¥ããã»ã³ãµãŒã¯ãå°å·å¹ ã®äžç®æãããããŸãããçŽå¹ ã¬ã€ããäžçªå³ã«å¯ããŠçãããæã®ãå·Šã®ã¬ã€ãããå°ãå³åŽã§ããçŽéãããŒã©ãŒããã®äœçœ®ã«ãããããŸããã38 mmå¹ ãšã45 mmå¹ ã®ããŒã«çŽã䜿ãå Žåãéåžžã®å°å·ã®ããã«å³å¯ãã§çšçŽãã»ãããããšãã»ã³ãµãŒãæç¥ã§ãããããŒã©ãŒãçŽãåãŸããå°å·ãã¯ããŸããŸãããçŽå¹ ã¬ã€ããäžçªçãããäžã§ãå·ŠåŽã®ã¬ã€ãã«æ²¿ãããŠããŒã«çŽãå ¥ãããšãã¡ãããšæ€ç¥ããããã§ãã
- å éšã®ããŒã©ãŒé¡ãå¹ ã®åºãçŽã«ããããŠãŸã°ãã«ä»ããŠããããã38 mmã45 mmã®èæã®ããŒã«çŽã䜿ããšãããŒã©ãŒããè±ç·ããŠçŽãèè¡ããããšããããŸããå éšã®ããŒã©ãŒã®äœçœ®ãèæ ®ããªãããçŽãããããå Žæã決ããŠäžãããç§ã¯çŽã®èè¡ãé²ããçŽã«ãã³ã·ã§ã³ãäžããããã®ã¬ã€ããçŽå·¥äœã§èªäœããŸããã
- ããŒã«çŽã¯20å·»ã§2000åãããã§æã«å ¥ããŸãïŒ
- ããè·å Žã«ãã¹ã¿ãŒããªã³ã¿ãããã°ãå¹ 1 mã®çåç¶ã®çŽã¯ãããã§ããŽãã«ãªã£ãŠãããšæããŸãããããããã£ãŠãããšãéåžžã«é®®æãªåè»åçãå°å·ã§ããŸãã
- çœé»ã§ãããã°ãæç±ããªã³ã¿ã§å°å·ãããšããæããããŸãããŸããããã©ã§å°å·ããã°ãé·ãã·ãŒã«ãäœããŸãã
ãã®ä»ã®ã¢ããã€ã¹
- æãå Žæã§æ®åœ±ããå Žåã¯ãISOæ床ã倧ãããããªã©ããŠãã·ã£ãã¿ãŒã¹ããŒããã§ããã ãçãããŠäžããã
- èŠéã«çªç¶é«éã§å ¥ã£ãŠããåè»ã«å¯ŸãããªãŒããã©ãŒã«ã¹ã¯ããŸãäžæãåããªãããã§ãããããããç·è·¯ãªã©ã§åçŠããŠåºå®ããŠãããŸããããæããããããããåºå®ããŠãããŸãããã
- é«éã§åããã®ãã暪äœçœ®(ã©ã³ãã¹ã±ãŒã)ã§æ®åœ±ãããšãåããŠãããã®ã ããåŸããŠããŸãããšããããŸã(ããŒãªã³ã°ã·ã£ãã¿ãŒçŸè±¡)ã解å床ããããããã«ãã瞊äœçœ®(ããŒãã¬ãŒã)ã§æ®åœ±ããŸãããã
- è»äœã«åœ±ããã€ãããŸãªãããã«ããŸããããæ¥åã§æ®åœ±ããå Žåã¯ãéå ã§æ®åœ±ããã»ãããè»äœäžã«åœ±ãã§ããªããŠããããã§ãã
- å€äœæ€ç¥çªã®ç¯å²å ã«åœ±ãåå°ããããšãTrainScannerã¯åããæ€ç¥ããããªãããšããããŸããç¹æ¥åè»ã®ããã«ãã«ãã«ã®ããã£ã¯ãã£ããã§ãã
- å€äœæ€ç¥çªã¯ãåè»å šäœãã«ããŒããå¿ èŠã¯ãããŸãããç¹æ¥åè»ãªã©ã§ã¯ãã€ãã€ããªããã£ã«æ ãããã èæ¯ãæ€ç¥ããŠããŸãå ŽåããããŸããã貚ç©åè»ã§ã¯ã³ã³ãããèŒã£ãŠããªã貚è»ã®ãšããã§åããèŠå€±ããŸããå°è»ã®ããã«è€éãªæ§é ãããéšåã®ã»ããããŸãæ€ç¥ã§ãããšæããŸãã
- å€äœæ€ç¥çªã®å¹ ã¯åºããã°åºãã»ã©è¯ãã®ã§ããã次ã®ã³ãã®ç §åé åãç»é¢å€ã«ã¯ã¿ã§ãªãããã«ããŠäžãããå ·äœçã«ã¯ãäŸãã°å·Šã«åãã£ãŠããåè»ã®å€äœæ€ç¥çªã¯ãããŸãå³ã®ç«¯ãããããŸã§ã²ãããªãã§ããã空éããããŠäžããã
ã³ãã³ãã©ã€ã³ããã®å©çš
2020-7-15 æè¿ç¢ºèªããŠããŸãããåããã©ããä¿èšŒã§ããŸãã
TrainScanner.app
ã¯ãpass1.py
ãšstitch.py
ãšãã2ã€ã®ããã°ã©ã ãåŒã³ã ãããã®ã©ãããŒã§ããããã®ããã°ã©ã ã¯åç¬ã§ãåäœããŸããåè»ã®ç§»åéã®æ€åºãããŸããããªãã£ãå Žåãªã©ãæçŽããããå Žåã«ã¯ãtsconf
ãã¡ã€ã«ãštspos
ãã¡ã€ã«ãæã§ä¿®æ£ããŠãããè¯ãçµæãåŸãããšãã§ããŸãã
ããããã®ã³ãã³ãã«ã¯å€æ°ã®ãªãã·ã§ã³ããããŸãã-h
ãªãã·ã§ã³ãä»ããŠã䜿ãæ¹ãèŠãŠäžãããã»ãšãã©ã®ãªãã·ã§ã³ã¯trainscanner_gui.py
(ã¢ããªã±ãŒã·ã§ã³åã¯TrainScanner.app
, TrainScanner.exe
)äžã§æå®ã§ããŸãã®ã§ãã°ã©ãã£ãã¯è¡šç€ºãã§ããç°å¢ã§ããã°ãGUIã䜿ãããšããå§ãããŸãããã ããtsconf
ãã¡ã€ã«ãštspos
ãã¡ã€ã«ãæã§ä¿®æ£ããå Žåã¯stitch.py
ã䜿ããããªããããããŸããã
trainscanner_pass1
: ç
§åããã°ã©ã
ãããªãèªã¿ãã¿ãåè»ã®ç§»åãæ€åºãã移åéã.tspos
ãšããååã®ãã¡ã€ã«ã«åºåããŸãã
trainscanner_pass1 video.mov
trainscanner_stitch
: çµåããã°ã©ã
pass1.pyã®åºåã«åŸããæ åãé£çµããŠ1æã®å€§ããªåçãäœããŸããéåžžã¯ã以äžã®ããã«ãpass1.pyãåºåãã.tsconf
ãã¡ã€ã«ãèªã¿ããã§äœ¿çšããŸãã
trainscanner_stitch @video.mov.12345.tsconf
@
ããŒã¯ã¯ãã³ãã³ãã©ã€ã³ãªãã·ã§ã³ããã¡ã€ã«ããã€ã³ã¯ã«ãŒãããããšãæå³ããŸãããã®åŸãã«ãããã«ãªãã·ã§ã³ãè¿œå ããããšã§ãã¹ãªããäœçœ®ããã¬ãŒã éã®ãŒããå¹
ã調ç¯ã§ããŸããäŸãã°ãããšããã¹ãªããäœçœ®ãšå¹
ããããã220ãš1.5ã«å€ãããå Žåã¯ã
trainscanner_stitch @video.mov.12345.tsconf -s 220 -w 1.5
ã®ããã«ããŸããGUIã䜿ãå Žåã«ã¯ãèšå®ãå€ãã床ã«pass1.pyãå®è¡ããããããŸããããstitch.pyãçŽæ¥äœ¿ãã°ããããã°ããçµæãåŸãããŸãã
trainscanner
: çµ±åãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹
trainscanner_pass1
ãštrainscanner_stitch
ãçµ±åãããªãã·ã§ã³ã察話çã«èšå®ã§ããUIãåããTrainScannerã®æ¬äœã§ããWindowsã®exeãã¡ã€ã«ãmacOSã®Appã¯ãããããã±ãŒãžåãããã®ã§ãã
helicify
: é·ãç»åããããã«ããããŒã«
é·ãç»åããå®åçšçŽã«å ¥ãããã«ãåçã«å·»ããããã°ã©ã ã§ãã
helicify longimage.png
rectify
: é·ãç»åããããã«ããããŒã«2
é·ãç»åããå®åçšçŽã«å ¥ãããã«ãåçã«å·»ããããã°ã©ã ã§ãããã¡ãã¯ãç»åããªãªãã«ãªããªã代ãããåçãã®ãã¥ãããæã«ãããå¿ èŠããããŸãã
rectify longimage.png
filmify
: é·ãåçããã£ã«ã 颚ã«ããããŒã«
é·ãåçã®äžäžã«ãã£ã«ã 颚ã®ç©Žãè¿œå ããã ãã®ããŒã«ã§ãã
filmify longimage.png
ts_converter
: ç»åå å·¥ããŒã«ã®ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹
äžã®3ã€ã®ããã°ã©ã ãããã©ãã°ã¢ã³ãããããã§æäœã§ããããã«ããã ãã®ãã®ã§ãã
###shakereduction.py
: ææ¯ãè£æ£ (è©Šéšäž)
TrainScannerãšããªãããã¿ã䜿ã£ãŠïŒãããªã®ææ¯ããé€ãããŒã«ã§ãïŒåè»ã®å Žæã§ã¯ãªãïŒèæ¯ã®äžåºç»ã--focus
ãªãã·ã§ã³ã§éžã¶ãšïŒãã®éšåãåããªããªãããã«ïŒåã³ãã瞊暪ã«ããããããã ãŒããŒãäœæããŸãïŒ
./shakereduction.py -f L R T B -S skipframes filename.mov
ä»ã®ãšããã³ãã³ãã©ã€ã³ã§ã®å©çšã®ã¿ã§ãïŒææ¯ãã ãã§ãªãïŒããšãã°æ±ã«åºå®ããŠæ®åœ±ãããã©ïŒåè»ã®æ¯åã§ãã£ããæ±ãæºããå Žå(ãã®å ŽåïŒãã£ãã倧ããªå é床ãå ããã®ã§ïŒææ¯ããããå®ã¯ä¿®æ£ã倧å€ã§ã)ã«ã䜿ããŸãïŒ
TrainScannerã¯åºæ¬çã«äžèã§ã®æ®åœ±ãåæãšããŠããŸãïŒshakereduction.py
ã䜿ã£ãŠãïŒæ°Žå¹³ãåŸãããããå ŽåãŸã§ã¯å¯Ÿå¿ã§ããŸããïŒ
çŸåšããã£ãŠããåé¡ç¹
- seekãé ãïŒOpenCVã«ã¯ãããªãæ©éãããæ©èœããããŸããïŒãããå šãä¿¡é Œã§ããªãã®ã§ïŒé ããæ¯å1ã³ããã€èªã¿ããã§ããŸãïŒ
å éšåäœ(ã¢ã«ãŽãªãºã )
TrainScannerã§ã¯ïŒãããªãã¬ãŒã éã®åè»ã®ç§»åè·é¢ãæ±ããã®ã«ïŒåçŽãªæ¯èŒãè¡ã£ãŠããŸãïŒOpenCVã䜿çšããŠã¯ããã®ã§ããïŒä»¥äžã®çç±ã«ããïŒç¹åŸŽç¹æœåºãªã©ã®é«åºŠãªææ³ã¯äœ¿ã£ãŠããŸããïŒ
- ç¹åŸŽç¹ã§æ¯èŒãããšïŒãšãã©ãç §åã®å€±æãèµ·ãããŸãïŒç¹ã«ïŒäžã«æžããããã«ïŒåè»ã®è¡šé¢ã«åœ±ãåãããã§ãããïŒçªãè»äœãåå°ããå Žåã«ã¯ïŒå€±æããå¯èœæ§ãé«ãŸããŸãïŒ
- åè»ã¯ã»ãŒäžå®é床ã§èµ°ã£ãŠããŠïŒå éãæžéãã»ãšãã©ãªãã®ã§ïŒæ¬¡ã®ãã¬ãŒã ã§ã®ç§»åã極ããŠæ£ç¢ºã«äºæž¬ã§ãïŒãã®çµæç §åããç¯å²ããããããŸã§çããããŸãïŒãã®ããïŒåçŽãªç §åãè¡ã£ãŠãïŒåŠçæéã¯ãããããã§ãã¿ãŸãïŒç §åã¯ãããããæå®ãããæ ã®äžã ãã§è¡ãã®ã§ïŒåçã倧ãããŠãåŠçã¯è»œãã§ãïŒ
OSã«ããéã
TrainScannerã¯äž»ã«MacOSã§éçºãããŠãããã»ãã®OSã§äœ¿ãå Žåã«ã¯è¥å¹²éã£ãåäœãããå¯èœæ§ããããŸãã(ããªãã®éšåã¯AnacondaãåžåããŠãããã®ã§å©ãããŸãã)
Linux
Linux (Ubuntu)ã§ã¯ãAnacondaããã€ã³ã¹ããŒã«ãããOpenCV3ã«ããããªãã³ãŒããå«ãŸããŠããªããããããããªã®åã蟌ã¿ãã§ããªãã®ã§ãèªã¿èŸŒã¿éšåã ãsk-videoãå©çšããŠããŸãããã ãsk-videoã®video readerã«ã¯ã³ããé£ã°ãæ©èœããªããããèªã¿é£ã°ãå Žåã«ããã¬ãŒã ããŸããŸãèªã¿èŸŒãããšã«ãªããããªãé床ãé ãããã§ãã
Video readerã®éãã¯video.pyã§åžåããŠããŸãã®ã§ãå°æ¥ããè¯ããããªãã³ãŒãã䜿ããããã«ãªã£ãããéæå·®ãæ¿ããŠããäºå®ã§ãã
Windows
Python3.6ã§ã¯æ£åžžåäœããªãã®ã§ãä»ã®ãšããã©ã®OSã§ãPython3.5ãæå®ããŠããŸãã
Raspberry PIã§ã®äœ¿çš
ã«ã¡ã©ã®è§£å床ãäœãã«ããã°ãRPiã®åŠçèœåã§ãããªãã®é床ã§åŠçã§ããã¯ãã§ãããã ããã¡ã¢ãªäžè¶³ãæ·±å»ã§ãããããTrainScannerã®åŠçã®ãªãã§äžçªã¡ã¢ãªãå¿
èŠãšããã®ã¯ãstitch.py
ã®è¡ã£ãŠãããäžæã®å€§ããªåçãäœãããã»ã¹ã§ããåççã«ã倧ããªç»åå
šäœãéå§çž®ã®ãŸãŸäžæŠã¡ã¢ãªã«å
¥ããªãéãããã®å€§ããã®åçãäœããªãããã§ãããã®åé¡ãåé¿ããããã«ãå°ããªåçã®æçã§ããããªåçãè¡šçŸããç»åãã©ãŒããããèšèšããã€ããã§ããâtiledimageã補äœããŸããã
Flickr
ã§ããåçã®æçš¿å ã«è¿·ã£ããFlickrã®TrainScannerã°ã«ãŒãã«ã©ããïŒ
Revision History
- 2020-07-15 0.12.0 æŸã£ãŠããããšããåããªããªã£ãã®ã§ãããããæçŽãããŸããã
- 2017-08-17 Version 0.11.3 å±¥æŽãæ®ãã®ãå¿ããŠããŸãããAnacondaã«ãããã察å¿ã§ããæãã
- 2016-12-05 Version 0.7.1 Macçšã¢ããªã±ãŒã·ã§ã³ãäœããªããããWindowsã¯PyQt5ãå ¥ããå¿ èŠããã
- 2016-12-03 OMMFã«ãŠå±ç€ºããŸããïŒ
- 2016-11-24 Version 0.4: Windowsã§ã®åäœãšexeãã¡ã€ã«ã®çæã
- 2016-11-19 Version 0.2: èšå®ãã¡ã€ã«ãåŒãã€ããããã«ããïŒãªãã·ã§ã³ã®åãæ±ããæ¹åããïŒèšå®ãã¡ã€ã«ã®åºåã®ããããå€æŽããïŒãªã©ãªã©ïŒ
- 2016-11-11 GUI Version 0.1 is released.
TrainScannerã®éçºã¯2009幎ã«ã¯ããŸããŸããã
ã¹ãªããã¹ãã£ã³ã«ããåè»ã®æ®åœ±ã¯ãçžåœæã«ããã®ãŒããšæãã®ã§ãããæ å ±ãèŠä»ããããšãã§ããŸããã§ãããæ¥æ¬ã§ãããã£ã«ã ãäžå®éã§å·»ããããç¹æ®ãªè£ 眮ãçµã¿ã€ããã«ã¡ã©ã§ãåè»ã®åçãäœã£ãŠããæ¹ãããã£ããããŸãããããããã£ã«ã ã«ã¡ã©ã®å Žåãåè»ã®é床ããããããç¥ã£ãŠããã£ã«ã ããã®é床ã«å®å šã«åæãããªããã°ãåè»ã䌞ã³ããçž®ãã ãããŠããŸããŸããæ®åœ±ã«ã¯çžåœãªèŠåŽãšçµéšãå¿ èŠã§ãã£ãã ãããšæããŸãã
äžæ¹ã§ãã¹ãªããã¹ãã£ã³ã¯ãåè»ã®æ®åœ±ã ãã§ãªããããããªãã®ãããããšããã©ã«ã¡ããŠæ®åœ±ããææ³ãšããŠäœ¿ãããŠããŸããããŸãããªãªã³ããã¯ã競銬ãªã©ã§ãå°çé ãåçå€å®ããå Žåã«ã䜿ãããŸãããããã®çšæ³ã§ã¯ãç»åãæªãã®ã¯ããããŸãã®ããšã§ãã¹ãªããã¹ãã£ã³ã§æªãŸãªãããã«æ®åœ±ãããšããçºæ³ã¯ããŸããªãã£ãããã«æããŸãã
TrainScannerã¯ãã¹ãªããã¹ãã£ã³ã«ç»ååŠçæè¡ãå ããåè»ã®é床ãå€åããããã«ã¡ã©ãå€å°åããŠããåè»ã®å§¿ãå¯èœãªéãå¿ å®ã«åçŸããããšãç®æšãšããŠããŸãããŸããç¹æ®ãªè£ åããªããŠããäŸãã°ã¹ããã§ããã«ã¡ã©ã®ã¶ãããããããããã°ã誰ã§ãé·ãŒãåçãäœããããã«ãªããŸãã
Memo/Reference
- Python3 with OpenCV3; downloading HEAD of openCV3 takes VERY long time.
- Windows/Python3/OpenCV3/PyQt4/Anaconda
- failed to build exe on Windows?
- Flickr account for TrainScanner development: TrainScanner