Имитационные модели беспроводных сетей в структуре программно-аппаратного комплекса для оценки качества видеопотока

ЭЛЕКТРОНИКА, РАДИОТЕХНИКА И СВЯЗЬ

УДК 681.3.07

Ю.А. ИВАНОВ, ВС. ПРЯНИКОВ

ИМИТАЦИОННЫЕ МОДЕЛИ БЕСПРОВОДНЫХ СЕТЕЙ В СТРУКТУРЕ ПРОГРАММНО-АППАРАТНОГО КОМПЛЕКСА ДЛЯ ОЦЕНКИ КАЧЕСТВА ВИДЕОПОТОКА

Ключевые слова: потоковое видео, кодеры, декодеры, качество видео, видео-трассы, MSE, PSNR.

Представлены имитационные модели беспроводных сетей в структуре программноаппаратного комплекса, предназначенного для передачи и дальнейшей оценки качества, а также параметры и функциональные возможности данного комплекса.

Yu.A. IVANOV, V.S. PRYANIKOV SIMULATION MODELS OF WIRELESS NETWORKS AS A PART OF A HARDWARE-SOFTWARE COMPLEX ARCHITECTURE FOR VIDEO QUALITY ESTIMATION Key words: video streaming, encoder, decoder, video streaming quality, trace file, MSE, PSNR.

Simulation models of wireless networks as a part of a hardware-software complex for transmittion and quality estimation are shown. Parameters and functional features of the complex are described.

При передаче видео по каналам связи важно обеспечить пользователю необходимый уровень воспринимаемого качества, что обеспечивается выбором сети и параметров кодирования. Благодаря повышенной компрессии новейший стандарт видеокодирования H.264/AVC позволяет транслировать видео даже в низкоскоростных сетях без заметного ухудшения качества, что позволяет использовать этот стандарт для видеоприложений в беспроводных сетях [1]. Однако при трансляции по беспроводным сетям применение более совершенных методов кодирования не позволяет в полной мере избежать появления характерных искажений видео.

В данной статье рассматривается оценка качества видео, передаваемой по имитируемой сети беспроводной связи, с помощью набора инструментов, имеющего модульную структуру.

Для проведения оценки качества необходимо иметь данные видеофайла до передачи по сети (на передающей стороне) и после приема из сети (на приемной стороне). На передающей стороне необходимыми данными являются: исходное некодированное видео в формате YUV, закодированное видео в формате MPEG-4, а также время отправки и тип каждого отправленного в сеть пакета.

На приемной стороне необходимо получить следующие данные: время приема и тип каждого принятого из сети пакета, закодированное видео (возможно, искаженное) в формате MPEG-4 и декодированное видео в формате YUV для отображения.

Оценка данных производится при сравнении передаваемой информации с принятой. На практике несжатое видео может быть очень большого объема, например 20 Гб для 30-минутного видео, рассчитанного для просмотра на маленьком дисплее карманного компьютера. Поэтому целесообразно передавать только дополнительную информацию в виде файла с записью времени получения каждого пакета. Это удобней, чем передавать передатчику полный (искаженный и декодированный) видеофайл с приемной стороны.

Обработка данных осуществляется в три этапа.

На первом этапе анализируются время приема и отправки каждого пакета с обеих сторон и его тип. В результате появляется запись о типе кадра и времени между переданным и принятым пакетами. Кроме того, файл искаженного видео на приемной стороне восстанавливается путем использования оригинального закодированного видеофайла и информации о потерянных пакетах. После чего видео декодируется для отображения зрителю. На этом этапе возникает обычная проблема оценки качества видео. Показатели качества видео всегда требуют сравнения принятого (возможно, искаженного) и соответствующего исходного кадра. В случае полной потери кадра отсутствует необходимая синхронизация кадров до и после передачи по сети.

На втором этапе обработки эта проблема решается на основе анализа информации о потерях. Синхронизация кадров восстанавливается путем добавления последнего отображенного кадра вместо потерянных. Это позволяет провести дальнейшую покадровую оценку качества.

