2014-10-21 10 views
1

저는 이미 robotics.stackexchange에 게시했지만 관련 답변이 없습니다.스캔 매칭 알고리즘이 변환을위한 잘못된 값을 제공하지만 회전을위한 올바른 값을 제공합니다.

현재 로봇에 SLAM 소프트웨어를 개발 중입니다. 스캔 매칭 알고리즘을 사용하여 주행 거리 문제를 해결했습니다. 나는 그것이 정말 잘 설명 발견, 나는 엄격하게 알고리즘을 구현하기 위해 문서에 주어진 공식을 따라 Metric-Based Iterative Closest Point Scan Matching for Sensor Displacement Estimation

:

나는이 기사를 읽어 보시기 바랍니다. ScanMatching.py

내 시험 중에 오른쪽 회전이 발견 된 점이다이 문제를하지만, 번역은 완전히 거짓 :

당신이 파이썬 내 구현을 확인할 수 있습니다. 번역의 가치는 매우 높습니다.

내 코드에서 어떤 문제가 발생할 수 있는지 알고 계십니까?

그렇지 않은 경우 질문을 수학 스택 교환에 게시해야합니까?

ICP 부분은 여러 번 테스트 했으므로 정확해야하지만, 최소 제곱 최소화는 좋은 결과를 얻지 못하는 것 같습니다.

눈치 채 셨던 것처럼 많은 bigfloat.BigFloat 값을 사용하여 최대 부동 소수점이 일부 값을 포함 할 정도로 커지지 않는 경우가 있습니다.

답변

0

이 문제를 이미 해결했는지 여부는 알 수 없습니다.

전체 기사를 읽지는 않았지만 오히려 오래된 것으로 나타났습니다.

IMHO (필자는 여기 전문가가 아닙니다.) 포인트 추출, 포인트 클라우드, 설명자 매처를 사용하여 rototraslation 행렬을 얻기 위해 번들 조정을 얻으 려합니다.

나 자신이 opencv에 있기 때문에 sba (http://users.ics.forth.gr/~lourakis/sba/) 또는 더 구체적으로 cvsba (http://www.uco.es/investiga/grupos/ava/node/39/)를 시도 할 예정입니다.

cpu/gpu 전원이 충분한 경우 AKAZE 기능 감지기 및 설명자를 알려주십시오.