Commit
·
7a357fb
1
Parent(s):
236733d
updates
Browse files- app.py +10 -13
- requirements.txt +1 -3
- utils/upload.py +0 -24
app.py
CHANGED
@@ -1,6 +1,5 @@
|
|
1 |
import gradio as gr
|
2 |
from utils.loading import load_model
|
3 |
-
from utils.upload import upload_firebase
|
4 |
|
5 |
TITLE = 'Pose Detection App 🕺🤸♀️'
|
6 |
DESCRIPTION = '''
|
@@ -42,7 +41,6 @@ def process_image(input_img, pos, confidence):
|
|
42 |
Returns:
|
43 |
np.ndarray: Imagen anotada con los resultados de la detección.
|
44 |
"""
|
45 |
-
upload_firebase(input_img)
|
46 |
img = load_model(input_img, float(pos), int(confidence))
|
47 |
return img
|
48 |
|
@@ -51,16 +49,15 @@ pos_slider = gr.Slider(minimum=MIN_CONF, maximum=MAX_CONF, value=0.5, step=0.1,
|
|
51 |
confidence_slider = gr.Slider(minimum=MIN_POS, maximum=MAX_POS, value=3, step=1, label="Número de Poses", interactive=True)
|
52 |
|
53 |
# Creación de la interfaz de Gradio
|
54 |
-
demo = gr.Interface(
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
])
|
65 |
|
66 |
demo.queue().launch()
|
|
|
1 |
import gradio as gr
|
2 |
from utils.loading import load_model
|
|
|
3 |
|
4 |
TITLE = 'Pose Detection App 🕺🤸♀️'
|
5 |
DESCRIPTION = '''
|
|
|
41 |
Returns:
|
42 |
np.ndarray: Imagen anotada con los resultados de la detección.
|
43 |
"""
|
|
|
44 |
img = load_model(input_img, float(pos), int(confidence))
|
45 |
return img
|
46 |
|
|
|
49 |
confidence_slider = gr.Slider(minimum=MIN_POS, maximum=MAX_POS, value=3, step=1, label="Número de Poses", interactive=True)
|
50 |
|
51 |
# Creación de la interfaz de Gradio
|
52 |
+
demo = gr.Interface(
|
53 |
+
fn=process_image,
|
54 |
+
inputs=[gr.Image(), pos_slider, confidence_slider],
|
55 |
+
outputs=gr.Image(),
|
56 |
+
title=TITLE,
|
57 |
+
description=DESCRIPTION,
|
58 |
+
allow_flagging="never",
|
59 |
+
examples=[
|
60 |
+
['examples/pexels-august-de-richelieu-4427430.jpg', 0.5, 5],
|
61 |
+
['examples/pexels-danxavier-1121796.jpg', 0.9, 1],])
|
|
|
62 |
|
63 |
demo.queue().launch()
|
requirements.txt
CHANGED
@@ -1,5 +1,3 @@
|
|
1 |
gradio==4.38.1
|
2 |
mediapipe==0.10.14
|
3 |
-
numpy==1.26.3
|
4 |
-
opencv-python==4.9.0.80
|
5 |
-
firebase-admin==6.5.0
|
|
|
1 |
gradio==4.38.1
|
2 |
mediapipe==0.10.14
|
3 |
+
numpy==1.26.3
|
|
|
|
utils/upload.py
DELETED
@@ -1,24 +0,0 @@
|
|
1 |
-
import firebase_admin
|
2 |
-
from firebase_admin import credentials, storage
|
3 |
-
import random
|
4 |
-
from datetime import datetime
|
5 |
-
import cv2
|
6 |
-
|
7 |
-
if not firebase_admin._apps:
|
8 |
-
cred = credentials.Certificate('utils/credential.json')
|
9 |
-
firebase_admin.initialize_app(cred, {'storageBucket':'load-images-5b386.appspot.com'})
|
10 |
-
bucket = storage.bucket()
|
11 |
-
|
12 |
-
def upload_firebase(img):
|
13 |
-
imagen_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
|
14 |
-
|
15 |
-
# Convertir la imagen a un objeto de bytes
|
16 |
-
_, buffer = cv2.imencode('.png', imagen_rgb)
|
17 |
-
image_bytes = buffer.tobytes()
|
18 |
-
# Subir la imagen directamente a Firebase Storage
|
19 |
-
bucket = storage.bucket()
|
20 |
-
|
21 |
-
date = datetime.now().strftime('%Y-%m-%d_%H:%M:%S')
|
22 |
-
id = str(random.randint(1, 100000000))
|
23 |
-
blob = bucket.blob(f'images/{date}_{id}.png')
|
24 |
-
blob.upload_from_string(image_bytes, content_type='image/png')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|