Baiduのクラウド顔認識APIライブラリマネージャー

 
1  から urllibはインポート要求
 2  インポートBASE64
 3つの インポート要求
 4  インポート5  インポートJSON
 6  インポートurllibは
 7  インポートOS
 8  
9  获取トークン
10  DEF :get_token(CLIENT_ID、client_secret)
 11      ホスト= ' https://aip.baidubce.com /oauth/2.0/token?grant_type=client_credentials&client_id= ' +のclient_id + ' &client_secret = " + client_secret + ''
12の      ヘッダー= { ' のContent-Type 'アプリケーション/ JSON。文字セット= UTF-8 ' }
 13      RES = requests.post(ホスト、ヘッダー= ヘッダ)
 14      access_tokenは= re.findall(' "access_tokenは": "?(*)" ' 、res.text)[0]
 15      リターンaccess_tokenは
 16  
17  打开文件夹、进行对比
18  DEF :geturlPath(パス)
 19の      DIRS = os.listdir(経路)
 20      LST = []
 21       DIR1 DIRS:
 22         パス= + PAはDIR1
 23は         lst.append(PA)
 24      リターンLST
 25  
26れている #は、ローカル画像を開き、Base64でに変換
27  DEFの:open_pic2base(イメージ)
 28      F =オープン(画像、' RB ' 29      IMG = base64.b64encode (達し、f.read())、デコード(' UTF-8 ' 30      リターンIMG
 31は、 
32  DEF 検索(画像3、CLIENT_ID、client_secret、グループ):
 33である      request_url = " https://aip.baidubce.com/rest/2.0 /フェイス/ V3 /検索
34     画像における画像3:
 35          、A = open_pic2base(画像)
 36          のparams = json.dumps({ " イメージ":、" のimage_typeは"" BASE64 "" group_id_list " :グループ})
 37          access_tokenは= get_token(CLIENT_ID、client_secret)
 38          request_url = request_url + " ?access_tokenは= " + access_tokenは
 39          のparams = params.encode(" UTF-8 "40  
41          リクエスト= urllib.request.Request(URL = request_url、データ= paramsは)
 42  
43          request.add_header(' のContent-Type '' アプリケーション/ JSON ' 44          応答= urllib.request.urlopen(リクエスト)
 45          含有量= response.read()
 46          ユーザ= ' 見つかりません' 
47を         場合含量:
 48              結果= json.loads(content.decode(' UTF-8 ' ))
 49              プリント(結果)
50              もし結果[ ' ERROR_CODE ' ] == 0:
 51                  LST = []
 52                  セット= {}
 53                  ユーザ=結果[ ' 結果' ] [ ' user_list ' ] [0]
 54                  GROUP_ID =ユーザ[ " GROUP_ID " ]
 55                  USER_ID =ユーザ[ ' USER_ID ' ]
 56                  スコア=ユーザ[ ' スコア' ]
 57                 セット[ " ホストグループ" ] = GROUP_ID
 58                  セット[ " 類似ユーザー" = USER_ID
 59                  セット[ " 類似度" ] = スコア
 60                  lst.append(セット)
 61で                 印刷(LST)
 62で                 IFスコアが> 85 63                      add_face2ku = face_add(画像、GROUP_ID、user_idの)
 64                  、他65の                   パス
66  
67  DEF face_add(画像、GROUP_ID、USER_ID):
68      request_url = ' https://aip.baidubce.com/rest/2.0/face/v3/faceset/user/add ' 
69件      のparams = json.dumps({ " イメージ":open_pic2base(画像)、" のimage_type "" BASE64 " " GROUP_ID ":GROUP_ID、" USER_ID " :USER_ID})
 70      access_tokenは= get_token(CLIENT_ID、client_secret)
 71      request_url = request_url + " access_tokenは= " + access_tokenは
 72     paramsは= params.encode(" UTF-8 " 73      要求= urllib.request.Request(URL = request_url、データ= paramsは)
 74      request.add_header(' のContent-Type '' アプリケーション/ JSON ' 75      応答= urllibは.request.urlopen(リクエスト)
 76      リターン応答
 77  
78  なら __name__ == ' __main__ ' 79      CLIENT_ID = ' MeZaaKIbOt5DGp4cfxGpv4wa ' 
80      client_secret =' ImadHITTnAvtGkLeugrNUNuG3NOdiE7Q ' 
81      パス= R&LT ' G:/ images5 / ' 
82  
83      画像3 = geturlPath(経路)
 84  
85      グループ指定着信と比較ギャラリー
86      検索(画像3、CLIENT_ID、client_secret、' 俳優'

 

おすすめ

転載: www.cnblogs.com/erlchixiha/p/11805258.html