exponenta event banner

Калибровка монокулярной камеры

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

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

Оценить внутренние параметры

Внутренними параметрами камеры являются свойства камеры, такие как ее фокусное расстояние и оптический центр. Чтобы оценить эти параметры для монокулярной камеры, используйте функции Computer Vision Toolbox™ и изображения шахматного рисунка.

  • Если камера имеет стандартный объектив, используйте estimateCameraParameters функция.

  • Если камера имеет объектив рыбьего глаза, используйте estimateFisheyeParameters функция.

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

Размещение шахматной доски для оценки внешних параметров

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

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

На шахматной доске используется ориентированная на массив система координат (XP, YP), где ось XP указывает вправо, а ось YP - вниз. Начало координат шашки - нижний правый угол верхнего левого квадрата шашки.

При размещении шашечного рисунка по отношению к транспортному средству оси XP и YP должны совпадать с осями XV и YV транспортного средства. В системе координат транспортного средства XV-ось указывает вперед от транспортного средства, а YV-ось - влево, если смотреть вперед. Начало координат находится на поверхности дороги, непосредственно под центром камеры (фокальной точкой камеры).

Ориентация массива может быть горизонтальной или вертикальной.

Горизонтальная ориентация

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

Вертикальная ориентация

В вертикальной ориентации шашечный рисунок перпендикулярен земле. Рисунок можно разместить перед транспортным средством, сзади транспортного средства или слева от правой стороны транспортного средства.

Оценить внешние параметры

Разместив шашку в нужном месте, зафиксируйте ее изображение с помощью монокулярной камеры. Затем используйте estimateMonoCameraParameters для оценки внешних параметров. Для использования этой функции необходимо указать следующее:

  • Внутренние параметры камеры

  • Ключевые точки, обнаруженные на изображении, в данном случае углы шашечных квадратов

  • Мировые точки шашки

  • Высота начала рисунка шашки над землей

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

[imagePoints,boardSize] = detectCheckerboardPoints(I);
squareSize = 0.029; % Square size in meters
worldPoints = generateCheckerboardPoints(boardSize,squareSize);
patternOriginHeight = 0; % Pattern is on ground
[pitch,yaw,roll,height] = estimateMonoCameraParameters(intrinsics, ...
                             imagePoints,worldPoints,patternOriginHeight);

Для повышения точности оценки этих параметров захватывают множество изображений и усредняют значения точек изображения.

Настройка камеры с использованием внутренних и внешних параметров

После получения оценочных внутренних и внешних параметров можно использовать monoCamera для конфигурирования модели камеры. В следующем примере кода показано, как настроить камеру с помощью параметров intrinsics, height, pitch, yaw, и roll:

monoCam = monoCamera(intrinsics,height,'Pitch',pitch,'Yaw',yaw,'Roll',roll);

См. также

Приложения

Функции

Объекты

Связанные примеры

Подробнее