На третьем этапе для анализа качества декодированного видео используются восстановленный и исходный видеофайл.

На рис. 1 представлена структурная схема программно-аппаратного комплекса (ПАК) для оценки качества потокового видео. В схеме отражено взаимодействие между модулями при передаче цифрового видео от источника через сеть связи к зрителю.

Рис. 1. Функциональная схема ПАК

Взаимодействие между модулями ПАК и сетью осуществляется с помощью трасс, содержащих все необходимые данные. Таким образом, для функционирования ПАК необходимы две трассы, исходный видеофайл и декодер. Сеть является просто «черным ящиком» и вводит задержку, потери и, возможно, переупорядочивает пакеты. В качестве имитатора сети выступает программная среда N8-2 [3]. Более подробное описание функциональных модулей ПАК представлено в [2].

Представление исходных данных и подготовка к имитации. Кодирование видеоизображения начинается с преобразования цветового простран-

ства из RGB в YUV (известное также под называнием YCrCb). В типичных изображениях в формате RGB имеется существенная корреляция между цветными компонентами и с точки зрения сжатия этот формат является заведомо избыточным. В стандартах телевизионного вещания используется другое представление изображений, при котором также применяются три компоненты сигнала, но при этом эти компоненты не коррелированы друг с другом. Компоненты R, G, B преобразуются в яркостную компоненту Y и две цветоразностные компоненты U и V, формата YUV. Поскольку большая информативность сохраняется в яркостной компоненте, будет потеряно мало информации, если выполнить прореживание компонент U и V.

В качестве исходных тестовых видеопоследовательностей возможно использовать стандартные тестовые видеоклипы в формате YUV, доступные в [4] и рекомендованные для проведения тестовых испытаний организацией 1Ти [5]. Однако данные видеоклипы ограничены временем воспроизведения вследствие большого размера видеофайла. К сожалению, короткие видеофайлы не позволяют оценить изменение качества при долговременной трансляции видео и получить обширное количество экспериментальных данных. Таким образом, с помощью специального программного обеспечения было записано собственное видео YUV формата (send.yuv) длительностью 30 мин, с разрешением 640x480 и скоростью кадров 25 кадр/с.

Кодирование исходного видеофайла в формат H.264 (файл видеопотока) производится с помощью программы x264.exe следующим образом:

x264.exe -I 30 -B 1150 -fps 25 -o send.264 send.yuv 640x480 , где -I 30 - максимальный размер GOP; -B 1150 - битрейт Кбит/с; -fps 25 -скорость видеокадров; -o send.264 - файл, создаваемый программой; send.yuv 640x480 - исходный YUV-файл и его разрешение.

Следующая программа упаковывает видеопоток в МР4-контейнеры для дальнейшей транспортировки по протоколу UDP (от англ. User Datagram Protocol).

MP4box -hint -mtu 1024 -fps 30 -add send.264 send.mp4 , где -hint - опция указывает файлу на UDP; -mtu 1024 - максимальный размер пакета в байтах; -fps 25 - частота кадров; send.264 - файл видеопотока, который необходимо кодировать; send.mp4 - закодированный MP4-файл. После кодирования исходного видео получают MP4-файл.

Поскольку необходимо оценить качество видео, передаваемого через сеть, то нужно создать «запасной» декодированный YUV файл из только что созданного mpeg-4 файла, чтобы по нему оценивать качество видео, передаваемого по сети, исключая влияние кодека. Для этого используется программа ffmpeg.exe следующим образом:

ffmpeg.exe -I send.mp4 S.send.yuv , где -I - опция для введения декодируемого файла send.mp4; S.send.yuv - имя получаемого в итоге файла. Таким образом, возможно оценить влияние беспроводной сети на полученное визуальное качество, исключая при этом потери при кодировании и декодировании.

Чтобы иметь возможность производить имитацию, необходимо создать файл видеотрассы, который содержит информацию о номере кадра его типе,

