Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ʵÀý·Ö¸îÄ£ÐÍMask R-CNNÏê½â
 
  6017  次浏览      32
 2019-3-1
 
±à¼­ÍƼö:

±¾ÎÄÀ´×ÔÓÚcsdn£¬±¾ÎÄÖ÷Òª¸ÅÊöÒ»ÏÂR-CNNÊÇÈçºÎ²ÉÓþí»ýÉñ¾­ÍøÂç½øÐÐÄ¿±ê¼ì²âµÄ¹¤×÷£¬Ï£Íû»á¶ÔÄúµÄѧϰÓÐËù°ïÖú¡£

Mask R-CNNÊÇICCV 2017µÄbest paper£¬ÕÃÏÔÁË»úÆ÷ѧϰ¼ÆËã»úÊÓ¾õÁìÓòÔÚ2017ÄêµÄ×îгɹû¡£ÔÚ»úÆ÷ѧϰ2017ÄêµÄ×îз¢Õ¹ÖУ¬µ¥ÈÎÎñµÄÍøÂç½á¹¹ÒѾ­Öð½¥²»ÔÙÒýÈËÖõÄ¿£¬È¡¶ø´úÖ®µÄÊǼ¯³É£¬¸´ÔÓ£¬Ò»Ê¯¶àÄñµÄ¶àÈÎÎñÍøÂçÄ£ÐÍ¡£Mask R-CNN¾ÍÊǵäÐ͵Ĵú±í¡£

´ó¼Ò¿ÉÒÔ¿´µ½£¬ÔÚʵÀý·Ö¸îMask R-CNN¿ò¼ÜÖУ¬»¹ÊÇÖ÷ÒªÍê³ÉÁËÈý¼þÊÂÇ飺

1) Ä¿±ê¼ì²â£¬Ö±½ÓÔÚ½á¹ûͼÉÏ»æÖÆÁËÄ¿±ê¿ò(bounding box)¡£

2) Ä¿±ê·ÖÀ࣬¶ÔÓÚÿһ¸öÄ¿±ê£¬ÐèÒªÕÒµ½¶ÔÓ¦µÄÀà±ð(class)£¬Çø·Öµ½µ×ÊÇÈË£¬Êdzµ£¬»¹ÊÇÆäËûÀà±ð¡£

3) ÏñËØ¼¶Ä¿±ê·Ö¸î£¬ÔÚÿ¸öÄ¿±êÖУ¬ÐèÒªÔÚÏñËØ²ãÃæÇø·Ö£¬Ê²Ã´ÊÇǰ¾°£¬Ê²Ã´ÊDZ³¾°¡£

¿ÉÊÇ£¬ÔÚ½âÎöMask R-CNN֮ǰ£¬±ÊÕß²»µÃ²»¸æËß´ó¼ÒÒ»¸öÊÂʵ£¬Mask R-CNNÊǼ̳ÐÓÚFaster R-CNN (2016)µÄ£¬Mask R-CNNÖ»ÊÇÔÚFaster R-CNNÉÏÃæ¼ÓÁËÒ»¸öMask Prediction Branch (Mask Ô¤²â·ÖÖ§)£¬²¢ÇÒ¸ÄÁ¼ÁËROI Pooling£¬Ìá³öÁËROI Align¡£´Óͳ¼ÆÊý¾ÝÀ´¿´£¬"Faster R-CNN"ÔÚMask R-CNNÂÛÎĵÄǰÈýÕÂÖгöÏÖÁ˶þÊ®Óà´Î£¬Òò´Ë£¬Èç¹û²»Á˽âRoss GirshickºÍºÎ¿­Ã÷֮ǰµÄ¹¤×÷£¬ÊǺÜÄÑŪ¶®Mask R-CNNµÄ¡£

ÔÚ¸ø´ó¼Ò½âÎöFaster R-CNN֮ǰ£¬±ÊÕßÓÖÒª¸æËß´ó¼Ò£¬Faster R-CNNÊǼ̳ÐÓÚFast R-CNN (2015)£¬Fast R-CNN¼Ì³ÐÓÚR-CNN (2014)¡£Òò´Ë£¬Ë÷ÐÔÆÆ¸ª³ÁÖÛ£¬ÔÚ±¾Æª²©ÎÄÖУ¬±ÊÕ߾Ͱ´ÕÕR-CNN, Fast R-CNN£¬Faster R-CNNÔÙµ½Mask R-CNNµÄ·¢Õ¹Ë³ÐòÈ«²¿½âÎö¡£

Ê×ÏÈʱ¼ä»Øµ½ÁË2014Ä꣬ÔÚ2014Ä꣬ÕýÊÇÉî¶ÈѧϰÈç»ðÈçݱµÄ·¢Õ¹µÄµÚÈýÄê¡£ÔÚCVPR 2014ÄêÖÐRoss GirshickÌá³öµÄR-CNNÖУ¬Ê¹Óõ½Á˾í»ýÉñ¾­ÍøÂçÀ´½øÐÐÄ¿±ê¼ì²â¡£ÏÂÃæ±ÊÕß¾ÍÀ´¸ÅÊöÒ»ÏÂR-CNNÊÇÈçºÎ²ÉÓþí»ýÉñ¾­ÍøÂç½øÐÐÄ¿±ê¼ì²âµÄ¹¤×÷¡£

Ê×ÏÈÄ£ÐÍÊäÈëΪһÕÅͼƬ£¬È»ºóÔÚͼƬÉÏÌá³öÁËÔ¼2000¸ö´ý¼ì²âÇøÓò£¬È»ºóÕâ2000¸ö´ý¼ì²âÇøÓòÒ»¸öÒ»¸öµØ(´®Áª·½Ê½)ͨ¹ý¾í»ýÉñ¾­ÍøÂçÌáÈ¡ÌØÕ÷£¬È»ºóÕâЩ±»ÌáÈ¡µÄÌØÕ÷ͨ¹ýÒ»¸öÖ§³ÖÏòÁ¿»ú(SVM)½øÐзÖÀ࣬µÃµ½ÎïÌåµÄÀà±ð£¬²¢Í¨¹ýÒ»¸öbounding box regressionµ÷ÕûÄ¿±ê°üΧ¿òµÄ´óС¡£ÏÂÃæ£¬±ÊÕß¼òÒª¸ÅÊöÒ»ÏÂR-CNNÊÇÔõôʵÏÖÒÔÉϲ½ÖèµÄ¡£

