·ÖÏí

ССղͬѧ

±¾Ìû×îºóÓÉ desehawk ÓÚ 2018-5-3 18:18 ±à¼­


΢Ðźţº
xiaoxiaozhantongxue

¹¦ÄܽéÉÜ£º
Ë«Ò»Á÷¸ßУÔÚ¶ÁÑо¿Éú£¬×¨ÑÐC++,Python£¬Ö÷ÒªÑо¿Í¼Ïñ´¦Àí¡¢»úÆ÷ѧϰÏà¹Ø֪ʶ¡£

¾­µäÎÄÕÂÍƼö

³ÌÐòÔ±ÃæÊԱر¸Ö®ÅÅÐòËã·¨»ã×Ü(ÉÏ)



     ±¾ÎÄÓÃPythonʵÏÖÁË¿ìËÙÅÅÐò¡¢²åÈëÅÅÐò¡¢Ï£¶ûÅÅÐò¡¢¹é²¢ÅÅÐò¡¢¶ÑÅÅÐò¡¢Ñ¡ÔñÅÅÐò¡¢Ã°ÅÝÅÅÐò¹²7ÖÖÅÅÐòËã·¨¡£
1.gif
Ò»¡¢¿ìËÙÅÅÐò
1.½éÉÜ
         ¿ìËÙÅÅÐòÓÉC. A. R. HoareÔÚ1962ÄêÌá³ö¡£ËüµÄ»ù±¾Ë¼ÏëÊÇ:ͨ¹ýÒ»ÌËÅÅÐò½«ÒªÅÅÐòµÄÊý¾Ý·Ö¸î³É¶ÀÁ¢µÄÁ½²¿·Ö£¬ÆäÖÐÒ»²¿·ÖµÄËùÓÐÊý¾Ý¶¼±ÈÁíÍâÒ»²¿·ÖµÄËùÓÐÊý¾Ý¶¼ÒªÐ¡£¬È»ºóÔÙ°´´Ë·½·¨¶ÔÕâÁ½²¿·ÖÊý¾Ý·Ö±ð½øÐпìËÙÅÅÐò£¬Õû¸öÅÅÐò¹ý³Ì¿ÉÒԵݹé½øÐУ¬ÒÔ´Ë´ïµ½Õû¸öÊý¾Ý±ä³ÉÓÐÐòÐòÁС£
2.²½Öè¼°Á÷³Ìͼ
(1)´ÓÊýÁÐÖÐÌô³öÒ»¸öÔªËØ£¬³Æ¡°»ù×¼¡±
(2)ÖØÐÂÅÅÐòÊýÁУ¬ËùÓÐÔªËرȻù׼ֵСµÄ°Ú·ÅÔÚ»ù׼ǰÃ棬ËùÓÐÔªËرȻù×¼Öµ´óµÄ°ÚÔÚ»ù×¼µÄºóÃ棨ÏàͬµÄÊý¿ÉÒÔµ½ÈÎÒ»±ß£©¡£ÔÚÕâ¸ö·ÖÇøÍ˳öÖ®ºó£¬¸Ã»ù×¼¾Í´¦ÓÚÊýÁеÄÖмäλÖá£Õâ¸ö³ÆΪ·ÖÇø£¨partition£©²Ù×÷¡£
(3)µÝ¹éµØ£¨recursive£©°ÑСÓÚ»ù×¼ÖµÔªËصÄ×ÓÊýÁкʹóÓÚ»ù×¼ÖµÔªËصÄ×ÓÊýÁÐÅÅÐò¡£
Á÷³Ìͼ£º£¨×ֺܳó~ºó±ß»¹ÊDz»»­Á˹þ£©
2.png

3.pythonʵÏÖ
3.png

#encoding=utf-8
import random   
#¿ìËÙÅÅÐò  
def qsort(list,low,high):   
    if low >= high:  
        return  
    first=low  
    last=high  
    key=list[first]  
#Ö÷Ñ­»·£¬Ëã·¨Öص㣬¼ûÁ÷³Ìͼ  
    while last>first:  
        while last>first and list[last] >= key:  
            last-=1  
        list[first]=list[last]  
        while last>first and list[first] <= key:  
            first+=1  
        list[last]=list[first]  
    list[first]=key  
#ÕâÁ½ÐÐÀûÓõݹéÍê³ÉÁ½¸ö·ÖÇøµÄÅÅÐò
    qsort(list,low,first-1)      
    qsort(list,first+1,high)  
#ÒÔÏÂÊǵ÷ÓÿìËÙÅÅÐò·½·¨
my_list=[]  
for i in range(8):  
    my_list.append(random.randint(1,300))  
qsort(my_list,0,len(my_list)-1)  
print(my_list)  

4.ÊÓ¾õЧ¹ûչʾ
640.gif


¸ü¶à²Î¿¼Ô­ÎÄ

ÒÑÓÐ(14)ÈËÆÀÂÛ

Ìøתµ½Ö¸¶¨Â¥²ã
desehawk ·¢±íÓÚ 2018-5-3 16:23:22

³ÌÐòÔ±ÃæÊԱر¸Ö®ÅÅÐòËã·¨»ã×Ü(ÏÂ)

±¾Ìû×îºóÓÉ desehawk ÓÚ 2018-5-3 17:02 ±à¼­

    ±¾ÎÄÓÃPythonʵÏÖÁË¿ìËÙÅÅÐò¡¢²åÈëÅÅÐò¡¢Ï£¶ûÅÅÐò¡¢¹é²¢ÅÅÐò¡¢¶ÑÅÅÐò¡¢Ñ¡ÔñÅÅÐò¡¢Ã°ÅÝÅÅÐò¹²7ÖÖÅÅÐòËã·¨¡£ÉÏƪÒѾ­½éÉÜÁËÇ°ÈýÖÖ~¸ø³öÔ­ÎÄÁ´½ÓÈçÏ£º³ÌÐòÔ±ÃæÊԱر¸Ö®ÅÅÐòËã·¨»ã×Ü(ÉÏ)
1.png

ËÄ¡¢¹é²¢ÅÅÐò
1.½éÉÜ
          ¹é²¢ÅÅÐòÊǽ¨Á¢Ôڹ鲢²Ù×÷ÉϵÄÒ»ÖÖÓÐЧµÄÅÅÐòËã·¨,¸ÃËã·¨ÊDzÉÓ÷ÖÖ稣¨Divide and Conquer£©µÄÒ»¸ö·Ç³£µäÐ͵ÄÓ¦Ó᣽«ÒÑÓÐÐòµÄ×ÓÐòÁкϲ¢£¬µÃµ½ÍêÈ«ÓÐÐòµÄÐòÁУ»¼´ÏÈʹÿ¸ö×ÓÐòÁÐÓÐÐò£¬ÔÙʹ×ÓÐòÁжμäÓÐÐò¡£Èô½«Á½¸öÓÐÐò±íºÏ²¢³ÉÒ»¸öÓÐÐò±í£¬³ÆΪ¶þ·¹é²¢¡£
2.²½Öè
£¨1£©ÉêÇë¿Õ¼ä£¬Ê¹Æä´óСΪÁ½¸öÒѾ­ÅÅÐòÐòÁÐÖ®ºÍ£¬¸Ã¿Õ¼äÓÃÀ´´æ·ÅºÏ²¢ºóµÄÐòÁÐ
£¨2£©É趨Á½¸öÖ¸Õ룬×î³õλÖ÷ֱðΪÁ½¸öÒѾ­ÅÅÐòÐòÁеÄÆðʼλÖÃ
£¨3£©±È½ÏÁ½¸öÖ¸ÕëËùÖ¸ÏòµÄÔªËØ£¬Ñ¡ÔñÏà¶ÔСµÄÔªËØ·ÅÈëµ½ºÏ²¢¿Õ¼ä£¬²¢Òƶ¯Ö¸Õëµ½ÏÂһλÖÃ
£¨4£©Öظ´²½Öè3Ö±µ½Ä³Ò»Ö¸Õë´ïµ½ÐòÁÐβ
£¨5£©½«ÁíÒ»ÐòÁÐʣϵÄËùÓÐÔªËØÖ±½Ó¸´ÖƵ½ºÏ²¢ÐòÁÐβ
3.pythonʵÏÖ

2.png
4.ÊÓ¾õЧ¹ûչʾ
3gif.gif


¸ü¶à²Î¿¼Ô­ÎÄ
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:35:59
±¾Ìû×îºóÓÉ desehawk ÓÚ 2018-5-3 17:02 ±à¼­
»úÆ÷ѧϰ£¬Äã²»µÃ²»ÕÆÎÕµÄÊ®´óËã·¨£¨ÉÏƪ£©



