1. 程式人生 > 實用技巧 >如何通過一個SDK輕鬆搞定人臉識別,拯救初入職場的程式猿

如何通過一個SDK輕鬆搞定人臉識別,拯救初入職場的程式猿

摘要:看一個SDK如何拯救初入職場的程式猿小Hi…

【職場初體驗】

時間過得真快,距離上次給小Hi安排“人臉識別”的開發任務(話接上期:【快速玩轉華為雲開發】小Hi拍了拍你,基於華為雲API的開發你Get到了嗎?)已經過去1個多月了,至今還沒有收到一點進展的音訊,老闆有些躁動起來。眼看著,離雙12也就一兩週的時間了,這是最後的deadline。老闆眉頭緊鎖,點了一根“相約98”的香菸(小Hi正好是98後,一切都是巧合吧),長舒了一口氣,給小Hi發了樓下咖啡廳見的資訊。

程式猿小Hi入職後第二次被老闆單獨召見,這一次突然是在高大上的“小樣”咖啡廳(一杯咖啡可以吸收宇宙的力量)。小Hi感到不妙,非常緊張,畢竟老闆交待的第一個任務還沒有搞定,遇到了點困難。

老闆在招呼小Hi就座後,微笑著說(心裡可能正憋著火):小Hi,人臉識別的需求自從前些日子在華為雲API Explorer上找到相關API後,進展得還順利嗎?有沒有什麼困難需要我來推動解決的?

小Hi開始冒汗…結巴著說:“老闆,我們要的API雖然找著了,而且也都在API Explorer上除錯通過了,但還沒有在程式碼工程裡調通,我現有點沮喪…(眼淚都快掉起來了)”。

老闆:小Hi,你先彆著急,我理解你現在的心情,也注意到你最近工作非常賣力。我們先一起來縷縷,我們的目標是雙12前正式上線人臉識別的功能,能將當前的現狀具體描述下嗎?

小Hi:在程式碼中呼叫這些API需要做很多封裝工作,比如這裡涉及諸多httpsclient公共方法的封裝,涉及ak/sk的獲取以及生成token等操作,需要寫上千行程式碼,我以前對這塊不熟悉,雖然近幾周努力加班趕進度,但進度還不是很理想,風險很高哦;

老闆:像華為雲這樣的Top廠商,除了API肯定是有提供SDK。有SDK的話,你只需要像使用函式一樣,事半功倍哦!另外,以後工作上有什麼風險,要及時反饋,及時求助。

小Hi一頭霧水(什麼是SDK?掛到嘴邊又不好意思說),沒想到老闆除了能跟客戶吹水外,技術路子也挺野的。在些許的不確定性中,想起了一句名言“沒有退路,就是勝利之路”,於是抬頭挺胸,大聲的回答道:“老闆,經過你的指導後,感覺豁然開朗,我這就去找SDK,謝謝老闆,那我先回去工作去了,有問題我再及時求助”。說完,跟打了雞血一樣,興高采烈地跑出咖啡廳(一口咖啡都沒顧得上喝,但被老闆激勵到了,也算是吸收了宇宙的力量)。

【困難解決之路】

只見小Hi從過道飛馳而過,猶如一匹汗血寶馬,讓同事們都驚呆了,不知道哪來的自信。“我是一隻小小鳥,有了SDK,我可以飛得更高…”,一邊哼著小曲,一邊在華為雲官網搜尋框輸入:SDK。然後一頓操作猛如虎:

  • 搜尋人臉識別FRS服務,找到Java SDK卡片,先進入SDK文件看看如何使用:

One by One,不能再簡單,原以為“開通人臉識別服務”的操作需要半天呢,沒想到1分鐘就完成了。

  • 上面的環境準備工作大概只花了10來分鐘,就輕鬆的搞定了。小Hi信心爆棚,接下就看“介面示例”程式碼了:

構造服務客戶端程式碼:

String ak = "***";  
String sk = "***";  
String projectId = "**";  
 // Proxy info,當您需要使用代理才可以訪問到服務時,可在此處增加代理資訊  
ProxyHostInfo proxyHostInfo = new ProxyHostInfo("proxy",  8080, "**", "**" );  
 // Service info  
String url = "https://face.cn-north-4.myhuaweicloud.com";  
String region = "cn-north-4";  
AuthInfo authInfo = new AuthInfo(url, region, ak, sk);  
FrsClient frsClient = new FrsClient(authInfo, projectId, proxyHostInfo); // 當您需要代理才可以訪問到服務時,在第三個引數增加代理資訊即可 

呼叫人臉對比函式(檢查相似度)

CompareFaceResult compareFaceResult = frsClient.getV2().getCompareService().compareFaceByFile("data\\小Hi-front.png", "data\\小Hi-side.png");  

人臉對比圖片:

返回結果:相擬度約為97%

小Hi看到結果後,還是有點不太相信自己的眼睛,幸福來得太突然了吧?想到前段時間使用過API Explorer除錯功能,於是想對比下兩種方式的結果是不是一致的。…點選除錯,結果真得一樣(相擬度約為97%):

太不可思議了,居然只需要copy幾行程式碼就搞定了人臉檢測服務API的整合開發工作。小Hi欣喜若狂,原來跟華為雲API對接真得跟傳說中的這麼簡單,One by One就搞定了,只是自己不知道捷徑而已。No Copy, More Code! Low Copy, Low Code, No Code!

【幸福來敲門】

寫在結尾:薑還是老的辣,經過老闆隨便一點拔,小Hi輕而易舉地使用華為雲SDK完成了入職以來的第一個任務,所謂背靠大樹好乘涼啊。One day later,小Hi興高采烈地走進老闆辦公室; Several minutes later,小Hi陽光燦爛地飛出辦公室,空氣中瀰漫著升職加薪的氣息。誰叫她證明了老闆是對的呢,哈哈…

小道訊息,老闆之所以著急人臉識別功能要在雙12上線,是因為他的第二個小公子預產期就是有12月12日,老闆想用自己釋出的產品來對兩個兒子做個人臉識別,匹配下相似度。哎呀我勒個天啊,這訊息要是讓老闆娘知道那還得了?

江湖傳聞,不久後老闆又開始接見小Hi,交待祕密差事。喜歡蹲牆根的人們,憑藉同類的直覺,截獲到小Hi的腦電波訊號:“華為雲CLI是什麼鬼?額勒個娘,還有個模板引擎,我只聽說過發動機引擎”。未完待續……

本文分享自華為雲社群《【快速玩轉華為雲開發】小Hi如何取得人臉識別SDK處女秀的成功,幸福來敲門!》,原文作者:Mourinho。

點選關注,第一時間瞭解華為雲新鮮技術~