размере и количестве сегментов, при котором кадр разделяется на пакеты. Генерация видеотрассы производится при передаче MP4 файла через протокол RTP/UDP на приемную сторону при помощи следующей программы: mp4trace.exe -f -s 192.168.215.13 12346.mp4 > send.st , где -f - режим кадров; -s - опция, включающая порт; 192.168.215.1 12346 - IP-адрес и порт хоста. В файле видеотрассы send.st (табл. 1) содержатся следующие данные: номер кадра, тип кадра, размер и число сегментов при разделении кадра на пакеты.

Данная видеотрасса подается на вход имитатора сети, где и происходят передача и прием видеоданных.

В результате передачи видео по сети необходимо получить файлы трасс передачи (табл. 2) и приема (табл. 3), которые содержат в себе следующие данные пакетов: время передачи/приема, уникальный идентификатор id (от англ. identifiers) и размер. Эти две трассы используются для определения потерянных в сети пакетов. В итоге будут получены файлы sd (файл отправленных пакетов) и rd (файл полученных пакетов), в которых содержится подробная информация о передаваемых пакетах и их времени со стороны отправителя и со стороны получателя.

Установка моделирования и имитация передачи по беспроводной сети. ПАК позволяет производить имитацию передачи видеоданных по беспроводной сети тремя возможными способами:

1. Имитация битовой ошибки. Имитация передачи по беспроводному каналу с моделью «аддитивного белого гауссовского шума» AWGN (от англ. Adaptive White Gaussian Noise) или моделью Гильберта-Эллиота GE (от англ. Gilbert-Elliott). При имитации определенный бит в последовательности искажается (инвертируется) с заданной вероятностью. Используемое значение вероятности описывают показателем количества ошибочных битов BER (от англ. Bit Error Rate). Генератор ошибок eg.exe производит искажение файла трассы передачи с определенной вероятностью и моделью распределения ошибок следующим образом: eg.exe sd rd send.st AWGN 250000 , где sd - файл отправленных пакетов; rd - файл, генерируемый программой, является файлом полученных пакетов; send.st - файл видеотрассы; AWGN -

Таблица 1

Формат файла видеотрассы

Номер кадра Тип кадра Размер кадра Число UDP- пакетов Время передачи, мс

1 I 21250 21 0.036

2 P 8987 9 0.113

З B 492 1 0.113

4 P 8З27 9 0.176

5 B 447 1 0.176

6 P 8272 9 0.363

7 B 476 1 0.239

Таблица 2

Формат файла трассы передачи

Время передачи, с Id пакета Размер нагрузки

0.1ЗЗЗЗ2 id 10 udp 155

0.166665 id 11 udp 158

0.199998 id 12 udp 244

0.2ЗЗЗЗ1 id 1З udp 14

0.266664 id 14 udp 14

0.299997 id 15 udp 1000

Таблица 3

Формат файла трассы приема

Время передачи, с Id пакета Размер нагрузки

0.19З520 id 11 udp 158

0.21З765 id 12 udp 244

0.245254 id 1З udp 14

0.З6988З id 14 udp 14

0.З20516 id 15 udp 1000

0.ЗЗ0418 id 21 udp1000

модель ошибок; 250 000 - поток битовых ошибок. Таким образом, генерируется файл трассы приема с указанием потерянных пакетов.

2. Имитация пакетной ошибки. Можно производить ручное удаление ИБР пакетов из файла трассы приема. Это позволяет исследовать работу кодека и проанализировать изменение визуального качества при потере пакетов. При этом приемный и неискаженный файл можно получить при передаче по «идеальному» каналу с неограниченной полосой пропускания и отсутствием задержки и затем вручную удалить определенные пакеты.

3. Имитация ошибок, возникающих при передаче по реальным сетям. Моделирование ошибок, возникающих в реальных сетях, можно изучить с помощью программной среды N8-2. Один из возможных вариантов имитации сети стандарта 1БББ 802.11Ь показан на рис. 1.

Рис. 2. Топология сети