Ê×ÏÈÔÚµÚÒ»²½ÌáÈ¡2000¸ö´ý¼ì²âÇøÓòµÄʱºò£¬ÊÇͨ¹ýÒ»¸ö2012ÄêÌá³öµÄ·½·¨£¬½Ð×öselective search¡£¼òµ¥À´Ëµ¾ÍÊÇͨ¹ýһЩ´«Í³Í¼Ïñ´¦Àí·½·¨½«Í¼Ïñ·Ö³ÉÈô¸É¿é£¬È»ºóͨ¹ýÒ»¸öSVM½«ÊôÓÚͬһĿ±êµÄÈô¸É¿éÄóöÀ´¡£selective searchµÄºËÐÄÊÇÒ»¸öSVM£¬¼Ü¹¹ÈçÏÂËùʾ£º

È»ºóÔÚµÚ¶þ²½½øÐÐÌØÕ÷ÌáÈ¡µÄʱºò£¬RossÖ±½Ó½èÖúÁ˵±Ê±Éî¶ÈѧϰµÄ×îгɹûAlexNet (2012)¡£ÄÇô£¬¸ÃÍøÂçÊÇÈçºÎѵÁ·µÄÄØ£¿ÊÇÖ±½ÓÔÚImageNetÉÏÃæÑµÁ·µÄ£¬Ò²¾ÍÊÇ˵£¬Ê¹ÓÃͼÏñ·ÖÀàÊý¾Ý¼¯ÑµÁ·ÁËÒ»¸ö½ö½öÓÃÓÚÌáÈ¡ÌØÕ÷µÄÍøÂç¡£

ÔÚµÚÈý²½½øÐжÔÄ¿±êµÄʱºò£¬Ê¹ÓÃÁËÒ»¸öÖ§³ÖÏòÁ¿»ú(SVM)£¬ÔÚѵÁ·Õâ¸öÖ§³ÖÏòÁ¿»úµÄʱºò£¬½áºÏÄ¿±êµÄ±êÇ©(Àà±ð)Óë°üΧ¿òµÄ´óС½øÐÐѵÁ·£¬Òò´Ë£¬¸ÃÖ§³ÖÏòÁ¿»úÒ²ÊDZ»µ¥¶ÀѵÁ·µÄ¡£

ÔÚ2014ÄêR-CNNºá¿Õ³öÊÀµÄʱºò£¬µß¸²ÁËÒÔÍùµÄÄ¿±ê¼ì²â·½°¸£¬¾«¶È´ó´óÌáÉý¡£¶ÔÓÚR-CNNµÄ¹±Ï×£¬¿ÉÒÔÖ÷Òª·ÖΪÁ½¸ö·½Ã棺

1) ʹÓÃÁ˾í»ýÉñ¾­ÍøÂç½øÐÐÌØÕ÷ÌáÈ¡¡£

2) ʹÓÃbounding box regression½øÐÐÄ¿±ê°üΧ¿òµÄÐÞÕý¡£

µ«ÊÇ£¬ÎÒÃÇÀ´¿´Ò»Ï£¬R-CNNÓÐʲôÎÊÌ⣺

1) ºÄʱµÄselective search£¬¶Ôһ֡ͼÏñ£¬ÐèÒª»¨·Ñ2s¡£

2) ºÄʱµÄ´®ÐÐʽCNNǰÏò´«²¥£¬¶ÔÓÚÿһ¸öRoI£¬¶¼ÐèÒª¾­¹ýÒ»¸öAlexNetÌáÌØÕ÷£¬ÎªËùÓеÄRoIÌáÌØÕ÷´óÔ¼»¨·Ñ47s¡£

3) Èý¸öÄ£¿éÊÇ·Ö±ðѵÁ·µÄ£¬²¢ÇÒÔÚѵÁ·µÄʱºò£¬¶ÔÓÚ´æ´¢¿Õ¼äµÄÏûºÄºÜ´ó¡£

ÄÇô£¬Ãæ¶ÔÕâÖÖÇéÊÆ£¬RossÔÚ2015ÄêÌá³öµÄFast R-CNN½øÐÐÁ˸Ľø£¬ÏÂÃæÎÒÃÇÀ´¸ÅÊöÒ»ÏÂFast R-CNNµÄ½â¾ö·½°¸£º

Ê×ÏÈ»¹ÊDzÉÓÃselective searchÌáÈ¡2000¸öºòÑ¡¿ò£¬È»ºó£¬Ê¹ÓÃÒ»¸öÉñ¾­ÍøÂç¶Ôȫͼ½øÐÐÌØÕ÷ÌáÈ¡¡£½Ó×Å£¬Ê¹ÓÃÒ»¸öRoI Pooling LayerÔÚÈ«Í¼ÌØÕ÷ÉÏժȡÿһ¸öRoI¶ÔÓ¦µÄÌØÕ÷£¬ÔÙͨ¹ýÈ«Á¬½Ó²ã(FC Layer)½øÐзÖÀàÓë°üΧ¿òµÄÐÞÕý¡£Fast R-CNNµÄ¹±Ï׿ÉÒÔÖ÷Òª·ÖΪÁ½¸ö·½Ã棺

1) È¡´úR-CNNµÄ´®ÐÐÌØÕ÷ÌáÈ¡·½Ê½£¬Ö±½Ó²ÉÓÃÒ»¸öÉñ¾­ÍøÂç¶ÔȫͼÌáÈ¡ÌØÕ÷(ÕâÒ²ÊÇΪʲôÐèÒªRoI PoolingµÄÔ­Òò)¡£

