# 银河水滴步态检测跟踪示例

这个包在本地视频中做人像检测和简单跟踪，并把每条行人轨迹导出成一个步态序列目录。

检测模型已经迁移为外部 ONNX 文件：

- Python：`python/gait_detect.onnx`
- C++：`cpp/gait_detect.onnx`
- C++ ONNX Runtime CPU 依赖：`cpp/third_party/onnxruntime-linux-x64/`

模型输入为 BGR、0-255、NCHW、`float32[1,3,352,640]`。检测后处理沿用旧语义：score threshold、NMS threshold、topK、坐标还原、NMS 和序列跟踪逻辑保持一致。

## Python

```bash
cd python
python3 -m pip install -r requirements.txt
python3 run_detect_track.py /path/to/video.mp4 --output ./output
```

## C++

C++ 示例只使用 CPU 版 ONNX Runtime，不依赖 CUDA、cuDNN 或 TensorRT。

```bash
cd cpp
sudo apt-get install -y cmake g++ libopencv-dev
./build.sh
./build/local_video_sequence_extractor /path/to/video.mp4
```

输出目录中会生成：

```text
output/
  video_gait_sequences/
    video_seq000001_track000001/
      frame_000001.jpg
      frame_000003.jpg
      meta.txt
```

这些序列图片目录可以作为步态特征提取 API 的输入。

## 替换模型

如果线上后续替换检测模型，只替换下载目录里的 `gait_detect.onnx`，然后重新打包 zip 即可。下载包内容改变后，用户重新下载新 zip；服务端 API 不需要重启。
