Детектирование синхроимпульсов в канале APT

Лабораторная работа №3. ДЕКОДИРОВАНИЕ ИЗОБРАЖЕНИЙ МЕТЕОРОЛОГИЧЕСКИХ СПУТНИКОВ NOAA, ПРИНЯТЫХ В ФОРМАТЕ APT   Целью работы является изучение протокола APT передачи спутниковых изображений, а также получения навыков обработки реальных радиотехнических сигналов.  В ходе выполнения работы необходимо составить программу в MatLab (используя предоставленное описание и фрагменты кода MatLab), которая бы декодировала принятый сигнал от метеорологического спутника NOAA.  

Необходимые сведения

 

Передача изображений в формате APT

       Оперативная спутниковая система NOAA (National Oceanic and Atmospheric Administration) состоит из геостационарных спутников GOES (Geostationary Operational Environmental Satellites) предназначенных для краткосрочного и сверхкраткосрочного прогнозирования и мониторинга текущей метеорологической обстановки и полярно-орбитальных спутников POES (polar-orbiting environmental satellites), которые предоставляют информацию для более долгосрочных прогнозов. Данные со спутников GOES и POES позволяют производить глобальный мониторинг погодной обстановки. Спутники NOAA также оснащены системами поиска и спасения (S&R), которые к настоящему времени помогли спасти более чем 20 тысяч человеческих жизней [2]. Первый спутник NOAA 1 (POES) был запущен 11 декабря 1970 года, последний GOES 15 – 3 апреля 2010 года. Сейчас (март, 2014) действуют 4 спутника POES (NOAA 15, 16, 18, 19) и 3 спутника GOES (GOES 13, 14, 15) – [3, 4].

APT (Automatic Picture Transmission) – аналоговая система передачи изображений, разработанная для метеорологических спутников. Была введена в эксплуатацию в 1960-е годы. Кроме американских спутников NOAA. Ее использовали советские (а потом российские) спутники МЕТЕОР [5]. На текущий момент эту систему (формат) используют спутники NOAA 15, 18, 19. На действующем спутнике NOAA 16 система APT перестала функционировать вскоре после запуска [5, 6].

Спутники NOAA имеют на борту AVHRR (Advanced Very High Resolution Radiometer) – радиометр с высоким разрешением. Изображения с максимальной разрешающей способностью (1км/пкс) передается в цифровом формате HRPT (High resolution picture transmission) на частоте 1,7 ГГц. Для аналогового режима APT, на частоте 137 МГЦ используются только два из 5 спектральных каналов. Они имеют “ухудшенную” разрешающую способность (4км/пкс) и передаются в двух полустроках с различным содержанием (канал А и B) – т.е. осуществляется временное мультиплексирование. Каждый из каналов имеет собственные синхронизирующие сигналы (7 импульсов частотой 1040 Гц для канала A и 7 импульсов частотой 832 Гц для канала B). Эти две полустроки передают изображения различных спектральных областей. Частота передачи - 120 строк в минуту, то есть две полустроки каждую четверть секунды. [7]. Пример полного кадра приведен на рис. 1.

 

 

Рисунок 1 – Примеры изображений с метеоспутника

 

Подробное описание протокола передачи данных APT (Automatic Picture Transmission) можно найти на сайте [2]. Мы же рассмотрим краткие общие сведения. В табл. 1 приведены частотные диапазоны спектральных каналов.

 

Таблица 1– Спектральные каналы радиометра

Канал Спектральный диапазон
1 0.58... 0.68 мкм
2 0.725... 1.1 мкм
3 3.55... 3.93 мкм
4 10.3... 11.3 мкм
5 11.5... 12.5 мкм

 

Каналы 1 и 2 показывают землю в отраженном солнечном свете. Они подходят для наблюдения облаков, границ земли/воды, особенностей ландшафта и льда. Каналы 4 и 5 измеряют излучение поверхности земли непосредственно. Эти каналы подходят для оценки температур и наблюдения облаков, особенно ночью. Канал 3 находится в спектральном "промежутке" между отраженной солнечной лучевой и земной собственной радиацией. Этот канал чувствителен к критическим источникам теплоты типа пожаров.

Обычно каналы 2 (VIS) и 4 (IR) передаются днем, а каналы 3 (mIR) и 4 (IR) вечером и ночью. Программы декодеры используют оба канала, чтобы генерировать цветные изображения.

