cessing video information, including neural network algorithms. The numerical results of running the algorithms on 16 ELcore-50 processors, developed by R&D Center «ELVEES», combined by NoC, are presented. It is shown that the performance in vector-stream processors is limited by the complexity of the memory access algorithm (the number of memory accesses as a function of the amount of input data).
Key words: video analytics, vector stream processor, system on a chip, network on a
chip.
Belyaev Andrey Aleksandrovich, doctor of technical sciences, head of scientific and technical department, bel@,elvees.com, Russia, Moscow, JSC SPC «ELVIS»
Yanakova Elena Sergeevna, doctor of technical sciences, leading researcher, helen@,elvees.com, Russia, Moscow, JSC SPC «ELVIS»
Tyurin Alexander Alexandrovich, lead developer, alex. tyurin1420@,gmail.com, Russia, Moscow, JSC «RAA «Spetstekhnika»
Macharadze Georgy Tamazievich, lead developer, gmacharadze@,elvees. com, Russia, Moscow, JSC SPC «ELVIS»
УДК 004.627
ПРИМЕНЕНИЕ ГИБРИДНОГО ПРЕОБРАЗОВАНИЯ В ВИДЕОКОДЕКЕ СТАНДАРТА HEVC
Т.Б. Доан, А.А. Тропченко
В этой статье предлагается гибридное преобразование, которое объединяет исходный DCT в HEVC и DCT-SQ с очень низким требуемым количеством операций. Результаты моделирования и реализации доказывают, что предлагаемая пара преобразований отличается снижением сложности по сравнению с исходным преобразованием в HEVC со средней потерей производительности на уровне искажения 3,69% для наихудшего случая.
Ключевые слова: HEVC, сжатие видеоданных, гибридный алгоритм, преобразование.
В связи с постоянно растущим спросом на видео высокой четкости, особенно для интеллектуальных портативных устройств, устройств безопасности и наблюдения, автомобильную промышленность и т.д., эффективная компрессия видео стала популярной областью исследований в последние несколько лет. Самый последний международный стандарт кодирования видео H.265 / HEVC (от англ. High Efficiency Video Coding) [1] был разработан с целью обеспечения удвоенной эффективности сжатия предыдущего стандарта H.264 / AVC (Advanced Video Coding) [2]. Для достижения этой эффективности было введено большое количество новых инструментов кодирования, таких как рекурсивная древовидная структура блоков кодирования, новые режимы внутрикадрового и межкадрового предсказания, блок преобразования с большими
263
размерами и т.д. Тем не менее, получающееся в результате улучшение с точки зрения сжатия видео происходит за счет увеличения сложности кодера примерно на 40...70% по сравнению с AVC [3, 4].
Одной из ключевых особенностей HEVC является преобразование переменного размера [5]. HEVC включает в себя четыре матрицы обратного преобразования размеров 4 х 4, 8х 8, 16Х16 и 32х 32 [6, 7], которые представляют собой целочисленные аппроксимации матрицы DCT-II (Discrete Cosine Transform) того же размера с целью сохранения структуры коэффициента DCT. Так же в HEVC применяется дополнительная матрица 4 Х 4 DST (Discrete Sine Transform) к остаточному блоку внутрикадрового предсказания размером 4 Х 4. Различные размеры единицы преобразования улучшают производительность сжатия, но также увеличивают сложность реализации. Результаты профилирования кодера и декодера HEVC показывают, что значительная часть времени кодирования (около четверти от общего количества в конфигурации «All-Intra») расходуется на преобразование и квантование [5].
Целью данной работы является изучение существующего базового преобразования в HEVC и предложение нового преобразования, которое объединяет исходное DCT в HEVC и DCT-SQ (DCT and Scalar Quantization). В результате, предложенное преобразование имеет факторизацию с очень низкой сложностью. Остальная часть статьи организована следующим образом: в разделе 2 мы обсуждаем оригинальное преобразование в HEVC. Предложенный метод объединения преобразований обсуждаются в разделе 3. Наконец, выводы представлены в разделе 4.
2. Базовое преобразование в HEVC. В подходе гибридного видео кодирования на основе блоков, преобразования применяются к остаточному сигналу, получающемуся в результате межкадрового или внутрикадрового прогнозирования. В кодере
остаточный сигнал кадра делится на квадратные блоки размером N Х N, где N = 2M и M является целым числом. Каждый остаточный блок затем вводится в двумерное прямое преобразование N Х N. Двумерное преобразование может быть реализовано как разделимое преобразование путем применения N -точечного одномерного преобразования к каждой строке и каждому столбцу в отдельности. Полученные в результате N Х N коэффициенты преобразования затем подвергаются квантованию для получения квантованных коэффициентов преобразования. В декодере квантованные коэффициенты преобразования затем деквантовываются. Наконец, двумерное разделенное обратное преобразование N Х N применяется к деквантованным коэффициентам преобразования, что приводит к остаточному блоку квантованных выборок, который затем добавляется к выборкам с внутренним или внешним предсказанием для получения восстановленного блока. Блок-схема видеокодека показана на рис. 1.
Рис. 1. Блочное гибридное видео кодирование. О - матрица преобразования
Как правило, матрицы прямого и обратного преобразования являются транспонированными друг для друга и предназначены для достижения реконструкции почти без потерь входного остаточного блока. В стандартах видео кодирования, таких как ИБУС, процесс деквантования и обратные преобразования задаются, в то время как прямые преобразования и процесс квантования выбираются исполнителем. В дальнейшем мы обсудим конструкцию и свойства базового БСТ преобразования в НЕУС в
264
dNj(2)
терминах матрицы прямого преобразования. Следует понимать, что обратные преобразования указаны в стандарте HEVC в качестве соответствующих транспонированных матриц.
Двумерный DCT (2D-DCT) используется в HEVC для уплотнения энергии. Будучи разделимым преобразованием, оно может быть вычислено двумя последовательными одномерными DCT (1D-DCT). Сначала 1D-DCT применяется к столбцам, а затем к строкам. N коэффициентов y = {y0, У\,---, yN-l) преобразования N -точечного 1D-DCT, примененного к входным выборкам x = {xg,xi,...,xn-i) могут быть выражены как
N-1
У/ = X XjdNj, (1)
j=0
где 0 < /, j < N — 1. Коэффициент DCT может быть определен как
N = p(2j +1)/.
2 N
где k = 1 и -s/2 для / = 0 и / > 0, соответственно. С точки зрения формы матричного произведения (1) можно записать в виде
У = Dn x,
где Dn представляет собой N -точечную матрицу DCT размером N X N.
1D обратное DCT (IDCT) может быть записано как
- п-1 nT
x = DN У = DN y.
Матрицы базовых преобразований в HEVC являются приближениями конечной точности матрицы DCT. Преимущество использования конечной точности в стандарте кодирования видео состоит в том, что в стандарте указано приближение к действительной матрице DCT, а не зависит от реализации. В HEVC вещественные элементы Dn округляются до ближайшего целого числа после умножения с постоянным значением. Следовательно, целое число DCT Cn можно записать как
Cn = Lconst X Dn 1,
где L*1 представляет операцию округления; const = 26+m2,m = log2 N .
Для значительного сокращения числа арифметических операций в HEVC используется алгоритм, называемый четно-нечетным разложением, который использует свойства симметрии и антисимметрии базисного вектора. На стороне аппаратной реализации это сокращение играет очень важную роль, т. к. чем меньше требуется операций, тем меньше требуется физических ресурсов.
3. Предложенное гибридное преобразование для HEVC. Для дальнейшего уменьшения общего количества арифметических операций процесса преобразования в HEVC, в этой работе предлагается гибридное преобразование, которое объединяет исходное преобразование в HEVC и преобразование со скалярным квантованием DCT-SQ (DCT and Scalar Quantization) [8] из-за его очень низкой сложности. Выходные коэффициенты выбранного 8-точечного преобразования были получены путем вычисления только действительной части первых восьми выходных коэффициентов 16-точечного дискретного преобразования Фурье DFT (Discrete Fourier Transform), разложенных по алгоритму Винограда [9].
Пусть восемь входных значений для 8-точечного DCT будут x[k], где k = 0,... ,7 . Шестнадцать входных значений для 16-точечного DFT определены как
f x[k] 0 < x < 7;
X [k ] = ^
[ x[15 - k] 8 < x < 15.
Восемь выходов 8-точечного DCT рассчитываются как
2C (n)Re7 [n]
У[п] = -
cos-
np 16
где С(0) = С(п) = 1 для остальных значений п. У[п] являются выходные значе-
ния 16-точечного ОБТ.
С использованием алгоритма Винограда можно пропустить расчеты для мнимых частей. Блок-схема для этого расчета показана на рис. 2. Значения констант «1,...,«5 приведены в табл. 1. Видно, что для этого преобразования требуются только пять умножений и двадцать девять сложений.
-умножение на -1
■©-■»16ReY[7] ;+)—»16ReY[3]
Рис. 2. Блок-схема предлагаемого 8-точечного преобразования
Значения констант
Таблица 1
a «2 «3 a4 «5
4p cos— 16 2p 6p cos--cos— 16 16 4p cos— 16 2p 6p cos--+ cos— 16 16 6p cos— 16
Для реализации предложенного преобразования в эталонное программное обеспечение HM, синусоидальные коэффициенты были увеличены на Nq битов и
I N I
округлены до ближайшего целого числа как a -2 q j.в этой работе Nq был выбран
равным 8. Для сравнения был использован ряд стандартных видеопоследовательностей с тремя конфигурациями All-Intra (AI-Main), Random-Access (RA-Main), Low-Delay (LB-Main) и четырьмя значениями QP (22, 27, 32, 37). Стоит отметить, что в данной работе обсуждалось только прямое преобразование, в то время как декодер реализует исходное преобразование HEVC, как указано в [5].
При замене исходного 8-точечного DCT предложенным преобразованием, количество умножений снижается с 22 до 5 (табл. 3), но различия по эффективности кодирования не очень очевидны для всех рассмотренных случаев (табл. 2).
Таблица 2
Сравнение предложенного алгоритма и HM-16.20 по эффективности
Разрешение видео All-Intra Random-Access Low-Delay
2560x1600 0,02 0,01 -
1920x1080 -0,01 0,00 -0,03
832x480 -0,03 0,00 -0,01
416x240 -0,03 0,00 -0,11
1280x720 -0,05 - 0,18
Среднее -0,02 0,00 0,01
Преобразования больших размеров N = 16 и 32 могут быть получены, расширив 8-точечное преобразование. В общем случае N -точечное преобразование получается парой N 2 -точечных преобразований и входным блоком сложения, состоящим из
N сложений. На рис. 3 (а) показана схема для общего случая, а расчет 16-точечного с использованием 8-точечного преобразования показан на рис. 3, б.
а
б
Рис. 3. Диаграмма для N -точечного преобразования (а), расчет 16-точечного с помощью 8-точечного преобразования
(б)
Используя данную схему разложения, количество операций, необходимых для процесса преобразования, т. е. вычислительная нагрузка существенно сокращается, особенно для больших размеров. Результаты сравнения приведены в табл. 3.
Количество требуемых арифметических ^ операций
Таблица 3
N HM-16.20 Предл. Сокращение, %
Сложение Умножение Сложение Умножение Сложение Умножение
8 28 22 29 5 -4 77
16 100 86 74 10 26 88
32 372 342 180 20 52 94
Предложенное преобразование реализовано для всех размеров от 8 до 32. Потеря производительности получается до 6,24% в худшем случае, потеря качества предложенного алгоритма составляет 0,065дБ по сравнению с НМ-16.20 (табл. 4). Кривые КО-зависимостей для тестовой видео последовательности «РагкБсепе» (категория В, разрешение 1920x1080) с разными конфигурациями представлены на рис. 4.
Таблица 4
Потери качества видео предлагаемого преобразования вразныгх конфигурациях ви-__деокодека по сравнению с НМ-16.20_
Разрешение видео All-Intra Random-Access Low-Delay
BD-PSNR, дБ BD-Rate, % BD-PSNR, дБ BD-Rate, % BD-PSNR, дБ BD-Rate, %
2560x1600 0,067 4,16 0,037 0,03 - -
1920x1080 0,079 6,24 0,083 0,09 0,059 5,24
832x480 0,030 1,27 0,018 0,01 0,030 1,47
416x240 0,030 1,47 0,022 0,01 0,021 1,25
1280x720 0,118 5,31 - - 0,102 4,92
Среднее 0,065 3,69 0,040 0,04 0,053 3,22
Конфигурация: Al-Main Конфигурация: RA-Main Конфигурация: LB-Main
Рис. 4. RD-зависимости последовательности «ParkScene»
4. Заключение. В этой статье мы предложили гибридное преобразование для HEVC, которое использует прямое DCT-SQ для блоков размеров от 8 до 32. В результате количество арифметических операций уменьшается до 92% и 52% для умножений и сложений соответственно. Сравнения были сделаны для случаев, когда было заменено только 8-точечныое преобразование, и при замене размеров от 8 до 32 предложенным. По сравнению с исходным преобразованием в HEVC, данное предложенное гибридное преобразование дает потери кодирования до 6,24% для различных тестовых последовательностей, когда потеря качества все еще находится на приемлемом уровне.
Список литературы
1. Sullivan G.J., Ohm J.-R., Han W.-J., Wiegand T. Overview of the high efficiency video coding (HEVC) standard // IEEE Transactions on Circuits and Systems for Video Technology. 2012. V. 22 (12). P. 1649-1668.
2. Wiegand T., Sullivan G.J., Bjontegaard G., Luthra A. Overview of the H.264/AVC video coding standard // IEEE Transactions on Circuits and Systems for Video Technology. 2003. V. 13 (7). P.560-576.
3. Bossen F., Bross B., Suhring K., Flynn D. HEVC complexity and implementation analysis // IEEE Transactions on Circuits and Systems for Video Technology. 2012. V. 22 (12). P. 1685-1696.
4. Shafique M., Henkel J. Low power design of the next-generation High Efficiency Video Coding // Proceedings of 19th Asia and South Pacific Design Automation Conference (ASP-DAC). 2014, P. 274-281.
5. Budagavi M., Fuldseth A., Bjontegaard G., Sze V., Sadafale M. Core transform design in the High Efficiency Video Coding (HEVC) standard // IEEE Journal of Selected Topics in Signal Processing. 2013. V. 7 (6). P. 1029-1041.
6. High efficiency video coding. ITU-T Rec. H.265 (HEVC) [Электронный ресурс] URL: http://www.itu.int/rec/T-REC-H.265/en (дата обращения: 30.06.2020).
7. Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 2: High efficiency video coding. ISO/IEC 23008-2:2017. [Электронный ресурс] URL: https://www.iso.org/standard/69668.html (дата обращения: 30.06.2020).
8. Arai Y., Agui T., Nakajima M. A fast DCT-SQ scheme for images // Transactions-IEICE. 1988. V. E71 (11). P. 1095-1097.
9. Winograd S. On computing the discrete Fourier transform // Mathematics of Computation. 1978. V. 32 (141). P. 175-199.
Доан Тиен Бан, аспирант, bandoan@itmo. ru, Россия, Санкт-Петербург, Университет ИТМО,
Тропченко Андрей Александрович, канд. техн. наук, доцент, zayka_98rus@mail. ru, Россия, Санкт-Петербург, Университет ИТМО
HYBRID TRANSFORM IN VIDEO CODEC HEVC T.B. Doan, A.A. Tropchenko
This article proposes a hybrid transform that combines the original DCT to HEVC and DCT-SQ with a very low number of operations required. Simulation and implementation results prove that the proposed pair of transforms is characterized by a reduction in complexity compared to the original conversion to HEVC with an average performance loss of 3.69% distortion for the worst case.
Key words: HEVC, video compression, hybrid algorithm, transform.
Doan Tien Ban, postgraduate, bandoan@,itmo. ru, Russia, Saint-Petersburg, ITMO University,
Tropchenko Andrey Alexandrovich, candidate of technical sciences, docent, zayka_98rus@mail. ru, Russia, Saint-Petersburg, ITMO University
УДК 004.94; 628.1
ПРИМЕНЕНИЕ СОВРЕМЕННЫХ ПРОГРАММНЫХ СРЕДСТВ ДЛЯ РЕШЕНИЯ ГИДРОДИНАМИЧЕСКИХ ЗАДАЧ ВОДОСНАБЖЕНИЯ
А.В. Гаврюхина
Рассматривается задача по расчету гидродинамических параметров трубопроводов, проводится сравнение типов соединения труб при помощи анализа данных, полученных из компьютерного моделирования в современных мультифизических программах конечно-элементного расчета.
Ключевые слова: программа, анализ, обработка, данные, трубопровод, конечные элементы.
Информационные технологии в настоящий момент являются наиболее быстро развивающимися, в свою очередь они за счет всеобщей цифровизации подталкивают иные области человеческой деятельности. Так различные численные методы решения задач в совокупности с информационными технологиями дают современные программные продукты с широким набором функциональных возможностей, в числе которых, решение проблем по усовершенствованию клапана бурового насоса [1], расчеты водопроводов [2 - 4] и многое другое.
В данном случае рассмотрим задачу по сравнению различных типов соединений водопроводной сети. Как показано на рис. 1, две отдельные трубы, расположенные на разных высотах, требуют соединительного канала, который может быть жестким и гибким.
Жесткий представляет собой прямое подключение одной трубы к другой, по-средствам третьей трубы и сварных швов (рис. 1, а), в случае применения же гибкого соединения - используется гибкий шланг, очень часто его длинна значительно больше расстояния между трубами и излишняя длинна гибкого шланга образует спираль, как показано на рис. 1, б.