2) ³ýÁËselective search£¬ÆäËû²¿·Ö¶¼¿ÉÒÔºÏÔÚÒ»ÆðѵÁ·¡£

¿ÉÊÇ£¬Fast R-CNNÒ²ÓÐȱµã£¬ÌåÏÖÔÚºÄʱµÄselective search»¹ÊÇÒÀ¾É´æÔÚ¡£ÄÇô£¬ÈçºÎ¸ÄÁ¼Õâ¸öȱÏÝÄØ£¿·¢±íÓÚ2016ÄêµÄFaster R-CNN½øÐÐÁËÈçÏ´´Ð£º

È¡´úselective search£¬Ö±½Óͨ¹ýÒ»¸öRegion Proposal Network (RPN)Éú³É´ý¼ì²âÇøÓò£¬Õâô×ö£¬ÔÚÉú³ÉRoIÇøÓòµÄʱºò£¬Ê±¼äÒ²¾Í´Ó2sËõ¼õµ½ÁË10ms¡£ÎÒÃÇÀ´¿´Ò»ÏÂFaster R-CNNÊÇÔõô×öµÄ¡£

Ê×ÏÈʹÓù²ÏíµÄ¾í»ý²ãΪȫͼÌáÈ¡ÌØÕ÷£¬È»ºó½«µÃµ½µÄfeature mapsËÍÈëRPN£¬RPNÉú³É´ý¼ì²â¿ò(Ö¸¶¨RoIµÄλÖÃ)²¢¶ÔRoIµÄ°üΧ¿ò½øÐеÚÒ»´ÎÐÞÕý¡£Ö®ºó¾ÍÊÇFast R-CNNµÄ¼Ü¹¹ÁË£¬RoI Pooling Layer¸ù¾ÝRPNµÄÊä³öÔÚfeature mapÉÏÃæÑ¡È¡Ã¿¸öRoI¶ÔÓ¦µÄÌØÕ÷£¬²¢½«Î¬¶ÈÖÃΪ¶¨Öµ¡£×îºó£¬Ê¹ÓÃÈ«Á¬½Ó²ã(FC Layer)¶Ô¿ò½øÐзÖÀ࣬²¢ÇÒ½øÐÐÄ¿±ê°üΧ¿òµÄµÚ¶þ´ÎÐÞÕý¡£ÓÈÆä×¢ÒâµÄÊÇ£¬Faster R-CNNÕæÕýʵÏÖÁ˶˵½¶ËµÄѵÁ·(end-to-end training)¡£

ÒªÀí½âMask R-CNN£¬Ö»ÓÐÏÈÀí½âFaster R-CNN¡£Òò´Ë£¬±ÊÕ߸ù¾ÝFaster R-CNNµÄ¼Ü¹¹(Faster R-CNNµÄZF modelµÄtrain.prototxt)£¬»­ÁËÒ»¸ö½á¹¹Í¼£¬ÈçÏÂËùʾ£º

ÈçÉÏͼËùʾ£¬Faster R-CNNµÄ½á¹¹Ö÷Òª·ÖΪÈý´ó²¿·Ö£¬µÚÒ»²¿·ÖÊǹ²ÏíµÄ¾í»ý²ã-backbone£¬µÚ¶þ²¿·ÖÊǺòÑ¡ÇøÓòÉú³ÉÍøÂç-RPN£¬µÚÈý²¿·ÖÊǶԺòÑ¡ÇøÓò½øÐзÖÀàµÄÍøÂç-classifier¡£ÆäÖУ¬RPNÓëclassifier²¿·Ö¾ù¶ÔÄ¿±ê¿òÓÐÐÞÕý¡£classifier²¿·ÖÊÇÔ­Ô­±¾±¾¼Ì³ÐµÄFast R-CNN½á¹¹¡£ÎÒÃÇÏÂÃæÀ´¼òµ¥¿´¿´Faster R-CNNµÄ¸÷¸öÄ£¿é¡£

Ê×ÏÈÀ´¿´¿´RPNµÄ¹¤×÷Ô­Àí£º

¼òµ¥µØËµ£¬RPNÒÀ¿¿Ò»¸öÔÚ¹²ÏíÌØÕ÷ͼÉÏ»¬¶¯µÄ´°¿Ú£¬ÎªÃ¿¸öλÖÃÉú³É9ÖÖÔ¤ÏÈÉèÖúó¤¿í±ÈÓëÃæ»ýµÄÄ¿±ê¿ò(ÎÄÖнÐ×öanchor)¡£Õâ9ÖÖ³õʼanchor°üº¬ÈýÖÖÃæ»ý(128¡Á128£¬256¡Á256£¬512¡Á512)£¬Ã¿ÖÖÃæ»ýÓÖ°üº¬ÈýÖÖ³¤¿í±È(1:1£¬1:2£¬2:1)¡£Ê¾ÒâͼÈçÏÂËùʾ£º

