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

Реферат

 

Заявленные способы и устройства используются в системах обработки цифровых сигналов. В локальном декодере устройства уплотнения MPEG - стандарта, а также в устройстве расширения MPEG - стандарта появляются ошибки округления. Это происходит из-за отсутствия стандарта для округления результатов типа *. 5 (где *. - целое число), которые получаются, когда набор коэффициентов преобразования, являющихся результатом уплотнения, подвергается обратному ортогональному преобразованию. Изобретение предотвращает появление ошибок несоответствия посредством предварительной обработки набора коэффициентов преобразования до их обратного ортогонального преобразования, что и является достигаемым техническим результатом. Коэффициенты преобразования в наборе суммируются и оценивается четность суммы (четная или нечетная). Если установлено, что контрольная сумма четная, то инвертируется четность одного из коэффициентов преобразования в наборе, чтобы получить коэффициент преобразования с проинвертированной четностью. Это делает контрольную сумму нечетной. Тогда, если набор коэффициентов преобразования, включающий коэффициент преобразования с проинвертированной четностью, будет подвергнут обратному ортогональному преобразованию, ни один из результатов ортогонального преобразования не будет иметь значение *.5. 12 с. и 38 з.п.ф-лы, 30 ил.

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

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

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

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

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

До настоящего времени большое количество информации требовалось для представления движущегося изображения, использующего, например, видеосигнал стандарта NTSC (Национальный Комитет по Телевизионным системам США). Благодаря этому, для записи сигнала движущегося изображения требовался носитель записи с очень большой информационной емкостью, если носитель должен был обеспечивать время записи приемлемой длительности. Кроме того, частота информации, при которой с такого носителя записывается и воспроизводится сигнал движущегося изображения, была очень велика. Следовательно большие магнитные ленты и оптические диски требовались для хранения сигналов движущегося изображения.

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

Для удовлетворения только что описанных требований были предложены различные системы уплотнения сигнала движущегося изображения, которые используют корреляцию между и внутри фрагментов сигнала движущегося изображения, представляющего кадры, составляющие сигнал движущегося изображения. Например, широко известна система уплотнения сигнала движущегося изображения, предложенная Экспертным Советом по Движущимся Изображениям (MPEG). Поскольку система MPEG подробно описана в различных печатных публикациях, детальное описание системы MPEG здесь не приводится.

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

Сначала система MPEG определяет отличия между кадрами, образующими сигнал движущегося изображения, чтобы уменьшить избыточность сигнала движущегося изображения во временной области. Затем система MPEG уменьшает избыточность сигнала движущегося изображения в пространственной области путем применения ортогонального преобразования к блокам межкадровых отличий в пространственной области. Система MPEG использует дискретное косинусное преобразование (DCT) как ортогональное преобразование. Посредством уменьшения избыточности как во временной, так и в пространственной областях, движущееся изображение уплотняется весьма эффективно. Уплотненный сигнал движущегося изображения, являющийся результатом только что описанного процесса уплотнения, может быть затем записан на носитель записи или передан через подходящий канал передачи.

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

Пример структуры устройства уплотнения сигнала движущегося изображения, основанного на системе MPEG, показан на фиг. 1. В устройстве уплотнения, показанном на фиг. 1, цифровой сигнал движущегося изображения подается в схему форматирования блока 101, где он преобразуется из стандартного видеоформата, например, из стандартного формата видеосигнала NTSC, в блочный формат для получения разделенного на блоки сигнала движущегося изображения. Таким образом, каждый кадр сигнала движущегося изображения разделяется в пространственной области, то есть, по горизонтали и вертикали, на макроблоки, например, 16 х 16 элементов. Макроблоки разбиваются также на блоки 8 х 8 элементов.

