Изобретение относится к обработке цифровых изображений, а более конкретно к способам формирования панорамных изображений из видеопотока кадров, полученных устройствами для цифровой видеосъемки (камерами, фотоаппаратами, в том числе используемыми совместно с оптическими микроскопами, эндоскопами и т.д.), в режиме реального времени.
Получение панорамных изображений является важной задачей во многих отраслях науки и техники: биологии, медицине (гистологии, цитологии, эндоскопии), материаловедении (металлографии, петрографии, минералогии) и т.д., так как дает возможность исследователю составить более полное представление об изучаемом объекте и уменьшить методическую составляющую погрешности при дальнейшем анализе изображений, что в конечном итоге позволяет получать более точные результаты исследования (диагностики).
Из уровня техники известен способ обработки видеосигнала с цифровой камеры устройства, позволяющий получать панорамные изображения (US 20120257006) [1]. Способ реализован в устройстве, которое помимо прочих элементов включает в себя блок обработки видеосигнала и центральный процессор (ЦП). С помощью блока обработки видеосигнала выполняют интерполяцию пикселей, коррекцию координат, генерацию яркости цветового сигнала, настраивают баланс белого, корректируют экспозицию, сжимают видеопоток и преобразовывают его формат. В одном из вариантов реализации c помощью блока обработки видеосигнала выравнивают стороны смежных кадров. С помощью ЦП контролируют работу всех блоков схемы и осуществляют объединение изображений. Недостатком данного способа является то, что он подходит только для устройств получения кадров, оснащенных сенсорами направления движения и ускорения. Кроме этого, объединение кадров возможно только при движении устройства в горизонтальном направлении.
В патенте US 20090153647 A1 [2] панорамные изображения из видеопотока строят с помощью устройства, которое включает в себя микропроцессор, блок вычислений, блок бинаризации, блок оценки движения, RAM– и EEPROM-памяти. Способ получения панорамного изображения включает в себя следующие основные этапы: получение изображения; бинаризацию изображения; сравнение бинарного изображения текущего кадра с бинарным изображением предыдущего кадра и расчет среднего вектора смещения текущего кадра относительно предыдущего; «пришивку» текущего изображения к панораме, т.е. к результирующему изображению; обрезку изображения для получения прямоугольной панорамы.
В данном способе расчет вектора смещения осуществляется по бинарным изображениям, что в большинстве случаев сопряжено с большой вероятностью ошибки. Анализ бинарных изображений подходит для изображений с достаточным количеством контрастных элементов. Кроме того, операции сравнения изображений проводятся на центральном процессоре, который выполняет их в 3-4 раза медленнее, чем, например, процессор видеокарты.
Наиболее близким к заявленному изобретению является способ формирования составного (панорамного) изображения, в котором предложен оригинальный алгоритм определения последовательности объединения кадров в панорамное изображение (RU 2421814) [3]. Согласно этому способу анализируют входные изображения, поступающие в произвольном порядке и в произвольной ориентации, выявляя на каждом изображении множество особых точек, и определяют дескрипторы этих точек, выполняют попарное сравнение всех входных изображений путем расчета суммы квадратов разностей дескрипторов особых точек и нахождение совместимых особых точек, при этом формируют квадратно-симметричную таблицу, состоящую из количества совместимых особых точек для каждой пары изображений, выбирают первое изображение путем суммирования элементов строк таблицы и выбора изображения с тем порядковым номером, которому соответствует строка с максимальной суммой элементов, результирующее множество особых точек и дескрипторов формируют из множества особых точек и дескрипторов первого выбранного изображения, далее один за другим выбирают изображения, имеющие максимальное количество совместимых особых точек с результирующим множеством особых точек, восстанавливают параметры аффинного вращения/смещения между множеством совместимых особых точек выбранного изображения и результирующим множеством особых точек, найденные параметры аффинного вращения/смещения сохраняют в памяти, после чего результирующее множество особых точек дополняют совместимыми особыми точками и их дескрипторами данного выбранного изображения, предварительно подвергнутого найденному аффинному преобразованию, один за другим выбирают входные изображения и поочередно деформируют, используя сохраненные параметры аффинного вращения/смещения, затем преобразованное изображение включают в результирующее изображение путем нахождения оптимального шва, проходящего через расположенные на перекрывающихся участках пиксели, имеющие минимальные различия, при этом шов между объединенными изображениями заметен как можно меньше.
Данный способ имеет следующие недостатки:
- предложенный алгоритм формирования составного (панорамного) изображения предполагает первичное получение всего множества входных кадров, из которых формируется панорама, с их последующим объединением. Таким образом, данный алгоритм не позволяет строить панорамные изображения в режиме реального времени, когда процесс объединения текущего кадра с результирующим изображением непосредственно следует за операцией его получения через устройство ввода изображения;
- производится попарное сравнение всех входных кадров, включая и те, которые могут не иметь общей области перекрытия друг с другом, что существенно увеличивает время построения панорамы.
Задачей настоящего изобретения является создание способа формирования панорамных изображений из видеопотока кадров, полученных устройствами для цифровой видеосъемки (камерами, фотоаппаратами, в том числе используемыми совместно с оптическими микроскопами, эндоскопами и т.д.), в режиме реального времени.
Для решения поставленной задачи предложен способ формирования панорамных изображений из видеопотока кадров в режиме реального времени, в котором на изображениях кадров выявляют множества характерных элементов, изображение текущего кадра сравнивают с результирующим изображением, далее определяют координаты вектора смещения текущего кадра, и изображение текущего кадра сдвигают на рассчитанные координаты вектора смещения, далее рассчитывают границу области перекрытия и смещенное изображение текущего кадра добавляют к результирующему, при этом вокруг выявленных характерных элементов строят характерные прямоугольные области, при сравнении изображений на кадрах сравнивают множества характерных прямоугольных областей, при этом изображение текущего кадра сравнивают только с соседними опорными кадрами, входящими в результирующее изображение, и только в областях интереса изображений текущего и опорных кадров, рассчитывают величину средней интенсивности пикселей изображения текущего кадра, определяют координаты вектора смещения текущего кадра относительно соседних опорных кадров, за координаты векторов смещения между текущим и опорными кадрами принимают средние координаты смещения между всеми совместимыми характерными прямоугольными областями на изображениях текущего и опорных кадров с их последующим уточнением путем наложения ограничений на величину среднеквадратичного отклонения координат векторов смещения совместимых характерных прямоугольных областей и на величину разницы между координатами векторов смещения совместимых характерных прямоугольных областей и их средних значений, изображение текущего кадра сдвигают относительно изображений соседних опорных кадров и добавляют к результирующему изображению, операцию сравнения характерных прямоугольных областей изображений осуществляют на процессоре видеокарты.
В частном случае, при величине средней интенсивности пикселей текущего кадра больше заданной пользователем пороговой величины, в качестве характерной прямоугольной области текущего кадра используют всю область интереса текущего кадра.
При реализации способа анализирует изображения последовательно захваченных кадров с произвольным направлением смещения друг относительно друга.
Сущность заявленного способа заключается в следующем. В отличие от способа–прототипа, в заявленном способе в качестве объектов сравнения на изображениях выступают не дескрипторы особых точек, а характерные прямоугольные области, которые строят вокруг выявленных характерных элементов. Попиксельное сравнение характерных прямоугольных областей на процессоре видеокарты происходит в 3-4 раза быстрее чем сравнение дескрипторов особых точек на ЦП. При этом изображение текущего кадра сравнивают только с соседними опорными изображениями и только в областях интереса этих кадров. Это позволяет существенно сократить количество операций сравнения изображений и, как следствие, ускорить работу алгоритма.
Выбор сравниваемых характерных прямоугольных областей определяется величиной средней интенсивности пикселей изображения текущего кадра. Это позволяет для изображений с большим числом характерных элементов проводить сравнения не всех соответствующих им характерных прямоугольных областей, а ограничиться для этого всего лишь одной областью – областью интереса текущего кадра. При этом количество операций сравнения характерных прямоугольных областей, а значит и время расчета, уменьшается в несколько десятков раз. Далее определяют координаты вектора смещения текущего кадра относительно соседних опорных кадров. За координаты векторов смещения между текущим и опорными кадрами принимают средние координаты смещения между всеми совместными характерными прямоугольными областями на изображениях текущего и опорных кадров с их последующим уточнением путем наложения ограничений на величину среднеквадратичного отклонения координат векторов смещения совместимых характерных прямоугольных областей и на величину разницы между координатами векторов смещения совместимых характерных прямоугольных областей и их средних значений. Изображение текущего кадра сдвигают относительно изображений соседних опорных кадров. После этого рассчитывают границу области перекрытия, и смещенное изображение текущего кадра добавляют к результирующему. Операция сравнения характерных прямоугольных областей изображений осуществляется на процессоре видеокарты, что обеспечивает более высокую скорость расчетов, т.к. процессор видеокарты позволяет проводить операции попиксельного сравнения изображений в 3-4 раза быстрее, чем центральный процессор.
Технический результат от использования настоящего изобретения состоит в сокращении количества операций сравнения изображений и ускорении расчетов координат векторов смещения текущих кадров относительно опорных, что позволяет в целом ускорить работу алгоритма формирования панорамных изображений и реализовать его в режиме реального времени.
Заявленный способ поясняется чертежами, где на Фиг. 1 представлена схема основных элементов устройства, реализующих заявленный способ; на Фиг. 2, 3 изображена блок-схема процесса получения панорамного изображения; на Фиг.4 представлена блок-схема алгоритма сравнения изображений двух кадров; на Фиг. 5 изображены: область интереса текущего кадра (С) и область интереса опорного кадра (Z); на Фиг. 6 изображены координаты векторов смещения между совместимыми характерными элементами на изображениях текущего и опорного кадров (границы характерных прямоугольных областей не указаны); на Фиг. 7 показан вектор смещения Р текущего кадра относительно опорного; рассчитанная граница области перекрытия, по которой будет производиться объединение двух изображений (жирная линия); результирующее изображение после объединения двух кадров.
Процесс функционирования устройства, реализующего заявленный способ и представленный на Фиг.1, управляется центральным процессором 2 (ЦП). Изображения кадров через устройство ввода изображения 1 (камеры, фотоаппараты, в том числе используемые совместно с оптическими микроскопами, эндоскопами и т.д.) и шину данных, попадают в процессор видеокарты 3, где и подвергаются анализу. В частности, процессор видеокарты 3 осуществляет преобразование изображений из формата RAW в формат RGB и поиск характерных элементов на изображениях. Характерными элементами на изображении могут являться особые точки, линии и характерные области. Несшитые кадры панорамного изображения сохраняются в буфере несшитых кадров 5, роль которого может выполнять оперативная память. Объединенное панорамное изображение сохраняется в устройстве хранения панорамного изображения 4 (реализуемое в виде носителя на жестких магнитных дисках или иного накопителя данных).
При работе с оптическим микроскопом, снабженным камерой и автоматизированным столиком, вначале по заданной пользователем области сканирования производится расчет количества снимаемых кадров в этой области (Шаг 1, Фиг. 2). Сканирование кадров производится слева направо и сверху вниз, при этом каждый последующий кадр имеет область перекрытия с предыдущим кадром. Зная размер области перекрытия кадров вдоль одной оси, например, оси Х, которую обозначим через dx, размер стороны кадра kx и размер области сканирования Lx вдоль этой же оси, несложно найти количество перекрывающихся кадров Nx, которые предстоит снять, сканируя вдоль оси X:
Аналогично производится расчет количества перекрывающихся кадров Ny, которые предстоит снять, сканируя вдоль оси Y. Тогда общее количество кадров, которое будет получено в результате сканирования, определится как произведение чисел Nx и Ny (Шаг 1, Фиг. 2).
При получении текущего кадра система при помощи оператора Собеля [4] осуществляет поиск на его изображении характерных элементов (точек, областей, линий, углов и пр.). В данном способе текущим кадром называется последний полученный системой кадр через устройство ввода изображения (Фиг.1). После этого по изображению текущего кадра производится расчет величины средней интенсивности пикселей Grad (Шаг 2, Фиг. 2).:
где max(Ri,Gi,Bi) – максимальное значение интенсивности из интенсивностей 3-х цветовых каналов (R-red, G- green, B – blue) для i-го пикселя; М – общее количество пикселей на текущем кадре.
Следует отметить, что вместо оператора Собеля может быть применен любой другой оператор, выделяющий характерные элементы на изображении.
Фиг. 4 описывает алгоритм сравнения двух кадров. На шаге 3.1 на изображении текущего кадра выделяется область интереса текущего кадра (С) (Фиг. 5), которая с вероятностью 100% попадает в область перекрытия с изображением на опорном кадре. В данном способе опорным кадром называется кадр, который имеет с текущим кадром общую область перекрытия. Область интереса текущего кадра - это область, которая с вероятностью 100% попадает в область перекрытия текущего кадра с опорным. Область интереса опорного кадра - область, которая имеет ненулевую вероятность попасть в область перекрытия опорного кадра с текущим. Размеры области интереса текущего кадра (С) рассчитываются, исходя из того, что размер области перекрытия кадров по всем осям (dx и dy) при автоматизированном сканировании устанавливается равным 3/4 длины кадра вдоль соответствующих осей (Lx и Ly): dx=3/4Lx и dy=3/4Ly. Если, к примеру, сканирование образца производится вдоль оси Х, тогда размер области (С) вдоль оси Х устанавливается равным:
На шаге 3.2 (Фиг. 4) производится сравнение величины Grad (2) текущего кадра с заданной пороговой величиной - Grad0. Если Grad > Grad0, то производится поиск всей области интереса текущего кадра (С) в области интереса опорного кадра (Z) площадным методом (шаг. 3.3, Фиг. 4). Для этого область (С) помещается в левый верхний угол области (Z) и рассчитывается разница в интенсивностях каналов RGB соответственных пикселей (пикселей, находящихся на одинаковых местах в сравниваемых областях). После этого для каждой пары пикселей выбирается максимальное из трех значений разности интенсивностей по трем цветовым каналам: ∆I = max(∆R,∆G,∆B) и все значения ∆I суммируются по всем соответственным пикселям:
Суть второго метода состоит в том, что вокруг каждого характерного элемента, найденного на изображении текущего кадра при помощи оператора Собеля, строится прямоугольник, таким образом, что характерный элемент оказывается вписанным в этот прямоугольник, т.е. длины сторон прямоугольника равны проекциям характерного элемента на оси X и Y декартовой системы координат (Шаг. 3.5, Фиг. 4). Такой прямоугольник с вписанным в него характерным элементом будем далее называть характерной прямоугольной областью. В данном методе размер характерной прямоугольной области не может превышать 64х64 пикселя. Если размер характерного элемента более 64 пикселей хотя бы по одной координате, то такой элемент разбивается на несколько характерных элементов. Пусть в результате действия оператора Собеля найдено n характерных элементов и построено n характерных прямоугольных областей в области интереса текущего кадра (С). Далее производится сравнение каждой n–ой характерной прямоугольной области в области интереса текущего кадра со всеми возможными областями такого же размера в количестве n”, находящимися в области интереса опорного кадра (Z) аналогично тому, как это делалось в первом методе (Шаг 3.6, Фиг. 4). В результате этого обнаруживаются q пар совместимых характерных прямоугольных областей (в первом способе обнаруживается 1 пара), для которых находятся разности их координат по осям X и Y:
где
здесь SДх0 и SДy0 – некоторые заданные пользователем параметры. Если оба неравенства выполняются, то за координаты вектора смещения P (Фиг. 7) текущего кадра относительно опорного принимаются средние значения разности координат:
Фиг. 7 демонстрирует этап добавления текущего кадра к опорному. После расчета координат вектора Р текущий кадр смещается относительно опорного на вектор Р, и рассчитываются координаты границы области перекрытия между текущим и опорным кадром, идущей по краю опорного кадра (жирная линия на Фиг. 7). Далее область текущего кадра, находящаяся справа и сверху от границы области перекрытия присоединяется к опорному кадру и получается результирующее изображение (Шаг 5, Фиг. 2) Если по окончании процесса построения панорамного изображения в буфере несшитых кадров остались несшитые кадры, то они вставляются в результирующее изображение на основании координат, полученных с автоматизированного столика во время их сканирования. (Шаг 6. Фиг. 3). Результирующее изображение, полученное после окончания сшивки всех кадров, называется панорамным изображением. Оно сохраняется в памяти компьютера (Шаг 7, Фиг 3).
Если процесс сшивки двух кадров происходит не на автоматизированном, а на механическом столике, предполагающем ручное перемещение образца, то в этом случае происходит получение двух последовательных кадров через устройство ввода изображения. Первый из полученных кадров будет считаться опорным, а второй – текущим. В качестве области интереса текущего кадра выбирается центральная область кадра с длинами сторон Dx и Dy (по осям X и Y), которые рассчитываются по формулам:
где kх и ky – длины сторон кадра вдоль осей X и Y, W – величина погрешности в определении координат столика. В качестве области интереса опорного кадра выбирается все изображение опорного кадра (Фиг. 8, области интереса текущего и опорного кадров заштрихованы). В остальном алгоритм сравнения кадров остается прежним (Шаг 8, Фиг 2).
Таким образом, заявленный способ позволяет сократить количество операций сравнения изображений и ускорить расчет координат векторов смещения текущих кадров относительно опорных, что позволяет в целом ускорить работу алгоритма формирования панорамных изображений и реализовать его в режиме реального времени.
Источники информации
1. US 20120257006, публ. 11.10.2012, патентообладатель Casio Computer Co., Ltd.
2. US 20090153647 A1, публ. 18.06.2009, патентообладатель Nxp B.V.
3. RU 2421814, публ. 10.01.2015, патентообладатель ФГБОУ ВПО «Южно-Российский государственный университет экономики и сервиса».
4. Duda R., Hart P. Pattern Classification and Scene Analysis. — John Wiley and Sons, 1973. — P. 271—272.
название | год | авторы | номер документа |
---|---|---|---|
Способ устранения швов при создании панорамных изображений из видеопотока кадров в режиме реального времени | 2016 |
|
RU2647645C1 |
Способ формирования панорамного изображения с помощью мультифасеточной системы сенсоров и система для его осуществления | 2023 |
|
RU2817511C1 |
Способ детектирования голографической защиты на документах в видеопотоке | 2021 |
|
RU2771005C1 |
Система и способ обработки данных и распознавания объектов в режиме реального времени | 2022 |
|
RU2802280C1 |
СПОСОБ И СИСТЕМА РАСПОЗНАВАНИЯ ЭМОЦИОНАЛЬНОГО СОСТОЯНИЯ СОТРУДНИКОВ | 2021 |
|
RU2768545C1 |
Способ идентификации объекта в видеопотоке | 2018 |
|
RU2676029C1 |
Способ автоматического распознавания сцен и объектов на изображении | 2021 |
|
RU2778906C1 |
СПОСОБ ФОРМИРОВАНИЯ СОСТАВНОГО ИЗОБРАЖЕНИЯ | 2009 |
|
RU2421814C2 |
СПОСОБ СОЗДАНИЯ СТЕРЕОСКОПИЧЕСКОГО ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ КОМПЬЮТЕРА | 2013 |
|
RU2532866C1 |
СПОСОБ КОМПЕНСАЦИИ ДВИЖЕНИЯ В ЦИФРОВЫХ ДИНАМИЧЕСКИХ ВИДЕОИЗОБРАЖЕНИЯХ | 2013 |
|
RU2552139C1 |
Изобретение относится к области обработки изображений. Технический результат – обеспечение ускорения работы алгоритма формирования панорамных изображений. В способе формирования панорамных изображений из видеопотока кадров в режиме реального времени на изображениях кадров выявляют множества характерных элементов, изображение текущего кадра сравнивают с результирующим изображением, определяют координаты вектора смещения текущего кадра и изображение текущего кадра сдвигают на рассчитанные координаты вектора смещения, рассчитывают границу области перекрытия и смещенное изображение текущего кадра добавляют к результирующему; причем вокруг выявленных характерных элементов строят характерные прямоугольные области, сравнивают множества характерных прямоугольных областей, при этом изображение текущего кадра сравнивают только с соседними опорными кадрами и только в областях интереса изображений текущего и опорных кадров, рассчитывают величину средней интенсивности пикселей изображения текущего кадра; определяют координаты вектора смещения текущего кадра относительно соседних опорных кадров; изображение текущего кадра сдвигают относительно изображений соседних опорных кадров и добавляют к результирующему изображению. 2 з.п. ф-лы, 8 ил.
1. Способ формирования панорамных изображений из видеопотока кадров в режиме реального времени, в котором на изображениях кадров выявляют множества характерных элементов, изображение текущего кадра сравнивают с результирующим изображением, далее определяют координаты вектора смещения текущего кадра и изображение текущего кадра сдвигают на рассчитанные координаты вектора смещения, далее рассчитывают границу области перекрытия и смещенное изображение текущего кадра добавляют к результирующему, отличающийся тем, что вокруг выявленных характерных элементов строят характерные прямоугольные области, при сравнении изображений на кадрах сравнивают множества характерных прямоугольных областей, при этом изображение текущего кадра сравнивают только с соседними опорными кадрами, входящими в результирующее изображение, и только в областях интереса изображений текущего и опорных кадров рассчитывают величину средней интенсивности пикселей изображения текущего кадра, определяют координаты вектора смещения текущего кадра относительно соседних опорных кадров, за координаты векторов смещения между текущим и опорными кадрами принимают средние координаты смещения между всеми совместимыми характерными прямоугольными областями на изображениях текущего и опорных кадров с их последующим уточнением путем наложения ограничений на величину среднеквадратичного отклонения координат векторов смещения совместимых характерных прямоугольных областей и на величину разницы между координатами векторов смещения совместимых характерных прямоугольных областей и их средних значений, изображение текущего кадра сдвигают относительно изображений соседних опорных кадров и добавляют к результирующему изображению, операцию сравнения характерных прямоугольных областей изображений осуществляют на процессоре видеокарты.
2. Способ по п. 1, отличающийся тем, что при величине средней интенсивности пикселей текущего кадра больше заданной пользователем пороговой величины в качестве характерной прямоугольной области текущего кадра используют всю область интереса текущего кадра.
3. Способ по п. 1, отличающийся тем, что анализируют изображения последовательно захваченных кадров с произвольным направлением смещения относительно друг друга.
СПОСОБ ФОРМИРОВАНИЯ СОСТАВНОГО ИЗОБРАЖЕНИЯ | 2009 |
|
RU2421814C2 |
Многоступенчатая активно-реактивная турбина | 1924 |
|
SU2013A1 |
Колосоуборка | 1923 |
|
SU2009A1 |
US 8717412 B2, 06.05.2014 | |||
US 6798923 B1, 28.09.2004 | |||
Изложница с суживающимся книзу сечением и с вертикально перемещающимся днищем | 1924 |
|
SU2012A1 |
Авторы
Даты
2017-07-28—Публикация
2016-06-07—Подача