ÓÉÓÚ¹²ÏíÌØÕ÷ͼµÄ´óСԼΪ40¡Á60£¬RPNÉú³ÉµÄ³õʼanchorµÄ×ÜÊýԼΪ20000¸ö(40¡Á60¡Á9)¡£¶ÔÓÚÉú³ÉµÄanchor£¬RPNÒª×öµÄÊÂÇéÓÐÁ½¸ö£¬µÚÒ»¸öÊÇÅжÏanchorµ½µ×ÊÇǰ¾°»¹ÊDZ³¾°£¬Òâ˼¾ÍÊÇÅжÏÕâ¸öanchorµ½µ×ÓÐûÓи²¸ÇÄ¿±ê£¬µÚ¶þ¸öÊÇΪÊôÓÚǰ¾°µÄanchor½øÐеÚÒ»´Î×ø±êÐÞÕý¡£¶ÔÓÚǰһ¸öÎÊÌ⣬Faster R-CNNµÄ×ö·¨ÊÇʹÓÃSoftmaxLossÖ±½ÓѵÁ·£¬ÔÚѵÁ·µÄʱºòÅųýµôÁ˳¬Ô½Í¼Ïñ±ß½çµÄanchor£»¶ÔÓÚºóÒ»¸öÎÊÌ⣬²ÉÓÃSmoothL1Loss½øÐÐѵÁ·¡£ÄÇô£¬RPNÔõôʵÏÖÄØ£¿Õâ¸öÎÊÌâͨ¹ýRPNµÄ±¾ÖʺܺÃÇó½â£¬RPNµÄ±¾ÖÊÊÇÒ»¸öÊ÷×´½á¹¹£¬Ê÷¸ÉÊÇÒ»¸ö3¡Á3µÄ¾í»ý²ã£¬Ê÷Ö¦ÊÇÁ½¸ö1¡Á1µÄ¾í»ý²ã£¬µÚÒ»¸ö1¡Á1µÄ¾í»ý²ã½â¾öÁËǰºó¾°µÄÊä³ö£¬µÚ¶þ¸ö1¡Á1µÄ¾í»ý²ã½â¾öÁ˱߿òÐÞÕýµÄÊä³ö¡£À´¿´¿´ÔÚ´úÂëÖÐÊÇÔõô×öµÄ£º

´ÓÈçÉÏ´úÂëÖпÉÒÔ¿´µ½£¬¶ÔÓÚRPNÊä³öµÄÌØÕ÷ͼÖеÄÿһ¸öµã£¬Ò»¸ö1¡Á1µÄ¾í»ý²ãÊä³öÁË18¸öÖµ£¬ÒòΪÊÇÿһ¸öµã¶ÔÓ¦9¸öanchor£¬Ã¿¸öanchorÓÐÒ»¸öǰ¾°·ÖÊýºÍÒ»¸ö±³¾°·ÖÊý£¬ËùÒÔ9¡Á2=18¡£ÁíÒ»¸ö1¡Á1µÄ¾í»ý²ãÊä³öÁË36¸öÖµ£¬ÒòΪÊÇÿһ¸öµã¶ÔÓ¦9¸öanchor£¬Ã¿¸öanchor¶ÔÓ¦ÁË4¸öÐÞÕý×ø±êµÄÖµ£¬ËùÒÔ9¡Á4=36¡£ÄÇô£¬ÒªµÃµ½ÕâЩֵ£¬RPNÍøÂçÐèҪѵÁ·¡£ÔÚѵÁ·µÄʱºò£¬¾ÍÐèÒª¶ÔÓ¦µÄ±êÇ©¡£ÄÇô£¬ÈçºÎÅж¨Ò»¸öanchorÊÇǰ¾°»¹ÊDZ³¾°ÄØ£¿ÎÄÖÐ×ö³öÁËÈç϶¨Ò壺Èç¹ûÒ»¸öanchorÓëground truthµÄIoUÔÚ0.7ÒÔÉÏ£¬ÄÇÕâ¸öanchor¾ÍËãǰ¾°(positive)¡£ÀàËÆµØ£¬Èç¹ûÕâ¸öanchorÓëground truthµÄIoUÔÚ0.3ÒÔÏ£¬ÄÇôÕâ¸öanchor¾ÍËã±³¾°(negative)¡£ÔÚ×÷Õß½øÐÐRPNÍøÂçѵÁ·µÄʱºò£¬Ö»Ê¹ÓÃÁËÉÏÊöÁ½Ààanchor£¬Óëground truthµÄIoU½éÓÚ0.3ºÍ0.7µÄanchorûÓÐʹÓá£ÔÚѵÁ·anchorÊôÓÚǰ¾°Óë±³¾°µÄʱºò£¬ÊÇÔÚÒ»ÕÅͼÖУ¬Ëæ»ú³éÈ¡ÁË128¸öǰ¾°anchorÓë128¸ö±³¾°anchor¡£

ÔÚÉÏÒ»¶ÎÖÐÃèÊöÁËǰ¾°Óë±³¾°·ÖÀàµÄѵÁ··½·¨£¬±¾¶ÎÃèÊöanchor±ß¿òÐÞÕýµÄѵÁ··½·¨¡£±ß¿òÐÞÕýÖ÷ÒªÓÉ4¸öÖµÍê³É£¬tx,ty,th,tw¡£ÕâËĸöÖµµÄÒâ˼ÊÇÐÞÕýºóµÄ¿òÔÚanchorµÄxºÍy·½ÏòÉÏ×ö³öÆ½ÒÆ(ÓÉtxºÍty¾ö¶¨)£¬²¢ÇÒ³¤¿í¸÷×Ô·Å´óÒ»¶¨µÄ±¶Êý(ÓÉthºÍty¾ö¶¨)¡£ÄÇô£¬ÈçºÎѵÁ·ÍøÂç²ÎÊýµÃµ½ÕâËĸöֵĨ£¿Fast R-CNN¸ø³öÁ˴𰸣¬²ÉÓÃSmoothL1loss½øÐÐѵÁ·£¬¾ßÌå¿ÉÒÔÃèÊöΪ£º

µ½ÕâÀïÓиöÎÊÌ⣬¾ÍÊDz»ÊǶÔÓÚËùÓеÄanchor£¬¶¼ÐèÒª½øÐÐanchor°üΧ¿òÐÞÕýµÄ²ÎÊýѵÁ·£¬Ö»ÊǶÔpositiveµÄanchorsÓÐÕâÒ»²½¡£Òò´Ë£¬ÔÚѵÁ·RPNµÄʱºò£¬Ö»ÓжÔ128¸öËæ»ú³éÈ¡µÄpositive anchorsÓÐÕâÒ»²½ÑµÁ·¡£Òò´Ë£¬ÑµÁ·RPNµÄËðʧº¯Êý¿ÉÒÔд³É£º

