From 40ff7c823c1ccb026c1e638baba7bcb20864e19c Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Thu, 17 Jan 2019 16:31:25 +0100 Subject: pyramids=2 --- megapixels/app/server/api.py | 2 +- megapixels/app/server/tasks/demo.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'megapixels') diff --git a/megapixels/app/server/api.py b/megapixels/app/server/api.py index b3bce9bc..61789fb9 100644 --- a/megapixels/app/server/api.py +++ b/megapixels/app/server/api.py @@ -66,7 +66,7 @@ def upload(dataset_name): detector = face_detector.DetectorDLIBHOG() # get detection as BBox object - bboxes = detector.detect(im_np, largest=True) + bboxes = detector.detect(im_np, largest=True, pyramids=2) if not bboxes or not len(bboxes): return jsonify({ 'error': 'bbox' diff --git a/megapixels/app/server/tasks/demo.py b/megapixels/app/server/tasks/demo.py index f7db9034..12d83383 100644 --- a/megapixels/app/server/tasks/demo.py +++ b/megapixels/app/server/tasks/demo.py @@ -81,7 +81,7 @@ def demo_task(self, uuid_name, fn): face_detector_instance = face_detector.DetectorDLIBCNN(gpu=opt_gpu) # -1 for CPU step('Detecting face') st = time.time() - bboxes = face_detector_instance.detect(im_resized, largest=True) + bboxes = face_detector_instance.detect(im_resized, largest=True, pyramids=2) bbox = bboxes[0] dim = im_resized.shape[:2][::-1] bbox_dim = bbox.to_dim(dim) -- cgit v1.2.3-70-g09d2 From 6a59583ff2f13791e3d7e8a69b62dc4bc424c9eb Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Thu, 17 Jan 2019 16:41:45 +0100 Subject: ugh --- client/index.js | 2 +- megapixels/app/server/api.py | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'megapixels') diff --git a/client/index.js b/client/index.js index 96f2c8c8..2c003888 100644 --- a/client/index.js +++ b/client/index.js @@ -28,7 +28,7 @@ function fetchDataset(payload) { function appendApplets(applets) { applets.forEach(([el, payload]) => { - el.classList.add(payload.cmd) + el.parentNode.classList.add(payload.cmd) switch (payload.cmd) { case 'citations': case 'load_file': diff --git a/megapixels/app/server/api.py b/megapixels/app/server/api.py index 61789fb9..4f564710 100644 --- a/megapixels/app/server/api.py +++ b/megapixels/app/server/api.py @@ -7,7 +7,7 @@ import operator from flask import Blueprint, request, jsonify from PIL import Image # todo: try to remove PIL dependency -from app.processors import face_recognition +from app.processors.face_extractor import ExtractorDLIB from app.processors import face_detector from app.processors.faiss import load_faiss_databases from app.models.sql_factory import load_sql_datasets, list_datasets, get_dataset, get_table @@ -86,8 +86,10 @@ def upload(dataset_name): }) # extract 128-D vector - recognition = face_recognition.RecognitionDLIB(gpu=-1) - vec = recognition.vec(im_np, bbox) + extractor = face_extractor.ExtractorDLIB() + vec = extractor.extract(im, bbox_norm) # NB use norm, not bbox_dim + # recognition = face_recognition.RecognitionDLIB(gpu=-1) + # vec = recognition.vec(im_np, bbox) query = np.array([ vec ]).astype('float32') # query FAISS -- cgit v1.2.3-70-g09d2 From 6595e3d61fb445fc06c835c4f72d4c534524ae33 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Thu, 17 Jan 2019 16:46:02 +0100 Subject: fix api --- megapixels/app/server/api.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'megapixels') diff --git a/megapixels/app/server/api.py b/megapixels/app/server/api.py index 4f564710..81fffdd8 100644 --- a/megapixels/app/server/api.py +++ b/megapixels/app/server/api.py @@ -7,7 +7,7 @@ import operator from flask import Blueprint, request, jsonify from PIL import Image # todo: try to remove PIL dependency -from app.processors.face_extractor import ExtractorDLIB +from app.processors import face_extractor from app.processors import face_detector from app.processors.faiss import load_faiss_databases from app.models.sql_factory import load_sql_datasets, list_datasets, get_dataset, get_table @@ -67,27 +67,30 @@ def upload(dataset_name): # get detection as BBox object bboxes = detector.detect(im_np, largest=True, pyramids=2) + if not bboxes or not len(bboxes): return jsonify({ 'error': 'bbox' }) - bbox = bboxes[0] - if not bbox: + + bbox_norm = bboxes[0] + if not bbox_norm: return jsonify({ 'error': 'bbox' }) dim = im_np.shape[:2][::-1] - bbox = bbox.to_dim(dim) # convert back to real dimensions + bbox_dim = bbox_norm.to_dim(dim) + # bbox = bbox.to_dim(dim) # convert back to real dimensions # print("got bbox") - if not bbox: + if not bbox_dim: return jsonify({ 'error': 'bbox' }) # extract 128-D vector extractor = face_extractor.ExtractorDLIB() - vec = extractor.extract(im, bbox_norm) # NB use norm, not bbox_dim + vec = extractor.extract(im_np, bbox_norm) # NB use norm, not bbox_dim # recognition = face_recognition.RecognitionDLIB(gpu=-1) # vec = recognition.vec(im_np, bbox) query = np.array([ vec ]).astype('float32') @@ -124,7 +127,7 @@ def upload(dataset_name): query = { 'timing': round(time.time() - start, 3), - 'bbox': str(bbox), + 'bbox': str(bbox_norm), } # print(results) return jsonify({ -- cgit v1.2.3-70-g09d2