From e59601a109ad24b6226d37a76ac849ba3da8f1df Mon Sep 17 00:00:00 2001 From: Thibaut Horel Date: Mon, 20 Feb 2012 15:51:34 -0800 Subject: Recognition accuracy as a function of distance and brightness. --- data/face-recognition-accuracy.py | 49 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 data/face-recognition-accuracy.py (limited to 'data/face-recognition-accuracy.py') diff --git a/data/face-recognition-accuracy.py b/data/face-recognition-accuracy.py new file mode 100755 index 0000000..8b3584f --- /dev/null +++ b/data/face-recognition-accuracy.py @@ -0,0 +1,49 @@ +#!/usr/bin/python +import matplotlib.pyplot as plt +import matplotlib.mlab as ml +import numpy as np +import sys + +numbins_distance = 15 +numbins_brightness = 10 + +test_filename = sys.argv[1] +bfile = open(sys.argv[2]) +distance=[] +brightness=[] +detected=[] + +for line in open(test_filename): + values = line.rstrip().split(',') + subdir,name,run,frame,zv = values[0:5] + name = '_'.join(name.split()) + detected_name = values[6].split('@')[0] + bline = bfile.readline().rstrip().split(',') + while bline[3] != frame: + bline = bfile.readline().rstrip().split(',') + + br = bline[4] + distance.append(float(zv)) + brightness.append(float(br)) + detected.append(detected_name==name) + +distance = np.array(distance) +brightness = np.array(brightness) +detected = np.array(detected) + +distance_detected = distance[detected>0] +brightness_detected = brightness[detected>0] +range_distance = (min(distance),max(distance)) +range_brightness = (min(brightness),max(brightness)) +hist_detected,bins = np.histogram(distance_detected,bins=numbins_distance,range=range_distance) +hist,bins = np.histogram(distance, bins=numbins_distance, range=range_distance) +brightness_hist_detected,bins_brightness = np.histogram(brightness_detected,bins=numbins_brightness, range=range_brightness) +brightness_hist,bins_brightness = np.histogram(brightness,bins=numbins_brightness, range=range_brightness) + +result1 = hist_detected*1./hist +result2 = brightness_hist_detected*1./brightness_hist +plt.subplot(211) +plt.bar(bins[:-1],result1,width=np.diff(bins)) +plt.subplot(212) +plt.bar(bins_brightness[:-1],result2,width=np.diff(bins_brightness)) +plt.show() -- cgit v1.2.3-70-g09d2