opencv를 사용하여 3D 재구성을 시도하고 있으며이 책의 모든 단계를 거의 따르고 있습니다. OpenCV 2 Computer Vision Application Programming Cookbook, Robert Laganiere.필수 행렬 찾기 (행렬 곱셈 오류)
필수 매트릭스를 찾으려고 할 때 문제가 발생합니다. 나는 이렇게한다 :
Mat fundemental= ransacTest(symMatches,keypoints1, keypoints2, outmatches);
//ransacTest function by Computer Vision Application Programming Cookbook
cout<<endl<<fundemental<<endl;
Mat K=m_camera_data->get_K();
//get_K() function defined previously
cout<<K<<endl;
cout<<"K.T"<<K.t()<<endl;
Mat_<double> E = K.t() *fundemental* K; // Error
ransacTest와 get_K() 함수는 이미 정의되었고 잘 동작하는 것처럼 보인다. 내 기본 행렬은 다음
-7.65924601845777e-006 0.0052097327886 -0.179203748284864
-0.005202223611495075 -8.913278071309e-006 -0.5024237005766097
0.1843335279902164 0.4908219843516384 1
내 K 행렬 K의 트랜스가 제대로되어 다음
382.5 0 160
0 0 120
0 0 1
입니다. 문제가 발생했습니다. 프로그램을 실행할 때이 오류가 발생합니다. "OpenCV 오류 : 어설 션이 실패했습니다 (유형 == B <> & &> 알 수없는 함수, 파일 ...). \ SRC \ OpenCV의 \ 모듈 \ 코어 \의의 src \의 matmul.cpp, 나는 그것을 보면서 나는이 질문 Opencv Matrix multiplication 에 비슷한 문제를 발견하지만 대답은 (행렬을 변경 한 말하려고 노력 라인 711 "
types)와 같은 오류가 발생했지만 여전히 동일한 오류가 발생했습니다.
Gemm을 사용하여 행렬 곱셈을 시도했지만 동일한 오류가 나타납니다.
정말 도움이 될 수 있습니다! 미리 감사드립니다.
방금 확인한 결과 플로트입니다! 고맙습니다! 방금 문제가 해결되었습니다. 그것은 내 기본과 내 K에 실제로 행렬 형 문제였습니다. 내가 지금했던 모든 것은 매회 Mat_처럼 근본적으로 선언되었다. –
user2606677