¡ñ »úÆ÷ѧϰ¼°Æä·ÖÀà
ÎÒÃÇÖªµÀ£¬»úÆ÷ѧϰ(Machine Learning, ML)ÊÇÒ»ÃŶàÁìÓò½»²æѧ¿Æ£¬Éæ¼°¸ÅÂÊÂÛ¡¢Í³¼Æѧ¡¢±Æ½üÂÛ¡¢Í¹·ÖÎö¡¢Ëã·¨¸´ÔÓ¶ÈÀíÂ۵ȶàÃÅѧ¿Æ¡£×¨ÃÅÑо¿¼ÆËã»úÔõÑùÄ£Äâ»òʵÏÖÈËÀàµÄѧϰÐÐΪ£¬ÒÔ»ñȡеÄ֪ʶ»ò¼¼ÄÜ£¬ÖØÐÂ×éÖ¯ÒÑÓеÄ֪ʶ½á¹¹Ê¹Ö®²»¶Ï¸ÄÉÆ×ÔÉíµÄÐÔÄÜ¡£

°´ÕÕѧϰ·½Ê½½øÐзÖÀ࣬»úÆ÷ѧϰËã·¨¿É·ÖΪ¼à¶½Ê½Ñ§Ï°£¬·Ç¼à¶½Ê½Ñ§Ï°ºÍÇ¿»¯Ñ§Ï°ÈýÖÖ¡£

¢Ù
¼à¶½Ñ§Ï°Ä¿µÄÊÇʹÓÃÓÐÀà±êµÄѵÁ·Êý¾Ý¹¹½¨Ä£ÐÍ£¬ÀûÓÃѵÁ·µÃµ½µÄÄ£ÐͶÔδÀ´Êý¾Ý½øÐÐÔ¤²â£¬¼à¶½ÊÇָѵÁ·Êý¾Ý¼¯ÖÐÿһ¸öÑù±¾¾ùÓÐÒ»¸öÒÑÖªµÄÊä³öÏÀà±ê£¬label£©¡£¼à¶½Ê½Ñ§Ï°µÄ³£¼ûÓ¦Óó¡¾°Èç·ÖÀàÎÊÌâºÍ»Ø¹éÎÊÌâ¡£³£¼ûËã·¨ÓÐÂß¼­»Ø¹é£¨Logistic Regression£©ºÍ·´Ïò´«µÝÉñ¾­ÍøÂ磨Back Propagation Neural Network£©
1.png

˵µ½¼à¶½Ê½Ñ§Ï°²»µÃ²»Ìáµ½·ÖÀ࣬·ÖÀàΪ¼à¶½Ê½Ñ§Ï°Ò»¸ö×ÓÀ࣬ĿµÄÊÇ»ùÓÚ¶Ô¹ýÍùÀà±êÒÑ֪ʾÀýµÄ¹Û²ìÓëѧϰ£¬ÊµÏÖ¶ÔÐÂÑù±¾Àà±êµÄÔ¤²â¡£ÀýÈç¾­µäµÄ¼ì²âÀ¬»øÓʼþµÄÀý×Ó£¬ÕâÊÇÒ»¸öµäÐ͵Ķþ·ÖÀàÎÊÌ⣻ÓÖÈçÊý×Öʶ±ð£¬0-9Ê®¸öÊý×ÖµÄʶ±ð·ÖÀàÕâÊÇÒ»¸öµäÐ͵Ķà·ÖÀàÎÊÌâ¡£

¸ü¶à²Î¿¼Ô­ÎÄ






»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:38:49
»úÆ÷ѧϰ£¬Äã²»µÃ²»ÕÆÎÕµÄÊ®´óËã·¨£¨ÖУ©



µ¼¶Á£ºÍ¨¹ý±¾ÆªÎÄÕ¿ÉÒÔ¶ÔMLµÄ³£ÓÃËã·¨Óиö³£Ê¶ÐÔµÄÈÏʶ£¬Ã»ÓдúÂ룬ûÓи´ÔÓµÄÀíÂÛÍƵ¼£¬¾ÍÊÇͼ½âһϣ¬ÖªµÀÕâЩËã·¨ÊÇʲô£¬ËüÃÇÊÇÔõôӦÓõģ¬Àý×ÓÖ÷ÒªÊÇ·ÖÀàÎÊÌâ¡£¡¾ÎÄÄ©¸½Ôù½£Ö¸offer£¬³ÌÐòÔ±ÇóÖ°±Ø±¸¡¿

½ñÌìÒª½éÉܵÄËã·¨ÈçÏ£º
  • ¾ö²ßÊ÷
  • Ëæ»úÉ­ÁÖËã·¨
  • Âß¼­»Ø¹é
  • SVM
  • ÆÓËر´Ò¶Ë¹

¢Ù¾ö²ßÊ÷
¸ù¾ÝһЩ feature ½øÐзÖÀ࣬ÿ¸ö½ÚµãÌáÒ»¸öÎÊÌ⣬ͨ¹ýÅжϣ¬½«Êý¾Ý·ÖΪÁ½À࣬ÔÙ¼ÌÐøÌáÎÊ¡£ÕâЩÎÊÌâÊǸù¾ÝÒÑÓÐÊý¾Ýѧϰ³öÀ´µÄ£¬ÔÙͶÈëÐÂÊý¾ÝµÄʱºò£¬¾Í¿ÉÒÔ¸ù¾ÝÕâ¿ÃÊ÷ÉϵÄÎÊÌ⣬½«Êý¾Ý»®·Öµ½ºÏÊʵÄÒ¶×ÓÉÏ¡£
640.jpg


¸ü¶à²Î¿¼Ô­ÎÄ




»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:41:51
Äã²»µÃ²»Á˽âµÄ8ÖÖÉñ¾­ÍøÂç½á¹¹!

»úÆ÷ѧϰÒѾ­ÔÚ¸÷¸öÐÐÒµµÃµ½ÁË´ó¹æÄ£µÄ¹ã·ºÓ¦Ó㬲¢ÎªÌáÉýÒµÎñÁ÷³ÌµÄЧÂÊ¡¢Ìá¸ßÉú²úÂÊ×ö³öÁ˼«´óµÄ¹±Ïס£Ä¿Ç°»úÆ÷ѧϰÖ÷ÒªÔÚÒÔÏ·½ÃæÓ¦Óãº
  • ģʽʶ±ð£ºÊµ¼Ê³¡¾°ÖеÄÄ¿±ê¡¢°üÀ¨ÈËÁ³¡¢±íÇé¡¢ÓïÒôʶ±ðµÈµÈ£»
  • Òì³£¼ì²â£ºÀýÈçÐÅÓÿ¨½»Ò×µÄÒì³£¼ì²â¡¢´«¸ÐÆ÷Òì³£Êý¾Ýģʽ¼ì²âºÍÒì³£ÐÐΪ¼ì²âµÈ£»
  • Ô¤²âÎÊÌ⣺Ԥ²â¹ÉƱ»òÕß»ãÂÊ¡¢»òÕßÔ¤²âÏû·ÑÕßϲ»¶µÄµçÓ°¡¢ÒôÀֵȡ£


Éñ¾­ÍøÂçÊÇÒ»Àà»úÆ÷ѧϰËã·¨ºÍÄ£Ð͵Äͳ³Æ£¬Ò²ÊÇÄ¿Ç°»úÆ÷ѧϰ·¢Õ¹×î¿ìµÄÒ»¸öÁìÓò¡£Éñ¾­ÍøÂçµÄ¼Ü¹¹Ö÷Òª·ÖΪÈý´óÀࡪ¡ªÇ°À¡¡¢Ñ­»·ºÍ¶Ô³ÆÁ´½ÓÍøÂç¡£Éñ¾­ÍøÂç¾ßÓÐÈçÏÂÈý¸öÌØÕ÷ʹËü³ÉΪÁË»úÆ÷ѧϰÖеÄÖØÒª×é³É²¿·Ö£º
  • ÓÐÖúÓÚÀí½â´óÄÔʵ¼Ê¹¤×÷µÄÁ÷³Ì£¬
  • ÓÐÖúÓÚÀí½âÉñ¾­ÔªºÍÆÚ¼äµÄ×ÔÊÊÓ¦Á´½ÓÒÔ¼°²¢ÐмÆËãµÄ¸ÅÄÓë˳Ðò´¦ÀíµÄÐòÁÐÄ£ÐÍ´ó²»Ïàͬ£»
  • ÔÚ´óÄÔµÄÆô·¢ÏÂÀûÓÃеÄËã·¨½â¾öʵ¼ÊÎÊÌâ¡£


ÏÂÃæÊÇ8ÖÖºËÐÄÉñ¾­ÍøÂç¼Ü¹¹

1. ¸ÐÖª»ú£¨Perceptrons£©
¸ÐÖª»ú¿ÉÒÔ³ÆΪµÚÒ»´úµÄÉñ¾­ÍøÂ磬Ö÷Òª°üÀ¨ÊäÈëµÄ¶à¸öÌØÕ÷µ¥Ôª£¨È˹¤¶¨Òå»ò³ÌÐòÑ°ÕÒ£©£¬ÖмäÓÉѧϰȨÖØÁ¬½Ó£¬×îºóÓɾö²ßµ¥ÔªÊä³ö¡£µäÐ͵ĸÐÖª»úµ¥Ôª×ñÑ­Ç°À¡Ä£ÐÍ£¬ÊäÈëͨ¹ýȨÖØ´¦ÀíºóÖ±½ÓÁ¬½Óµ½Êä³öµ¥ÔªÉÏ¡£
1.png

