Обнаружение дубликатов на изображениях

ОБНАРУЖЕНИЕ ДУБЛИКАТОВ НА ИЗОБРАЖЕНИЯХ

Глумов Н.И. , Кузнецов А.В. • 1 Институт систем обработки изображений РАН 2 Самарский государственный аэрокосмический университет имени академика С.П. Королёва

Аннотация

В статье предлагается алгоритм автоматического обнаружения на изображениях дубликатов - повторяющихся, пространственно разнесённых на изображении фрагментов, внесённых искусственным образом. Алгоритм основан на применении признаков, инвариантных к геометрическим и яркостным преобразованиям изображения и рассчитываемых на основе преобразования Фурье-Меллина. В статье представлено сравнение разработанного алгоритма с существующими аналогами, а также проанализированы его преимущества и недостатки.

Ключевые слова: искусственное изменение, дубликаты, встраивание, преобразование

Фурье-Меллина, вектор-признак.

Одним из наиболее распространённых видов фальсификации изображения [1] является устранение на изображении некоторого объекта (например, нежелательного лица на изображении, транспортного средства, здания или иного объекта, позволяющего идентифицировать время и место съёмки). Такая операция обычно производится путём замены соответствующей области изображения на участки текстуры фона, окружающего устраняемый объект. Это легко сделать в современных системах обработки изображений (например, с помощью инструмента Cloning в Adobe Photoshop). На рис. 1а, б приведён пример космического снимка - исходного и искажённого путём закрытия части земной поверхности облаком, сдублированным из этого же снимка. Следует отметить, что при замене одних фрагментов изображения на другие могут осуществляться различные преобразования (яркостные, геометрические) дублицируемых фрагментов.

Поскольку ценность информации на изображении, объективно отражающей реальность, не вызывает сомнений, очевидна необходимость выявления таких искажённых снимков, для чего необходимо использовать множество алгоритмов обнаружения фальсификаций на изображениях. Эти алгоритмы позволяют обнаруживать несоответствия локальных и глобальных свойств изображения, обусловленных ресэмплированием, JPEG-сжатием, частотно-шумовыми искажениями и т.д. [2, 3, 4, 5]. Среди этих алгоритмов важное место занимают алгоритмы выявления дубликатов на изображении.

Известные алгоритмы выявления дубликатов [1, 4, 5] основаны на разбиении анализируемого изображения на блоки (как правило, непересекающиеся) и их попарном сравнении. При сравнении блоков обычно используются не сами пиксели блоков, а рассчитываемые по блокам вторичные признаки, инвариантные к яркостным и/или геометрическим преобразованиям. Близость по некоторому критерию векторов признаков для двух блоков указывает на схожесть двух блоков, что может быть вследствие наличия дубликатов.

При таком подходе возникает множество проблем, основными среди которых являются:

1) 2)

3)

4)

5)

выбор размера блока;

выбор схемы разбиения изображения на блоки; выбор алгоритма сравнения; выбор признаков, инвариантных к возможным искажениям дублицируемого фрагмента изображения;

выбор решающего правила для определения идентичности блоков и определение его параметров.

а) Г . ';".1 б) I

Рис. 1. Пример фальсификации изображения путём

дублирования текстуры: исходное изображение

Следует отметить, что в работах по данной тематике [1, 4, 5] не уделяется должного внимания всем этим проблемам: они либо недостаточно описаны, либо выбраны конкретные решения без надлежащего обоснования и не всегда удовлетворяющие всем требованиям к алгоритму по надёжности и вычислительной сложности.

Выбор размера блока

Основным фактором при выборе размера и формы блока является учёт предполагаемых размеров, встраиваемых или устраняемых объектов на изображении. Очевидно, что для надёжного выявления дублицируемых областей необходимо, чтобы размер блока не превышал размера дубликата (иначе блок «захватит» недублицируемый фон, т.е. исходный блок и дубликат будут отличаться). Вместе с тем значительное уменьшение размера блока MxM до нескольких десятков пикселей) приведёт к огромному количеству ложно обнаруживаемых попарно похожих областей, что затруднит в конечном итоге обнаружение дубликатов. Размер блока М должен быть меньше области, которую мы хотим обнару-

жить, чтобы при минимальном сдвиге блока при анализе (на 1 пиксель) обеспечить попадание блока в дублицированную область на изображении.

