УСТРОЙСТВО И СПОСОБ ПРОГНОЗИРУЕМОЙ АВТОФОКУСИРОВКИ ДЛЯ ОБЪЕКТА
DEVICE AND METHOD FOR PREDICTION AUTOFOCUS FOR AN OBJECT

Область техники
Изобретение относится к способам и устройствам прогнозируемой автофокусировки на камере объекта, в частности к прогнозированию или предсказанию автофокусировки для объекта, и может использоваться, в частности, для фото- и видеосъемки камерами смартфонов, а также в планшетных компьютерах под управлением операционных сиcтем Android, iOS, HarmonyOS и подобных системах, а также в других подобных устройствах, в которых имеется потребность к обеспечению прогнозируемой автофокусировки.
Описание предшествующего уровня техники
В уровне техники существует множество способов автофокусировки, используемых в настоящее время известными производителя фото и видео техники. К ним можно отнести:
способ фазовой автофокусировки (AF), основанный на детектировании света, разделенного на два и более пучков, проходящих к камере, разнесенными в пространстве датчиками изображения, и по сигналам от датчиков изображения осуществляется перемещение линз в объективе на заданную величину для наведения изображения на резкость;
способ стереоавтофокусировки (AF), в котором формируются два изображения с помощью двух камер для левого и правого глаза, которые накладываются друг на друга и на основе параллакса между получаемыми изображениями, обеспечивается регулировка фокуса;
способ контрастной автофокусировки (AF), основанный на определении резкости на определенном участке получаемого изображения с помощью матрицы датчиков, встроенных, непосредственно, в камеру. Если участок изображения на определенном участке нерезкий, то система автофокусировки подстраивает объектив (линзу) до тех пор, пока не будет достигнута резкость/контрастность;
способ динамической (следящей) автофокусировки (AF) предоставляет возможность снять сцены с большим количеством объектов, которые движутся относительно друг друга, например, спортивные соревнования. В этом режиме камера оценивает как связаны между собой объекты в кадре и составляют схему.
При этом следует отметить, что известны различные способы регулировки линзы, используемые при автофокусировке:
непрерывная автофокусировка (AF), при котором позиция линзы изменяется поэтапно для наведения объекта в фокус; прогнозируемая автофокусировка (AF) c задержкой по времени, при котором позиция линзы предсказывается, но воспроизведение изображения на экране происходит с некоторой задержкой по времени, по сравнению с реальной позицией линзы, в котором задержка между текущем положении линзы и прогнозируемым положением линзы используется для более точного вычисления позиции линзы, и
фиксированная автофокусировка(AF), при котором позиция линзы является фиксированной и пользователь выбирает рассматриваемый объект вручную или в автоматическом режиме.
Некоторым современным известным методам фокусировки требуется время для обработки данных, поэтому они не работают в реальном времени, задержка может быть значительной (вплоть до секунд). Современные способы автофокусировки не предсказывают (прогнозируют) положение линзы или только предсказывают его для следующего кадра, что предотвращает плавный переход фокуса и ухудшает качество видео. Способы непрерывной автофокусировки часто не работают, когда дело доходит до фокусировки быстро движущихся объектов.
Задачей настоящего изобретения является разработка способа и устройства прогнозируемой автофокусировки для объекта, заключающегося в отслеживании (мониторинге) текущего положения объекта в реальном времени, на основании указанной определенной позиции объекта прогнозировании положения объекта для последующих или будущих кадров и, соответственно, в зависимости от прогнозируемого положения объекта, прогнозировании изменения положения линзы (необходимого движения линзы, чтобы объект был в фокусе) для будущих кадров, чтобы уменьшить задержку автофокусировки и обеспечить более стабильную фокусировку в критических или сложных случаях.
При этом авторы изобретения разработали способ и устройство устраняющие недостатки традиционных способов автофокусирования, заключающихся в следующем:
- Задержка автофокуcировки, заключающаяся в том, что устройства автофокусировки не способны функционировать в режиме реального времени, поскольку требуется время для обработки данных. Такая задержка может быть значительной и составлять вплоть до нескольких секунд, что влечет за собой неточное регулирование положения линзы.
- Непрерывный переход фокуса, заключающийся в том, что современные способы автофокусировки не обеспечивает прогнозирование положения линзы или прогнозируют положение линзы лишь для следующего кадра, что препятствует плавному переходу фокуса и ухудшает качество получаемого фото/видео.
- Снимки не в фокусе в критических случаях. Частичные окклюзии создают неоднородности глубины, снижая точность автофокусировки, в то время как перекрытие объекта и фона на некоторый момент времени может привести к потере фокуса на объекте. Условия низкой освещенности также ухудшают качество автофокусировки.
- Снимки не в фокусе во время быстрого и/или сложного движения объекта/объектов. Способы непрерывной автофокусировки часто не работают, когда требуется фокусировка на быстро движущихся объектах, что приводит к плохому качеству фото/видео.
В US9883097 B2, IPC H04N 5/232, H04N 5/14, опубл. 30.01.2018г., раскрыт способ автофокусировки на основе оптического потока, который включает в себя определение набора характеристик (признаков) объекта, которые отслеживаются на изображении, снятом камерой. Способ также включает создание поля векторов для опорных точек. Векторы указывают величину и направление изменения положения опорных точек более чем в одном кадре изображения. Кроме того, способ включает в себя идентификацию наличия перемещения элементов объекта вне плоскости при одинаковой радиальной ориентации векторов. Способ дополнительно включает в себя определение степени приближения/дальнейшего перемещения характеристик объекта к/от камеры в зависимости от изменения расстояний между множеством опорных точек. Способ дополнительно включает в себя настройку положения объектива камеры с учетом степени приближения/удаления характеристик объекта, чтобы камера оставалась сфокусированной на объекте.
Указанный способ не предусматривает прогнозирование положения объекта в будущих кадрах, т.е. не относится к способу прогнозируемой автофокусировки.
В US10455141В2, IPC H04N 5/232, опубл. 30.01.2018 г. раскрыт способ автофокусировки, включающий в себя одновременный сбор первого изображения первого объекта с использованием первого блока съемки изображения (камера), сбор второго изображения первого объекта с использованием второго блока съемки изображения(камера), вычисление M частей первой информации о глубине M одинаковые пары характерных точек в соответствующих областях первого изображения и второго изображения, определение того, превышает ли достоверность M частей первой информации о глубине пороговое значение, получение информации о глубине фокусировки в соответствии с N частями первой информации о глубине в IM-фрагментах первая информация о глубине, когда достоверность M частей первой информации о глубине превышает пороговое значение, получение целевого положения первого объектива первого блока съемки изображения в соответствии с информацией о глубине фокусировки и управление первым объективом для перемещения к целевой позиции. Указанный способ требует настройки двух устройств захвата изображения, что усложняет его реализацию и требуется компромисс между скоростью и точностью. Кроме того, указанный способ не предусматривает прогнозирование положения объекта в будущих кадрах, т.е. не относится к способу прогнозируемой автофокусировки
В US 9,936,126 B2(US20170064197A1), опубл.03.04.2018, IPC G0213/16 раскрыт способ автофокусировки камеры для обнаружения лица и контроллер камеры, при этом положение объектива камеры регулируется с помощью исполнительного механизма, при этом данные изображение, полученные с помощью объектива анализируются, и сигнал обнаружения, полученный из указанных данных, характеризует наличие или отсутствие изображения лица на основе данных анализа, далее обеспечивается вычисление размера лица, определение начального положения линзы на основе размера лица, и поиск фокуса линзы на основе его начального положения. Контроллер камеры включает в себя исполнительный механизм, управляющий положением объектива, детектор лица, сконфигурированный для приема и анализа изображения, захваченного с помощью объектива для генерации сигнала обнаружения лица, определитель диапазона перемещения линзы, сконфигурированный для определения начального положения линзы на основании размера лица, а также вычислитель автофокусировки, выполненный с возможностью генерации сигнала управления положением объектива на основе начального положения объектива и вывода его в модуль камеры для регулировки фокусировки объектива. Указанный способ не предусматривает прогнозирование положения объекта в будущих кадрах, т.е. не относится к способу прогнозируемой автофокусировки, кроме того, методика обнаружения лица, раскрытая в данном способе, накладывает определенные ограничения на возможность использования при автофокусировке объектов.
Наиболее близким техническим решением заявленного изобретения является способ и система для управления фокусом для устройства захвата изображения, раскрытые в US8941722 B2, IPC H04N 13/04, опубл. 27.01.2015г. Способ включает в себя захват кадра изображения с использованием устройства захвата изображения и запись данных отслеживания видео и данных отслеживания взгляда для одного или нескольких кадров изображения, следующих за кадром захваченного изображения и/или для одного или нескольких кадров изображения перед кадром захваченного изображения. Кроме того, способ включает в себя вычисление фокусного расстояния и глубины резкости на основании, по меньшей мере, частично записанных данных видеотрекинга и записанных данных отслеживания взгляда. Способ дополнительно включает в себя отображение кадра, захваченного изображения, на основе вычисленного фокусного расстояния и вычисленной глубины резкости. Недостатком указанного способа является задержка по времени между записанным видео и видео, отображаемым на экране дисплея, что приводит к задержке по времени, требуемой для обработки данных, что влечет за собой неточность в регулировке положения линзы.
Все вышеуказанные решения не обеспечивают современные требования, диктуемые электронными портативными устройствами, со встроенными камерами для снятия видео/фото. При этом в современных электронных устройствах очень трудно одновременно совместить требования компактности устройства, позволяющие использовать его мобильных телефонах с одновременным сохранением качества снимаемого изображения в реальном времени, что обеспечивается предсказыванием (прогнозированием) положения движущегося объекта/объектов в будущих двух или более кадрах.
Для наглядности преимуществ заявленного способа и устройства прогнозируемой автофокусировки, далее приведен сопоставительный анализ функциональностей заявленного технического решения и известных технических решений, описанных выше.
Заявленное изобретение характеризуется следующим:
1) обеспечивает прогнозирование положения линзы для N будущих кадров,
2) требуется только данные из текущего кадра для выполнения прогнозирования положения линзы,
3) количество используемых случаев (определений позиций линзы в последующих кадрах) не ограничено,
4) способ согласно изобретению, работает в реальном времени с нулевой задержкой,
5) для обеспечения прогнозируемой автофокусировки достаточно использовать двухпиксельную камеру,
US8941722 B2 (прототип)
1) по выбору, обеспечивает прогнозирование положения линза на один будущий кадр,
2) требуются данные из предыдущего и будущего кадра для отображения текущего кадра,
3) количество используемых случаев (определений позиций линзы в последующих кадрах) не ограничено,
4) способ работает с значительной задержкой, вплоть до секунд, требуемой для обработки видеоданных,
5) используется одна традиционная камера для прогнозирования положения линза на один будущий кадр.
US10455141В2
1) не обеспечивает прогнозирование положения линзы для будущих кадров,
2) требуются стерео данные из текущего кадра для оценки положения линзы,
3) количество используемых случаев (определений позиций линзы в последующих кадрах) не ограничено,
4)используется два типа фокусировки: активная (в данный момент времени) фокусировка в реальном времени и пассивная (поэтапная) фокусировка, более продолжительная по времени,
5) для определения положения линзы необходимо использование по меньшей мере двух камер, что значительно повышает стоимость конечного продукта.
USA20170064197
1) не обеспечивает прогнозирование положения линзы для будущих кадров,
2) требуются специфические данные (определение лица) из текущего кадра для оценки положения линзы,
3) количество используемых случаев (определений позиций линзы в последующих кадрах) ограничивается использованием определения лица, как важной частью процесса оценки положения линзы от получения входных данных до вывода результата,
4) используется серия проверок, которая требует некоторого времени, до начала этапа определения положения линзы,
5) используется одна традиционная камера для определения положения линза.
Далее, на фиг.1а и 1b наглядно проиллюстрированы преимущества заявленного изобретения.
На фиг.1а изображены кадры с автофокусировкой на движущемся объекте в виде кошки в помещении согласно известному уровню техники. Если на первом кадре изображение кошки находится в фокусе, то при движении кошки фокусировка на объекте происходит с некоторым запаздыванием, и в фокусе находится хвост кошки или кошка не попадает в кадр изображения.
При этом на фиг.1b, на котором представлены кадры, полученные согласно заявленному способу прогнозируемой автофокусировки для объекта, все изображения кошки, при нахождении ее в статичном положении или при ее движении по помещению, находятся в фокусе.
Таким образом, заявленные устройство и способ прогнозируемой автофокусировки для объекта обеспечивает более точную автофокусировку на объекте в реальном времени.
Ни одно из известных технических решений, раскрытых выше, не позволяет отследить объект и сфокусироваться на нем в реальное время; некоторые из этих решений используют задержку между захватом изображения и выводом его на экран, в то время как остальные вообще не принимают во внимание эту дополнительную информацию. При этом заявленное решение позволяет устранить эту временную задержку за счет добавления этапа прогнозирования положения объекта.
Сущность изобретения
Согласно первому аспекту изобретения предлагается способ прогнозируемой автофокусировки для объекта, содержащий следующие этапы, при которых:
- захватывают изображение целевого объекта, подлежащего отслеживанию, с помощью пользователя камеры устройства прогнозируемой автофокусировки,
- выбирают регион интереса (ROI), соответствующий целевой точке захваченного изображения целевого объекта, выбранной пользователем,
i
i
-ом
-ом
-ого
- обеспечивают инициализацию этапа отслеживания целевого объекта на основании входных данных, характеризующих координаты (x, y), выбранного региона интереса (ROI) на i кадре, где i=1, и обновление этапа отслеживания целевого объекта на основании данных, полученных на этапе отслеживания на предыдущем (i-1) кадре, для i кадра, где i>1,
- определяют текущее положение линзы камеры для отслеживаемого целевого объекта в текущем кадре, при нахождении целевого объекта вне фокуса камеры,
-ом
- определяют диспарантность (Di) для выбранного ROI на i кадре, на основании предварительно собранных данных, характеризующих зависимость расстояния между целевым объектом и поверхностью линзы от позиции линзы камеры,
- определяют сдвиг позиции линзы камеры для обеспечения фокусировки камеры на целевом объекте, как функцию диспарантности (Di) и текущего положения линзы и/или положения целевого объекта в кадре блоком вычислений устройства прогнозируемой автофокусировки,
i
i
- вычисляют прогнозируемое положение целевого объекта и сдвиг позиции линзы камеры для N будущих кадров на основании координат (x, y) текущего региона интереса(ROI) и текущего сдвига позиции линзы для целевого объекта с обеспечением прогнозируемой автофокусировки в реальном времени блоком вычислений.
При этом, определяют сдвига позиции линзы камеры для обеспечения фокусировки на целевом объекте, как функцию диспарантности (Di) и текущего положения линзы и/или положения целевого объекта в кадре посредством обученных модели машинного обучения для перевода диспарантности в сдвиг позиции линзы и модели машинного обучения для перевода физического расстояния в положение линзы, реализуемых в блоке вычислений устройства прогнозируемой автофокусировки.
d
Следует отметить, что обучение модели машинного обучения для перевода физического расстояния в положение линзы, реализуемой в блоке вычислений, выполняется до этапа отслеживания целевого объекта, и обучение модели машинного обучения для перевода физического расстояния в положение линзы выполняется на основе предварительно собранных данных, характеризующих различные расстояния камеры (d) до целевого объекта соответствующие значениям положения линзы (L) для d∈{a,b}, где a, b-величины, соответствующие минимальному и максимальному расстоянию от целевого объекта до камеры.
d
d
Кроме того, обучение модели машинного обучения для перевода диспарантности в сдвиг позиции линзы, реализуемой в блоке вычислений, выполняется до этапа отслеживания целевого объекта, и обучение модели машинного обучения для перевода диспарантности в сдвиг позиции линзы, реализуемой в блоке вычислений, выполняется на основе предварительно собранных данных, характеризующих различные расстояния камеры (d) до целевого объекта, соответствующие значениям положения линзы (L) и значениям диспарантности D для расстояния d, соответствующим ROI на расстоянии d для d∈{a,b}, где a, b-величины, соответствующие минимальному и максимальному расстоянию от целевого объекта до камеры.
При этом, в способе значение диспарантности (Di) для выбранного ROI на i-м кадре определяется посредством PDAF данных, полученных матрицей сенсоров камеры устройства прогнозируемой автофокусировки, как локальный минимум SAD кривой.
-ом
Следует отметить, что для определения диспарантности (Di) для выбранного ROI на i кадре на основе полученных PDAF данных, представляющих собой правое и левое изображение целевого объекта, полученных матрицей сенсоров камеры, рассчитывается сумма абсолютных различий, как абсолютная разность между пикселями левого и правого изображений, на основе которых строятся SAD кривые.
Согласно способу дополнительно определяют надежность для корректировки положения линзы, при котором целевой объект находится в фокусе.
При этом, надежность, по выбору, определяется, как отношение сигнал/шум по выражению:
R=100x (1),
N
где R-надежность, Ys-уровень сигнала, Y-уровень шума.
Кроме того, надежность, по выбору, определяется на основании модели машинного обучения, на основе SAD кривых и признаков, характеризующих положение линзы.
Способ дополнительно содержит формирование корреляционного фильтра для определения целевой точки объекта, изменяющейся по мере изменения формы и положения целевого объекта относительно камеры и корреляционного фильтра для определения размера региона интереса (ROI), изменяющегося по мере изменения формы и положения целевого объекта относительно камеры.
При этом, на этапе определения текущего положения линзы камеры для отслеживаемого целевого объекта в текущем кадре используются корреляционный фильтр для определения целевой точки объекта и корреляционный фильтр для определения размера региона интереса, и корреляционный фильтр для определения целевой точки объекта используется один раз для N кадров, и корреляционный фильтр для определения размера региона интереса используется один раз для M кадров, при этом значения M и N могут быть равными или отличными друг от друга.
Способ согласно первому аспекту изобретения дополнительно содержит обеспечение бинарной маски при формировании корреляционного фильтра для определения целевой точки объекта и корреляционного фильтра для определения размера региона интереса.
Кроме того, способ дополнительно содержит формирование гистограммы градиентов яркости (HoG) при формировании корреляционного фильтра для определения целевой точки объекта и корреляционного фильтра для определения размера региона интереса, при этом формирование гистограммы градиентов яркости (HoG) выполняется на основе шкалы серого (grayscale) представления изображения.
Способ дополнительно содержит обеспечение весового коэффициента для корректировки корреляционного фильтра для определения целевой точки объекта в зависимости от текущего ROI.
Согласно второму аспекту изобретения предлагается устройство прогнозируемой автофокусировки, выполненное с возможностью реализации этапов способа, раскрытых выше по первому аспекту изобретения, и содержащее:
-блок ввода-вывода, включающий графический процессор, дисплей, камеру, интерфейсы,
-блок вычислений, содержащий центральный процессор, контроллер, память, системную память и накопитель,
при этом камера содержит матрицу сенсоров и выполнена с возможностью захвата целевого объекта и передачи данных изображения целевого объекта в системную память блока вычислений через интерфейс ввода-вывода,
блок вычислений выполнен с возможностью вычисления положения целевого объекта и сдвига позиции линзы камеры, прогнозируемого для N будущих кадров, при этом полученное положение целевого объекта передается в системную память и через интерфейс ввода-вывода в камеру для осуществления автофокусировки,
камера выполнена с возможностью передачи графической информации на основании вычисленных данных прогнозируемого положения целевого объекта через интерфейс ввода-вывода и графический процессор на дисплей устройства,
дисплей устройства выполнен с возможностью визуализации целевого объекта, находящегося в фокусе в режиме реального времени.
При этом, графический процессор выполнен с возможностью обработки графической информации, полученной с камеры устройства.
В устройстве прогнозируемой автофокусировки матрица сенсоров представляет собой матрицу PDAF сенсоров, а накопитель выполнен с возможностью хранения фото- и видеоизображений, полученных камерой устройства.
При этом устройство прогнозируемой автофокусировки для объекта выполнено с возможностью встраивания в одно из: смартфон, планшетный компьютер, фото- и видеокамера.
Краткое описание чертежей
Вышеописанные и другие признаки и преимущества настоящего изобретения поясняются в последующем описании, иллюстрируемом чертежами, на которых представлено следующее:
Фиг. 1а - представлена последовательность кадров с автофокусировкой на движущемся объекте в виде кошки в помещении согласно известному уровню техники.
Фиг. 1b - представлена последовательность кадров с прогнозируемой автофокусировкой на движущемся объекте в виде кошки в помещении согласно заявленному изобретению.
Фиг. 2 - представлена блок-схема последовательности этапов реализации способа прогнозируемой автофокусировки.
Фиг.3 - схематично представлено изображение экрана устройства в процессе отслеживания объекта, подлежащего фокусировке.
Фиг.4 - представлена блок-схема способа прогнозируемой автофокусировки для объекта согласно заявленному изобретению.
Фиг.5а - представлена часть блок-схемы с фиг.4, представляющая Ключевое положение 1 способа прогнозируемой автофокусировки для объекта согласно заявленному изобретению.
Фиг.5b - представлена часть блок-схемы с фиг.4, представляющая Ключевое положение 2 способа прогнозируемой автофокусировки для объекта согласно заявленному изобретению.
Фиг.5c - представлена часть блок-схемы с фиг.4, представляющая Ключевое положение 3 способа прогнозируемой автофокусировки для объекта согласно заявленному изобретению.
Фиг.6 - представлена блок-схема устройства прогнозируемой автофокусировки для объекта.
Предпочтительные варианты осуществления изобретения
Примеры вариантов осуществления настоящего раскрытия будут подробно описаны ниже. Примеры вариантов осуществления были проиллюстрированы на прилагаемых чертежах, на которых одинаковые или подобные ссылочные позиции относятся к одинаковым или подобным элементам или элементам, имеющим одинаковые или подобные функции. Примерные варианты осуществления, описанные со ссылкой на прилагаемые чертежи, являются иллюстративными, используются только для объяснения настоящего раскрытия и не должны рассматриваться как какие-либо ограничения к нему.
В рамках настоящего изобретения будут использоваться следующие понятия и термины, толкование которых предоставляется ниже авторами изобретения:
Целевой объект - объект, выбранный пользователем и подлежащий автофокусировке.
Область, выбранная пользователем - область экрана устройства, которую пользователь выбрал, как содержащую объект для фокусировки. Данная область может быть выбрана одним касанием экрана с помощью пальца пользователя или другим возможным образом.
Регион интереса (ROI) - это определенная область (регион) экрана устройства, выбранная с помощью функциональности «сетка» в приложении для фото- и видеосъемки, присущей современным смартфонам под управлением операционных систем Android, iOS и т.д. Например, экран устройства может быть разделен на несколько равных или неравных прямоугольников или других фигур, образующих сетку. Одна ячейка или прямоугольник этой сетки, выбранный пользователем, называется регионом интереса(ROI). В качестве примера авторы изобретения рассматривали экран, разделенный на равные прямоугольники, образующие сетку 9×13, но этот пример не является ограничивающим. В данном случае на экране имеется 9×13 регионов интереса ROI.
Выбранный регион интереса (выбранный ROI) - это регион интереса, определенный на основе области, выбранной пользователем, который может содержать центр области, выбранной пользователем, ее большую часть или всю область, выбранную пользователем, в зависимости от требований пользователя при выполнении процесса автофокусировки на объекте. На фиг.2 показан выбранный ROI. Выбранный ROI, а так же его координаты рассматривается как входные данные для начала процесса прогнозирования автофокусировки объекта.
Текущий регион интереса (текущий ROI) - на первом кадре текущий ROI соответствует выбранному ROI, а на последующих кадрах текущим ROI является регион интереса, который для текущего кадра возвращает отслеживающий алгоритм. Пользователь выбирает ROI только в первый раз. Следует отметить, что каждый кадр делится условно на сетку ROI, например 13х9, при первой итерации ROI выбирается на основе пользовательского ввода (условно, пользователь показывает, где находится интересующий его объект), дальше эта информация передается в средство отслеживания (трекер), и для каждого последующего кадра предсказывается, в каком именно ROI из сетки целевой объект будет находиться.
Отслеживающий метод (алгоритм) - последовательность этапов обработки данных, посредством которых на основании входных данных, в качестве которых задаются данные текущего ROI с объектом, подлежащим автофокусировке, на выходе обеспечиваются данные (координаты и глубина) объекта на последующих кадрах.
PDAF данные - изображения, полученные путем отражения лучей света от объекта, находящегося в кадре, и попадания их на противоположные (левую и правую) стороны линзы камеры. Объект находится в фокусе, если два полученных изображения совпадают. Изображения, полученные таким образом, также называются левым и правым изображением соответственно.
Dual Pixel - технология фазовой автофокусировки, при которой каждый пиксель сенсора используется для определения фазы и для получения информации о цвете, что значительно повышает и скорость и точность автофокусировки по сравнению с обычными системами.
SAD кривая - кривая на 2D графике: оси X соответствует смещение в количестве пикселей левого изображения относительно правого, оси Y - соответствующая сумма попиксельных разностей между изображениями для выбранного фрагмента; SAD кривые авторы изобретения получают посредством сенсоров, встроенных в мобильный телефон, которые называются dual pixels и содержат информацию о двух картинках (левое и правое изображение объекта с телефона с небольшим сдвигом).
Диспарантность (рассогласование) - мера расфокусировки сцены, получаемая на основе анализа SAD кривой. Формально, диспарантность является точкой локального минимума SAD кривой, поэтому измеряется в количестве пикселей.
Истинное положение линзы - такое положение линзы в камере устройства, при котором целевой объект в кадре находится в фокусе.
В качестве примера, но не ограничения, метод предсказания (прогнозирования) может представлять собой классический (базовый) фильтр Калмана. Фильтр Калмана использует серию измерений для эффективной оценки состояния системы и дальнейшего предсказания путем экстраполяции. При использовании его в рамках раскрытия настоящего изобретения в качестве измерения используется положение линзы.
Методы предсказания на основе фильтра Калмана раскрыты в следующих публикациях:
[1] Q. Li, R. Li, K. Ji and W. Dai, Kalman Filter and Its Application, 2015 8th International Conference on Intelligent Networks and Intelligent Systems (ICINIS), 2015, pp. 74-77,
[2] Rudolph Emil Kalman, A New Approach to Linear Filtering and Prediction Problems, Transactions of the ASME-Journal of Basic Engineering 82, Series D (1960), pp. 35-45.
[3] US5051751A, IPC G01S 13/723; опубл.24.09.1991г. “Method of Kalman filtering for estimating the position and velocity of a tracked object”.
В качестве альтернативных методов предсказания могут использоваться метод скользящих средних, фильтр частиц, модель авторегрессии скользящего среднего и другие подобные методы, а также любые алгоритмы машинного обучения для решения задачи восстановления регрессии.
Метод машинного обучения для получения истинного положения линзы - любой алгоритм машинного обучения для решения задачи восстановления регрессии, способный по входным данным (расстояние объекта до поверхности линзы камеры) восстановить положение линзы, соответствующее нахождению объекта в фокусе.
Метод машинного обучения для получения сдвига линзы - любой алгоритм машинного обучения для решения задачи восстановления регрессии, способный по входным данным (мера расфокусировки сцены) восстановить сдвиг линзы от текущего ее положения до положения линзы, соответствующего нахождению объекта в фокусе.
Основные положения машинного обучения раскрыты в следующих публикациях:
[4] Bishop, C. M. (2006), Pattern Recognition and Machine Learning, Springer, ISBN 978-0-387-31073-2
[5] Mitchell, T. (1997). Machine Learning. McGraw Hill. p. 2. ISBN 978-0-07-042807-2.
[6] Russell, Stuart; Norvig, Peter (2003) [1995]. Artificial Intelligence: A Modern Approach (2nd ed.). Prentice Hall. ISBN 978-0137903955.
Стереореконструкция (Stereo Matching) - вычисление положения точки в трехмерном пространстве на основе двух изображений одной и той же сцены, полученных под разными углами зрения (так называемая стереопара).
На фиг.2 представлена блок-схема этапов прогнозирования автофокусировки объекта, включающая в себя основные ключевые этапы: автоматическое отслеживание объекта, подлежащего автофокусировке, определение текущей позиции линзы, и предсказание будущей позиции линзы, т.е. позиции линзы через несколько кадров.
Далее более детально будет раскрыта последовательность этапов автофокусировки объекта со ссылкой на фиг.2:
1. Начало
а) выбор объекта, подлежащего фокусировке. Пользователь выбирает объект, касаясь или нажимая пальцем на экран устройства прогнозируемой автофокусировки (далее-устройства) в приложении для фото- и видеосъемки, что обеспечивает задание области интереса, которая называется областью интереса пользователя;
б)задание региона интереса (ROI). Пользователем задается определенная область экрана устройства, выбранная, например, с помощью функциональности «сетка» в приложении для фото- и видеосъемки, присущей современным смартфонам, планшетам под управлением операционных систем Android, iOS и т.д., или любым другим известным способом. Экран устройства может быть разделен на несколько равных или неравных прямоугольников или других фигур, образующих сетку. Одна ячейка или прямоугольник этой сетки, выбранный пользователем, называется регионом интереса (ROI). При касании пользователем экрана, т.е. касании области интереса пользователя, для пользователя представляет интерес, в какой из регионов интереса попадает центр области, которую пользователь нажал на экране. Именно этот регион считается выбранным регионом интереса (выбранным ROI).
2. Отслеживание позиции объекта
а) выбранный регион интереса (ROI) используется для инициализации процесса отслеживания, т.е. входными данными для процесса отслеживания являются данные координат (x,y) выбранного ROI.
3. Оценка позиции линзы
а) сдвиг позиции линзы определяется для выбранного региона интереса (выбранного ROI) и используется для получения такого положения линзы, при котором объект в текущем кадре находится в фокусе. В частности, в случае, когда на вход подаются PDAF данные, сдвиг позиции линзы оценивается с помощью диспарантности, которая рассчитывается на основе кривых SAD (сумма абсолютных разностей) между левым и правым изображениями, предоставленными для выбранного региона интереса.
б) для обеспечения точности получения сдвига позиции линзы применяется модель машинного обучения, обученная на данных соответствия диспарантности и сдвига позиции линзы (подробнее о модели машинного обучения и способе сбора данных будет раскрыто далее в описании).
в) для получения сдвига позиции линзы необходимы данные по глубине сцены (физическому расстоянию до объекта), для получения которых также можно использовать другие способы (PDAF, Стереореконструкция и т. д.).
Публикации, в которых описывается оценка диспарантности через стереореконструкцию, представлены ниже:
[7] Raajan N, Ramkumar M, Monisha B, Jaiseeli C, venkatesan SP (2012) Disparity estimation from stereo images. In: International conference on modelling optimization and computing, Springer, vol 38, pp 462-472.
[8] S. Mukherjee and R. M. R. Guddeti, “A hybrid algorithm for disparity calculation from sparse disparity estimates based on stereo vision,” in Proceedings of IEEE International Conference on Signal Processing and Communications (SPCOM), (IEEE, 2014), pp. 1-6.
4.Прогнозирование позиции линзы и положения целевого объекта
а) Выбранный регион интереса, а также полученный сдвиг позиции линзы рассматриваются в качестве входных данных для выполнения этапа прогнозирования.
б) этап прогнозирования предсказывает положение объекта, а также положение линзы на будущих кадрах, используя текущий регион интереса, полученный на этапе отслеживания, и полученный сдвиг позиции линзы для текущего региона интереса на каждом кадре.
Далее с учетом основный положений способа прогнозируемой автофокусировки на камере объекта, раскрытых со ссылкой на фиг.2, будет описан предпочтительный вариант реализации способа прогнозируемой автофокусировки.
Способ управления фокусировкой на камере объекта, содержит следующие этапы, при которых:
- выбирается объект интереса, находящийся в поле зрения камеры устройства прогнозируемой автофокусировки объекта, полностью или частично, с помощью пользователя устройства. Пользователь отмечает целевую точку, которая совпадает с положением выбранного пользователем объекта интереса. Целевая точка, выбранная пользователем, может быть отмечена простым нажатием пальца на экран и, в зависимости от возможностей сенсора экрана устройства и функций блока обработки, встроенного в устройство, который обрабатывает данные с сенсора прикосновения, находящегося под экраном, может определяться как непосредственный результат обработки нажатия либо высчитываться как геометрический центр области нажатия, которой касается палец пользователя. В качестве выбранного региона интереса для инициализации процесса отслеживания используется регион интереса из сетки регионов интереса, в который попадает целевая точка, выбранная пользователем.
,
- обеспечивается отслеживание объекта, подлежащего фокусировке; для этого выбранный регион интереса рассматривается как входные данные для процесса отслеживания
- вычисляется сдвиг позиции линзы (Δ линзы), т.е. величина смещения и направление смещения линзы, для обеспечения фокусировки объекта интереса. При этом вычисление сдвига позиции линзы будет детально раскрыто в последующем описании. При этом следует отметить, что сдвиг позиции линзы вычисляется на основе данных, включающих в себя диспарантность, а также, по выбору, текущее положение линзы, и/или позицию объекта в кадре (текущий регион интереса).
Алгоритм вычисления сдвига позиции линзы является моделью машинного обучения, предварительно натренированной на наборе размеченных данных с соответствием диспарантности и сдвига позиции линзы, перечисленных выше, и предсказывающей сдвиг позиции линзы на основе этих данных.
- вычисление прогнозируемого положения объекта и сдвига позиции линзы для N будущих кадров посредством использования текущего региона интереса и текущего сдвига позиции линзы для отслеживаемого объекта, при этом N≥1,
- полученный сдвиг позиции линзы используется впоследствии для того, чтобы обеспечить на каждом кадре сдвиг линзы в нужном направлении на нужную величину таким образом, чтобы текущее положении линзы стало оптимальным, то есть при текущем положении линзы была осуществлена фокусировка на объекте.
Оценка позиции линзы посредством диспарантности и надежности будет описана с привлечением блок-схемы фиг.2, где пункты 5, 6 и 7 раскрывают блоки: модель машинного обучения для перевода диспарантности в сдвиг позиции линзы, модель машинного обучения для перевода физического расстояния в положение линзы и сглаживание положения линзы посредством оценки надежности.
А) Коррекция диспарантности для оценки положения линзы
5. Модель машинного обучения для перевода физического расстояния в положение линзы (см.фиг.2)
а) подготовка и сбор данных, характеризующих физическое расстояние от целевого объекта до поверхности линзы и их соответствие позиции линзы, которые выполняются предварительно с помощью модуля сбора данных, содержащего набор камер, расположенных удаленно от устройства прогнозируемой автофокусировки объекта на разных расстояниях от объекта и определяющих или измеряющих точное расстояние от целевого объекта до соответствующей камеры. Полученные экспериментальные данные были использованы авторами изобретения для настройки алгоритма машинного обучения, используемого для прогнозирования положения целевого объекта.
b) предварительное обучение модели машинного обучения на основании собранных данных, полученных предварительно при проведении серии экспериментов с помощью набора камер блока сбора данных, для преобразования физического расстояния в положение линзы и сохранение модели в памяти устройства.
Следует отметить, что после встраивания модели машинного обучения на устройство прогнозируемой автофокусировки для объекта, обеспечивается возможность для целевого объекта, находящегося на любом удалении от камеры, восстановить такое положение линзы, при котором целевой объект будет в фокусе.
6. Модель машинного обучения для перевода диспарантности в сдвиг позиции линзы(см.фиг.2)
Авторы изобретения используют диспарантность для регулирования изменения положения линзы.
а) подготовка и сбор данных для перевода диспарантности в сдвиг позиции линзы выполняются предварительно с помощью набора камер, расположенных удаленно от устройства прогнозируемой автофокусировки на разных расстояниях от объекта и определяющих точное расстояние от целевого объекта до соответствующей камеры. Полученные экспериментальные данные, проведенные авторами изобретения были использованы для обучения модели машинного обучения, используемой для прогнозирования положения целевого объекта. При этом диспарантность предварительно рассчитывается на основе кривых SAD (сумма абсолютных разностей) между левым и правым изображениями для выбранного ROI, полученными с помощью камеры устройства прогнозируемой автофокусировки.
b) выходное значение для полученной модели представляет собой сдвиг позиции линзы, определяемый как разность между фиксированным положением линзы и положением, полученным для определенного расстояния, определяемого на этапе 5.
Полученные модели машинного обучения, раскрытые в п.п.5 и 6 используются для изменения текущего положения линзы на истинное положение линзы, т.е. положение, в котором целевой объект находится в фокусе.
7. Сглаживание положения линзы посредством оценки надежности
Надежность определяется как мера, указывающая, в какой степени полученное положение линзы зависит от шума, и следовательно, до какой степени на точность измерения надежности можно положиться. В качестве примера, но не ограничения, надежность можно оценить как соотношение сигнал/шум по выражению:
R=100x (1),
N
где R-надежность, Ys-уровень сигнала, Y-уровень шума. Надежность может также быть оценена с помощью модели машинного обучения.
Таким образом, в настоящем изобретении оценка надежности используется для сглаживания положения линзы, что наглядно проиллюстрировано на фиг.1b, на котором представлено несколько положений кошки при ее перемещении с обеспечением плавного перехода фокуса на объект интереса (кошку).
8. Оптимизация этапа отслеживания целевого объекта
Для описания этапов оптимизации этапа отслеживания следует раскрыть ключевые этапы отслеживания, основанные на использовании корреляционных фильтров.
Ключевым средством отслеживания изменения положения целевой точки, например, центра объекта от кадра к кадру является корреляционный фильтр. Корреляционный фильтр - это матрица, совпадающая по размеру с регионом интереса на изображении. Фильтр применяется к определенным попиксельным признакам региона интереса (ROI) путем нахождения корреляции между ними. Корреляцию формально можно определить, как результат применения математической операции свертки между двумя дискретными функциями в двумерном пространстве координат пикселей. Результатом корреляции служит сигнал в виде матрицы, также называемой картой сигнала, той же размерности, что и регион интереса (ROI), координаты максимального элемента в ней принимаются в качестве предсказанного центра объекта на новом кадре. Прежде чем применять фильтр вышеуказанным образом, его необходимо построить таким образом, чтобы пик корреляции соответствовал желаемому центру объекта. Для этого используется изображение с априорно известным расположением центра объекта, например, первый кадр в момент инициализации отслеживания путем нажатием пользователя на дисплей устройства. Построение корреляционного фильтра проводится путем минимизации функции ошибки между попиксельным соответствием получаемой карты сигнала от фильтра с некоторыми первоначальными значениями и карты идеального сигнала, моделируемого при помощи известных координат центра. В результате для вновь полученного кадра построенный фильтр позволяет определить сдвиг центра объекта.
В этапе отслеживания присутствует шаг определения текущего размера региона интереса, меняющегося вследствие изменения формы и положения объекта относительно камеры. Этот этап реализуется также через корреляционный фильтр похожим образом: каждая координата в карте сигнала отражает свой размер региона интереса из предопределенного набора пробных размеров, по координате с максимальным значением выбирается оптимальный размер.
Таким образом, после инициализации фильтров на первом кадре этап отслеживания выполняет следующие основные шаги на вновь полученном кадре:
1. извлечение попиксельных (или поблочных в случае группировки пикселей в блоки) признаков из региона интереса;
2. применение фильтра для определения сдвига центра объекта по сравнению с предыдущим кадром;
3. применение фильтра для определения нового размера региона интереса относительно нового центра объекта;
4. (опционально) построение новых экземпляров обоих фильтров для полученного региона интереса, комбинирование с предыдущими для адаптации к изменению движения объекта/сцены;
Ниже описаны этапы оптимизации отслеживания (со ссылками на этапы 1-4 выше). Под оптимизацией понимается улучшение качества работы и ускорение этапа отслеживания.
1) На шаге 1 этапа отслеживания пиксели группируются в прямоугольные блоки, причем для уменьшения объема вычислений на последующих шагах матрица блоков имеет фиксированный размер вне зависимости от изменения размера объекта в течение съемки. Регион, соответствующий матрице блоков на изображении - это регион обработки, как правило, больший по размеру, чем регион интереса.
2) При построении корреляционных фильтров в семействе алгоритмов с корреляционными фильтрами часто вычисляют так называемые маски, которые при наложении на регион интереса отсекают из рассмотрения некоторые блоки пикселей, предположительно не принадлежащие объекту. В рамках оптимизации этапа отслеживания маска не вычисляется, по умолчанию используется бинарная маска со значением 1 на позициях, соответствующих региону интереса внутри региона обработки, со значением 0 - в противном случае.
3) В состав признаков блока пикселей входит гистограмма градиентов яркости (HoG), давно используемая в задачах обработки изображений. В рамках оптимизации этапа отслеживания изменен подход к ее построению:
Гистограмма строится на основе grayscale представления изображения вместо RGB для уменьшения объема вычислений.
Очередное значение длины градиента для определенной позиции в блоке заполняет не ближайшее предопределенное направление (по градусу) в гистограмме, а распределяется между двумя соседями в размере прямо пропорциональным косинусу угла между соседом и обрабатываемым градиентом.
Полученные значения гистограммы определенного блока экстраполируются в соседние блоки в размере, для каждого значения зависящим от расстояния соответствующего пикселя блока до соседнего блока. Второй и третий пункт направлены на создание более плавного представления о движении объекта от кадра к кадру.
4) Оптимизация этапа отслеживания на шаге 4 предполагает построение новых экземпляров соответствующих фильтров не на каждом кадре: фильтр определения центра объекта строится один раз в серии N кадров, фильтр определения размера региона интереса - один раз в серии M кадров. N и M заданы параметрически. В качестве примера, но не ограничения, оба значения могут быть равными 3-м. Таким образом достигается ускорение в среднем для последовательности кадров.
5) На шаге 4 комбинирование построенных фильтров с аналогами на предыдущем кадре каждый раз осуществляется по формуле взвешенного среднего арифметического. Вес для фильтра определения положения центра объекта является адаптивным, т.е. может меняться от кадра к кадру в зависимости от наблюдаемого региона интереса. Изначально вес, принимающий значения в диапазоне от 0 до 1, имеет очень маленькое значение, например, 0.01. В момент резкого изменения региона интереса, что распознается посредством метрики суммы абсолютных разностей, вес становится равным 1.
6) Оптимизация шагов этапа отслеживания для вычисления на устройствах с операционной системой Android включает в себя ускорение вычисления поточечного умножения матриц с комплексными значениями, ускорение операции преобразования Фурье. Ускорение достигается как благодаря использованию векторных операций, так и благодаря изменению способа подсчета.
Более детально этапы оптимизации отслеживания будет раскрыты далее со ссылкой на фиг.5с.
Эффекты, достигаемые при использовании способа и устройства прогнозируемой автофокусировки.
Общие эффекты:
- обеспечивается прогнозируемая автофокусировка объекта в реальном времени;
- плавный переход фокуса, обусловленный высокой степенью прогнозирования.
Эффекты, обеспечиваемые полной последовательностью этапов прогнозирования от получения входных данных до вывода результата:
- одна последовательность этапов для отслеживания объекта, оценки положения объекта и оценки положения линзы и прогнозирования положения линзы;
-более точное прогнозирование для будущих кадров;
-стабильный фокус в сложных случаях;
Эффекты, обеспечиваемые с помощью оценки положения линзы посредством диспарантности и надежности:
- точная оценка положения линзы посредством использования модели машинного обучения;
- точная фокусировка на отслеживаемом объекте;
- плавное перемещение линзы, обусловленное оценкой надежности
Эффекты, обеспечиваемые оптимизацией отслеживания:
- рабочее время оптимизированного способа прогнозируемой автофокусировки снижается примерно в 15 раз по сравнению с известным уровнем техники.
Далее будет описана полная схема работы способа прогнозируемой автофокусировки от получения входных данных до вывода результата согласно заявленному изобретению со ссылкой на фиг.4, где представлена блок-схема последовательности этапов заявленного способа.
Ключевое положение 1
(со ссылкой на фиг.4 и 5а)
Входные данные для инициализации заявленного способа:
- изображение, полученное с камеры, встроенной в устройство, содержащее целевой объект,
- область, выбранная пользователем с помощью интерфейса ввода-вывода устройства автоматической фокусировки. В качестве примера, но не ограничения, в текущем изобретении используется опция «сетка» Android-приложения камеры смартфона,
- PDAF данные для изображения для вычисления диспарантности, полученные с помощью PDAF сенсоров на матрице камеры устройства. В качестве примера, но не ограничения, может использоваться технология Dual Pixel, при которой каждый пиксель матрицы камеры устройства снабжен PDAF сенсором. При этом опционально, в качестве входных данных может использоваться информация о глубине изображения, полученная с помощью других известных из уровня техники способов автофокусировки, например, фазовой детекции и стереореконструкции.
Выходные данные, получаемые в результате выполнения заявленного способа:
i
i
-ом
x, y - координаты региона интереса (ROI), соответствующие целевой точке, задающей центр ограничивающей рамки для контура целевого объекта на i кадре,
i
i
Di - диспарантность, соответствующая региону интереса (ROI) c координатами (x, y),
i+n
-ом
L - положение линзы в (i+n) кадре, где n - количество предсказываемых кадров, при этом следует пояснить, что i-тый кадр подается на вход, и положение линзы предсказывается на n кадров вперед, при этом отображается предсказание на кадре с номером i+n.
Далее будет описана последовательность этапов способа согласно блокам на фиг.4 и фиг.5а (Ключевое положение 1)
1) На первом кадре пользователь инициирует этап отслеживания посредством касания целевого объекта на дисплее устройства и задания целевой точки объекта.
2) Этап отслеживания, выполняемый с использованием центрального процессора устройства, отслеживает положение целевого объекта для каждого кадра.
i
i
,
3) На первом кадре регион интереса (ROI) задается пользователем посредством выбора целевой точки объекта. На всех последующих кадрах выбор региона интереса (ROI), содержащего целевую точку объекта с координатами (x, y)осуществляется на основе результата этапа отслеживания.
4) Вычисление диспарантности (Di) для ROI. Диспарантность является точкой локального минимума SAD кривой, построенной на основе PDAF данных в виде левого и правого изображения, получаемых посредством PDAF сенсоров матрицы камеры устройства.
5) Текущее положение линзы корректируется с учетом полученной диспарантности Di и данных, которые более детально будут пояснены при описании Ключевого положения 2. Вычисляется истинное положение линзы Li.
6) Сглаживание истинного положения линзы Li посредством надежности, описанной далее в Ключевом положении 2.
7) Передача сглаженного положения линзы Li в качестве входных данных для выполнения этапа прогнозирования с использованием процессора устройства.
-ого
8) Прогнозирование положения линзы на основании этапа прогнозирования для N кадров вперед, т.е. для (i+n) кадра. В качестве примера, не ограничивающего указанную реализацию, этап предсказания может быть основан на фильтре Калмана, в котором оцениваются три величины - положение линзы, скорость и ускорение в модели равноускоренного движения.
В результате проведения способа прогнозируемой автофокусировки обеспечивается прогнозирование позиции линзы на (i+n)-ом кадре, что обеспечивает нахождение целевого объекта в фокусе в реальном времени.
Ключевое положение 2 (со ссылкой на фиг.4 и фиг.5b)
Коррекция диспарантности для оценки положения линзы
Входные данные:
Данные устройства - PDAF данные для изображения для вычисления диспарантности, полученные с помощью PDAF-сенсоров на матрице камеры устройства. В качестве примера, но не ограничения, может быть использована технология Dual Pixel, при которой каждый пиксель матрицы камеры устройства снабжен PDAF-сенсором. При этом опционально, в качестве входных данных используется информация о глубине изображения, полученная с помощью других известных из уровня техники способов автофокусировки, например, фазовой детекции или стереореконструкции.
d - физическое расстояние между камерой устройства и целевым объектом,
d
L - положение линзы для целевого объекта, подлежащего фокусировке, определенное устройством для расстояния d,
k
d
d
D - диспарантность, соответствующая зоне интереса ROI, имеющей координаты (x, y) для диапазона положений линзы (L-m, L+m), где {-m, +m} - диапазон позиций линзы, который гарантирует, что нулевая диспарантность будет достигнута, и k∈{-m,+m} - значение из диапазона, при котором достигается нулевая диспарантность. Диспарантность определяется как локальный минимум SAD кривой, построенной на основе данных по глубине изображения, в качестве примера, но не ограничения, полученных с помощью технологии Dual Pixel или опционально, способом фазового детектирования или стереореконструкции.
Выходные данные:
f:d→L - Модель машинного обучения для перевода физического расстояния в положение линзы (модель f принимает на вход расстояние d и выводит положение линзы L);
φ:(D,L,x,y)→Δ - Модель машинного обучения для перевода диспарантности в сдвиг позиции линзы (модель φ  принимает на вход диспарантность D, а также опционально, позицию линзы L и позицию целевого объекта в кадре (x,y) и выводит сдвиг позиции линзы Δ ).
Далее будет описана последовательность этапов способа согласно блокам на фиг.4 и 5b (Ключевое положение 2)
1) Целевой объект задается на расстоянии d.
d
d
2) Диспарантность D оценивается для положения линзы в диапазоне(L-m, L+m).
3) Вычисляется истинное положение линзы , где p - некоторое положения линзы, при котором достигается нулевая или близкая к нулю диспарантность, на которое мы делаем поправку.
d
4) Этапы 1)-3) характеризуют процесс получения данных, согласно которым значению расстояния от целевого объекта до камеры d соответствует значение положения линзы L,иповторяются для d∈{a,b}, где a, b - величины, соответствующие минимальному и максимальному расстоянию от целевого объекта до камеры.
На основе указанных предварительно полученных данных, в которых характеризуются соответствие расстояния d и позиции линзы L, происходит процесс обучения модели машинного обучения.
d
5) Обученная на предварительно собранных данных d и L модель машинного обучения для преобразования физического расстояния в положение линзы обеспечивает преобразование некоторого произвольного расстояние z из диапазона {a,b} от целевого объекта до камеры устройства в истинное положение линзы . Следует отметить, что обучение модели машинного обучения для преобразования физического расстояния в положение линзы происходит до этапа отслеживания движущегося целевого объекта.
fixed
a
b
6) Далее, линза камеры устройства фиксируется в произвольном положении Lиз интервала {L, L}, и целевой объект перемещается из точки a в точку b.
7) Истинное положение линзы  восстанавливается для каждого значения d∈{a,b} согласно этапу 5).
d
8) Для каждого значения d сдвиг позиции линзы определяется как ,где - истинное положение линзы для расстояния d, L - положение линзы для целевого объекта, подлежащего фокусировке, определенное устройством для расстояния d. При этом сдвиг позиции линзы является функцией от диспарантности D, и, опционально, от текущего положения L линзы и положения в кадре (x,y).
d
9) На основе собранных данных происходит обучение модели машинного обучения, которая преобразует диспарантность D для расстояния d, т.е. соответствующую для ROI на расстоянии d, в сдвиг позиции Δd линзы. Следует отметить, что обучение указанной модели машинного обучения происходит до этапа отслеживания движущегося целевого объекта. В результате была получена модель машинного обучения для перевода диспарантности в сдвиг позиции линзы.
10) Получение сдвига позиции линзы ΔD на основе диспарантности D посредством модели машинного обучения, полученной на этапе 9).
Сглаживание позиции линзы посредством оценки надежности
Входные данные:
- положение линзы для целевого объекта, подлежащего фокусировке, определенное устройством для i-го кадра,
-ом
- истинное положение для целевого объекта в i кадре,
i
-ого
SAD- SAD кривые для i кадра для зоны интереса ROI c координатами x, y. Для построения кривых используется SAD (Sum of Absolute Differences, сумма абсолютных различий), которая рассчитывается как абсолютная разность между пикселями левого и правого изображений из PDAF-данных. Кривые строятся путем некоторого количества сдвигов одной картинки относительно другой.
Выходные данные:
-ого
- надежность для iкадра, мера, указывающая степень влияния шума на полученное положение линзы и, следовательно, определяющая, насколько на его точность можно положиться.
-ом
- сглаженная позиция линзы в i кадре.
Далее будет описана последовательность этапов способа согласно блокам на фиг.5b (Ключевое положение 2)
11) В качестве примера, но не ограничения, надежность может быть оценена через соотношение сигнал-шум, с помощью которого оценивается, насколько сильно шум влияет на данные, и которое является безразмерной величиной. Применительно к заявленному решению соотношение сигнал/шум может быть аппроксимировано с помощью двух минимальных значений SAD кривой - глобального минимума и подминимума:
, (2)
где  - уровень сигнала,  - уровень шума,  - глобальный минимум и  - подминимум. Формула (2) характеризует аппроксимацию соотношения сигнал/шум с помощью глобального минимума и подминимума SAD-кривой. В качестве альтернативного варианта для оценки надежности может быть использована модель машинного обучения, обученная на кривых SAD и дополнительных признаках, позволяющих оценить уровень шума в полученных данных. При этом функция потерь для указанной модели машинного обучения должна учитывать разность между оцененным положением линзы и положением линзы для физического расстояния d (Ld), полученным ранее (см. Ключевое положение 1).
-ом
12) Полученная надежность R и данные, а именно диспарантность D и сдвиг позиции линзы Δd, полученные на этапах 10) и 11) Ключевого положения 2, используются для подавления шума в полученного на этапе 5 Ключевого положения 1 истинном положении линзы и получения сглаженного положения линзы  в i кадре. Сглаженное положение линзы  определяется как функция от текущего и предыдущих истинных значений положения линзы  и соответствующих им оценок надежности . В качестве примера, но не ограничения, может быть использована взвешенная сумма предыдущих истинных значений, где в качестве весов фигурируют оценки надежности.
В результате выполнения этапов, раскрытых в Ключевом положении 2, реализуется получение сдвига позиции линзы для корректировки положения линзы, а также сглаживание положения линзы в i-м кадре.
Ключевое положение 3
Оптимизация этапа отслеживания
Входные данные:
CFT-отслеживание на основании корреляционных фильтров.
Выходные данные:
-оптимизированное отслеживание на основании корреляционных фильтров.
Далее будет описана последовательность этапов способа, характеризующих этапы оптимизации отслеживания согласно блок-схеме на фиг.5с (Ключевое положение 3).
1) Задание фиксированного размера для обрабатываемой матрицы блоков пикселей (региона обработки).
Каждый кадр изображения рассматривается в виде пикселей или группы пикселей. Согласно этапу отслеживания, на шаге 1 пиксели группируются в прямоугольные блоки пикселей, составляющие матрицу блоков пикселей. Для уменьшения объема вычислений на последующих этапах оптимизации матрица блоков пикселей имеет фиксированный размер вне зависимости от изменения размера целевого объекта в течение съемки. Регион обработки определяется как регион, соответствующий матрице блоков пикселей на изображении, который совпадает или превышает по размеру регион интереса(ROI). В результате рассматриваются два выделенных прямоугольных региона на изображении - регион интереса ROI и объемлющий его регион обработки. После задания региона обработки каждому включенному блоку пикселей сопоставляется набор признаков. В качестве примера, но не ограничения, в рамках данного изобретения используются два признака: яркость пикселей в блоке пикселей и гистограмма градиентов для блока пикселей, формирование которой раскрыто далее. Ключевое свойство данных признаков - отражение изменения региона обработки, т.е. изменение самих значений в блоках пикселей вследствие движения целевого объекта.
2) Задание бинарной маски для корреляционных фильтров.
При формировании корреляционных фильтров для отслеживания целевых объектов используются маски, которые при наложении на регион интереса (ROI) отсекают из рассмотрения некоторые блоки пикселей, предположительно не принадлежащие целевому объекту. В качестве примера, но не ограничения, в настоящем изобретении используется бинарная маска со значением 1 для блоков пикселей, соответствующих региону интереса (ROI) внутри региона обработки, и со значением 0 для блоков пикселей вне региона интереса (ROI). Такой вид маски не требует промежуточных вычислений, тем самым ускоряя обработку данного этапа. Альтернативным примером может послужить маска в виде функции плотности двумерного нормального распределения с центром в целевой точке. Также в публикации [9] в разделе 3.2: Alan Lukežič, Tomáš Vojíř, Luka Čehovin, Jiří Matas and Matej Kristan. “Discriminative Correlation Filter with Channel and Spatial Reliability.” // In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017, представлен пример вычисляемой на основе яркостей пикселей маски со значениями в диапазоне от 0 до 1.
3) Модификация построения гистограммы градиентов яркости (HoG).
При обработке изображения из уровня техники широко известно использование гистограммы градиентов яркости (HoG) как признака, характеризующего блок пикселей. Исходный метод построения HoG описан в публикации[10]: Dalal N., Triggs B. Histograms of oriented gradients for human detection //2005 IEEE computer society conference on computer vision and pattern recognition (CVPR'05) [10], далее приведено описание измененных деталей построения и модификации гистограммы (HoG):
a) В заявленном изобретении гистограмма строится на основе grayscale представления изображения вместо RGB для уменьшения объема вычислений; b) Гистограмма градиента представлена в виде списка значений, каждое из которых соответствует направлению (градусу) по предопределенному делению 360° на сектора. Модификация в рамках текущего изобретения состоит в следующем: очередное значение длины градиента, попавшего в тот или иной сектор деления, для определенной позиции в блоке пикселей заполняет не одно ближайшее предопределенное направление, а распределяется между двумя соседними направлениями в размере, прямо пропорциональном косинусу угла между соответствующим направлением и обрабатываемым градиентом; с) Полученные значения гистограммы определенного блока экстраполируются в соседние блоки пикселей в размере, для каждого значения зависящем от расстояния соответствующего пикселя блока пикселей до соседнего блока пикселей.
Такое применение гистограммы градиентов яркости (HoG), в частности этапов b) и c), обеспечивает создание более плавного представления о движении целевого объекта от кадра к кадру.
4) Изменение частоты обновления корреляционного фильтра определения центра (целевой точки) объекта и корреляционного фильтра определения размера региона интереса (ROI).
Как было указано ранее, корреляционный фильтр предварительно формируется на основании первого кадра целевого объекта, находящегося в поле зрения камеры полностью или частично, выбранного пользователем. На этапе отслеживания целевого объекта присутствует этап определения текущего размера региона интереса, меняющегося вследствие изменения формы и положения объекта относительно камеры. Этот этап также реализуется через корреляционный фильтр следующим образом: строится одномерная карта сигнала в виде списка значений, где значение по каждой координате отражает размер региона интереса из предопределенного набора пробных размеров. Набор пробных размеров формируется относительно текущего с помощью домножения на коэффициент, например, [0.5x, 0.7x, 1.0x, 1.2x, 1.5x]. По координате с максимальным значением выбирается оптимальный размер, включающий объект интереса с учетом изменения формы и положения объекта относительно камеры. Таким образом, на этапе отслеживания используются два разных по структуре корреляционных фильтра: фильтр определения целевой точки на новом кадре и фильтр определения оптимального региона интереса на новом кадре. Построение вышеуказанных корреляционных фильтров выполняется не на каждом кадре: фильтр определения центра объекта строится один раз в серии N кадров, фильтр определения размера региона интереса строится один раз в серии M кадров Значения кадров N и M задается параметрически: в качестве примера, но не ограничения, N и M могут равняться 3-м. В результате использования изменения частоты обновления фильтра определения центра (целевой точки) объекта и фильтра определения размера региона интереса обеспечивается ускорение в среднем для последовательности изображений, поскольку на части кадров данный этап попросту не осуществляется.
5) Адаптивное изменение веса корреляционного фильтра для определения положения центра объекта (целевой точки).
current
previous
При комбинировании корреляционного фильтра с предыдущего кадра, определяющего целевую точку, с аналогом на текущем кадре применение весового коэффициента (далее, веса) является адаптивным, т.е. может меняться от кадра к кадру в зависимости от наблюдаемого ROI. Изначально с первого кадра вес (величина, принимающая значение от 0 до 1) имеет очень маленькое значение, к примеру, 0.01. В момент резкого изменения региона интереса, что распознается посредством метрики суммы абсолютных разностей (SAD) пикселей регионов обработки), вес становится равным 1, моделируя тем самым стирание истории с предыдущих кадров и инициализацию фильтра с нуля. Данная метрика традиционно используется для сравнения изображений; в частности, в данном случае сравниваются попиксельно два региона изображения, соответствующие региону обработки, представленные в виде матриц. Например, для матриц размера n x m метрика SAD выражается следующим образом: , где R - регион обработки с текущего кадра, R - регион обработки с предыдущего кадра, n, m - размеры региона обработки, i, j - координаты блока пикселей в матрице.
6) Использование ускоренных матричных операций: поточечного умножения матриц с комплексными значениями, преобразования Фурье.
Оба типа операций используются при построении корреляционных фильтров и при построении признаков для блоков пикселей. В рамках текущего изобретения ускорение достигается благодаря использованию векторных операций. Помимо этого, алгоритм преобразования Фурье, часто реализуемый в виде БПФ Кули-Тьюки, описанный в публикации [11]: Cooley J. W., Tukey J. W. An algorithm for the machine calculation of complex Fourier series // Mathematics of computation. - 1965, был модифицирован для более оптимальной работы на фиксированных размерах матриц благодаря фиксированному размеру региона обработки.
В результате выполнения ключевого положения 3 время выполнения этапа отслеживания целевого объекта для предсказываемой автофокусировки снижается примерно в 15 раз по сравнению с известным уровнем техники, к примеру, описанному в публикации [9].
Заявленное изобретение обеспечивает использование устройства прогнозируемой автофокусировки объекта с учетом следующих функциональностей:
1) Процесс отслеживания движущегося объекта и его нахождение в фокусе выполняется устойчиво и стабильно в процессе наблюдения.
2) При движении целевых объектов с относительно высокой скоростью проекции объекта на экран устройства с сохранением их нахождения в фокусе обеспечивается предсказание положения целевого объекта и положения линзы на несколько кадров вперед.
3) Способ прогнозируемой автофокусировки для объекта согласно заявленному изобретению функционирует в сложных или критических случаях, таких как частичные окклюзии наблюдаемой сцене с целевым объектом, совпадение цвета целевого объекта и фона и, как следствие, низкая контрастность сцены, низкая освещенность в процессе съемки.
4) Обеспечивается процесс автофокусировки на целевом объекте и вывод на дисплей устройства сфокусированного фото- или видеоизображения объекта в реальном времени.
5) Благодаря возможности использования заявленного способа прогнозируемой автофокусировки снижаются требования к вычислительной мощности устройства для обеспечения процесса обработки данных.
Описание устройства
Устройство прогнозируемой автофокусировки для объекта далее описано со ссылкой на фиг. 6. Указанное устройство в рамках данного изобретения представляет собой компактное, переносное устройство (опционально, под управлением операционных систем Android, iOS и т.д.), содержащее:
- центральный процессор с одним или более ядрами;
- графический процессор;
- системную память;
- контроллер памяти, управляющий потоком данных к и от системной памяти;
- одну или более камер, опционально, оснащенных сенсором или сенсорами для осуществления фазовой автофокусировки (PDAF-сенсором);
- сенсорный дисплей;
- интерфейсы ввода-вывода, обеспечивающие получение информации с различных сенсоров и вывод информации. В качестве примеров сенсоров могут выступать сенсор дисплея и сенсор матрицы камеры;
- накопитель, к примеру, твердотельный накопитель (SSD).
Указанное устройство прогнозируемой автофокусировки может быть интегрировано в смартфоны и планшетные компьютеры под управлением операционных систем Android, iOS, HarmonyOS и подобные им систем, а также другие подобные устройства, в которых имеется потребность к обеспечению прогнозируемой автофокусировки для объекта.
Принцип работы устройства прогнозируемой автофокусировки для объекта согласно фиг.6 будет описан далее.
1. В процессе фото- или видеосъемки лучи света, отраженные от целевого объекта, проходят через линзу камеры или камер устройства прогнозируемой автофокусировки и попадают на матрицу камеры.
2. Полученные данные с матрицы (опционально, с помощью PDAF-сенсоров) через интерфейс ввода-вывода передаются в системную память блока вычислений.
3. Пользователь касается дисплея устройства. Информация о точке касания, получаемая с помощью сенсора нажатия, расположенного под дисплеем, через интерфейс ввода-вывода передается в системную память.
4. Из данных, полученных в пунктах 2 и 3, способом прогнозируемой автофокусировки с использованием центрального процессора и контроллера памяти устройства прогнозируется положение линзы на N кадров вперед.
5. Спрогнозированное положение линзы передается камере устройства через системную память и интерфейс ввода-вывода для осуществления автофокусировки.
6. Графическая информация с камеры устройства передается через интерфейс ввода-вывода и графический процессор на дисплей устройства.
7. Пользователь наблюдает нахождение целевого объекта интереса в фокусе в режиме реального времени. Опционально, результаты фото- и видеосъемки сохраняются на накопитель устройства.
Таким образом, во внутренней схеме устройства можно выделить два функциональных блока:
1. Блок вычислений: центральный процессор, контроллер памяти, системная память и накопитель.
2. Блок ввода-вывода: графический процессор, дисплей, камера, интерфейс ввода-вывода.
Отслеживание объекта, определение текущего положения линзы для нахождения объекта в фокусе посредством моделей машинного обучения, а также прогнозирование положений объекта и линзы для будущих кадров выполняется блоком вычислений. Получение входных данных, а также непосредственно фокусировка линзы устройства и вывод изображения целевого объекта на дисплей устройства выполняется блоком ввода-вывода.
Промышленная применимость
Устройство и способ прогнозируемой автофокусировки может использоваться в компактных, переносных устройствах, например, планшетных компьютерах, ноутбуках, системах телеконференций, кроме того, может использоваться для фото- и видеосъемки камерами смартфонов под управлением операционных систем Android, iOS, HarmonyOS, а также подобных им систем, и в других устройствах, в которых имеется потребность к обеспечению предсказываемой автофокусировки.