Èç¹ûÈËÃÇÊÖ¶¯Ñ¡È¡×ã¹»µÄÓÐЧÌØÕ÷£¬¸ÐÖª»ú¼¸ºõ¿ÉÒÔ×öÈκÎÊ¡£µ«Ò»µ©È˹¤ÌØÕ÷¹Ì¶¨ÏÂÀ´½«»á¼«´óµÄÏÞÖƸÐÖª»úµÄѧϰÄÜÁ¦¡£Í¬Ê±ÈçºÎÑ¡ÔñÒ»¸öºÃµÄ¡¢ÓÐЧµÄÌØÕ÷Ò²ÊÇÀ§ÈÅÈËÃǵÄÄѵ㡣Õâ¶ÔÓÚ¸ÐÖª»úÀ´ËµÊÇ»ÙÃðÐԵģ¬ÓÉÓÚ¸ÐÖª»ú½«ËùÓеÄ×¢ÒâÁ¦·ÅÔÚÁËģʽʶ±ðÉ϶øºöÊÓÁ˱任¹ý³Ì¡£MinskyºÍPapertµÄ"ȺÌå²»±äÐÔÀíÂÛ"Ö¸³öÎÞ·¨Í¨¹ýѧϰÀ´Ê¶±ð³öÒ»×é±ä»¯Öеı任¹ý³Ì¡£ÎªÁË´¦ÀíÕâÑùµÄ±ä»»£¬¸ÐÖª»úÐèÒªÀûÓöàÌØÕ÷µ¥ÔªÀ´Ê¶±ð³ö±ä»»¡£¶øÕâģʽʶ±ðÖÐ×îΪ¸´ÔÓµÄÒ»²½ÔòÐèÒªÊÖ¹¤À´Íê³ÉÌØÕ÷ÌáÈ¡£¬¶ø²»ÊÇѧϰ¡£

ûÓÐÒþ²Ø²ãµÄÉñ¾­ÍøÂçÔÚΪÊäÈëÊä³öÓ³É佨ģµÄ¹ý³ÌÖоßÓкܴóµÄ¾ÖÏÞÐÔ¡£¶ø¸ü¶à²ãµÄÏßÐÔµ¥ÔªËƺõҲûÓаïÖú£¬ÒòΪÏßÐԵĵþ¼ÓÒÀ¾ÉÊÇÏßÐԵġ£¹Ì¶¨µÄ·ÇÏßÐÔÊä³öÒ²²»×ãÒÔ½¨Á¢¸´ÔÓµÄÓ³Éä¹Øϵ¡£ËùÒÔÔÚ¸ÐÖª»úµÄ»ù´¡ÉÏÎÒÃÇÐèÒª½¨Á¢¶à²ã¾ßÓÐÊÊÓ¦ÐÔ·ÇÏßÐÔµÄÒþ²Øµ¥ÔªÍøÂç¡£µ«ÎÒÃǸÃÈçºÎѵÁ·ÕâÑùµÄÍøÂçÄØ£¿ÎÒÃÇÐèÒªÓÐЧµÄ·½·¨À´µ÷ÕûËùÓвã¶ø²»½ö½öÊÇ×îºóÒ»²ãµÄȨÖØ¡£ÕâÊ®·ÖÀ§ÄÑ£¬ÒòΪѧϰÒþ²Ø²ãµÄȨÖؾ͵ÈͬÓÚѧϰÌØÕ÷£¬µ«Ã»ÈË»á¸æËßÄãÿ¸öÒþ²Øµ¥ÔªÓ¦¸Ã×öʲô¡£Õâ¾ÍÐèÒª¸üÏȽøµÄ½á¹¹À´´¦ÀíÁË£¡


¸ü¶à²Î¿¼Ô­ÎÄ






»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:44:42

ÉîÈëdz³ö̸̸Éî¶Èѧϰ~

±¾Ìû×îºóÓÉ desehawk ÓÚ 2018-5-3 16:45 ±à¼­


Ò»¡¢Éî¶ÈѧϰµÄÆðÔ´Óë¸ÅÄî

Éî¶ÈѧϰµÄ¸ÅÄîÓÉHintonµÈÈËÓÚ2006ÄêÌá³ö¡£Éî¶Èѧϰ¿ÉÒÔ¼òµ¥Àí½âΪ´«Í³Éñ¾­ÍøÂçµÄÍØÕ¹¡£ÈçÏÂͼËùʾ£¬Éî¶ÈѧϰÓ봫ͳµÄÉñ¾­ÍøÂçÖ®¼äÓÐÏàͬµÄµØ·½£¬¶þÕßµÄÏà֮ͬ´¦ÔÚÓÚ£¬Éî¶Èѧϰ²ÉÓÃÁËÓëÉñ¾­ÍøÂçÏàËƵķֲã½á¹¹£ºÏµÍ³ÊÇÒ»¸ö°üÀ¨ÊäÈë²ã¡¢Òþ²ã£¨¿Éµ¥²ã¡¢¿É¶à²ã£©¡¢Êä³ö²ãµÄ¶à²ãÍøÂ磬ֻÓÐÏàÁÚ²ãµÄ½ÚµãÖ®¼äÓÐÁ¬½Ó£¬¶øͬһ²ãÒÔ¼°¿ç²ã½ÚµãÖ®¼äÏ໥ÎÞÁ¬½Ó¡£

1.png

´«Í³µÄÉñ¾­ÍøÂçºÍÉî¶ÈÉñ¾­ÍøÂç   
Éî¶Èѧϰ¿ò¼Ü½«ÌØÕ÷ºÍ·ÖÀàÆ÷½áºÏµ½Ò»¸ö¿ò¼ÜÖУ¬ÓÃÊý¾ÝȥѧϰÌØÕ÷£¬ÔÚʹÓÃÖмõÉÙÁËÊÖ¹¤Éè¼ÆÌØÕ÷µÄ¾Þ´ó¹¤×÷Á¿¡£¿´ËüµÄÒ»¸ö±ðÃû£ºÎ޼ලÌØÕ÷ѧϰ£¨Unsupervised Feature Learning£©£¬¾Í¿ÉÒÔ¹ËÃû˼ÒåÁË¡£Î޼ල£¨Unsupervised£©Ñ§Ï°µÄÒâ˼¾ÍÊDz»ÐèҪͨ¹ýÈ˹¤·½Ê½½øÐÐÑù±¾Àà±ðµÄ±ê×¢À´Íê³Éѧϰ¡£Òò´Ë£¬Éî¶ÈѧϰÊÇÒ»ÖÖ¿ÉÒÔ×Ô¶¯µØѧϰÌØÕ÷µÄ·½·¨¡£

Éî¶Èѧϰͨ¹ýѧϰһÖÖÉî²ã·ÇÏßÐÔÍøÂç½á¹¹£¬Ö»Ðè¼òµ¥µÄÍøÂç½á¹¹¼´¿ÉʵÏÖ¸´ÔÓº¯ÊýµÄ±Æ½ü£¬²¢Õ¹ÏÖÁËÇ¿´óµÄ´Ó´óÁ¿ÎÞ±ê×¢Ñù±¾¼¯ÖÐѧϰÊý¾Ý¼¯±¾ÖÊÌØÕ÷µÄÄÜÁ¦¡£Éî¶ÈѧϰÄܹ»»ñµÃ¿É¸üºÃµØ±íʾÊý¾ÝµÄÌØÕ÷£¬Í¬Ê±ÓÉÓÚÄ£Ð͵IJã´ÎÉͨ³£ÓÐ5²ã¡¢6²ã£¬ÉõÖÁ10¶à²ãµÄÒþ²Ø²ã½Úµã£©¡¢±í´ïÄÜÁ¦Ç¿£¬Òò´ËÓÐÄÜÁ¦±íʾ´ó¹æÄ£Êý¾Ý¡£¶ÔÓÚͼÏñ¡¢ÓïÒôÕâÖÖÌØÕ÷²»Ã÷ÏÔ£¨ÐèÒªÊÖ¹¤Éè¼ÆÇҺܶàûÓÐÖ±¹ÛµÄÎïÀíº¬Ò壩µÄÎÊÌ⣬Éî¶ÈÄ£ÐÍÄܹ»ÔÚ´ó¹æģѵÁ·Êý¾ÝÉÏÈ¡µÃ¸üºÃµÄЧ¹û¡£Ïà±ÈÓÚ´«Í³µÄÉñ¾­ÍøÂ磬Éî¶ÈÉñ¾­ÍøÂç×÷³öÁËÖØ´óµÄ¸Ä½ø£¬ÔÚѵÁ·ÉϵÄÄѶȣ¨ÈçÌݶÈÃÖÉ¢ÎÊÌ⣩¿ÉÒÔͨ¹ý¡°Öð²ãԤѵÁ·¡±À´ÓÐЧ½µµÍ¡£
ÖµµÄ×¢ÒâµÄÊÇ£¬Éî¶Èѧϰ²»ÊÇÍòÄܵģ¬ÏñºÜ¶àÆäËû·½·¨Ò»Ñù£¬ËüÐèÒª½áºÏÌض¨ÁìÓòµÄÏÈÑé֪ʶ£¬ÐèÒªºÍÆäËûÄ£ÐͽáºÏ²ÅÄܵõ½×îºÃµÄ½á¹û¡£´ËÍ⣬ÀàËÆÓÚÉñ¾­ÍøÂ磬Éî¶ÈѧϰµÄÁíÒ»¾ÖÏÞÐÔÊǿɽâÊÍÐÔ²»Ç¿£¬Ïñ¸ö¡°ºÚÏä×Ó¡±Ò»Ñù²»ÖªÎªÊ²Ã´ÄÜÈ¡µÃºÃµÄЧ¹û£¬ÒÔ¼°²»ÖªÈçºÎÓÐÕë¶ÔÐÔµØÈ¥¾ßÌå¸Ä½ø£¬¶øÕâÓпÉÄܳÉΪ²úÆ·Éý¼¶¹ý³ÌÖеÄ×è°­¡£

