Обработка изображений с помощью процессоров табличных преобразований
Автор: Арефьев Е.Ю., Проскурин А.В.
Журнал: Компьютерная оптика @computer-optics
Рубрика: Автоматизация проектирования
Статья в выпуске: 7, 1990 года.
Бесплатный доступ
Выделен класс алгоритмов обработки растровых изображений - алгоритмы первичной обработки изображений (ПОИз). Рассмотрен метод эффективной (по быстродействию) аппаратной реализации алгоритмов ПОИз с помощью табличных преобразователей, позволяющий строить высокопроизводительные процессоры ПОИз из перепрограммируемых функциональных модулей.
Короткий адрес: https://sciup.org/14058224
IDR: 14058224
Текст научной статьи Обработка изображений с помощью процессоров табличных преобразований
В настоящее время популярны алгоритмы локальной обработки, которые вырождаются в суперпозицию (возможно многократную) линейной обработки окном и поэлементного преобразования (ф = фо о ф, о ...о ФдО ...о Фр, где фд - алгоритм одного из указанных двух классов). Поскольку поэлементная обработка рассмотрена ранее, рассмотрим линейную обработку "окном". В общем виде оператор преобразования ф имеет вид g(m,n) = ф[(,т/п] = Е Е dCk,I)’f(т+k, п+1) (1)
-
к, I G U f - функция яркости исходного изображения;
-
g - функция яркости обработанного изображения;
f(m,n)zg(ш,п) - их значения;
W - область "окна";
-
d - линейная маска;
a(k,l) - значения коэффициентов линейной маски.
Соотношение (1) описывает двумерную свертку функции яркости исходного изображения f с импульсной характеристикой а некоторой двумерной КИХ-системы. Выбирая определенным образом коэффициенты маски a(k,l) и размеры окна, можно выполнить различные операции по улучшению качества изображения: повышение резкости, подчеркивание контуров, сглаживания шумов и т.д.
Для эффективной аппаратурной реализации оператора (1) предлагается перейти к свертке поэлементных преобразований элементов окна. Причем, поэлементное преобразование предлагается применить для исключения операции перемножения а(к,1)" •■f(m+kz n+l) и замены ее операцией: а ( к,I)•f(m + kz n + l) = у^ ^[f(m + k, п+1)].
Таким образом, процедура локальной обработки принимает вид ф[Т,ш,п] = Е Е у. ,[f(m+kz n + L)]z k, I G U z 1 что позволяет исключить не только трудоемкую операцию умножения, но и существенно расширить класс решаемых задач.
Если используется прямоугольное окно W с размерами Кх L, то маска у содержит К* l таблиц поэлементных преобразований у^ ^. Для адресации этих таблиц необходимо Е - [ loga(K • к)] двоичных разрядов. Таким образом, маску поэлементных преобразований можно помещать в ОЗУ с организацией 2^ х к х L G-разрядных слов, где G, F имеют тот же смысл, что и для поэлементных преобразований (см. рис. 2).

write read

Часто для преобразования изображений используется совместное поэлементное преобразование двух полей в соответствии с соотношением f3(mzn) = d•f1(mzn)•fа(mzn) + Ь-^(т,п) ♦ c*fa(mzn);
где: f (mzn), f2(mzn) - элементы соответственно первого и второго входных полей; f3(mzn) - результат преобразования (элемент входного поля);
dzbzc - коэффициенты преобразования.
Используя табличные преобразования, можно эффективно реализовать эту процедуру следующим образом: все произведения вида const-f(mzn) заменить поэлементными преобразованиями f3 Такая замена кроме упрощения реализации процедуры значительно расширяет ее возможности. Для умножения, суммирования здесь необходимо использовать матричные перемножитель и сумматор соответственно. При работе с бинарными изображениями эффективно применение логического фильтра, который представляет собой перемещающееся по изображению "окно" малых размеров. Центральный элемент "окна" заменяется логической функцией отсчетов, попавших в "окно": g(mzn) = logiс[f(mzn)J = logic[f(m+k, n + l) : k, I 6 ti] W где: g(mzn) - обработанное изображение (бинарное); f(mzn) - исходное изображение (бинарное); logic - логическая функция по "окну" W. W Для "окна" Зх3 элемента объем памяти, требуемый для записи логической функции от всех элементов, попавших в окно, равен 2е бит, для окна 5Х5 элементов -2 ”32 Мбит. Поэтому "окно" 5Х5 не используют. Однако возможно компромиссное решение: повернутое "окно", диагонали которого содержат по пять элементов (рис. 3 где а - нормальное "окно", б - повернутое "окно" 5Х5 по диагонали). Требуемый объем памяти для него 213 - 8 кбит, что позволяет реализовать высокоэффективный логический фильтр на одной БИС ОЗУ (рис. 4). Таким образом, благодаря табличным преобразованиям становится возможной эффективная реализация широкого класса алгоритмов в реальном времени при использовании простых серийных средств электронной промышленности. A, RAM g logic f(m ♦ k; n ♦ I) k,l 6 W write __w/R read Рис. t