# Clarifai CLARIFAI_APP_ID = YOUR_CLARIFAI_APP_ID CLARIFAI_APP_SECRET = YOUR_CLARIFAI_APP_SECRET clarifai_api = ClarifaiApi(app_id=CLARIFAI_APP_ID, app_secret=CLARIFAI_APP_SECRET) #results = clarifai_api.tag_image_urls('http://d21vu35cjx7sd4.cloudfront.net/dims3/MMAH/thumbnail/645x380/quality/90/?url=http%3A%2F%2Fs3.amazonaws.com%2Fassets.prod.vetstreet.com%2F3a%2F54%2F5ae8bfcc41b381c27a792e0dd891%2FAP-KWDHXS-645sm8113.jpg') #results = clarifai_api.tag_urls("http://d21vu35cjx7sd4.cloudfront.net/dims3/MMAH/thumbnail/645x380/quality/90/?url=http%3A%2F%2Fs3.amazonaws.com%2Fassets.prod.vetstreet.com%2F3a%2F54%2F5ae8bfcc41b381c27a792e0dd891%2FAP-KWDHXS-645sm8113.jpg") #results = clarifai_api.tag_urls("http://www.midtownhotelnyc.com/resourcefiles/homeimages/hilton-garden-inn-new-york-manhattan-midtown-east-home1-top.jpg") userInput = input('Please enter your image URL: ') results = clarifai_api.tag_urls(userInput) for result in results.get('results'): tag = result['result']['tag']['classes'] break # debug #print(tag) # debug #print (tag) taglist = list() i = 0 for t in tag: if (i==5): break
| df.image_url.str.contains('.png'))][[ 'image_order', 'image_url' ]].sort_values(['image_order' ])['image_url'].tolist() count = len( df[(df.gender == gender) & (df.name == name) & (df.clarifai_status == 'OK') & (df.predicted != '-')]) begin = 0 print(gender, name, count, len(urls)) while count < args.count and begin < len(urls): need = args.count - count if args.batch and need > args.batch: need = args.batch sel_urls = urls[begin:begin + need] try: result = clarifai_api.tag_urls(sel_urls) for r in result['results']: url = r['url'].encode('utf-8') status = r['status_code'] try: _id = df[(df.gender == gender) & (df.name == name) & (df.image_url == url)].index[0] df.loc[_id, 'clarifai_status'] = status if status == 'OK': tags = r['result']['tag']['classes'] probs = r['result']['tag']['probs'] msum = 0 fsum = 0 for t in ['man', 'men', 'boy', 'actor']: try:
try: for gender in df['gender'].unique(): names = df[df.gender == gender].name.unique().tolist() for name in names: urls = df[(df.gender == gender) & (df.name == name) & df.clarifai_status.isnull() & (df.image_url.str.contains('.jpg') | df.image_url.str.contains('.jpeg') | df.image_url.str.contains('.png'))][['image_order', 'image_url']].sort_values(['image_order'])['image_url'].tolist() count = len(df[(df.gender == gender) & (df.name == name) & (df.clarifai_status == 'OK') & (df.predicted != '-')]) begin = 0 print(gender, name, count, len(urls)) while count < args.count and begin < len(urls): need = args.count - count if args.batch and need > args.batch: need = args.batch sel_urls = urls[begin:begin+need] try: result = clarifai_api.tag_urls(sel_urls) for r in result['results']: url = r['url'].encode('utf-8') status = r['status_code'] try: _id = df[(df.gender == gender) & (df.name == name) & (df.image_url == url)].index[0] df.loc[_id, 'clarifai_status'] = status if status == 'OK': tags = r['result']['tag']['classes'] probs = r['result']['tag']['probs'] msum = 0 fsum = 0 for t in ['man', 'men', 'boy', 'actor']: try: idx = tags.index(t) msum += probs[idx]