feat: implement K{coop}-L{floor} standard, smart discovery, multi-coop runner, and move test runs to test_run_folder
This commit is contained in:
1 parent
6723701424
commit
b00923dc2b
24 files changed
+2068
-74
No files matched your search
@@ -34,6 +34,7 @@ venv/bin/pip install -r requirements.txt
|
||||
```text
|
||||
chicken-counting-sukawarna-det/
|
||||
├── configs/
|
||||
│ ├── K1-L1.yaml .. K5-L2.yaml ← Standard floor configurations (K1-L1 to K5-L2)
|
||||
│ ├── cycle7_batch_optimized.yaml ← Main batch processing config
|
||||
│ ├── cycle7_batch.yaml ← Alternate batch config
|
||||
│ ├── mortality_config.yaml ← Mortality (carcass) detection config
|
||||
@@ -50,9 +51,9 @@ chicken-counting-sukawarna-det/
|
||||
├── dashboard.py ← Live API + Dashboard server
|
||||
├── export_engine.py ← Manual TensorRT export utility
|
||||
├── export_excel_report.py ← Excel reporting & analytics generator
|
||||
├── run_all_coops.sh ← Master multi-coop batch runner (K1-L1 to K5-L2)
|
||||
├── start_dashboard.sh ← Portable dashboard launcher ← USE THIS
|
||||
├── test_run_mortality.sh ← Run mortality detection
|
||||
├── test_run.sh ← Run batch processing all dates
|
||||
├── test_run_folder/ ← Archive of test run scripts and logs
|
||||
└── requirements.txt
|
||||
```
|
||||
|
||||
@@ -76,47 +77,33 @@ Put your model files in the `models/` directory.
|
||||
|
||||
### A — Batch Video Processing (Daily Chicken Count)
|
||||
|
||||
Place input videos under the `VIDEOS` folder adjacent to the project:
|
||||
Place input videos under the `VIDEOS` folder adjacent to the project following the `K{coop}-L{floor}` format:
|
||||
|
||||
```text
|
||||
../VIDEOS/cycle7/kandang-atas/
|
||||
2026-06-18/
|
||||
kandang_1_camera_1_2026-06-18_120056.mp4
|
||||
kandang_1_camera_2_2026-06-18_120456.mp4
|
||||
...
|
||||
../VIDEOS/cycle7/
|
||||
K1-L1/
|
||||
2026-06-18/
|
||||
K1-L1_cam1_2026-06-18_120056.mp4
|
||||
K1-L1_cam2_2026-06-18_120456.mp4
|
||||
K1-L1_cam3_2026-06-18_121012.mp4
|
||||
K1-L1_cam4_2026-06-18_121530.mp4
|
||||
```
|
||||
|
||||
Then run:
|
||||
|
||||
```bash
|
||||
# Run all dates (multi-process mode)
|
||||
./test_run.sh
|
||||
# Run all coops (10 floors: K1-L1 to K5-L2) for a specific date
|
||||
./run_all_coops.sh 2026-06-18
|
||||
|
||||
# Run all dates (Tensor Batching mode)
|
||||
./test_run_tensor_batch.sh
|
||||
|
||||
# Run all dates (Hybrid mode: Threaded CPU + Batched GPU)
|
||||
./test_run_hybrid.sh
|
||||
|
||||
# Run a specific date (4 cameras in parallel)
|
||||
# Run a specific floor (e.g. Kandang 1 Lantai 1)
|
||||
PYTHONPATH=src venv/bin/python -m chicken_counter.cli batch \
|
||||
--config configs/cycle7_batch_optimized.yaml \
|
||||
--config configs/K1-L1.yaml \
|
||||
--date 2026-06-18
|
||||
|
||||
# Run a specific date using Model-Level Tensor Batching
|
||||
PYTHONPATH=src venv/bin/python -m chicken_counter.cli batch \
|
||||
--config configs/cycle7_batch_optimized.yaml \
|
||||
--date 2026-06-18 \
|
||||
--mode tensor_batching
|
||||
|
||||
# Run a specific date using Hybrid Execution Mode
|
||||
PYTHONPATH=src venv/bin/python -m chicken_counter.cli batch \
|
||||
--config configs/cycle7_batch_optimized.yaml \
|
||||
--date 2026-06-18 \
|
||||
--mode hybrid
|
||||
|
||||
# Run with video output enabled
|
||||
./test_run_video_2026-06-18.sh
|
||||
# Run archive scripts in test_run_folder
|
||||
./test_run_folder/test_run.sh
|
||||
./test_run_folder/test_run_tensor_batch.sh
|
||||
./test_run_folder/test_run_hybrid.sh
|
||||
```
|
||||
|
||||
Output is saved in `../VIDEOS/cycle7/kandang-atas/2026-06-18/output/`.
|
||||
|
||||
Reference in new issue
Block a user