ПЕРЕЙТИ ДО ЗМІСТУ
Дистанційна ударна група Альфа
EN SV ВИДАННЯ 2026-Q2 АКТИВНА
НЕТАЄМНО
FSG-A // КЛАСТЕР 6 — LISA 26 // 6.7

STANAG 4609
KLV МЕТАДАНІ

Автор: Tiny
ГОТОВО AIR 5 ХВ ЧИТАННЯ
КЛЮЧОВИЙ ВИСНОВОК
NATO STANAG 4609 визначає, як метадані (позиція, час, інформація про сенсор) вбудовуються у відеопотоки. Lisa 26 кодує все дронове відео в цьому форматі, щоб будь-яка NATO-сумісна система могла його читати. Кодування використовує пакети Key-Length-Value (KLV) — кожен елемент даних має ключ (що це), довжину (якого розміру) і значення (власне дані).

ОГЛЯД STANAG 4609 KLV

Стандарт
NATO STANAG 4609 Ed.4 — Digital Motion Imagery
Кодування
Key-Length-Value (KLV) за MISB ST 0601
Транспорт
Вбудовано в потік MPEG-TS разом із відео H.265
Частота оновлення
1 KLV-пакет на відеокадр (30 Гц)
Ключові поля
Часова мітка, позиція платформи, орієнтація платформи, FOV сенсора, позиція цілі, класифікація цілі

Чому це має значення — метадані STANAG

Якщо Lisa 26 генеруватиме відео у власному форматі, жодна союзна система не зможе його читати. STANAG 4609 — це стандарт NATO для вбудовування метаданих у відео. Будь-яка NATO-сумісна система C2 — від шведського батальйонного командного пункту до NATO AWACS — може приймати відео Lisa 26 і негайно бачити метадані: де був дрон, куди він дивився, що виявив. Це і є взаємодія. Без неї Lisa 26 залишиться ізольованим островом.

Структура KLV-пакета

Кожен відеокадр несе KLV-пакет метаданих. Пакет — це послідовність трійок тег-довжина-значення. Ключові теги, визначені MISB ST 0601:

ТегНазваДжерело в Lisa 26Примітка
2UNIX TimestampСистемний годинник (NTP через Starlink)Точність до мікросекунд
13Platform LatitudeEKF3 або оцінка оператораГрадуси, WGS84
14Platform LongitudeEKF3 або оцінка оператораГрадуси, WGS84
15Platform AltitudeБарометр (BMP390)Метри MSL
16Platform HeadingEKF3 AHRS (гіроскоп)Градуси, істинні
17Platform PitchEKF3 AHRSГрадуси
18Platform RollEKF3 AHRSГрадуси
40Target Location LatПроєкція пікселя на землюЦентр детекції
41Target Location LonПроєкція пікселя на землюЦентр детекції
65Platform DesignationРядок-ідентифікатор дронаНаприклад «FPV-ALFA-01»

Кожен відеокадр несе невидимі дані, закодовані у транспортному потоці згідно зі специфікацією MISB Standard 0601. Мінімально необхідні теги включають позицію сенсора, орієнтацію сенсора, позицію цілі та часову мітку. Необов'язкові теги надають додатковий контекст: швидкість вітру, ідентифікатор платформи, рівень класифікації та ідентифікатор місії. Будь-яка система NATO, здатна читати STANAG 4609, може декодувати і показати ці теги без спеціального ПЗ чи конвертації форматів.

Процес кодування додає приблизно 200 байт на кадр у транспортний потік відео — мізерно порівняно з самими відеоданими, але ці байти несуть критичний оперативний контекст. Без метаданих записаний відеофрагмент — це просто пікселі: аналітик, що переглядає запис через кілька годин, не може визначити, де був дрон, куди дивилася камера і на якій висоті. З вбудованими метаданими кожен окремий кадр стає самодостатнім геопросторовим записом, який будь-яка NATO-система може декодувати і показати на карті без ручного географічного прив'язування.

Взаємодія через метадані

Кожна країна NATO, яка експлуатує ISR-дрони, використовує різні відеоформати, різні протоколи телеметрії і різне ПЗ наземних станцій. Без спільного стандарту метаданих обмін відео між країнами вимагає ручного введення координат — шведський оператор читає координати зі свого екрана і вводить їх у норвезьку систему. Цей процес вносить транскрипційні помилки (перестановка цифр у сітці MGRS може розташувати ціль за кілометр від реального місця) і займає 30–60 секунд на ціль. Метадані KLV усувають обидві проблеми.

З KLV-метаданими STANAG 4609, вбудованими у відеопотік, норвезький оператор TAK, отримуючи відео Fischer 26, бачить координати цілі, автоматично накладені на свою карту — жодного ручного введення, жодних транскрипційних помилок, нульова затримка. Метадані подорожують разом із відеокадрами через будь-яку систему розподілу: супутниковий лінк, ретранслятор MANET, запис на SD-картці або IP-мережу. Навіть якщо відео архівоване і переглядається через кілька днів, координати залишаються вбудованими і точними. Ця взаємодія — основа об'єднаних дронових операцій JEF: без KLV багатонаціональна координація дронів потребує передачі координат голосом, що повільно і схильно до помилок.