Особенностью представленной имитации беспроводной сети является оценка передачи видеопотока без и с учетом влияния фонового трафика. Используются два типа фонового трафика - FTP и CBR. FTP трафик передается по TCP протоколу со скоростью передачи данных 512 Кб/с. CBR трафик передается по UDP протоколу со скоростью передачи данных 256 Кб/с. Пропускная способность между видеосервером и базовой станцией равна 2 Мб/с и с задержкой 10 мс.

Интеграция имитируемой сети в ПАК осуществляется с помощью агентов. Агент MyTrafficTrace используется для вычисления типа и размера кадра видеотрассы, генерируемого программой mp4trace. Кроме того, этот агент разбивает видеокадры на пакеты и отправляет их на уровень UDP в соответствующее время, согласно параметрам настройки пользователя, определенным при моделировании. По существу, MyUDP является агентом UDP. Этот объект записывает в файл отправляемой трассы время передачи каждого пакета, id пакета и размер полезной нагрузки пакета (см. табл. 4).

Агент MyUDPSink - агент приема пакетов фрагментированных кадров, отправленных MyUDP. Этот агент записывает время, id пакета и размер полезной нагрузки каждого полученного пакета в файл трассы приема (см. табл. 5).

Таким образом, независимо от типа проведенной имитации на основе полученных данных о времени отправки и принятия пакетов производится вычисление потерь пакета/кадра и задержки/джиттера. Для вычисления этих данных необходимо три трассы: видеотрасса, трасса приема и трасса передачи.

Таблица 4

Формат файла трассы передачи

Время передачи, с Id пакета Размер нагрузки

0.133332 id 10 udp 155

0.166665 id 11 udp 158

0.199998 id 12 udp 244

0.233331 id 13 udp 14

0.266664 id 14 udp 14

0.299997 id 15 udp 1000

Таблица 5

Формат файла трассы приема

Время передачи, с Id пакета Размер нагрузки

0.193520 id 11 udp 158

0.213765 id 12 udp 244

0.245254 id 13 udp 14

0.369883 id 14 udp 14

0.320516 id 15 udp 1000

0.330418 id 21 udp 1000

Вычисление потерь и оценка полученного качества видео. Вычислить потери при рассмотрении доступности уникального id пакета весьма легко.

С помощью видеотрассы каждому пакету назначается тип. Каждый пакет этого типа, не включенный в трассу приемника, считается потерянным. Потеря кадра вычисляется при рассмотрении любого кадра, если один из его пакетов был потерян. Если первый пакет кадра теряется, то кадр считается потерянным, поскольку видеодекодер не сможет декодировать кадр, у которого отсутствует первая часть. Оценку полученных трасс производит программа etmp4.exe следующим образом:

etmp4 sd rd send.st W.send.mp4 , где sd - файл отправленных пакетов, rd - файл полученных пакетов, send.st -файл видеотрассы, W.send.mp4 - mp4 файл с данным видео, необходим для восстановления, R.send.mp4 - восстановленный видеофайл. Далее восстановленный файл необходимо декодировать в yuv формат с помощью программы ffmpeg.exe -ffmpeg -I W.send.mp4 S1.send.yuv .

Существуют два типа методов оценки качества цифрового видео, а именно: субъективные и объективные. Субъективная оценка качества всегда опирается на впечатление зрителя, но является чрезвычайно дорогостоящей, очень трудоемкой и требует специального оборудования. Традиционно субъективное качество видео определяется путем экспертной оценки и подсчетом среднего балла MOS, имеющего значения от 1 до 5 (шкала ITU), где 1 - наихудшее, а 5 - наилучшее полученное качество видео (табл. 6).

Объективное качество видео обычно измеряется пиковым отношением сигнала к шуму PSNR. Показатель PSNR является традиционной метрикой, позволяющей сравнить любые два изображения.

Оценка объективного качества полученного видеопотока в ПАК вычисляется модулем PSNR с помощью программы psnr.exe:

psnr.exe 640 480 420 send.yuv send_err.yuv > psnr .

Результатом будут Таблица 6

