跳轉到主要內容

專案概述

本專案以 Docker Compose 架設完整的影像標註基礎設施,整合 Label Studio 標註介面、MinIO 物件儲存,以及 SAM(Segment Anything Model)3、3.1、2.1 的 ML Backend 服務。透過 Cloudflare Tunnel 可在無公開 IP 的環境下從遠端存取,支援批次標註加速工作流程。

技術棧

  • Label Studio:影像標註介面
  • MinIO:S3 相容物件儲存(影像與標註資料)
  • SAM 3 / 3.1 / 2.1:Meta Segment Anything Model 系列,作為 ML Backend
  • Docker Compose:多服務容器編排
  • Cloudflare Tunnel:遠端存取通道(無需開放入站埠號)
  • Python:ML Backend 實作語言

功能特色

  • 單一 docker compose up 啟動完整標註環境
  • 支援 SAM 3、SAM 3.1、SAM 2.1 三個版本的 ML Backend 切換
  • MinIO 作為 Label Studio 的後端儲存,資料不依賴雲端
  • 批次標註模式,提升大規模資料集處理效率
  • Cloudflare Tunnel 整合,支援實驗室外部遠端作業

快速開始

  1. 複製專案並設定環境變數
    git clone https://github.com/felimet/label-anything-sam.git
    cd label-anything-sam
    cp .env.example .env
    # 編輯 .env 填入 MinIO 與 Label Studio 金鑰
    
  2. 啟動服務
    docker compose up -d
    
  3. 確認服務狀態
    docker compose ps
    
  4. 設定 Cloudflare Tunnel(選用,遠端存取)
    cloudflared tunnel create label-anything
    cloudflared tunnel route dns label-anything <your-domain>
    
切換 SAM 版本前請先確認對應的模型權重已下載至 models/ 目錄,並修改 docker-compose.yml 中的 ML Backend 服務設定。

相關連結