СПОСОБ ОБРАБОТКИ РАСТРОВЫХ ИЗОБРАЖЕНИЙ
METHOD TO PROCESS RASTER IMAGES

Изобретение относится к области обработки растровых изображений, а именно к способам сжимающего кодирования и декодирования для систем связи и хранения растровых изображений.
Изобретение может быть использовано в системах передачи и хранения данных, в вычислительной технике, в приборостроении, в телеметрических системах.
Известен способ обработки растровых изображений, в котором кодирование изображения с целью сжатия производится на основе метода JPG (См. заявку на патент США US 2007/0036451 A1).
Недостатком данного способа является то, что он не обеспечивает гарантированный, постоянный и заранее известный коэффициент сжатия как для всего сжимаемого изображения целиком, так и для каждого фрагмента изображения заданного размера. Также недостатком является то, что такие данные не обладают высокой устойчивостью к потерям и искажениям при передаче. Искажение сжатых данных, соответствующих определенной области изображения, приводит к искажениям других областей. Как при сжатии изображений методом JPEG, так и при восстановлении, требуемое число элементарных операций на пиксел достаточно велико. При этом невозможно эффективно распараллелить процедуру сжатия, так как все блоки не являются независимыми.
Известен также способ обработки растровых изображений, в котором кодирование изображения с целью сжатия производится на основе метода усеченного блочного кодирования (ВТС - «block truncation coding» в англоязычной литературе). (См. заявку на патент США US 2010/0067812 A1). В нем предполагается разбиение изображения на блоки заданного размера. При этом блоки могут быть произвольного размера и формы, не обязательно квадратные, и не обязательно они должны иметь одинаковый размер для всего изображения.
Данный способ взят за прототип предложенного изобретения.
Недостатком данного способа является то, что качество восстановленного после сжатия изображения по общеупотребительным формализованным критериям таким, как пиковое отношение сигнал/шум (ПОСШ или PSNR в англоязычной литературе), среднеквадратическое отклонение (СКО или MSE в англоязычной литературе), структурное подобие (SSim англоязычной литературе) и др., при использовании блоков большего размера, чем 4×4 пиксела, оказывается значительно худшим, чем при сжатии тех же изображений методом JPEG с тем же коэффициентом сжатия. Уменьшение размера блока повышает качество восстановленных изображений, но одновременно резко снижает коэффициент сжатия.
В предлагаемом способе ставится техническая задача повышения качества декодированных растровых изображений при использовании для их сжимающего кодирования методов на основе усеченного блочного кодирования или их модификаций.
Данная техническая задача решается за счет того, что в способе обработки растровых изображений, включающем сжатие изображения методом «усеченного блочного кодирования» или его модификациями, перед процедурой сжимающего кодирования выполняют цифровую фильтрацию, повышающую резкость сжимаемого изображения, а после процедуры декодирования выполняют сглаживающую цифровую фильтрацию декодированного изображения. Фильтрация может применяться либо ко всем пикселам сжимаемого изображения, либо выборочно, например, повышающая резкость фильтрация - для малоконтрастных блоков, сглаживающая фильтрация - для блоков с высокой контрастностью. Фильтрация также может быть адаптивной, явно или опосредованно учитывающей распределение пикселов по яркости в окрестностях фильтруемого пиксела.
Данный способ поясняется с помощью прилагаемых чертежей на примере подбора параметров согласованных фильтров с размером окна 3×3, при учете того, что и повышающий резкость (этап префильтрации), и сглаживающий фильтры (этап постфильтрации) должны быть симметричными, т.е. множители для пикселов, расположенных на заданном расстоянии от текущего (фильтруемого), должны быть одинаковыми независимо от направления. На фиг.1 изображен блок 3×3 при префильтрации. На фиг.2 изображен блок 3×3 при постфильтрации. На фиг.3 в виде трехмерного графика приведены результаты работы модельной программы по подбору параметров фильтров для общепринятого эталоного изображения LENA при кодированнии методом усеченного блочного кодирования с размером блока 3×3 и числом уровней квантования равным двум.
На фиг.4 изображен исходный блок 3×3 в другом примере использования согласованных фильтров применительно к пиксельному блоку 3×3, когда процедуры префильтрации и постфильтрации используют также пикселы окружения за границами блока. На фиг.5 изображен декодированный блок после применения метода усеченного блочного кодирования без фильтрации. На фиг.6 изображен исходный блок после префильтрации. На фиг.7 изображен декодированный блок после метода усеченного блочного кодирования с префильтрацией. На фиг.8 изображен декодированный блок после постфильтрации.
<mrow><mover accent="true"><mi>u</mi><mo stretchy="true">¯</mo></mover></mrow>
<mrow><mover accent="true"><mi>u</mi><mo stretchy="true">¯</mo></mover></mrow>
<mrow><mover accent="true"><mi>u</mi><mo stretchy="true">¯</mo></mover></mrow>
<mrow><mover accent="true"><mi>u</mi><mo stretchy="true">¯</mo></mover></mrow>
В классической реализации метода усеченного блочного кодирования для каждого блока изображения вычисляются средняя яркость
и среднеквадратичное отклонение яркости σ, после чего формируется битовая матрица, в которой каждому пикселу блока, яркость которого превосходит порог
, ставится в соответствие один бит (для определенности - 0, если яркость пиксела меньше
, 1 - в противном случае). Для каждого блока кодер сохраняет
, σ и построенную описанным выше методом битовую матрицу, фактически содержащую квантованные на два уровня значения яркостей пикселов блока. При восстановлении пикселы, которым в битовой матрице соответствовали значения 1 и 0, заменяются на
<mrow><mover accent="true"><mi>u</mi><mo stretchy="true">¯</mo></mover><mo>+</mo><mi>σ</mi><msqrt><mrow><mfrac><mrow><mi>m</mi><mo>−</mo><mi>q</mi></mrow><mi>q</mi></mfrac></mrow></msqrt></mrow>
<mrow><mover accent="true"><mi>u</mi><mo stretchy="true">¯</mo></mover><mo>−</mo><mi>σ</mi><msqrt><mrow><mfrac><mi>q</mi><mrow><mi>m</mi><mo>-</mo><mi>q</mi></mrow></mfrac></mrow></msqrt></mrow>
и
(здесь m - число пикселов в блоке, a q - число пикселов, яркость которых превышает пороговое значение, т.е. тех, которым в битовой матрице соответствует 1). Такой подход позволяет для каждого блока восстановленного изображения сохранить неизменными среднюю яркость и дисперсию.
Восстановленные после сжатия методом усеченного блочного кодирования изображения содержат ряд визульных артефактов, связанных со значительным (до 2, 4 или 8 - в зависимости от числа уровней квантования) сокращением числа градаций яркости изображения внутри каждого кодированного блока и как следствие этого - со сглаживанием внутриблокового рельефа.
Коэффициент сжатия при использовании метода усеченного блочного кодирования определяется только размером блока, не зависит от особенностей изображения, и при 8 уровнях квантования составляет обычно от 2 (блок 4×4 пиксела) до 2.5 (блок 8×8).
В предлагаемом способе обработки растровых изображений перед процедурой сжимающего кодирования выполняют цифровую фильтрацию, повышающую резкость сжимаемого изображения, а после процедуры декодирования выполняют сглаживающую цифровую фильтрацию декодированного изображения.
Приведем примеры осуществления способа.
Пример 1.
(Пара согласованных фильтров применяется для всего изображения, к каждому пикселу, независимо от его яркости и яркости пикселов окружения).
Рассмотрим пример подбора параметров согласованных фильтров с размером окна 3×3, при учете того, что и повышающий резкость, и сглаживающий фильтры выполнены симметричными, т.е. множители для пикселов, расположенных на заданном расстоянии от текущего (фильтруемого), должны быть одинаковыми независимо от направления.
1
2
1
2
В первом примере: m0 (w0) - множитель, применяемый к текущему фильтруемому пикселу, m и m (w и w) - множители, применяемые к пикселам, отстоящим от текущего на одну позицию в вертикальном, горизонтальном и диагональном направлениях. Поскольку средняя яркость изображения при использовании фильтров не должна меняться, для повышающего резкость и сглаживающего фильтров выполняются условия соответственно
0
1
2
m-4*(m+m)=1
и
0
1
2
w+4*(w+w)=1.
1
2
1
2
Таким образом, каждый фильтр полностью описывается всего лишь парой коэффициентов, а экспериментальная оценка параметров фильтров сводится к подбору пар (m, m) и (w, w), обеспечивающих минимум среднеквадратичного отклонения (MSE), определяемого как
<mrow><mi>M</mi><mi>S</mi><mi>E</mi><mo>=</mo><mfrac><mn>1</mn><mrow><mi>N</mi><mo>×</mo><mi>M</mi></mrow></mfrac><msup><mrow><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mrow><mstyle displaystyle="true"><munderover><mo>∑</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><mrow><mrow><mo>(</mo><mrow><msub><mi>I</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>−</mo><msub><mover accent="true"><mi>I</mi><mo>⌢</mo></mover><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub></mrow><mo>)</mo></mrow></mrow></mstyle></mrow></mstyle></mrow><mn>2</mn></msup></mrow>
i,j
<mrow><msub><mover accent="true"><mi>I</mi><mo>⌢</mo></mover><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub></mrow>
где I и
- соответственно пикселы исходного и восстановленного изображений с координатами i и j, а N и М - длина пиксельной строки и число строк изображения.
При использовании моделирующей программы для поиска пар согласованных фильтров для каждого повышающего резкость фильтра, используемого для предварительной фильтрации, подбирается соответствующий (т.е. обеспечивающий минимальное для данного повышающего резкость фильтра значение среднеквадратичного отклонения) постфильтр.
1
2
1
2
На фиг.3 в виде трехмерного графика приведены результаты работы модельной программы по подбору параметров фильтров для изображения LENA при кодированнии методом усеченного блочного кодирования с размером блока 3×3 и числом уровней квантования, равным двум. Горизонтальная плоскость соответствует различным значениям пар (m, m), по вертикали отложены соответствующие каждой паре наименьшие значения среднеквадратичного отклонения. График представляет собой вогнутую поверхность с минимумом в точке с координатами m=17/64, m=3/64.
1
2
Использование повышающего резкость фильтра с указанными параметрами вместе с согласованным с ним сглаживающим фильтром с w=26/256, w=11/256 позволяет при сжатии методом усеченного блочного кодирования с размером блока 3×3 и числом уровней квантования 2 получить для тестового изображения LENA значение среднеквадратичного отклонения MSE=8,464. Без фильтрации значение среднеквадратичного отклонения для того же изображения, кодированного с использованием блока того же размера и тем же числом уровней квантования, составляет 18,196.
Таким образом, применение согласованной фильтрации обеспечило выигрыш по MSE в 2.15 раза, что соответствует увеличению пикового отношения сигнала к шуму на 3.324 dB, причем без увеличения объема передаваемых декодеру данных.
Пример 2.
Во втором примере использования согласованных фильтров применительно к пиксельному блоку 3×3 и процедуры префильтрации и постфильтрации используют также пикселы окружения за границами блока.
При использовании метода усеченного блочного кодирования без фильтрации среднеквадратичное отклонение для данного декодированного блока (не всего изображения, как в примере 1) составляет 65,78, при использовании фильтрации - 18,89.
Заявленный способ обработки растровых изображений может быть осуществлен в промышленности с применением освоенных технологий, материалов и вычислительных процессов и может быть использован в системах передачи и хранения данных.
Предложенный способ обработки растровых изображений прошел экспериментальную проверку в ООО «Вокорд СофтЛаб». Экспериментальная проверка данного способа показала повышение качества декодированных растровых изображений при использовании для их сжимающего кодирования методов на основе усеченного блочного кодирования или их модификаций.
Эксперименты, проведенные на серии тестовых изображений, с использованием повышающих резкость и сглаживающих фильтров с окном постоянного размера 3×3 пиксела продемонстрировали, что применение указанного подхода позволяет уменьшить значение среднеквадратической отклонения в среднем в 2-4 раза. Параметры фильтров такого типа определяются размерами блока и числом уровней квантования и мало зависят от характера сжимаемого изображения. Это позволяет использовать одну и ту же пару фильтров для сжатия самых разных изображений, что подтверждается экспериментами. Применение описанного подхода возможно при использовании любой модификации метода усеченного блочного кодирования.
При этом выяснилось, что особенности реализации фильтров, применяемых для предварительной фильтрации кодируемых изображений и постфильтрации восстановленных изображений, не имеют решающего значения. Существенной для фильтра, применяемого к пикселам исходного изображения, является его способность подчеркивать элементы рельефа блока изображения, т.е. увеличивать разницу между минимальным и максимальным значениями яркости пикселов кодируемого блока, а для фильтра, используемого на этапе постфильтрации, - способность сглаживать эти элементы, т.е. уменьшать разницу между минимальным и максимальным значениями яркости пикселов декодированного блока. Фильтры могут применяться не ко всем пикселам изображений, а избирательно, к удовлетворяющим установленным критериям, например, к находящимся в малоконтрастных блоках. Фильтры также могут быть адаптивными, явно или опосредованно учитывающими распределение пикселов по яркости в окрестностях фильтруемого пиксела.
Предложенный способ обработки растровых изображений рекомендован к использованию в системах передачи и хранения данных, в вычислительной технике, в приборостроении, в телеметрических системах.