Устройство для вычисления скользящего среднего значения
Авторы патента:
Изобретение относится к вычислительной технике и может быть использовано для обработки телевизионных изображений. Цель изобретения - упрощение. Устройство содержит сумматор, два блока элементов задержки, блоки деления и накапливающий сумматор. 2 ил.
Устройство относится к вычислительной технике и предназначено для использования в быстродействующих специализированных устройствах при обработке двумерных массивов данных, в частности для обработки телевизионных изображений в реальном масштабе времени.
Известно устройство для вычисления скользящего среднего (авт. св. СССР N 1247895, кл. G 06 F 15/36, 04.01.85), содержащее три регистра, два сумматора, накапливающий сумматор, коммутатор и блок управления, генератор тактовых импульсов, содержащий делитель частоты и триггер, причем первый информационный вход устройства соединен с входом накапливающего сумматора, выход которого соединен с входом третьего регистра, выход которого соединен с первым входом второго сумматора и выходом скользящего среднего "по столбцу" устройства, второй информационный вход устройства соединен с первым входом коммутатора, выход которого соединен с вторым входом второго сумматора, выход которого соединен с входами второго и первого регистров, выход которого соединен с вторым входом коммутатора, выход второго регистра соединен с выходом скользящего среднего "по строке" устройства, первым входом первого сумматора и вторым входом второго сумматора, выход которого является выходом скользящего среднего "по кресту" устройства, выход генератора тактовых импульсов соединен с управляющим входом второго регистра и входами триггера и делителя частоты, выход которого соединен с управляющим входом первого регистра, выход триггера соединен с управляющими входами коммутатора, первого сумматора и третьего регистра. Устройство реализует вычисление среднего значения по скользящей апертуре типа "крест". Недостатком устройства являются ограниченные функциональные возможности, так как оно не позволяет формировать среднее значение по двумерной прямоугольной скользящей апертуре. Операция вычисления среднего значения по двумерной скользящей апертуре широко используется при обработке различного рода двумерных сигналов, в частности при обработке телевизионных изображений. Наиболее близким техническим решением к заявляемому является устройство для вычисления скользящего среднего (авт. св. СССР N 1485270, кл. G 06 F 15/36, 17.11.87), содержащее многовходовый сумматор, выход которого подключен к входу делимого блока деления и является выходом одномерной скользящей суммы устройства, m-1 сдвигающих регистров (m - число выборок), счетчик, причем выход блока деления является выходом одномерного скользящего среднего устройства, дополнительный многовходовый сумматор, дополнительный блок деления, К триггеров (К - число интервалов усреднения), К блоков памяти, К-1 коммутаторов, при этом выход j-го регистра, кроме (m-1)-го, подключен к информационному входу (j+1)-го регистра и (j+1)-входу многовходового сумматора (j = 1, 2, ..., m-2), выход (m-1)-го регистра соединен с m-входом многовходового сумматора, информационный вход первого регистра объединен с первым входом сумматора и является информационным входом устройства, единичный выход j-го триггера, кроме К-го, подключен к D-входу (j+1)-го триггера, входу разрешения записи-считывания j-го блока памяти, единичный выход К-го триггера соединен с D-входом первого триггера и входом разрешения записи-считывания К-го блока памяти, единичный выход i-го триггера (i = 2, 3, . . . , K) подключен к управляющему входу соответствующего коммутатора, первые информационные входы которых объединены и соединены с выходом первого блока памяти, тактовый вход которого объединен с тактовыми входами i блоков памяти, с тактовыми входами счетчика и регистров и является тактовым входом устройства, выход сумматора подключен к первому входу дополнительного многовходового сумматора, другие входы которого соединены соответственно с выходами коммутаторов, выход дополнительного многовходового сумматора подключен к входу делимого дополнительного блока деления и является выходом двумерной скользящей суммы устройства, вход делителя дополнительного блока деления является входом задания числа выборок двумерного среднего, а выход - выходом двумерного скользящего среднего устройства, вход делителя и выход блока деления являются соответственно входом задания числа выборок одномерного среднего и выходом одномерного скользящего среднего, вход установки в "1" К-го триггера объединен с входами установки в "0" (К-1)-го триггера и установки в "0" счетчика и является входом предустановки устройства, входы синхронизации триггеров объединены и являются входом синхронизации устройства, выход счетчика подключен к адресным входам блоков памяти, выходы которых, кроме первого, соединены с вторыми информационными входами соответствующих коммутаторов. Устройство реализует вычисление среднего значения и суммы отсчетов по двумерной скользящей апертуре путем параллельного суммирования отсчетов текущего отрезка строки и подсчитанных ранее сумм элементов соответствующих отрезков других строк, принадлежащих текущей двумерной апертуре. Процесс суммирования соответствующих значений организован параллельно-последовательно. Для вычисления сумм соответствующих значений используются два последовательно соединенных многовходовых сумматора. Многовходовый сумматор представляет собой дерево сумматоров. Для реализации N-входового сумматора используются N-1 сумматоров для сложения двух операндов. Таким образом, для организации процесса вычисления используется 2(N-1) сумматоров для сложения двух операндов. Это приводит к большим аппаратурным затратам при вычислении скользящего среднего по скользящей апертуре больших размеров. При N = =32, например, для реализации двух 32-входовых сумматоров необходимо 62 сумматора для сложения двух операндов. Кроме того, для организации процесса вычисления необходимы запоминающие элементы (блоки памяти) общим объемом V = L . M (k ++ [log2 N]) бит для хранения промежуточных сумм элементов отрезков строк (L - количество отсчетов в строке двумерного массива данных, M, N - количество отсчетов в столбце и строке двумерной скользящей апертуры, k - количество разрядов на информационном входе устройства, [ ] - ближайшее справа целое число). Таким образом, недостатком устройства являются высокие аппаратурные затраты, особенно при больших размерах скользящей апертуры. Кроме того, следует отметить следующее. Время срабатывания N-входового древовидного сумматора определяется из выражения tNсум = tc2 . [log2 N], где tNсум - продолжительность такта работы N-входового сумматора; N - количество входов многовходового сумматора; tc2 - продолжительность работы сумматора для сложения двух операндов; [ ] - ближайшее справа целое число. Такт работы устройства определяется суммарным временем срабатывания регистра и двух многовходовых сумматоров: t = tR + 2tNсум = tR + 2tc2 . [log2 N]. Например, при N = 32, имеют t = tR + 2tc2 . log2 32 = tR + 10tc2. Принимая tR = 40 нс и tc2 = 40 нс, имеют t = 40 + 400 = 440 нс. Такое низкое быстродействие не позволяет обрабатывать, например, телевизионные изображения в реальном масштабе времени. Таким образом, недостатком устройства является низкое быстродействие. Существенно снизить объем аппаратурных затрат и повысить быстродействие устройства можно, организовав рекуррентно процесс вычисления. Это позволяет свести к минимуму необходимое количество арифметических операций (сложение, вычитание) и сократить объем требуемых запоминающих элементов. Все это позволяет существенно снизить объем аппаратурных затрат, особенно при больших размерах скользящей апертуры. Целью изобретения является сокращение аппаратурных затрат. Цель достигается тем, что в устройство для вычисления скользящего среднего значения, содержащее два блока деления, введены два блока элементов задержки, два вычитателя, сумматор и накапливающий сумматор, причем информационный вход устройства соединен с входом уменьшаемого первого вычитателя и входом первого блока элементов задержки, выход которого соединен с входом вычитаемого первого вычитателя, выход которого соединен с первым входом сумматора, выход которого соединен с входом второго блока элементов задержки, третий выход которого соединен с вторым входом сумматора, выходом одномерной скользящей суммы устройства и входом делимого первого блока деления, выход которого является выходом одномерного скользящего среднего значения устройства, первый и второй выходы второго блока элементов задержки соединены соответственно с входами уменьшаемого и вычитаемого второго вычитателя, выход которого соединен с входом накапливающего сумматора, выход которого соединен с выходом двумерной скользящей суммы устройства и входом делимого второго блока деления, выход которого является выходом двумерного скользящего среднего значения устройства, входы задания числа выборок одномерного массива и вход задания числа выборок двумерного массива соединены соответственно с входами делителя первого и второго блоков деления, тактовые входы блоков элементов задержки, накапливающего сумматора и блоков деления объединены и соединены с тактовым входом устройства. Сопоставительный анализ с прототипом показывает, что заявляемое устройство отличается наличием новых блоков: двух блоков элементов задержки, двух вычитателей, сумматора и накапливающего сумматора, их связями между собой и с остальными элементами схемы. Это позволяет сделать вывод о соответствии устройства критерию "новизна". Сопоставительный анализ с другими техническими решениями показывает, что сумматоры, накапливающие сумматоры и вычитатели широко известны (см., например, Зельдин Е.А. Цифровые интегральные микросхемы в информационно-измерительной аппаратуре. - Л.: Энергоатомиздат, Ленинградское отделение, 1986). Блок деления может быть реализован как умножитель, на один вход которого подается величина, обратная делителю. Умножители широко известны (см. Титце У., Шенк К. Полупроводниковая схемотехника: Справочное руководство. М.: Мир, 1983). Блок элементов задержки может быть реализован как параллельное соединение сдвиговых регистров соответствующей длины, тактовые входы которых объединены и соединены с тактовым входом блока элементов задержки. Реализация сдвиговых регистров на основе интегральных микросхем широко известна (см. Титце У., Шенк К. Полупроводниковая схемотехника: Справочное руководство. М.: Мир, 1983). Однако введение известных блоков в указанной связи между ними и с остальными элементами схемы позволяет сократить объем аппаратурных затрат и повысить быстродействие устройства. Это позволяет сделать вывод о соответствии предлагаемого решения критерию "существенные отличия". На фиг. 1 представлена схема заявляемого устройства; на фиг. 2 показано взаимное расположение элементов текущей апертуры bij и предшествующей апертуры bij-1 и текущего отсчета xij изображения. Устройство содержит блоки 1 и 2 элементов задержки, вычитатели 3 и 4, сумматор 5, накапливающий сумматор 6, блоки 7 и 8 деления, информационный вход 9 устройства, тактовый вход 10 устройства, вход 11 задания числа выборки одномерного массива, вход 12 задания числа выборок двумерного массива, выход 13 одномерного скользящего среднего, выход 14 одномерной скользящей суммы устройства, выход 15 двумерного скользящего среднего устройства, выход 16 двумерной скользящей суммы устройства. Информационный вход 9 устройства соединен с входом уменьшаемого вычитателя 3 и входом блока 1 элементов задержки. Выход блока 1 элементов задержки соединен с входом вычитаемого вычитателя 3. Выход вычитателя 3 соединен с первым входом сумматора 5. Выход сумматора 5 соединен с входом блока 2 элементов задержки. Третий выход блока 2 элементов задержки соединен с вторым входом сумматора 5, выходом 14 одномерной скользящей суммы устройства и входом делимого блока 7 деления. Выход блока 7 деления является выходом 13 одномерного скользящего среднего устройства. Первый и второй выходы блока 2 элементов задержки соединены соответственно с входами уменьшаемого и вычитаемого вычитателя 4. Выход вычитателя 4 соединен с входом накапливающего сумматора 6. Выход накапливающего сумматора 6 соединен с выходом 16 двумерной скользящей суммы устройства и входом делимого блока 8 деления. Выход блока 8 деления является выходом 15 двумерного скользящего среднего устройства. Вход 11 задания числа выборок одномерного массива соединен с входом делителя блока 7 деления. Вход 12 задания числа выборок двумерного массива соединен с входом делителя блока 8 деления. Тактовые входы блоков 1 и 2 элементов задержки, накапливающего сумматора 6 и блоков 7 и 8 деления объединены и соединены с тактовым входом 10 устройства. Блок 1 элементов задержки имеет длину L.M, блок 2 элементов задержки имеет длину L, причем на его первом, втором и третьем выходах осуществляется задержка элементов на 1, N+1 и L тактов работы соответственно M и N - количество отсчетов в столбце и строке скользящей апертуры, L - количество отсчетов в строке изображения). Устройство работает следующим образом. Предлагаемое устройство реализует рекуррентное вычисление значения двумерной скользящей суммы и среднего значения. Двумерное скользящее среднее определяется путем вычисления среднего значения по элементам перемещающейся по двумерному массиву данных (изображению) прямоугольной апертуры размерности МхN элементов изображения (М и N - число отсчетов (элементов) изображения соответственно в столбце и строке апертуры) и замены значения центрального элемента апертуры подсчитанным средним значением. Текущая апертура bij и предшествующая апертура bi,j-1 (см. фиг. 2) отличаются друг от друга двумя столбиками ai,j-N и aij по М отсчетов в каждом. Учитывая это, можно записать MEAN(bij) = MEAN(bi,j-1) + MEAN(aij) - - MEAN(ai,j-N), (1) где МEAN(bi,j-1) - сумма значений отсчетов апертуры bi,j-1;MEAN(ai,j-N) - сумма значений отсчетов столбца ai,j-N.
В свою очередь, столбики aij и ai-1,j отличаются друг от друга двумя отсчетами xi-M,j и xij. Учитывая это, можно записать
MEAN(aij) = MEAN(ai-1,j) + xij - xi-M,j, (2) где MEAN(aij) - сумма значений отсчетов столбика aij отсчетов высотой М;
xij - значение отсчета (i,j) изображения. Подставив уравнение (2) в выражение (1), получают
MEAN(bij) = MEAN(bi,j-1) + MEAN(ai-1,j) + xij- - xi-M,j - MEAN(aij-M). (3)
Выражение (3) описывает порядок рекуррентного формирования значения суммы значений отсчетов текущей апертуры bij. При этом
x


