Геопространственное CV: спутники/SAR и большие тайлы
Задача страницы. Практический гайд по обработке спутниковых и радарных (SAR) сцен на облачных GPU: много‑диапазонные растры, огромные объёмы, тайлинг/пирамиды, проекции и репроекция, сегментация/классификация/детекция изменений, SAR‑специфика (спекл, поляризация, ко‑регистрация), профили VRAM/диска, наблюдаемость и расчёт стоимости.
TL;DR
- Нормализуйте сцены: радиометрия, выравнивание проекций, облака/тени, ко‑регистрация (для SAR/временных рядов).
- Работайте тайлами 512–1024 px с overlap 32–64 px, храните пирамиды уровней и метаданные сцены.
- Batch‑потоки (мозаики, исторические архивы) гоняйте в пулах interruptible (чанк ≤ 2 мин, NVMe‑кэш); онлайн‑тайл‑инференс — в on‑demand под SLA latency.
- Смежные разделы: CV‑хаб — https://cloudcompute.ru/solutions/computer-vision/ • сегментация/ROI — https://cloudcompute.ru/solutions/computer-vision/sam/ • эмбеддинги/поиск — https://cloudcompute.ru/solutions/computer-vision/dinov2/ • векторные БД — https://cloudcompute.ru/solutions/rag/vector-db/ • хранение — https://cloudcompute.ru/solutions/storage-data/ • тюнинг — https://cloudcompute.ru/solutions/performance-tuning/ • наблюдаемость — https://cloudcompute.ru/solutions/monitoring-logging/ и https://cloudcompute.ru/solutions/llm-inference/observability/ • экономика — https://cloudcompute.ru/solutions/cost-planner/ • прерываемые пулы — https://cloudcompute.ru/solutions/interruptible-patterns/ • баланс throughput↔latency — https://cloudcompute.ru/solutions/throughput-vs-latency/ • сервинг — https://cloudcompute.ru/solutions/triton-inference-server/
Сценарии использования
- Сегментация покрытий (землепользование, вода/суша, дороги/застройка).
- Детекция изменений (пары/серии дат): вырубки, затопления, стройка, сезонность.
- SAR‑аналитика: водные поверхности, судоходство, ледовая обстановка, деформация (ко‑регистрация/когерентность).
- Геораспознавание объектов: площадки, линии ЛЭП/трубопроводы (с ROI/подсказками).
- Каталоги/ретривал: поиск похожих сцен/плиток, dedup, быстрая навигация.
Данные и нормализация
Оптика (мультиспектр):
- Приведение к единому диапазону значений (например, TOA/BOA отражательность), маска облаков/теней, выравнивание освещённости.
- Каналы: RGB + NIR/SWIR; индексы вида: NDVI = (NIR−R)/(NIR+R), NBR, NDWI — как дополнительные входы/фичи.
SAR (радар):
- Поляризация VV/VH/HH/HV, лог‑амплитуда, спекл‑шум (мульти‑лук/фильтрация), радиометрическая коррекция (RTC), геокодирование.
- Для временных рядов — ко‑регистрация сцен и (по задаче) когерентность.
Геопривязка/проекции:
- Приводите к единой проекции (WGS84/UTM по задаче), храните transform, crs, bbox.
- Для мозаик — фиксируйте тайловую сетку и масштаб, чтобы модели видели одинаковый метраж на пиксель.
Тайлинг, пирамиды и стыки - Размер тайла: 512–1024 px (512 — больше параллелизма; 1024 — меньше швов), overlap 32–64 px.
- Пирамиды уровней: храните 2–4 уровня (¼, ½, 1×, 2×) для адаптивной нагрузки и multi‑scale инференса.
- Сборка масок: объединяйте логиты с весами по краям (гауссов блендинг), затем морфологическая правка.
- Границы сцены: маски «без данных» и водяные знаки/облака учитывайте в метриках качества.
Алгоритмы/задачи: оптика vs SAR
| **Класс** | **Оптика** | **SAR** |
| **Сегментация** | U‑Net/ViT‑сегм, каналы RGB+NIR(+индексы) | U‑Net‑подобные по лог‑амплитуде/поляризации |
| **Классификация тайлов** | ViT/ResNet‑подобные, аугментации | Пространство лог‑ампл., спекл‑устойчивые аугм. |
| **Детекция изменений** | Siamese/temporal encoder, индексы Δ | Ко‑рег. пар, когерентность/амплитудные Δ |
| **Распознавание объектов** | Детекторы/ROI + постпроц | Детекторы на лог‑ампл., CFAR‑подсказки |
| **Ретривал** | Эмбеддинги DINOv2/CLIP | Эмбеддинги на лог‑ампл./поляризациях |
См. ROI/интерактив — https://cloudcompute.ru/solutions/computer-vision/sam/ • Эмбеддинги/поиск — https://cloudcompute.ru/solutions/computer-vision/dinov2/
Типовые пайплайны
A) Сегментация покрытий (мозаика, batch)
Сырьё (мультиспектр/SAR) → нормализация/маски → репроекция → тайлинг (512–1024, overlap 32–64)
→ инференс (fp16, батч 4–16) → сборка логитов → постпроц (морфология/границы) → экспорт (GeoTIFF/вектор)
Режим: interruptible; отчет по площади/классам; кэш на NVMe. См. https://cloudcompute.ru/solutions/interruptible-patterns/ и https://cloudcompute.ru/solutions/storage-data/
B) Детекция изменений (пары/серии)
Сцена t0 + t1 (ко-рег) → индексы Δ/когерентность (SAR) → siamese/temporal инференс
→ маска изменений → фильтры ложных срабатываний → отчёт/алерты
Режим: batch (архив) или on‑demand (оперативка); SLA по p95 если онлайн.
C) Онлайн тайл‑инференс (низкая латентность)
Запрос /tile?z/x/y&bands → чтение пирамиды → препроц → инференс на тайл → постпроц → PNG/GeoTIFF/вектор
↘ логи/метрики → дашбордыРежим: on‑demand, p95 < 60–200 мс/тайл при прогретых весах. Сервинг графов — https://cloudcompute.ru/solutions/triton-inference-server/ Профили GPU/VRAM и пропускная способность
Ориентиры для fp16/bf16, 1024² тайл, батч/параллелизм умеренные, прогретые веса.
| **Профиль** | **Сегментация batch (тайл/мин)** | **Онлайн тайл‑инференс (p95 мс)** | **Комментарии** |
| **24 ГБ (Compact)** | 800–1 800 | 120–200 | Старт/пилоты, тайлы 512–1024 |
| **48 ГБ (Balanced)** | 1 800–3 600 | 70–140 | Прод‑мозаики/онлайн тайлы |
| **80 ГБ (HQ)** | 3 600–6 000 | 45–100 | Большие пайплайны, multi‑scale/мульти‑модель |
Фактические цифры зависят от диапазонов/каналов, резолюции, постпроцесса и I/O. Тюнинг — https://cloudcompute.ru/solutions/performance-tuning/
Хранилище, индексация и NVMe‑кэш
- Слои хранения: горячий NVMe (веса/пирамиды/кэш тайлов), тёплое объектное (каталоги сцен), холодное архивное.
- Структура путей: /provider/product/YYYY/MM/scene_id/zoom/row/col.tif|.npy и манифест метаданных.
- Индексация: по bbox/time/bands/cloud_coverage/polarization; быстрый выбор тайлов по AOI и дате.=
- Эмбеддинги тайлов для ретривала/QA — https://cloudcompute.ru/solutions/computer-vision/dinov2/ • индексы/поиск — https://cloudcompute.ru/solutions/rag/vector-db/
Подробнее о хранении и переносе датасетов — https://cloudcompute.ru/solutions/storage-data/
Конфиги (YAML) — batch/онлайн
A) Batch‑сегментация (мозаика, мультиспектр/SAR)
pipeline: geo-segmentation-batch
input:
catalog: s3://geodata/catalog/
aoi: geojson://projects/area_A.geojson
time_range: ["2024-04-01","2024-08-31"]
normalize:
optical:
toa_reflectance: true
cloud_mask: true
sar:
rtc: true
log_amp: true
speckle_filter: "lee"
reproject:
target_crs: "UTM-zone"
pixel_size_m: 10
tiling:
size: 1024
overlap: 64
model:
family: unet_vit
precision: fp16
batch: 8
merge:
blend: gaussian
morph_close: 3
export:
raster: geotiff
vectorize: true
out: s3://geodata/outputs/landcover_A/
runtime:
mode: batch
chunk_seconds: 120
retries: 3
nvme_cache: true
B) Детекция изменений (пары t0/t1)
pipeline: geo-change-detection
pairs:
strategy: "closest_in_window"
window_days: 15
preprocess:
coregister: true
indices: [ndvi, ndwi]
sar_coherence: true
model:
family: siamese_unet
precision: bf16
postprocess:
threshold: 0.5
remove_small: 100 m2
export:
mask: geotiff
report: json
runtime:
mode: batch
chunk_seconds: 90
C) Онлайн тайл‑инференс (низкая латентность)
pipeline: geo-tile-infer
tiles:
source: s3://geodata/tiles/pyramid/
formats: [cog, npy]
server:
api: http
endpoint: /v1/tile
sla_p95_ms: 120
model:
family: unet_vit
precision: fp16
warmup: true
output:
format: png_alpha # или geotiff
overlay: false
observability:
metrics: prometheus
traces: otlp
Сервинг ансамблей — https://cloudcompute.ru/solutions/triton-inference-server/ • UI/API — https://cloudcompute.ru/solutions/gradio-fastapi/
Метрики качества/скорости и дашборды
Сбор/дашборды — https://cloudcompute.ru/solutions/monitoring-logging/ и https://cloudcompute.ru/solutions/llm-inference/observability/
- Качество: IoU/Dice по классам, точность вблизи стыков, ложные изменения (для Δ), доля «пустых» тайлов.
- Скорость: tiles/min (batch), p50/p95 latency (онлайн), GPU util/HBM, VRAM пик, cache‑hit NVMe.
- Сервис: ошибки чтения тайлов/ко‑регистрации/репроекции, таймауты.
- Алерты: рост p95/ошибок, падение IoU, деградация кэша.
Экономика и расчёты
Пусть t_tile — среднее время инференса тайла (сек), A_tile — площадь тайла в км² (по масштабу), c_gpu — цена GPU/час.
Batch:
Tiles_per_hour ≈ 3600 / t_tile
Cost_per_1M_tiles ≈ (1_000_000 / Tiles_per_hour) × c_gpu × Num_GPU
Cost_per_1000_km2 ≈ (1000 / A_tile) × (t_tile × c_gpu / 3600) × Num_GPU
Онлайн:
QPS ≈ 1 / t_tile # при одиночных запросах без кэша
Cost_per_tile ≈ (c_gpu / 3600) × t_tile
Планирование профилей и сравнение on‑demand vs interruptible — https://cloudcompute.ru/solutions/cost-planner/ и https://cloudcompute.ru/solutions/interruptible-patterns/
Безопасность и политика
- Контроль доступа к геоданным (по регионам/проектам), аудит вызовов, шифрование.
- Ограничение параметров API: max_zoom, max_area, лимиты частоты.
- Маскирование чувствительных объектов/координат в публичных превью.
Подробнее — https://cloudcompute.ru/solutions/security/ и https://cloudcompute.ru/solutions/llm-inference/guardrails/
Траблшутинг
| **Симптом** | **Причина** | **Что сделать** |
| «Швы» между тайлами | Недостаточный overlap/слияние | Увеличить overlap 32→64, включить гауссов блендинг, пост‑морфология |
| Сдвиги на парах t0/t1 | Нет ко‑регистрации/разные проекции | Включить ко‑рег, единая сетка/CRS, единый pixel\_size |
| Ложные изменения | Облака/тени/сезонность | Маскировать облака/тени, вводить сезонные фичи/нормализацию |
| «Соль» на SAR | Спекл‑шум | Мульти‑лук, мягкая фильтрация, агрегация по времени |
| Медленно на пирамиде | Холодный кэш/мелкие I/O | NVMe‑кэш пирамид, объединение чтений, батч запросов |
| OOM на больших каналах | Слишком много бэндов/батч | Снизить число каналов/батч, fp16/bf16, градиент‑освобождение |
Как запустить в cloudcompute.ru
Шаблоны — https://cloudcompute.ru/solutions/templates/
- “Geo‑Segmentation (Batch)” — нормализация/репроекция, тайлинг/пирамиды, сегментация, сборка, отчёты.
- “Geo‑Change (Pairs/Series)” — ко‑регистрация, индексы/когерентность, Δ‑инференс, фильтры.
- “Geo‑Tile Inference (Online)” — HTTP API, SLA p95, PNG/GeoTIFF, метрики/алерты.
Инфраструктура: тюнинг — https://cloudcompute.ru/solutions/performance-tuning/ • хранилище — https://cloudcompute.ru/solutions/storage-data/ • наблюдаемость — https://cloudcompute.ru/solutions/monitoring-logging/ • сервинг — https://cloudcompute.ru/solutions/triton-inference-server/ • CI/CD — https://cloudcompute.ru/solutions/containers-ci-cd/
Чек‑лист перед продом
- Определены задачи: покрытие/изменения/объекты, оптика/SAR, онлайновый/батч режим.
- Зафиксированы проекция/сетку/масштаб и нормализация (облака/RTC/лог‑ампл).
- Подобраны размер тайла/overlap, профили GPU (24/48/80 ГБ), подтверждён VRAM/throughput.
- Настроены пирамиды, NVMe‑кэш, структура каталога/индексов.
- Подключены метрики/алерты/трейсинг; введены ограничения API.
- Рассчитаны Cost_per_1M_tiles и/или Cost_per_1000_km2, выбран режим пулов (on‑demand/interruptible).
Навигация по разделу «Компьютерное зрение»
Хаб: https://cloudcompute.ru/solutions/computer-vision/ • Интерактивная сегментация (ROI): https://cloudcompute.ru/solutions/computer-vision/sam/ • Эмбеддинги/ретривал: https://cloudcompute.ru/solutions/computer-vision/dinov2/ • Детекция/трекинг: https://cloudcompute.ru/solutions/computer-vision/yolo/ и https://cloudcompute.ru/solutions/computer-vision/tracking/ • Видео‑аналитика: https://cloudcompute.ru/solutions/computer-vision/video-analytics/ • OCR (карты/сканы): https://cloudcompute.ru/solutions/computer-vision/ocr/ • 3D‑реконструкция: https://cloudcompute.ru/solutions/computer-vision/3d-reconstruction/ • Экспорт на edge: https://cloudcompute.ru/solutions/computer-vision/edge-export/ • Инфраструктура/наблюдаемость/экономика: https://cloudcompute.ru/solutions/performance-tuning/ • https://cloudcompute.ru/solutions/storage-data/ • https://cloudcompute.ru/solutions/monitoring-logging/ • https://cloudcompute.ru/solutions/llm-inference/observability/ • https://cloudcompute.ru/solutions/throughput-vs-latency/ • https://cloudcompute.ru/solutions/cost-planner/ • https://cloudcompute.ru/solutions/interruptible-patterns/ • Сервинг/CI: https://cloudcompute.ru/solutions/triton-inference-server/ • https://cloudcompute.ru/solutions/containers-ci-cd/
Готовы запустить?
Запустить GPU-сервер