æµè¯é¨å
æµç¨
æµç¨å¯ä»¥å为两é¨åï¼ä¸é¨åæ¯è®ç»ï¼ä¸é¨åæ¯æµè¯ã
å ³äºå¦ä½ä½¿ç¨face++æä¾çAPIå¯ä»¥çhttp://blog.csdn.net/jianjian1992/article/details/46640483
代ç å¯å¨http://download.csdn.net/detail/jianjian1992/8866839å è´¹ä¸è½½ã
èµ·å§çé¢
çé¢
å¦ä¸æ示ï¼å°ä½¿ç¨è¯´æè¿è¡äºä»ç»ï¼å 为æ¯å次使ç¨ï¼å¾å¤ä¸å¤ªä¼ï¼æ以çé¢å¼å¾æ¯è¾ç®åï¼ä»¥è½ä½¿ç¨ä¸ºç¬¬ä¸ç®æ ã
å®ç°ç»è
index.htmlæ¯æ¬¢è¿çé¢ï¼è®°å½ä¸ä¸å 个å°é®é¢
ä¸æç使ç¨
å¨headé¨åå ä¸å符é使ç¨utf-8就好å¦ï¼
æåå± ä¸ä¸èæ¯è®¾ç½®
å¨htmlæåé¢å äºä¸ªstyleï¼è®¾ç½®bodyçæ¾ç¤ºææã
æåæ¾ç¤ºè®¾ç½®ä¸ºå± ä¸ï¼ä½¿ç¨height,widthå ä¸margin-top,margin-left便å¯ä»¥è®¾ç½®bodyé¨åå¨é¡µé¢ä¸æ¾ç¤ºçå°æ¹å¦ã
èæ¯å设置äºå¾çurlï¼ä»¥åå± ä¸æ¾ç¤ºã
æé®ç页é¢è·³è½¬
onClickéé¢ç¨locationè®°å½å°è¦è·³è½¬ççé¢ã
è®ç»é¨å
å æ¬ä¸¤é¨åï¼
- startTrain.phpç¨äºè¾å ¥è®ç»ç®å½ï¼
- train.phpç¨äºå°è®ç»æ°æ®ä¼ å°æå¡å¨ï¼å¹¶å°è®ç»æåæ è®°è¾åº
startTrain.php
è¿ä¸é¨ååå¾è®æ«çï¼æ¥äºä¸phpéæ©æ件夹ï¼æ²¡ææ¾å°è¯¥æä¹åï¼æ以就ç¨äºä¸ªæ¥è¾å ¥ç®å½ãçæ¯å¼±çäºå
ç¨äºä¸ä¸ªè¡¨åformæ¥è®°å½è¾å ¥ç®å½ï¼æ交表åä¹ååè·³å°train.phpä¸è¿è¡çæ£çè®ç»å¦ã
train.php
è¿ä¸é¨åå®ç°äºä¸¤ä¸ªåè½ï¼- æ ¹æ®è¾å ¥ç®å½æ¥æ¾ææè®ç»å¾çï¼å¹¶è®°å½ææå¾çè·¯å¾
- å°ææè®ç»å¾çä¸ä¸æ£æµäººè¸ï¼å¹¶å°äººè¸å å ¥å°è®ç»æ¨¡åä¸
æ¥æ¾ç®å½
phpä¸æ¥æ¾ç®å½ä¸æææ件åæ¯æºæ¹ä¾¿çåï¼listDirå½æ°å¨dir.phpä¸ã
è¿ä¸ªå½æ°æ ¹æ®$dirç®å½åï¼å°å¾å°çæææ件ååå ¥$namesï¼æææ件路å¾åååå ¥$img_urlsä¸ã
注æçä¸ç¹æ¯ï¼å¦ææ¯ä¸ææ件åï¼åè¦å ä¸
$file = iconv("gb2312","UTF-8",$file);è¿ä¸å¥æä¼å¾å°ç»æçï¼è¦ä¸å°±æ¯ç©ºå¦
phpä¸å符串çæ¥æ¾å¯ä»¥ä½¿ç¨strstrå½æ°ï¼
æ¯å¦ä¸é¢ç$file_name = strstr($file,'.',true)便æ¯æ¥æ¾$fileä¸â.âçåé¢é¨åï¼å¦ææ¯strstr($file,'.',false)åæ¯'.'çåé¢é¨åã
å¨ææ°ç»çæ·»å 使ç¨array_pushå°±okå¦ï¼
å¦ï¼ä¸è¦å¿è®°äºå ³éèµæºåï¼æopendir($dir)é£ä¹å°±è¦æ对åºçclosedir($dir)ã
function listDir($dir, &$names, &$img_urls){ if(is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if((is_dir($dir."/".$file)) && $file!="." && $file!="..") { //echo "æ件åï¼",$file,"
"; listDir($dir."/".$file."/"); } else { $file = iconv("gb2312","UTF-8",$file); if($file!="." && $file!="..") { //var_dump($file); $file_name = strstr($file, '.', true); //echo $file_name."
"; array_push($names, $file_name); array_push($img_urls, $dir."/".$file); } } } closedir($dh); } }}
å¨train.phpä¸ä½¿ç¨å¦ä¸ä»£ç 便å¾å°äºè®ç»ç¨çææå¾ççurlå¦ã
$img_url = array();$person_name = array();$trainDir = $_GET["trainDir"];listDir($trainDir, $person_name, $img_url);echo "ä»ç®å½ä¸æ们å¾å°äº ".sizeof($img_url)." å¼ å¾ç".æ¥çæ们å建ä¸ä¸ªè®ç»ç»oldpeople_qiaoxiã
;
$response = $facepp->execute('/group/delete', array('group_name' => 'oldpeople_qiaoxi'));$response = $facepp->execute('/group/create', array('group_name' => 'oldpeople_qiaoxi'));æ¥çå循ç¯ï¼å¯¹æ¯å¼ å¾çæ£æµäººè¸
$params['img'] = $img;$params['attribute'] = 'gender,age,race,smiling,glass,pose';$response = $facepp->execute('/detection/detect',$params);ä»è¿å值$responseå¾å°face_idä¹åï¼å建ä¸ä¸ªperson并å°æ£æµå°ç人è¸å å ¥è¿ä¸ªç±»å«personä¸ã
$response = $facepp->execute('/person/delete', array('person_name' => $person_name[$i],'group_name' => 'oldpeople_qiaoxi'));$response = $facepp->execute('/person/create', array('person_name' => $person_name[$i],'group_name' => 'oldpeople_qiaoxi'));$response = $facepp->execute('/person/add_face', array('person_name' => $person_name[$i], 'face_id' => $face_id, 'group_name' => 'oldpeople_qiaoxi'));å°ææå¾çé½å¤ç好ä¹åï¼ä¾¿å¯ä»¥è®ç»æ¨¡åäºã
$response = $facepp->execute('/train/identify', array('group_name' => 'oldpeople_qiaoxi'));è®ç»æåçè¯ï¼ç»æå¦ä¸ï¼
æµè¯é¨å
è¿ä¸ªé¨åå æ¬2个é¨åï¼
- test.phpè´è´£éæ©æµè¯å¾ç
- recognition.phpè´è´£å°æµè¯å¾çä¼ å°æå¡å¨å¹¶ç»åºç»æ
test.phpé¨å
æ¾ç¤ºå¦ä¸ï¼
éæ©æ件é¨åç¨çæ¯æ¥åçï¼ä¹å表åæ交å°recognition.php就好äºã
recognition.phpé¨å
é¦å å¾å°å¾ççurlã
$img_url = $_GET["testImgPath"];ä¹åæ§è¡identifyå¾å°èº«ä»½ç»æã
$response = $facepp->execute('/recognition/identify', array('group_name' => 'oldpeople_qiaoxi', 'img' => $img_url));è¿ééç¨äºä¸ä¸ªæ°ç»æ¥è¿è¡ä¸æåä¸è±æåç对åºï¼å 为face++ä¸æ¯æä¸æåçå¾çï¼æä»¥ä¼ ç»å®çå¾çé½æ¯è±æå½åçï¼ä½æ¯æ¾ç¤ºéè¦ä¸æåï¼æ以å¨è¿éè¿è¡æ å°ã
$person_name = array("ami" => "è¾ç±³", "dongjian" => "å¼ ä¸å¥", "xiaowang" => "å°ç");
;
çæ声æï¼æ¬æ为å主ååæç« ï¼æªç»å主å 许ä¸å¾è½¬è½½ã
声æï¼æ¬æå 容ç±ç½åèªåè´¡ç®ï¼çæå½åä½è ææï¼æ¬ç«ä¸æ¿æ ç¸åºæ³å¾è´£ä»»ãå¦æ¨åç°ææ¶å«æè¢ä¾µæçå 容ï¼è¯·èç³»admin@php.cnæ ¸å®å¤çã
ç¸å ³æç«
ç¸å ³è§é¢
ä¸é¢æ¨è
-
ç¬å¤ä¹è´±-phpå
¨æ å¼åæç¨
å ¨æ 170W+
主讲ï¼Peter-Zhu è½»æ¾å¹½é»ãç®çæå¦ï¼é常éåPHPå¦ä¹ å ¥é¨
-
ç女å¿ç»-webå端å¼åæç¨
å ¥é¨ 80W+
主讲ï¼çç»å¸å¤ª ç±æµ å ¥æ·±ãæå¿«ç®æ´ï¼é常éåå端å¦ä¹ å ¥é¨
-
天é¾å
«é¨-å®æå¼åæç¨
å®æ 120W+
主讲ï¼è¥¿é¨å¤§å®äºº æè·¯æ¸ æ°ã严谨è§èï¼éåæä¸å®webç¼ç¨åºç¡å¦ä¹
- ææ°æç«
- çé¨æè¡
- ä¸æ详解WindowsåLinuxç¯å¢ä¸æä¹å®è£ é ç½®PHP
- 详解win10ä¸PHPçå®è£ é ç½®ï¼ä»¥php5.6为ä¾ï¼
- ãDTMãPHPåç¨å®¢æ·ç«¯v0.1 betaçæ¬åå¸å¦ï¼
- ãåè¡æ´çã28ä¸ªå ³äºPHPæ ¸å¿ææ¯çé¢è¯é¢ï¼å©å跳槽ï¼
- php Swooleå®ç°æ¯«ç§å®æ¶è®¡åä»»å¡ï¼è¯¦è§£ï¼
- ç¨PHPå°å¥³åç §ç转æå¯ç±çå¨æ¼«å¤´åï¼
- PHP æ件æä½å½æ°ï¼ä¸é¢ï¼
- PHP ARRAY æ°ç»å½æ°ï¼ä¸é¢ï¼
- 循ç¯å¤§éæ°æ®å¯¼è´å åè¶ åºï¼ä¸å¢å å åå¦ä½è§£å³è¯¥é®é¢
- VPNæ¯ä»ä¹
- æå ¨æ详ç»çPHPé¢è¯é¢(带æçæ¡)
- PHPå大主æµæ¡æ¶çä¼ç¼ºç¹æ»ç»
- PHPå¿«éæ建ä¸ä¸ªç®åçQQæºå¨äºº
- API常ç¨ç¾åéªè¯æ¹æ³(PHPå®ç°)
- PHP常ç¨æ¥ææ¶é´æä½åé
- Macçµè设置hostsçæ¹æ³ï¼å¾ææ¥éª¤ï¼
ç½åè¯è®º
ææä¸ç½çæ§åè¨ï¼è¯·éµå® æ°é»è¯è®ºæå¡åè®®
æè¦è¯è®º