Реалізація на Jetson Orin Nano

Кодування метаданих KLV виконується як легкий процес на Jetson Orin Nano поряд із YOLOv8 та ORB-SLAM3. Кодер читає позицію і орієнтацію дрона з потоку телеметрії MAVLink (30 Гц), читає координати цілей з виходу детекцій YOLOv8 і будує KLV-пакет, сумісний із MISB ST 0601, для кожного відеокадру. Розмір пакета: приблизно 200 байт на кадр. При 30 кадрах/с: 6 кБ/с метаданих — мізерна пропускна здатність порівняно зі стисненим відеопотоком. Дані KLV мультиплексуються в транспортний потік H.264 як окремий PES (Packetized Elementary Stream) згідно зі специфікацією контейнера MPEG-2 TS. Будь-який STANAG 4609-сумісний програвач декодує і відео, і метадані без змін.

ПРОСТОЮ МОВОЮ: KLV МЕТАДАНІ
Кожен кадр дронового відео несе невидимі дані — наче часова мітка на фото, але значно більше. Вони говорять: де був дрон, куди він дивився, на якій висоті, який час, і що він виявив. Ці невидимі дані відповідають стандарту NATO (STANAG 4609), щоб БУДЬ-ЯКА союзна система могла їх прочитати. Коли Lisa 26 ділиться відео зі шведським бригадним командним пунктом або штабом NATO, їм не потрібне спеціальне ПЗ — їхні стандартні системи вже розуміють формат.

Пов'язані розділи

Реалізація

# STANAG 4609 KLV Metadata Encoder
import struct

def encode_klv_packet(drone_lat, drone_lon, drone_alt,
                      cam_pitch, cam_roll, cam_yaw,
                      target_lat, target_lon, timestamp_us):
    """Encode MISB ST 0601 KLV metadata for drone video."""
    klv = bytearray()

    # Key: UAS Datalink Local Set (06 0E 2B 34)
    klv += bytes([0x06, 0x0E, 0x2B, 0x34, 0x02, 0x0B, 0x01, 0x01,
                  0x0E, 0x01, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00])

    # Tag 2: Precision Time Stamp (microseconds since epoch)
    klv += encode_tag(2, struct.pack(">Q", timestamp_us))

    # Tag 13: Sensor Latitude (scaled int32, ±90°)
    lat_scaled = int(drone_lat / 90.0 * 2147483647)
    klv += encode_tag(13, struct.pack(">i", lat_scaled))

    # Tag 14: Sensor Longitude
    lon_scaled = int(drone_lon / 180.0 * 2147483647)
    klv += encode_tag(14, struct.pack(">i", lon_scaled))

    # Tag 15: Sensor True Altitude (meters, uint16 offset 900)
    alt_scaled = int((drone_alt + 900) * 19.2)
    klv += encode_tag(15, struct.pack(">H", alt_scaled))

    # Tag 23/24: Target Location
    klv += encode_tag(23, struct.pack(">i", int(target_lat/90*2147483647)))
    klv += encode_tag(24, struct.pack(">i", int(target_lon/180*2147483647)))

    return bytes(klv)

Джерела

Нормативні джерела. NATO STANAG 4609 Ed.4: NATO Digital Motion Imagery Standard — опублікований NATO Standardization Office. MISB ST 0601: UAS Datalink Local Set — Motion Imagery Standards Board, motion-imagery.org. Структура контейнера MPEG-TS — ISO/IEC 13818-1. Теги KLV (2, 13, 14, 15, 16, 17, 18, 40, 41, 65) та їхні дефініції, масштабовані цілі числа — документовано в специфікації MISB ST 0601.

Математично перевірювані оцінки. Розмір пакета 200 байт на кадр × 30 кадрів/с = 6 кБ/с — проста арифметика. Кодування цілих масштабованих значень (lat × 2147483647 / 90) — стандарт MISB.

Операційні оцінки — не верифіковано в польових умовах. Оціночна додаткова затримка менше 1 мс через KLV-інтеграцію — розрахункова на основі алгоритмічної вартості struct.pack, не виміряна на Jetson Orin Nano. Час транскрипції координат «30–60 секунд на ціль» та типовий рівень помилок MGRS «1 км» при перестановці цифр — оцінки FSG-A на основі опублікованого аналізу командних процедур. Твердження «будь-яка NATO-система може декодувати без зміни» є правдивим для NATO-сертифікованих систем, але не для експериментальних чи національних систем, що можуть мати відмінні реалізації.

Зовнішні стандарти та джерела. NATO STANAG 4609 Ed.4: NATO Digital Motion Imagery Standard. MISB ST 0601: UAS Datalink Local Set (motion-imagery.org). Документація GStreamer KLV muxer. Посібник FFmpeg з ін'єкції MISB-метаданих. FSG-A не тестувала KLV-кодер на реальному відео від бойового дрона — апаратура комерційно доступна, але інтеграція концептуальна.