Устройство, показанное на фиг. 1, сжимает каждый кадр сигнала движущегося изображения блок за блоком, пока не будут обработаны все блоки, образующие кадр. Затем устройство обрабатывает другой кадр сигнала движущегося изображения, который может быть, а может и не быть следующим кадром в последовательности кадров, образующих движущееся изображение. В последующем описании устройства, показанного на фиг. 1, будет раскрыт процесс сжатия одного блока элементов в одном кадре. Блок элементов, подлежащих уплотнению, - это текучий кадровый блок, являющийся блоком текущего кадра. Разбитый на блоки сигнал движущегося изображения подается на предсказатель движения 102. Предсказатель движения подает текущий кадр, включая блок текущего кадра S1, блок за блоком к схеме расчета блока отличий 103.

Когда схема расчета блока отличий 103 получает текущий кадровый блок от предсказателя движения 102, она также получает блок сопоставления S2, относящийся к текущему кадровому блоку из предсказателя движения 102. Блок сопоставления образуется предсказателем 113 из восстановленных кадров, хранящихся в блоке памяти кадров 112. Схема расчета блока отличий 103 определяет элемент за элементом отличие между текущим кадровым блоком S1 и соответствующим ему блоком сопоставления S2. Результирующий блок отличий, блок отличий S3, подается в схему ортогонального преобразования 104.

Схема ортогонального преобразования 104, которая обычно является схемой дискретного косинусного преобразования (DCT), осуществляет ортогональное преобразование блока отличий S3 и подает результирующий блок коэффициентов преобразования в квантователь 105. Квантователь 105 дискретизирует блок коэффициентов преобразования для получения блока дискретизированных коэффициентов преобразования. Кодер с переменной длиной слова 106 обрабатывает блок дискретизированных коэффициентов преобразования от квантователя 105, используя кодирование с переменной длиной слова, такое как кодирование Хаффмана или неравномерное кодирование и т. п. Результирующий блок закодированных коэффициентов преобразования подается затем, например, в канал цифровой передачи через выходной буфер 107. Сигнал управления, указывающий количество бит, хранящихся в выходном буфере 107, подается обратно к квантователю 105. Квантователь регулирует шаг дискретизации с учетом сигнала управления, предотвращая переполнение или потерю значимости в выходном буфере. Увеличение или уменьшение шага дискретизации соответственно уменьшает или увеличивает количество бит, подаваемых в выходной буфер.

Блок дискретизированных коэффициентов преобразования подается также от квантователя 105 к инверсному квантователю 108, который является частью локального декодера, используемого в устройстве уплотнения для формирования из дискретизированных коэффициентов преобразования реконструированных кадров, используемых в процессе кодирования с предсказанием. Инверсный квантователь 108 осуществляет инверсную дискретизацию блока дискретизированных коэффициентов преобразования путем выполнения обработки, являющейся дополнением к процессу дискретизации, выполненному квантователем 105. Результирующий блок коэффициентов преобразования подается в схему обратного ортогонального преобразователя 109, где он подвергается обратному ортогональному преобразованию, как дополнению к ортогональному преобразованию, выполненному схемой ортогонального преобразователя 104. Результирующий восстановленный блок отличий S4 подается на сумматор 110.

Сумматор 110 получает также блок сопоставления S2 для текущего кадрового блока S1 от одного из устройств памяти кадров в памяти изображения 112, выбираемых предсказателем 113. Сумматор 110 выполняет элемент за элементом суммирование восстановленного блока отличий S4 из схемы обратного ортогонального преобразования 109 и блока сопоставления S2 из памяти изображения 112 для получения реконструированного блока изображения S5. Реконструированный блок изображения доставляется к одному из устройств памяти изображения с 112A по 112D, выбираемых селектором III оттуда, где он хранится.

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

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

Схема определения режима предсказания 115 использует данные, полученные от предсказателя движения 102, для определения режима предсказания, который будет использован для кодирования с предсказанием текущего кадра, связанного с одним или несколькими другими восстанавливаемыми кадрами. Текущий кадр может быть закодирован с предсказателем посредством использования любого из следующих режимов предсказания: (1) Внутрикадровый режим, при котором кадр сжимается сам, без обращения к любым другим кадрам. Кадр, закодированный таким образом, называется I-кадром.

