Spaces:
Running
Running
Sadjad Alikhani
commited on
Update app.py
Browse files
app.py
CHANGED
|
@@ -456,6 +456,16 @@ with gr.Blocks(css="""
|
|
| 456 |
text-align: center;
|
| 457 |
}
|
| 458 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 459 |
""") as demo:
|
| 460 |
|
| 461 |
# Contact Section
|
|
@@ -469,11 +479,18 @@ with gr.Blocks(css="""
|
|
| 469 |
</a>
|
| 470 |
</div>
|
| 471 |
""")
|
| 472 |
-
|
| 473 |
# Tab for Beam Prediction Task
|
| 474 |
with gr.Tab("Beam Prediction Task"):
|
| 475 |
gr.Markdown("### Beam Prediction Task")
|
| 476 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 477 |
with gr.Row():
|
| 478 |
with gr.Column():
|
| 479 |
data_percentage_slider = gr.Slider(label="Data Percentage for Training", minimum=10, maximum=100, step=10, value=10)
|
|
@@ -491,12 +508,16 @@ with gr.Blocks(css="""
|
|
| 491 |
with gr.Tab("LoS/NLoS Classification Task"):
|
| 492 |
gr.Markdown("### LoS/NLoS Classification Task")
|
| 493 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 494 |
# Radio button for user choice: predefined data or upload dataset
|
| 495 |
choice_radio = gr.Radio(choices=["Use Default Dataset", "Upload Dataset"], label="Choose how to proceed", value="Use Default Dataset")
|
| 496 |
|
| 497 |
-
# Dropdown for selecting percentage for predefined data
|
| 498 |
-
#percentage_dropdown_los = gr.Dropdown(choices=[f"{value:.3f}" for value in percentage_values_los], value=f"{percentage_values_los[0]:.3f}", label="Percentage of Data for Training")
|
| 499 |
-
#percentage_dropdown_los = gr.Dropdown(choices=list(range(20)), value=0, label="Percentage of Data for Training")
|
| 500 |
percentage_slider_los = gr.Slider(minimum=float(percentage_values_los[0]),
|
| 501 |
maximum=float(percentage_values_los[-1]),
|
| 502 |
step=float(percentage_values_los[1] - percentage_values_los[0]),
|
|
@@ -526,6 +547,7 @@ with gr.Blocks(css="""
|
|
| 526 |
percentage_slider_los.change(fn=handle_user_choice, inputs=[choice_radio, percentage_slider_los, file_input],
|
| 527 |
outputs=[raw_img_los, embeddings_img_los, output_textbox])
|
| 528 |
|
|
|
|
| 529 |
# Launch the app
|
| 530 |
if __name__ == "__main__":
|
| 531 |
demo.launch()
|
|
|
|
| 456 |
text-align: center;
|
| 457 |
}
|
| 458 |
|
| 459 |
+
.explanation-box {
|
| 460 |
+
font-size: 16px;
|
| 461 |
+
font-style: italic;
|
| 462 |
+
color: #4a4a4a;
|
| 463 |
+
padding: 15px;
|
| 464 |
+
background-color: #f0f0f0;
|
| 465 |
+
border-radius: 10px;
|
| 466 |
+
margin-bottom: 20px;
|
| 467 |
+
}
|
| 468 |
+
|
| 469 |
""") as demo:
|
| 470 |
|
| 471 |
# Contact Section
|
|
|
|
| 479 |
</a>
|
| 480 |
</div>
|
| 481 |
""")
|
| 482 |
+
|
| 483 |
# Tab for Beam Prediction Task
|
| 484 |
with gr.Tab("Beam Prediction Task"):
|
| 485 |
gr.Markdown("### Beam Prediction Task")
|
| 486 |
+
|
| 487 |
+
# Explanation section with creative spacing and minimal design
|
| 488 |
+
gr.Markdown("""
|
| 489 |
+
<div class="explanation-box">
|
| 490 |
+
In this task, you'll predict the strongest mmWave beam from a predefined codebook based on Sub-6 GHz channels. Adjust the data percentage and task complexity to observe how LWM performs on different settings.
|
| 491 |
+
</div>
|
| 492 |
+
""")
|
| 493 |
+
|
| 494 |
with gr.Row():
|
| 495 |
with gr.Column():
|
| 496 |
data_percentage_slider = gr.Slider(label="Data Percentage for Training", minimum=10, maximum=100, step=10, value=10)
|
|
|
|
| 508 |
with gr.Tab("LoS/NLoS Classification Task"):
|
| 509 |
gr.Markdown("### LoS/NLoS Classification Task")
|
| 510 |
|
| 511 |
+
# Explanation section with creative spacing
|
| 512 |
+
gr.Markdown("""
|
| 513 |
+
<div class="explanation-box">
|
| 514 |
+
Use this task to classify whether a channel is LoS (Line-of-Sight) or NLoS (Non-Line-of-Sight). You can either upload your own dataset or use the default dataset to explore how LWM embeddings compare to raw channels.
|
| 515 |
+
</div>
|
| 516 |
+
""")
|
| 517 |
+
|
| 518 |
# Radio button for user choice: predefined data or upload dataset
|
| 519 |
choice_radio = gr.Radio(choices=["Use Default Dataset", "Upload Dataset"], label="Choose how to proceed", value="Use Default Dataset")
|
| 520 |
|
|
|
|
|
|
|
|
|
|
| 521 |
percentage_slider_los = gr.Slider(minimum=float(percentage_values_los[0]),
|
| 522 |
maximum=float(percentage_values_los[-1]),
|
| 523 |
step=float(percentage_values_los[1] - percentage_values_los[0]),
|
|
|
|
| 547 |
percentage_slider_los.change(fn=handle_user_choice, inputs=[choice_radio, percentage_slider_los, file_input],
|
| 548 |
outputs=[raw_img_los, embeddings_img_los, output_textbox])
|
| 549 |
|
| 550 |
+
|
| 551 |
# Launch the app
|
| 552 |
if __name__ == "__main__":
|
| 553 |
demo.launch()
|