У меня есть два изображения (см. ниже). Эти изображения представляют контуры пары кабелей и были захвачены с использованием трехмерной триангуляции на основе лазера. Первое изображение захватывается левой камерой, а второе - правой камерой. Как видно, эти изображения частично перекрываются. Левая часть на первом изображении частично соответствует левой части на втором изображении. То же самое верно для правой части. Я хочу объединить эти два изображения в одно изображение, чтобы соответствующие части перекрывались.
Рядом с этими изображениями у меня также есть следующая информация:
- Графическая матрица 3х3
H
левой и правой камеры - Внутренние параметры камеры
K
левой и правой камеры - Коэффициенты искажения
D
(из них 9) левой и правой камеры - Смещение
O
левой и правой камеры
Эти данные указаны ниже.
В Halcon я попытался сделать это с помощью мозаики:
- Извлечение характеристических точек в обоих изображениях с помощью Harris
- Вычислить матрицу проективных преобразований из одного изображения в другое с помощью Ransac.
- Примените найденную матрицу проективных преобразований.
Однако этот подход не был успешным. Я ищу аналогичный подход в OpenCV или Halcon или подход (также в OpenCV или Halcon), который использует данные калибровки, которые у меня есть, такие как матрица гомографии и матрица камеры.
Просьба предоставить подробные объяснения, если это возможно, поскольку я только начинаю с Machine Vision.
Hl := [0.00175186, 4.73083e-05, -0.00108921,
0.000780817, -0.00145615, 0.00118631,
0.0534139, -0.030823, 1.0 ]
Kl := [4578.21, -5.05144, 759.766,
0.0, 4576.87, 568.223,
0.0, 0.0, 1.0 ]
Dl := [-0.12573, 0.0533453, -0.575361, -0.0130272, 0.00348033, 0.00852617, -0.0271142, 0.0176706, -0.00575124]
Ol := [0.0, 150.0]
Hr := [0.00173883, -2.94597e-05, 0.00109873,
-0.00077676, -0.0014687, 0.00121393,
-0.0653829, -0.0443924, 1.0 ]
Kr := [4591.96, -4.55317, 1284.74,
0.0, 4591.19, 534.317,
0.0, 0.0, 1.0 ]
Dr := [-0.110751, -0.349716, 3.86535, 0.017393, -0.00364957, -0.00633656, 0.0338833, -0.0212222, 0.00543694]
Or := [0.0, 100.0]