
ãé åžãnoteçšã«åç»ãGIFã«å€æããŠéãããå ¥ããããŒã«ãäœã£ã ïœPython x OpenCV x Pillow ç»é¢é²ç»ã貌ãä»ããŠå¿«é©èšäºäœæïœ
ããã«ã¡ã¯Rcatã§ãã
ããã°ã©ãã³ã°ã«é¢ããèšäºã§ã¯ãããŸãæ°ã«ãªããªãã£ãã®ã§ããã3Dããªã³ã¿ãŒã®è©±ãæžãå§ããç¬éã鿢ç»ã ãã ãšããã¥ãããªãšããããšã«æ°ã¥ããŸããã
åç»ãYouTubeã«ã¢ããããŒãããŠããªã³ã¯ã貌ãã®ã§ããããããããŸããããéä¿¡éãããããŸãããã¢ããããŒããæå€ãšæéã§ãã
ããããç»åã«ãã¢ãã¡ãŒã·ã§ã³ãããã®ããããŸããããããGIFã§ãã
ãšããããã§ä»åã¯ãç»é¢é²ç»ãGIFã«å€æããã€ãã§ã«èªåã®èäœæš©è¡šèšãæžã蟌ããšããããšããã£ãŠããããšæããŸãã
âå®è¡çµæ(æ¬äœã®äœ¿ãæ¹)
ãã®ããã«ç»åãšããŠèªã¿èŸŒãŸãããäžå€®ã«èäœæš©è¡šèšãåã蟌ãŸããã

äœ¿ãæ¹
ãŸããæåã«æ¬ããŒã«ã®äœ¿ãæ¹ã玹ä»ããŸãã
é
åžã¯äžçªäžã§è¡ã£ãŠããã®ã§ãããããååŸããŠãã ããã
æåã®ã¹ãããã¯Pythonã®ã€ã³ã¹ããŒã«ã§ãã
åããŠã®æ¹ã¯ä»¥äžã®èšäºãåèã«ã€ã³ã¹ããŒã«ããŠãã ããã
é åžããŒã¿ã®ç¢ºèª
ã€ã³ã¹ããŒã«ãå®äºãããšé åžããããŒã¿ã®ãã¡pyãšãããã¡ã€ã«ãPythonã®ã¢ã€ã³ã³ã«å€ãããŸãã

å®è¡ç°å¢ã®æ§ç¯
ã€ã³ã¹ããŒã«ãããstartãšããååã®æ¯è»ããŒã¯ãããã«ã¯ãªãã¯ããŠãã ããã
ãã°ããé»ãç»é¢ãèµ·åããŠèœã¡ããšæããŸãã
æ¬äœã¯èªåç°å¢æ§ç¯å¯Ÿå¿ãªã®ã§ãããã§ç°å¢ãæ§ç¯ãããŸãã
é»ãç»é¢ãéãããšããŒã¿ã«å€åããããŸãã
ãŸãVENVãšãããã©ã«ããåºæ¥äžãã£ãŠããŸãããããŠMP4Togifãšããååã®ãã¡ã€ã«ãåºæ¥äžãã£ãŠããŸãããã®ãã¡"mp4togif.json"ãéããŠã¿ãŸãããã

èšå®ãã¡ã€ã«ã®å€æŽ
Windowsã®ã¡ã¢åž³ã§éããšãããªæããããã¯èšå®ãã¡ã€ã«ã§ããçŸåšã¯ããã©ã«ãã®èšå®ãå ¥ã£ãŠããŸããããããå人å人ã§å¥œããªããã«æžãæããŠãã ããã