Таблица оценки качества видеоизображения ITU-R

значения PSNR, вычисленные между исходными и искаженными кадрами (рис. 5).

Значения М08 вычисляются из показателя PSNR согласно табл. 6.

PSNR, дБ Зна- чение MOS Качество Ухудшение изображения

> 37 5 прекрасное незаметно

31 - 37 4 хорошее заметно, но не раздражает

25 - 31 3 удовлетворительное слегка раздражает

20 - 25 2 плохо раздражает

< 20 1 очень плохое сильно раздражает

Анализ полученных результатов. В результате проведенния имитаций было оценено воздействие различных типов ошибок и условий передачи по сети на полученное качество видео.

На рис. 3 представлены значения субъективного и объективного качества при передаче видеопотока по каналу AWGN с различными значениями BER. Выявлены значения минимальной и максимальной битовой ошибки с точки зрения влияния на воспринимаемое качество видеопотока.

а б

Рис. 3. Значения показателей качества видеопоследовательности, полученные при имитации беспроводного канала с различными значениями BER: а - девиация качества по средним значения Р81Ж; б - градация качества по значениям М08

На рис. 4 представлены результаты оценки качества полученного видео при потере пакета. Показаны гистограммы распределения значения PSNR.

| 10000 §  5000

к а К В ^ 0 ^гГПтП-1-п-^+ 1гтъ-,

РЭМ!, дБ а

50 45 40 35 30 25 20 15 10

РЗЖ, дБ

б

^^Т1Тг1-П-1ТГ1-г-у

4-гт-г-1-Г1>Птт^^

40 35 30 25 20 15 10

рзмг.дБ

в

9 о

40 35 30 25

РЭШ, дБ

г

Ж

рэшг, дБ д

Процент потерянных пакетов

е

Рис. 4. Значения показателей качества видеопоследовательности, полученные при имитации беспроводного канала с различным числом потерянных пакетов: а - при 1%; б - при 2%; в - при 3%; г - при 4%; д - при 5%; е - девиация качества по средним значения Р8КЯ

На рис. 5 продемонстрированы влияние фонового трафика, включенного в сеть, и изменение вследствие этого качества видеопотока. Показано, что включение фонового трафика в сеть вносит дополнительные искажение в визуальное качество видео. Различные параметры сети, источников FTP и CBR трафика а также их комбинации определенным образом влияют на визуальное качество.

1---------------1---------------1--------------1---------------1--------------1---------------Г

nt_____________I___________1____________I___________I____________I____________I___________I____________I___________I____________

О 200 400 600 800 1000 1200 1400 1Б00 1800 2000

Номер кадра

б

в

Рис. 5. Значения показателя PSNR видеоноследовательности, полученные нри имитации беспроводного канала с различным числом потерянных пакетов: а - без фонового трафика; б - при с фоновым трафиком FTP; в - с фоновым трафиком FTP и CBR

Таким образом, программно-аппаратный комплекс позволяет проводить имитацию и проверку качества видеопотока при передаче по беспроводным сетям с различными характеристиками. Кроме того ПАК позволяет проводить оценку влияния определенных типов ошибок, возникающих в реальных сетях, на визуальное качество транслируемого видео. Представлены основные способы объективной и субъективной оценки качества.

Литература

1. Иванов Ю.А. Методика оценки качества декодирования видеостандарта H.264/AVC/SVC в беспроводных сетях / ЮА. Иванов, С.А. Лукьянцев // Электротехнические и информационные комплексы и системы. 2009. Т. 5, № 4. С. 35-48.

2. Шелухин О.И. Оценка качества передачи потокового видео в телекоммуникационных сетях с помощью программно-аннаратных средств / О.И. Шелухин, Ю.А. Иванов // Электротехнические и информационные комплексы и системы. 2009. Т. 5. N° 4. С.48-56.

3. http://www. i si. edu/nsnam/ns/ns-documentation .html.

4. http://trace.eas.asu.edu.