(2) Режим прямого предсказания, при котором предсказание выполняется с обращением к реконструированному кадру, появившемуся ранее в движущемся изображении. Кадр, закодированный таким образом, называется P-кадр.

(3) Режим двунаправленного предсказания, при котором выполняется предсказание блок за блоком с обращением к опорному блоку, полученному из реконструированного кадра, появившегося ранее в движущемся изображении, реконструированного кадра, появившемся позднее в движущемся изображении или путем выполнения линейной операции элемент за элементом (например, расчет среднего значения) между ранее реконструированным кадром и кадром, реконструированным позднее. Кадр, закодированный таким образом, называется B-кадром.

Другими словами, I-кадр является кадром, в котором выполняется внутрикадровое кодирование. P-кадр предсказывается из реконструированного I-кадра или P-кадр, появившегося ранее в движущемся изображении. B-кадр предсказывается блок за блоком путем использования ранее или позднее реконструированного I-кадра или P-кадра или путем использования блока, полученного посредством выполнения линейной операции с использованием реконструированного I-адра или P-кадра, появившегося ранее в движущемся изображении, и реконструированного I-кадра или P-кадра, появившегося позднее в движущемся изображении.

Схема определения режима предсказания 115 доставляет информацию о режиме предсказания и соответствующий вектор движения к предсказателю 113 и генератору адреса считывания 114. Генератор адреса считывания 114 выдает адреса считывания в память изображения 112 согласно вектору движения, который заставляет каждое устройство памяти изображения со 112A по 112D считывать блок реконструированных кадров, хранящихся в ней. Место считываемого блока в реконструированном изображении определяется вектором движения. Предсказатель 113 выбирает один из считываемых блоков из устройств памяти изображения 112A - 112D в ответ на сигнал режима предсказания PM, полученный от схемы определения режима предсказания 115. Выбранный считываемый блок обеспечивает блок сопоставления S2 для текущего блока S1. Если текущий блок является частью B-кадра, предсказатель выполняет также линейные операции над блоками, считываемыми из устройств памяти изображения 112A - 112D, для получения требуемого блока сопоставления. Предсказатель подает блок сопоставления S2 в схему блока отличий 103 и сумматор 110.

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

Уплотненный сигнал движущегося изображения покадрово считывается из входного буфера 121 и направляется в инверсный кодер с переменной длиной слова (IVLC). Инверсный кодер с переменной длиной слова 122 осуществляет обратное кодирование с переменной длиной слова уплотненного сигнала движущегося изображения и разделяет уплотненный сигнал движущегося изображения на составляющие, включающие блоки дискретизированных коэффициентов преобразования, и информацию о режиме предсказания, размере шага и вектор движения для каждого блока.

Каждый блок закодированных коэффициентов преобразования подается в инверсный квантователь 123, который использует информацию о размере шага для блока, чтобы осуществить обратную дискретизацию блока дискретизированных коэффициентов преобразования для получения блока коэффициентов преобразования. Схема обратного ортогонального преобразования 124 осуществляет инверсное ортогональное преобразование, обычно IDCT-обработку блока коэффициентов преобразования для получения восстановленного блока отличий. Инверсный квантователь 123 и схема обратного ортогонального преобразования 124 соответственно осуществляют обработку, являющуюся дополнением к операциям, выполненными квантователем 105 и схемой ортогонального преобразования 104 в устройстве уплотнения, показанном на фигуре 1.

Генератор считываемого адреса 130 подает считываемый адрес в устройства памяти изображения 128A - 128D согласно вектору движения для текущего блока, полученного от инверсного кодера с переменной длиной слова 122. В ответ на считываемый адрес каждое из устройств памяти изображения 128A - 128D считывает хранящийся в нем блок реконструируемого кадра. Предсказатель 129 выбирает один из считываемых блоков из устройства памяти изображения 128A - 128D в ответ на сигнал режима предсказания PM, также получаемый от инверсного кодера с переменной длиной слова 122. Выбранный считываемый блок обеспечивает блок сопоставления для реконструкции текущего блока. Если текущий блок является частью кадра, закодированного как B-кадр, предсказатель выполняет такие линейные операции над считываемыми блоками из устройства памяти изображения 128A - 128D для обеспечения блока сопоставления. Предсказатель 129 доставляет блок сопоставления в сумматор 125.