Передатчик УКВ-диапазона имеет выходную мощность 5 Вт и работает на частоте 137.48 или 138 МГц. Передача информации осуществляется постоянно по протоколу APT. Выбор одной из двух возможных частот передачи осуществляется таким образом, чтобы избежать взаимного влияния сигналов, передаваемых с двух различных спутников NOAA, одновременно находящихся в зоне радиовидимости наземной станции.

 

Таблица 2 – Значение основных параметров радиолинии

Основные параметры радиолинии Значение параметра
Частота несущей 137 - 138 МГц
Относительная стабильность частоты ±2• 10-5
Поляризация передающей антенны Круговая правосторонняя
Коэффициент усиления антенны в направлении в надир 3.7 дБ
в направлении 63° от надира -0.5 дБ
ЭИИМ в направлении 63° от надира 37.2дБмВт
Мощность передатчика 37.4дБмВт(5 Вт)

 

После синхронизации следует метка длительностью 11,3 мс, представляющая излучение свободного пространства для выбранной спектральной области. Метка будет темной для видимых каналов и яркой для инфракрасных каналов(1 и 2), как показано на рисунке 2. Сгенерированный из этих меток столбец прерывается минутными маркерами (4 горизонтальные полосы: 2 черные и 2 белые).

 

Рисунок 2 – Пример изображения после синхронизации

 

На противоположной стороне изображения находятся данные телеметрии, представленные на рисунке 3.

 

Рисунок 3 – Изображение с данными телеметрии

 

       Данные телеметрии состоят из:

1) индекс модуляции 10.6 % (высокая температура)

2) индекс модуляции 21.5 %

3) индекс модуляции 32.4 %

4) индекс модуляции 43.4 %

5) индекс модуляции 54.2 %

6) индекс модуляции 65.2 %

7) индекс модуляции 78.0 %

8) индекс модуляции 87.0 % (низкая температура)

9) индекс модуляции 0 % (нулевая ссылка, самая низкая амплитуда)

10) температурный датчик 1

11) температурный датчик 2

12) температурный датчик 3

13) температурный датчик 4

14) коррекция температуры

15) обратное сканирование

16) клин идентификации канала (1 – 5 канал AVHRR).

Таким образом, картинка состоит из восьми градаций яркости. Каждому уровню яркости соответствует определённая температура. Чем ярче участок, тем он холоднее (облака, снег, лёд и т.д.). Каждая строка сообщения состоит из 2080 пикселей, состав которых представлен в таблице 3.

 

 

Таблица 3 – Состав каждой строки изображения

Длительность (Т=1/4160) Содержание
39*Т синхронизация (1040 Гц) канал А
47*Т метка длительностью 11,3 мс/минутные маркеры
909*Т видео данные канала A
45*Т данные телеметрии
39*Т синхронизация (832 Гц) канал В
47*Т метка длительностью 11,3 мс /минутные маркеры
909*Т видео данные канала B
45*Т данные телеметрии
2080*Т общее количество

 

Данными телеметрии и изображением модулируют по амплитуде тон с частотой 2400Гц. До модулятора используется 3 полосный ФНЧ Баттерворта-Томсона с частотой среза 2,4 кГц. Затем этим промодулированным по амплитуде тоном модулируют по частоте несущую частоту передатчика. Девиация частоты составляет +/-17кГц.

Каждый из каналов имеет собственные синхронизирующие сигналы 7 импульсов частотой 1040 Гц для канала A и 7 импульсов частотой 832 Гц для канала B (рис. 4).

 

Рисунок 4 – Синхроимпульсы канала А и В

 

В каждой строке содержится 2080 слов. Кадр содержит 128 строк. Частота передачи - 120 строк в минуту, один кадр передается 64 секунды (рис. 5). Сравните структуру, изображенную на рис. 5 с реальным снимком, показанным на рис. 1.

 

Рисунок 5 – Структура кадра APT протокола

     

