Skip to main content
本文將介紹一種 五官定位 API 對接說明,它可以通過輸入圖片,對請求圖片進行五官定位(也稱臉部關鍵點定位),計算構成人臉輪廓的 90 個點,包括眉毛(左右各 8 點)、眼睛(左右各 8 點)、鼻子(13 點)、嘴巴(22 點)、臉型輪廓(21 點)、眼珠[或瞳孔](2點)。

申請流程

要使用 API,需要先到 五官定位 API 對應頁面申請對應的服務,進入頁面之後,點擊「Acquire」按鈕,如圖所示: 如果你尚未登錄或註冊,會自動跳轉到登錄頁面邀請您來註冊和登錄,登錄註冊之後會自動返回當前頁面。 在首次申請時會有免費額度贈送,可以免費使用該 API。

基本使用

首先先了解下基本的使用方式,就是輸入圖片鏈接,便可獲得處理後結果圖片,首先需要簡單地傳遞一個 image_url 字段,臉部圖片如下圖所示:

我們接下來就可以在界面上填寫對應的內容,如圖所示:

可以看到這裡我們設置了 Request Headers,包括:
  • accept:想要接收怎樣格式的響應結果,這裡填寫為 application/json,即 JSON 格式。
  • authorization:調用 API 的密鑰,申請之後可以直接下拉選擇。
另外設置了 Request Body,包括:
  • image_url:需要處理的人臉圖片鏈接。
  • mode:檢測模式。0 為檢測所有出現的人臉, 1 為檢測面積最大的臉。默認為 0。
  • face_model_version:人臉識別服務所用的算法模型版本,默認是3.0
  • need_rotate_detection:是否開啟圖片旋轉識別支持。0為不開啟,1為開啟。默認為0。
選擇之後,可以發現右側也生成了對應代碼,如圖所示:

點擊「Try」按鈕即可進行測試,如上圖所示,這裡我們就得到了如下結果:
可以看到這時候我們就得到了圖片中人臉的相關信息,包括五官定位(人臉關鍵點)具體信息、人臉識別所用的算法模型版本等內容。 字段說明如下:
  • image_width :請求的圖片寬度。
  • image_height :請求的圖片高度。
  • face_model_version:人臉識別所用的算法模型版本。
  • face_shape_set:五官定位(人臉關鍵點)具體信息。
    • face_profile :描述臉型輪廓的 21 點。
      • x :x座標
      • y :y座標
    • left_eye :描述左側眼睛輪廓的 8 點。
      • x :x座標
      • y :y座標
    • right_eye :描述右側眼睛輪廓的 8 點。
      • x :x座標
      • y :y座標
    • left_eye_brow :描述左側眉毛輪廓的 8 點。
      • x :x座標
      • y :y座標
    • right_eye_brow :描述右側眉毛輪廓的 8 點。
      • x :x座標
      • y :y座標
    • mouth :描述嘴巴輪廓的 22 點。
      • x :x座標
      • y :y座標
    • nose :描述鼻子輪廓的 13 點。
      • x :x座標
      • y :y座標
    • left_pupil :左瞳孔輪廓的 1 個點。
      • x :x座標
      • y :y座標
    • right_pupil :右瞳孔輪廓的 1 個點。
      • x :x座標
      • y :y座標
另外如果想生成對應的對接代碼,可以直接複製生成,例如 CURL 的代碼如下:
Python 的對接代碼如下:

錯誤處理

在調用 API 時,如果遇到錯誤,API 會返回相應的錯誤代碼和信息。例如:
  • 400 token_mismatched:錯誤請求,可能是因為缺少或無效的參數。
  • 400 api_not_implemented:錯誤請求,可能是因為缺少或無效的參數。
  • 401 invalid_token:未授權,無效或缺少授權令牌。
  • 429 too_many_requests:請求過多,您已超過速率限制。
  • 500 api_error:內部伺服器錯誤,伺服器出現問題。

錯誤響應示例

結論

通過本文檔,您已經了解了如何使用 五官定位 API 對輸入的圖片進行五官定位。希望本文檔能幫助您更好地對接和使用該 API。如有任何問題,請隨時聯繫我們的技術支持團隊。