5. ITU-R Recommendation BT.802.-1 Test pictures and sequences for subjective assessments of digital codecs converging signal produced according to Recommendation ITU-R BT.601.

ИВАНОВ ЮРИИ АЛЕКСЕЕВИЧ - аспирант кафедры радиотехники и радиотехнических систем, Чувашский государственный университет, Россия, Чебоксары (yurasic@bk.ru).

IVANOV YURIY ALEKSEEVICH - post-graduate student of Radiotechnics and Radio Technic Systems Department, Chuvash State University, Russia, Cheboksary.

ПРЯНИКОВ ВИССАРИОН СЕМЕНОВИЧ - доктор технических наук, профессор, заведующий кафедрой радиотехники и радиотехнических систем, Чувашский государственный университет, Россия, Чебоксары (pryanlkoff@list.ru).

PRYANIKOV VIsSaRION SEMENOVICH - doctor of technical sciences, professor, Radiotechnics and Radio Technic Systems Department Head, Chuvash State University, Russia, Cheboksary.

УДК 681.3.07

Ю.А. ИВАНОВ

ОЦЕНКА КАЧЕСТВА ПОТОКОВОГО ВИДЕОСТАНДАРТА H.264 /AVC ПРИ ПЕРЕДАЧЕ В НЕСТАБИЛЬНЫХ КАНАЛАХ СВЯЗИ ШИРОКОПОЛОСНЫХ СЕТЕЙ БЕСПРОВОДНОГО ДОСТУПА 4G

Ключевые слова: MPEG, потоковое видео, кодеры, декодеры, качество видео, видеотрассы,

MSE, PSNR.

Проанализировано влияние уровня битовых ошибок на качество видеопоследовательностей на приемной стороне беспроводных телекоммуникаций. Определен уровень ошибок, приводящий к неприемлемому качеству принимаемого видео. Показано, что специфические особенности кодирования видео в стандарте H.264/AVC приводят к возникновению группирования ошибок.

Yu.A. IVANOV

QUALITY ESTIMATION OF H.264/AVC VIDEO STREAM IN CASE OF TRANSMISSION THROUGH UNSTABLE DATA CHANNELS OF BROADBAND WIRELESS NETWORKS 4G Key words: MPEG, video streaming, encoder, decoder, video streaming quality, trace file, MSE, PSNR.

Influence of BER level on quality of received video sequences in wireless telecommunications is analyzed. BER level leading to unsatisfactory video quality is obtained. It is shown specific features of encoding of H.264/AVC standard results in additional grouping of errors.

Потоковый трафик - тип трафика, для которого характерны просмотр и (или) прослушивание информации по мере ее поступления в пользовательское (оконечное) оборудование. Передача потоковых сервисов по различным средам (системы беспроводного доступа, Интернет) - аудио и видео - становится все более популярной. Это стремительное распространение определяет новую сложную задачу по поддержанию качества обслуживания для каждого потока. Однако ошибки передачи могут серьезно воздействовать на качество потокового видео, поскольку сжатые данные очень чувствительны к этим ошибкам. Целью работы является исследование влияния ошибок на качество передачи потокового видео H.264/AVC в широкополосных системах беспроводного доступа последнего поколения 4G типа WiMAX или Wi-Fi.

Характеристика стандарта Н.264. В ходе создания и формализации нового процесса сжатия видео человечество шло к итоговому формату силами сразу нескольких организаций (ITU, ISO и т.д.), и потому новый стандарт имеет пять имен: H.264, MPEG-4 Part 10, AVC, H.26L, JVT. Использование нового кодирования возможно в самых разных системах передачи цифрового видео. Новейший стандарт H.264, так же как и более ранние версии MPEG-4, позволяет достичь высоких степеней сжатия за счет использования пространственной и временной избыточности в видеокадрах [3]. Таким образом, обработке подлежат только те элементы изображения, которые изменились по сравнению с аналогичными элементами предыдущего кадра. Однако применение более совершенных методов кодирования не позволяет в полной мере избежать появления характерных искажений видео при трансляции по различным сетям.