Skip to content AquaMind pipeline, stages 1 to 9, one line each Nine stages stacked top to bottom, each linking to its full page, colour-coded by topic: data pipeline, tracker and identity, behaviour classifiers, deployment. One dashed feedback loop runs from model-assisted annotation back to object detection. AquaMind pipeline — stage by stage i Click a stage to open its page. 1 · Frame extraction Extracts 1 frame/sec from video, stores frame paths in MySQL. 2 · Annotation Labels boxes in Label Studio, stores them in MySQL. 3 · Object detection Builds a versioned YOLO dataset (DVC), fine-tunes YOLOv8 (MLflow). 4 · Custom tracker SORT-style tracker → per-fish tracks, ground-truthed against human review. 5 · Model-assisted annotation The tracker's failures, pre-labelled by the detector, retrain a better one. 6 · Re-identification Appearance embedding audits the tracker's identity decisions. 7 · Chasing detection Kinematic features + LSTM flag chase events between fish. 8 · Feeding-strike detection CNN + LSTM on appearance — fails a stream test, a rigorous negative result. 9 · Pipeline & deployment One trained classifier behind FastAPI, Dockerized, on a cloud host. Data pipeline Tracker & identity Behaviour classifiers Deployment feedback loop Fig All nine stages in build order, coloured by topic — click one to open its full page. The dashed loop is feedback, not part of the forward flow: the model-assisted annotation stage relabels the frames where the tracker exposed the detector's failures, and the retrained detector returns to object detection. See Detailed for the script-level architecture.