1.6.2. Двумерное кодированиеДвумерное кодирование было разработано, чтобы преодолеть недостатки одномерного кодирования при сжатии изображений, содержащих серые области. Этот метод является опционным дополнением к Group 3 и используется только при работе в цифровых сетях. Если факс-машина поддерживает двумерное кодирование, то за кодом EOL следует еще один бит, указывающий на метод кодирования следующей строки. Если он равен 1, то будет использоваться одномерное кодирование, а 0 указывает на двумерную схему. Метод двумерного кодирования также называется MMR (modified modified READ, то есть, дважды модифицированный READ, a READ расшифровывается как relative element address designate - обозначение относительного адреса элемента). Рис. 1.21. Пять конфигураций мод. Такое странное словосочетание объясняется тем, что этот алгоритм является модификацией одномерной схемы, которая, в свою очередь, получена модификацией оригинального метода Хаффмана. Метод работает, сравнивая текущую отсканированную строку, называемую кодируемой, со строкой, отсканированной на предыдущем проходе, которая называется справочной строкой. При этом будет сжиматься разность этих строк. Алгоритм исходит из логичного предположения, что две соседние строки обычно отличаются всего несколькими пелами. При этом предполагается, что документ начинается строкой белых пелов, которая служит начальной справочной строкой. После кодирования первая строка становится справочной, а вторая строка - кодируемой. Как и при одномерном кодировании предполагается, что строка начинается белым пелом, который игнорируется приемником. Метод двумерного кодирования менее надежен, чем одномерный метод, поскольку ошибка в декодировании некоторой строки вызовет ошибки при декодировании последующих строк, и эта волна ошибок может распространиться до конца по всему документу. Вот почему стандарт Т4 (Group 3) включает требование, что после строки, закодированной одномерным методом, следует не более Сканирование кодируемой строки и ее сравнение со справочной строкой делается в трех случаях или модах. Мода определяется при сравнении очередной серии пелов справочной строки [ 1. Проходная мода. Это случай, когда 2. Вертикальная мода. В этом случае
Табл. 1.22. Двумерные коды для метода Group 4. 3. Горизонтальная мода. Серия В начале сканирования указатель Рис. 1.23. Пример двумерного кодирования. После идентификации текущей моды и передачи кода в соответствии с табл. 1.22, указатель Расширенный код в табл. 1.22 используется для преждевременного обрывания процесса кодирования до достижения конца страницы. Это необходимо сделать, если оставшаяся часть страницы будет передаваться другими кодами или в несжатой форме. Пример: Рис. 1.23 изображает, какие моды и какие коды соответствуют двум соседним строкам пелов. Статистика здравого смысла говорит, что каждый
|