Сумматор 125 выполняет элемент за элементом сложение восстанавливаемого блока отличий из схемы обратного преобразования 124 и блока сопоставления от предсказателя 129, чтобы реконструировать текущий кадровый блок текущего кадра. Селектор 126 подает реконструированный текущий блок кадра для хранения в одно из устройств памяти изображения 128A - 128D, в котором текущий кадр реконструируется. Реконструированный текущий кадровый блок записывается в выбранном устройстве памяти изображения на месте текущего кадрового блока в реконструируемом текущем кадре. Когда все реконструируемые текущие кадровые блоки будут записаны в выбранное устройство памяти изображения 128A - 128D, реконструируемый текущий кадр будет готов для считывания, а также для использования в качестве опорного кадра для реконструкции других кадров, появляющихся раньше или позже в движущемся изображении.

Реконструируемые кадры, хранящиеся в устройствах памяти изображения 128A - 128D, считываются в виде выходного сигнала движущегося изображения посредством селектора 126 в ответ на адреса считывания, формируемые генератором адреса дисплея 127. Сканирующий преобразователь (не показан) преобразует выходной сигнал движущегося изображения, считываемый из устройств памяти изображения 128A - 128D в растровый формат желаемого формата видеосигнала, например, NTSC. Результирующий выходной сигнал движущегося изображения может быть затем отображен на подходящем дисплее, например, электронно-лучевой трубке (CRT) и т.п. В этом примере генератор синхросигнала 131 синхронизируется от внешнего источника синхросигнала и периодически генерирует кадровый синхросигнал для доставки его к генератору адреса дисплея 127. Генератор адреса дисплея 127 генерирует считываемые адреса синхронно с кадровым синхросигналом.

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

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

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

Система MPEG определяет операционную точность, при которой должны выполняться DCT и IDCT, но не определяет способ выполнения операций и конфигурацию. Это имеет место из-за того, что схемы и способы для выполнения DCT и IDCT были разработаны до установления стандартов MPEG.

Как было описано выше, в системе MPEG устройство управления реализует, например, межкадровое кодирование с предсказанием и компенсацией движения сигнала движущегося изображения. В этой системе сигнал движущегося изображения разделяется на блоки, блок отличий строится из текущего кадрового блока и блока сопоставления, получаемого посредством применения компенсации движения к реконструируемому кадру; блок отличий подвергается ортогональному преобразованию с использованием DCT-обработки; результирующие коэффициенты преобразования дискретизируется; дискретизированные коэффициенты преобразования подвергаются кодированию с переменной длиной слова и закодированные коэффициенты преобразования собираются вместе с информацией о режиме предсказания, размером шага дискретизации и векторами движения для получения уплотнительного сигнала движущегося изображения.

Устройство расширения применяет инверсное кодирование с переменной длиной слова к закодированным коэффициентам преобразования, инверсную дискретизацию к дискретизированным коэффициентам преобразования, которые являются результатом инверсного кодирования с переменной длиной слова, и IDCT-обработку к коэффициентам преобразования, являющимся результатом инверсной дискретизации. Результирующий восстановленный блок отличий добавляется к блоку сопоставления, полученному посредством применения компенсации движения к реконструируемому кадру согласно вектору движения, Результирующий реконструированный кадровый блок записывается в виде блока реконструированного кадра, который обеспечивает кадр выходного сигнала движущегося изображения и также пригоден для использования в качестве опорного кадра.

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

