Автор: Илья Бакалец Редактура: Игорь Ильин, Александр Лекомцев
Наша статья — предисловие к следующей статье, посвященной калибровке камеры.
Для полного понимания процесса калибровки камеры нужно знать основы преобразования трехмерных координат точек в соответствующие двумерные координаты на плоскости. Изучим для этого геометрию формирования изображения.
В качестве примера давайте представим себя в комнате, где мы фотографируем яблоко. На начальном этапе у нас есть объект в трехмерной системе координат мирового пространства. В этом контексте объект — яблоко в трехмерном мире, которое мы хотим изобразить на фотографии.
Основная задача — поиск координат пикселей $(u, v)$ на фотографии, сделанной камерой. Эти координаты соответствуют трехмерным координатам центра яблока в 3D пространстве.
Далее мы рассмотрим четыре различные системы координат, каждая из которых играет важную роль в описании пространства и объектов: мировая система координат, система координат камеры, однородная система координат, система координат изображения.
Мировая система координат — глобальная точка отсчета для определения положения объектов в трехмерном пространстве. Она служит стандартом для измерения и описания координат объектов независимо от какой-либо конкретной точки наблюдения.
В нашем примере с фотографированием яблока мировая система координат находит положение яблока в пространстве комнаты независимо от расположения камеры. Координаты $X_w, Y_w$ и $Z_w$ представляют собой числа, которые определяют положение яблока вдоль трех взаимно перпендикулярных осей (декартова система координат): горизонтальная ось ($X_w$), вертикальная ось ($Y_w$) и глубина ($Z_w$).
На рисунке ниже желтым цветом показана мировая система координат:
Рисунок 1. Мировая система координат. Источник
Начальная точка координат $(0, 0, 0)$ может быть выбрана в любой точке комнаты или для удобства в любом углу комнаты. При этом оси $X$ и $Y$ могут быть ориентированы в горизонтальной плоскости вдоль двух стен, в то время как ось $Z$ будет направлена вдоль вертикального угла стены.
Для поиска координат яблока в мировой системе координат необходимо измерить расстояние от начала координат в этой системе до объекта. В итоге мы получим $X_w, Y_w, Z_w$.
Предположим, что камера была установлена в начале координат комнаты и настроена таким образом, что ее координатные оси $X, Y$ и $Z$ совпадали бы с соответствующими осями $X_w, Y_w$ и $Z_w$ комнаты. В такой ситуации эти две системы координат стали бы эквивалентны друг другу.
Но нам важно поставить камеру в любой точке комнаты, из которой можно будет наблюдать за нужной областью. Поэтому мы ищем связь между 3D координатами мира и 3D координатами камеры.
Чаще всего расположение осей камеры выглядит следующим образом:
Рисунок 2. Оси камеры
где ось $Z$ смотрит в направлении объектов, ось $Y$ — вниз, а ось $X$ — направо.