ÔÚÕâÀïLreg¾ÍÊÇÉÏÃæµÄLloc£¬¦Ë±»ÉèÖÃΪ10£¬NclsΪ256£¬NregΪ2400¡£ÕâÑùÉèÖõϰ£¬RPNµÄÁ½²¿·ÖlossÖµÄܱ£³Öƽºâ¡£

µ½ÕâÀïRPN¾Í½âÎöÍê±ÏÁË£¬ÏÂÃæÎÒÃÇÀ´¿´¿´ºóÃæµÄclassifier£¬µ«ÊÇÔÚ½éÉÜclassifier֮ǰ£¬ÎÒÃÇÏÈÀ´¿´¿´RoI Poolingµ½µ××öÁËʲô£¿

Ê×ÏȵÚÒ»¸öÎÊÌâÊÇΪʲôÐèÒªRoI Pooling£¿´ð°¸ÊÇÔÚFast R-CNNÖУ¬ÌØÕ÷±»¹²Ïí¾í»ý²ãÒ»´ÎÐÔÌáÈ¡¡£Òò´Ë£¬¶ÔÓÚÿ¸öRoI¶øÑÔ£¬ÐèÒª´Ó¹²Ïí¾í»ý²ãÉÏժȡ¶ÔÓ¦µÄÌØÕ÷£¬²¢ÇÒËÍÈëÈ«Á¬½Ó²ã½øÐзÖÀà¡£Òò´Ë£¬RoI PoolingÖ÷Òª×öÁËÁ½¼þÊ£¬µÚÒ»¼þÊÇΪÿ¸öRoIѡȡ¶ÔÓ¦µÄÌØÕ÷£¬µÚ¶þ¼þÊÂÊÇΪÁËÂú×ãÈ«Á¬½Ó²ãµÄÊäÈëÐèÇ󣬽«Ã¿¸öRoI¶ÔÓ¦µÄÌØÕ÷µÄά¶Èת»¯³Éij¸ö¶¨Öµ¡£RoI PoolingʾÒâͼÈçÏÂËùʾ£º

ÈçÉÏͼËùʾ£¬¶ÔÓÚÿһ¸öRoI£¬RoI Pooling Layer½«Æä¶ÔÓ¦µÄÌØÕ÷´Ó¹²Ïí¾í»ý²ãÉÏÄóöÀ´£¬²¢×ª»¯³ÉÒ»ÑùµÄ´óС(6¡Á6)¡£

ÔÚRoI Pooling LayerÖ®ºó£¬¾ÍÊÇFast R-CNNµÄ·ÖÀàÆ÷ºÍRoI±ß¿òÐÞÕýѵÁ·¡£·ÖÀàÆ÷Ö÷ÒªÊÇ·ÖÕâ¸öÌáÈ¡µÄRoI¾ßÌåÊÇʲôÀà±ð(ÈË£¬³µ£¬ÂíµÈµÈ)£¬Ò»¹²C+1Àà(°üº¬Ò»Àà±³¾°)¡£RoI±ß¿òÐÞÕýºÍRPNÖеÄanchor±ß¿òÐÞÕýÔ­ÀíÒ»Ñù£¬Í¬ÑùÒ²ÊÇSmoothL1 Loss£¬ÖµµÃ×¢ÒâµÄÊÇ£¬RoI±ß¿òÐÞÕýÒ²ÊǶÔÓڷDZ³¾°µÄRoI½øÐÐÐÞÕý£¬¶ÔÓÚÀà±ð±êǩΪ±³¾°µÄRoI£¬Ôò²»½øÐÐRoI±ß¿òÐÞÕýµÄ²ÎÊýѵÁ·¡£¶ÔÓÚ·ÖÀàÆ÷ºÍRoI±ß¿òÐÞÕýµÄѵÁ·£¬¿ÉÒÔ¹«Ê½ÃèÊöÈçÏ£º

ÉÏʽÖÐu>=1±íʾRoI±ß¿òÐÞÕýÊǶÔÓڷDZ³¾°µÄRoI¶øÑԵģ¬ÊµÑéÖУ¬ÉÏʽµÄ¦ËÈ¡1¡£

ÔÚѵÁ··ÖÀàÆ÷ºÍRoI±ß¿òÐÞÕýʱ£¬²½ÖèÈçÏÂËùʾ£º

1) Ê×ÏÈͨ¹ýRPNÉú³ÉÔ¼20000¸öanchor(40¡Á60¡Á9)¡£

2) ¶Ô20000¸öanchor½øÐеÚÒ»´Î±ß¿òÐÞÕý£¬µÃµ½ÐÞ¶©±ß¿òºóµÄproposal¡£

3) ¶Ô³¬¹ýͼÏñ±ß½çµÄproposalµÄ±ß½øÐÐclip£¬Ê¹µÃ¸Ãproposal²»³¬¹ýͼÏñ·¶Î§¡£

4) ºöÂÔµô³¤»òÕß¿í̫СµÄproposal¡£

5) ½«ËùÓÐproposal°´ÕÕǰ¾°·ÖÊý´Ó¸ßµ½µÍÅÅÐò£¬Ñ¡È¡Ç°12000¸öproposal¡£

6) ʹÓÃãÐֵΪ0.7µÄNMSËã·¨ÅųýµôÖØµþµÄproposal¡£

7) Õë¶ÔÉÏÒ»²½Ê£ÏµÄproposal,ѡȡǰ2000¸öproposal½øÐзÖÀàºÍµÚ¶þ´Î±ß¿òÐÞÕý¡£

×ܵÄÀ´Ëµ£¬Faster R-CNNµÄloss·ÖÁ½´ó¿é£¬µÚÒ»´ó¿éÊÇѵÁ·RPNµÄloss(°üº¬Ò»¸öSoftmaxLossºÍSmoothL1Loss)£¬µÚ¶þ´ó¿éÊÇѵÁ·Fast R-CNNÖзÖÀàÆ÷µÄloss(°üº¬Ò»¸öSoftmaxLossºÍSmoothL1Loss)£¬Faster R-CNNµÄ×ܵÄlossº¯ÊýÃèÊöÈçÏ£º