Если конфигурация схемы IDCT в локальном декодере устройства уплотнения отличается от схемы IDCT в устройстве расширения, будут иметь место случаи, когда реконструированные кадры, формируемые локальным декодером в устройстве уплотнения, будут отличаться от реконструированных кадров, формируемых устройством расширения. Зависимость IDCT-обработки от ее конкретного исполнения может вызвать проблемы, если уплотненный сигнал движущегося изображения, генерируемый устройством уплотнения в соответствии со стандартом MPEG, записывается на носитель записи, такой как оптический диск и т.п., для массового распространения. Если уплотненный сигнал движущегося изображения, воспроизводимый с оптического диска, расширяется устройствами расширения, изготовляемыми и продаваемыми различными производителями, воспроизводимое изображение может отличаться от оригинала. Кроме того, различия могут зависеть от используемого устройства расширения. Подобная несовместимость между различными устройствами расширения может также возникнуть, когда уплотненный сигнал движущегося изображения распространяется такими распределительными системами, как наземное или спутниковое вещество, телефонные системы, цифровые системы связи с комплексными услугами (ISDM), кабельные или оптические распределительные системы и т.п.

Ошибки несоответствия представляют конкретную проблему, если выполняется межкадровое кодирование с предсказанием. Межкадровое кодирование с предсказанием может быть межполевым кодированием или межкадровым кодированием. Межкадровое кодирование с предсказанием может вызвать накопление ошибок несоответствия в непрерывной области памяти, которые приведут к неисправимым дефектам в реконструируемых кадрах.

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

Если ошибка несоответствия появляется в P-кадре, кадр с ошибкой несоответствия записывается в память изображения для использования при выполнении кодирования с предсказанием. Соответственно, если выполняется межкадровое кодирование с предсказанием, ошибка в P-кадре, хранящемся в памяти изображения, частично распространяется в P-кадры и B-кадры, получаемые из него путем кодирования с предсказанием. Ошибка накапливается пока кадр не будет заменен I-кадром или P-кадром, не имеющим такой ошибки.

Подобным же образом, когда ошибка несоответствия появляется в I-кадре, реконструируемый кадр с ошибкой несоответствия записывается в память изображения для использования при выполнении кодирования с предсказанием. Соответственно, если выполняется межкадровое кодирование с предсказанием, ошибка в I-кадре, записанном в память изображения, распространяется в P-кадры и B-кадры, образованные из него путем кодирования с предсказанием. Ошибка накапливается, пока кадр не будет заменен новым I-кадром, не имеющим такой ошибки.

Накопление ошибки показано на фиг. 3. На фиг. 3, если ошибка несоответствия при декодировании I-кадра равна E1, а ошибка несоответствия при декодировании P-кадра P1 равна ЕР1, значение в реконструированном Р-кадре Р1 будет равно E1 + EP1. Кроме того, если ошибка несоответствия при декодировании P-кадра P2 равна EP2, значение ошибки в реконструированном P-кадре P2 будет E1 + EP1 + EP2. Даже если отдельные ошибки несоответствия малы, постепенное накопление этих ошибок может привести к большой ошибке.

Ошибки несоответствия, полученные при IDCT-обработке, используемой в декодерах MPEG как в устройстве уплотнения, так и в устройстве расширения, можно классифицировать по двум отдельным типам: Тип (1): Ошибки, являющиеся результатом недостаточной операционной точности.

Тип (2): Ошибки, являющиеся результатом систематических различий при округлении.

Стандарт MPEG устанавливает требование к операционной точности, Однако, это требование не строгое, что не дает гарантии отсутствия ошибки несоответствия, Следовательно, ошибка несоответствия Типа (1) может появиться между устройствами IDCT, чья операционная точность удовлетворяет требованию MPEG.

Выходы IDCT-обработки являются целыми числами. Следовательно, после того, как было выполнена IDCT-обработка с использованием действительных чисел, результаты обработки должны быть округлены. В общем случае результаты обработки округляются до ближайшего целого. Однако, появляется проблема, если результат обработки представляет собой *. 5, где * - любое целое число. Стандарт MPEG не определяет, каким образом следует округлять результат *.5. Некоторые устройства IDCT округляют *.5. сверху, а другие устройства IDCT округляют *.5. снизу. Кроме того, появляются случаи, когда округление сверху или округление снизу зависят от знака результата обработки. Ошибки несоответствия, возникающие из-за только что описанных систематических ошибок округления, являются ошибками несоответствия Типа (2).

