Skip to content

lyxlplhy/Sam2-collection

Repository files navigation

sam2合集,用于sam2微调,onnx导出,单帧推理,视频推理

功能

  • sam2用于点和框作为提示信息的微调
  • onnx导出(F32 F16)
  • sam2+手动提示框分割,可生成mask标签用于自动化标注
  • sam2+yolov8自动分割,可生成mask标签用于自动化标注
  • sam2视频推理(2024/11/23日更新)

环境

  • sam2: pip install -e .
  • onnx: pip install onnx
  • ultralytics: pip install ultralytics

sam2微调

数据:

将图片和mask标签放在Image文件夹与Instance下,图片名称与标签名字保持一致。

微调:

  • 使用点作为提示信息微调,按照自己的数据集位置和模型位置修改tools/train_point.py中路径,执行
 python .\tools\train_point.py --data_dir E:\LYX_date\yanwo_cover\simple5\Train/ --sam2_checkpoint D:\sam2\segment-anything-2-main\checkpoints\sam2_hiera_tiny.pt --model_cfg sam2_hiera_t.yaml
  • 使用点+框作为提示信息微调,按照自己的数据集位置和模型位置修改tools/train_box.py中路径,执行
 python .\tools\train_box.py --data_dir E:\LYX_date\yanwo_cover\simple5\Train/ --sam2_checkpoint D:\sam2\segment-anything-2-main\checkpoints\sam2_hiera_tiny.pt --model_cfg sam2_hiera_t.yaml

微调后会在tools文件夹下生成model.torch格式文件,加载微调权重方式参考tools/inference.py中sam2_model函数。

onnx导出

 python .\tools\export_sam2onnx.py --sam2_checkpoint D:\sam2\segment-anything-2-main\checkpoints\sam2_hiera_tiny.pt --model_cfg D:\sam2\segment-anything-2-main\sam2_configs\sam2_hiera_t.yaml --f16 True

tools文件夹下生成decoder、encoder的onnx文件。可参考ONNX-SAM2-Segment-Anything测试onnx格式模型导出是否成功。可使用c++推理部署Sam2Onnx_Inference

sam2+手动给提示框分割,可生成mask标签

 python .\tools\inference2.py --sam2_cfg D:/sam2/segment-anything-2-main/sam2_configs/sam2_hiera_t.yaml --sam2_checkpoint D:\sam2\segment-anything-2-main\checkpoints\sam2_hiera_tiny.pt --input_dir E:/LYX_date/yanwo_cover/1_yanwo_cover_data/ --output_dir E:\LYX_date\yanwo_cover\2024_11_27

sam2+yolov8自动分割,可生成mask标签

python .\tools\inference.py --sam2_cfg D:/sam2/segment-anything-2-main/sam2_configs/sam2_hiera_t.yaml --sam2_checkpoint D:/sam2/segment-anything-2-main/checkpoints/sam2_hiera_tiny.pt --yolo_checkpoint D:/sam2/ultralytics-main/ultralytics-main/runs/detect/train27/weights/best.pt --input_dir E:/LYX_date/yanwo_cover/1_yanwo_cover_data/ --output_dir E:/LYX_date/yanwo_cover/2024_11_27

sam2视频推理

  • 代码中视频路径为视频抽帧后存放的文件夹,图片命名方式为0.jpg、1.jpg等 inference_video.py

参考

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published