Код:
from flask import Flask, render_template
from flask import Flask, render_template, request
from flask import request,Flask
from werkzeug.utils import secure_filename
import json
import os
app = Flask(__name__)
@app.route("/")
def home_func():
# data = request.get_json()
# IPaddress = data['IPaddress']
# CameraID = data['CameraID']
# image = data['image']
# apikey = data['apikey']
# portnumber = data['portnumber']
f = request.files['file']
path = ("/home/ubuntu/darknet/image_input/"+secure_filename(f.filename))
f.save(path)
#print("got inputs")
#os.remove("/home/ubuntu/darknet/result.json")
os.chdir("/home/ubuntu/darknet")
#print("changed dir")
#os.mknod("/home/ubuntu/darknet/data/test.txt")
t = open("/home/ubuntu/darknet/data/test.txt",'w')
t.write(path)
#print("Wrote to text file")
os.system("./darknet detector test cfg/obj.data cfg/custom-yolov4-detector.cfg backup/custom-yolov4-detector_final.weights -dont_show -out output/result.json < data/test.txt")
#os.remove("/home/ubuntu/darknet/data/test.txt")
#print("Ran detection")
file_to_open = open('output/result.json','r')
datas = json.load(file_to_open)
name = []
score = []
for data in datas:
for item in data['objects']:
name.append(item['name'])
score.append(item['confidence'])
count = len(name)
#t.close()
file_to_open.close()
return json.dumps({'CameraID':"1",'SkuID': name,'Count':count,'Score':score,'Status':'true'})
Это возвращает результат впервые. Но после этого все вызовы возвращают пустой массив.
Вывод:
160 conv 75 1 x 1/1 13 x 13 x1024 -> 13 x 13 x 75 0,026 BF 161 yolo [yolo] params: iou loss: ciou (4), iou_norm: 0.07, cls_norm: 1.00, scale_x_y: 1.05 nms_kind: greedynms (1), beta = 0.600000 Всего BFLOPS 59.701 avg_outputs = 492276 Выделить дополнительное рабочее пространство_size = 52,43 МБ Загрузка - вес из резервной копии yolov4-Detector_final.weights ... просмотрено 64, обучено: 1920 K-изображений (30 килобатчей_64) Готово! Загружены 162 слоя из файла с весами. Введите путь к изображению:
Здесь заканчивается. Но путь к изображению указан в data / text.txt