È»ºó£¬¶ÔÓÚFaster R-CNNµÄѵÁ··½Ê½ÓÐÈýÖÖ£¬¿ÉÒÔ±»ÃèÊöÈçÏ£º

1) RPNºÍFast R-CNN½»ÌæÑµÁ·£¬ÕâÖÖ·½Ê½Ò²ÊÇ×÷Õß²ÉÓõķ½Ê½¡£

2) ½üËÆÁªºÏRPNºÍFast R-CNNµÄѵÁ·£¬ÔÚѵÁ·Ê±ºöÂÔµôÁËRoI±ß¿òÐÞÕýµÄÎó²î£¬Ò²¾ÍÊÇ˵ֻ¶Ôanchor×öÁ˱߿òÐÞ¶©£¬ÕâÒ²ÊÇΪʲô½Ð"½üËÆÁªºÏ"µÄÔ­Òò¡£

3) ÁªºÏRPNºÍFast R-CNNµÄѵÁ·¡£

¶ÔÓÚ×÷Õß²ÉÓõĽ»ÌæÑµÁ·µÄ·½Ê½£¬²½ÖèÈçÏ£º

1) ʹÓÃÔÚImageNetÉÏԤѵÁ·µÄÄ£Ðͳõʼ»¯¹²Ïí¾í»ý²ã²¢ÑµÁ·RPN¡£

2) ʹÓÃÉÏÒ»²½µÃµ½µÄRPN²ÎÊýÉú³ÉRoI proposal¡£ÔÙʹÓÃImageNetÉÏԤѵÁ·µÄÄ£Ðͳõʼ»¯¹²Ïí¾í»ý²ã£¬ÑµÁ·Fast R-CNN²¿·Ö(·ÖÀàÆ÷ºÍRoI±ß¿òÐÞ¶©)¡£

3) ½«ÑµÁ·ºóµÄ¹²Ïí¾í»ý²ã²ÎÊý¹Ì¶¨£¬Í¬Ê±½«Fast R-CNNµÄ²ÎÊý¹Ì¶¨£¬ÑµÁ·RPN¡£(´ÓÕâÒ»²½¿ªÊ¼£¬¹²Ïí¾í»ý²ãµÄ²ÎÊýÕæÕý±»Á½´ó¿éÍøÂç¹²Ïí)

4) ͬÑù½«¹²Ïí¾í»ý²ã²ÎÊý¹Ì¶¨£¬²¢½«RPNµÄ²ÎÊý¹Ì¶¨£¬ÑµÁ·Fast R-CNN²¿·Ö¡£

Faster R-CNNµÄ²âÊÔÁ÷³ÌºÍѵÁ·Á÷³ÌͦÏàËÆ£¬ÃèÊöÈçÏ£º1) Ê×ÏÈͨ¹ýRPNÉú³ÉÔ¼20000¸öanchor(40¡Á60¡Á9)ͨ¹ýRPN¡£

2) ¶Ô20000¸öanchor½øÐеÚÒ»´Î±ß¿òÐÞÕý£¬µÃµ½ÐÞ¶©±ß¿òºóµÄproposal¡£

3) ¶Ô³¬¹ýͼÏñ±ß½çµÄproposalµÄ±ß½øÐÐclip£¬Ê¹µÃ¸Ãproposal²»³¬¹ýͼÏñ·¶Î§¡£

4) ºöÂÔµô³¤»òÕß¿í̫СµÄproposal¡£

5) ½«ËùÓÐproposal°´ÕÕǰ¾°·ÖÊý´Ó¸ßµ½µÍÅÅÐò£¬Ñ¡È¡Ç°6000¸öproposal¡£

6) ʹÓÃãÐֵΪ0.7µÄNMSËã·¨ÅųýµôÖØµþµÄproposal¡£

7) Õë¶ÔÉÏÒ»²½Ê£ÏµÄproposal,ѡȡǰ300¸öproposal½øÐзÖÀàºÍµÚ¶þ´Î±ß¿òÐÞÕý¡£

µ½ÕâÀFaster R-CNN¾Í½éÉÜÍê±ÏÁË¡£½ÓÏÂÀ´µ½ÁËMask R-CNN£¬ÎÒÃÇÀ´¿´¿´RoI Pooling³öÁËʲôÎÊÌ⣺

ÎÊÌâ1£º´ÓÊäÈëͼÉϵÄRoIµ½ÌØÕ÷ͼÉϵÄRoI feature£¬RoI PoolingÊÇÖ±½Óͨ¹ýËÄÉáÎåÈëÈ¡ÕûµÃµ½µÄ½á¹û¡£

ÕâÒ»µã¿ÉÒÔÔÚ´úÂëÖÐÓ¡Ö¤£º

¿ÉÒÔ¿´µ½Ö±½ÓÓÃroundÈ¡µÄÖµ£¬ÕâÑù»á´øÀ´Ê²Ã´»µ´¦ÄØ£¿¾ÍÊÇRoI Pooling¹ýºóµÄµÃµ½µÄÊä³ö¿ÉÄܺÍԭͼÏñÉϵÄRoI¶Ô²»ÉÏ£¬ÈçÏÂͼËùʾ£º

ÓÒͼÖÐÀ¶É«²¿·Ö±íʾ°üº¬Á˽γµÖ÷ÌåµÄµÄÐÅÏ¢µÄ·½¸ñ£¬RoI Pooling LayerµÄËÄÉáÎåÈëÈ¡Õû²Ù×÷µ¼ÖÂÆä½øÐÐÁËÆ«ÒÆ¡£

ÎÊÌâ2£ºÔÙ½«Ã¿¸öRoI¶ÔÓ¦µÄÌØÕ÷ת»¯Îª¹Ì¶¨´óСµÄά¶Èʱ£¬ÓÖ²ÉÓÃÁËÈ¡Õû²Ù×÷¡£ÔÚÕâÀï±ÊÕß¾ÙÀý½²½âÒ»ÏÂRoI PoolingµÄ²Ù×÷£º