½üÄêÀ´£¬Éî¶ÈѧϰµÄ·¢Õ¹Öð½¥³ÉÊì¡£2012Äê6Ô£¬¡¶Å¦Ô¼Ê±±¨¡·Åû¶ÁËGoogle BrainÏîÄ¿£¬ÎüÒýÁ˹«ÖڵĹ㷺¹Ø×¢¡£Õâ¸öÏîÄ¿ÊÇÓÉÖøÃûµÄ˹̹¸£´óѧµÄ»úÆ÷ѧϰ½ÌÊÚAndrew NgºÍÔÚ´ó¹æÄ£¼ÆËã»úϵͳ·½ÃæµÄÊÀ½ç¶¥¼âר¼ÒJeff Dean¹²Í¬Ö÷µ¼£¬ÓÃ16,000¸öCPU CoreµÄ²¢ÐмÆËãƽ̨ȥѵÁ·º¬ÓÐ10ÒÚ¸ö½ÚµãµÄÉî¶ÈÉñ¾­ÍøÂ磨Deep Neural Networks£¬DNN£©£¬Ê¹ÆäÄܹ»×ÔÎÒѵÁ·£¬¶Ô2Íò¸ö²»Í¬ÎïÌåµÄ1,400ÍòÕÅͼƬ½øÐбæʶ¡£ÔÚ¿ªÊ¼·ÖÎöÊý¾ÝÇ°£¬²¢²»ÐèÒªÏòϵͳÊÖ¹¤ÊäÈëÈκÎÖîÈç¡°Á³¡¢Ö«Ì塢èµÄ³¤ÏàÊÇʲôÑù×Ó¡±ÕâÀàÌØÕ÷¡£Jeff Dean˵£º¡°ÎÒÃÇÔÚѵÁ·µÄʱºò´ÓÀ´²»»á¸æËß»úÆ÷£º¡®ÕâÊÇһֻ衯£¨¼´ÎÞ±ê×¢Ñù±¾£©¡£ÏµÍ³ÆäʵÊÇ×Ô¼º·¢Ã÷»òÁìÎòÁË¡®Ã¨¡¯µÄ¸ÅÄî¡£

2014Äê3Ô£¬Í¬ÑùÒ²ÊÇ»ùÓÚÉî¶Èѧϰ·½·¨£¬FacebookµÄDeepFaceÏîĿʹµÃÈËÁ³Ê¶±ð¼¼ÊõµÄʶ±ðÂÊÒѾ­´ïµ½ÁË97.25%£¬Ö»±ÈÈËÀàʶ±ð97.5%µÄÕýÈ·ÂÊÂÔµÍÄÇôһµãµã£¬×¼È·Âʼ¸ºõ¿ÉæÇÃÀÈËÀà¡£¸ÃÏîÄ¿ÀûÓÃÁË9²ãµÄÉñ¾­ÍøÂçÀ´»ñµÃÁ³²¿±íÕ÷£¬Éñ¾­ÍøÂç´¦ÀíµÄ²ÎÊý¸ß´ï1.2ÒÚ¡£

ÒÔ¼°2016Äê3ÔÂÈ˹¤ÖÇÄÜΧÆå±ÈÈü£¬ÓÉλÓÚÓ¢¹úÂ׶صĹȸ裨Google£©ÆìÏÂDeepMind¹«Ë¾µÄ´÷ά¡¤Î÷¶û¸¥¡¢°¬¼Ñ¡¤»ÆºÍ´÷ÃÜ˹¡¤¹þÈø±È˹ÓëËûÃǵÄÍŶӿª·¢µÄAlphaGoսʤÁËÊÀ½çΧÆå¹Ú¾ü¡¢Ö°Òµ¾Å¶ÎÑ¡ÊÖÀîÊÀʯ£¬²¢ÒÔ4:1µÄ×ܱȷֻñʤ¡£AlphaGoµÄÖ÷Òª¹¤×÷Ô­Àí¾ÍÊÇÉî¶Èѧϰ£¬Í¨¹ýÁ½¸ö²»Í¬Éñ¾­ÍøÂç¡°´óÄÔ¡±ºÏ×÷À´¸Ä½øÏÂÆ壺µÚÒ»´óÄÔ£ºÂä×ÓÑ¡ÔñÆ÷ £¨Move Picker£©ºÍµÚ¶þ´óÄÔ£ºÆå¾ÖÆÀ¹ÀÆ÷ £¨Position Evaluator£©¡£ÕâЩ´óÄÔÊǶà²ãÉñ¾­ÍøÂç¸úÄÇЩGoogleͼƬËÑË÷ÒýÇæʶ±ðͼƬÔڽṹÉÏÊÇÏàËƵġ£ËüÃÇ´Ó¶à²ãÆô·¢Ê½¶þά¹ýÂËÆ÷¿ªÊ¼£¬È¥´¦ÀíΧÆåÆåÅ̵Ķ¨Î»£¬¾ÍÏñͼƬ·ÖÀàÆ÷ÍøÂç´¦ÀíͼƬһÑù¡£¾­¹ý¹ýÂË£¬13¸öÍêÈ«Á¬½ÓµÄÉñ¾­ÍøÂç²ã²úÉú¶ÔËüÃÇ¿´µ½µÄ¾ÖÃæÅжϡ£ÕâЩ²ãÄܹ»×ö·ÖÀàºÍÂß¼­ÍÆÀí¡£

¶þ¡¢Éî¶ÈѧϰµÄÓ¦ÓÃ

Éî¶ÈѧϰÊܵ½ÊÀ½ç¸÷¹úÏà¹ØÁìÓòÑо¿ÈËÔ±ºÍ¸ß¿Æ¼¼¹«Ë¾µÄÖØÊÓ£¬×î¹ã·ºµÄÈý¸öÖ÷ÒªÑо¿Ó¦ÓÃÁìÓò°üÀ¨£ºÓïÒôʶ±ð¡¢»úÆ÷ÊÓ¾õºÍ×ÔÈ»ÓïÑÔ´¦Àí¡£
ÓïÒôʶ±ð·½Ã棺 ´Ó2009Ä꿪ʼ£¬Î¢ÈíÑÇÖÞÑо¿ÔºµÄÓïÒôʶ±ðר¼ÒÃǺÍÉî¶ÈѧϰÁì¾üÈËÎïHintonºÏ×÷¡£2011Äê΢Èí¹«Ë¾ÍƳö»ùÓÚÉî¶ÈÉñ¾­ÍøÂçµÄÓïÒôʶ±ðϵͳ£¬ÕâÒ»³É¹û½«ÓïÒôʶ±ðÁìÓòÒÑÓеļ¼Êõ¿ò¼ÜÍêÈ«¸Ä±ä¡£²ÉÓÃÉî¶ÈÉñ¾­ÍøÂçºó£¬Ñù±¾Êý¾ÝÌØÕ÷¼äÏà¹ØÐÔÐÅÏ¢µÃÒÔ³ä·Ö±íʾ£¬½«Á¬ÐøµÄÌØÕ÷ÐÅÏ¢½áºÏ¹¹³É¸ßάÌØÕ÷£¬Í¨¹ý¸ßάÌØÕ÷Ñù±¾¶ÔÉî¶ÈÉñ¾­ÍøÂçÄ£ÐͽøÐÐѵÁ·¡£ÓÉÓÚÉî¶ÈÉñ¾­ÍøÂç²ÉÓÃÁËÄ£ÄâÈËÄÔÉñ¾­¼Ü¹¹£¬Í¨¹ýÖð²ãµÄ½øÐÐÊý¾ÝÌØÕ÷ÌáÈ¡£¬×îÖյõ½ÊʺϽøÐÐģʽ·ÖÀà´¦ÀíµÄÀíÏëÌØÕ÷¡£

