diff options
| author | adamhrv <adam@ahprojects.com> | 2018-12-16 01:03:07 +0100 |
|---|---|---|
| committer | adamhrv <adam@ahprojects.com> | 2018-12-16 01:03:07 +0100 |
| commit | a52dc6f8edc4e5d00e7c05e34c6c6fe6252ec2bd (patch) | |
| tree | 98f6bdfc1985590cf5db0580bf0a18eed6198656 /megapixels/commands/datasets/lookup.py | |
| parent | 82b2c0b5d6d7baccbe4d574d96e18fe2078047d7 (diff) | |
add Dataset model, stub face_*analsysi
Diffstat (limited to 'megapixels/commands/datasets/lookup.py')
| -rw-r--r-- | megapixels/commands/datasets/lookup.py | 62 |
1 files changed, 42 insertions, 20 deletions
diff --git a/megapixels/commands/datasets/lookup.py b/megapixels/commands/datasets/lookup.py index 11f54957..e84bdf3e 100644 --- a/megapixels/commands/datasets/lookup.py +++ b/megapixels/commands/datasets/lookup.py @@ -1,44 +1,66 @@ import click from app.settings import types +from app.models.dataset import Dataset from app.utils import click_utils from app.settings import app_cfg as cfg from app.utils.logger_utils import Logger -log = Logger.getLogger() - -lookup_types = ['image', 'identity'] - @click.command() -@click.option('-i', '--input', 'opt_fp_in', required=True, - help='Input CSV file') -@click.option('-t', '--type', 'opt_type', default='image', - type=click.Choice(lookup_types), - help='Type of lookup') -@click.option('-d', '--dataset', 'opt_dataset', required=True, +@click.option('--index', 'opt_index', type=int, + help='Vector index to lookup') +@click.option('--data_store', 'opt_data_store', + type=cfg.DataStoreVar, + default=click_utils.get_default(types.DataStore.NAS), + show_default=True, + help=click_utils.show_help(types.Dataset)) +@click.option('--dataset', 'opt_dataset', type=cfg.DatasetVar, - default=click_utils.get_default(types.Dataset.LFW), + required=True, show_default=True, help=click_utils.show_help(types.Dataset)) -@click.option('--index', 'opt_index', required=True, - help='Index to lookup') +@click.option('--metadata', 'opt_metadata_type', required=True, + type=cfg.MetadataVar, + show_default=True, + help=click_utils.show_help(types.Metadata)) @click.pass_context -def cli(ctx, opt_fp_in, opt_fp_out, opt_index): +def cli(ctx, opt_index, opt_data_store, opt_dataset, opt_metadata_type): """Display image info""" + import sys from glob import glob from os.path import join from pathlib import Path import time import pandas as pd + import cv2 as cv from tqdm import tqdm - from app.utils import file_utils, im_utils - - # lookup and index and display all information - df = pd.read_csv(opt_fp_in).set_index('index') + from app.utils import file_utils, im_utils, path_utils + log = Logger.getLogger() - -
\ No newline at end of file + log.info(f'creating dataset: {opt_dataset}') + dataset = Dataset(opt_dataset) + # loads all CSV files, may take a while + log.info(f'loading dataset...') + dataset.load(opt_data_store) + # find image records + image_record = dataset.roi_idx_to_record(opt_index) + # debug + image_record.summarize() + # load image + fp_im = image_record.filepath + im = cv.imread(fp_im) + # display + cv.imshow('', im) + # cv gui + while True: + k = cv.waitKey(1) & 0xFF + if k == 27 or k == ord('q'): # ESC + cv.destroyAllWindows() + sys.exit() + elif k != 255: + # any key to continue + break
\ No newline at end of file |