Вследствие априорной неопределенности формы дублицируемых областей наиболее оптимальным было бы использование блока в виде круга. Однако применение для расчёта признаков быстрых спектральных или рекурсивных алгоритмов делает целесообразным использование квадратных блоков. Причём их применение (например, быстрого преобразования Фурье) делает целесообразным использование размеров блоков, являющихся степенью 2.

Выбор схемы разбиения изображения на блоки

При простом разбиении изображения на неперекрывающиеся блоки для последующего их сравнения дубликат может оказаться в нескольких блоках, покрывая только часть каждого блока, и, следовательно, остаться необнаруженным.

Наиболее надёжным, с точки зрения качества обнаружения, является сравнение каждого блока со всеми возможными (перекрывающимися) блоками. Этот подход требует порядка (М^)2 сравнений для изображения размеров N1 х^ пикселей.

С практической точки зрения такой подход бесполезен при обработке крупноразмерных изображений (при NN>1000) из-за высоких затрат ресурсов процессора, памяти, а также больших временных затрат.

Использование схемы разбиения с перекрытиями блоков снижает количество сравнений в V2, где V расстояние (сдвиг) между соседними блоками. Очевидно, что с ростом V качество обнаружения будет снижаться при заметном снижении вычислительной сложности алгоритма. При больших значениях Nl,N2 задача выбора параметра V, обеспечивающего компромисс между вычислительной сложностью и качеством обнаружения, может просто не иметь приемлемого решения.

В данной работе предлагается использование малых значений V (при v/M<0Д), при этом проблема вычислительной сложности может быть решена с помощью описанного ниже двухэтапного алгоритма сравнения блоков.

Алгоритм сравнения блоков

Как уже было отмечено выше, для сравнения блоков используются рассчитанные по ним вектора признаков Gl(l) и G2(l), 0</^. Тогда для оценки сходства блоков можно использовать критерий

1-1

° ("о1, ) = ^аР (1) ,0 < "о1 <",0 < <~

N

N

¿-1 г,

<6 .

где е - пороговое значение для принятия решения о близости векторов-признаков.

С целью снижения вычислительной сложности предлагается ввести этап предварительного анализа блоков. Для этого по входному изображению х (п1, п2) строится скалярное поле

где а(1) - априорно заданные коэффициенты (например, единичные).

Отметим, что из близости блоков по критерию (1) следует близость значений поля. Таким образом, можно провести предварительный отсев сравниваемых блоков по близости значений 5 (пц1, пи2), и

только для предварительно отобранных пар потенциально похожих блоков проводить дальнейшее сравнение по критерию (1).

Пересортировка номеров блоков на изображении, получаемых в порядке построчной развёртки, в соответствии со значениями поля 5 (пц1, пи2) уже

требует порядка N1N1log(NN2/V2)уу2 , что кардинально уменьшает вычислительную сложность базового алгоритма.

Большее уменьшение вычислительной сложности может быть получено с помощью построения ненормированной гистограммы hs (/') на поле

5 (пц1, пи2). Тогда можно ограничиться сравнением текущего блока, учтённого в (i), только с блоками из (i -1), (/'), (/' +1). В этом случае потребуется порядка (i)) сравнений.

г

Вычисление векторов-признаков

Для сравнения блоков изображения в простейшем случае может использоваться сумма квадратов разностей значений пикселей блоков. Но даже если при этом реализовать яркостную нормализацию блоков (чтобы обеспечить инвариантность к яркост-ным изменениям дубликатов), дубликаты, подвергшиеся геометрическим преобразованиям, останутся необнаруженными.

Таким образом, при сравнении блоков необходимо использовать признаки, инвариантные к широкому классу преобразований. Такими признаками могут быть моментные инварианты, моменты Цер-нике [6], спектральные признаки, рассчитанные на основе преобразования Фурье-Меллина [7, 8], и другие. При вычислении всех этих признаков, обеспечивающих строгую инвариантность для случая непрерывного изображения, в дискретном случае возникают интерполяционные погрешности изображений, вследствие чего инвариантность обеспечивается в ограниченном диапазоне угла поворота и коэффициента масштабирования дубликата.

В данной работе предлагается алгоритм формирования инвариантных признаков на основе преобразования Фурье-Меллина, состоящий из следующих этапов:

- яркостная нормализация блока X (да1, т2) размером М хM , т.е. приведение яркостных характе-

l =0

I =0

ристик (математического ожидания Ех и дисперсии

Dx) к заданным:

X (т1, т2) - Е Y (т1, т2 ) = — х

- обрезание блока с целью устранения влияния углов блока при повороте:

Z (т1, т2) =

= и (т1,т2), если т12 + т22 <(М2)2, [0, иначе;

- вычисление преобразования Фурье f (т1, т2 ) = F (Y (т1, т2)) для блока;

- высокочастотная фильтрация спектра;

- перевод спектра в лог-полярные координаты

(р, 0) = (ег,б), где (г,б) - координаты в лог-полярной системе координат;

- проецирование полученного 2D массива на ось

0 :

g

р 0еД0,

2п1 2п

где Д0 =

L

L

L - длина одномерного

массива (L = 2[1°82 М ]).

- вычисление обратного преобразования Фурье для полученного одномерного массива.

В результате для каждого блока формируется

вектор G (I) = ^ (g (01))|, состоящий из ¿/2 признаков (модулей коэффициентов Фурье).

Алгоритм обнаружения дубликатов

Получив после этапа формирования признаков набор векторов, каждый из которых соответствует блоку, необходимо провести их классификацию и сгруппировать наиболее близкие вектора в группы, а затем проанализировать состав этих групп.

Итак, на первом этапе будем формировать массив наиболее близких векторов. Далее, предполагая, что размеры встроенной области превышают размеры блока, производится окончательный отбор похожих блоков с учётом их расположения на изображении, а именно по критерию их группировки по смещению друг относительно друга. Иными словами, среди отобранных наиболее близких векторов-признаков необходимо выделить:

1) вектора, чьи соответствующие блоки находятся на одинаковом расстоянии друг от друга;

2) вектора, чьи соответствующие блоки расположены рядом относительно друг друга.

