SAM (Segment Anything Model)
ViT-B ONNX quantized — point-prompt сегментация любых объектов
Как работает SAM
Segment Anything Model (Meta AI, 2023) — универсальная модель сегментации. Работает по принципу «один клик — один объект». Энкодер создаёт эмбеддинг изображения однократно, затем декодер вычисляет маску по координатам клика за миллисекунды.
Пайплайн
Тайл
256×256 px
→
Encoder
ViT-B, ~250 мс
→
Point Prompt
click (x, y)
→
Decoder
~15 мс
→
Контур
GeoJSON poly
Параметры
| Параметр | Тип | По умолч. | Описание |
|---|---|---|---|
processor | string | "sam" | Имя процессора |
cache_key | string | null | Ключ кэша эмбеддинга (путь тайла) |
click_x | float | — | X координата клика в px |
click_y | float | — | Y координата клика в px |
simplify_tolerance | float | 2.0 | Допуск Douglas-Peucker |
Модель
| Характеристика | Значение |
|---|---|
| Архитектура | ViT-B (Vision Transformer, Base) |
| Формат | ONNX quantized (INT8) |
| Энкодер | ~97 МБ |
| Декодер | ~5 МБ |
| Входное разрешение | 1024 × 1024 px |
| Нормализация | ImageNet mean/std |
Примеры использования
# Сегментация с SAM curl -X POST http://localhost:8090/segment \ -H "Content-Type: application/json" \ -d '{ "image_url": "/api/gpkg/tile/z/x/y.png", "click_x": 128, "click_y": 200, "processor": "sam", "cache_key": "tile_z_x_y", "simplify_tolerance": 2.0 }' # Ответ: {"contour": [[x,y],...], "score": 0.95, ...}