ÔÚ´ÓRoIµÃµ½¶ÔÓ¦µÄÌØÕ÷ͼʱ£¬½øÐÐÁËÎÊÌâ1ÃèÊöµÄÈ¡Õû£¬Ôڵõ½ÌØÕ÷ͼºó£¬ÈçºÎµÃµ½Ò»¸ö6¡Á6µÄÈ«Á¬½Ó²ãµÄÊäÈëÄØ£¿RoI PoolingÕâÑù×ö£º½«RoI¶ÔÓ¦µÄÌØÕ÷ͼ·Ö³É6¡Á6¿é£¬È»ºóÖ±½Ó´Óÿ¿éÖÐÕÒµ½×î´óÖµ¡£ÔÚÉÏͼÖеÄÀý×ÓÖУ¬±ÈÈçԭͼÉϵĵÄRoI´óСÊÇ280¡Á480£¬µÃµ½¶ÔÓ¦µÄÌØÕ÷ͼÊÇ18¡Á30¡£½«ÌØÕ÷ͼ·Ö³É6¿é£¬Ã¿¿é´óСÊÇ3¡Á5£¬È»ºóÔÚÿһ¿éÖзֱðÑ¡Ôñ×î´óÖµ·ÅÈë6¡Á6µÄ¶ÔÓ¦ÇøÓòÖС£ÔÚ½«ÌØÕ÷ͼ·Ö¿éµÄʱºò£¬ÓÖÓõ½ÁËÈ¡Õû£¬ÕâµãͬÑù¿ÉÒÔÔÚ´úÂëÖеõ½×ôÖ¤£º

ÕâÖÖÈ¡Õû²Ù×÷(ÔÚMask R-CNNÖб»³ÆÎªquantization)¶ÔRoI·ÖÀàÓ°Ïì²»´ó£¬¿ÉÊǶÔÖðÏñËØµÄÔ¤²âÄ¿±êÊÇÓк¦µÄ£¬ÒòΪ¶Ôÿ¸öRoIÈ¡µÃµÄÌØÕ÷²¢Ã»ÓÐÓëRoI¶ÔÆë¡£Òò´Ë£¬Mask R-CNN¶ÔRoI Pooling×öÁ˸Ľø²¢Ìá³öÁËRoI Align¡£

RoI AlignµÄÖ÷Òª´´ÐµãÊÇ£¬Õë¶ÔÎÊÌâ1£¬²»ÔÙ½øÐÐÈ¡Õû²Ù×÷¡£Õë¶ÔÎÊÌâ2£¬Ê¹ÓÃË«ÏßÐÔ²åÖµÀ´¸ü¾«È·µØÕÒµ½Ã¿¸ö¿é¶ÔÓ¦µÄÌØÕ÷¡£×ܵÄÀ´Ëµ£¬RoI AlignµÄ×÷ÓÃÖ÷Òª¾ÍÊÇÌÞ³ýÁËRoI PoolingµÄÈ¡Õû²Ù×÷£¬²¢ÇÒʹµÃΪÿ¸öRoIÈ¡µÃµÄÌØÕ÷Äܹ»¸üºÃµØ¶ÔÆëԭͼÉϵÄRoIÇøÓò¡£

ÏÂͼ²ûÊöÁËMask R-CNNµÄMask branch£º

ÔÚMask R-CNNÖеÄRoI AlignÖ®ºóÓÐÒ»¸ö"head"²¿·Ö£¬Ö÷Òª×÷ÓÃÊǽ«RoI AlignµÄÊä³öά¶ÈÀ©´ó£¬ÕâÑùÔÚÔ¤²âMaskʱ»á¸ü¼Ó¾«È·¡£ÔÚMask BranchµÄѵÁ·»·½Ú£¬×÷ÕßûÓвÉÓÃFCNʽµÄSoftmaxLoss£¬·´¶øÊÇÊä³öÁËK¸öMaskÔ¤²âͼ(Ϊÿһ¸öÀà¶¼Êä³öÒ»ÕÅ)£¬²¢²ÉÓÃaverage binary cross-entropy lossѵÁ·£¬µ±È»ÔÚѵÁ·Mask branchµÄʱºò£¬Êä³öµÄK¸öÌØÕ÷ͼÖУ¬Ò²Ö»ÊǶÔÓ¦ground truthÀà±ðµÄÄÇÒ»¸öÌØÕ÷ͼ¶ÔMask lossÓй±Ïס£

Mask R-CNNµÄѵÁ·Ëðʧº¯Êý¿ÉÒÔÃèÊöΪ£º

ÔÚÉÏʽÖУ¬LboxºÍLmask¶¼ÊǶÔpositive RoI²Å»áÆð×÷Óõġ£

ÔÚMask R-CNNÖУ¬Ïà½ÏÓÚFaster R-CNN»¹ÓÐЩÂÔ΢µÄµ÷Õû£¬±ÈÈçpositive RoI±»¶¨Òå³ÉÁËÓëGround truthµÄIoU´óÓÚ0.5µÄ(Faster R-CNNÖÐÊÇ0.7)¡£Ì«¹ýÓÚϸ½ÚµÄ¶«Î÷±¾Æª²©ÎIJ»ÔÙ׸Êö£¬ÏêÇé²Î¼ûMask R-CNNÖеÄImplementation Details¡£