При выполнении этих условий из отобранных векторов-признаков будут отобраны те, для которых со-

ответствующие блоки будут образовывать группы и находиться на одинаковом расстоянии друг от друга.

Для этого строим гистограмму смещений блоков. Пусть d (г, j) - вектор расстояния между блоками г (координаты центра (п1г, п 2,)) и j (координаты цен-

тра ( П1 ] , П 2 ] ) ): d (г, ] ) = (

пи - п1 ]

п 2,- - п 2]

Гистограмма Н (d (,, ])) представляет собой таблицу, где каждому смещению (2) соответствует количество таких смещений. Гистограмма позволит определить относительное расположение блоков друг относительно друга и отделить ошибочные блоки. Количество смещений на ней, превышающее некоторый порог, определяет группы блоков, соответствующие копируемой области (остальные блоки считаем ложно обнаруженными и игнорируем их).

На рис. 2а-г приведены примеры применения предлагаемого алгоритма для выявления дубликатов на изображении для двух вариантов геометрического преобразования дубликата: с поворотом на 24° (рис. 2а, б) и с масштабированием в 1,08 раза (фрагмент был увеличен на 8%) (рис. 2в, г).

Рис. 2. Результаты работы алгоритма обнаружения дубликатов

Исследование разработанного алгоритма Для проведения исследований точности работы алгоритма обнаружения дубликатов было выбрано 20 изображений с размерами 1000*1000 и 3000*3000, вырезанных со снимков, полученных спутниками SPOT-2 и SPOT-4. В данные изображения производилось встраивание блоков-дубликатов, составляющих от 5% до 10% от исходного изображения, повёрнутых на угол от 0 до 90 градусов.

Как уже отмечалось выше, основным фактором, определяющим вычислительную сложность метода

х

в целом, является сложность алгоритма сравнения блоков. Применение предложенного подхода позволило сократить время вычислительного эксперимента в 100-1000 раз, что сделало возможным применение метода для анализа крупноразмерных изображений размером до нескольких десятков мегабайт.

В рамках поставленного эксперимента вычислялись значения ошибок первого (^01) и второго (^10) рода. Ошибка первого рода (пропуск блока-дубликата) колебалась в пределах 0,6 - 0,8, при этом ошибка второго рода (выявление блоков-дубликатов, не являющихся дубликатами) была достаточно мала, как показано на рис. 3. Следует отметить, что на изображении эти лишние блоки являются смежными, перекрываются с подлинными блоками-дубликатами, однако они не мешают установлению факта наличия блоков-дубликатов.

