УСТРОЙСТВО ДЛЯ ОПРЕДЕЛЕНИЯ РАЗЛИЧИЯ МЕЖДУ ИСХОДНЫМ И ОБРАБОТАННЫМ ИЗОБРАЖЕНИЯМИ

Полезная модель относится к устройствам цифровой обработки изображений и может быть использована в различных устройствах, осуществляющих обработку статических цифровых изображений, в частности при оценке качества кодирования, фильтрации неподвижных цифровых изображений.
Известно описание метода определения различия между исходным и обработанным цифровыми изображениями (обработанное изображение получено из исходного), изложенное в книге D.Salomon, Data Compression: The complete reference. Second Edition. - New York - Verlag, 2000, p.240-242. В данном методе определения различия между изображениями используется среднеквадратическая ошибка (СКО), которая для пары «исходное изображении - обработанное изображение» вычисляется следующим образом:
где I представляет собой исходное изображение размером H×W элементов, а I' - обработанное изображение. В данном случае обработка подразумевает любые операции, за исключением зеркального отражения, сдвига, поворота или любых их сочетаний.
Данный подход отличается простотой реализации устройства вычисления среднеквадратической ошибки, однако СКО, как показано в Гонсалес Р., Вудс Р. Цифровая обработка изображений. М.: "Техносфера", 2005 - 356 с. в отдельных случаях может незначительно меняться при значительном ухудшении качества изображения, следовательно, данный критерий не может быть использован в системах обработки изображений для построения оценок, согласованных с визуальным оцениванием.
Известно, также устройство определения различия между несколькими обработанными цифровыми изображениями, полученными из исходного, принятое за прототип (патент Российской Федерации №2234131, кл. G 06 Т 1/00, G 06 F 7/38, Бюл. №22), содержащее блок хранения исходного и подвергшихся обработке цифровых изображений, блок предварительной коррекции, блок сравнения индексов искажений, блок управления и генерации адресов, блок вычисления индекса искажений, состоящий из блока вычисления косинуса, блока вычисления нормировочного коэффициента, блоков умножения, блоков суммирования, блоков извлечения квадратного корня, блока деления, блока вычисления арккосинуса. Недостатком данного устройства является невозможность непосредственной оценки контрастных и яркостных отличий обработанного изображения от исходного. Данные отличия (искажения) являются превалирующими при визуальной оценке качества обработанного изображения.
Предлагаемая полезная модель позволяет осуществлять вычисление более корректного показателя различия между исходным и обработанным изображениями (обработанное изображение получено из исходного), согласующегося с визуальным оцениванием.
Технический результат достигается тем, что в устройстве определения различия между исходным изображением и обработанным цифровыми изображениями (обработанное изображение получено из исходного), содержащем блок хранения исходного и подвергшегося обработке цифровых изображений, блок управления и генерации адресов, блок вычисления различия между изображениями, в блоке вычисления различия между изображениями вычисление различия осуществляется по формуле:
- средняя яркость исходного изображения,
- средняя яркость обработанного
изображения,
- дисперсия исходного изображения,
- дисперсия обработанного
изображения.
Таким образом, в данной формуле учитываются искажение яркости и контраста обработанного изображения, а также достоверность обработанного изображения, по отношению к исходному.
На фигуре представлена схема устройства, реализующего полезную модель.
Устройство состоит из блока хранения исходного и обработанного изображений (блок 1), который позволяет осуществлять независимую, поэлементную выборку из хранящихся в нем изображений, указанный блок соединен с блоком вычисления различия между исходным и обработанным изображением, полученным из исходного (блок 2). С каждым из вышеперечисленных блоков связан блок управления и генерации адресов для управления вычислительными процессами, происходящими в устройстве, а также выборки необходимой информации (блок 3). Результатом работы
устройства является показатель отклонения обработанного изображения от исходного.
Нумерация входов и выходов блоков на фигуре начинается сверху.
Блок вычисления различия между двумя изображениями (блок 2) включает в себя блоки вычисления суммы с накоплением (блоки 2.1 и 2.8), которые производят арифметическое суммирование поступающей на вход величины со значением, хранящимся во внутреннем регистре блоков по пришествии синхронизирующих сигналов, причем на вход блока 2.1 поступает величина с первого выхода блока 1, а на вход блока 2.8 поступает величина с третьего выхода блока 1, выходы данных блоков соединены с первыми входами блоков деления (блоки 2.2, 2.9), которые производят арифметическое деление входных величин, поступающих на первые входы блоков на величины, поступающие на вторые входы блоков, по пришествии синхронизирующего сигнала, причем на вторые входы блоков деления поступает величина со второго входа блока хранения исходного и обработанного изображений, выходы блоков 2.2 и 2.9 соединены с первыми входами блоков вычисления арифметической разности между двумя величинами (блоки 2.3, 2.10), которые поступают на их входы, по пришествии синхронизирующего сигнала, с входами блоков 2.23 и 2.24, осуществляющими возведение в квадрат величин, подаваемых на их входы, а также с третьим и четвертым входами блока 2.26, осуществляющем вычисление произведения величин, подаваемых на его входы. Блоки вычисления арифметической разности между величинами, подаваемыми на их входы (блоки 2.3, 2.10), причем на второй вход блока 2.3 подается величина с первого выхода блока 1, на второй вход блока 2.10 подается величина с третьего выхода блока 1, соединены с блоками возведения в квадрат величин, поступающей на их входы (блоки 2.4, 2.11) по пришествии синхронизирующего сигнала. Блоки возведения в квадрат (блоки 2.4, 2.11) соединены с блоками (блоки 2.5, 2.12) арифметического суммирования поступающих на их входы величин со значением, хранящимся во внутреннем
регистре блоков по пришествии синхронизирующих сигналов, выходы данных блоков соединены с первыми входами блоков 2.6, 2.13, которые производят арифметическое деление величин, поступающей на первые входы блоков на величины, поступающие на вторые входы блоков по пришествии синхронизирующего сигнала, причем на вторые входы данных блоков поступает величина со второго выхода блока 1. Первые выходы блоков 2.6, 2.13 соединены с первым и вторым входом блока вычисления арифметической суммы входных величины (блок 2.15) по пришествии синхронизирующего сигнала. Выходы блоков вычисления арифметического квадратного корня (блоки 2.7, 2.14) соединены с первым и вторым входами блока вычисления произведения (блок 2.26). Выход блока 2.15, который выполняет арифметическое сложение двух величин, подаваемых на его входы, соединен с первым входом блока 2.27. Блок 2.16 осуществляет вычисление арифметической разницы между двумя величинами по пришествии синхронизирующего сигнала, подаваемыми на входы блока, причем, на первый вход блока подается величина с первого выхода блока 1, а на второй вход блока подается величина с третьего выхода блока 1, данный блок соединен с блоком возведения в квадрат (блок 2.17). Блоки 2.18 и 2.17 осуществляют возведение в квадрат величины, поступающей на вход блока по пришествии синхронизирующего сигнала, причем на вход блока 2.18 подается величина с первого выхода блока 1, данные блоки соединены с блоками 2.19 и 2.20. Блоки 2.19 и 2.20 осуществляют арифметическое суммирование поступающих на их входы величины со значением, хранящимся во внутреннем регистре блоков по пришествии синхронизирующего сигнала, данные блоки соединены с блоком 2.21. Блок 2.21 осуществляет деление величины, подаваемой на первый вход блока, на величину, подаваемую на второй вход блока, по пришествии синхронизирующего сигнала, причем на первый вход блока подается величина с выхода блока 2.19, а на второй вход блока подается величина с выхода блока 2.20. Данный блок соединен с блоком 2.22. Блок 2.22
вычисляет разность между двумя величинами, поступающими на вход блока по пришествии синхронизирующего сигнала, причем на первый вход подается постоянная (величина постоянной, подаваемой на вход блока равна четырем), а на второй вход подается величина с выхода блока 2.21, данный блок соединен с блоком 2.29. Блоки 2.23 и 2.24 осуществляют возведение в квадрат величины, поступающей на вход блока по пришествии синхронизирующего сигнала, данные блоки соединены с блоком 2.25, причем на первый вход блока 2.25 подается величина с выхода блока 2.23, а на второй вход блока 2.25 подается величина с выхода блока 2.24. Блок 2.25 осуществляет суммирование двух величин, поступающих на вход блока по пришествии синхронизирующего сигнала, выход данного блока соединен со вторым входом блока 2.27, который осуществляет умножение величин, подаваемых на его входы. Блок 2.26 осуществляет вычисление произведение величин, поступающих на его входы по пришествии синхронизирующего сигнала, данный блок соединен с первым входом блока 2.28, который осуществляет деление двух величин, поступающих на его входы. Блок 2.28 осуществляет деление величины, поступающей на второй его вход на величину, поступающую на первый его вход, данный блок связан с блоком 2.29, который осуществляет вычисление арифметического произведения величин, поступающих на входы блока, причем на третий вход поступает постоянная (величина постоянной, подаваемой на вход блока равна четырем).
Устройство работает следующим образом. По синхронизирующему сигналу загрузки, который генерирует блок 3, в блок 1 осуществляется загрузка исходного и обработанного изображений. После окончания загрузки после поступления сигнала синхронизации осуществляется передача изображений в блок 2 и вычисления различия между переданными изображениями.
Рассмотрим подробнее процесс вычисления различия для изображений, осуществляемой в блоке 2.
После поступления синхронизирующего сигнала общей инициализации от блока 3 к блоку 2 производится обнуление внутренних регистров хранения блоков 2.1, 2.8, на входы всех элементов блока 2, за исключением элементов 2.2, 2.9, 2.6, 2.13, подаются нулевые значения. На вторые входы блоков 2.2, 2.9, 2.6, 2.13 подаются величины равные площади сравниваемых изображений.
При поступлении синхронизирующего сигнала загрузки элемента изображения, происходит выборка значений точек, имеющих индекс (i,j), для обработанного изображения I'(i,j) и оригинала I(i,j). Величина I'(i,j) подается на первые входы блоков 2.8, 2.16; величина I(i,j) подается на первые входы блоков 2.1, 2.16, 2.18. При поступлении синхронизирующего сигнала на блоки 2.1 и 2.8 осуществляется сложение входных величин со значением, хранящимся во внутреннем регистре. Затем, происходит изменение значений индексов i и j следующим образом: если j<W-1, то индекс j увеличивается на единицу, если j=W-1 и i≠H-1, то индекс j устанавливается равным нулю, а индекс i увеличивается на единицу, затем на вход блоков 2.1 и 2.8 подаются новые значения точек изображений и выполняется суммирование. Такой процесс повторяется для всех i<H и j<W. После окончания описанного выше процесса происходит формированием блоком 3 синхронизирующего сигнала выдачи данных, который поступает на блоки 2.1 и 2.8, результат вычисления в блоке 2.1 поступает на первый вход блока 2.2, результат вычисления в блоке 2.8 поступает на первый вход блока 2.9. При поступлении синхронизирующего сигнала деления на блоки 2.2 и 2.9 из блока 3 осуществляется вычисление арифметического деления величин подаваемых на первые входы блоков на величины, подаваемых на вторые входы блоков, результат вычисления в блоке 2.2 поступает на первый вход блока 2.3, на третий вход блока 2.26 и на вход блока 2.23, результат вычисления в блоке 2.9 поступает на первый вход блока 2.10, на вход блока 2.24 и на четвертый вход блока 2.26. При
поступлении синхронизирующего сигнала на блоки 2.3 и 2.10 осуществляется вычисление арифметической разности двух величин, подаваемых на входы данных блоков т.е. значений полученных со входов блоков 2.2 и 2.9 и значений величин I(i,j) и I'(i,j), соответственно поступающих с первого и третьего выходов блока 1. Результат вычисления в блоке 2.3 поступают на вход блока 2.4, результат вычисления в блоке 2.10 поступают на вход блока 2.11, в данных блоках входные величины возводятся в квадрат, результат вычисления в блоке 2.4 поступает на вход блока 2.5, результат вычисления в блока 2.11 поступает на вход блока 2.12. При поступлении синхронизирующего сигнала на блоки 2.5 и 2.12 осуществляется сложение входных величин со значением, хранящимся во внутреннем регистре. Затем, происходит изменение значений индексов i и j следующим образом: если j<W-1, то индекс j увеличивается на единицу, если j=W-1 и i≠H-1, то индекс j устанавливается равным нулю, а индекс i увеличивается на единицу, затем на вход блоков 2.3 и 2.10 подаются новые значения точек изображений и выполняется вычисление разности, операций возведения в квадрат в блоках 2.4 и 2.11 и операций суммирования с накоплением в блоках 2.5. и 2.12, в соответствии с синхронизирующими сигналами, генерируемыми блоком 3. Такой процесс повторяется для всех i<Н и j<W.
После окончания описанного выше процесса происходит формированием блоком 3 синхронизирующего сигнала выдачи данных, который поступает на блоки 2.5 и 2.12, результат вычисления в блоке 2.5 поступает на первый вход блока 2.6, результат вычисления в блоке 2.12 поступает на первый вход блока 2.13. При поступлении синхронизирующего сигнала деления на блоки 2.6 и 2.13 из блока 3 осуществляется вычисление арифметического деления величин подаваемых на первые входы блоков на величины, подаваемых на вторые входы блоков, результат вычисления в блоке 2.6 поступает на вход блока 2.7 и на первый вход блока 2.15, результат вычисления в блоке 2.13 поступает на вход блока 2.14 и на второй вход блока 2.15. При поступлении синхронизирующего сигнала вычисления корня на
блоки 2.7 и 2.14 из блока 3 осуществляется вычисление арифметического квадратного корня величин, подаваемых на входы блоков 2.7 и 2.14, результат вычисления в блоке 2.7 поступает на первый вход блока 2.26, результат вычисления в блоке 2.14 поступает на второй вход 2.26. При поступлении синхронизирующего сигнала вычисления арифметической суммы на блок 2.15 осущеcтвляется вычисление арифметической суммы входных величин, результат вычисления в блоке подается на первый вход блока 2.27.
При поступлении синхронизирующего сигнала на блок 2.16 осуществляется вычисление разности двух входных величин, т.е значений величин I(i,j) и I'(i, j), соответственно поступающих с первого и третьего выходов блока 1, результат вычисления поступает на вход блока 2.17. При поступлении синхронизирующего сигнала возведения в квадрат на блок 2.17 осуществляется возведение в квадрат входной величины данного блока, результат выполнения вычисления подается на вход блока 2.19. При поступлении синхронизирующего сигнала сложения на вход блока 2.19, осуществляется сложение входной величины со значением, хранящимся во внутреннем регистре. Затем, происходит изменение значений индексов i и j следующим образом: если j<W-1, то индекс j увеличивается на единицу, если j=W-1 и i≠H-1, то индекс j устанавливается равным нулю, а индекс i увеличивается на единицу, затем на вход блока 2.16 подаются новые значения точек изображений и выполняется вычисление разности, операция возведения в квадрат в блоке 2.17 и операция суммирования с накоплением в блоке 2.19, в соответствии с синхронизирующими сигналами, генерируемыми блоком 3. Такой процесс повторяется для всех i<H и j<W. После окончания описанного выше процесса происходит формированием блоком 3 синхронизирующего сигнала выдачи данных, который поступает на блок 2.19, результат вычисления в блоке 2.19 поступает на первый вход блока 2.21.
При поступлении синхронизирующего сигнала на блок 2.18 осуществляется вычисление квадрата величины, поступающей на вход блока, результат вычисления поступает на вход блока 2.20 осуществляется сложение входной величины со значением, хранящимся во внутреннем регистре. Затем, происходит изменение значений индексов i и j следующим образом: если j<W-1, то индекс j увеличивается на единицу, если j=W-1 и i≠H-1, то индекс j устанавливается равным нулю, а индекс i увеличивается на единицу, затем на вход блока 2.18 подаются новое значение в соответствии с индексами i и j и выполняется операция возведения в квадрат в блоке 2.18 и операция суммирования с накоплением в блоке 2.20, в соответствии с синхронизирующими сигналами, генерируемыми блоком 3. Такой процесс повторяется для всех i<H и j<W. После окончания описанного выше процесса происходит формированием блоком 3 синхронизирующего сигнала выдачи данных, который поступает на блок 2.20, результат вычисления в блоке 2.20 поступает на второй вход блока 2.21.
При поступлении синхронизирующего сигнала деления на блок 2.21 осуществляется выполнение деления величины подаваемой на первый вход блока на величину, подаваемую на второй вход блока, результат выполнения операции поступает на второй вход блока 2.22. При поступлении синхронизирующего сигнала разности на блок 2.22 осуществляется вычитание из постоянной (величина постоянной, подаваемой на вход блока равна единице), величины, поступившей на второй вход блока 2.22. Результат вычисления в блоке поступает на второй вход блока 2.29.
При поступлении синхронизирующих сигналов возведения в квадрат на блоки 2.23 и 2.24 осуществляется возведение в квадрат входных величин, результат выполнения операции в блоке 2.23 поступает на первый вход блока 2.25, результат выполнения операции в блоке 2.24 поступает на второй вход блока 2.25. При поступлении синхронизирующего сигнала сложения на блок 2.25 осуществляется сложение двух величин, поступающих на входы данного
блока, результат выполнения операции в блоке поступает на второй вход блока 2.27.
При поступлении синхронизирующего сигнала умножения на блок 2.27 осуществляется перемножение входных величин, результат выполнения операции в блоке поступает на первый вход блока 2.28. При поступлении синхронизирующего сигнала умножения на блок 2.26 осуществляется перемножение входных величин, результат выполнения операции в блоке поступает на второй вход блока 2.28. При поступлении синхронизирующего сигнала деления на блок 2.28 осуществляется операция деления величины подаваемой на второй вход блока на величину, подаваемую на первый вход блока, результат выполнения операции в блоке поступает на первый вход блока 2.29. При поступлении синхронизирующего сигнала деления на блок 2.29 осуществляется операция вычислений произведения величин, подаваемых на входы блока, результат выполнения операции в блоке является показателем различия между двумя изображениями, поданными на вход устройства.