Детектирование синхроимпульсов в канале APT

       Пусть мы имеем АМ модулированный сигнал. Поднесущая частота (в данном случае 2400Гц) амплитудно модулирована информационным сообщением (само изображение, данные телеметрии, синхроимпульсы и др.). Для того, чтобы получить передаваемое по каналу связи изображение необходимо детектировать (определить положение) синхроимпульсы, так как именно с них начинается каждая строка изображения (рис. 6). Вначале необходимо демодулировать исходный сигнал – “убрать” поднесущую частоту, выделить только информационный сигнал. На рис. 6 приведена схема простейшего амплитудного детектора

 

Рисунок 6 – Простейший амплитудный детектор

 

       Следующий программный код реализует ФНЧ в MatLab в виде эллиптического фильтра (параметры: порядок – 9, коэффициент пульсаций в области пропускания – 1 дБ, коэффициент затухания в области подавления – 50 дБ, частота среза - 2300/(Fs/2) ). Частота среза может принимать значения от 0 до 1 (1 – частота, равная половине частоты дискретизации). Функция freqz – здесь не обязательна, она позволяет посмотреть АЧХ и ФЧХ передаточной характеристики фильтра.

 

% Рассчитываем эллиптический фильтр

[B_coef, A_coef] = ellip(9, 1, 50, 2300/(Fs/2) ); 

% Строим АЧХ и ФЧХ фильтра (необязательно)

Figure

Freqz(B_coef,A_coef,128,Fs)

   % Фильтруем сигнал S_test

S_test = filter(B_coef,A_coef,S_test); 

 

Сам процесс детектирования заключается в вычислении некоего критерия сходства между фрагментами принятого сигнала (обозначим ПС) с известными смоделированными “шаблонами” синхроимпульсов ШСИ (моделирование синхроимпульсов было рассмотрено в предыдущей лабораторной работе). При этом “шаблон” ШСИ последовательно сравнивается со всеми возможными фрагментами ПС, равными ему по размеру. В качестве критерия сходства будем использовать нормированный корреляционный алгоритм (normalized cross correlation - NCC). Другие названия – линейный коэффициент корреляции или коэффициент корреляции Пирсона.

Нормированный корреляционный алгоритм определяется как

 

,                         (2)

 

где  и  соответственно отсчеты с индексами  и  центрированных и нормированных фрагментов ШСИ и ПС, т.е.

 

,                        (2)

 

    - мат. ожидание и дисперсия ШСИ;                                                 

    - мат. ожидание и дисперсия фрагмента ПС, совмещаемого с ШСИ (зависит от сдвига ).    

Специально реализовывать этот алгоритм нет необходимости, так как в MatLab существует готовая функция normxcorr2, реализующая нормированный корреляционный алгоритм.

 

Формирование изображения

Пусть у нас имеется массив индексов положения синхроимпульсов. Необходимо получить передаваемое изображение. Может случиться, что будут детектированы ложные импульсы, а истинные могут быть пропущены. Истинность обнаружения может быть проверена из условия, что синхроимпульсы следуют с интервалом 0.5с. В данной учебной работе ограничимся тем, что исключим найденные индексы, если расстояние между ними и предыдущими индексами существенно меньше 0.5 с (1 сек – 11025 отсчетов). Естественно такой подход далек от совершенства, например, никак не решается проблема пропуска истинных синхроимпульсов. Для улучшения качества декодирования нужно использовать более сложные алгоритмы

Далее приведен программный код, где исходные параметры (которые должны быть предварительно рассчитаны): Async_detection – массив значений рассчитанной нормированной корреляционной функции после сравнения с порогом обнаружения. Элементы, которые оказались больше порога – равны 1, а остальные - 0. Порог обнаружения можно определить экспериментально (если увеличить масштаб нормированной корреляционной функции –  хорошо видны отсчеты, соответствующие синхроимпульсам в принятом сигнале);len_sync– количество отсчетов в “шаблоне” синхроимпульсов (syncA или syncB).

 

index_Async = find(Async_detection); % номера отсчетов начала syncA

diff_index = diff(index_Async);   % интервалы между syncA (в отсчетах)

Num_one_string = ceil(0.5/dt); % количество отсчетов в одной строке (0.5 сек)

false_pattern_index = logical([1;diff_index<Num_one_string-500]);

index_Async(false_pattern_index)=[]; % удаляем детектированные позиции синхро-

% импульсов, если расстояние существенно меньше 0.5 сек

% удаляем точки для которых невозможно выделить строку из сигнала S_test

index_Async(index_Async+Num_one_string-1 > N_of_t_points) = [];