фрагмента: K=(SoJSin)100%. Такой подход дает лучшие результаты по сравнению с результатами [5], где пороговое значение угла составляет 15°.

p01

k---J r-4

5 20 50 75 ф

Рис. 3. Зависимость ошибок первого и второго рода от значений углов поворота дубликатов

Было проведено исследование зависимости ошибок первого и второго рода от увеличения и уменьшения размеров блока-дубликата на 5 - 17%. Результаты имеют похожий характер: средняя ошибка второго рода составляет 3 - 4%, а ошибка первого рода увеличивается с увеличением коэффициента масштабирования блока-дубликата (рис. 4).

0,8

— p01 -b-pio

1-—\ \---J r-4

0,6 0,4 0,2

01

0,83 0,91 1,00 1,09 Кхса1е

Рис. 4. Зависимость ошибок первого и второго рода от значений коэффициентов масштабирования дубликатов

Как видно из рис. 5, разработанный алгоритм инвариантен к углу поворота с высокой точностью, так как при формировании признаков в скользящем окне, их значения вычисляются по вписанной в окно окружности, чтобы исключить лишние пиксели, которые вносят существенную погрешность при формировании признаков по описанной окружности или по скользящему окну. При исследовании качества работы алгоритма в качестве критерия было выбрано отношение относительной площади обнаруженного фрагмента изображения к относительной площади встроенного

I-"-* Л -co

\ —i a X Л г kJ г s'

0 20 40 60 80 100 120 140 160 ср

Рис. 5. Зависимость точности обнаружения от угла поворота дубликата для разработанного (1) и существующего (2) алгоритмов

Проведённые исследования показали, что разработанный алгоритм имеет хорошие показатели ошибки первого и второго рода, а также хорошее визуальное выделение дубликатов на изображении. В дальнейшем разработка алгоритма будет посвящена увеличению скорости работы алгоритма за счёт модификации признакового пространства.

Благодарности

Работа выполнена при поддержке Российского фонда фундаментальных исследований (РФФИ), № П-07-Ш59-офи-м-2011, П-07-Ш60-офи-м-2011.

Литература

1. Popescu, A.C. Statistical Tools for Digital Image Foren-sics / A.C. Popescu // PhD thesis, Dartmouth College, Department of Computer Science, Hanover, USA. - 2005. -P. 11-102.

2. Глумов, Н.И. Обнаружение на изображениях искусственных изменений локального происхождения /

H.И. Глумов, А.В. Кузнецов // Автометрия. - 2011. -Т. 47, № 3. - С. 3-11.

3. Glumov, N.I. Analysis of images for local artificial changes with JPEG compression properties / N.I. Glumov, A.V. Kuznetsov // Pattern Recognition and Image Analysis. - 2011. - Vol. 21(2). - С. 244-246.

4. Bayram, S. A Survey of Copy-Move Forgery Detection Techniques / S. Bayram, H.T. Sencar, N. Memon // IEEE Western New York Image Processing Workshop. - 2008. - P. 1-4.

5. Popescu, A.C. Exposing digital forgeries by detecting duplicated image regions / A.C. Popescu, H. Farid // Technical Report, TR2004-515, Dartmouth College, Department of Computer Science, Hanover, USA. - 2004. - P. 1-3.

6. Biswas, R. On the fast computation of Zernike moments / R. Biswas, S. Biswas // ISIE 2010. - 2010. - P. 1680-1685.

7. Sheng, Y. Experiments on pattern recognition using invariant fourier-mellin descriptors / Y. Sheng, H.H. Arsena-ult // J. Opt. Soc. Am. A. - 1986. - Vol. 3(6). - P. 771-775.

8. Lin, C.Y. Rotation, scale, and translation resilient watermarking for images / C.Y. Lin, M. Wu, J.A. Bloom,

I.J. Cox, M.L. Miller, Y.M. Lui // IEEE Transactions on Image Processing. - 2001. - Vol. 10(5). - P. 767-782.

References

1. Popescu, A.C. Statistical Tools for Digital Image Forensics / A.C. Popescu // PhD thesis, Dartmouth College, Department of Computer Science, Hanover, USA. - 2005. - P. 11-102.

2. Glumov, N.I. Local artificial images changes detection / N.I. Glumov, A.V. Kuznetsov // Avtometriya. - 2011. -Vol. 47(3). - P. 3-11. - (in Russian).