»úÆ÷ÊÓ¾õ·½Ã棺¶ÔÓÚͼÏñµÄ´¦ÀíÊÇÉî¶ÈѧϰËã·¨×îÔç³¢ÊÔÓ¦ÓõÄÁìÓò¡£ÔçÔÚ1989Ä꣬¼ÓÄôó¶àÂ׶à´óѧ½ÌÊÚYann LeCun¾ÍºÍËûµÄͬÊÂÌá³öÁ˾í»ýÉñ¾­ÍøÂ磨Convolutional Neural Networks, CNN£©ËüÊÇÒ»ÖÖ°üº¬¾í»ý²ãµÄÉî¶ÈÉñ¾­ÍøÂçÄ£ÐÍ¡£Í¨³£Ò»¸ö¾í»úÉñ¾­ÍøÂç¼Ü¹¹°üº¬Á½¸ö¿ÉÒÔͨ¹ýѵÁ·²úÉúµÄ·ÇÏßÐÔ¾í»ý²ã£¬Á½¸ö¹Ì¶¨µÄ×Ó²ÉÑù²ãºÍÒ»¸öÈ«Á¬½Ó²ã£¬Òþ²Ø²ãµÄÊýÁ¿Ò»°ãÖÁÉÙÔÚ5¸öÒÔÉÏ¡£CNNµÄ¼Ü¹¹Éè¼ÆÊÇÊܵ½ÉúÎïѧ¼ÒHubeºÍWieselµÄ¶¯ÎïÊÓ¾õÄ£ÐÍÆô·¢¶ø·¢Ã÷µÄ£¬ÓÈÆäÊÇÄ£Ä⶯ÎïÊÓ¾õƤ²ãµÄV1²ãºÍV2²ãÖмòµ¥Ï¸°ûºÍ¸´ÔÓϸ°ûÔÚÊÓ¾õϵͳµÄ¹¦ÄÜ¡£Æð³õ¾í»ýÉñ¾­ÍøÂçÔÚС¹æÄ£µÄÎÊÌâÉÏÈ¡µÃÁ˵±Ê±ÊÀ½ç×îºÃ³É¹û¡£µ«ÊÇÔںܳ¤Ò»¶Îʱ¼äÀïһֱûÓÐÈ¡µÃÖØ´óÍ»ÆÆ¡£Ö÷ÒªÔ­ÒòÊǾí»ýÉñ¾­ÍøÂçÓ¦ÓÃÔÚ´ó³ß´çͼÏñÉÏÒ»Ö±²»ÄÜÈ¡µÃÀíÏë½á¹û£¬±ÈÈç¶ÔÓÚÏñËØÊýºÜ´óµÄ×ÔȻͼÏñÄÚÈݵÄÀí½â£¬ÕâʹµÃËüûÓÐÒýÆð¼ÆËã»úÊÓ¾õÑо¿ÁìÓò×ã¹»µÄÖØÊÓ¡£2012Äê10Ô£¬Hinton½ÌÊÚÒÔ¼°ËûµÄѧÉú²ÉÓøüÉîµÄ¾íÉñ¾­ÍøÂçÄ£ÐÍÔÚÖøÃûµÄImageNetÎÊÌâÉÏÈ¡µÃÁËÊÀ½ç×îºÃ½á¹û£¬Ê¹µÃ¶ÔÓÚͼÏñʶ±ðµÄÁìÓòÑо¿¸ü½øÒ»²½¡£

×Ô¾í»ýÉñ¾­ÍøÂçÌá³öÒÔÀ´£¬ÔÚͼÏñʶ±ðÎÊÌâÉϲ¢Ã»ÓÐÈ¡µÃÖʵÄÌáÉýºÍÍ»ÆÆ£¬Ö±µ½2012ÄêHinton¹¹½¨Éî¶ÈÉñ¾­ÍøÂç²ÅÈ¥µÄ¾ªÈ˵ijɹû¡£ÕâÖ÷ÒªÊÇÒòΪ¶ÔËã·¨µÄ¸Ä½ø£¬ÔÚÍøÂçµÄѵÁ·ÖÐÒýÈëÁËȨÖØË¥¼õµÄ¸ÅÄÓÐЧµÄ¼õСȨÖØ·ù¶È£¬·ÀÖ¹ÍøÂç¹ýÄâºÏ¡£¸ü¹Ø¼üµÄÊǼÆËã»ú¼ÆËãÄÜÁ¦µÄÌáÉý£¬GPU¼ÓËÙ¼¼ÊõµÄ·¢Õ¹£¬Ê¹µÃÔÚѵÁ·¹ý³ÌÖпÉÒÔ²úÉú¸ü¶àµÄѵÁ·Êý¾Ý£¬Ê¹ÍøÂçÄܹ»¸üºÃµÄÄâºÏѵÁ·Êý¾Ý¡£2012Äê¹úÄÚ»¥ÁªÍø¾ÞÍ·°Ù¶È¹«Ë¾½«Ïà¹Ø×îм¼Êõ³É¹¦Ó¦Óõ½ÈËÁ³Ê¶±ðºÍ×ÔȻͼÏñʶ±ðÎÊÌ⣬²¢ÍƳöÏàÓ¦µÄ²úÆ·¡£ÏÖÔÚµÄÉî¶ÈѧϰÍøÂçÄ£ÐÍÒѾ­Äܹ»Àí½âºÍʶ±ðÒ»°ãµÄ×ÔȻͼÏñ¡£Éî¶ÈѧϰģÐͲ»½ö´ó·ùÌá¸ßÁËͼÏñʶ±ðµÄ¾«¶È£¬Í¬Ê±Ò²±ÜÃâÁËÐèÒªÏûºÄ´óÁ¿Ê±¼ä½øÐÐÈ˹¤ÌØÕ÷µÄÌáÈ¡£¬Ê¹µÃÔÚÏßÔËÐÐЧÂÊ´ó´óÌáÉý¡£

×ÔÈ»ÓïÑÔ´¦Àí·½Ã棺 ×ÔÈ»ÓïÑÔ´¦ÀíÎÊÌâÊÇÉî¶ÈѧϰÔÚ³ýÁËÓïÒôºÍͼÏñ´¦ÀíÖ®ÍâµÄÁíÒ»¸öÖØÒªµÄÓ¦ÓÃÁìÓò¡£ÊýÊ®ÄêÒÔÀ´£¬×ÔÈ»ÓïÑÔ´¦ÀíµÄÖ÷Á÷·½·¨ÊÇ»ùÓÚͳ¼ÆµÄÄ£ÐÍ£¬È˹¤Éñ¾­ÍøÂçÒ²ÊÇ»ùÓÚͳ¼Æ·½·¨Ä£ÐÍÖ®Ò»£¬µ«ÔÚ×ÔÈ»ÓïÑÔ´¦ÀíÁìÓòȴһֱûÓб»ÖØÊÓ¡£ÓïÑÔ½¨Ä£Ê±×îÔç²ÉÓÃÉñ¾­ÍøÂç½øÐÐ×ÔÈ»ÓïÑÔ´¦ÀíµÄÎÊÌâ¡£ÃÀ¹úNECÑо¿Ôº×îÔ罫Éî¶ÈѧϰÒýÈëµ½×ÔÈ»ÓïÑÔ´¦ÀíÑо¿ÖУ¬ÆäÑо¿Ôº´Ó2008ÄêÆð²ÉÓý«´Ê»ãÓ³É䵽һάʸÁ¿¿Õ¼äºÍ¶à²ãһά¾í»ý½á¹¹È¥½â¾ö´ÊÐÔ±ê×¢¡¢·Ö´Ê¡¢ÃüÃûʵÌåʶ±ðºÍÓïÒå½ÇÉ«±ê×¢ËĸöµäÐ͵Ä×ÔÈ»ÓïÑÔ´¦ÀíÎÊÌâ¡£ËûÃǹ¹½¨ÁËÒ»¸öÍøÂçÄ£ÐÍÓÃÓÚ½â¾öËĸö²»Í¬ÎÊÌ⣬¶¼È¡µÃÁËÏ൱¾«È·µÄ½á¹û¡£×ÜÌå¶øÑÔ£¬Éî¶ÈѧϰÔÚ×ÔÈ»ÓïÑÔ´¦ÀíÉÏÈ¡µÃµÄ³É¹ûºÍÔÚͼÏñÓïÒôʶ±ð·½ÃæÏà²îÉõÔ¶£¬ÈÔÓдýÉîÈëÑо¿¡£

Èý¡¢Éî¶ÈѧϰµÄ³£Óÿò¼Ü
2.png


Ô­ÎÄÁ´½Ó






»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:47:51
ÈËÁ³¼ì²â£¨Ò»£©¡ª¡ª»ùÓÚµ¥ÎĵµµÄÓ¦ÓĄ̃³ÌÐò


Opencv×Ô´øѵÁ·ºÃµÄÈËÁ³Ä£ÐÍ£¨ÈËÁ³µÄÈËÑÛ¡¢¿ÚµÈÆ÷¹ÙÀàËÆ£©£¬´ËÎÄ»ùÓÚvs2013½¨Á¢Ó¦ÓĄ̃µ¥Îĵµ³ÌÐò£¬¾ßÌ彨Á¢¹ý³Ì²»ÓèÏêϸÐðÊö£¬Ö÷Òª¼Ç¼ÀûÓõÄOpencv×Ô´øµÄ·ÖÀàÆ÷ºÍѵÁ·ºÃµÄÈËÁ³Ä£ÐÍ¡£