MEAN(b


MEAN(a






Локальные средние значения











tcд - время сдвига информации в блоке элементов задержки;
tc - время срабатывания сумматора;
tв - время срабатывания вычитателя. Принимая tсд = 40 нс, tc = 40 нс, tв = 50 нс, имеют












М и N - количество отсчетов в строке и столбце скользящей апертуры;
L - количество отсчетов в строке изображения;
k - количество разрядов на информационном входе устройства. Принимая М = N = 32, L = 512 и k = 8, имеют







V = 512.32.(8+log2 32) - 16024.13 = 208312 бит. Необходимый объем запоминающих элементов для хранения промежуточных результатов вычислений в заявляемом устройстве меньше, чем в устройстве-прототипе в V/

















где

Формула изобретения
РИСУНКИ
Рисунок 1, Рисунок 2
Похожие патенты:
Устройство для ранговой фильтрации // 2015551
Изобретение относится к вычислительной технике и может быть использовано при высокоскоростной обработке изображений
Изобретение относится к вычислительной технике и радиотехнике и предназначено для применения в анализаторах спектра и устройствах цифровой обработки сигналов
Изобретение относится к вычислительной технике и может быть использовано в специализированных системах для обработки сигналов и изображений
Изобретение относится к вычислительной технике и может найти применение при проектировании программ для ЭВМ
Устройство для решения задачи анализа продолжительности функционирования сложного объекта // 2015547
Изобретение относится к вычислительной технике и может быть использовано для анализа продолжительности функционирования сложного объекта
Способ обмена информации в микрокалькуляторной сети и микрокалькуляторная сеть для его осуществления // 2015545
Изобретение относится к вычислительной технике и телеавтоматике, в частности к обучающим системам, построенным на микрокалькуляторах
Устройство для перебора перестановок // 2012054
Изобретение относится к вычислительной технике, предназначено для формирования в произвольной последовательности перестановок и может быть использовано для решения комбинаторных задач, а также в системах контроля для генерации кодовых последовательностей
Изобретение относится к вычислительной технике и может быть использовано в электронной цифровой вычислительной машине
Изобретение относится к электронным играм
Микроэвм // 2108619
Изобретение относится к области микропроцессорной техники, в частности, может применяться для реализации обмена информацией
Изобретение относится к области цифровой вычислительной техники и предназначено для обработки двух или больше компьютерных команд параллельно
Изобретение относится к области вычислительной техники и предназначено для создания высокоскоростных систем обработки больших потоков данных в реальном режиме времени
Схемное устройство для параллельной обработки двух или более команд в цифровом компьютере // 2111531
Изобретение относится к цифровым компьютерным системам и предназначено для обработки двух и более команд параллельно
Многопроцессорная векторная эвм // 2113010
Изобретение относится к вычислительной технике, точнее к построению многопроцессорных векторных ЭВМ
Изобретение относится к вычислительной технике и может найти применение в автоматизированных системах управления АСУ индустриального и специального назначения
Изобретение относится к изготовлению выкроек, в частности таких выкроек, которые должны использоваться при изготовлении предметов одежды