You are browsing as a guest. Sign up (or log in) to start making projects!

9h 27m 6s logged

MIRA — Day 11: Dashboard Redesign, Dual Modes, and EXP-017 Datasets

Today was all about front-end overhauls and preparation for my next training run. I redesigned my web interface, split it into two dedicated operating modes, and finalized my biggest dataset merge yet to prepare for training EXP-017.


Clean Light Theme Dashboard

I shifted the entire MIRA web dashboard from my old dark theme to a clean light theme with a mutiple colors.

JUFO vs. Stardance Modes

I introduced two separate dashboard modes that I can select on-the-fly using URL parameters:

  • JUFO Mode (?mode=jufo): A technical view tailored for competition judges, featuring deep metrics, historical training graphs, and real-time backend diagnostics.
  • Stardance Mode (?mode=stardance): An interactive, simplified playground designed for quick live demonstrations with clean control toggles.

System Health & Live Settings

I replaced my static history table with a real-time System-Health panel displaying CPU, RAM, temperature, and inference latency using animated progress bars.

I also added an “Einstellungen” (Settings) tab to Stardance mode, allowing me to adjust model weights (via a dynamic API model picker), confidence thresholds, IoU, and camera resolution directly from the web UI without needing to restart the Flask backend.


Threaded Camera Pipeline

My camera stream was bottlenecking my inference engine. I decoupled the frame capture from the detection loop by moving the capture process into a dedicated Python threading.Thread. The web stream now runs at a smooth 20 FPS at 320px resolution. I also patched Camera.release() to verify the stream is open before shutting down, preventing a common camera-close crash.


Datasets & EXP-017 Preparation

I successfully merged all four of my data sources (TACO, TrashNet, Roboflow, and WaRP) into a unified dataset named mira_all. It contains 9,774 images across 5 classes.

While generating the ZIP file, I hit an archive path encoding issue that broke folder hierarchies. I solved this by using just the normal windows option to zip files instead of the powershell way which I wanted to test out

My current baseline model (EXP-014) is still performing well with an 85.8% F1-score on my field benchmark, though the general “Trash” class remains my weakest spot at 37.6% due to how much random variation “trash” actually has.


Pipline

I also worked on pipline and am working on making it plug play allowing user to get any 3rd party model plug it in and use the full research pipline to retrain it compare it benchmark it and do a lot of stuff. I also added the option to add custom datasets and expanded on the CLI with mutiple custom commands this is probally, the second last post because I am nearly finished.
The ui for the dashboard was made with ne gpt 5.6 sol because I just couldnt come up with a good ui.

Next Steps

  • Train EXP-017: Upload the clean mira_all dataset and run training on Kaggle.
  • Logger Analysis: Review the data from my new last_per_class.json file to see which items are being misidentified during continuous live runs.
0
7

Comments 1

@water

peak bro keep going!!