Ò»¡¢±à³ÌÇ°µÄ×¼±¸
£¨1£©HaarÌØÕ÷·ÖÀàÆ÷
HaarÌØÕ÷·ÖÀàÆ÷¾ÍÊÇÒ»¸öXMLÎļþ£¬¸ÃÎļþÖлáÃèÊöÈËÌå¸÷¸ö²¿Î»µÄHaarÌØÕ÷Öµ¡£°üÀ¨ÈËÁ³¡¢ÑÛ¾¦¡¢×ì´½µÈµÈ¡£
HaarÌØÕ÷·ÖÀàÆ÷´æ·ÅĿ¼£ºOpenCV°²×°Ä¿Â¼ÖеÄ\data\ haarcascadesĿ¼Ï£¬ÀýÈ磺

  • haarcascade_eye.xml  
  • haarcascade_eye_tree_eyeglasses.xml  
  • haarcascade_frontalface_alt.xml  
  • haarcascade_frontalface_alt_tree.xml  
  • haarcascade_frontalface_alt2.xml  
  • haarcascade_frontalface_default.xml  
  • haarcascade_fullbody.xml  
  • haarcascade_lefteye_2splits.xml  
  • haarcascade_lowerbody.xml  
  • haarcascade_mcs_eyepair_big.xml  
  • haarcascade_mcs_eyepair_small.xml  
  • haarcascade_mcs_leftear.xml  

            ¡­¡­
       £¨ÏêÇé¼û²»Í¬°æ±¾µÄdata/ haarcascadesĿ¼Ï£©
    ÀýÈç´Ë´Î³ÌÐò½øÐÐÈËÁ³Ê¶±ð£¬ÐèÒª½«·ÖÀàÆ÷haarcascade_frontalface_alt2.xm¸´ÖƵ½Ëù½¨ÏîÄ¿µÄ¿ÉÔËÐÐÎļþ¼ÐÄÚ

£¨2£©.¶ÔCascadeClassifier×ö³õʼ»¯
cv::CascadeClassifier classifier;
classifier.load(¡°cascade.xml¡±); //ÕâÀïµÄxmlÊÇѵÁ·µÃµ½µÄ·ÖÀàÆ÷
CascadeClassifierÀàÖмÈÓÐloadÒ²ÓÐreadº¯Êý£¬¶þÕßÊÇÏàͬµÄ£¬load½«ÒýÓÃreadº¯Êý

£¨3 )¹ØÓÚdetectMultiScale£¨£©
void detectMultiScale
(  
    const Mat& image,  
    CV_OUT vector<Rect>& objects,  
    double scaleFactor = 1.1,  
    int minNeighbors = 3,   
    int flags = 0,  
    Size minSize = Size(),  
    Size maxSize = Size()  
);  

º¯Êý½éÉÜ£º
²ÎÊý1£ºimage--´ý¼ì²âͼƬ£¬Ò»°ãΪ»Ò¶ÈͼÏñ¼Ó¿ì¼ì²âËٶȣ»
²ÎÊý2£ºobjects--±»¼ì²âÎïÌåµÄ¾ØÐοòÏòÁ¿×飻
²ÎÊý3£ºscaleFactor--±íʾÔÚÇ°ºóÁ½´ÎÏà¼ÌµÄɨÃèÖУ¬ËÑË÷´°¿ÚµÄ±ÈÀýϵÊý¡£Ä¬ÈÏΪ1.1¼´Ã¿´ÎËÑË÷´°¿ÚÒÀ´ÎÀ©´ó10%;
²ÎÊý4£ºminNeighbors--±íʾ¹¹³É¼ì²âÄ¿±êµÄÏàÁÚ¾ØÐεÄ×îС¸öÊý(ĬÈÏΪ3¸ö)¡£
        Èç¹û×é³É¼ì²âÄ¿±êµÄС¾ØÐεĸöÊýºÍСÓÚ min_neighbors - 1 ¶¼»á±»Åųý¡£
        Èç¹ûmin_neighbors Ϊ 0, Ôòº¯Êý²»×öÈκβÙ×÷¾Í·µ»ØËùÓеı»¼ìºòÑ¡¾ØÐοò£¬
        ÕâÖÖÉ趨ֵһ°ãÓÃÔÚÓû§×Ô¶¨Òå¶Ô¼ì²â½á¹ûµÄ×éºÏ³ÌÐòÉÏ£»
²ÎÊý5£ºflags--ҪôʹÓÃĬÈÏÖµ£¬ÒªÃ´Ê¹ÓÃCV_HAAR_DO_CANNY_PRUNING£¬Èç¹ûÉèÖÃΪCV_HAAR_DO_CANNY_PRUNING£¬ÄÇôº¯Êý½«»áʹÓÃCanny±ßÔµ¼ì²âÀ´Åųý±ßÔµ¹ý¶à»ò¹ýÉÙµÄÇøÓò£¬Òò´ËÕâЩÇøÓòͨ³£²»»áÊÇÈËÁ³ËùÔÚÇøÓò£»
²ÎÊý6¡¢7£ºminSizeºÍmaxSizeÓÃÀ´ÏÞÖƵõ½µÄÄ¿±êÇøÓòµÄ·¶Î§¡£


¸ü¶à²Î¿¼Ô­ÎÄ


»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:49:39
±¾Ìû×îºóÓÉ desehawk ÓÚ 2018-5-3 17:03 ±à¼­

ÈËÁ³¼ì²â£¨¶þ )¡ª¡ªMFCʵÏÖ

Ò»¡¢¹ØÓÚMFC
        Î¢Èí»ù´¡Àà¿â£¨Ó¢ÓMicrosoft Foundation Classes£¬¼ò³ÆMFC£©ÊÇÒ»¸ö΢Èí¹«Ë¾ÌṩµÄÀà¿â£¨class libraries£©£¬ÒÔC++ÀàµÄÐÎʽ·â×°ÁËWindows API£¬²¢ÇÒ°üº¬Ò»¸öÓ¦ÓóÌÐò¿ò¼Ü£¬ÒÔ¼õÉÙÓ¦ÓóÌÐò¿ª·¢ÈËÔ±µÄ¹¤×÷Á¿¡£ÆäÖаüº¬µÄÀà°üº¬´óÁ¿Windows¾ä±ú·â×°ÀàºÍºÜ¶àWindowsµÄÄÚ½¨¿Ø¼þºÍ×é¼þµÄ·â×°Àà¡£
¶þ¡¢³£Óÿؼþ
1.Buttton
2.Picture Control
3.Static Text
4.Radio Button
¡­¡­
Èý¡¢³ÌÐòʵÏÖ
       Ê×ÏÈ£¬ÖµµÃ×¢ÒâµÄÊÇ£¬´Ë³ÌÐòÖÐÐèÒª½«Í¼Æ¬ÏÔʾÔÚÖ¸¶¨µÄ¿Ø¼þÖ®ÖУ¬Éæ¼°µ½¿Ø¼þµÄ¾ä±ú£¨Ï൱ÓÚcÓïÑÔÖÐËùѧµÄÖ¸Õ룩£¬¶øÔÚ±àд³ÌÐòÖÐÓõ½ÁËһЩÀàÔÚаæopencvÖÐÒѱ»É¾³ý£¬ÐèÒª×ÔÐÐÏÂÔØ£¬ÐèÒªµÄÅóÓÑ¿ÉÒÔÔÚ¹«Öںźǫ́»Ø¸´¡°×ÊÔ´cvvimage.h¡±×ÔÐÐÏÂÔØ¡£ÏÂÔغó·ÅÖÃÓÚ¿ÉÖ±½ÓÔËÐеÄÎļþ¼ÐÄÚ£º
1.png
       ³ÌÐò¿É·ÖΪÁ½´ó¿éÖص㣬һ¸öÊÇÀàËÆÓÚÉÏһƪÎÄÕ£¨ÈËÁ³¼ì²â£¨Ò»£©¡ª¡ªµ¥ÎĵµÓ¦ÓĄ̃)£¬ÈçºÎ¼ì²âÈËÁ³¡£ÁíÒ»¸öÊÇÈçºÎÔÚMFCÖн«Ö¸¶¨µÄͼƬÏÔʾÔÚÖ¸¶¨¿Ø¼þÖС£
ÕâÀï¸ø³öÏÔʾԭͼµÄBUTTONÖеijÌÐò£º
2.png
ÖصãÔÚÓÚ»ñÈ¡¿Ø¼þµÄ¾ä±ú£¬¼´ÉÏͼ³ÌÐòÖеÄpWnd->GetClientRect(&rect);
ƪ·ùÓÐÏÞ£¬ÈôÐèÒªÍêÕûÏîÄ¿´úÂëÇëºǫ́»Ø¸´¹Ø¼ü´Ê£ºÈËÁ³¼ì²âMFC¡£


¸ü¶à²Î¿¼Ô­ÎÄ
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:51:19
±¾Ìû×îºóÓÉ desehawk ÓÚ 2018-5-3 17:04 ±à¼­

