summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xdata/face-detect.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/data/face-detect.py b/data/face-detect.py
new file mode 100755
index 0000000..dfc4256
--- /dev/null
+++ b/data/face-detect.py
@@ -0,0 +1,48 @@
+#!/usr/bin/python
+import os
+import sys
+from face_client import FaceClient
+import time
+
+api_key = '34a84a7835bf24df2d84b4bded84e838'
+api_secret = '5bc9e8c5a9e3a2d916abbe3659a1b3f8'
+#url_base = 'http://74.95.195.225/static/img/jon/users/'
+client = FaceClient(api_key, api_secret)
+
+runs = []
+for arg in sys.argv[2:]:
+ runs += [[open(arg), sys.argv[1].rstrip('/') + '/' + arg.split('/')[-2] + '/']]
+
+def limits(client):
+ response = client.account_limits()
+ return response['remaining'],response['reset_time']
+
+remaining,reset_time = limits(client)
+
+for lines, pic_dir in runs:
+ for line in lines:
+ line = line.strip().split(',')
+ name,run,frame,zv = line[0:4]
+ while remaining == 0:
+ time.sleep(max(reset_time - time.time(),0) + 10)
+ remaining,reset_time = limits(client)
+ if frame != 'frame':
+ img = open(pic_dir + frame + '.jpg')
+ response = client.faces_detect(file=img)
+ img.close()
+ out = line[0:4]
+ try:
+ photo = response['photos'][0]
+ out += [str(len(photo['tags']))]
+ for tag in photo['tags']:
+ out += [str(tag['width']),str(tag['height']),str(tag['center']['x']),str(tag['center']['y'])]
+ except:
+ sys.stderr.write("Unexpexted error:"+str(sys.exc_info()[0])+" "+frame)
+ out = line[0:4] + ['0']
+ print ','.join(out)
+ remaining -= 1
+ time.sleep(0.3)
+
+
+
+