CoolFace
Apppublic

amitkumar299/object-detection

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes
app.py42 linesDownload Raw Back to root
1from flask import Flask, render_template, request, jsonify2import cv23import numpy as np4from ultralytics import YOLO5import base646 7app = Flask(__name__)8model = YOLO("yolov8n.pt")9 10def readb64(base64_string):11    if ',' not in base64_string:12        raise ValueError("Invalid base64 image string.")13    header, encoded = base64_string.split(',', 1)14    if not encoded:15        raise ValueError("Empty base64 image data.")16    nparr = np.frombuffer(base64.b64decode(encoded), np.uint8)17    img = cv2.imdecode(nparr, cv2.IMREAD_COLOR)18    if img is None:19        raise ValueError("Image decoding failed.")20    return img21 22 23@app.route('/')24def index():25    return render_template('index.html')26 27@app.route('/detect', methods=['POST'])28def detect():29    data = request.get_json()30    frame_data = data['image']31 32    frame = readb64(frame_data)33    results = model.predict(frame, conf=0.5)34    annotated = results[0].plot()35 36    _, buffer = cv2.imencode('.jpg', annotated)37    annotated_b64 = base64.b64encode(buffer).decode('utf-8')38    return jsonify({'image': f'data:image/jpeg;base64,{annotated_b64}'})39 40if __name__ == '__main__':41    app.run(host='0.0.0.0', port=7860)42