3. Glumov, N.I. Analysis of images for local artificial changes with JPEG compression properties / N.I. Glumov, A.V. Kuznetsov // Pattern Recognition and Image Analysis. - 2011. - Vol. 21(2). - C. 244-246.

4. Bayram, S. A Survey of Copy-Move Forgery Detection Techniques / S. Bayram, H.T. Sencar, N. Memon // IEEE Western New York Image Processing Workshop. - 2008. - P. 1-4.

5. Popescu, A.C. Exposing digital forgeries by detecting duplicated image regions / A.C. Popescu, H. Farid // Techni-

cal Report, TR2004-515, Dartmouth College, Department of Computer Science, Hanover, USA. - 2004. - P. 1-3.

6. Biswas, R. On the fast computation of Zernike moments / R. Biswas, S. Biswas // ISIE 2010. - 2010. - P. 1680-1685.

7. Sheng, Y. Experiments on pattern recognition using invariant fourier-mellin descriptors / Y. Sheng, H.H. Arsena-ult // J. Opt. Soc. Am. A. - 1986. - Vol. 3(6). - P. 771-775.

8. Lin, C.Y. Rotation, scale, and translation resilient watermarking for images / C.Y. Lin, M. Wu, J.A. Bloom, I.J. Cox, M.L. Miller, Y.M. Lui // IEEE Transactions on Image Processing. - 2001. - Vol. 10(5). - P. 767-782.

COPY-MOVE IMAGE FORENSICS DETECTION

Glumov N.I.1, Kuznetsov A.V.1'2 1 Image Processing Systems Institute of the RAS, 2 S.P. Korolyov Samara State Aerospace University

Abstract

A new algorithm for copy-move forgeries (repeated, dimensionally distributed image parts) automatic detection is proposed in this paper. The algorithm is based on usage of image features invariant to geometrical and intensity transforms, which are calculated on the basis of Fourier-Mellin transform. There are also described the comparison of developed algorithm and existing solutions and the advantages and disadvantages of proposed method in the paper.

Key words: artificial changes, copy-move, embedding, Fourier-Mellin transform, features vector.

Сведения об авторах Глумов Николай Иванович, родился в 1962 году. В 1985 году окончил Куйбышевский авиационный институт (ныне Самарский государственный аэрокосмический университет). В 1994 году защитил диссертацию на степень кандидата технических наук. В настоящее время работает старшим научным сотрудником в Институте систем обработки изображений РАН. Круг научных интересов включает обработку изображений и распознавание образов, компрессию изображений, моделирование систем формирования цифровых изображений. Имеет свыше 100 публикаций, в том числе более 40 статей, две монографии (в соавторстве). E-mail: nglu@smr.ru.

Nikolay Ivanovich Glumov (b. 1962) graduated with honours (1985) from the S. P. Korolyov Kuibyshev Aviation Institute (presently, S. P. Korolyov Samara State Aerospace University (SSAU)). He received his Candidate in Technics (1994) degree from Samara State Aerospace University. He is the senior research scientist at the Samara Image Processing Systems Institute of the Russian Academy of Sciences (IPSI RAS) His current research interests include image processing and pattern recognition, images compression, digital images forming systems modelling. He has more than 100 publications, including more than 40 scientific papers, 2 monographs (in co-authorship).

Кузнецов Андрей Владимирович, родился в 1987 году. В 2010 году окончил Самарский государственный аэрокосмический университет (СГАУ) с отличием по специальности «Прикладная математика и информатика». В настоящее время работает стажером-исследователем в Институте систем обработки изображений РАН, является аспирантом СГАУ. Круг научных интересов включает обработку и анализ изображений, обнаружение локальных изменений на изображениях, распознавание образов, геоинформатику. Имеет 13 публикаций, в том числе 4 научных статьи. E-mail: kuznetsoff.andrey@gmail.com.

Andrey Vladimirovich Kuznetsov (b. 1987) graduated with honours (2010) from the S. P. Korolyov Samara State Aerospace University (SSAU), majoring in Applied Mathematics and Informatics. He works as a researcher in Samara Image Processing Systems Institute of the Russian Academy of Sciences (IPSI RAS), also studies as a postgraduate student in SSAU. His research interests are currently focused on image processing and analysis, local images changes detection, pattern recognition, geoinformatics. He has 13 publications, including 4 scientific papers.

Поступила в редакцию 18 октября 2011 г.