508 lines
632 KiB
Plaintext
508 lines
632 KiB
Plaintext
|
|
{
|
||
|
|
"cells": [
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 99,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [],
|
||
|
|
"source": [
|
||
|
|
"import time\n",
|
||
|
|
"import os\n",
|
||
|
|
"import argparse\n",
|
||
|
|
"import json\n",
|
||
|
|
"import cv2\n",
|
||
|
|
"import sys\n",
|
||
|
|
"sys.path += [os.path.abspath('keras-yolo3-master')]\n",
|
||
|
|
"\n",
|
||
|
|
"from utils.utils import get_yolo_boxes, makedirs\n",
|
||
|
|
"from utils.bbox import draw_boxes\n",
|
||
|
|
"from tensorflow.keras.models import load_model\n",
|
||
|
|
"from tqdm import tqdm\n",
|
||
|
|
"import numpy as np\n",
|
||
|
|
"import matplotlib.pyplot as plt\n",
|
||
|
|
"from panel_disconnect import disconnect\n",
|
||
|
|
"\n",
|
||
|
|
"\n"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "markdown",
|
||
|
|
"metadata": {},
|
||
|
|
"source": [
|
||
|
|
"# Define Image Path and output"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 100,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [],
|
||
|
|
"source": [
|
||
|
|
"input_path = '100_Example/'\n",
|
||
|
|
"output_path = 'Result_Complete_Example/'\n",
|
||
|
|
"makedirs(output_path)"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "markdown",
|
||
|
|
"metadata": {},
|
||
|
|
"source": [
|
||
|
|
"# Load Model (Panel Detector, Soiling and Diode)"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 101,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"name": "stdout",
|
||
|
|
"output_type": "stream",
|
||
|
|
"text": [
|
||
|
|
"WARNING:tensorflow:No training configuration found in save file: the model was *not* compiled. Compile it manually.\n",
|
||
|
|
"WARNING:tensorflow:No training configuration found in save file: the model was *not* compiled. Compile it manually.\n",
|
||
|
|
"WARNING:tensorflow:No training configuration found in save file: the model was *not* compiled. Compile it manually.\n"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"source": [
|
||
|
|
"## Config of trained model, change this for use different trained model\n",
|
||
|
|
"config_path_panel = 'config_full_yolo_panel_infer.json' #Panel\n",
|
||
|
|
"config_path_soiling = 'config_full_yolo_fault_1_infer.json' #Soiling\n",
|
||
|
|
"config_path_diode = 'config_full_yolo_fault_4_infer.json' #Diode\n",
|
||
|
|
"\n",
|
||
|
|
"\n",
|
||
|
|
"\n",
|
||
|
|
"\n",
|
||
|
|
"## Parameters of detection\n",
|
||
|
|
"net_h, net_w = 416, 416 # a multiple of 32, the smaller the faster\n",
|
||
|
|
"obj_thresh, nms_thresh, nms_thresh_panel = 0.5, 0.45, 0.3\n",
|
||
|
|
"\n",
|
||
|
|
"####################################################\n",
|
||
|
|
"##### Load the model Panel Detector #############\n",
|
||
|
|
"####################################################\n",
|
||
|
|
"with open(config_path_panel) as config_buffer:\n",
|
||
|
|
" config_panel = json.load(config_buffer)\n",
|
||
|
|
"\n",
|
||
|
|
"os.environ['CUDA_VISIBLE_DEVICES'] = config_panel['train']['gpus']\n",
|
||
|
|
"infer_model_panel = load_model(config_panel['train']['saved_weights_name'])\n",
|
||
|
|
"\n",
|
||
|
|
"####################################################\n",
|
||
|
|
"##### Load the model Soiling #############\n",
|
||
|
|
"####################################################\n",
|
||
|
|
"with open(config_path_soiling) as config_buffer:\n",
|
||
|
|
" config_soiling = json.load(config_buffer)\n",
|
||
|
|
"\n",
|
||
|
|
"infer_model_soiling = load_model(config_soiling['train']['saved_weights_name'])\n",
|
||
|
|
"\n",
|
||
|
|
"####################################################\n",
|
||
|
|
"##### Load the model Soiling #############\n",
|
||
|
|
"####################################################\n",
|
||
|
|
"with open(config_path_diode) as config_buffer:\n",
|
||
|
|
" config_diode = json.load(config_buffer)\n",
|
||
|
|
"\n",
|
||
|
|
"infer_model_diode = load_model(config_diode['train']['saved_weights_name'])"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 102,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [],
|
||
|
|
"source": [
|
||
|
|
"# Load Image paths"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 103,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [],
|
||
|
|
"source": [
|
||
|
|
"image_paths = []\n",
|
||
|
|
"\n",
|
||
|
|
"if os.path.isdir(input_path):\n",
|
||
|
|
" for inp_file in os.listdir(input_path):\n",
|
||
|
|
" image_paths += [input_path + inp_file]\n",
|
||
|
|
"else:\n",
|
||
|
|
" image_paths += [input_path]\n",
|
||
|
|
"\n",
|
||
|
|
"image_paths = [inp_file for inp_file in image_paths if (inp_file[-4:] in ['.jpg', '.png', 'JPEG'])]\n",
|
||
|
|
"\n",
|
||
|
|
"# the main loop\n",
|
||
|
|
"times = []\n"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 104,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [],
|
||
|
|
"source": [
|
||
|
|
"# Detection of images"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 105,
|
||
|
|
"metadata": {
|
||
|
|
"scrolled": true
|
||
|
|
},
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"name": "stdout",
|
||
|
|
"output_type": "stream",
|
||
|
|
"text": [
|
||
|
|
"100_Example/Mision 4_DJI_0067.jpg\n",
|
||
|
|
"Elapsed time = 10.420740842819214\n",
|
||
|
|
"100_Example/Mision 9_DJI_0068.jpg\n",
|
||
|
|
"Elapsed time = 6.116612672805786\n",
|
||
|
|
"100_Example/Mision 9_DJI_0090.jpg\n",
|
||
|
|
"Elapsed time = 4.469286203384399\n",
|
||
|
|
"100_Example/Mision 10_DJI_0145.jpg\n",
|
||
|
|
"Elapsed time = 4.556819200515747\n",
|
||
|
|
"100_Example/Mision 1_DJI_0019.jpg\n",
|
||
|
|
"Elapsed time = 4.21189284324646\n",
|
||
|
|
"100_Example/Mision 11_DJI_0061.jpg\n",
|
||
|
|
"Elapsed time = 5.409024953842163\n",
|
||
|
|
"100_Example/Mision 9_DJI_0076.jpg\n",
|
||
|
|
"Elapsed time = 5.0739829540252686\n",
|
||
|
|
"100_Example/Mision 4_DJI_0040.jpg\n",
|
||
|
|
"Elapsed time = 5.267049551010132\n",
|
||
|
|
"100_Example/Mision 10_DJI_0103.jpg\n",
|
||
|
|
"Elapsed time = 6.735626935958862\n",
|
||
|
|
"100_Example/Mision 4_DJI_0058.jpg\n",
|
||
|
|
"Elapsed time = 7.793303966522217\n",
|
||
|
|
"100_Example/Mision 9_DJI_0012.jpg\n",
|
||
|
|
"Elapsed time = 5.172106742858887\n",
|
||
|
|
"100_Example/Mision 10_DJI_0010.jpg\n",
|
||
|
|
"Elapsed time = 7.428837776184082\n",
|
||
|
|
"100_Example/Mision 1_DJI_0005.jpg\n",
|
||
|
|
"Elapsed time = 7.278154134750366\n",
|
||
|
|
"100_Example/Mision 4_DJI_0061.jpg\n",
|
||
|
|
"Elapsed time = 7.3159050941467285\n",
|
||
|
|
"100_Example/Mision 6_DJI_0008.jpg\n",
|
||
|
|
"Elapsed time = 6.111707448959351\n",
|
||
|
|
"100_Example/Mision 9_DJI_0043.jpg\n",
|
||
|
|
"Elapsed time = 5.412230491638184\n",
|
||
|
|
"100_Example/Mision 9_DJI_0086.jpg\n",
|
||
|
|
"Elapsed time = 5.384514570236206\n",
|
||
|
|
"100_Example/Mision 5_DJI_0057.jpg\n",
|
||
|
|
"Elapsed time = 6.134878635406494\n",
|
||
|
|
"100_Example/Mision 10_DJI_0177.jpg\n",
|
||
|
|
"Elapsed time = 5.873670816421509\n",
|
||
|
|
"100_Example/Mision 4_DJI_0087.jpg\n",
|
||
|
|
"Elapsed time = 4.920036315917969\n",
|
||
|
|
"100_Example/Mision 4_DJI_0020.jpg\n",
|
||
|
|
"Elapsed time = 5.3060524463653564\n",
|
||
|
|
"100_Example/Mision 10_DJI_0147.jpg\n",
|
||
|
|
"Elapsed time = 5.423113584518433\n",
|
||
|
|
"100_Example/Mision 10_DJI_0180.jpg\n",
|
||
|
|
"Elapsed time = 5.018213510513306\n",
|
||
|
|
"100_Example/Mision 10_DJI_0100.jpg\n",
|
||
|
|
"Elapsed time = 4.995599031448364\n",
|
||
|
|
"100_Example/Mision 4_DJI_0037.jpg\n",
|
||
|
|
"Elapsed time = 4.853016138076782\n",
|
||
|
|
"100_Example/Mision 4_DJI_0048.jpg\n",
|
||
|
|
"Elapsed time = 4.8497302532196045\n",
|
||
|
|
"100_Example/Mision 4_DJI_0077.jpg\n",
|
||
|
|
"Elapsed time = 4.913534641265869\n",
|
||
|
|
"100_Example/Mision 10_DJI_0148.jpg\n",
|
||
|
|
"Elapsed time = 5.082331657409668\n",
|
||
|
|
"100_Example/Mision 11_DJI_0060.jpg\n",
|
||
|
|
"Elapsed time = 4.995981216430664\n",
|
||
|
|
"100_Example/Mision 4_DJI_0045.jpg\n",
|
||
|
|
"Elapsed time = 5.101542711257935\n",
|
||
|
|
"100_Example/Mision 10_DJI_0120.jpg\n",
|
||
|
|
"Elapsed time = 5.056970596313477\n",
|
||
|
|
"100_Example/Mision 5_DJI_0041.jpg\n",
|
||
|
|
"Elapsed time = 6.033113241195679\n",
|
||
|
|
"100_Example/Mision 10_DJI_0141.jpg\n",
|
||
|
|
"Elapsed time = 5.475001096725464\n",
|
||
|
|
"100_Example/Mision 5_DJI_0044.jpg\n",
|
||
|
|
"Elapsed time = 6.093289613723755\n",
|
||
|
|
"100_Example/Mision 5_DJI_0085.jpg\n",
|
||
|
|
"Elapsed time = 5.811067819595337\n",
|
||
|
|
"100_Example/Mision 4_DJI_0038.jpg\n",
|
||
|
|
"Elapsed time = 5.245420932769775\n",
|
||
|
|
"100_Example/Mision 10_DJI_0096.jpg\n",
|
||
|
|
"Elapsed time = 5.720532655715942\n",
|
||
|
|
"100_Example/Mision 10_DJI_0144.jpg\n",
|
||
|
|
"Elapsed time = 5.500870943069458\n",
|
||
|
|
"100_Example/Mision 10_DJI_0142.jpg\n",
|
||
|
|
"Elapsed time = 5.583446979522705\n",
|
||
|
|
"100_Example/Mision 7_DJI_0027.jpg\n",
|
||
|
|
"Elapsed time = 5.3647472858428955\n",
|
||
|
|
"100_Example/Mision 11_DJI_0019.jpg\n",
|
||
|
|
"Elapsed time = 5.437580108642578\n",
|
||
|
|
"100_Example/Mision 9_DJI_0083.jpg\n",
|
||
|
|
"Elapsed time = 5.595842361450195\n",
|
||
|
|
"100_Example/Mision 7_DJI_0002.jpg\n",
|
||
|
|
"Elapsed time = 5.626211881637573\n",
|
||
|
|
"100_Example/Mision 10_DJI_0094.jpg\n",
|
||
|
|
"Elapsed time = 5.395939111709595\n",
|
||
|
|
"100_Example/Mision 4_DJI_0017.jpg\n",
|
||
|
|
"Elapsed time = 5.408878803253174\n",
|
||
|
|
"100_Example/Mision 11_DJI_0010.jpg\n",
|
||
|
|
"Elapsed time = 5.867411375045776\n",
|
||
|
|
"100_Example/Mision 6_DJI_0001.jpg\n",
|
||
|
|
"Elapsed time = 5.842301368713379\n",
|
||
|
|
"100_Example/Mision 9_DJI_0084.jpg\n",
|
||
|
|
"Elapsed time = 5.423128604888916\n",
|
||
|
|
"100_Example/Mision 10_DJI_0146.jpg\n",
|
||
|
|
"Elapsed time = 5.439189195632935\n",
|
||
|
|
"100_Example/Mision 10_DJI_0011.jpg\n",
|
||
|
|
"Elapsed time = 5.92153263092041\n",
|
||
|
|
"100_Example/Mision 10_DJI_0004.jpg\n",
|
||
|
|
"Elapsed time = 5.643566846847534\n",
|
||
|
|
"100_Example/Mision 9_DJI_0025.jpg\n",
|
||
|
|
"Elapsed time = 5.650310277938843\n",
|
||
|
|
"100_Example/Mision 10_DJI_0054.jpg\n",
|
||
|
|
"Elapsed time = 5.007985830307007\n",
|
||
|
|
"100_Example/Mision 10_DJI_0095.jpg\n",
|
||
|
|
"Elapsed time = 4.951088190078735\n",
|
||
|
|
"100_Example/Mision 10_DJI_0152.jpg\n",
|
||
|
|
"Elapsed time = 5.0821921825408936\n",
|
||
|
|
"100_Example/Mision 10_DJI_0027.jpg\n",
|
||
|
|
"Elapsed time = 5.0434651374816895\n",
|
||
|
|
"100_Example/Mision 6_DJI_0051.jpg\n",
|
||
|
|
"Elapsed time = 4.971286058425903\n",
|
||
|
|
"100_Example/Mision 9_DJI_0082.jpg\n",
|
||
|
|
"Elapsed time = 4.897688627243042\n",
|
||
|
|
"100_Example/Mision 9_DJI_0077.jpg\n",
|
||
|
|
"Elapsed time = 5.140623331069946\n",
|
||
|
|
"100_Example/Mision 10_DJI_0179.jpg\n",
|
||
|
|
"Elapsed time = 5.039087533950806\n",
|
||
|
|
"100_Example/Mision 6_DJI_0072.jpg\n",
|
||
|
|
"Elapsed time = 4.948548078536987\n",
|
||
|
|
"100_Example/Mision 10_DJI_0167.jpg\n",
|
||
|
|
"Elapsed time = 5.2952752113342285\n",
|
||
|
|
"100_Example/Mision 4_DJI_0032.jpg\n",
|
||
|
|
"Elapsed time = 4.849071741104126\n",
|
||
|
|
"100_Example/Mision 10_DJI_0175.jpg\n",
|
||
|
|
"Elapsed time = 5.104053974151611\n",
|
||
|
|
"100_Example/Mision 6_DJI_0055.jpg\n",
|
||
|
|
"Elapsed time = 5.046675205230713\n",
|
||
|
|
"100_Example/Mision 3_DJI_0009.jpg\n",
|
||
|
|
"Elapsed time = 5.300625324249268\n",
|
||
|
|
"100_Example/Mision 3_DJI_0008.jpg\n",
|
||
|
|
"Elapsed time = 5.90940260887146\n",
|
||
|
|
"100_Example/Mision 5_DJI_0046.jpg\n",
|
||
|
|
"Elapsed time = 6.042106628417969\n",
|
||
|
|
"100_Example/Mision 9_DJI_0054.jpg\n",
|
||
|
|
"Elapsed time = 5.186033010482788\n",
|
||
|
|
"100_Example/Mision 4_DJI_0068.jpg\n",
|
||
|
|
"Elapsed time = 6.203391790390015\n",
|
||
|
|
"100_Example/Mision 9_DJI_0064.jpg\n",
|
||
|
|
"Elapsed time = 7.008348703384399\n",
|
||
|
|
"100_Example/Mision 4_DJI_0062.jpg\n",
|
||
|
|
"Elapsed time = 5.196864128112793\n",
|
||
|
|
"100_Example/Mision 6_DJI_0056.jpg\n",
|
||
|
|
"Elapsed time = 5.073060512542725\n",
|
||
|
|
"100_Example/Mision 4_DJI_0064.jpg\n",
|
||
|
|
"Elapsed time = 4.907873630523682\n",
|
||
|
|
"100_Example/Mision 9_DJI_0040.jpg\n",
|
||
|
|
"Elapsed time = 5.567693710327148\n",
|
||
|
|
"100_Example/Mision 9_DJI_0080.jpg\n",
|
||
|
|
"Elapsed time = 5.0142130851745605\n",
|
||
|
|
"100_Example/Mision 5_DJI_0049.jpg\n",
|
||
|
|
"Elapsed time = 5.716118335723877\n",
|
||
|
|
"100_Example/Mision 10_DJI_0170.jpg\n",
|
||
|
|
"Elapsed time = 6.74005913734436\n",
|
||
|
|
"100_Example/Mision 5_DJI_0091.jpg\n",
|
||
|
|
"Elapsed time = 6.6282007694244385\n",
|
||
|
|
"100_Example/Mision 6_DJI_0052.jpg\n",
|
||
|
|
"Elapsed time = 6.203993797302246\n",
|
||
|
|
"100_Example/Mision 9_DJI_0016.jpg\n",
|
||
|
|
"Elapsed time = 6.708470821380615\n",
|
||
|
|
"100_Example/Mision 10_DJI_0093.jpg\n",
|
||
|
|
"Elapsed time = 6.545798063278198\n",
|
||
|
|
"100_Example/Mision 4_DJI_0079.jpg\n",
|
||
|
|
"Elapsed time = 6.530148029327393\n",
|
||
|
|
"100_Example/Mision 9_DJI_0013.jpg\n",
|
||
|
|
"Elapsed time = 6.285449266433716\n",
|
||
|
|
"100_Example/Mision 5_DJI_0081.jpg\n",
|
||
|
|
"Elapsed time = 5.976077079772949\n",
|
||
|
|
"100_Example/Mision 9_DJI_0065.jpg\n",
|
||
|
|
"Elapsed time = 6.218856573104858\n",
|
||
|
|
"100_Example/Mision 4_DJI_0044.jpg\n",
|
||
|
|
"Elapsed time = 5.888312339782715\n",
|
||
|
|
"100_Example/Mision 10_DJI_0140.jpg\n",
|
||
|
|
"Elapsed time = 5.999600648880005\n",
|
||
|
|
"100_Example/Mision 10_DJI_0151.jpg\n",
|
||
|
|
"Elapsed time = 6.043085813522339\n",
|
||
|
|
"100_Example/Mision 10_DJI_0028.jpg\n",
|
||
|
|
"Elapsed time = 5.908565282821655\n",
|
||
|
|
"100_Example/Mision 4_DJI_0066.jpg\n",
|
||
|
|
"Elapsed time = 5.899698495864868\n",
|
||
|
|
"100_Example/Mision 4_DJI_0046.jpg\n",
|
||
|
|
"Elapsed time = 5.905918121337891\n",
|
||
|
|
"100_Example/Mision 5_DJI_0083.jpg\n",
|
||
|
|
"Elapsed time = 6.173891544342041\n",
|
||
|
|
"100_Example/Mision 6_DJI_0059.jpg\n",
|
||
|
|
"Elapsed time = 5.95824933052063\n",
|
||
|
|
"100_Example/Mision 1_DJI_0031.jpg\n",
|
||
|
|
"Elapsed time = 5.691490888595581\n",
|
||
|
|
"100_Example/Mision 9_DJI_0015.jpg\n",
|
||
|
|
"Elapsed time = 6.045027494430542\n",
|
||
|
|
"100_Example/Mision 5_DJI_0048.jpg\n",
|
||
|
|
"Elapsed time = 6.0616912841796875\n",
|
||
|
|
"100_Example/Mision 10_DJI_0092.jpg\n",
|
||
|
|
"Elapsed time = 5.996495723724365\n",
|
||
|
|
"100_Example/Mision 4_DJI_0078.jpg\n",
|
||
|
|
"Elapsed time = 5.842173337936401\n",
|
||
|
|
"100_Example/Mision 11_DJI_0004.jpg\n",
|
||
|
|
"Elapsed time = 6.073383569717407\n"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"ename": "NameError",
|
||
|
|
"evalue": "name 'args' is not defined",
|
||
|
|
"output_type": "error",
|
||
|
|
"traceback": [
|
||
|
|
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
|
||
|
|
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
|
||
|
|
"\u001b[0;32m<ipython-input-105-c431d233d514>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 19\u001b[0m \u001b[0mcv2\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimwrite\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0moutput_path\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mimage_path\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msplit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'/'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0muint8\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimage\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 20\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 21\u001b[0;31m \u001b[0mfile\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moutput\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0;34m'/time.txt'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'w'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 22\u001b[0m \u001b[0mfile\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwrite\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Tiempo promedio:'\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmean\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtimes\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 23\u001b[0m \u001b[0mfile\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mclose\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
|
||
|
|
"\u001b[0;31mNameError\u001b[0m: name 'args' is not defined"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"source": [
|
||
|
|
"for image_path in image_paths:\n",
|
||
|
|
" image = cv2.imread(image_path)\n",
|
||
|
|
" print(image_path)\n",
|
||
|
|
" start = time.time()\n",
|
||
|
|
" # predict the bounding boxes\n",
|
||
|
|
" boxes_soiling = get_yolo_boxes(infer_model_soiling, [image], net_h, net_w, config_soiling['model']['anchors'], obj_thresh, nms_thresh)[0]\n",
|
||
|
|
" boxes_diode = get_yolo_boxes(infer_model_diode, [image], net_h, net_w, config_diode['model']['anchors'], obj_thresh, nms_thresh)[0]\n",
|
||
|
|
" boxes_panel = get_yolo_boxes(infer_model_panel, [image], net_h, net_w, config_panel['model']['anchors'], obj_thresh, nms_thresh_panel)[0]\n",
|
||
|
|
" boxes_panel = [box for box in boxes_panel if box.get_score() > obj_thresh]\n",
|
||
|
|
" boxes_disc = disconnect(image, boxes_panel, z_thresh = 1.8)\n",
|
||
|
|
" print('Elapsed time = {}'.format(time.time() - start))\n",
|
||
|
|
" times.append(time.time() - start)\n",
|
||
|
|
" # Draw boxes\n",
|
||
|
|
" draw_boxes(image, boxes_soiling, config_soiling['model']['labels'], obj_thresh, number_color = 0)\n",
|
||
|
|
" draw_boxes(image, boxes_diode, config_diode['model']['labels'], obj_thresh, number_color = 2)\n",
|
||
|
|
" draw_boxes(image, boxes_disc, ['disc'], obj_thresh, number_color = 5)\n",
|
||
|
|
" \n",
|
||
|
|
" # write the image with bounding boxes to file\n",
|
||
|
|
" cv2.imwrite(output_path + image_path.split('/')[-1], np.uint8(image))\n",
|
||
|
|
"\n",
|
||
|
|
"file = open(output_path + 'time.txt','w')\n",
|
||
|
|
"file.write('Tiempo promedio:' + str(np.mean(times)))\n",
|
||
|
|
"file.close()"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": null,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [],
|
||
|
|
"source": [
|
||
|
|
"# Example One image"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": 106,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [
|
||
|
|
{
|
||
|
|
"name": "stdout",
|
||
|
|
"output_type": "stream",
|
||
|
|
"text": [
|
||
|
|
"100_Example/Mision 9_DJI_0064.jpg\n",
|
||
|
|
"Elapsed time = 4.597041130065918\n"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"data": {
|
||
|
|
"text/plain": [
|
||
|
|
"<matplotlib.image.AxesImage at 0x7f23b9d02e10>"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"execution_count": 106,
|
||
|
|
"metadata": {},
|
||
|
|
"output_type": "execute_result"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"data": {
|
||
|
|
"image/png": "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
|
||
|
|
"text/plain": [
|
||
|
|
"<Figure size 864x720 with 1 Axes>"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"metadata": {
|
||
|
|
"needs_background": "light"
|
||
|
|
},
|
||
|
|
"output_type": "display_data"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"data": {
|
||
|
|
"image/png": "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
|
||
|
|
"text/plain": [
|
||
|
|
"<Figure size 864x720 with 1 Axes>"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"metadata": {
|
||
|
|
"needs_background": "light"
|
||
|
|
},
|
||
|
|
"output_type": "display_data"
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"source": [
|
||
|
|
"image_path = image_paths[70]\n",
|
||
|
|
"\n",
|
||
|
|
"image = cv2.imread(image_path)\n",
|
||
|
|
"plt.figure(figsize=(12, 10))\n",
|
||
|
|
"plt.imshow(image)\n",
|
||
|
|
"print(image_path)\n",
|
||
|
|
"\n",
|
||
|
|
"start = time.time()\n",
|
||
|
|
"# predict the bounding boxes\n",
|
||
|
|
"boxes_soiling = get_yolo_boxes(infer_model_soiling, [image], net_h, net_w, config_soiling['model']['anchors'], obj_thresh, nms_thresh)[0]\n",
|
||
|
|
"boxes_diode = get_yolo_boxes(infer_model_diode, [image], net_h, net_w, config_diode['model']['anchors'], obj_thresh, nms_thresh)[0]\n",
|
||
|
|
"boxes_panel = get_yolo_boxes(infer_model_panel, [image], net_h, net_w, config_panel['model']['anchors'], obj_thresh, nms_thresh_panel)[0]\n",
|
||
|
|
"boxes_panel = [box for box in boxes_panel if box.get_score() > obj_thresh]\n",
|
||
|
|
"boxes_disc = disconnect(image, boxes_panel, z_thresh = 1.8)\n",
|
||
|
|
"# Draw boxes\n",
|
||
|
|
"draw_boxes(image, boxes_soiling, config_soiling['model']['labels'], obj_thresh, number_color = 0)\n",
|
||
|
|
"draw_boxes(image, boxes_diode, config_diode['model']['labels'], obj_thresh, number_color = 2)\n",
|
||
|
|
"draw_boxes(image, boxes_disc, ['disc'], obj_thresh, number_color = 5)\n",
|
||
|
|
"print('Elapsed time = {}'.format(time.time() - start))\n",
|
||
|
|
"times.append(time.time() - start)\n",
|
||
|
|
"plt.figure(figsize=(12, 10))\n",
|
||
|
|
"plt.imshow(image)\n"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"cell_type": "code",
|
||
|
|
"execution_count": null,
|
||
|
|
"metadata": {},
|
||
|
|
"outputs": [],
|
||
|
|
"source": []
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"metadata": {
|
||
|
|
"kernelspec": {
|
||
|
|
"display_name": "Python 3",
|
||
|
|
"language": "python",
|
||
|
|
"name": "python3"
|
||
|
|
},
|
||
|
|
"language_info": {
|
||
|
|
"codemirror_mode": {
|
||
|
|
"name": "ipython",
|
||
|
|
"version": 3
|
||
|
|
},
|
||
|
|
"file_extension": ".py",
|
||
|
|
"mimetype": "text/x-python",
|
||
|
|
"name": "python",
|
||
|
|
"nbconvert_exporter": "python",
|
||
|
|
"pygments_lexer": "ipython3",
|
||
|
|
"version": "3.7.7"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"nbformat": 4,
|
||
|
|
"nbformat_minor": 4
|
||
|
|
}
|