CHOU

Mobile Robot Programming Toolkit (MRPT) 본문

Tech/Robotics

Mobile Robot Programming Toolkit (MRPT)

chobabo 2010. 9. 6. 10:45


MRDS에서 테스트 해봤던 파티클 필터의 성능을 검증해 보기 위해서 실제 로봇을 제작했는데,
실제 로봇에서 제가 만들었던 파티클 필터와 비교할 비교적 성능이 검증된 툴킷을 검색하다가
발견했습니다.

알고봤더니 이 툴킷은 굉장한 기능을 가지고 있었습니다.

http://www.mrpt.org/About  에서 좀 살펴보면..
SLAM, 비전, 모션 플래닝 같은 것들을 테스트 해 볼 수 있는 라이브러리가 제공되고, 다양한 플랫폼에서
적용 가능하며, 센서도 실제 연구에서 많이 사용되는 것들을 많이 지원해 줘서, 센서 포팅하는 시간을 줄일 수
있는 장점이 있습니다.




요즘 제가 자주 방문해서 배우고 가는 용가리 님의 블로그에 보시면 MRPT에 관련된 내용을
더욱 자세히 보실 수 있습니다.

(아래는 용가리 님의 네이버 블로그 주소)
http://blog.naver.com/hangondragon/20064062151  

MRPT을 컴파일 하는 방법은
http://www.mrpt.org/Building_and_Installing_Instructions 에 설명이 잘 나와 있어서 따라해 봤습니다.
저는 윈도우즈 환경에서 테스트할 예정이기 때문에 윈도우즈 환경에서 필요한 컴파일 환경을 살펴보면

1. Cmake - single sourece tree에서 해당 플랫폼에 맞게 빌드해주려고 필요한 듯 합니다.
http://www.cmake.org/cmake/resources/software.html

사용법은 이전에 OpenCV 설치할때 사용했던 방법과 같습니다.


2. wxWidgets - 멀티 플랫폼에서 동작하는 GUI 기반의 프레임워크 입니다.
http://www.wxwidgets.org/downloads/  우선 자신이 사용할 환경에 맞게 다운 받습니다.

다운을 받으면 우선 빌드에 앞서, 간단하게 OpenGL을 지원하기 위해서 wxUSE_GLCANVAS 0 -> 1로
변경해 줘야 하는데 역시 메뉴얼을 참고해주는것이 가장 명확합니다.

파일위치: \wxwidgets\include\wx\msw\setup.h


그리고 프로젝트 파일을 엽니다.(저는 윈도우 환경에서 설치 했습니다.)

Now, depending on your version of wxWidgets, open the Visual Studio project (which may be wxwidgets\build\msw\wx_dll.dsw or wxwidgets\build\msw\wx_vcX.sln). I recommend to build, with "Build all", only these configurations:

    * DLL Unicode Release (or just "DLL Release" in wxWidgets >=2.9)
    * DLL Unicode Debug (or just "DLL Debug" in wxWidgets >=2.9)

여기 언급되어 있는대로 우선 유니코드 디버그, 릴리즈만 빌드 해보기로 했습니다.

http://wiki.wxwidgets.org/MSVC#Downloading_and_Installing_wxWidgets에 읽어보면

You should also note that batch building everything will take anywhere from one to two hours (assuming you don't run into problems), and will take up as much as 10GB of disk space.  

다 빌드하면 시간도 오래 걸리고, 저장공간도 많이 잡아먹어서 우선
필요한것만 설치해보고 안되면 다시 모두 깔아버리기로 했습니다.


3. OpenCV - 비전 처리 하려고.. 전 2.0을 사용했습니다.
http://opencv.willowgarage.com/wiki/InstallGuide  

4. FFmpeg - Ip camera 사용할때 필요한데 이것은 옵션입니다.
우선 소스만 보고 작동 되는지 알아보려고 설치하지 않았습니다.

이렇게 3개의 프로그램이 미리 준비되어 있어야 한다고 명시되어 있습니다.

권장하는 설치 버전은 업데이트 되면서 변하기 때문에 설치하시기 전에 사이트에 방문하셔서
확인하시는 것이 설치가 쉽습니다.

CMake을 이용해서 VS2008에 맞게 generate 해줬습니다.




용가리 님의 블로그를 보고 Example1도 실행하여 봤습니다.



소스를 보고 제 로봇에 맞게 변경해 주려고 했는데 생각보다 시간이 많이 걸린 것 같습니다.

좀 설치하기 어려운 부분도 있었지만.. 항상 그렇듯 이런 플랫폼은 설치만 제대로 되면 좋겠는데
항상 약간의 문제가 있어서 직접적으로 사용하는것이 어렵습니다.

외국 블로그를 찾아봐서 완벽히 설치하는 방법을 좀 더 조사해 볼 필요가 있네요.