ÈËÁ³¼ì²â¡ª¡ªÐ¦Á³¼ì²â


      Ç°±ßÒѾ­Ïêϸ½éÉܹýÈËÁ³¼ì²â£¬Æäʵ¼ì²âÀ඼¿ÉÒÔ¹éÊôÓÚͬһÀ࣬±Ï¾¹»»ÌÀ²»»»Ò©£¡ÎÞÂÛÊÇÈËÁ³¼ì²â»¹ÊÇЦÁ³¼ì²â£¬ÓÖ»òÕßÊÇopencv3ÒÔºó°æ±¾¼ÓÈëµÄèÁ³¼ì²â¶¼ÊÇÒ»¸öÔ­Àí£¬ÓõÄÊÇdetectMultiScaleº¯Êý£¬Æä¾ßÌåʹÓòο¼¹«ÖÚºÅÀúÊ·ÎÄÕÂÖеÄÈËÁ³¼ì²â£¨Ò»£©¡ª¡ª»ùÓÚµ¥ÎĵµµÄÓ¦ÓĄ̃³ÌÐò¼´¿É~
        Ð¦Á³¼ì²âÓõĻ¹ÊÇÄǸöº¯Êý£¨»¹ÊÇÊìϤµÄζµÀ£¡£©ÕâÀïÖ÷Òª·ÖÁ½²½À´Ëµ£º
1.¼ÓÔØÈËÁ³¼ì²âÆ÷½øÐÐÈËÁ³¼ì²â
2 ¼ÓÔØЦÁ³¼ì²âÆ÷½øÐÐЦÁ³¼ì²â
        Æä¾ßÌå³ÌÐòÈçÏ£¬¿ÉÒÔʵÏÖ¶ÔͼƬµÄ¼ì²â£¬Ò²¿ÉÒÔµ÷ÓÃÉãÏñÍ·¶Ô²É¼¯µ½µÄʵʱͼÏñ½øÐмì²â£¬ÐèÒªÍêÕûÏîÄ¿µÄºǫ́»Ø¸´¹Ø¼ü´Ê¡°Ð¦Á³¼ì²â¡±¼´¿É~
        ¹Ø¼ü²¿·Ö³ÌÐòÈçÏ£º

       Æä²âÊÔ½á¹ûÈçÏ£º
1.png
2.png
£¨ÕâÕÅÅ®ÉñµÄÓÒ±ßδ¼ì³öЦÁ³£¬´ó¸ÅÊÇÒòΪËùÓÃÄ£ÐÍÊÇ»ùÓÚ×ì½ÇÊÇ·ñÉÏÑïÅжϣ©

¸ü¶à²Î¿¼Ô­ÎÄ
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

desehawk ·¢±íÓÚ 2018-5-3 16:55:39



ÈËÁ³Ê¶±ðµÄÓ¢ÎÄÃû³ÆÊÇ Face Recognition£¬Ç°¶Îʱ¼ä²éÕÒ×ÊÁÏѧµÄʱºò·¢ÏÖ£¬²»ÉÙÈ˽«ÈËÁ³Ê¶±ðºÍÈËÁ³¼ì²â£¨Face Detection£©»ìΪһ̸£¬ºÜ´ó³Ì¶ÈÉÏÔö¼ÓÁ˲éѯѧϰ×ÊÁϵÄÄѶȣ¬ÕâÀïÔÚ²ÎÕÕһЩǰ±²µÄ»ù´¡ÉÏ£¬×Ô¼º¶¯ÊÖÇÃд´úÂ룬ÕûÀí³öÁËÒ»¸öÍêÕûµÄ°æ±¾¡£

´ËϵÁÐÎÄÕ½«´ÓÀíÂÛµ½Êµ¼ù½øÐÐÕûºÏ£º·ÖÈýƪ½øÐÐÐðÊö£¬µÚһƪ´ÓÁã˵ÈËÁ³Ê¶±ð£¬±£Ö¤´ó¶àÊýÅóÓÑÄÜͨ¹ýÕâƪÎÄÕÂÁ˽⵽ÈËÁ³Ê¶±ðµÄ¸ÅÄ²¢ÇÒÄܹ»ÐγÉÒ»¸ö»ù±¾µÄ¿ò¼Ü¡£µÚ¶þƪ½«½øÐгõ²½µÄʵ¼ù£¬°üÀ¨ÈËÁ³Í¼ÏñµÄ²É¼¯£¬ºÍÈçºÎÀûÓÃopencvÒÑÓеÄÄ£Ð͸ù¾ÝÈËÁ³Í¼Ïñ½øÐÐѵÁ·£¬µÃµ½ÐèÒªµÄ·ÖÀàÆ÷¡£µÚÈýƪÔòÊÇ×ÛºÏƪ£¬½«³ÌÐòÒÔÄ£¿é»¯½øÐÐչʾ£¬ÒÔÎĵµÐÎʽʵÏÖÈËÁ³Ê¶±ðºÍ½¨Á¢MFC³ÌÐòʵÏÖÈËÁ³Ê¶±ð¡£
640 .gif


Ò»¡¢ÈËÁ³¼ì²âºÍÈËÁ³Ê¶±ð
Ê×ÏÈÐèÒª½éÉÜÏÂÈËÁ³Ê¶±ðºÍÈËÁ³¼ì²âµÄ²»Í¬¡£ÈËÁ³¼ì²âÖ¸µÄÊǶÔÒ»·ùͼƬ½øÐмì²â£¬¼ì²âͼƬÖÐÊÇ·ñ°üº¬ÓÐÈËÁ³£»¶øÈËÁ³Ê¶±ðÔòÊÇÔÚÈËÁ³¼ì²âµÄ»ù´¡ÉÏ£¬²»½öÒª¼ì²â³öÊÇ·ñ¸ÃͼƬÖдæÔÚÈËÁ³£¬¸üÒª½øÒ»²½½«¼ì²â³öµÄÈËÁ³Í¼ÏñÓëÒÑÓÐÈËÁ³¿âÖеĽøÐжԱȣ¬Ê¶±ð³ö¸ÃÈËÁ³Í¼Ïñ¶ÔÓ¦¿âÖеÄÄÄÒ»¸ö¡£ÈËÁ³¼ì²âµÄÏà¹Ø֪ʶ¿ÉÒÔ²ÎÕÕ΢ÐŹ«ÖÚºÅÀMr_cplus£©µÄÏà¹ØÀúÊ·ÎÄÕ¡£
¶þ¡¢ÈËÁ³Ê¶±ðµÄ´ó¸ÅÁ÷³Ì
ÈËÁ³Ê¶±ð´óÌåÉÏ·ÖΪËIJ½£ºÈËÁ³Í¼Ïñ²É¼¯¼°¼ì²â¡¢ÈËÁ³Í¼ÏñÔ¤´¦Àí¡¢ÈËÁ³Í¼ÏñÌØÕ÷ÌáÈ¡¡¢Æ¥ÅäÓëʶ±ð¡£
£¨1£©ÈËÁ³Í¼Ïñ²É¼¯¼°¼ì²â
ÈËÁ³Í¼ÏñµÄ²É¼¯Ö¸µÄÊÇ°´ÕÕËùÑо¿µÄÄ¿±ê£¨±ÈÈçÑо¿²»Í¬×Ë̬ϵÄÈËÁ³Ê¶±ð£©£¬²É¼¯Ò»¶¨ÊýÁ¿µÄͼÏñÊý¾ÝÕûÀí³É¿â¡£µ±Ç°Ñ§Êõ½çÒÑÓÐÐí¶àÏֳɵÄÈËÁ³¿â£¬Âú×ã»ù±¾µÄÑо¿ÐèÇ󣬵±È»Ò²¿ÉÒÔÔÚÕâЩÊý¾Ý¿âµÄ»ù´¡ÉϽøÐÐÌí¼Ó£¨±ÈÈ罫×Ô¼ºµÄÈËÁ³Ìí¼Ó½øijÊý¾Ý¿â£©¡£µ±Ç°½ÏΪ³£ÓõÄÈËÁ³Í¼ÏñÊý¾Ý¿âÓУº
1. FERETÈËÁ³Êý¾Ý¿â
ÓÉFERETÏîÄ¿´´½¨,°üº¬14,051ÕŶà×Ë̬,¹âÕյĻҶÈÈËÁ³Í¼Ïñ,ÊÇÈËÁ³Ê¶±ðÁìÓòÓ¦ÓÃ×î¹ã·ºµÄÈËÁ³Êý¾Ý¿âÖ®Ò».ÆäÖеĶàÊýÈËÊÇÎ÷·½ÈË,ÿ¸öÈËËù°üº¬µÄÈËÁ³Í¼ÏñµÄ±ä»¯±È½Ïµ¥Ò».
2. MITÈËÁ³Êý¾Ý¿â
ÓÉÂéÊ¡Àí¹¤´óѧýÌåʵÑéÊÒ´´½¨,°üº¬16λ־ԸÕßµÄ2,592ÕŲ»Í¬×Ë̬,¹âÕպʹóСµÄÃ沿ͼÏñ.
3. YaleÈËÁ³Êý¾Ý¿â
ÓÉҮ³´óѧ¼ÆËãÊÓ¾õÓë¿ØÖÆÖÐÐÄ´´½¨,°üº¬15λ־ԸÕßµÄ165ÕÅͼƬ,°üº¬¹âÕÕ,±íÇéºÍ×Ë̬µÄ±ä»¯.
4. YaleÈËÁ³Êý¾Ý¿âB
°üº¬ÁË10¸öÈ˵Ä5,850·ù¶à×Ë̬,¶à¹âÕÕµÄͼÏñ.ÆäÖеÄ×Ë̬ºÍ¹âÕձ仯µÄͼÏñ¶¼ÊÇÔÚÑϸñ¿ØÖƵÄÌõ¼þϲɼ¯µÄ,Ö÷ÒªÓÃÓÚ¹âÕÕºÍ×Ë̬ÎÊÌâµÄ½¨Ä£Óë·ÖÎö.ÓÉÓڲɼ¯ÈËÊý½ÏÉÙ,¸ÃÊý¾Ý¿âµÄ½øÒ»²½Ó¦ÓÃÊܵ½Á˱ȽϴóµÄÏÞÖÆ.
5. PIEÈËÁ³Êý¾Ý¿â
ÓÉÃÀ¹ú¿¨ÄÍ»ù÷¡´óѧ´´½¨,°üº¬68λ־ԸÕßµÄ41,368ÕŶà×Ë̬,¹âÕպͱíÇéµÄÃ沿ͼÏñ.ÆäÖеÄ×Ë̬ºÍ¹âÕձ仯ͼÏñÒ²ÊÇÔÚÑϸñ¿ØÖƵÄÌõ¼þϲɼ¯µÄ,Ä¿Ç°ÒѾ­Öð½¥³ÉΪÈËÁ³Ê¶±ðÁìÓòµÄÒ»¸öÖØÒªµÄ²âÊÔ¼¯ºÏ.
6. ORLÈËÁ³Êý¾Ý¿â
Óɽ£ÇÅ´óѧAT&TʵÑéÊÒ´´½¨,°üº¬40È˹²400ÕÅÃ沿ͼÏñ,²¿·ÖÖ¾Ô¸ÕßµÄͼÏñ°üÀ¨ÁË×Ë̬, ±íÇéºÍÃ沿ÊÎÎïµÄ±ä»¯.¸ÃÈËÁ³¿âÔÚÈËÁ³Ê¶±ðÑо¿µÄÔçÆÚ¾­³£±»ÈËÃDzÉÓÃ,µ«ÓÉÓڱ仯ģʽ½ÏÉÙ,¶àÊýϵͳµÄʶ±ðÂʾù¿ÉÒÔ´ïµ½90%ÒÔÉÏ,Òò´Ë½øÒ»²½ÀûÓõļÛÖµÒѾ­²»´ó.
¡­¡­
£¨2£©ÈËÁ³Í¼ÏñÔ¤´¦Àí
´Ë´¦Ö÷ÒªÖ¸Á½·½Ã棺һ¸öÊÇÈçºÎ½«»ñÈ¡µÄÈËÁ³Í¼Ïñ½øÐÐһЩ´¦Àí£¬Ê¹Ö®ºÍ´ý·ÅÈëµÄÈËÁ³¿âÄÚͼƬÊý¾ÝÓÐÏàͬµÄ³ß´ç£¬¸ñʽµÈ£»ÁíÒ»¸öÊÇÖ¸½«ÕûÌå¿âÄÚͼƬ½øÐд¦Àí£¬Ê¹Ö®Âú×ãºóÃæͼÏñÌØÕ÷ÌáÈ¡ÒÔ¼°Ê¶±ðÖеÄÒªÇó¡£