FPS
GIFãã¡ã€ã«ã®1ç§ãããã®ã³ãæ°ãèšå®ããŸãã
å¢ãããšæ»ããã«åããŸãããµã€ãºã倧ãããªãã®ã§ãå¢ãããããªãããã«ããããšãããããããŸããwatermark
é»åéãããå ¥ããŸãã
䜿ããªãå Žåã¯æåãæ¶ããŠââã«ããŠãããŠãã ãããå€åæ¥æ¬èªã¯äœ¿ããªãã§ããsize
ç»åã®ãµã€ãºã§ãã瞊暪ãçŽæ¥æå®ããããçæ¹ã ããæå®ããããäžå®ç¯å²å ã«åãŸãããã«ãããã§ããŸããçŽæ¥æå®ããå Žå
[1920,1080]ãã®ãããªæžãæ¹ã®å Žåã¯ããã®ãµã€ãºã«ãªãããã«ç»åããªãµã€ãºãããŸããçæ¹ã-1ã«ãã
[500,-1]ãã®ãããªæžãæ¹ã®å Žåã¯ãæ°å€ãå ¥ã£ãŠãã蟺ã®ãµã€ãºãåªå ãããŸãããã®å Žå暪500瞊???ã§ããçæ¹ã0ã«ãã
[500,0]ãã®ãããªæžãæ¹ã®å Žåãé·ãæ¹ã®ç·šãŸãã¯çãæ¹ã®èŸºãåªå ãããŸãã[ç蟺,é·èŸº]ãäŸã®å Žåã¯çãæ¹ã®èŸºã500ã«ãªãããã«ãªãµã€ãºãããŸããäž¡æ¹ããã€ãã¹ã«ãã
[-1000,-1000]ããã©ã«ãã§ãããã®æ å ã«åãŸãããã«ãªãµã€ãºãããŸãã
color
é»åéããã®æåã®è²ãRGBã§æå®ããŸãã
æ°å€ã¯0ãã255ãŸã§ã®éã§ãã[255,0,0]ãã®å Žåã¯çã£èµ€ã«ãªããŸããopacity
äžéæåºŠãæå®ããŸããå€ãå°ããã»ã©ééããŸããfontsize
æåã®å€§ãããæå®ããŸããç»åã®é«ãæ¹åã«å¯ŸããŠããŒã»ã³ããŒãžã§æå®ã§ããŸãããã®èšå®ã¯%ãšå ¥åããå¿ èŠããããŸããposition
æåã®äœçœ®ã§ããããŒã»ã³ããŒãžã§æå®ããŸãã
æ£ã®å€ã®å Žåã¯å·Šãããè² ã®å€ã®å Žåã¯å³ããã100以äžã®å Žåã¯äžå€®ã«æ¥ãããã«èª¿æŽãããŸããããã©ã«ãã¯çãäžã§ãã
ããã©ã«ãã®èšå®ã§ã¯ãç»åã¯çžŠæšªã©ã¡ããã1000ãã¯ã»ã«ä»¥äžã«ãªãããã«ãªãµã€ãºãããç°è²ã®æååã§ééç70%ã§ãã©ã³ããµã€ãºãé«ãæ¹å10%äžå€®ã§rcatã®èäœæš©è¡šèšãå
¥ããŸãã
é·ãã§ããâŠã
èšå®ãã¡ã€ã«ã®æžãæ¹ãééããŠããŸããèµ·åã§ããªããªã£ãå Žåã¯äžæŠåé€ããã°ããã©ã«ãã§ãŸãåºãŠããŸãã
å®è¡æ¹æ³
èšå®ãšç°å¢æ§ç¯ãçµãã£ãã倿ãããåç»ãstart.batã«ãã©ãã°ã¢ã³ãããããããŠãã ããã
æ£åžžã«ç°å¢æ§ç¯ãšèšå®ãè¡ãããŠããã°ãé»ãç»é¢ãç«ã¡äžãããã°ãããããšåç»ããã£ããã©ã«ãã®äžã«GIFãã¡ã€ã«ãåãååã§äœæãããŠããŸãã

åºæ¥äžãã£ãGIFãã¡ã€ã«ã®ãµã€ãºã«ã€ããŠã¯ã倧äœ3mbçšåºŠãnoteã«ã¢ããããŒãã§ããéçã¿ããã§ããäœåºŠããã£ãŠã¿ãŠå€±æãããããªããµã€ãºãå°ãããªãããã«ç»åã®ãµã€ãºãå€ããããFPSãäžãããããŸããããããŸãããã
FAQ
pillowã§ãšã©ãŒãåºãŸã
ä»å±ã®ç°å¢æ§ç¯ããããã䜿ã£ãŠç°å¢ãæ§ç¯ããŸãããïŒ
æ¬äœã¯pillowã®ããŒãžã§ã³9çªå°ã䜿ã£ãŠããŸããææ°ã®ããŒãžã§ã³ã®ã©ã€ãã©ãªã§ã¯åããŸããã
ããŸã Windowsã§ã®ç»é¢é²ç»æ¹æ³
ä»åã®èšäºã§ã玹ä»ããŠããããŒã«ã䜿ã£ãŠåç»ã倿ããŠããŸããããããããã®åç»ã©ããã£ãŠæ®ã£ãã®ïŒã£ãŠãã話ã§ãã
Windows11çŸåšãæ¹æ³ã¯2ã€ãããŸãã
ãŠã£ã³ããŠããã£ããã£ããå Žå
Win + Alt + RÂ ãæŒããšå³åº§ã«é²ç»ãéå§ãããŸãã
ç»é¢ã«å°ããé²ç»äžã®ãŠã£ã³ããŠãåºãŠããã®ã§ãçµäºæã¯ãã®ãã¿ã³ãæŒããŸãã

ãããèµ·åããªãå Žåã¯Win + GãæŒããŠã²ãŒã ããŒã«ããŒãéããŠé²ç»ãèµ·åã§ããã確èªããŠãã ããã