µ½ÕâÀïÔÙ½«Mask R-CNNºÍFCIS×ö¸ö±È½Ï£¬Ê×ÏÈÁ½ÕßµÄÏàͬµãÊǾù¼Ì³ÐÁËFaster R-CNNµÄRPN²¿·Ö¡£²»Í¬µãÊǶÔÓÚFCIS£¬Ô¤²âmaskºÍ·ÖÀàÊǹ²ÏíµÄ²ÎÊý¡£¶øMask R-CNNÔòÊǸ÷Íæ¸÷µÄ£¬Á½¸öÈÎÎñ¸÷×ÔÓи÷×ԵĿÉѵÁ·²ÎÊý¡£¶ÔÓÚÕâÒ»µã£¬Mask R-CNNÂÛÎÄÀﻹרÃÅ×÷Á˱Ƚϣ¬ÏÔʾ¶ÔÓÚÔ¤²âmaskºÍ·ÖÀàÈç¹ûʹÓù²ÏíµÄÌØÕ÷ͼ¶ÔÓÚÄ³Ð©ÖØµþÄ¿±ê¿ÉÄÜ»á³öÏÖÎÊÌâ¡£

Mask R-CNNµÄʵÑéÈ¡µÃÁ˺ܺõÄЧ¹û£¬´ïµ½ÉõÖÁ³¬¹ýÁËstate-of-the-artµÄˮƽ¡£²»¹ýѵÁ·´ú¼ÛÒ²ÊÇÏ൱´óµÄ£¬ÐèÒª8¿éGPUÁªºÏѵÁ·¡£

Mask R-CNNµÄʵÑé·Ç³£Ïêϸ£¬»¹×öÁ˺ܶà¶Ô±ÈʵÑ飬±ÈÈç˵¸Ä»»ÍøÂçÉî¶È£¬ÔÚѵÁ·mask branchʱµÄÎó²îÖÖÀ࣬½«RoI AlignͬRoI PoolingºÍRoI Warping½øÐбȽϣ¬¸Ä±äÔ¤²âmaskµÄ·½Ê½(FCNºÍÈ«Á¬½Ó²ã)µÈ£¬ÏêÇéÇë²Î¼ûMask R-CNNµÄʵÑ鲿·Ö¡£

µ½ÕâÀïMask R-CNN½éÉܾͽӽüβÉùÁË£¬±ÊÕß»¹Ïë˵һЩ×Ô¼ºµÄ˼¿¼Óë¸ÐÏ룺

1) ¿É¼Ì³Ð¹¤×÷µÄ³ä·ÖÌåÏÖ¡£´ó¼Ò¿´µ½Mask R-CNNµÄ½á¹¹Ï൱¸´ÔÓ£¬Êµ¼ÊÉÏÊǼ̳ÐÁË´óÁ¿Ö®Ç°µÄ¹¤×÷¡£Ê×ÏÈbounding box regressionÔÚ2014ÄêµÄR-CNNÖоͳöÏÖ¹ý¡£Mask R-CNNµÄÖ÷Òª´´ÐµãRoI Align¸ÄÁ¼ÓÚRoI Pooling£¬¶øRoI PoolingÊÇÔÚ2015ÄêµÄFast R-CNNÖÐÌá³öµÄ¡£¶ÔÓÚRPNµÄÓ¦Ó㬸üÊÇÖ±½Ó¼Ì³ÐÁË2016ÄêµÄFaster R-CNN¡£ÖµµÃÒ»ÌáµÄÊÇ£¬ÉÏÊöµÄÿһƪÎÄÕ£¬¶¼Êǵ߸²Ä¿±ê¼ì²âÁìÓò¼ÆËã¼Ü¹¹µÄ½Ü³ö×÷Æ·¡£

2)¼¯³ÉµÄ¹¤×÷¡£»¹ÊÇÄǾäÀÏ»°£¬µ½ÁË2017-2018Äê£¬Ëæ×ÅÉî¶ÈѧϰµÄ¸ßËÙ·¢Õ¹£¬µ¥ÈÎÎñÄ£ÐÍÒѾ­Öð½¥±»Åׯú¡£È¡¶ø´úÖ®µÄÊǸü¼¯³É£¬¸ü×ۺϣ¬¸üÇ¿´óµÄ¶àÈÎÎñÄ£ÐÍ¡£Mask R-CNN¾ÍÊÇÆäÖеĴú±í¡£

3)ÒýÁì³±Á÷¡£ÔÙ´ÎÏòºÎ¿­Ã÷ºÍRoss GirshickÖ¾´£¬ËûÃǵÄʵÁ¦ÒýÁìÁËÄ¿±ê¼ì²âÁìÓòµÄ·¢Õ¹£¬Òò´ËÎÞÂÛËûÃÇÔÚÄÄ£¬ÎÞÂÛÊÇÔÚ΢Èí»¹ÊÇFaceBook£¬ËûÃǵÄideaºÍ×÷Æ·¶¼±»·Ç³£¶àµÄÈËÓ¦ÓûòÕ߼̳С£

 

   
6017 ´Îä¯ÀÀ       32
Ïà¹ØÎÄÕÂ

»ùÓÚͼ¾í»ýÍøÂçµÄͼÉî¶Èѧϰ
×Ô¶¯¼ÝÊ»ÖеÄ3DÄ¿±ê¼ì²â
¹¤Òµ»úÆ÷ÈË¿ØÖÆÏµÍ³¼Ü¹¹½éÉÜ
ÏîĿʵս£ºÈçºÎ¹¹½¨ÖªÊ¶Í¼Æ×
 
Ïà¹ØÎĵµ

5GÈ˹¤ÖÇÄÜÎïÁªÍøµÄµäÐÍÓ¦ÓÃ
Éî¶ÈѧϰÔÚ×Ô¶¯¼ÝÊ»ÖеÄÓ¦ÓÃ
ͼÉñ¾­ÍøÂçÔÚ½»²æÑ§¿ÆÁìÓòµÄÓ¦ÓÃÑо¿
ÎÞÈË»úϵͳԭÀí
Ïà¹Ø¿Î³Ì

È˹¤ÖÇÄÜ¡¢»úÆ÷ѧϰ&TensorFlow
»úÆ÷ÈËÈí¼þ¿ª·¢¼¼Êõ
È˹¤ÖÇÄÜ£¬»úÆ÷ѧϰºÍÉî¶Èѧϰ
ͼÏñ´¦ÀíËã·¨·½·¨Óëʵ¼ù