Spaces:
Sleeping
Sleeping
test run
Browse files
app.py
CHANGED
@@ -161,20 +161,40 @@ if __name__ == "__main__":
|
|
161 |
|
162 |
import gradio as gr
|
163 |
import netron
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
|
165 |
-
# Define a function to visualize the model
|
166 |
def visualize_model(model_file):
|
167 |
-
#
|
168 |
-
|
169 |
-
|
|
|
170 |
|
171 |
-
#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
172 |
interface = gr.Interface(
|
173 |
fn=visualize_model,
|
174 |
-
inputs=gr.File(label="Upload Model File"),
|
175 |
-
outputs=
|
176 |
live=True
|
177 |
)
|
178 |
|
|
|
179 |
interface.launch()
|
180 |
|
|
|
|
161 |
|
162 |
import gradio as gr
|
163 |
import netron
|
164 |
+
import os
|
165 |
+
import threading
|
166 |
+
from flask import Flask, send_from_directory
|
167 |
+
|
168 |
+
# Flask app to serve the Netron model visualization
|
169 |
+
app = Flask(__name__)
|
170 |
+
|
171 |
+
def start_netron(model_path):
|
172 |
+
# Start a new thread to serve the Netron visualization on a local server
|
173 |
+
netron.start(model_path, port=8080)
|
174 |
|
175 |
+
# Define a function to visualize the model and generate an iframe
|
176 |
def visualize_model(model_file):
|
177 |
+
# Save the model file temporarily
|
178 |
+
temp_model_path = os.path.join(os.getcwd(), "weight_files/yolov5.onnx")
|
179 |
+
with open(temp_model_path, "wb") as f:
|
180 |
+
f.write(model_file.read())
|
181 |
|
182 |
+
# Start Netron in a separate thread
|
183 |
+
threading.Thread(target=start_netron, args=(temp_model_path,)).start()
|
184 |
+
|
185 |
+
# Return an iframe embedding the Netron visualization
|
186 |
+
iframe_html = f'<iframe src="http://localhost:8080" width="800" height="600"></iframe>'
|
187 |
+
return iframe_html
|
188 |
+
|
189 |
+
# Gradio interface to upload the model and show the visualization
|
190 |
interface = gr.Interface(
|
191 |
fn=visualize_model,
|
192 |
+
inputs=gr.File(label="Upload Model File"),
|
193 |
+
outputs=gr.HTML(), # Output is HTML to embed iframe
|
194 |
live=True
|
195 |
)
|
196 |
|
197 |
+
# Start the Gradio interface
|
198 |
interface.launch()
|
199 |
|
200 |
+
|