# SAMURAI SAMURAI 基于SAM2的Zero-Shot视觉跟踪模型。 ## 论文 `SAMURAI: Adapting Segment Anything Model for Zero-Shot Visual Tracking with Motion-Aware Memory ` - https://arxiv.org/abs/2411.11922 ## 模型结构 虽然 SAM2 模型在视频流上的目标分割效果非常出色,但是在精准的目标跟踪方面却略显粗糙,很难应对跟踪任务的复杂环境和各种遮挡、丢失等挑战。与此,SAMURAI 在 SAM2 模型基础上,通过结合时间运动线索和提出的运动感知记忆选择机制,有效地预测了对象运动并优化了掩码选择,在无需重新训练或微调的情况下实现了稳健且准确的跟踪。
SAM2
## 算法原理 SAMURAI 的算法原理如下图所示。主体结构设计遵循SAM2,并设计运动建模和记忆选择机制。\ 运动建模(Motion Modeling)合并运动信息,有效地处理快速移动和遮挡的对象来增强 SAM2 的视觉跟踪准确性。\ 运动感知的记忆选择机制(Memory Selection),该机制通过选择性存储相关框架来减少拥挤的场景中的错误,以运动和亲和力得分的混合来决定。
SAMURAI
## 环境配置 ``` mv samurai_pytorch samurai # 去框架名后缀 # docker的-v 路径、docker_name和imageID根据实际情况修改 # pip安装时如果出现下载慢可以尝试别的镜像源 ``` ### Docker(方法一) ``` docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:2.3.0-ubuntu22.04-dtk24.04.3-py3.10 # 本镜像imageID为:0291c26699b0 docker run -it -v /path/your_code_data/:/path/your_code_data/ -v /opt/hyhal/:/opt/hyhal/:ro --shm-size=16G --privileged=true --device=/dev/kfd --device=/dev/dri/ --group-add video --network=host --name docker_name imageID bash cd /your_code_path/samurai cd sam2 pip install -e . pip install -e ".[notebooks]" cd .. pip install -r requirements.txt ``` ### Dockerfile(方法二) ``` cd /your_code_path/samurai/docker docker build --no-cache -t codestral:latest . docker run -it -v /path/your_code_data/:/path/your_code_data/ -v /opt/hyhal/:/opt/hyhal/:ro --shm-size=16G --privileged=true --device=/dev/kfd --device=/dev/dri/ --group-add video --network=host --name docker_name imageID bash cd /your_code_path/samurai cd sam2 pip install -e . pip install -e ".[notebooks]" cd .. pip install -r requirements.txt ``` ### Anaconda(方法三) 关于本项目DCU显卡所需的特殊深度学习库可从[光合](https://developer.hpccube.com/tool/)开发者社区下载安装。 ``` DTK驱动: dtk24.04.3 python: python3.10 pytorch: 2.3.0 ``` `Tips:以上DTK驱动、python、pytorch等DCU相关工具版本需要严格一一对应` 其它非深度学习库参照requirements.txt安装: ``` cd /your_code_path/samurai cd sam2 pip install -e . pip install -e ".[notebooks]" cd .. pip install -r requirements.txt ``` ## 数据集 无 ## 训练 无 ## 推理 模型下载: ``` cd sam2/checkpoints sh download_ckpts.sh ``` SAM2.1模型也可从 [SCNet](http://113.200.138.88:18080/aimodels/facebook) 上快速下载; 推理图片下载: 可以用 [GOT10k](http://113.200.138.88:18080/aidatasets/project-dependency/got10k) 的测试图片;\ 也可以自行选择视频或者图片序列进行测试,只需要提供初始帧目标的坐标保存成txt即可,比如 data/GOT-10k_Test_000001,可供参考。 ``` # 视频/图片序列 python scripts/demo.py --video_path --txt_path ``` ## result
推理结果
### 精度 无。 ## 应用场景 ### 算法类别 `目标跟踪` ### 热点应用行业 `零售,制造,电商,医疗,教育` ## 源码仓库及问题反馈 - https://developer.sourcefind.cn/codes/modelzoo/samurai_pytorch ## 参考资料 - https://github.com/yangchris11/samurai