문제에 대한 해결책을 찾으려면 먼저이 문제를 수학적으로 표현하고 기존 수학 도구를 사용하여 방정식에 대한 솔루션을 찾아야합니다. 그러나 흥미로운 문제는 일반적으로 다양한 수학적 방법으로 표현 될 수 있으며 각각의 방법은 약간 다른 해결책으로 이어질 수 있습니다. 그런 다음 여러 방법을 분석하여 가장 안정적이고 정확한/효율적인/기타 솔루션을 제공하는 방법을 파악하는 작업이 필요합니다.
PnP 문제의 경우 3D 점과 투영 이미지 평면 사이의 연관성을 고려하여 카메라 포즈를 찾고 싶습니다.
이 문제를 수학적으로 표현하는 첫 번째 방법은이를 선형 최소 제곱 문제로 변환하는 것입니다. 이 접근법은 DLT 접근법으로 알려져 있으며 선형 최소 제곱은 단일 값 분해를 사용하여 견고하게 찾을 수있는 닫힌 형태의 솔루션이므로 흥미 롭습니다. 그러나이 방법은 카메라 포즈 P가 실제 6 개 (3D 회전의 경우 3 개, 3D 번역의 경우 3 개) 인 경우 자유도가 12 개라고 가정합니다. 이 접근법의 결과로 6DOF 카메라 포즈를 얻으려면 근사값이 필요합니다 (DLT의 선형 비용 함수로는 포함되지 않음). 이는 부정확 한 해를 가져옵니다.
PnP 문제를 수학적으로 표현하는 두 번째 방법은 비용 함수로 기하학적 오차를 사용하고 기하학적 오차를 최소화하는 카메라 포즈를 찾는 것입니다. 기하학적 오차가 비선형이기 때문에,이 접근법은 Levenberg Marquardt 알고리즘과 같은 반복 솔버를 사용하여 솔루션을 추정합니다. 이러한 알고리즘은 카메라 자세의 6 자유도를 고려하여 정확한 솔루션을 제공합니다. 그러나 반복적 인 접근법이므로 솔루션의 초기 추정치를 제공해야합니다. 실제로는 DLT 방식을 사용하여 실제로 구할 수 있습니다.
이제 DLT 알고리즘이 최적의 카메라 외장을 제공하지만 DLT 알고리즘으로 해결 된 선형 비용 함수의 관점에서만 최적입니다. 수년에 걸쳐 과학자들은 더 복잡한 비용 함수를 발견하여보다 정확한 솔루션을 제공 할뿐만 아니라 해결하기도 더 어렵습니다.
반복적으로 수행되는 외인 추정에 비선형 정교화의 추가 단계를 추가하는 것이 일반적이라고 생각합니다. 여기를 참고하십시오 : http://www.epixea.com/research/multi-view-coding-thesisse9.html – Dan
@dan thx 링크를 위해서, 저는 CvLevMarq 솔버가 opencv에서했던 것과 마찬가지로 일반적이라는 것을 알고 있습니다. 제 말은, DLT는 비용 함수의 ** 폐쇄 형 최소화 ** 인 것 같습니다. 왜 여전히 열등 (지역 최소)입니까? – zhangxaochen