num_detect_pulses = length(index_Async); % кол-во детектированных синхр-сов

result_image = zeros(num_detect_pulses, Num_one_string); % инициализация

for k=1:num_detect_pulses         % "раскладываем" вектор в матрицу

result_image(k,1:Num_one_string)=S_test( index_Async(k):...

   index_Async(k) + Num_one_string-1);

End

% если необходимо - изображение можно перевернуть

result_image=flipud(result_image); % переворачиваем изображение по вертикали

result_image=fliplr(result_image); % переворачиваем изображение по горизонтали

Figure

imshow(result_image,[])

 

 

Используемые MatLab функции

Функция wavread –загружает WAVE (.wav) файлы

Формат вызова: [y,Fs,bits] = wavread('filename'),

где y – набор амплитудных значений сигнала;

Fs – частота дискретизации (Гц);

bits – количество бит на отсчет.

 

Функция normxcorr2– нормированная корреляция

Формат вызова: c = normxcorr2(template,a)

где template – “шаблон”;

a – сигнал, который больше по размеру, чем template.

Порядок выполнения работы

1. Изучить структуру сигнала, передаваемого по APT каналу спутников NOAA.

2. Разработать алгоритм детектирования синхроимпульсов канала A (нечетные подгруппы) и B (четные подгруппы);

2.1. Считать тестовый файл “090729 1428 noaa-18 8bit.wav” с помощью функции wavread (пункт 1.4). Сформировать тестовый сигнал  длительностью 400с (интервал дискретизации рассчитать, используя значение частоты дискретизации – выходной параметр функции wavread).

2.2. Создать функцию, формирующую опорные синхроимпульсы каналов A/B. Опорный синхроимпульс имеет следующий вид:

 

,

,

 

где  и  - огибающие синхроимпульсов (Рис. 4, моделировались в предыдущей работе, проще всего с помощью функции square). Частота дискретизации сигнала, , выбирается равной частоте дискретизации тестового сигнала. Длительность синхроимпульсов составляет 39 T (сек.), где Т – 1/4160 (сек.).

 

2.3. Выполнить детектирование синхроимпульсов в тестовом сигнале используя нормированный корреляционный алгоритм (функция normxcorr2- см. подраздел 1.2).

3 Выполнить обработку тестового сигнала и построить метеоизображение (для этого можно использовать программный код, приведенный в подразделе 1.3).

4 Построить графики:

- обрабатываемого сигнала (длиной 400сек) до АМ демодуляции;

- отдельно построить синхроимпульсы syncA (или syncB в зависимости от варианта) до АМ демодуляции;

         Здесь и далее (где необходимо) использовать увеличение масштаба  (значок на панели инструментов окна Figure)

 

- обрабатываемого сигнала (длиной 400сек) после АМ демодуляции;

- отдельно построить синхроимпульсы syncA (или syncB) после АМ демодуляции;

- график “шаблона” синхроимпульсов syncA (или syncB) − с которым вычисляется нормированная корреляция обрабатываемого сигнала;

- нормированная корреляционная функция;

- нормированная корреляционная функция после сравнения с порогом детектирования синхроимпульсов.

 

Содержание отчета

1. Титульный лист;

2. Задание (кратко);

3. Код программы (вместе с кодом построения графиков) с комментариями, поясняющими основные этапы алгоритма;

4. Графики, построенные в результате выполнения лабораторной работы; Результат декодирования (изображение).

5. Выводы.

 

Контрольные вопросы

 

1. Из каких спутников состоит спутниковая система NOAA?

2. В каких форматах спутники NOAA передают данные?

3. Какие спектральные каналы используются в формате APT передачи данных?

4. Опишите структуру передаваемого кадра в формате APT.

5. Опишите структуру синхроимпульсов в формате APT.

6.  Какие виды модуляции используются при передаче данных в формате APT?

7. Опишите один из вариантов амплитудного детектора.

8. Запишите выражение для нормированного корреляционного алгоритма. Каким преимуществом он обладает по сравнению с обычным корреляционным алгоритмом?

9. С каким интервалом следуют синхроимпульсы в формате APT ?

10. На полученном декодированном изображении покажите из каких частей оно состоит.

 


Дата добавления: 2018-04-05; просмотров: 723; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!