Ошибки несоответствия Типа (1) отличаются от ошибок несоответствия Типа (2), тем что ошибки Типа (1) появляются случайно в то время, как ошибки Типа (2) систематически. Поскольку ошибки Типа (1) являются случайными, положительные ошибки и отрицательные ошибки появляются с примерно равной вероятностью. Поэтому, при длительном выполнении кодирования с предсказанием можно ожидать, что ошибки несоответствия Типа (1) будут сведены на нет.

С другой стороны, поскольку ошибки несоответствия Типа (2) являются систематическими и присущи самой IDCT-обработке, такие ошибки постоянно имеют один и тот же знак. Соответственно, при длительном выполнении кодирования с предсказанием ошибка несоответствия будет накапливаться в одном направлении. Хотя каждая ошибка несоответствия Типа (2) составляет только +1 или -1, если накапливается много ошибок в одном направлении, накопления ошибка несоответствия будет большой.

Так как ошибки несоответствия Типа (1), хотя они и образуются, через некоторое время исчезают, ошибка Типа (1) не представляют большой проблемы. С другой стороны, поскольку ошибки несоответствия Типа (2) накапливаются в одном направлении, эти ошибки представляют проблему. В этой связи желательно предотвращать появление накапливающихся ошибок несоответствия Типа (2).

В системе MPEG1 было предложено выполнять обработку перед IDCT-обработкой, чтобы предотвратить появление ошибок несоответствия Типа (2). Обработка присваивает коэффициентам преобразования всех составляющих нечетные значения, кроме коэффициента преобразования составляющей (0.0) макроблока, с внутрикадровым кодированием кадра ("интра-макроблок"). В интра-макроблоке составляющая (0.0) является DC-составляющей. Как показано на фигуре 4, например, коэффициенты преобразования составляющих (0.1), (7.1), (2.3), (5.3), (1.5), (6.5), (3.7) и (4.7) изначально все равны 568. Поскольку это четное число, предварительная обработка устанавливает для этих коэффициентов нечетное значение, например, 567. Если IDCT-обработка применяется к предварительно обработанным коэффициентам преобразования, дробные результаты никогда не появятся.

Поскольку DC-составляющая интра-макроблока очень важна для появления кадра, получаемого из уплотненного сигнала движущегося изображения, точность ее представления ограничивается только 8 бит. Она не подвергается преобразованию к нечетному значению, поскольку это ухудшает точность этой важной составляющей. С другой стороны все коэффициенты преобразования, являющиеся результатом преобразования макроблока кадра, закодированного с использованием межкадрового кодирования ("неинтра-макроблок"), подвергаются обработке, подобной обработке коэффициентов преобразования составляющих, отличных от DC-составляющей интра-макроблока, чтобы ограничить значения коэффициентов преобразования только нечетными числами.

Обработка, при которой значения коэффициентов преобразования, подвергающиеся IDCT-преобразованию, приводятся все к нечетным значениям, называется обработкой на нечетность.

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

Однако, несмотря на вышеописанную обработку на нечетность, вышеуказанные накапливающиеся ошибки несоответствия Типа (2) будут появляться в процессорах MPEG из-за того, что IDCT-обраотка может выдавать результаты типа *.5, где * - означает целое число. Условия, которые приводят к результату *.5, будут описаны далее на примере двумерного 8 x 8 IDCT, используемого в системе MPEG.

Двумерное 8 x 8 IDCT описывается следующим уравнением: В вышеприведенном уравнении F(U, V) указывает DCT-коэффициенты, соответствующие двумерному IDCT. В уравнении (1) каждое значение выхода IDCT является действительным числом, то есть, рациональным числом или иррациональным числом. Поскольку *.5 рациональное число, сделав выходное значение IDCT иррациональным числом, можно предотвратить появление накапливающейся ошибки несоответствии. С другой стороны, если выходное значение является рациональным числом, существует вероятность того, что выходное значение будет *.5.

D