Ограничение внутренних параметров для настройки комплекта нескольких видеокамер в Ceres-Solver - PullRequest
1 голос
/ 07 июля 2019

У меня есть набор из 6 видеоклипов, снятых 6 камерами на транспортном средстве. Я пытаюсь использовать CERES для связки корректирующих кадров O (1.4K) с этих 6 камер. Предположительно, внутренние параметры каждой из 6 видеокамер находятся в постоянном или очень хорошем приближении. Поэтому я пытаюсь найти разумный способ включить это физическое ограничение в структуру CERES.

Как новичок в CERES, я пробовал искать примеры и вопросы по настройке предыдущих комплектов. Но, что удивительно, я не нашел примеров кода CERES-решателя, где внутренние функции камеры ограничены из-за их соответствия небольшому количеству физических камер.

Начиная с примера кода simple_bundle_adjuster.cc, я сначала попытался разделить внешние, внутренние и трехмерные точечные переменные в элементе double * parameters_ из класса BALProblem. Я надеялся, что можно создать отдельные ResidualBlocks для видеокадров, которые имели бы разные внешние и трехмерные точечные параметры, но разделяли внутренние параметры в зависимости от физического идентификатора видеокамеры.

Вот моя слегка измененная версия метода Create () из примера simple_bundle_adjuster.cc:

  static ceres::CostFunction* Create(
    int i, const double observed_u, const double observed_v)
  {
     if (use_common_intrinsics_flag)
     { 
        return (new ceres::AutoDiffCostFunction<
                PinholeReprojectionError, 2,
                n_extrinsic_params, 
                n_physical_cameras * n_intrinsic_params, 3>(
                new PinholeReprojectionError(i, observed_u, observed_v)));
     }...

К сожалению, я не смог найти способ поделиться общими внутренними параметрами от 6 физических видеокамер, что соответствует CERES.

Q1: Требуется ли для CERES объединение всех внешних и внутренних параметров + трехмерных точек в один большой остаточный блок для каждой физической видеокамеры? Возможно ли это, учитывая, что количество кадров, собранных видеокамерой, обычно не известно во время компиляции?

В2: Может ли постоянство внутренних параметров для каждой физической видеокамеры быть приблизительно соблюдено с помощью верхних / нижних границ параметров? Возможно, какой-то итеративный подход, когда ограничения параметров ужесточаются, может сработать.

...