摘要:阿里云就提供了許多人工智能的服務,進一步降低了開發者的使用門檻。比如阿里云大學在線考試系統使用的身份證識別人臉比對技術,就來自阿里云提供人臉識別產品。
目前人工智能的發展正如火如荼,基于此的應用也是層出不窮。比如實時的現場多語種翻譯機,還有各種App里出現的實名認證活體檢測技術。以至于小學生都已經在用Python開發人工智能程序了!
看到這么多應用,雖然小學生都在開發人工智能程序了,但是對于初次接觸的人來說,搭建環境、構建模型、編寫程序、調試應用,花費的時間也不少。其門檻能不能進一步降低,從而讓我們快速上手呢?
答案當然是可以的。畢竟一切都可以服務化。阿里云就提供了許多人工智能的服務,進一步降低了開發者的使用門檻。比如阿里云大學在線考試系統使用的身份證識別、人臉比對技術,就來自阿里云提供人臉識別產品(https://data.aliyun.com/produ... )。
我們以一個寵物匹配小游戲為例,來介紹下如何快速上手。
思路是我們先找到一些動物的照片,看看他們的臉型比例。通過與人臉的比例進行匹配,我們大概就能判斷出每個人與其相似的寵物了。所以人臉接測定位的服務(https://help.aliyun.com/knowl... ),就能滿足我們的需求了。實際上這些服務也接入了云市場(https://market.aliyun.com/pro... ),區別在于前者API校驗是其自己的規范,后者走的是APPCODE簡單身份認證或者云市場API網關統一的簽名認證。其他方面并沒有太大差別。
我們以前者為例,先開通產品,然后就可以按照文檔(https://help.aliyun.com/knowl... )進行開發調試了。以PHP為例,我們傳入一個圖片,看看返回結果:
"application/json", "content-type" => "application/json", "date" => gmdate("D, d M Y H:i:s GMT"), ); $body = array( "type" => 1, "content" => base64_encode($content), ); $headers["authorization"] = self::calcSignature($url, $body, $headers); $headers = array_map(function($k, $v) { return $k.": ".$v; }, array_keys($headers), $headers); return self::_request($url, $body, $headers); } /** * 計算人臉比對API需要的簽名。 * * https://help.aliyun.com/document_detail/30245.html */ protected static function calcSignature($url, $body, $headers) { $urlinfo = parse_url($url); $path = empty($urlinfo["query"]) ? $urlinfo["path"] : $urlinfo["path"]."?".$urlinfo["query"]; if (is_array($body)) { $body = json_encode($body); } $bodymd5 = empty($body) ? "" : base64_encode(md5($body,true)); $stringToSign = "POST ".$headers["accept"]." " .$bodymd5." ".$headers["content-type"]." ".$headers["date"]." ".$path; $ak = self::getAccessKey(); $signature = base64_encode( hash_hmac("sha1", $stringToSign, $ak["secret"], true) ); return "Dataplus ${ak["id"]}:".$signature; } protected static function getAccessKey() { // 填寫從https://ak-console.aliyun.com/獲取的AK信息 return array("id" => "", "secret" => ""); } private static function _request($url, $data, $headers) { $options = array( CURLOPT_URL => $url, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => 1, CURLOPT_TIMEOUT => self::HTTP_TIMEOUT, CURLOPT_HTTPHEADER => $headers, CURLOPT_POSTFIELDS => json_encode($data), ); $curl = curl_init(); curl_setopt_array($curl, $options); $response = curl_exec($curl); curl_close($curl); if (!$response) { return false; } return json_decode($response, true); } }
測試一下調用:
array(15) { ["face_num"]=> int(1) ["face_rect"]=> array(4) { [0]=> int(262) [1]=> int(25) [2]=> int(141) [3]=> int(190) } ["face_prob"]=> array(1) { [0]=> float(1) } ["pose"]=> array(3) { [0]=> float(4.1272883415222) [1]=> float(-1.8178242444992) [2]=> float(0.42051115632057) } ...
按照文檔說明,face_rect便是我們需要的結果:
位置262、25,大小141、90,便是人臉的位置。剩下的開發就輕而易舉啦。
最近我們利用人臉識別技術開發了一款測試寵物緣的游戲,有興趣的小伙伴可以嘗試一下,掃下圖海報的二維碼吧!
詳情請閱讀原文
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/19701.html
摘要:實現實時人臉識別本文記錄了在學習深度學習過程中,使用,開發環境為,實現局域網連接手機攝像頭,對目標人員進行實時人臉識別,效果并非特別好,會繼續改進這里是項目地址項目中用到的大文件地址如果各位老爺看完覺得對你有幫助的話,請給個小星星,當前時間 opencv+mtcnn+facenet+python+tensorflow 實現實時人臉識別 Abstract:本文記錄了在學習深度學習過程中,...
閱讀 1795·2023-04-25 15:51
閱讀 2505·2021-10-13 09:40
閱讀 2141·2021-09-23 11:22
閱讀 3248·2019-08-30 14:16
閱讀 2660·2019-08-26 13:35
閱讀 1855·2019-08-26 13:31
閱讀 883·2019-08-26 11:39
閱讀 2740·2019-08-26 10:33