Viola and Jones [1]ã®æ¹æ³ïŒã¢ã«ãŽãªãºã ïŒã¯ãç»åå ã®ãªããžã§ã¯ãã®å¢çãèå¥ããæ¹æ³ã®1ã€ã§ãã 2001幎ã«P. ViolaãšM. Jonesã«ãã£ãŠéçºãããã¢ã«ãŽãªãºã ã¯ãåœåã¯ç»åå ã®é¡ããã°ããæ€çŽ¢ããããšãç®çãšããŠããŸããããçŸåšã§ã¯ããã®äººæ°ã®ããã¢ã«ãŽãªãºã ã®ããŸããŸãªããªãšãŒã·ã§ã³ãå¢çãèŠã€ããããŸããŸãªåé¡ã§ããŸã䜿çšãããŠããŸãïŒ
- æ©è¡è ã®ç»å[2]ã
- è»ã®ç»å[3]ã
- éè·¯æšèã®ç»å[4]ã
ã»ãŒåãè§åºŠã§ç»åã«ååšããä»ã®ãªããžã§ã¯ããšåæ§ã«ã ãŽã£ãªã©ãšãžã§ãŒã³ãºã®æ¹æ³ã®ä¿®æ£ã®ãã®çš®ã®äººæ°ã¯ããªããžã§ã¯ãã®æ€çŽ¢ã®é«ã粟床ãšã幟äœåŠçæªã¿ãšèŒåºŠå€åã®äž¡æ¹ã«å¯Ÿããé«ãæµæåã«ãã£ãŠèª¬æãããŸãã
Viola and Jones Methodã®èª¬æ
Viola and Jonesã¢ã«ãŽãªãºã ã¯ãç»åå ã®ãªããžã§ã¯ããæ€åºããåé¡ããç»åå ã®åãã€ã³ãã§ã®ãã€ããªåé¡åé¡ã«æžãããŸãã ãã®æ¹æ³ã¯ããã¹ã©ã€ãã£ã³ã°ãŠã£ã³ããŠãæè¡ã«åºã¥ããŠããŸããã äºåã«èšç·Žãããåé¡åšïŒæ€åºåšïŒã®å©ããåããŠãããããçš®é¡ã®ã·ãããšã¹ã±ãŒã«ã§æ®åœ±ãããç»åã®åé·æ¹åœ¢é åã«ã€ããŠããã®é åã§ã®æ€çŽ¢ãªããžã§ã¯ãã®æç¡ã«é¢ãã仮説ã確èªããå¿ èŠããããŸãã ãã¹ãŠã®å°åãå®å šã«èª¿æ»ãããšã1ã€ã®ç»åã§äœåäžãã®åé¡åšãå®è¡ãããŸãã ãã®ãããåé¡åšã«ã¯2ã€ã®å³å¯ãªèŠä»¶ããããŸãïŒé«æ§èœãšå°æ°ã®èª€æ€ç¥ã§ãã
ãã®äœæ¥ã§ã¯ãViolaãšJonesã¯äººéã®é¡ã®åé¡åšã«ã€ããŠèª¬æããŸããã ãã¬ãŒãã³ã°ãµã³ãã«ã¯ã24x24ãã¯ã»ã«ã«ã¹ã±ãŒãªã³ã°ããã4916ã®é¡ç»åïŒ æ£ã®ãµã³ãã« ïŒãšãé¡ç»åããªããé¡ã®ãªããŸãŒã³ãã©ã³ãã ã«æœåºããã9500ã®ãã«ãµã€ãºç»åïŒ è² ã®ãµã³ãã« ïŒã§æ§æãããŠããŸããã
ç¹åŸŽç©ºéãæ§ç¯ããããã«ãæããã®ç¹åŸŽçãªéãã瀺ãHaarç¹åŸŽãéžæãããŸããã Haarã®ç¬Šå·ã¯ãç»åã®ç©åè¡šçŸã䜿çšããŠç°¡åã«èšç®ãããŸãã 寞æ³ã24x24ã®ç»åã®å Žåã1ã€ã®å±æ§ã®æ§æã®æ°ã¯45396ã«é¢é£ããŠããããšãå€æããŸããã
Viola and Jonesã¡ãœããã§ã¯ãAdaBoostã¢ã«ãŽãªãºã [5]ã䜿çšãããŸãããããã«ãããæãæçãªæ©èœãéžæãããã€ããªåé¡åšãæ§ç¯ã§ããŸãã ãããè¡ãããã«ãèè ã¯åå±æ§ã«åŒ±ãåé¡åšãé¢é£ä»ããŸãããããã¯åäžã¬ãã«ã®æ±ºå®ããªãŒãè¡šãããã®åŸAdaBoostã¢ã«ãŽãªãºã ã«äŸçµŠãããŸãã
Viola and Jonesã¡ãœããã®å¿ èŠãªéšåã¯ãæ§ç¯ããã匷åãªåé¡åšãçµåããæé ã§ããããã«ãããé¡ç»åãå«ãå¯èœæ§ã®ãã調æ»ç»åã®é åãããŒã«ã©ã€ãºããããšã§ãé¡æ€åºããã»ã¹ã®çç£æ§ãå€§å¹ ã«åäžã§ããŸãã
äžèšã®ããã«ãViola and Jonesã¢ã«ãŽãªãºã ã§ã¯ãåé¡åããã¬ãŒãã³ã°ããããšãHaarãŠã§ãŒãã¬ããã«æ»ãHaaræ©èœã®ãã¡ããªããªããžã§ã¯ãã®èšè¿°ã«äœ¿çšãããŸã[6]ã ãã®éžæã¯äž»ã«ãHaarã®ç¹åŸŽãæããã®éãã«é¢é£ããæ€åºããããªããžã§ã¯ãã®ç¹åŸŽçãªç¹åŸŽãé©åã«èšè¿°ãããšããäºå®ã«ãããã®ã§ãã Haarã®å åã«ããã人ã®é¡ã®ç»åã§ã¯ãç®ã®éšåã錻ã®éšåãããæãããšãããããŸãïŒå³1dïŒã 説æããã¢ã«ãŽãªãºã ã«ã¯ã2ã€ã®é·æ¹åœ¢ã®ç¹åŸŽïŒå³1aïŒã3ã€ã®é·æ¹åœ¢ã®ç¹åŸŽïŒå³1bïŒãããã³4ã€ã®é·æ¹åœ¢ã®ç¹åŸŽïŒå³1cïŒã®3ã€ã®ã¯ã©ã¹ã®ç¹åŸŽãå«ãŸããŠããŸããã
åHaarå±æ§ã®å€ã¯ãåããµã€ãºã®é»ãšçœã®é·æ¹åœ¢å ã®ç»åé åã®ãã¯ã»ã«ã®åèšã®å·®ã«çãããªããŸããã 2é·æ¹åœ¢ããã³3é·æ¹åœ¢ã®Haarãµã€ã³ã¯ãåçŽæ¹åïŒå³1ãåç §ïŒãŸãã¯æ°Žå¹³æ¹åã«åããããšãã§ããŸãã Haar笊å·ã®è¿ éãªèšç®ã®ããã«ãç»åã®ç©åè¡šçŸã䜿çšãããŸã[7]ã
AdaBoostã¢ã«ãŽãªãºã ã§ã¯ãViola and Jonesã¡ãœãããåŠç¿ãããšãã«ã1ã€ã®ãã©ã³ããš2ã€ã®ãªãŒããæã€èªèããªãŒïŒ 決å®åãæ ªãšåŒã°ãã察å¿ããå±æ§ã®å€ããããå€ãšæ¯èŒããïŒã匱ãåé¡åšãšããŠäœ¿çšãããŸãã ç¹æ§f j ããããå€Îžj ãããã³ããªãã£p jã«åºã¥ã圢åŒçã«åŒ±ãåé¡åšb j ïŒ x ïŒã¯ã次ã®ããã«å®çŸ©ãããŸãã
ãã®ãããªå€ãã®åŒ±ãåé¡åšã¯ããã¬ãŒãã³ã°ã»ãããšãšãã«ãAdaBoostã¢ã«ãŽãªãºã ã®å ¥åã«äŸçµŠãããŸãã
å³1-ãã¬ãŒãã³ã°ã§äœ¿çšãããé·æ¹åœ¢Haarãµã€ã³
åé¡åšïŒaïŒ2-é·æ¹åœ¢ã®èšå·ã bïŒ3-é·æ¹åœ¢ã®ãµã€ã³;
cïŒ4-é·æ¹åœ¢ã®èšå·; dïŒæšèã®äœçœ®ã®äŸ
ã¹ãã£ã³ãŠã£ã³ããŠã«é¢é£ïŒãœãŒã¹[7]ïŒ
ã«ã¹ã±ãŒãåé¡åïŒ cascade ïŒã¯ã調æ»å¯Ÿè±¡ã®ç»åã«ã€ããŠãæ€çŽ¢ãªããžã§ã¯ããå«ãŸãªããããžãã£ãããšãªã¢ã®æ°ãããã®ãªããžã§ã¯ããå«ããšãªã¢ïŒããã¬ãã£ãããšãªã¢ïŒãããæ°æ¡å€§ãããšããä»®å®ã®äžã§äœæãããŸãã ãªããžã§ã¯ãæ€åºåšã®é床ãäžããã«ã¯ãã§ããã ãæ©ãç»åã®ãã¬ãã£ãé åãèæ ®ããããšãæåŠããããšãæçšã§ãã ãŸãã¯ããã¬ãã£ããšãªã¢ãåæããããã®ãã£ãŒãã£ã®æ°ã¯ãããžãã£ããšãªã¢ã«å¯ŸããŠèšç®ããããã£ãŒãã£ã®æ°ãããå€§å¹ ã«å°ãªãããå¿ èŠããããŸãã
æ€çŽ¢ãªããžã§ã¯ãã®ååšã«ã€ããŠåæãããåç»åé åã¯ã ã«ã¹ã±ãŒãã¬ãã«ãšåŒã°ããåé¡åšã®é åºä»ããããã·ãŒã±ã³ã¹ã®å ¥åã«äŸçµŠãããŸã ã åé¡åã®ã·ãŒã±ã³ã¹ãé²ããã«ã€ããŠãã¬ãã«ã®èšç®ã®è€éããå¢ããŸãã åé¡åãç¹å®ã®é åã®èªèãæåŠããå ŽåïŒã€ãŸãããã®é åãè² ãšããŠåé¡ãããå ŽåïŒããã®é åã¯æ®ãã®åé¡åã«ãã£ãŠåŠçãããªããªããŸãã
ã«ã¹ã±ãŒãåé¡åã®å®çŸ©ã«ããã°ã次ã®é¢ä¿ãæå¹ã§ãã
ããã§ã FPRã¯ã«ã¹ã±ãŒãã®èª€æ€åºã®å²åã TPRã¯ã«ã¹ã±ãŒãã®èª€æ€åºã®å²åã Kã¯ã«ã¹ã±ãŒãã®ã¬ãã«æ°ã fpr iã¯ã«ã¹ã±ãŒãã®içªç®ã®ã¬ãã«ã®èª€æ€åºã®å²åã tpr iã¯ã«ã¹ã±ãŒãã®içªç®ã®ã¬ãã«ã®èª€æ€åºã®å²åã§ãã
ååæé åã«ã€ããŠèšç®ãããèšç®ãããç¹æ§ã®æšå®æ°ã¯ã次ã®åŒã«ãã£ãŠèšç®ãããŸãã
ããã§ã n iã¯içªç®ã®ã¬ãã«ã®åŒ±åé¡åšã®æ°ã pr iã¯içªç®ã®ã¬ãã«ã®å¿çã®å²åã§ãã
åé¡åšã®ãã¬ãŒãã³ã°ã¢ã«ãŽãªãºã ã¯ãæé©åã®åé¡ã解決ããæé©ãªFPRããã³TPRã€ã³ãžã±ãŒã¿ãŒã䜿çšããŠã«ã¹ã±ãŒããæ§ç¯ããèšç®ãããå±æ§Nã®äºæ³æ°ãæå°éã«æããããã«ããŸãã FPR ã TPR ãããã³Nã®å€ã®éã«æ確ãªãªã³ã¯ããªãããããŸããã®åé¡ã解決ããã®ãéåžžã«é£ããããšã¯æããã§ãã
è¯å®çãªäŸãšåŠå®çãªäŸãå«ããæ¢åã®ã©ãã«ä»ããã¬ãŒãã³ã°ãµã³ãã«ã§ã«ã¹ã±ãŒãããã¬ãŒãã³ã°ããç°¡åãªã¢ã€ãã¢ãç¥ãããŠããŸãã äºåã«3ã€ã®ãã©ã¡ãŒã¿ãŒãéžæããå¿ èŠããããŸãã
- ã«ã¹ã±ãŒãã®åã¬ãã«ã®èª€æ€ç¥ã®å²åã
- ã«ã¹ã±ãŒãã®åã¬ãã«ã®æ£ããå¿çã®å²åã
- ã«ã¹ã±ãŒãå šäœã®åœéœæ§çïŒ FPR * ïŒã
ãã®åŸãã«ã¹ã±ãŒãåé¡åšãå埩çã«æ§ç¯ãããåå埩ã§AdaBoostã¢ã«ãŽãªãºã ã䜿çšããŠãã¬ãŒãã³ã°ãå®è¡ãããŸãã FPR *å€ã§æå®ãããç®æšå質ã«éãããŸã§ãã¬ãã«ãã«ã¹ã±ãŒãã«è¿œå ãããŸãã ã«ã¹ã±ãŒãã®åã¬ãã«ã®ãã¬ãŒãã³ã°å ¥åã§ããã®ãããªãã¬ãŒãã³ã°ãµã³ãã«ãæåºããå¿ èŠããããŸãããã®äŸã¯ãçŸæç¹ã§æ¢ã«ãã¬ãŒãã³ã°ãããŠããã«ã¹ã±ãŒãåé¡åšã®èª€æ€ç¥ã§ãã
ãã¹ããŒãã®ã¹ãã£ã³ç»åãæ€åºããã¿ã¹ã¯ã§ãªããžã§ã¯ãæ€åºåšããã¬ãŒãã³ã°ããããã®èª¬æãããã¢ãããŒããç 究ããŸããã ãã¬ãŒãã³ã°ã»ããã¯ã2ã€ã®ã»ããã§æ§æãããŸããã
- 1302ã®éœæ§ãµã³ãã«ïŒãã·ã¢é£éŠåžæ°ã®ãã¹ããŒãã®2ããŒãžç®ã®ã«ãããµã³ãã«ïŒããã³2000ã®é°æ§ãµã³ãã«ïŒãã·ã¢ã®ãã¹ããŒã以å€ã®ãã®ãå«ããã«ãµã€ãºã®FullHDç»åïŒ
1103ã®éœæ§ãµã³ãã«ïŒãã·ã¢é£éŠåžæ°ã®ãã¹ããŒãã®3ããŒãžç®ã®ãµã³ãã«ãåãåãïŒããã³2000ã®é°æ§ãµã³ãã«ïŒãã·ã¢é£éŠã®ãã¹ããŒã以å€ã®ãã®ãå«ããã«ãµã€ãºã®FullHDç»åïŒ
äž¡æ¹ã®åé¡åã®ç©çãµã€ãºïŒãã¯ã»ã«åäœïŒã¯201x141ãéžæããŸããã ãã®ãµã€ãºã§ã¯ããããããããŸãã¯ããã ããŒãžïŒã€ãŸããã¯ã©ã¹ãäžæã«æ±ºå®ãããïŒã§ãããã¯ã©ã¹å ã®äžææ§ãæ¶ããããšãç解ã§ããŸãã
ãã®çµæã2ã€ã®åé¡åšããã¬ãŒãã³ã°ãããŸããã
- ãã·ã¢é£éŠåžæ°ã®ãã¹ããŒãã®2ããŒãžç®ã®åé¡åãåèš8ã€ã®ã¬ãã«ãšåèš28ã®åŒ±ãåé¡åã§æ§æãããŸãã
- ãã·ã¢é£éŠåžæ°ã®ãã¹ããŒãã®3ããŒãžç®ã®åé¡åã8ã€ã®ã¬ãã«ãš36ã®åŒ±ãåé¡åã§æ§æãããŠããŸãã
ãã¹ããµã³ãã«ã¯ã300æã®åçãšãã¹ããŒãã¹ãã£ã³ã§æ§æãããŠããŸããïŒäž¡æ¹ã®ããŒãžãåæã«ç»åäžã«ååšããŠããŸããïŒã ãã¹ããŒãã®ãããããŒãžïŒ2ããŒãžç®ïŒã®è£œæ¬å質ã¯0.967ã§ããã ãã¹ããŒãã®äžéšããŒãžïŒ3ããŒãžç®ïŒã®ç¶Žãå質ã¯0.98ã§ããã
Elbrusã®ã¢ãŒããã¯ãã£ã®æ©èœ
Elbrusã¢ãŒããã¯ãã£ã¯ãå¹ åºãã³ãã³ãã¯ãŒãïŒVery Long Instruction WordãVLIWïŒã®ååã䜿çšããã¢ãŒããã¯ãã£ã®ã«ããŽãªã«å±ããŸãã VLIWã¢ãŒããã¯ãã£ãŒã®ããã»ããµãŒã§ã¯ãã³ã³ãã€ã©ãŒã¯ã³ãã³ãã®ã°ã«ãŒãã®ã·ãŒã±ã³ã¹ïŒåºçŸ©ã®ã³ãã³ãã¯ãŒãïŒãçæããŸããåã°ã«ãŒãå ã®ããŒã éã«äŸåé¢ä¿ã¯ãªããç°ãªãã°ã«ãŒãã®ããŒã éã®äŸåé¢ä¿ã¯æå°éã«æããããŸãã ããã«ãåã°ã«ãŒãå ã®ã³ãã³ãã¯äžŠè¡ããŠå®è¡ãããã³ãã³ãã¬ãã«ã§é«ã¬ãã«ã®äžŠååŠçãå®çŸããŸãã
ã³ãã³ãã¬ãã«ã§ã®äžŠååã¯æé©åã³ã³ãã€ã©ã«ãã£ãŠå®å šã«æäŸããããšããäºå®ã«ãããããšãã°x86ã¢ãŒããã¯ãã£ã®å Žåã®ããã«ã䞊ååã¿ã¹ã¯ã解決ããªããããã³ãã³ããå®è¡ããããã®æ©åšãå€§å¹ ã«ç°¡çŽ åãããŸãã VLIWããã»ããµã®æ¶è²»é»åãåæžãããŸããããããã®ã¿ã¹ã¯ã¯ãã¹ãŠã³ã³ãã€ã©ã«å²ãåœãŠãããããããªãã©ã³ãéã®äŸåé¢ä¿ãåæããããæäœã䞊ã¹æ¿ãããããå¿ èŠããªããªããŸããã ã³ã³ãã€ã©ã¯ããœãŒã¹ã³ãŒãã®ããŒããŠã§ã¢ã¢ãã©ã€ã¶ãããã¯ããã«å€ãã®ã³ã³ãã¥ãŒãã£ã³ã°ãªãœãŒã¹ãšæéãªãœãŒã¹ãæã£ãŠããããããã培åºçãªåæãå®è¡ããããç¬ç«ããæäœãèŠã€ããããšãã§ããŸã[8]ã
ããã«ãElbrusã¢ãŒããã¯ãã£ã®æ©èœã¯ãã¡ã¢ãªãæäœããæ¹æ³ã§ãã å€ãã®å Žåãå€éšã¡ã¢ãªãžã®ã¢ã¯ã»ã¹ã«ã¯ããªãã®æéãããããèšç®ãé ããªããŸãã ãã£ãã·ã¥ã¯ãã®åé¡ã解決ããããã«äœ¿çšãããŸããããã£ãã·ã¥ã®ãµã€ãºã¯å³å¯ã«å¶éãããŠãããäžè¬çãªãã£ãã·ã¥ã¢ã«ãŽãªãºã ã¯é »ç¹ã«äœ¿çšãããããŒã¿ã®ã¿ããã£ãã·ã¥ã«ä¿åããããšãç®çãšããŠãããããæ¬ ç¹ããããŸãã
ã¡ã¢ãªã¢ã¯ã»ã¹ã®å¹çãé«ãããã1ã€ã®æ¹æ³ã¯ãããŒã¿ã®äºåããŒãžã³ã°æ¹æ³ã䜿çšããããšã§ãã ãããã®æ¹æ³ã«ãããã¡ã¢ãªã¢ã¯ã»ã¹ãäºæž¬ãã䜿çšããåã«ãã£ãã·ã¥ãŸãã¯ä»ã®ç¹å¥ãªããã€ã¹ã«ããŒã¿ãéã蟌ãããšãã§ããŸãã ãããã¯ãœãããŠã§ã¢ãšãââãŒããŠã§ã¢ã«åããããŸãã ãœãããŠã§ã¢æ¹åŒã§ã¯ãã³ã³ãã€ã«æ®µéã§ç¹å¥ãªäºåããŒãžã³ã°åœä»€ãèšç»ãããŠããŸãã éåžžã®ã¡ã¢ãªã¢ã¯ã»ã¹ãšåãæ¹æ³ã§åŠçãããŸãã ããŒããŠã§ã¢ã¡ãœããã¯ãããã°ã©ã ã®å®è¡äžã«æ©èœããã¡ã¢ãªã¢ã¯ã»ã¹ã«é¢ããåçæ å ±ã䜿çšããŠäºæž¬ããŸãã ãã€ã¯ãããã»ããµã®äžéšãšããŠè¿œå ã®ã¢ãžã¥ãŒã«ãå¿ èŠã§ãããç¹å¥ãªã¹ã¯ããã³ã°åœä»€ãå¿ èŠãšãããéåæã§åäœã§ããŸãã
Elbrusããã»ããµã¯ãããŒããŠã§ã¢ãšãœãããŠã§ã¢ã®ã¹ã¯ããæ¹åŒããµããŒãããŠããŸãã åæã«ããã€ã¯ãããã»ããµããŒããŠã§ã¢ã«ã¯ã¢ã¬ã€ã«ã¢ã¯ã»ã¹ããããã®ç¹å¥ãªããã€ã¹ïŒArray Access UnitãAAUïŒãå«ãŸããŠããŸãããã¹ã¯ããã³ã°ã®å¿ èŠæ§ã¯ãç¹å¥ãªåœä»€ïŒAAUã®åæåãäºåã¹ã¯ããããã°ã©ã ã®éå§ãšåæ¢ãéåæäºåã¹ã¯ããåœä»€ããã³åæããŒã¿è»¢éåœä»€ïŒãçæããã³ã³ãã€ã©ã«ãã£ãŠæ±ºå®ãããŸãé åã®ã¹ã¯ãããããã¡ãŒïŒArray Prefetch BufferãAPBïŒããã¬ãžã¹ã¿ãã¡ã€ã«ãžïŒã ãã£ãã·ã¥ã«é åèŠçŽ ãé 眮ãããããã¹ã¯ããããã€ã¹ã䜿çšããæ¹ãå¹ççã§ããé åèŠçŽ ã¯ã»ãšãã©ã®å Žåé£ç¶ããŠåŠçããã2å以äžäœ¿çšãããããšã¯ãã£ãã«ãªãããã§ã[9]ã ãã ããElbrusã§ããªããŒãžã³ã°ãããã¡ãŒã䜿çšã§ããã®ã¯ãã¢ã©ã€ã¡ã³ããããããŒã¿ãæäœããå Žåã®ã¿ã§ããããšã«æ³šæããŠãã ããã ãã®ãããäœçœ®åãããããããŒã¿ã®èªã¿åã/æžã蟌ã¿ã¯ãäœçœ®åãããããŠããªãããŒã¿ã®å¯Ÿå¿ããæäœãããã¯ããã«é«éã«è¡ãããŸãã
ãŸããElbrusãã€ã¯ãããã»ããµã¯ãã³ãã³ãã¬ãã«ã§ã®äžŠååŠçã«å ããŠãããã€ãã®ã¿ã€ãã®äžŠååŠçããµããŒãããŠããŸãããã¯ãã«äžŠååŠçãå¶åŸ¡ãããŒã®äžŠååŠçããã«ããã·ã³ã³ã³ãã¬ãã¯ã¹ã®ã¿ã¹ã¯ã®äžŠååŠçã§ãã
Elbrusãã©ãããã©ãŒã ã§ããã°ã©ã ã³ãŒãã®ããã©ãŒãã³ã¹ãæ¹åããããã®ããŒã«
ãã¯ãã«äžŠååŠçãå®è£ ããé«æ§èœEMLã©ã€ãã©ãªãšçµã¿èŸŒã¿é¢æ°ã䜿çšããŠãElbrusã¢ãŒããã¯ãã£ããã»ããµã§éçºãããã¢ã«ãŽãªãºã ã®é床ãäžããããšãã§ããŸãã
EMLã©ã€ãã©ãªã¯ããŠãŒã¶ãŒã«ä¿¡å·ãç»åããããªãããã³æ°åŠé¢æ°ãšæŒç®ãåŠçããããã®ããŸããŸãªæ¹æ³ã®ã»ãããæäŸããé«æ§èœã©ã€ãã©ãªã§ã[10]ã C / C ++ã§æžãããããã°ã©ã ã§äœ¿çšããããã®ãã®ã§ãã EMLã©ã€ãã©ãªã«ã¯ã次ã®æ©èœã°ã«ãŒããããã€ãå«ãŸããŠããŸãã
- Vector â () ; - Algebra â ; - Signal â ; - Image â ; - Video â ; - Volume â ; - Graphics â .
ããŒã¿é åã®å Žåãããšãã°ãå ç®ãèŠçŽ ããšã®ä¹ç®ãé åã®å¹³åå€ã®èšç®ãªã©ãæãèŠæ±ãããæäœã決å®ãããŸãã
éçºè ã¯ãElbrusãã©ãããã©ãŒã ã§ãã¯ãã«äžŠååŠçãçŽæ¥äœ¿çšã§ããŸããã€ãŸããè€æ°ã®ããŒã¿èŠçŽ ãå«ãåäžã®ã¬ãžã¹ã¿ã§åãæäœãäžåºŠã«å®è¡ã§ããŸãã ãã®ããã«ãçµã¿èŸŒã¿é¢æ°ã䜿çšããããã®åŒã³åºãã¯ããã®ãã©ãããã©ãŒã çšã®é«æ§èœã³ãŒããåããã³ã³ãã€ã©ãŒã«ãã£ãŠçœ®ãæããããŸãã Elbrus-4Cãã€ã¯ãããã»ããµã¯ãã¬ãžã¹ã¿ãµã€ãºã64ãããã§ããããŒãžã§ã³3ã®åœä»€ã»ããããµããŒãããŠããŸãã 64ãããã¬ãžã¹ã¿ã䜿çšãããšã2ã€ã®å®32ãããæ°ã4ã€ã®16ãããæŽæ°ããŸãã¯8ã€ã®8ãããæŽæ°ãåæã«åŠçã§ãããããããã©ãŒãã³ã¹ãåäžããŸãã Elbrusãã€ã¯ãããã»ããµã®çµã¿èŸŒã¿é¢æ°ã®ã»ããã¯ãçµã¿èŸŒã¿é¢æ°SSEãSSE2ã®ã»ããã«ã»ãŒé¡äŒŒããŠãããããŒã¿å€æããã¯ãã«èŠçŽ ã®åæåãç®è¡æŒç®ããããããšã®è«çæŒç®ããã¯ãã«èŠçŽ ã®çœ®æãªã©ã®æäœãå«ãŸããŸãã
Elbrusã¢ãŒããã¯ãã£ãŒåãã®Violaããã³Jonesåé¡åšã®æé©å
ãŽã£ãªã©ãšãžã§ãŒã³ãºã®éçºãããåé¡ã¢ã«ãŽãªãºã ã®å®éšçæ€èšŒã¯ããã·ã¢é£éŠã®ãã¹ããŒãã®çªå·ãšã·ãªãŒãºãããã³ãã·ã¢é£éŠã®åžæ°ã®å§ãååãããã«ããŒã ãæ§å¥ãæ¥ä»ãšåºçå°ãå«ããã·ã¢é£éŠã®ãã¹ããŒãã®3ããŒãžç®ãæ€åºããã¿ã¹ã¯ã§å®è¡ãããŸããã ãã®åé¡ã解決ããããã«ããã€ããªåé¡åšããã¬ãŒãã³ã°ããããã®å ¥åã¯ã°ã¬ãŒç»åãåãåãã480 x 360ãã¯ã»ã«ã®ãµã€ãºã«çž®å°ãããŸããã ãã®ãµã€ãºã«çž®å°ããŠãå ¥åç»åã®æ¯çãç¶æãããªãå Žåãç»åã®æå°å¯žæ³ã¯å¯Ÿå¿ãããµã€ãºã«çž®å°ãããæ¯çã¯ç¶æããããŸãŸ2çªç®ã®ãµã€ãºãçž®å°ãããŸãã åé¡åã®åºåã¯ããã¹ããŒãããŒãžã®æç¡ãšããŠè§£éããããã®åŽé¢ããã¬ãŒã ã®ç«¯ã«å¹³è¡ã«ãªãããã«æ¹åä»ããããŸãã
éçºãããåé¡åšã¯ãç©åç»åã«åºã¥ããŠèšç®ãããä¿®æ£Haaräºéé·æ¹åœ¢èšå·ã§åäœããŸãã
ããã§ã Iã¯ç©åç»åã W ã Hã¯åèšãèšç®ããé·æ¹åœ¢ã®å¹ ãšé«ããïŒ x ã y ïŒã¯ãµããŠã£ã³ããŠã®å·Šäžé ã®åº§æšãïŒ p ã q ïŒã¯åèšãèšç®ãã2çªç®ã®é·æ¹åœ¢ã®ã·ããã rã¯å±æ§ã®èšç®çµæã§ãã åŸæ¥ã®Haarã®ãã€ã»ã³ãã©ã«æ©èœãšã¯å¯Ÿç §çã«ããã®ãããªæ©èœã¯å ã®ç»åã®æããã®å€åã«å¯ŸããŠããèæ§ããããŸãã
æ€åºäžããããã®èšç®ã¯ãœãŒã¹ç»åã®åãµããŠã£ã³ããŠã«å¯ŸããŠå®è¡ãããŸãã åé¡åšã®å Žåããããã®ãµããŠã£ã³ããŠã䜿çšãããã¹ãããã¯æ°Žå¹³ããã³åçŽã®äž¡æ¹ã§1ã«çããããããœãŒã¹ã€ã¡ãŒãžã®åè¡ã®ãã©ãŒã ïŒ1ïŒã®æäœã¯ã次ã®ãããªãã¯ãã«EMLæäœã䜿çšããŠç°¡åã«å®è£ ã§ããŸãã
- eml_Status eml_Vector_AddShift_32S(const eml_32s *pSrc1, const eml_32s *pSrc2, eml_32s *pDst, eml_32s len, eml_32s len) - 32- Src1 pSrc2 2^shift pDst. - eml_Status eml_Vector_SubShift_32S(const eml_32s *pSrc1, const eml_32s *pSrc2, eml_32s *pDst, eml_32s len, eml_32s len) - 32- Src1 pSrc2 2^shift pDst. - eml_Status eml_Vector_AddCShift_32S(const eml_32s *pSrc, eml_32s val, eml_32s *pDst, eml_32s len, eml_32s shift) - val 32- pSrc 2^shift pDst. - eml_Status eml_Vector_DivShift_32S(const eml_16s *pSrc1, const eml_16s *pSrc2, eml_16s *pDst, eml_32s len, eml_32s shift) - 32- Src1 pSrc2 2^shift pDst.
ãããã£ãŠã2-rectangular Haarç¹åŸŽã®èšç®ã¯ãã¯ãã«åãããŸããã å³2ã¯ãåé¡åšã®æ°Žå¹³ã¢ããªã±ãŒã·ã§ã³ã®æ°ã«å¿ããããã®ãããªæ©èœã®èšç®æéã瀺ããŠããŸãã å®éšã¯ãElbrus-4Cããã»ããµãæèŒãããã·ã³ã§å®è¡ãããŸããã EMLã䜿çšãããšããªããžã§ã¯ããæ€åºããããã»ã¹ã§2é·æ¹åœ¢Haaræ©èœãèšç®ããæéãæ倧10åé«éåã§ããããšãããããŸããããã¯ã64以äžã®åé¡ã¢ããªã±ãŒã·ã§ã³ã®æ°ãèšç®ãããšãã«æãå¹æçã§ãã
次ã«ãå ã®ç»åã®é·ãã«å¿ããŠã1ã€ã®ãµããŠã£ã³ããŠã®åé¡æéãæšå®ããŸãïŒå³3ãåç §ïŒã EMLã®äœ¿çšã«ããããã·ã¢é£éŠã®ãã¹ããŒãã®ããŒãžã®æ€åºæéã30åã«ççž®ãããããšãããããŸãã
å³2-ä¿®æ£ããã2é·æ¹åœ¢Haarå±æ§Tã®èšç®æéã®ã¢ããªã±ãŒã·ã§ã³æ°ãžã®äŸåæ§
å³3-åé¡åšnã®æ°Žå¹³æ¹åã®é©çšåæ°ã«å¯Ÿããåé¡Tã®èšç®æéã®äŸåæ§
åæ§ã®çµæã¯äºæ³ãã¯ããã«è¶ ããŠããŸããã ã©ãããããã®çç±ã¯ãSTLå®è£ ïŒåºæ¬å®è£ ã§äœ¿çšïŒã®æ©èœãšElbrusã§ã¡ã¢ãªãæäœããç¹æ§ïŒããšãã°ãé å亀æããã€ã¹ïŒç¹å¥ãªElbrusãããïŒã䜿çšããããã®ã¢ã©ã€ã¡ã³ãã®å¿ èŠæ§ïŒã§ãã EMLã©ã€ãã©ãªã®æäœã¯ãããã®ç¶æ³ãèæ ®ããéçºè ãã¢ãŒããã¯ãã£ã®ãã¥ã¢ã³ã¹ããæ·±ãæãäžãããå¿ èŠãªããäœã¬ãã«ã®æäœãã¯ãŒã«ã«å éã§ããããšãæããã«ããŸããã
ïŒ Elbrusã³ã³ãã¥ãŒã¿ãŒãšè£œåã¯ChipEXPO-2017ã§ã芧ããã ããŸã
䜿çšããããœãŒã¹ã®ãªã¹ã
- Viola P.ãJones M. Robust Real-time Object Detection // International Journal of Computer Visionã 2001. [7]
- Viola P.ãJones M.ãSnow D.åããšå€èŠ³ã®ãã¿ãŒã³ã䜿çšããæ©è¡è ã®æ€åº// Intã J.èšç® ãŽã£ã¹ 2005. Volã 63ãNoã2ãP.153â161ã [30]
- Moutarde F.ãStanciulescu B.ãBreheret A.æ°ããå¹ççãªadaBoostæ©èœã䜿çšããè»äž¡ãšæ©è¡è ã®ãªã¢ã«ã¿ã€ã èŠèŠæ€åº// 2008 IEEE International Conference on Intelligent RObots SystemsïŒIROS 2008ïŒã 2008. [33]
- Chen S.ãHsieh J.éè·¯æšèã®æ€åºãšèªèã匷å// 2008 Intã ç¢ºèª ãããã åŠã¶ã ãµã€ããŒã³ã 2008幎ã7æã P. 3823â3826ã [36]
- Freund Y.ãSchapire REãªã³ã©ã€ã³åŠç¿ã®æ±ºå®çè«çäžè¬åãšåŸæŒããžã®å¿çš// Journal of Computer and System SciencesãNo. 55. Issue 1ãAugust 1997ãP. 119-139
- Papageorgiou CPãOren M.ãPoggio T.ãªããžã§ã¯ãæ€åºã®äžè¬çãªãã¬ãŒã ã¯ãŒã¯// Sixth Intã ç¢ºèª èšç®ã ãŽã£ã¹ IEEEã«ã¿ãã°No98CH36271ã 1998. Volã 6ã1æå·ã P. 555-562 [47]
- ãã¯ã¹ãã£ãããã³ã°çšã®Crow FC Summed-areaããŒãã«// ACM SIGGRAPH Computer Graphicsã 1984ã 18ãNo. 3. P. 207â212 [49]
- ãã A.K.ãããã³ãI.N. ããã³ããŒãœãã«ã³ã³ãã¥ãŒã¿ãŒããµãŒããŒãã¹ãŒããŒã³ã³ãã¥ãŒã¿ãŒåãã®ãã®ä»ã®ãã·ã¢æè¡ããšã«ãã©ã¹ã//çŸä»£ã®æ å ±æè¡ãšITæè²ãM .:ã€ã³ã¿ãŒãããã¡ãã£ã¢éçºã®ããã®åºéãITæè²ã人éã®å¯èœæ§ãã€ã³ã¿ãŒãããã¡ãã£ã¢ãªãŒã°ãã2014幎ãçªå·10ã39-50ã
- Kim A.K.ãPerekatov V.I.ãErmakov S.G. Elbrusãã¡ããªãŒã®ãã€ã¯ãããã»ããµãŒããã³ã³ã³ãã¥ãŒãã£ã³ã°ã·ã¹ãã ã -ãµã³ã¯ãããã«ãã«ã¯ïŒããŒã¿ãŒã2013幎-272 S.
- Ishin P.A.ãLoginov V.E.ãVasiliev P.P. Elbrusã¢ãŒããã¯ãã£åãã®é«æ§èœãªæ°åŠããã³ãã«ãã¡ãã£ã¢ã©ã€ãã©ãªã䜿çšããèšç®ã®é«éå//èªç©ºå®å®é²è¡ã®ãã©ã«ããMãïŒScientific and Production Association "Diamond"ãããã Acadã A.A. Raspletinaã2015幎ãNoã4ïŒ8ïŒã 64-68ã