def recognize_from_image(): # net initialize classifier = ailia.Classifier( MODEL_PATH, WEIGHT_PATH, env_id=args.env_id, format=ailia.NETWORK_IMAGE_FORMAT_RGB, range=IMAGE_RANGE, ) # input image loop for image_path in args.input: # prepare input data logger.info(image_path) img = cv2.imread(image_path, cv2.IMREAD_UNCHANGED) img = preprocess_image(img) # inference logger.info('Start inference...') if args.benchmark: logger.info('BENCHMARK mode') for i in range(args.benchmark_count): start = int(round(time.time() * 1000)) classifier.compute(img, MAX_CLASS_COUNT) end = int(round(time.time() * 1000)) logger.info(f'\tailia processing time {end - start} ms') else: classifier.compute(img, MAX_CLASS_COUNT) # show results print_results(classifier, resnet50_labels.imagenet_category)
def recognize_from_image(): # net initialize net = ailia.Net(MODEL_PATH, WEIGHT_PATH, env_id=args.env_id) # input image loop for image_path in args.input: # prepare input data logger.info(image_path) input_data = load_image( image_path, (IMAGE_HEIGHT, IMAGE_WIDTH), normalize_type='ImageNet', gen_input_ailia=True, ) # inference logger.info('Start inference...') if args.benchmark: logger.info('BENCHMARK mode') for i in range(args.benchmark_count): start = int(round(time.time() * 1000)) preds_ailia = net.predict(input_data) end = int(round(time.time() * 1000)) logger.info(f'\tailia processing time {end - start} ms') else: preds_ailia = net.predict(input_data) print_results(preds_ailia, mobilenetv3_labels.imagenet_category) logger.info('Script finished successfully.')
def recognize_from_image(): # prepare input data input_data = load_image( args.input, (IMAGE_HEIGHT, IMAGE_WIDTH), normalize_type='ImageNet', gen_input_ailia=True ) # net initialize net = ailia.Net(MODEL_PATH, WEIGHT_PATH, env_id=args.env_id) # inference print('Start inference...') if args.benchmark: print('BENCHMARK mode') for i in range(5): start = int(round(time.time() * 1000)) preds_ailia = net.predict(input_data) end = int(round(time.time() * 1000)) print(f'\tailia processing time {end - start} ms') else: preds_ailia = net.predict(input_data) # postprocessing print_results(preds_ailia, vgg16_labels.imagenet_category) print('Script finished successfully.')
def recognize_from_image(): # prepare input data input_data = load_image(args.input, (IMAGE_HEIGHT, IMAGE_WIDTH), normalize_type='None', gen_input_ailia=False) input_data = cv2.cvtColor(input_data.astype(np.float32), cv2.COLOR_RGB2BGRA).astype(np.uint8) # net initialize classifier = ailia.Classifier(MODEL_PATH, WEIGHT_PATH, env_id=args.env_id, format=ailia.NETWORK_IMAGE_FORMAT_RGB, range=ailia.NETWORK_IMAGE_RANGE_S_FP32) # inference print('Start inference...') if args.benchmark: print('BENCHMARK mode') for i in range(5): start = int(round(time.time() * 1000)) classifier.compute(input_data, MAX_CLASS_COUNT) # count = classifier.get_class_count() end = int(round(time.time() * 1000)) print(f'\tailia processing time {end - start} ms') else: classifier.compute(input_data, MAX_CLASS_COUNT) # count = classifier.get_class_count() # show results print_results(classifier, efficientnet_labels.imagenet_category) print('Script finished successfully.')
def recognize_from_image(): # net initialize net = ailia.Net(MODEL_PATH, WEIGHT_PATH, env_id=args.env_id) # input image loop for image_path in args.input: # prepare input data logger.info(image_path) input_img = cv2.imread(image_path) input_data = preprocess_input(input_img, IMAGE_HEIGHT, IMAGE_WIDTH) # inference logger.info('Start inference...') if args.benchmark: logger.info('BENCHMARK mode') for i in range(args.benchmark_count): start = int(round(time.time() * 1000)) preds = net.predict(input_data) end = int(round(time.time() * 1000)) logger.info(f'\tailia processing time {end - start} ms') else: preds = net.predict(input_data) preds = softmax(preds) # show results print_results(preds, imagenet_category) logger.info('Script finished successfully.')
def recognize_from_image(net): # input image loop for image_path in args.input: logger.info(image_path) img = load_image(image_path) img = cv2.cvtColor(img, cv2.COLOR_BGRA2RGB) # inference logger.info('Start inference...') if args.benchmark: logger.info('BENCHMARK mode') total_time_estimation = 0 for i in range(args.benchmark_count): start = int(round(time.time() * 1000)) prob = predict(net, img) end = int(round(time.time() * 1000)) estimation_time = (end - start) # Logging logger.info( f'\tailia processing estimation time {estimation_time} ms') if i != 0: total_time_estimation = total_time_estimation + estimation_time logger.info( f'\taverage time estimation {total_time_estimation / (args.benchmark_count - 1)} ms' ) else: prob = predict(net, img) # show result print_results([prob], imagenet_classes) logger.info('Script finished successfully.')
def recognize_from_video(): # net initialize net = ailia.Net(MODEL_PATH, WEIGHT_PATH, env_id=args.env_id) capture = webcamera_utils.get_capture(args.video) # create video writer if savepath is specified as video format if args.savepath is not None: f_h = int(capture.get(cv2.CAP_PROP_FRAME_HEIGHT)) f_w = int(capture.get(cv2.CAP_PROP_FRAME_WIDTH)) writer = webcamera_utils.get_writer(args.savepath, f_h, f_w) else: writer = None while(True): ret, frame = capture.read() if (cv2.waitKey(1) & 0xFF == ord('q')) or not ret: break # prepare input data _, input_data = webcamera_utils.adjust_frame_size( frame, IMAGE_HEIGHT, IMAGE_WIDTH ) input_data = preprocess_input(input_data, IMAGE_HEIGHT, IMAGE_WIDTH) # inference preds = net.predict(input_data) preds = softmax(preds) # get result print_results(preds, imagenet_category) cv2.imshow('frame', frame) time.sleep(SLEEP_TIME) # save results if writer is not None: writer.write(frame) capture.release() cv2.destroyAllWindows() if writer is not None: writer.release() logger.info('Script finished successfully.')
def recognize_from_image(): # net initialize classifier = ailia.Classifier( MODEL_PATH, WEIGHT_PATH, env_id=args.env_id, format=ailia.NETWORK_IMAGE_FORMAT_RGB, range=ailia.NETWORK_IMAGE_RANGE_U_FP32, ) # input image loop for image_path in args.input: # prepare input data logger.info(image_path) input_img = load_image( image_path, (IMAGE_HEIGHT, IMAGE_WIDTH), normalize_type='None', ) input_data = cv2.cvtColor(input_img, cv2.COLOR_BGR2BGRA) # inference logger.info('Start inference...') if args.benchmark: logger.info('BENCHMARK mode') for i in range(args.benchmark_count): start = int(round(time.time() * 1000)) classifier.compute(input_data, MAX_CLASS_COUNT) end = int(round(time.time() * 1000)) logger.info(f'\tailia processing time {end - start} ms') else: classifier.compute(input_data, MAX_CLASS_COUNT) # show results print_results(classifier, inceptionv3_labels.imagenet_category) logger.info('Script finished successfully.')
def recognize_from_image(): net = ailia.Net(MODEL_PATH, WEIGHT_PATH, env_id=args.env_id) # input image loop for i, image_path in enumerate(args.input): input_batch = cv2.imread(image_path) input_batch = _preprocess_image(input_batch) # inference logger.info('Start inference...') if args.benchmark: logger.info('BENCHMARK mode') for i in range(args.benchmark_count): start = int(round(time.time() * 1000)) output = net.predict(input_batch) end = int(round(time.time() * 1000)) logger.info(f'\tailia processing time {end - start} ms') else: output = net.predict(input_batch) output = _softmax(output) print_results(output, alexnet_labels.imagenet_category) logger.info('Script finished successfully.')