ä¿åå ã¯ãã€ãããªã®ãã£ããã£ã§ãã
æå®ç¯å²ããã£ããã£ããå Žå
Win + Shift + RÂ ãæŒããšã¹ã¯ãªãŒã³ã·ã§ããã¿ããã«ç»é¢ãæããªãç¯å²éžæãã§ããããã«ãªããŸãã
ç¯å²ãéžæãããšç»é¢äžã«ã¹ã¿ãŒããã¿ã³ãåºãŠããã®ã§ããã®ãã¿ã³ãæŒãããšã§é²ç»ãã§ããŸãã
ä¿åå ã¯ãã€ãããªã®ç»é¢é²ç»ã§ãã
ã©ã¡ãã®æ¹æ³ã䜿çšããŠãæ¬ããŒã«ã§ç»åã«å€æã§ããããšã¯ç¢ºèªæžã¿ã§ãã
解説
ããããã¯å©çšè
ãšãããããã¯ããã°ã©ãã³ã°é¢ä¿ã®ãã¿ãèŠãŠãããŠããæ¹åãã§ãã
䜿ãããã ãã®æ¹ã¯äžçªæåŸãŸã§ã¹ãããããŠãã ããã
ä»åã¯ãããŸã§è€éã§ã¯ãªãã®ã§ãããçšåºŠã解説ããŸãã
å šäœå
ã¡ã€ã³ã®ãœãŒã¹ã³ãŒãã¯ç»å1æã«åãŸããŸããã
å¥ã§äœã£ã颿°ã¯å
¥ã£ãŠããŸãããâŠã

ãŸããæåã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹éšåã«ã€ããŠã¯ãèšå®ãã¡ã€ã«ã®èªã¿èŸŒã¿ãããã©ã«ãã®èšå®ã®åºåãªã©ãè¡ã£ãŠããã ãã§ãã
ããšãè²ã ãã¯ã¿ãã«ã«ããŠãããªããšããã°ã©ã ã®éœåäžãšã©ãŒãåºãã®ã§ã¿ãã«ã«å€æããŠããŸãã
èªã¿èŸŒã¿ãšå€æéšå
äžçªå€§äºãªã®ã¯ãã£ã±ããã§ãããã
ããã§ã¯ãããªãèªã¿èŸŒã¿ãªããå¿
èŠãªãã¬ãŒã ã ããpillowãªããžã§ã¯ãã«å€æããŠèªã¿èŸŒãã§ããŸãã
ããã°ã©ã ã®æžãæ¹çã«ã¯ããããªã®èªã¿èŸŒã¿ãšGIFã®å€æã¯åããããšããã§ããããã®æžãæ¹ã®æ¹ãé«éã§ã¡ã¢ãªæ¶è²»éãå°ãªãã®ã§ããããæžãæ¹ã«ãªã£ãŠããŸãã
å
·äœçã«ã¯åç»ã®ãã¬ãŒã ã¬ãŒããšGIFã®ãã¬ãŒã ã¬ãŒãã®å·®ããäœãã¬ãŒã ã«1ãã¬ãŒã æãåºããæ±ºå®ãããã®éãã«æãåºããŠããŸãã
æãåºããããã¬ãŒã ã¯pillowãªããžã§ã¯ãã«ã¯å€æããèšå®ã§å¿
èŠãããã°ãªãµã€ãºãšå°åãè¡ããŸãã
å
šãŠã®ç»åã®åŠçãçµãã£ããããã€ãéãGIFã®åºåæé ãèžãã§ããŸãã

ãããããŸãããã ãã§åç»ãGIFã«å€æã§ããŠããŸããªããŠãæ¬åœã«Pythonã¯çŽ æŽãããã§ããã
apngã®ã©ã€ãã©ãªãšããããã¿ãããªã®ã§ãLINEã¹ã¿ã³ã以å€èŠãããšãããŸããããapngãåºåã§ããã¿ããã§ããã©ã£ã¡ããããã§ããããã
ãªãµã€ãºãšå°åã«ã€ããŠã¯ãä»ã®ææäœåã§ã䜿ã£ãŠãããœãŒã¹ã䜿ãåããŠããã®ã§ãããŠã³ããŒãããŠã芧ãã ããã
æåŸã«
å©çšèŠçŽ
æ å ±ãäœåã®æŽ»çšæã¯äºåã«å©çšèŠçŽãã確èªãã ããã
ã³ã¡ã³ãã«ã€ããŠ
å©çšèŠçŽã®ã¬ã€ãã©ã€ã³ã確èªã®äžã³ã¡ã³ãããŠãã ãã
é åž
以äžã®URLããé åžããŠããŸãã
ããŠã³ããŒãã«å¿ èŠãªé åžæ å ±ã¯äžèšãã確èªãã ãã