사용법 (SamPredictor와 자동 생성)
사용법 (SamPredictor와 자동 생성)
SAM은 SamPredictor로 특정 프롬프트에 대한 마스크를 만들고, SamAutomaticMaskGenerator로 이미지 전체의 마스크를 자동 생성할 수 있어요.
설치
pip install git+https://github.com/facebookresearch/segment-anything.git
마스크 후처리와 COCO 포맷 저장, ONNX 내보내기에는 옵션 의존성도 필요해요.
pip install opencv-python pycocotools matplotlib onnxruntime onnx
프롬프트 기반 예측
from segment_anything import SamPredictor, sam_model_registry
sam = sam_model_registry["<model_type>"](checkpoint="<path/to/checkpoint>")
predictor = SamPredictor(sam)
predictor.set_image(<your_image>)
masks, _, _ = predictor.predict(<input_prompts>)
이미지 전체 자동 마스크 생성
from segment_anything import SamAutomaticMaskGenerator, sam_model_registry
sam = sam_model_registry["<model_type>"](checkpoint="<path/to/checkpoint>")
mask_generator = SamAutomaticMaskGenerator(sam)
masks = mask_generator.generate(<your_image>)
<model_type>과 체크포인트 경로는 sam_model_registry에 맞춰 주어야 해요. 사용 예시는 predictor_example.ipynb 노트북에서 자세히 볼 수 있어요.