Способ кодирования цветного изображения и устройство для его реализации

Номер патента: 82

Опубликовано: 25.06.1998

Авторы: Хоскинс Эшер Джог, Пенна Дейвид Эдвард

Есть еще 3 страницы.

Смотреть все страницы или скачать PDF файл.

Формула / Реферат

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

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

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

4. Способ по п.1, отличающийся тем, что первое кодовое слово включает в себя субкод, указывающий один диапазон из ряда диапазонов длин отрезков, а второе кодовое слово указывает длину отрезка из указанного диапазона.

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

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

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

8. Способ по п.5, отличающийся тем, что кодовая последовательность для кадра начинается с дополнительного кода, определяющего исходный преобладающий цвет.

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

10. Способ по п.1, отличающийся тем, что второе кодовое слово предшествует первому кодовому слову в коде для отрезка.

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

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

Текст

Смотреть все

1 Данное изобретение относится к кодированию и декодированию блоков цифровых данных видеоизображения и, конкретно, к кодированию цветовых значений элементов изображения. Хорошо известным способом является групповое кодирование, используемое, например, в качестве одного из режимов кодирования в соответствии с интерактивным стандартом для компакт-дисков (CD-i). Этот способ дает возможность более компактно кодировать множества величин смежных элементов изображения путем однократного определения цвета и затем подсчета числа (n) идентичных элементов изображения вместо повторения цветового кода (n) раз. Более подробные сведения о групповом кодировании можно найти, например, в работеEdition, 1979, pp 287-289, McGraw-Hill ISBN 007-066455-2; краткое описание будет дано ниже со ссылками на фиг.1-3. Несмотря на то, что групповое кодирование очень эффективно с точки зрения сжатия данных для длинных отрезков, эта эффективность уменьшается при более коротких отрезках, причем кодирование кадров с большим числом коротких отрезков может потребовать излишне высоких затрат на вычисления. Соответственно в основу данного изобретения положена задача создания схемы кодирования, которая, по меньшей мере, обеспечит целесообразную степень сжатия, при этом не обусловливая больших накладных расходов по причине сложности. Согласно данному изобретению предложен способ формирования кодированного сигнала видеоизображения, при котором осуществляют кодирование значений цвета элементов изображения последовательности кадров цифрового видеоизображения, при этом для каждого кадра каждому разному цвету в данном изображении присваивают значение цвета, выявляют преобладающий цвет из числа разных цветов для кадра изображения, отрезки, по меньшей мере, двух последовательных элементов изображения преобладающего цвета кодируют в виде первого кодового слова, указывающего отрезок, и второго кодового слова, указывающего длину отрезка, а элементы изображения,имеющие цвета, отличающиеся от преобладающего цвета, кодируют в виде кодов, содержащих, по меньшей мере, соответствующие значения цвета. Согласно данному изобретению также предложено устройство кодирования видеоизображения, содержащее вход для приема потока данных, определяющих значения цвета элементов изображения для кадра цифрового видеоизображения; процессор цифровых данных, выполненный с возможностью приема потока данных и присвоения каждому отличаю 000082 2 щемуся от других цвету в изображении соответствующего кода цвета; средство для выявления преобладающего цвета из числа разных цветов для кадра изображения; средство для выделения в потоке данных отрезков, по меньшей мере, из двух последовательных элементов изображения преобладающего цвета и выработки, для каждого такого отрезка, предварительно определенного первого кодового слова, указывающего отрезок, и второго кодового слова, указывающего длину отрезка; и средство для выявления в указанном потоке данных элементов изображения,имеющих цвета, отличающиеся от преобладающего цвета, и кодирования этих элементов изображения в виде кодов, содержащих, по меньшей мере, соответствующие коды цвета. Кроме того, данное изобретение предусматривает устройство отображения видеоизображения, выполненное с возможностью приема и декодирования кодированного сигнала видеоизображения, содержащие вход для приема кодированного сигнала видеоизображения; средство обработки данных, соединенное с входом и выполненное с возможностью выделения кодированных значений цвета элементов изображения в кодированном сигнале видеоизображения; по меньшей мере, одно запоминающее устройство для хранения данных, определяющих таблицу преобразования цветов элементов изображения, включая преобладающий цвет, для кадров цифрового видеоизображения в кодированном сигнале видеоизображения, причем запоминающее устройство соединено со средством обработки данных и имеет возможность адресации посредством кодированных значений цвета элементов изображения, и средство форматирования изображения, соединенное со средством обработки данных и выполненное с возможностью формирования, для выдачи на устройство отображения элементов изображения, отрезков,по меньшей мере, из двух последовательных элементов изображения преобладающего цвета и отдельно определенных элементов изображения, имеющих цвета, отличающиеся от преобладающего цвета. В первом варианте осуществления данного изобретения только преобладающий цвет кадра кодируют посредством процедуры группового кодирования. Таким образом, для преобладающего цвета нет необходимости определять цветовой код всякий раз, когда определяется отрезок из элементов с одинаковым значением цвета. Также при преобладающем цвете эффективность кодирования повышается, поскольку вероятность таких отрезков обычно наивысшая. Наиболее обычная ситуация будет заключаться в том, что будет много отрезков короткой и средней длины с преобладающим цветом и меньше таких отрезков с другими цветами. Для достижения наивысшей эффективности в этой ситуации, все отрезки, например, из двух или более элементов 3 изображения одного и того же цвета, можно кодировать по процедуре группового кодирования для обеспечения высокой степени сжатия данных, не предъявляя требований, чтобы отрезки, по меньшей мере, от короткой до средней длины (например, содержащие от 3 до 9 элементов изображения) содержали код цвета в тех случаях, когда отрезок состоит из элементов преобладающего цвета. Первое кодовое слово может для удобства содержать субкод, указывающий один из ряда диапазонов длины отрезка, а второе кодовое слово указывает длину отрезка в указанном диапазоне. Таким образом, длину второго кодового слова можно сохранять более короткой,чем это было бы в случае, если бы нужно было определять абсолютную длину. Чтобы предусмотреть ситуации, когда преобладающий цвет изменяется в пределах кадра (например, "разделенный экран" с разным цветом фона в каждой части), можно обеспечить дополнительный код, который будет содержать определение значения; причем после помещения этого дополнительного кода в поток кодов цвета элементов изображения преобладающий цвет, определенный для кодируемых отрезков,изменяется на цвет, определенный в этом дополнительном коде. Этот дополнительный код ниже упоминается как код ИЗМЕНЕНИЯ ФОНА, и он может содержать первое кодовое слово, указывающее отрезок, и субкод, указывающий изменение преобладающего цвета, и второе кодовое слово, содержащее значение цвета для нового преобладающего цвета. В случае одинакового субкода в первом кодовом слове для указания как отрезка, так и изменения преобладающего цвета, с указанием различия с помощью определенного субкода первого кодового слова, число кодов "управления" поддерживается на минимальном значении, тем самым обеспечивая возможность выделения большего числа "свободных" кодов цветам. Во избежание неэффективности в связи с групповым кодированием коротких прогонов,отрезки из одного или двух элементов изображения преобладающего цвета можно соответственно кодировать в виде одной или двух последовательных итераций значения цвета для преобладающего цвета, либо могут быть назначены однозначно определенные короткие коды. Чтобы предусмотреть ситуацию, когда преобладающий цвет изменяется между последовательными кадрами, кодовая последовательность для кадра может быть для удобства начата с дополнительного кода, определяющего первоначальный преобладающий цвет, т.е. может быть дана команда смены на определенный преобладающий цвет, используемый для всех последующих отрезков, даже если он остался неизменным с предыдущего кадра. Если преобладающий цвет может изменяться несколько раз в течение кадра, то коман 000082 4 да изменения может оказаться неэффективной. Соответственно, еще в одном варианте осуществления данного изобретения, подмножество цветов в изображении может быть определено в качестве преобладающих цветов, причем цветам(кроме преобладающего) присваивают соответствующие цветовые коды первой длины, преобладающим цветам присваивают соответствующие цветовые коды второй длины, которая короче первой длины, а отрезки одного из преобладающих цветов кодируют как первое кодовое слово, указывающее отрезок преобладающего цвета, и как второе кодовое слово, указывающее в отдельных субкодах длину отрезка и цветовой(более короткий) код, соответственно. Ниже следует описание предпочтительных вариантов осуществления данного изобретения только в качестве примера и со ссылкой на прилагаемые чертежи. На фиг.1 изображен известный цветовой код для одинарного элемента изображения; на фиг.2 - известный цветовой код для отрезка элементов изображения длиной "L"; на фиг.3 последовательность значений цвета элементов изображения, преобразованных в цветовые коды, как на фиг.1 и 2; на фиг.4 - таблица кодовых величин в соответствии с первым вариантом осуществления изобретения; на фиг.5 - вариант таблицы фиг.4, представляющей первый вариант осуществления изобретения; на фиг.6 и 7 таблицы кодовых величин для элементов изображения фона и отличных от фона, соответственно, представляющие еще один вариант осуществления данного изобретения; на фиг.8 блок-схема каскада детектора кода элементов изображения для устройства декодирования; на фиг.9-13 - блок-схемы, иллюстрирующие работу контроллера по фиг.8. В качестве иллюстрации сначала целесообразно рассмотреть обычную схему кодирования значений цветов элементов изображения со ссылкой на фиг.1-3. В случае, когда каждое значение цвета элемента изображения занимает семь битов (фиг.1), как при групповом кодировании, используемом для CD-i, определение отрезка (фиг.2) занимает два байта. Один байт содержит значение цвета С в семи своих битах,а другой содержит значение L отсчета. Для отрезка длиной свыше двух элементов изображения представление при групповом кодировании будет более компактным, чем отдельное кодирование каждого элемента изображения отрезка. Но в этом случае кодирование одиночного элемента изображения как отрезка длиной в единицу будет неэффективным, поскольку это займет два байта, в то время как одиночный цветной элемент изображения можно было бы уместить в одном байте. Схема группового кодирования, используемая для CD-i, позволит определить два смежных элемента изображения повторным однобайтовым кодом и последовательностью в два байта длины отрезка. Резерв 5 ный бит в байте цвета (самый старший разряд) используют для указания этой разницы. Если в байте цвета самый старший разряд установлен на ноль, тогда он является одиночным значением цвета, как на фиг.1, но если самый старший разряд установлен на единицу, то этот байт является началом определения отрезка, за которым последует байт длины, как на фиг.2. Эти одно- и двухбайтовые коды при необходимости объединяют для получения кодированной последовательности, выделенный фрагмент которой показан на фиг.3. Первый вариант осуществления данного изобретения обеспечивает кодирование для конкретного случая, когда изображение в основном состоит из одного фонового цвета с малым числом значительных отрезков с другим значением цвета. В таких условиях предпочтительно осуществлять групповое кодирование элементов изображения фонового цвета, но отдельно произвести цветовое кодирование элементов изображения других отрезков. Тем самым устраняется необходимость указывать в потоке кодированных данных, какие значения цветов в кодированном потоке представляют данные группового кодирования, а какие не представляют, т.е. исходная установка бита на 0 или 1 (как на фиг.2 и 3) не требуется. Этот способ также гарантирует, что данные группового кодирования должны содержать только значение отсчета. Поскольку один цвет определен как фон, то нет необходимости определять значение цвета для отрезка. Как будет описано ниже, этот способ использует код переменной длины, который может содержать кодовые слова переменной длины для дальнейшей оптимизации эффективности. В конкретном описываемом варианте выполнения изобретения все коды переменной длины устанавливают в виде целого числа четырехбитовых слов (полубайтов). Значения цвета каждого элемента изображения определяют в четырех битах. Обычно это позволяет определить таблицы преобразования шестнадцать возможных цветов, хотя в данном осуществлении число различных цветов ограничено пятнадцатью по излагаемым ниже причинам для улучшения работы схемы кодирования. Цветовые коды с 1 по 15 (выражения полубайтовыми величинами с 0001 до 1111) не сжимают, а просто прибавляют к потоку кодированных данных без последующего сжатия. Кодирование, используемое для указания длины отрезка фонового цвета, иллюстрируется таблицей по фиг.4; названия, данные различным кодам (КОРОТКИЙ, СРЕДНИЙ и др.), являются лишь поясняющими и на коды не влияют. Преимущества группового кодирования явно видны для самого длинного кода на фиг.4: для отрезка из 303 фоновых цветных элементов изображения требуется только 4 полубайта для определе 000082 6 ния прогона, вместо необходимости использования полубайта цветового кода для каждого элемента изображения. Для фоновых отрезков из 3 или более элементов изображения цветовой код 0 (двоичный 0000) помещают в кодированном потоке для указания начала последовательности группового кодирования цвета 0, который принимают за фоновый цвет. Если последующий четырехбитовый код находится в диапазоне от 0011 до 1111, то тогда отрезок (КОРОТКИЙ) имеет длину между от 3 до 15 элементов изображения; при этом двоичное кодированное число второго полубайта непосредственно представляет длину отрезка. Причем второй полубайт также является кодом 0 (0000), отрезок (СРЕДНИЙ) имеет длину от 17 до 31 элемента изображения; при этом третий полубайт, определяющий величину от 1 до 15 (двоичное значение от 0001 до 1111), увеличивают до 16, чтобы получить длину отрезка. С другой стороны, если второй полубайт последовательности соответствует 0001, то третий полубайт в потоке данных имеет значение от 0000 до 1111, представляющие длины(ДЛИННЫЕ) отрезков от 32 до 47 элементов изображения. Последний случай (БОЛЕЕ ДЛИННЫЕ) заключается в том, что второй полубайт имеет величину 0010, а два последующих четырехбитовых полубайта образуют вместе восьмибитовое значение, представляющее длину отрезка от 48 до 303. Чтобы обеспечить возможность представления одинарного элемента изображения фонового цвета в одинарном четырехбитовом полубайте при исключении неправильного истолкования последующего кода как длины отрезка,цветовой код 0001 используют для представления фонового цвета. Именно поэтому в этой схеме могут быть представлены только 15 цветов. Помимо этого, если за ним не следует непосредственно цветовой код 0000 (как в кодах для длины отрезка из 17, 32 и 49 элементов изображения), то код 0001 представляет одинарный элемент изображения фонового цвета. Из фиг.4 видно, что никогда не будет больше двух следующих один за другим 0-кодов цвета (0000). Это обеспечивает соблюдение ограниченийMPEG, в соответствии с которыми ряд этих кодов используют для указания повторной синхронизации. Поскольку изложенный выше порядок кодирования соответствует только отрезкам фонового цвета из 3 или более элементов изображения, отрезок фонового цвета длины 2 (ОДИНАРНЫЙ+) представлен двумя последовательными значениями цвета 0001. Также, отрезок фонового цвета длины 16 (КОРОТКИЙ+) соответствует кодированному отрезку длины 15, за которым следует одинарный элемент изображения, кодированный как 0001. С помощью этого 7 второго цветового кода для преобладающего или фонового цвета избегают расширения, то есть, экран из N элементов изображения будут кодировать с использованием максимум N кодов, а в общем случае - гораздо меньшего их числа. В тех случаях, когда длины кодов не ограничивают кратным четырем битам, кодирование по методу Хаффмана (присвоение самых коротких кодов наиболее часто определяемым длинам отрезков) могло бы дать еще более эффективное сжатие. Коды из 8 битов или более можно использовать, если необходим больший диапазон цветов, а двухбитовые коды можно использовать в тех случаях, когда требуется совсем немного цветов. В одном из вариантов осуществления указанный способ можно модифицировать, как описано ниже, со ссылкой на таблицу фиг.5,чтобы фоновый цвет, представленный цветовым кодом 0000, мог динамично изменяться. Это целесообразно в тех случаях, когда фоновый цвет изменен частично к низу изображения, либо при наличии большой области какого-то другого цвета, когда преимущества, обеспечиваемые групповым кодированием, компенсируются дополнительными затратами на изменение цвета при групповом кодировании. Сравнение фиг.4 и 5 показывает, что две схемы являются фактически идентичными, за тем исключением, что коды для отрезков из 4 элементов изображения в первоначальном варианте осуществления теперь представляют соответственно длины отрезков на один элемент изображения короче. Код в первоначальном варианте осуществления для отрезка из 3 элементов изображения (0000 0011) теперь используют как код ИЗМЕНЕНИЯ ФОНА, который указывает, что двоичное значение(сссс) от 1 до 15 последующего полубайта (0 зарезервирован для общего обозначения фона) является цветовым кодом для нового фонового цвета. Новый фон будет использоваться до тех пор, пока не будет принят код 0000 0011 0001(код изменения + цветовой код первоначального фона) или пока не будет определено изменение с переходом на третий фоновый цвет. Отметим,что при измененном фоне код для отрезка длиной из 15 элементов изображения будет иметь цветовой код для этого нового фона в качестве третьего полубайта. Этот вариант осуществления допускает изменение в цвете общего фона изображения,который определяется посредством 12 битов данных. Временное изменение для кодирования длинного отрезка некоторого цвета, не относящегося к фону, потребует 24 бита (12 - для изменения с переходом на цвет, не относящийся к фону, и 12 - для повторного перехода на фоновый цвет), что даст экономию для отрезков из 9 или более элементов изображения. Еще в одном варианте осуществления все отрезки, характеризуемые значениями цвета(преобладающий/фоновый или иные), могут кодироваться по процедуре группового кодирования с использованием идентификации преобладающего цвета для обеспечения экономии для наиболее часто встречающихся случаев, то есть- относительно коротких отрезков из элементов изображения фонового цвета. Схемы кодирования для фоновых и не фоновых отрезков показаны на фиг.6 и 7 соответственно. В этой схеме имеются цветовые коды от 0 до 15 (указаны на фиг. 7 как четырехбитовый код ссcс); при этом только 0-код зарезервирован для преобладающего цвета. Поскольку 0-код также используется для указания начала отрезка (любого цвета),то код для одинарного фонового элемента изображения (0000 1111) является лишним, но он необходим во избежание аномалий. Если второй цветовой код (например, 1) был присвоен фоновому цвету, то одинарный фоновый элемент изображения можно было кодировать в одинарном полубайте, как в схемах на фиг.4 и 5, хотя и за счет уменьшения имеющихся цветовых кодов. Как показано на фиг.6, конкретная экономия для этой схемы имеет место для фоновых отрезков от трех до девяти элементов изображения, из которых каждый кодируют в коде из двух полубайтов. Для фоновых отрезков из 10 элементов изображения или более используют ту же схему группового кодирования, что и для не фоновых цветов (показано на фиг.7), т.е. с включением кода прогона (0-кода), кода диапазона (1100 или 1101 для СРЕДНИХ или ДЛИННЫХ отрезков, соответственно), длины отрезков (4-битовой для СРЕДНИХ, 8-битовой для ДЛИННЫХ) и цветового кода. Как показано на фиг.7, отрезки от 1 до 3 элементов изображения не фонового цвета просто кодируют как отдельные случаи цветового кода. Отрезки длиной от 4 до 7 элементов изображения кодируют как код отрезка (0-код), код группового кодирования (от 4 до 7, указываемый соответствующими двоичными величинами от 1000 до 1011) и цветовой код (сссс) Аналогично кодам "КОРОТКИЙ+" на схемах фиг.4 и 5, отрезок из восьми не фоновых элементов изображения кодируют как отрезок из семи элементов изображения, за которым следует повторение цветового кода (т.е. код для одинарного элемента изображения). Поскольку кодированные значения элементов изображения обычно пересылают или запоминают в виде блоков значений, для указания конца блока используют дополнительный код (0000 0000). Определение начала кода обрабатывают на системном уровне, поэтому появление двух последовательных полубайтов 0000 после начала кода (как в коде для отрезка 25 фоновых элементов изображения) не будет считаться указанием конца блока. Еще в одном варианте осуществления преимущества, вытекающие из выбора преобладающего или фонового цвета, можно распро 9 странить на определение подмножества преобладающих цветов. Таким образом можно избежать повторного использования кода ИЗМЕНЕНИЕ ФОНА в схеме по фиг.5. Определение подмножества имеет особое преимущество, когда используют более длинные коды; например, 8-битовая схема, где имеются 256 цветовых кодов. При этой схеме 16 наиболее часто используемых цветов кодируют как 4-битовые (а не 8-битовые) значения. Таким образом, отрезки длиной от 3 до 9 элементов изображения можно кодировать в два 8-битовых слова, таких как ОООО ОООО OLLL cccc,где первое слово указывает отрезок одного из преобладающих цветов, первая половина второго слова определяет длину отрезка (от 0001 до 0111), а вторая половина второго слова содержит 4-битовый цветовой код. Следует отметить,что первый бит второго слова в этом порядке является 0. Это обеспечивает другие возможности кодирования, включая полный диапазон цветов (указанных использованием 1 в начале этого слова). Следует обратить внимание на то обстоятельство, что хотя схема с увеличенным числом битов обеспечивает большие преимущества,указанный метод подмножеств можно применять для 4-битовой схемы, несмотря на то, что диапазон имеющихся длин отрезков или цветовых кодов будет существенно ограничен. В устройстве для осуществления изложенных выше схем кодирование обычно выполняют с помощью соответственно запрограммированного микропроцессора, который выполняет функции идентификации преобладающего цвета, присвоения элементам изображения цветовых кодов и детектирования отдельных случаев и отрезков из элементов преобладающего цвета. Можно, разумеется, использовать специализированные аппаратные средства, но более предпочтительно использовать гибкую систему повторного программирования. Рассмотрим подробно осуществление схемы по фиг.4. Детектор кода для использования в устройстве декодирования может быть выполнен аппаратными средствами так, как показано на фиг.8, где контроллер 20 управляет выходным значением полубайта (цветовой код для каждого отдельного элемента изображения), а также выходным тактовым сигналом, тактирующим полубайтовые значения. Контроллер запрашивает ввод полубайта по шине 22 путем подачи запускающего сигнала по шине 24. Этот входной полубайт подают на первый вход мультиплексора 26, а также на каждый из трех компараторных каскадов 28, 30 и 32, выходные сигналы которых поступают на контроллер 20. Три компаратора 28, 30, 32, соответственно, сравнивают входной полубайт с кодами 0000, 0001 и 0010. Если выходной сигнал компаратора 28 положительный, т.е. входной полубайт является 10 кодом 0000, то указывается начало отрезка, и в этом случае контроллер посылает сигнал по шине выборки 34 на мультиплексор 26 для выбора цветового кода для преобладающего (фонового) цвета, запомненного в регистре 36, вместо входного значения полубайта. После определения начала отрезка будет вызван (по шине 24) следующий полубайт; и,если выходные сигналы какого-либо из компараторов 28, 30 или 32 положительные, это будет указывать на то, что отрезок находится в пределах диапазонов, идентифицированных как СРЕДНИЕ, ДЛИННЫЕ или БОЛЕЕ ДЛИННЫЕ,соответственно, как определено на фиг.4. Если выходной сигнал ни одного из компараторов не является положительным, то отрезок находится в диапазоне КОРОТКИХ отрезков, т.е. между тремя и пятнадцатью элементами изображения,и входное значение полубайта фактически является длительностью отрезка. Это значение полубайта тактируется в 8-битовый счетчик 38 как самый младший полубайт при управлении тактовым сигналом по шине 40 от контроллера 20. Когда счетчик 38 ведет обратный отсчет значения, представленного полубайтом, выходной тактовый сигнал в шине 42 тактирует значение цвета фона из регистра 36 в выходную шину 44,пока не будет отсчитано это значение полубайта, когда сигнал обнаружения нуля от счетчика передается контроллеру по шине 46. В том случае, когда обнаружен отрезок из элементов изображения и второй полубайт формирует положительный выходной сигнал одного из компараторов 28, 30 или 32, то следующий полубайт будет тактироваться в счетчик 38 как самый младший полубайт (в случае положительного выходного сигнала компараторов 28 или 30), а следующие два полубайта будут считаны в счетчик как, соответственно, самый старший и самый младший полубайты в случае положительного выходного сигнала от компаратора 32. Когда два полубайта тактируются в 8-битовый счетчик 38, это означает, что в случае отрезка, относящегося к диапазону БОЛЕЕ ДЛИННЫХ самый старший полубайт тактируется в счетчик при управлении от дополнительной шины 48 тактирования от контроллера. Далее со ссылкой на блок-схемы на фиг.913 описывается работа контроллера 20 по фиг.8 при определении того, описывает ли входной код отрезок элементов изображения, и, если описывает, то какова его длина. В начальный момент А (фиг.9) на этапе 71 запускается новый входной полубайт, после чего на этапе 72 проверяется выходной сигнал компараторов, чтобы установить, не является ли полубайт кодом 0000. Если нет, то код соответственно представляет цветовой код (цвет, не являющийся фоном) для элемента изображения, и на этапе 73 мультиплексор 26 (фиг.8) устанавливается для вывода входного значения полубайта. На этапе 74 также выдается один тактирующий сигнал для 11 этого значения полубайта, после чего процедура возвращается к начальному этапу А для следующего входного полубайта. Если на этапе 72 значение полубайта представляет собой 0000, то это указывает на отрезок, который обрабатывается так, как изображено на фиг.10. Обработка отрезка начинается на этапе 81 с запуском следующего входного полубайта, а на этапе 82 устанавливается мультиплексор 26 (фиг.8) для выдачи цветового кода 0000 из регистра 36. После этого на этапах 83,84 и 85 новый входной полубайт проверяют,соответствует ли он одному из 2 кодов полубайта на фиг.4, представляющих СРЕДНИЕ,ДЛИННЫЕ или БОЛЕЕ ДЛИННЫЕ отрезки,как показано на этом чертеже. При отрицательном результате проверки отрезок находится в диапазоне от трех до пятнадцати элементов изображения, и значение полубайта, загруженное в 8-битовый счетчик, устанавливает это значение для его тактирования. Повторная выдача тактовых сигналов для цветового кода 0000 обрабатывается на этапах 87, 88 и 89 циклической обработки, на которых отсчитывается тактовое значение и осуществляется проверка нуля, при этом выдается тактовый сигнал, когда счетчик дойдет до нуля, в этот момент процедура обработки возвращается на исходный этап А (фиг.9) для следующего входного значения полубайта. При положительном результате обработки на каком-либо из этапов 83, 84 или 85 (фиг.10) определяется отрезок в диапазоне от 17 до 303 элементов изображения. При положительном результате проверки на этапе 83 (второе значение полубайта равно 0000) отрезок находится в диапазоне от 17 до 31 элемента изображения и обрабатывается так, как показано на фиг.11. Сначала на этапе 91 величину 0000 из регистра 36 тактируют 16 раз, после чего на этапе 92 запускают новый входной полубайт, который тактируют в 8-битовый счетчик на этапе 93. Это значение самого младшего полубайта в счетчике 38 затем тактируют в петле обработки с обратным приращением и обнаружением нуля (этапы 94, 95 и 96), пока счетчик не дойдет до нуля, и тогда процесс обработки возвращается на исходный этап А (фиг. 9) для следующего входного полубайта. Если значение полубайта 2 определено как 0001 на этапе 84 (фиг.10), то длина отрезка находится между 32 и 47 элементами изображения, которые обрабатывают, как показано на фиг.12. Обработка ДЛИННОГО отрезка на фиг.12 по существу идентична обработке для СРЕДНЕГО отрезка фиг.11, за исключением того, что код 0000 тактируют 32 раза на этапе 101 до запуска и тактирования в счетчик следующего значения полубайта на этапах 102 и 103. И вновь, петля обработки с обратным отсчетом на этапах 104, 105 и 106 осуществляет выдачу до 000082 12 полнительных тактовых значений свыше 32,формируя общую длину отрезка. При положительном результате проверки на этапе 85 (фиг.10) это означает, что отрезок относится к диапазону ДЛИННЫЕ с длиной от 48 до 303 элементов изображения, при этом отрезок обрабатывают, как показано на фиг.13. В этом случае процесс обработки начинается тактированием значения 0000 48 раз на этапе 111,после чего следующий входной полубайт запускают на этапе 112. Поэтому, для отрезка диапазона БОЛЕЕ ДЛИННЫЕ длина отрезка свыше 48 элементов изображения определяется как 8 битовый код; полубайт, запущенный на этапе 112, представлет старшую половину 8-битового кода, и его тактируют в 8-битовый счетчик при управлении сигналом контроллера в шине 48(фиг.8). После этого следующий полубайт запускается на этапе 114, и этот полубайт, содержащий младшую половину 8-битового кода,тактируют как младший полубайт в 8-битовый счетчик 38. Наконец, петля обработки с обратным отсчетом на этапах 116, 117 и 118, осуществляет обратный отсчет 8-битового значения,представленного в счетчике, до достижения нуля, и затем процедура обработки возвращается к начальному этапу А (фиг. 9). Хотя на фиг.8 не отображено, однако следует иметь в виду, что если изменение фона разрешено (как в таблице на фиг.5), то содержание регистра 36 может модифицироваться при управлении от контроллера 20, чтобы он (регистр) содержал величину вновь выбранного фонового цвета, а не 0000. Кроме этого, число раз первоначального тактирования этого значения для отрезка на этапах 91, 101 и 111 фиг.11,12 и 13, соответственно, будет 15, 31 и 47 раз, а не 16, 32 и 48, как описывалось ранее. Для осуществления схемы кодирования по фиг.6 и 7 модификации устройства по фиг.8 очевидны для специалиста в данной области техники без дополнительного пояснения. Ясно,что каскады сравнения 28, 30, 32 не нужно конфигурировать для проверки использования конкретных кодовых слов, и что в регистре 36 предусмотрен прием, запоминание и вывод (под управлением контроллера 26) значений цветов,не являющихся значением цвета фона в течение отрезков не фоновых цветов. Аналогичные доводы применимы к варианту осуществления с использованием подмножеств преобладающих цветов. Из вышеизложенного специалистам в данной области очевидны другие модификации. Эти модификации могут включать в себя другие признаки, которые уже известны в области систем и устройств кодирования видеосигнала и их компонентов, которые можно использовать вместо или в дополнение к описанным признакам. Несмотря на то, что формула изобретения составлена для конкретных сочетаний признаков,следует иметь в виду, что объем данного изо 13 бретения также включает в себя любой новый признак или любое новое сочетание признаков,раскрытых здесь, как непосредственно указанных, так и подразумеваемых, или любые их обобщения; независимо от того, относятся ли они к заявленному в этом виде данному изобретению в каком-либо из его пунктов формулы или нет, решают ли они какие-либо или все те же технические задачи, как это делает данное изобретение или нет. ФОРМУЛА ИЗОБРЕТЕНИЯ 1. Способ формирования кодированного сигнала видеоизображения, при котором осуществляют кодирование значений цвета элементов изображения последовательности кадров цифрового видеоизображения, отличающийся тем,что для каждого кадра каждому разному цвету в данном изображении присваивают значение цвета, выявляют преобладающий цвет из числа разных цветов для кадра изображения, отрезки,по меньшей мере, двух последовательных элементов изображения преобладающего цвета кодируют в виде первого кодового слова, указывающего отрезок, и второго кодового слова,указывающего длину отрезка, а элементы изображения, имеющие цвета, отличающиеся от преобладающего цвета, кодируют в виде кодов,содержащих, по меньшей мере, соответствующие значения цвета. 2. Способ по п.1, отличающийся тем, что каждый элемент изображения, имеющий цвет,отличающийся от преобладающего цвета, кодируют отдельно в виде соответствующего значения цвета. 3. Способ по п.1, отличающийся тем, что отрезки из двух или более последовательных элементов изображения, цвет которых отличается от преобладающего цвета, кодируют совместно в виде первого кодового слова, указывающего отрезок, второго кодового слова, указывающего длину отрезка, и третьего кодового слова, указывающего значение цвета. 4. Способ по п.1, отличающийся тем, что первое кодовое слово включает в себя субкод,указывающий один диапазон из ряда диапазонов длин отрезков, а второе кодовое слово указывает длину отрезка из указанного диапазона. 5. Способ по любому из пп.1-4, отличающийся тем, что формируют дополнительный код, включающий в себя определение значения цвета, причем после введения упомянутого дополнительного кода в поток кодов цвета элементов изображения преобладающий цвет, определенный для кодируемых отрезков, заменяют на цвет, определенный посредством дополнительного кода. 6. Способ по п.5, отличающийся тем, что дополнительный код содержит первое кодовое слово, указывающее отрезок, и субкод, указывающий изменение преобладающего цвета, и 14 второе кодовое слово, содержащее значение цвета для нового преобладающего цвета. 7. Способ по п.1, отличающийся тем, что отрезки из одного или двух элементов изображения преобладающего цвета соответственно кодируют в виде одной или двух последовательных итераций значения цвета для преобладающего цвета. 8. Способ по п.5, отличающийся тем, что кодовая последовательность для кадра начинается с дополнительного кода, определяющего исходный преобладающий цвет. 9. Способ по п.1, отличающийся тем, что определяют подмножество цветов в изображении, включающее преобладающий цвет, в качестве основных цветов, при этом цветам, отличающимся от основных цветов, присваивают соответствующие коды первой длины из первого диапазона кодов значений цвета, основным цветам присваивают соответствующие коды второго диапазона кодов значений цвета второй длины, более короткой, чем первая длина, и отрезок, по меньшей мере, из двух элементов изображения одного из основных цветов кодируют в виде первого кодового слова, указывающего отрезок основного цвета, и второго кодового слова, указывающего в отдельных субкодах длину отрезка и код значения цвета соответственно. 10. Способ по п.1, отличающийся тем, что второе кодовое слово предшествует первому кодовому слову в коде для отрезка. 11. Устройство кодирования видеоизображения, отличающееся тем, что содержит вход для приема потока данных, определяющих значения цвета элементов изображения для кадра цифрового видеоизображения, процессор цифровых данных, выполненный с возможностью приема потока данных и присвоения каждому отличающемуся от других цвету в изображении соответствующего кода цвета, средство для выявления преобладающего цвета из числа разных цветов для кадра изображения, средство для выделения в потоке данных отрезков, по меньшей мере, из двух последовательных элементов изображения преобладающего цвета и выработки для каждого такого отрезка предварительно определенного первого кодового слова, указывающего отрезок, и второго кодового слова,указывающего длину отрезка, и средство для выявления в указанном потоке данных элементов изображения, имеющих цвета, отличающиеся от преобладающего цвета, и кодирования этих элементов изображения в виде кодов, содержащих, по меньшей мере, соответствующие коды цвета. 12. Устройство отображения видеоизображения, выполненное с возможностью приема и декодирования кодированного сигнала видеоизображения, сформированного способом по п.1, отличающееся тем, что содержит вход для приема кодированного сигнала видеоизображе 15 ния, средство обработки данных, соединенное с входом и выполненное с возможностью выделения кодированных значений цвета элементов изображения в кодированном сигнале видеоизображения, по меньшей мере, одно запоминающее устройство для хранения данных, определяющих таблицу преобразования цветов элементов изображения, включая преобладающий цвет, для кадров цифрового видеоизображения в кодированном сигнале видеоизображения, причем запоминающее устройство соединено со средством обработки данных и имеет возможность адресации посредством кодированных значений цвета элементов изображения, и средство форматирования изображения, соединенное со средством обработки данных и выполненное с возможностью формирования для выдачи на устройство отображения элементов изображения отрезков, по меньшей мере, из двух последовательных элементов изображения преобладающего цвета и отдельно определенных элементов изображения, имеющих цвета, отличающиеся от преобладающего цвета.

МПК / Метки

МПК: H03M 1/00

Метки: цветного, реализации, способ, кодирования, устройство, изображения

Код ссылки

<a href="http://easpatents.com/11-82-sposob-kodirovaniya-cvetnogo-izobrazheniya-i-ustrojjstvo-dlya-ego-realizacii.html" rel="bookmark" title="База патентов Евразийского Союза">Способ кодирования цветного изображения и устройство для его реализации</a>

Похожие патенты