Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Evgenij Masherov                     2:5020/175.2   09 Oct 2001  10:04:24
 To : Alex Baskakov
 Subject : Сжатие видео
 -------------------------------------------------------------------------------- 
 
 Mon Oct 08 2001 11:40, Alex Baskakov wrote to Evgenij Masherov:
  EM>> А поищите на видеокарте такой себе кристалльчик ADV601 (а может, 601LC
  EM>> или  611). Если он есть - вейвлеты. Могу поделиться программным
  EM>> эмулятором его.  Или кратким пояснением, как работает.
 
  AB> Давай в эху. Очень интересно.
 
  Краткое пояснение.
 
 0. Изображение представлено форматом YUV 4:2:2, то есть каналом яркости и
 двумя цветности (с половинной, по частоте, оцифровкой), т.е. оптимизировано
 под ТВ, а не компьютер.
 (работает как с ПАЛом, так и с HТСЦ)
 
 1. Картинка (по каналам) подвергается вейвлет-преобразованию (биортогональные
 9-7 вейвлеты, что позволяет получить симметричный набор коэффициентов и
 съэкономить на операциях).
 Вот пример цикла расчетов (горизонтальное направление, прямое преобразование,
 вертикальное аналогично, с изменениями в коэффициентах). 
   for (i=0; i<len1; i+=2) {
       *lp = 
   g0 * inp[i]
   + g1 * (inp[i-1] + inp[i+1])
   + g2 * (inp[i-2] + inp[i+2])
   + g3 * (inp[i-3] + inp[i+3])
   + g4 * (inp[i-4] + inp[i+4]);
       *hp = 
   h0 *  inp[i+1]
   - H1 * (inp[i  ] + inp[i+2])
   + H2 * (inp[i-1] + inp[i+3])
   - h3 * (inp[i-2] + inp[i+4]);
       lp++;
       hp++;
     }
 Здесь 
 real g0 =  0.602949f;
 real g1 =  0.266864f;
 real g2 = -0.078223f;
 real g3 = -0.016864f;
 real g4 =  0.026749f;
 
 Коэффициенты для получения HЧ
 
 real h0 =  0.557543f;
 real H1 =  0.295636f;
 real H2 = -0.028772f;
 real h3 = -0.045636f
 
 Соответственно ВЧ.
 
 2. Делается квантование, исходя из среднеквадратичного отклонения по блоку,
 вычисляемого сразу после получения болка. (что есть блок - а вот квадратик на
 вейвлет-преобразованном рисунке и есть; размер блока переменен и получается
 делением пополам...) СКО передается отдельно, в начале блока.
 
 3. Таблица квантования предопределена (и вроде есть различные, для
 фотоизображений, для плакатов и общие...).
 При этом шаг квантования выбирается, исходя из желаемого числа бит на пиксел
 (от 8 до 0.03 - для truecolor, в первом случае качество идеально, вполне
 прилично до 1 бит на пиксел, а при 0.03 - явные дефекты - у очаровательной
 негритянки на тестовом снимке вырастает борода:)
 
 4. В квантованном сигнале образуются цепочки нулей, которые кодируются РЛЕ,
 причем длина пробега в свою очередь кодируется Хаффманом, с предопределенной
 таблицей.
 (Предусмотрено использование двух вариантов таблиц).
 
 5. Hенулевые элементы также кодируются Хаффманом, с другой таблицей.
 
 6. Блоки передаются последовательно, в начале блока - признак его (включая ь
 таблицы), затем СКО, затем сжатая последовательность коэффициентов.
 
 Декодирование:
 1. Разбор на блоки, получение СКО для блока и ь таблицы.
 2. Декодирование Хаффманом и РЛЕ.
 3. Обратный вейвлет.
 4. Перевод в РГБ (опционально). До 30% времени 8-О. Т.е. настолько хорошо
 сделано!
 
 Аппаратно позволяет делать до 30 кадров 720*576 (или 486 - HТСЦ). Программно -
 увы...
 
 С уважением
 
 Евгений Машеров АКА СанитарЖеня
 
 --- ifmail v.2.15
  * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Сжатие видео   Evgenij Masherov   05 Oct 2001 09:30:00 
 Сжатие видео   Alex Astafiev   07 Oct 2001 02:44:39 
 Сжатие видео   Alex Baskakov   08 Oct 2001 11:40:40 
 Сжатие видео   Evgenij Masherov   09 Oct 2001 10:04:24 
 Сжатие видео   Alex Baskakov   10 Oct 2001 11:38:22 
 Re: Сжатие видео   Maxim Zakharov   10 Oct 2001 23:24:59 
 Сжатие видео   Alex Astafiev   11 Oct 2001 05:27:34 
 Сжатие видео   Andrew Aksyonoff   09 Oct 2001 20:49:13 
Архивное /ru.algorithms/3300f0a4da0b.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional