바이두 클라우드 얼굴 인식 API 라이브러리 매니저

 
1   URLLIB 반입 요청
  오기 베이스 64
 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      헤더 = { ' 콘텐츠 유형 ' : ' 응용 프로그램 / JSON; 캐릭터 = UTF-8 ' }
 13      입술 = 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)은      = 요청 URL " https://aip.baidubce.com/rest/2.0 / 얼굴 / V3 / 검색 " 
(34)      화상 에서 : 이미지 3
 35          A = open_pic2base (이미지)
 (36)          (= {PARAMS json.dumps " 화상 " A, " 오고 image_type " : " BASE64 " , " group_id_list ' : 그룹})
 37          access_token이 = get_token (CLIENT_ID, client_secret)
 38          요청 URL 요청 URL + = " ? access_token은 = " + access_token이
 39          PARAMS = params.encode ( " UTF-8 ")
40  
(41)          요청 = urllib.request.Request (URL = 요청 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      요청 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      요청 URL 요청 URL + = " access_token이 =? " + access_token이
 72     PARAMS = params.encode ( " UTF-8 " )
 (73)      = urllib.request.Request (URL = 요청 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