Добавьте изображения и выберите модель камеры
Чтобы начать калибровку, необходимо добавить изображения. Можно добавить сохраненные образы из папки или добавить изображения непосредственно из камеры. Калибратор анализирует изображения, чтобы гарантировать, что они удовлетворяют требования калибратора. Калибратор затем обнаруживает точки theselected шаблона. Для получения дополнительной информации на настройке камеры и получающих изображениях, смотрите, Готовят Изображения Камеры и Получения.
Добавьте изображения из файла
На вкладке Calibration, в разделе File, нажимают Add Images, и затем выбирают From file. Можно добавить изображения из нескольких папок путем повторения процесса для каждой папки.
Получите живые изображения
Можно получить живые изображения от веб-камеры с помощью поддержки Веб-камеры MATLAB. Чтобы использовать эту функцию, необходимо установить Пакет поддержки MATLAB для Веб-камер USB. Для получения информации об установке пакета поддержки смотрите Установку Пакет поддержки MATLAB для Веб-камер USB (Image Acquisition Toolbox). Чтобы добавить живые изображения, выполните эти шаги.
На вкладке Calibration, в разделе File, нажимают Add Images, затем выбирают From camera.
Это открывает вкладку Camera. Если только одна веб-камера соединяется с вашей системой, приложение выбирает его по умолчанию, и панель предпросмотра в реальном времени открывается. Если вы имеете несколько соединенных камер и хотите использовать один кроме значения по умолчанию, выберите ту камеру в списке Camera.
(Необязательно) свойства Набора для камеры, чтобы управлять изображением. Выберите Camera Properties, чтобы открыть диалоговое окно Camera Properties для выбранной камеры. Доступные свойства варьируются в зависимости от вашего устройства.
Используйте ползунки и списки, чтобы изменить доступные настройки свойства. Панель предварительного просмотра обновляется динамически, когда вы изменяете настройки. Когда вы закончите устанавливая свойства, щелкните где угодно за пределами диалогового окна, чтобы отклонить его.
Введите местоположение, чтобы сохранить полученные файлы изображений в поле Save Location. Можно ввести путь к папке или использовать кнопку Browse. У вас должно быть разрешение записать в папку, которую вы задаете.
Установите параметры получения.
Чтобы определить номер секунд между захватами изображений, используйте поле Capture Interval (sec) или ползунок. Значением по умолчанию является 5
секунды, минимумом является 1
во-вторых, и максимумом является 60
секунды.
Чтобы определить номер захватов изображений, используйте поле Number of images to capture или ползунок. Значением по умолчанию является 20
изображения, минимумом является 2
изображениями и максимумом является 100
изображения.
Настройка по умолчанию получает в общей сложности 20 изображений, один каждые 5 секунд.
Панель предварительного просмотра показывает живые изображения, переданные потоком как данные о RGB. После того, как вы настраиваете любые свойства устройства и получаете настройки, используйте окно Preview в качестве руководства, чтобы выстроить в линию камеру, чтобы получить изображение шаблона, которое вы хотите получить.
Выберите Capture. Приложение получает конкретное количество изображений, и миниатюры снимков состояния появляются в панели Data Browser. Их автоматически называют инкрементно и получают как .png
файлы.
Можно остановить захват изображения, прежде чем обозначенное количество изображений будет получено путем выбора Stop Capture.
Когда вы получаете изображения шаблона, после того, как обозначенное количество изображений будет получено, отображения приложения диалоговое окно Image and Pattern Properties. Выберите калибровочный шаблон в изображении и задайте свойства шаблона. Нажмите OK.
Приложение затем вычисляет и отображает результаты обнаружения.
Чтобы отклонить диалоговое окно Detection Results, нажмите OK.
Когда вы закончите получать живые изображения, выберите Close Image Capture, чтобы закрыть вкладку Camera.
После того, как вы добавите, что изображения, диалоговое окно Image and Pattern Properties к вашему сеансу, появляются. Прежде чем калибратор может анализировать калибровочные шаблоны, необходимо выбрать калибровочный шаблон, чтобы обнаружить и установить свойства изображения для структуры шаблона. Для получения дополнительной информации об этом диалоговом окне смотрите Select Calibration Pattern and Set Properties.
Анализируйте изображения
Калибратор пытается обнаружить шаблон в каждом из добавленных изображений и отображает диалоговое окно индикатора выполнения, которое указывает на прогресс обнаружения. Если какое-либо из изображений отклоняется, диалоговое окно Detection Results появляется и отображается диагностическую информацию. Результаты показывают, сколько общих изображений было обработано и обработанных, сколько было принято, отклонено или пропущено. Калибратор пропускает дублирующиеся изображения.
Чтобы просмотреть отклоненные изображения, нажмите view images. В дополнение к дублирующимся изображениям калибратор также отклоняет изображения, где он не мог обнаружить целый шаблон. Возможные причины ни для какого обнаружения являются размытым изображением или экстремальным углом шаблона. Обнаружение занимает больше времени у увеличенных изображений и шаблонов, которые содержат большое количество элементов.
Просмотрите изображения и обнаруженные точки
Панель Data Browser отображает список изображений с их идентификаторами. Каждое изображение содержит обнаруженный шаблон. Чтобы просмотреть изображение, выберите его из панели Data Browser.
Панель Image отображает выбранное изображение шахматной доски с зелеными кругами, наложенными, чтобы указать на обнаруженные точки. Можно проверить, что углы были обнаружены правильно при помощи средств управления изменением масштаба. Желтый квадрат указывает (0,0
) источник. X и стрелы Y указывают на ориентацию осей шахматной доски.
Калибровать
Если вы удовлетворены принятыми изображениями на вкладке Calibration, выберите Calibrate. Калибровочные настройки по умолчанию используют минимальный набор параметров камеры. Запустите путем выполнения калибровки с настройками по умолчанию. После оценки результатов можно попытаться улучшить калибровочную точность путем корректировки настроек или добавления или удаления изображений, и затем калибровки снова. Если вы переключаетесь между стандартом и моделями fisheye-камеры, необходимо перекалибровать.
Выберите Camera Model
Можно выбрать или стандарт или модель fisheye-камеры. На вкладке Calibration, в разделе Camera Model, выбирают Standard или Fisheye.
Можно переключить модели камеры в любой точке на сеансе. Необходимо перекалибровать после изменения модели камеры. Выберите Options, чтобы получить доступ к настройкам и оптимизации для любой модели камеры.
Стандартные опции модели
Когда камера имеет серьезное искажение объектива, приложение может не вычислить начальные значения для внутренних параметров камеры. Если вы имеете технические требования производителя для своей камеры и знаете размер пикселя, фокусное расстояние или характеристики линзы, можно вручную установить исходные предположения для внутренних параметров камеры и радиального искажения. Чтобы установить исходные предположения, выберите Options> Optimization Options.
Выберите Specify initial intrinsics as a 3-by-3 matrix of the form [fx 0 0; s fy 0; cx cy 1], и затем введите 3х3 матрицу, чтобы задать начальные внутренние параметры. Если вы не задаете исходное предположение, функция вычисляет начальную внутреннюю матрицу с помощью линейного метода наименьших квадратов.
Выберите Specify initial radial distortion as 2- or 3-element vector, и затем введите 2-или вектор с 3 элементами, чтобы задать начальное радиальное искажение. Если вы не вводите значение, функция использует 0
как начальное значение для всех коэффициентов.
Для получения дополнительной информации о калибровочных параметрах смотрите то, Что Калибровка фотоаппарата?.
Опции модели подозрительного взгляда
В разделе Camera Model , с выбранным Fisheye, нажимают Options. Выберите Estimate Alignment, чтобы включить оценку выравнивания осей, когда оптическая ось линзы подозрительного взгляда не будет перпендикулярна плоскости изображения.
Для получения дополнительной информации о калибровочном алгоритме модели fisheye-камеры, смотрите Калибровочные Основы Подозрительного взгляда.
Калибровочный алгоритм
Для калибровки модели fisheye-камеры смотрите Калибровочные Основы Подозрительного взгляда.
Стандартный калибровочный алгоритм модели камеры принимает модель камеры с точечной диафрагмой:
(X, Y, Z) — Мировые координаты точки.
(x, y) — координаты Изображений соответствующего изображения указывают в пикселях.
w Произвольный масштабный коэффициент однородных координат.
K Матрица внутреннего параметра камеры, заданная как:
Координаты (cx, cy) представляют оптический центр (основная точка) в пикселях. Когда x - и y - оси точно перпендикулярны, скошенный параметр, s, равняется 0
. Элементы матрицы заданы как:
fx = F *sx, описанный в пикселях.
fy = F *sy, описанный в пикселях.
F является фокусным расстоянием в мировых единицах измерения, обычно описанных в миллиметрах.
s x и s y являются количеством пикселей на мировую единицу измерения в x - и y - соответственно.
R Матрица, представляющая 3-D вращение камеры.
t Перевод камеры относительно системы мировой координаты.
Алгоритм калибровки фотоаппарата оценивает значения внутренних параметров, внешних параметров и коэффициентов искажения. Калибровка фотоаппарата включает эти шаги:
Решите для внутренних параметров и значений внешних параметров в закрытой форме, приняв, что искажение объектива является нулем. [1]
Оцените все параметры одновременно, включая коэффициенты искажения, с помощью минимизации нелинейного метода наименьших квадратов (алгоритм Levenberg–Marquardt). Используйте решение закрытой формы от предыдущего шага как первоначальная оценка внутренних параметров и значений внешних параметров. Установите первоначальную оценку коэффициентов искажения обнулять. [1][2]
Оцените калибровочные результаты
Можно оценить калибровочную точность путем исследования ошибок перепроекции, исследования значений внешних параметров камеры или просмотра неискаженного изображения. Для лучших калибровочных результатов используйте все три метода оценки.
Исследуйте ошибки перепроекции
reprojection errors является расстояниями, в пикселях, между обнаруженным и соответствующими повторно спроектированными точками. Приложение Camera Calibrator вычисляет ошибки перепроекции путем проектирования точек от мировых координат, заданных шаблоном в координаты изображений. Приложение затем сравнивает повторно спроектированные точки с соответствующими обнаруженными точками. Как правило средние ошибки перепроекции меньше чем одного пикселя приемлемы.
Отображения приложения Camera Calibrator, в пикселях, ошибки перепроекции как столбчатый график. График помогает вам идентифицировать, какие изображения неблагоприятно влияют на калибровку. Можно выбрать запись столбчатого графика, чтобы выбрать изображение, и затем удалить изображение из списка изображений в панели Data Browser.
Ошибочный столбчатый график перепроекции
Столбчатый график отображает среднюю ошибку перепроекции на изображение, наряду с полной средней погрешностью. Метки панели соответствуют идентификаторам изображений. Подсвеченные панели соответствуют выбранным изображениям.
Выберите изображение одним из этих способов:
Кликните по соответствующей панели в графике.
Выберите изображение из списка изображений в панели Data Browser.
Настройте полную среднюю погрешность. Двигайте красную линию или вниз автоматически выбрать все изображения со средней погрешностью, больше, чем заданное значение.
Исследуйте внешнюю визуализацию параметра
3-D внешний график параметров обеспечивает центральное камерой представление шаблонов и центральное шаблоном представление камеры. Центральное камерой представление полезно, если камера является стационарной, когда изображения получены. Центральное шаблоном представление полезно, если шаблон является стационарным. Можно перетащить фигуру, чтобы вращать его. Кликните по шахматной доске (или камера), чтобы выбрать его. Подсвеченные данные в визуализации соответствуют выбранному изображению в списке. Исследуйте относительные положения шаблона и камеры, чтобы определить, совпадают ли они с тем, что вы ожидаете. Например, шаблон, который появляется позади камеры, указывает на калибровочную ошибку.
Просмотрите неискаженное изображение
Чтобы просмотреть эффекты удаления искажения объектива, на вкладке Calibration, в разделе View, выбирают Show Undistorted в разделе View вкладки Calibration. Если калибровка точна, искаженные линии в просмотре изображения становятся прямыми.
Примечание
Проверка неискаженных изображений важна, даже если ошибки перепроекции являются низкими. Например, если шаблон покрывает только небольшой процент изображения, оценка искажения может быть неправильной, даже при том, что калибровка привела к немногим ошибкам перепроекции. Это изображение показывает пример этого типа неправильной оценки для одной калибровки фотоаппарата.
Для модели fisheye-камеры, при просмотре неискаженных изображений, можно исследовать изображения подозрительного взгляда более тесно, на вкладке Calibration, в разделе View, задав Fisheye Scale. Введите значение в поле Fisheye Scale или используйте стрелы, чтобы настроить шкалу или вниз.
Улучшите калибровку
Чтобы улучшить калибровку, можно удалить изображения высокой ошибки, добавить больше изображений или изменить настройки калибратора.
Рассмотрите добавление большего количества изображений если:
У вас есть меньше чем 10 изображений.
Калибровочные шаблоны не покрывают достаточно фрейма изображения.
Калибровочные шаблоны не имеют достаточного изменения ориентации относительно камеры.
Рассмотрите изображения удаления если изображения:
Имейте высокую среднюю ошибку перепроекции.
Являются расплывчатыми.
Содержите калибровочный шаблон под углом, больше, чем 45 градусов относительно плоскости камеры.
Неправильно обнаруженные калибровочные точки шаблона.
Стандартная модель: измените количество радиальных коэффициентов искажения
Можно задать два или три радиальных коэффициента искажения. На вкладке Calibrations, в разделе Camera Model, с выбранным Standard, нажимают Options. Задайте Radial Distortion как или два или три коэффициента путем выбора 2 Coefficients или 3 Coefficients, соответственно. Radial distortion происходит, когда световые лучи изгибаются более близкий ребра линзы, чем они делают в ее оптическом центре. Чем меньший линза, тем больше искажение.
Радиальные коэффициенты искажения моделируют этот тип искажения. Искаженные точки обозначаются как (искаженный x, искаженный y):
x, искаженный = x (1 + k 1*r2 + k 2*r4 + k 3*r6)
y, искаженный = y (1 + k 1*r2 + k 2*r4 + k 3*r6)
x, y Неискаженные пиксельные местоположения. x и y находятся в нормированных координатах изображений. Нормированные координаты изображений вычисляются от пиксельных координат путем перевода в оптический центр и деления на фокусное расстояние в пикселях. Таким образом x и y являются безразмерными.
k 1, k 2, и k 3 — Радиальные коэффициенты искажения линзы.
r2 = x2 + y2
Как правило, два коэффициента достаточны для калибровки. Для серьезного искажения, такой как в широкоугольных объективах, можно выбрать три коэффициента, чтобы включать k 3.
Неискаженные пиксельные местоположения находятся в нормированных координатах изображений с источником в оптическом центре. Координаты описываются в мировых единицах измерения.
Стандартная модель: вычислите скос
Чтобы оценить скос осей изображений, на вкладке Calibration, в разделе Camera Model, выбирают Options > Compute > Skew. Некоторые датчики камеры содержат недостатки, которые заставляют x - и y - оси изображения не быть перпендикулярным. Можно смоделировать этот дефект с помощью скошенного параметра. Если вы не выбираете эту опцию, оси изображений перпендикулярны, который верен для большинства современных камер.
Стандартная модель: вычислите тангенциальное искажение
Тангенциальное искажение происходит, когда линза и плоскость изображения не параллельны. Тангенциальные коэффициенты искажения моделируют этот тип искажения.
Искаженные точки обозначаются как (искаженный x, искаженный y):
x, искаженный = x + [2 * p 1 * x * y + p 2 * (r2 + 2 * x2)]
y, искаженный = y + [p 1 * (r2 + 2 *y2) + 2 * p 2 * x * y]
x, y Неискаженные пиксельные местоположения. x и y находятся в нормированных координатах изображений. Нормированные координаты изображений вычисляются от пиксельных координат путем перевода в оптический центр и деления на фокусное расстояние в пикселях. Таким образом x и y являются безразмерными.
p 1 и p 2 — Тангенциальные коэффициенты искажения линзы.
r2 = x2 + y2
Чтобы оценить тангенциальные коэффициенты искажения, на вкладке Calibration, в разделе Camera Model, выбирают Options > Compute > Tangential Distortion. В противном случае калибратор обнуляет тангенциальные коэффициенты искажения.
Модель подозрительного взгляда: оцените выравнивание
На вкладке theCalibration, в разделе Camera Model , с выбранным Fisheye, нажимают Options. Выберите Estimate Alignment, чтобы включить оценку выравнивания осей, когда оптическая ось линзы подозрительного взгляда не будет перпендикулярна плоскости изображения.
Экспортируйте параметры камеры
Когда вы будете удовлетворены своей калибровочной точностью, выберите Export Camera Parameters для стандартной модели камеры или Export Camera Parameters для модели fisheye-камеры. Можно или экспортировать параметры камеры в объект в рабочем пространстве MATLAB или сгенерировать параметры камеры как скрипт MATLAB.
Экспортируйте параметры камеры
Под Export Camera Parameters, для standar модели камеры или Export Fisheye Parameters, для модели fisheye-камеры, выбирают Export Parameters to Workspace, чтобы создать cameraParameters
возразите в своей рабочей области. Объект содержит внутренние и внешние параметры камеры и ее коэффициентов искажения. Можно использовать этот объект для различных задач компьютерного зрения, таких как неискажение изображений, измеряя плоские объекты и 3-D реконструкцию. Для получения дополнительной информации об измерении плоских объектов смотрите Измеряющиеся Плоские объекты с Калиброванной Камерой. Можно опционально экспортировать cameraCalibrationErrors
объект, который содержит стандартные погрешности предполагаемых параметров камеры путем выбора Export estimation errors.
Сгенерируйте СКРИПТ MATLAB
Под Export Camera Parameters, для стандартной модели камеры или Export Fisheye Parameters, для модели fisheye-камеры, выбирают , чтобы сохранить ваши параметры камеры в скрипт MATLAB, позволяя вам воспроизвести шаги от вашего калибровочного сеанса.