ããã«ã¡ã¯ãCCCããŒã±ãã£ã³ã°æ ªåŒäŒç€Ÿ ããŒã¿ããŒã¹ããŒã±ãã£ã³ã°ç ç©¶æ æè¡éçºãŠãããã®ç¢æŸ€ã§ãã
ç§ãã¡ã®éšéã§ã¯ãAmazon Goã®ãããªã¹ããŒãã¹ãã¢ãå®çŸããããã®èŠçŽ æè¡ã«ã€ããŠç ç©¶ãããããã¿ã€ãã®éçºãé²ããŠããŸããä»åã¯ããã®äžã§ãç»ååŠçã®æè¡ã䜿ãããšã§ãã©ã®ãããªãœãªã¥ãŒã·ã§ã³ãå¯èœã«ãªããã玹ä»ããããšæããŸãã
ã¯ããã«
ã¹ããŒãã¹ãã¢ã§ã¬ã³ã¡ã³ãã売ãå Žã®æé©åãè¡ãéã«ã¯ãååãå®éã«è³Œå ¥ããã客ããã ãã§ãªããæ¥åºããããã©è³Œå ¥ããŠããªãã客ããïŒæœåšé¡§å®¢ïŒã®æ å ±ãéèŠãšãªããŸãã
åºèã«ã©ããªäººãæ¥åºããŠããã®ããåããã°ãããã«åãããŠåºé ãã£ã¹ãã¬ã€ã«è¡šç€ºããååãåºå ã§æµãBGMãåçã«å€ãããããåºã®å®¢å±€ã«åãããŠåæããæ£å²ãèãããããããšãã§ããããã«ãªããŸãã ååè³Œå ¥è ã®æ å ±ã¯ããã€ã³ãã«ãŒããªã©ã§ID-POSããŒã¿ãšããŠåéã§ããŸãããéè³Œå ¥è ã®æ å ±ã¯ããã«ã¯å«ãŸããªããããã«ã¡ã©ãªã©ã®ä»ã®ææ®µã§ååŸããå¿ èŠããããŸãã
ããã§ä»åã¯ãåºèã«é²ç¯ã«ã¡ã©ãèšçœ®ãããŠããããšãæ³å®ããã«ã¡ã©ç»åããæ¥åºè ã®æ§å¹Žä»£ããã¡ãã·ã§ã³ã¹ã¿ã€ã«ãå€å®ããæ¹æ³ã玹ä»ããŸããé²ç¯ã«ã¡ã©ã®ç»åãæŽ»çšããããšã§ãç¹å¥ãªæ©åšãªã©ãèšçœ®ããªããŠãç°¡åã«æ¥åºè ã®å±æ§æ å ±ãåéããããŒã±ãã£ã³ã°ã«æŽ»çšããããšãã§ããããã«ãªããŸãã
å šäœæ§æ
ã«ã¡ã©ç»åã®ååŸããæ¥åºè ã®å±æ§æšå®ãæšå®çµæã®éä¿¡ãŸã§ã®äžé£ã®æµãã¯ã以äžã®ããã«ãªããŸãã
åºèã®å ¥å£ãå忣ãªã©ã«æ¥åºè ãè¿ã¥ããšãåšå²ã«èšçœ®ãããé²ç¯ã«ã¡ã©ã«ãã£ãŠæ®åœ±ãè¡ãããåæçšã®ãµãŒããŒã«ç»åãéãããŸãã åæãµãŒããŒã§ã¯ãéä¿¡ãããã«ã¡ã©ç»åãå ã«ãæ¥åºè ã®å±æ§ãæšå®ããŸãã é²ç¯ã«ã¡ã©ã§é¡ãæ®åœ±å¯èœãªå Žåã¯ãAzure Face APIãšãããµãŒãã¹ã«ãã£ãŠã人ç©ã®æ§å¹Žä»£ãªã©ãå€å®ããããšãã§ããŸãã
é²ç¯ã«ã¡ã©ã®èšçœ®å Žæã«ãã£ãŠã¯ãæ¥åºè ã®åŸãå§¿ãªã©ããæ®åœ±ããããšãã§ãããé¡ãã屿§ãæšå®ã§ããªãå ŽåããããŸãã ãã®ãããªå Žåã¯ããããããåŠç¿ããŠãããç»ååé¡ã¢ãã«ãå©çšããŠãæè£ ãããã®äººã®æ§å¹Žä»£ãšãã¡ãã·ã§ã³ã¹ã¿ã€ã«ãå€å®ããŸãã
ãã®ãšãã察象è 以å€ã®äººç©ãèæ¯ãåã蟌ãã§ãããšäºæž¬ç²ŸåºŠãäžãã£ãŠããŸããããã»ãã³ãã£ãã¯ã»ã°ã¡ã³ããŒã·ã§ã³ãšåŒã°ããæè¡ã䜿ã£ãŠã察象人ç©ã®ç¹å®ãšèæ¯ã®ãã¹ãã³ã°ãè¡ããŸãã
ç¡äºã«å±æ§ãå€å®ãããããNode-REDãšMicrosoft Teamsã«çµæãéãããšã§ãçŽè¿ã®æ¥åºè ã®æ å ±ãåœæ¥ã®çµ±èšæ å ±ãªã©ãå¯èŠåã§ããããã«ãªããŸãã
以éã§ã¯ãå ·äœçã«åã¹ãããã§è¡ãªã£ãŠããããšã®è©³çްã説æããŠãããŸãã
é²ç¯ã«ã¡ã©ã§ã®ç»åæ®åœ±
ãŸãã¯ãé²ç¯ã«ã¡ã©ã§æ¥åºè ã®é¡ãæè£ ãæ®åœ±ãããµãŒããŒã«ç»åãéããããã«ããŸããä»åã¯ãäžè¬çãªé²ç¯ã«ã¡ã©ãè³Œå ¥ãã瀟å ã®ãèå売ãå Žã«èšçœ®ããŠå®éšãè¡ããŸããã
è³Œå ¥ããã«ã¡ã©ã¯ãCtronics瀟ã®ä»¥äžã®ååã§ãã
æ¬ã«ã¡ã©ã«ã¯åäœæ€ç¥æ©èœãä»ããŠããã人ãªã©ã®ç©äœã®åããæ€åºããŠãèªåã§ç»åãæ®åœ±ããããšãã§ããŸããå®éã«ã«ã¡ã©ãèšçœ®ããŠåäœæ€ç¥æ©èœããªã³ã«ããŠã¿ããšãããäººãæ¥ããšãã«ç»åãæ®åœ±ãããããšã確èªã§ããŸããïŒããŸã«èª€æ€ç¥ãæ€åºæŒããããããšããããŸããã»ã»ã»ïŒã
ãã®ãããªæ©èœãä»ããŠããªãæ®éã®ã«ã¡ã©ã®å Žåã§ããããã°ã©ã åŽã§åäœæ€ç¥ãäººç©æ€åºãè¡ãããšã§ãæ¥åºè ãããå Žåã®ã¿å€å®åŠçãè¡ãããšãå¯èœã§ãã
ãŸããäžèšã®ã«ã¡ã©ã¯æç·ãšç¡ç·ã®äž¡æ¹ã®ãããã¯ãŒã¯ã«å¯Ÿå¿ããŠããŸãããä»åã¯ç€Ÿå ãããã¯ãŒã¯ã䜿çšããéœåäžãLANã±ãŒãã«ãæ¥ç¶ããŠæç·ã§ãµãŒããŒã«ç»åãéä¿¡ããããã«ããŸãããç©ççãªæ¥ç¶ãå®äºããããã«ã¡ã©å°çšã®ãã©ãŠã¶ã¢ããªã䜿ã£ãŠããããã¯ãŒã¯ã¢ãã¬ã¹ãFTPãªã©ã®èšå®ãè¡ããŸãã
ããã§æ³šæç¹ãšããŠãç»åãåä¿¡ãããµãŒããŒåŽã§ããFTPéä¿¡ãæå¹åããå¿ èŠããããŸããä»å䜿çšãããµãŒããŒïŒLinux CentOS 7ïŒã§ã¯ã以äžã®ã³ãã³ãã§FTPãµãŒããŒçšã®ããã°ã©ã ãã€ã³ã¹ããŒã«ãå®è¡ããŸããã
sudo yum install vsftpd
sudo vsftpd
FTPã®éä¿¡æ¹æ³ã¯ãã¢ã¯ãã£ãã¢ãŒãïŒãµãŒããŒããã¯ã©ã€ã¢ã³ãã«æ¥ç¶ïŒãšããã·ãã¢ãŒãïŒã¯ã©ã€ã¢ã³ããããµãŒããŒã«æ¥ç¶ïŒã®2éãããããŸãããä»åã¯ä»¥äžã®å©ç¹ããã¢ã¯ãã£ãã¢ãŒããéžæããŸããã
- ã»ãã¥ãªãã£é¢ïŒç€Ÿå ãã瀟å€ãžã®æ¥ç¶ã®æ¹ãå®å š
- ãã¡ã€ã¢ãŠã©ãŒã«èšå®ã®æéïŒããŒã¿ã³ãã¯ã·ã§ã³çšã®ããŒãçªå·ã20, 21çªã«åºå®åãããŠãã
詳现ãªèšå®æ¹æ³ãªã©ã¯ã䜿çšããã«ã¡ã©ãã·ã¹ãã ç°å¢ã«ãã£ãŠç°ãªãããã岿ãããŠããã ããŸãã
åæãµãŒããŒã§ã®å±æ§æšå®
é²ç¯ã«ã¡ã©ã®èšå®ãå®äºããããåæãµãŒããŒäžã§ã«ã¡ã©ç»åãã屿§ãå€å®ã§ããããã«ããŸãã
ä»åã¯ã2å°ã®ã«ã¡ã©ã§æ¥åºè ã®é¡ãšæè£ ãããããæ®åœ±ããããã«ããŸãããéä¿¡ãããæè£ ç»åã®äŸã以äžã«ç€ºããŸãã
é¡ã«ããæ§å¹Žä»£æšå®
ã«ã¡ã©ç»åã«æ¥åºè ã®é¡ãåã£ãŠããå Žåã¯ãAzureã®Face APIã§å±æ§ãæšå®ããããšãã§ããŸãã
Face APIã¯ãAzure Cognitive Servicesã®å ã®äžã€ã§ã人ã®é¡ã®èªèã«ç¹åãããµãŒãã¹ã§ãã人ç©ã®ç»åãããé¡ã®äœçœ®æ€åºã屿§å€å®ãåäžäººç©ã®èå¥ã䌌ãé¡ã®æ€çŽ¢ãã°ã«ãŒãåãææ èªèãªã©ãè¡ãããšãã§ããŸãã
ãªã³ãã¬çãšã¯ã©ãŠãçããããŸãããä»åã¯URLã«ã¢ã¯ã»ã¹ããã ãã§ç°¡åã«å€å®ãè¡ãããšãã§ããã¯ã©ãŠãAPIã詊ããŸãããåŠçé床ããããŸã§å¿ èŠã§ãªãå Žåã¯ãFreeã€ã³ã¹ã¿ã³ã¹ã«ç»é²ããããšã§30,000ãã©ã³ã¶ã¯ã·ã§ã³/æ ãŸã§ã¯ç¡æã§äœ¿çšããããšãã§ããŸãã
Face APIã䜿ãã«ã¯ãAzureããŒã¿ã«ã§ãªãœãŒã¹ãäœæããå¿ èŠããããŸããããŒã¿ã«äžã§ããã€ãã®é ç®ãå ¥åã»éžæãããšãæ°åã§ãªãœãŒã¹äœæãå®äºããã¢ã¯ã»ã¹çšã®ããŒãçºè¡ãããã®ã§ãããã䜿çšããŠAPIãåŒã³åºããããã«ãªããŸãã
å€å®ã«æåãããšã以äžã®ãããªJSONããŒã¿ãè¿ãããŸãã
{
'faces': [{
'age': 28,
'gender': 'Male',
'faceRectangle': {
'left': 227,
'top': 284,
'width': 211,
'height': 211
}
}],
'requestId': 'dcf67d28-cf1a-4a72-b1f2-4877eca945d2',
'metadata': {'width': 683, 'height': 1024, 'format': 'Jpeg'}
}
ããŒã¿ã®å ãfacesãå€å®çµæãšãªã£ãŠããããã®äžã®gender, age, faceRectangleããŒã§æ§å¥ã幎代ãé¡ã®äœçœ®ãããããååŸã§ããŸãã
ç»åå ã«è€æ°ã®é¡ãå«ãŸããŠããå Žåãå人ç©ã®å€å®çµæãé åãšããŠè¿ã£ãŠããŸãããä»åã¯å忣ã®åã«ç«ã£ãŠããã客ããã®ã¿ã察象ãšãããã£ããããæãé¡ã®ãµã€ãºã倧ããå€å®çµæã䜿çšããããã«ããŸããã
ãŸãé¡ã1人ãåã£ãŠãªãå Žåããæ€åºãããé¡ã®ãµã€ãºãéŸå€ããå°ããå Žåã¯ã屿§å€å®åŠçãã¹ãããããããã«ããŸãã
äžèšã®ããŒã¿ããNode-REDãMicrosoft Teamsãªã©ã®å€éšãµãŒãã¹ã«éä¿¡ããããšã§ãæ¥åºè ã®å±æ§ãããèŠããã圢ã§å¯èŠåããããšãã§ããŸããå ·äœçãªéä¿¡æ¹æ³ã«ã€ããŠã¯ãåŸã»ã©èª¬æããŸãã
æè£ ã«ããæ§å¹Žä»£ããã¡ãã·ã§ã³ã¹ã¿ã€ã«æšå®
æ¥åºè ã®é¡ãã«ã¡ã©ã«åã£ãŠããªãå ŽåããåŠç¿æžã¿ã®ç»ååé¡ã¢ãã«ãå©çšããŠãæè£ ããæ§å¹Žä»£ãå€å®ããããšãã§ããŸãã
ãŸãããã¡ãã·ã§ã³ã®ã¹ã¿ã€ã«ïŒã«ãžã¥ã¢ã«ãã·ã³ãã«ãªã©ïŒãåé¡ããã¢ãã«ãåæ§ã«çšæããã°ãã客ããã®ãã¡ãã·ã§ã³ããŒã¿ãåéããããšãå¯èœã§ããããã§ã¯ã2å°ç®ã®é²ç¯ã«ã¡ã©ã§æ®åœ±ãããé¡ã®åã£ãŠããªãç»åã䜿ã£ãŠãæè£ ã«ãã屿§æšå®ã«ææŠããŠã¿ãããšæããŸãã
ç»ååé¡ã¢ãã«ã«ãã屿§æšå®
æè£ ãåºã«ããæ§å¹Žä»£ããã¡ãã·ã§ã³ã¹ã¿ã€ã«ã®å€å®ã§ã¯ãCNNãšåŒã°ãããã£ãŒãã©ãŒãã³ã°ã®ã¢ãã«ã䜿ã£ãŠç»åãåé¡ããŸãã
CNNã«ã€ããŠã¯ãäžè¬çãªç»åããŒã¿ã»ããïŒImageNet, CIFARãªã©ïŒã䜿ã£ãŠãããã¯ãŒã¯ã®ãã©ã¡ãŒã¿ãŒãåŠç¿ããã¢ãã«ãå ¬éãããŠãããããŒã¿ã»ããã«å«ãŸããŠããç©äœïŒåç©ãä¹ãç©ãªã©ïŒã§ããã°ãèªåã§åŠç¿ããªããŠããã®ãŸãŸäºæž¬ãè¡ãããšãã§ããŸãã
ããããæè£ ããæ§å¹Žä»£ããã¡ãã·ã§ã³ã¹ã¿ã€ã«ãå€å®ã§ããåŠç¿æžã¿ã¢ãã«ã¯èŠåœãããªãã£ããããä»åã¯ãããããåéãããã¡ãã·ã§ã³ç»åã䜿ã£ãŠãåé¡ã¢ãã«ãæ°ãã«åŠç¿ããŸãã
ãã ãèªåã§åŠç¿ãè¡ããšãã£ãŠããCNNãäžããåŠç¿ãããšç²ŸåºŠãåŠçæéã®é¢ã§ããŸãè¯ããªãã®ã§ãåŠç¿æžã¿ã¢ãã«ã®åºå局以å€ã¯ç¹åŸŽæœåºåšãšããŠãã®ãŸãŸäœ¿çšããããã€ãã®å±€ã远å ããŠæçµçã«äºæž¬ã¯ã©ã¹æ°åã®åºåãåŸãããããã«ããäžã§ã远å ããå±€ã®éã¿ã®ã¿ãåŠç¿ããããã«ããŸãã
ãã®ããã«åŠç¿æžã¿ã¢ãã«ã®ãã©ã¡ãŒã¿ãŒãåæå€ãšããŠããããã¯ãŒã¯ã®äžéšãŸãã¯å šéšã®å±€ã远å åŠç¿ããããšãFine-Tuningãšãããæçšæ§ãé«ãããšãç¥ãããŠããŸãã
ä»åã¯ãTensorFlow HubãšããåŠç¿æžã¿ã¢ãã«ãèªã¿èŸŒãããã®ããŒã«ã䜿ã£ãŠãFine-Tuningçšã®ããã°ã©ã ãå®è£ ããŸãããæè£ ãã人ç©ã®å±æ§ãæšå®ã§ããããã«ãããããæ§å¹Žä»£ãã¹ã¿ã€ã«ããšã®ãã¡ãã·ã§ã³ã³ãŒãã£ããŒãç»åã䜿ã£ãŠãã¢ãã«ãåŠç¿ããŸãã察象ã®ãã¡ãã·ã§ã³ã¹ã¿ã€ã«ã¯ã8ã¯ã©ã¹ãšããŸããã
åŠç¿ç»åã®ææ°ãå¢ãããããData Augmentationã«ãã£ãŠããŒã¿ã®æ°Žå¢ããè¡ããŸããããŸããä»å䜿çšãããã¡ãã·ã§ã³ç»åã¯ã¯ã©ã¹ã«ãã£ãŠææ°ã«åãããã£ããããäžåè¡¡ããŒã¿ã«å¯Ÿå¿ããæå€±é¢æ° ã䜿çšããŸããã CNNã®åœ¢ç¶ã¯InceptionResNetV2ãããŒã¹ãšããåŠç¿æžã¿ã¢ãã«ã®åºåå±€ã®ä»£ããã«ã3ã€ã®å šçµåå±€ïŒããŒãæ°ã¯1000, 100, 8ãæŽ»æ§å颿°ã¯ReLUïŒã远å ããŸããããããã®è¿œå å±€ããAdam Optimizerã§æå€§100ãšããã¯ïŒEarly StoppingããïŒåŠç¿ããæçµçãªãã©ã¡ãŒã¿ãŒãåé¡ã¢ãã«ã«äœ¿çšããŸããã
ç»åã®äžéšãæ€èšŒçšããŒã¿ãšããŠã¢ãã«ã®ç²ŸåºŠïŒAccuracyïŒã確èªãããšãããæ§å¹Žä»£å€å®ãšãã¡ãã·ã§ã³ã¹ã¿ã€ã«å€å®ã§ãããã0.40, 0.25ãšãäœãã®å€ã«ãªããŸããã
ãã ããä»åã¯ç»ååé¡èªäœã®ç²ŸåºŠã¯ããŸãéèŠã§ãªããé²ç¯ã«ã¡ã©ã«ãã屿§æšå®ã®ãããã¿ã€ãäœæãäž»ç®çã§ãã£ãããããã®ã¢ãã«ããã®ãŸãŸäœ¿çšããŸãããåé¡ç²ŸåºŠãåäžããããå Žåã¯ãåŠç¿ç»åã®ææ°ãå¢ãããããããå°ãæçšãªããŒã¿ã䜿ã£ãããããªã©ã®å¯Ÿå¿çãèããããŸãã
æšå®çµæãšããŠãã¯ã©ã¹ããšã®æå±ç¢ºçãåŸãããŸãããã®ãã¡ç¢ºçãæå€§ãšãªãã¯ã©ã¹ãååŸããããšã§ã察象è ã®æ§å¹Žä»£ããã¡ãã·ã§ã³ãäžæã«æ±ºå®ããããšãã§ããŸãã
ã»ãã³ãã£ãã¯ã»ã°ã¡ã³ããŒã·ã§ã³ã«ããäººç©æ€åº
äžèšã®åé¡ã¢ãã«ã«é²ç¯ã«ã¡ã©ç»åãå ¥åããããšã§ãæ¥åºè ã®å±æ§ãåºåã§ããŸããããã®ãŸãŸã§ã¯æ§å¹Žä»£ããã¡ãã·ã§ã³ã¹ã¿ã€ã«ãããŸãæšå®ããããšãã§ããŸããã
ãªããªããç»åã«å¯Ÿè±¡è 以å€ã®äººç©ãèæ¯ãªã©ãåã蟌ãã§ããŸããããããäºæž¬æã«æªåœ±é¿ãåãŒãããã§ããå®éãä»åãèå売ãå Žã§æ®åœ±ããç»åã§ã¯ãåºã«ç·è²ã®ããããæ·ãããŠãããããæ¥åºè ãç·è²ã®æãçãŠãããšèª€èªèãããŠããŸãå¯èœæ§ããããŸãã
ããã§ãã»ãã³ãã£ãã¯ã»ã°ã¡ã³ããŒã·ã§ã³ãšåŒã°ããç»ååŠçæè¡ãçšããŠæ¥åºè ã®ç»åäœçœ®ãç¹å®ãããã以å€ã®éšåããã¹ãã³ã°ããããšã§å ¥åç»åã«äœèšãªç©äœãå«ãŸããªãããã«ããŸãã
ã»ãã³ãã£ãã¯ã»ã°ã¡ã³ããŒã·ã§ã³ãšã¯ãç»åã®ã©ãã«äœãåã£ãŠããããæšå®ãããã®ã§ãå·¥å Žã§ã®ç°åžžæ€ç¥ãå»çç»åã®èšºæãèªåé転çšã®ããŒã¿äœæãªã©ã«æŽ»çšãããŠããŸãã
ç©äœã®äœçœ®ãç©åœ¢ã§æœåºããäžè¬çãªç©äœæ€åºæè¡ãšæ¯èŒããŠããã¯ã»ã«åäœã§ãã现ããèªèã§ãããšããå©ç¹ããããŸãã
ä»åã¯ã»ãã³ãã£ãã¯ã»ã°ã¡ã³ããŒã·ã§ã³ã®äžã§ããMaskR-CNNãšããææ³ã䜿çšããŸãã
MaskR-CNNã¯ãFasterR-CNNãšããç©äœæ€åºæè¡ãåºã«ããææ³ã§ãã»ã°ã¡ã³ããŒã·ã§ã³çšã®ãããã¯ãŒã¯æ§é ã粟床åäžã®ããã®å·¥å€«ã远å ãããŠããŸãã
ã¯ããã«ç©åœ¢åäœã§ã®ç©äœæ€åºãè¡ããç©äœãèŠã€ãã£ãé åã®ã¿ãã¯ã»ã«åäœã§ã¯ã©ã¹ãäºæž¬ããããšã§ãå¹ççã«ã»ã°ã¡ã³ããŒã·ã§ã³ãè¡ãããšãã§ããŸãã
MaskR-CNNã«ã€ããŠããCNNãšåæ§ã«åŠç¿æžã¿ã¢ãã«ãå ¬éãããŠããŸããæšå®çšã®ããã°ã©ã ã¯ãKerasã§å®è£ ããã以äžã®ã³ãŒããæŽ»çšãããŠããã ããŸããã
FPN, ResNet101ãšããã¢ãŒããã¯ãã£ã«åºã¥ãããããã¯ãŒã¯ã«ãªã£ãŠãããMS COCOããŒã¿ã»ããã§åŠç¿ãããŠããŸããMS COCOã«ã¯äººã®ã¢ãããŒã·ã§ã³ããŒã¿ãå«ãŸããŠãããããFine-Tuningãè¡ãå¿ èŠãªããåŠç¿æžã¿ã¢ãã«ããã®ãŸãŸäººç©ã®æ€åºã«äœ¿çšããããšãã§ããŸãã
äžèšã®ã¢ãã«ã§ç»åäžã®äººç©äœçœ®ãæšå®ããäºæž¬ã¹ã³ã¢ãé åãµã€ãºãéŸå€ä»¥äžãšãªã£ãŠããå Žåã«äººç©ãšããŠå€å®ããããã«ããŸããã
人ç©ä»¥å€ã®ãã¯ã»ã«ã¯ãå šãŠçœè²ïŒRGBå€ïŒ(255, 255, 255)ïŒã«ãã¹ãã³ã°ããŸãã ãŸãFace APIã®ãšããšåæ§ã«ãç»åäžã«äººãäžäººãèŠã€ãããªãã£ãå Žåã¯ã屿§å€å®ãè¡ããªãããã«ããŸããã
MaskR-CNNã«ããã»ã°ã¡ã³ããŒã·ã§ã³çµæã®äŸã以äžã«ç€ºããŸãã
æšå®ã¹ã³ã¢ã®éŸå€ã0.999ã«ããŠãé«ç¢ºçã§æ¥åºè ãæ€åºããããšãã§ããé åãããªã现ããæœåºã§ããŠãããããMaskR-CNNã®æ§èœãçžåœè¯ãããšãåãããŸããã
ãã®ã»ã°ã¡ã³ããŒã·ã§ã³åŸã®ç»åã屿§åé¡åšã«å ¥åããããšã§ããã广çã«æ§å¹Žä»£ããã¡ãã·ã§ã³ã¹ã¿ã€ã«ãæšå®ã§ããããã«ãªããŸãã
å®éã«äžèšã®ç»åãå ¥åãããšãããããšããžããªãã¡ãã·ã§ã³ã®ã20ä»£ç·æ§ããšå€å®ãããŸããã
ããã«ã ãã¡ã€ã³é©å¿ ãšåŒã°ããæè¡ã掻çšããããšã§ãã³ãŒãã£ããŒãç»åã§åŠç¿ããç»ååé¡ã¢ãã«ãé²ç¯ã«ã¡ã©ç»åã«é©ãã圢ã«å€æããããšãã§ããŸãã
ãã ãããã®ããã«ã¯é²ç¯ã«ã¡ã©ã§æ®åœ±ããç»åã倧éã«çšæããå¿ èŠããããä»åã¯æ€èšŒæéã®éœåäžã詊ãããšãã§ããŸããã§ãããããŒã¿ãããçšåºŠæºãŸã£ãããæ€èšŒããŠã¿ãããšæããŸãã
æšå®çµæã®éä¿¡
æåŸã«ãFace APIããªãªãžãã«ã®å±æ§åé¡åšã«ããæšå®çµæãå€éšã®ãµãŒãã¹ã«éä¿¡ããå¯èŠåããæ¹æ³ã説æããŸãã
æšå®ããçµæãJSONãã¡ã€ã«ãªã©ã«è¿œèšããŠãã£ãŠãè¯ãã®ã§ãããäžã ãã¡ã€ã«ãéããŠç¢ºèªããã®ã¯é¢åã§ããããŸãä»ã®ã»ã³ãµã®æ å ±ïŒåååšåº«ãæ°æž©ãªã©ïŒããã®æ¥ã®æ¥åºè ã®å èš³ãªã©ããŸãšããŠç¢ºèªã§ããæ¹ãäœããšäŸ¿å©ã§ãã
å€éšã®ãµãŒãã¹ã掻çšããã°ãæ°è¡ã®ããã°ã©ã ãæžãã ãã§ããã®ãããªå¯èŠåãç°¡åã«å®çŸããããšãã§ããŸãã
Node-REDãžã®ããŒã¿éä¿¡
äžã€ç®ã¯ãNode-REDãžã®ããŒã¿éä¿¡ã§ãã
Node-REDã¯ãäžèšã§ãããšIoTã®ããã€ã¹ãAPIããµãŒãã¹ãªã©ãçžäºæ¥ç¶ããããã®éçºããŒã«ã§ããããã·ã¥ããŒãäžã§ãåããã€ã¹ããéãããæ å ±ãäžèŠ§è¡šç€ºã§ããããã«ãªã£ãŠããŸãã
Node-REDã«å€å®çµæãéä¿¡ããæ¹æ³ãšããŠããããããäœæããAPIã«åæãµãŒããŒããHTTPãªã¯ãšã¹ããæãã圢ã§ãããŒã¿ãéãããšãã§ããŸãã
å®éã®ãœãŒã¹ã³ãŒãã§ã¯ãNode-REDãµãŒããŒã皌åããŠããªãå Žåã§ãããã°ã©ã ã忢ããªãããã«ããšã©ãŒåŠçãè¡ã£ãŠããŸãã
ãŸãå®è£ äžã®æ³šæç¹ãšããŠãæšå®çµæã®ããŒã¿åã«æ°ãã€ããå¿ èŠããããŸããTensorFlowã®ããã°ã©ã ã§ç»åã®æå±ã¯ã©ã¹ãäºæž¬ããå Žåã倿°ã®åãnumpy.float32ãšãªãããã®ãŸãŸJSONããŒã¿ã«å€æããããšãããšãšã©ãŒã«ãªã£ãŠããŸããŸãã
ãã®ãããæå±ç¢ºçã®å€ãPythonã®floatåã«ãã£ã¹ãããŠããéãããã«ããŸãã
Teamsãžã®ããŒã¿éä¿¡
äºã€ç®ã¯ãMicrosoft Teamsã§ã®éç¥ã§ããTeamsã¯ãMicrosoft Office365ã®ãã£ãããœããã§ãbot圢åŒã§ããã°ã©ã ããã¡ãã»ãŒãžãéãããšãã§ããŸãã
ãã£ãã«ã«å¯ŸããŠIncoming Webhookã®ã³ãã¯ã¿ãäœæããNode-REDãšåæ§ã«ããã°ã©ã ããããŒã¿ãPOSTéä¿¡ããŸãã
ããã°ã©ã ã宿ããããwhileã«ãŒããªã©ã§æ°žç¶çã«å®è¡ããã客ãããæ¥ããã³ã«å±æ§æšå®ãè¡ããããã«ããŸãã
詊ãã«1æ¥åãããŠã¿ããšããããã®æ¥ã®æ§å¹Žä»£ããšã®æ¥åºè æ°ãã«ãŠã³ããããŠããããšã確èªã§ããŸããã
ãããã«
æ¬ç« ã§ã¯ãé²ç¯ã«ã¡ã©ã®ç»åããããåºã«æ¥ãé¡§å®¢ã®æ§å¹Žä»£ããã¡ãã·ã§ã³ã¹ã¿ã€ã«ãæšå®ããæ¹æ³ã玹ä»ããŸããã
ãªã¢ã«ã¿ã€ã æ§ãå¿ èŠãªå Žåããåæçšã®ãµãŒããŒãçšæã§ããªãããããã¯å人æ å ±ã®èгç¹ãããµãŒããŒã«ç»åãéãããšãé£ããå Žåãªã©ã¯ãJetsonãã©ãºãã€ãªã©ã®ã¢ãã€ã«ããã€ã¹ã«ã¢ãã«ããããã€ããŠããšããžåŠçãè¡ãããšãèããããŸãã
ãã ããã®å Žåã¯ãæ¬ç« ã§ç޹ä»ããç»ååŠçã¢ãã«ããã®ãŸãŸäœ¿çšãããšèšç®é床ãã¡ã¢ãªäžè¶³ã®åé¡ãããããããã軜éãªãããã¯ãŒã¯ã䜿ããªã©ã®å·¥å€«ãå¿ èŠãšãªããŸãã ãŸãä»åã¯ã«ã¡ã©ã®éæ¢ç»ã®ã¿ã䜿çšããŸããããåç»å šäœãé³å£°ãªã©ã掻çšããããšã§ããè©³çŽ°ãªæ å ±ãåéã§ãããšæããããããä»åŸã®èª²é¡ãšããŠåãçµãã§ããããã§ãã
æ¬èšäºã¯ã2020幎ã«è¡ãããæè¡æžå ž8ã«åºå±ããæ¬ã®å 容ã®äžéšã§ãããCCC MARKETING TECH BLOGããåç·šéããŠè»¢èŒãããã®ã§ãã
[èè
]
ç¢æŸ€äžæš¹
CCCããŒã±ãã£ã³ã°æ ªåŒäŒç€Ÿ
ããŒã¿ããŒã¹ããŒã±ãã£ã³ã°ç ç©¶æ
æè¡éçºãŠããã
楜åšã»é³é¿ã¡ãŒã«ãŒã§æ¥åçšé³é¿æ©åšã®ãœãããŠã§ã¢éçºãæè¡ããŒã±ãã£ã³ã°ãªã©ãçµéšããåŸãçŸè·ã«è»¢åã ç»ååŠçãªã©ã®æ·±å±€åŠç¿æè¡ã掻çšããŠãææºåºèåãã®IoTãœãªã¥ãŒã·ã§ã³ãããã¡ãã·ã§ã³ã»ã€ã³ããªã¢æ¥çåãã®ããŒã«éçºã人ã»ååã®ãããã³ã°ã¢ã«ãŽãªãºã ç ç©¶ãªã©ã«åãçµãã§ããã Python, Flask, JavaScript, TensorFlow, PyTorchãªã©ã®èšèªããã¬ãŒã ã¯ãŒã¯ã掻çšã è¶£å³ã¯é³æ¥œãæ ç»ãæçãªã©ã