£¨3£©ÈËÁ³Í¼ÏñÌØÕ÷ÌáÈ¡
ÈËÁ³Í¼ÏñÌØÕ÷ÌáÈ¡ÊÇÖ¸°´ÕÕÒ»¶¨µÄËã·¨£¬½«ÈËÁ³Í¼Ïñ½øÐд¦Àí£¬ÌáÈ¡³öÌØÕ÷ÐÅÏ¢£¬ÐγÉÌØÕ÷¾ØÕóµÈ£¬Ö®ºóÓÃÓÚ·ÖÀàÆ÷µÄѵÁ·¡£ÌØÕ÷ÌáÈ¡µÄËã·¨ÍùÍù¾ö¶¨×Åʶ±ðЧ¹ûµÄºÃÓ뻵¡£

£¨4£©Æ¥ÅäÓëʶ±ð
ÈËÁ³Í¼Ïñ¾­¹ýÌØÕ÷ÌáÈ¡ÐγÉÁËÒ»¶¨µÄÌØÕ÷¾ØÕó£¬Ö®ºó½«´ýʶ±ðµÄÈËÁ³Í¼Æ¬£¨»òÕßÊÓƵÖеÄijЩ֡£©µ±×÷ÊäÈ룬°´ÕÕͬÑùµÄÌØÕ÷ÌáÈ¡Ëã·¨£¬ÐγÉÆäÈËÁ³Í¼µÄ¾ØÕó£¬Ö®ºóÓëÀûÓ÷ÖÀàÆ÷½øÐзÖÀ࣬ʶ±ðÆäÊôÓÚ¿âÄÚµÄÄÄÒ»¸öÀà±ð¡£
¸ü¶à²Î¿¼Ô­ÎÄ

Èý¡¢ÈËÁ³Ê¶±ðµÄ³£Ó÷½·¨
ÈËÁ³Ê¶±ð·½·¨Óкܶ࣬µ±Ç°´óÌå¿ÉÒÔ·ÖΪËÄÀࣺ
  • »ùÓÚÈËÁ³ÌØÕ÷µãµÄʶ±ðËã·¨£¨Feature-based recognition algorithms£©¡£
  • »ùÓÚÕû·ùÈËÁ³Í¼ÏñµÄʶ±ðËã·¨£¨Appearance-based recognition algorithms£©¡£
  • »ùÓÚÄ£°åµÄʶ±ðËã·¨£¨Template-based recognition algorithms£©¡£
  • ÀûÓÃÉñ¾­ÍøÂç½øÐÐʶ±ðµÄËã·¨£¨Recognition algorithms using neural network£©¡£


ËÄ¡¢²¿·Ö½á¹ûµÄÌáǰչʾ
´Ë´Î¶¯ÊÖʵ¼ùÀûÓõÄÈËÁ³Êý¾Ý¿âÊÇORLÈËÁ³Êý¾Ý¿â£¬²¢ÇÒΪÁËʶ±ð×Ô¼ºµÄÈËÁ³Ð´ÁËÒ»¸öÅÄÕÕ³ÌÐò×ÔÅÄ£¬½«²É¼¯µ½µÄ×Ô¼ºµÄͼƬÐÅÏ¢¼ÓÈë¸ÃÊý¾Ý¿â£¬ÐγÉÒ»¸öеİüº¬ÓÐ×Ô¼ºÈËÁ³ÐÅÏ¢µÄÊý¾Ý¿â¡£

1¡¢ÒÔÎĵµ³ÌÐòΪÀý½øÐÐչʾ£¬µ±ÉãÏñÍ·¼ì²âµ½µÄÈËÁ³ÊÇ×Ô¼ºÊ±£¬»á¡°¿ä"×Ô¼ºÊÇ¡° ´ó˧±È¡±£¬¼ì²â½á¹û²»ÊÇ×Ô¼ºÊ±»áÏÔʾ¡°´ó³ó±Æ¡±¡£¹þ¹þ¹þ£¬ÎÒ³¤µÄ˧ÒѾ­²»ÊÇÃØÃÜÁË£¡£¨41ÊÇָʶ±ðÅжϵĽá¹û£¬41¶ÔÓ¦ÎÒ×Ô¼º£¬ORLÖÐÔ­ÓÐ40¸öÈË£©
1.png

2¡¢ÒÔMFC³ÌÐòΪÀý½øÐÐչʾ¡£Í¬Ñù£¬µ±ÉãÏñÍ·¼ì²âµ½µÄÈËÁ³ÊÇ×Ô¼ºÊ±£¬»á¡°¿ä"×Ô¼ºÊÇ¡° ´ó˧±È¡±£¬¼ì²â½á¹û²»ÊÇ×Ô¼ºÊ±»áÏÔʾ¡°´ó³ó±Æ¡±¡£¶øÇÒ¿ÉÒÔÉ趨µ±¼ì²â½á¹ûΪÊý¾Ý¿âÖеÄijһ¸öʱ£¬¿ÉÒÔÔÚÁíÒ»¸öͼƬ¿Ø¼þ£¨picture control£©ÖÐÏÔʾ¶ÔÓ¦Ò»ÕÅÈËÁ³¿âÖеÄͼÏñ¡££¨¸÷ÖÖBUTTON±íʾ²»Í¬¹¦ÄÜ£¬ÔÚ½ÓÏÂÀ´µÄÁ½ÆªÖн«½øÐнéÉÜ¡££©
2.png

Ô­ÎÄÁ´½Ó


»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

12ÏÂÒ»Ò³
ÄúÐèÒªµÇ¼ºó²Å¿ÉÒÔ»ØÌû µÇ¼ | Á¢¼´×¢²á

±¾°æ»ý·Ö¹æÔò

¹Ø±Õ

ÍƼöÉÏÒ»Ìõ /2 ÏÂÒ»Ìõ