1988. 268 с.
2. Якушенков Ю.Г. Теория и расчет оптико-электронных приборов. М.: Машиностроение, 1989. 360 с.
M.B. Tsudikov, T.A. Akimenko, O.Y. Gorbunova RADIATION DISPERSION ON AEROSOL PARTICLES
Influence of a fog and smokes on the permission of optical system of supervision is considered. Dependence of contrast on the sizes and concentration of aerosol particles is investigated. Program increase of contrast in difficult meteoconditions is offered.
Key words: aerosol, contrast, resolution, the software filter, radiation attenuation
Получено 07.03.12
УДК 681.5
М.Б. Цудиков, канд.техн. наук., доц. (4872)35-02-19, [email protected] (Россия, Тула, ТулГУ),
Т.А. Акименко, канд. техн. наук, доц., (4872) 23-12-95, tantan72 @mail.ru (Россия, Тула, ТулГУ),
О.Ю. Горбунова, канд. техн. наук, ассист., (4872) 41-29-84, [email protected] (Россия, Тула, ТулГУ)
АППАРАТНО-ПРОГРАММНОЕ ФОРМИРОВАНИЕ ПАНОРАМЫ
Рассмотрено формирование цилиндрической панорамы с использованием панорамного оптико-электронного устройства наблюдения. Выполнен анализ методов определения характерных точек. Выбран и реализован корреляционный метод. Разработан программно-вычислительный комплекс для сшивания панорамы с коррекцией искажения изображений.
Ключевые слова: аэрозоль, контраст, разрешение, программный фильтр, ослабление излучения
Способ создания панорамы совмещением отдельных снимков заключается в съемке одной или нескольких серий фотографий и наложением с частичным перекрытием отдельных изображений друг на друга на определенный процент площади изображения. При использовании данного метода камера поворачивается на определенное расстояние в положение, из которого должен быть сделан следующий снимок до тех пор, пока весь 360-градусный цикл не будет пройден. Изображения затем соединяются, формируя панорамное изображение с помощью специального программного обеспечения. Количество отдельных изображений и выбранная форма проекции определяют, какой тип панорамы (цилиндрическая, сферическая, кубическая) будет получен в результате.
Для получения цилиндрических панорам достаточно одной гори-
356
зонтальной последовательности изображений, получаемых с использованием однорядной техники.
Панорамное оптико-электронного устройств наблюдения (ПОУЭН) с программной компенсацией поворота изображения [1], разработанное в ТулГУ, позволяет получать автоматически серию кадров для цилиндрической панорамы, а на рис. 1 представлена схема формирования панорам-ного изображения.
Наиболее трудная задача возникает при сшивании кадров. Для этого выполняется нахождение характерных точек на кадрах для установления соответствия между различными видами объекта или сцены в процессе сшивания. Существует несколько методов нахождения точечных особенностей. Наиболее известные из них детектор Харриса [2].
Рис. 1. Схема формирования панорамного изображения
Сопоставление особенностей производится путем сравнения их окрестностей корреляционным методом или методом евклидовых расстояний. Эффективным является алгоритм Scale Invariant Feature Transform (SIFT) [3], обладающий высокой сложностью обработки. Хотя пишут, что алгоритм SIFT работает в реальном масштабе времени, эксперименты с рабочей версией программы показали, что приемлемая скорость достигается лишь при размере входного изображения 320*240 точек. При размере изображения в 3 мегапикселя обработка пары снимков требует уже 2-3 минут, что не позволяет сшивать панорамы в реальном режиме времени.
Нахождение точечных особенностей выполняем с помощью корреляционного метода по следующему алгоритму.
1.Выбираем изображение на первом кадре размером lx х lb которое будем представлять матрицей H1 и сравниваем его с изображением фраг-
мента второго снимка размером 12 х 12 ,которое будем представлять матрицей Н2 из «зоны поиска» размером 8, определяемой заданным полем перекрытия кадров.
2.Вычисляем функцию сходства между изображениями выбранных фрагментов. Элементы исходного изображения должны удовлетворять соотношению :
Г \
X у
Н\(х, у) = (С • н(х + Ах; у + Ау)+Ь)тес1 —,у + Р(х, у),
V11 11 У
гес1
г \
— У
V11 11У
1;—< 11; у < 11, 0, иначе.
(1)
где Р(—, у) - шум; Ах, Ау - характеристики сдвига фрагмента второго кадра относительно первого кадра; Ь - освещённость.
Так как освещённость считаем постоянной в плоскости кадра, перейдём к центрированным переменным:
где
где
НЦ (х, у ) = Н (х, у)-Н1,
- 1 11 Н =- IН (х, у),
11 X, у=1
Н Ц (х, у ) = Н 2 (х, у )-Н2
Н2 = 4 IН2 (х, у).
12 х,уе8
(2)
(3)
В качестве меры различия в точке (Ах, Ау) будем считать среднеквадратичную ошибку:
2
Р*= Р2 (х, у) = 11[нЦ (х, у)-С • НЦ (х + Ах; у + Ау)
х у
Р =птп тах
(4)
Для нахождения минимума ошибки а найдём экстремум
(р2 (Ах, Ау))а = 0.
Я (Лх, АуЬедяц (х, у)
х у
II нц (х, у)нц (х, у)
* у
II
* у
нц (х, у)
(5 )
так как первый член выражения (3.6) - величина постоянная , не зависящая от параметров сдвига (Лх, Ду), то данное выражение можно записать как нормированную среднеквадратичную ошибку:
-|2
Р^ (Лх, Лу) = 1
II нЦ (х, у)нц (х.у)
х у
2
2.
(6)
И[нЦ (х, у)[-ц[н1ц (х, у)
х у х у
Найдём максимум коэффициента корреляции фрагмента второго с фрагментом первого вместо минимума нормированной среднеквадратичной ошибки:
п(Лх, Лу):
II нц (х, у)нЦ (х.у)
х у
(7)
II
х у
нц (х, у)[-11[нц (х, у)
х у
Если максимум корреляции тахп(Лх, Лу)>п
пор,
наиденное сход-
ство считаем искомым.
Для получении цилиндрической панорамы в реальных погодных условиях с помощью разработанного ПОУЭН разработан программно-вычислительный комплекс [2,3].
Общий алгоритм формирования панорамы условно представлен в виде трех взаимосвязанных подпрограмм: сшивание кадров, фильтрация изображений и настройка обработки, а также двух вспомогательных блоков - препроцессора и постпроцессора, предназначенных для подготовки исходных данных и представления результатов моделирования в удобной для пользователя форме. Основными шагами алгоритма являются:
- определение числа кадров панорамы;
- задание настроек фильтрации;
- определение характеристик сшиваемой панорамы;
- вычисление времени процесса;
2
2
2
1
2
2
- организация и управление ходом расчета, сохранение текущего состояния, вывод результатов;
- анализ сшитой панорамы.
Такое структурирование алгоритма дает возможность оценить динамику сшивки кадров и при необходимости прервать работу программы с целью корректирования дальнейшего вычислительного процесса, начиная с первого шага. Кроме того, возможно оперативно проводить анализ качества сшивки цилиндрической панорамы. Выше описанный алгоритм получения панорамного изображения из нескольких отдельных изображений снятых при различных погодных условиях реализован на языке программирования Delphi. Так как все получаемые изображения, получаемые с ПОЭУН растровые, то в программу сшивания изображений в панораму загружаем исходные кадры в формате *.bmp. Количество снимков может варьироваться от 2 до 24 в зависимости от угла перекрытия кадров.
При выполнении круговой фотосъемки с получением изображений для последующего построения составной панорамы весьма часто возникает ситуация, когда диапазон экспозиций при различных положениях камеры может достигать 4-6 экспозиционных единиц (различное освещение предметов). Кроме того, могут возникнуть искажения вследствие аберраций объектива, виньетирования и т.д. Для их устранения используются режимы «Настройка обработки» или «Фильтрация изображения» в верхней части программы (рис. 2).
Рис. 2. Окно настройки фильтрации
360
При нажатии вкладки «Обработка и результат» запускается процесс сравнивания и наложения. В течение нескольких секунд после начала анализа, программа сравнит все загруженные в нее изображения, и выдаст результат работы в рамку «Панорамное изображение». Положительным моментом является возможность загрузки изображений любого размера. Как известно, панорамное изображение намного шире самого окна программы, поэтому предусмотрены полосы прокрутки изображения для просмотра его внутри окна.
При появлении некоторых «несостыковок» в связи с наличием оптических искажений в программе имеется возможность повторить процесс настройки обработки и фильтрации изображения, который имеет следующие возможности:
- максимальное отклонение по вертикали (в пикселях) - параметр программы, указывающий, насколько одно анализируемое изображение может быть сдвинуто вверх или вниз относительно другого. Значение задается в пикселях, и должно соответствовать примерной вертикальной погрешности при съемках (дрожание платформы, крен во время съемки и т.д.). Значение по умолчанию - 2 пикселя.
- допустимая погрешность в цветовой разнице (в процентах) - задает максимально допустимую разницу в одном из цветов сравниваемых пикселей. Каждый пиксель (точка) картинки раскладывается на три составляющих цвета: красный, зеленый и синий (формат цветности - RGB, red, green, blue). Каждый из параметров цветности имеет разрядность 8 бит, то есть каждый цвет точки может принимать значение от 0 (выключен) до 255 (полная яркость) в цифровом формате. У сравниваемых точек программа анализирует разницу между каждым цветом, и эта разница не должна превышать допустимую погрешность. Например, цвета «красный» (R=255) и «бордовый» (R=128) составляют между собой разницу в 127 градаций, что равно примерно 50% погрешности.
- позиция опорного столбца точек (пикселей справа) - параметр, указывающий программе опорный «сдвиг справа» в анализируемом изображении. Алгоритм программы, при поиске соответствий на изображении А и изображении Б анализирует вертикальный столбец пикселей в картинке А и подбирает максимально соответствующий ему вертикальный столбец в картинке Б. Таким образом, на изображении А анализируется только 1 столбец, а на изображении Б перебираются значения их от нулевого до заданного. Экспериментальным путем этот параметр задается для каждого вида камер и объективов (ввиду таких особенностей, как монохроматизм, виньетирование и др.).
- максимальный регион анализа изображения (в %) - задает область поиска соответствий на изображении Б. Например, если размер картинки 1024х768, и задан регион анализа в 50%, значит при поиске совпадений программа будет сравнивать опорный столбец картинки А с каждым
столбцом картинки Б в диапазоне от нулевого до 384-го (50% от 768 точек по горизонтали).
- рисовать стыковочную линию - если установлено, то программа наглядно демонстрирует «столбец начала соответствий» - то есть рисует ярко-зеленую вертикальную линию, обозначающую место сшивки изображений. Может быть использовано для отладки и более точной настройки работы программы.
- использовать вертикальный сдвиг - при установке данной галочки программа учитывает найденное вертикальное несоответствие в анализируемых изображениях, и исправляет его, сдвигая изображения вверх или вниз при склейке, в зависимости от значения найденного несоответствия.
На рисунках 3, 4 представлен пример получения панорамы из пяти последовательных кадров и сшитая из них панорама, полученная с ПОЭ-УН с программной компенсацией поворота с помощью программно - вычислительного комплекса.
Рис. 3. Последовательные кадры местности
Рис.4. Панорамное изображение местности
Если полученное панорамное изображение удовлетворяет заданным требованиям, то оно сохраняется и анализируется оператором.
Список литературы
1. Устройство для кругового сканирования: пат. на полезную модель 88822 Рос. Федерация.
2. Harris C. and Stephens M. A combined corner and edge detector // Fourth Alvey Vision Conference. Manchester, 1988. P. 147-151.
3. David G. Lowe Distinctive Image Features from Scale-Invariant Keypoints // International Journal of Computer Vision. 60, 2 (2004). Pp. 91-110.
M.B. Tsudikov, T.A. Akimenko, O.Y. Gorbunova
HARDWARE AND SOFTWARE CREATION OF A PANORAMA
Creation of a cylindrical panorama with use of the panoramic optical-electronic device of supervision is considered. The analysis of methods of determination of special points is executed. A correlation method is selected and realized. Software and computing complex to stitch panoramas with the correction of the distortions of the images is developed.
Key words: aerosol, contrast, resolution, software filter, attenuation of radiation.
Получено 07.03.12