2011.11.27 작성된 글입니다.


PTAMM 컴파일

오타아니다 PTAM은 단일객체증강을 했던것에 확장판으로

PTAMM은 다중객체 증강이 가능하다

 

반나절 삽질했다. 처음 PTAM컴파일 할 때 일주일 삽질한거 생각해보면 빨리한거다.

삽질은나의힘 

 

 

기본 라이브러리와 헤더 설정자체는 PTAM과 같고

다른점은 lib3ds와 zlib, libPNG, JPEG라이브러리가 들어간다는 것 정도

 

• libjpeg for win32 from http://gnuwin32.sourceforge.net/packages/jpeg.htm
                                 (jpeg-6b-4.exe)
• lib3ds from http://sourceforge.net/projects/lib3ds (lib3ds-20080909.zip),
• libpng from http://gnuwin32.sourceforge.net/packages/libpng.htm
                   (libpng-1.2.37-setup.exe)
• zlib from http://zlib.net (zlib125.zip)

 

이것들을 받아야한다.

솔직히 zlib의 정체는 잘 모르겠다.

 

exe파일들은 적당한 경로(PTAMdependancy)에 풀어주고 VC++에서 헤더 링크를 걸어준다

전에 했듯 컴파일이 필요한 정적라이브러리들은 솔루션 열어서 Release모드로 컴파일하고 라이브러리 경로 링크걸어준다.

 

tr1이 필요한 상황이 올 수도 있다.

tr1에 대해서는 Programming 페이지에 따로 요약해서 올리겠다.

 

 

여기까지는 순탄하게 진행이 됐으나, 제목을 libCVD로 해놓은 이유가 바로 여기있다.

libCVD가 PTAM에서는 그냥 컴파일하면 그만이었는데 PTAMM에서는 호락호락하지 않다.

 

 

원래 기본 libCVD에는 fits.cc와 png.cc, text.cxx, text_write.cc는 없다.

보여지는 pnm_src 폴더 안으로 fits.cc, png.cc, text.cxx, text_write.cc를 포함시켜주고 라이브러리를 릴리즈모드로 컴파일하면 된다.

 

그리구 PTAMM솔루션을 열어서

  - 역시 PTAM처럼 빌드폴더안에있는 솔루션파일을 복사해서 PTAMM폴더 안으로 퐁당

솔루션을 열구나서 컴파일버튼을 눌러주세요

 

 

이로서 PTAMM 컴파일 성공

 

 

 

png 파일 못읽는 콘솔창 오류

failed to load searching image "ARData/Overlays/searching.png" : image input : unsupported image type

이런게 PTAMM 콘솔창에 나온다면

libCVD에서 png파일을 읽지 못하기 때문이다.

 

그럼 어떡하느냐

libCVD내의 image_io.h에 보면 PNG를 컨트롤하는 부분이 잠겨있을것이다.

#ifdef CVD_HAVE_PNG

이게 활성화되지 않은건데, libPNG를 설치하고서도 libCVD솔루션에서 libPNG를 인식 못해서 그렇다.

주석처리 센스있게 헤더의 모든 부분에 CVD_HAVE_PNG부분을 전부 해준다.

 

그 후 다시 리컴파일!

그리고 PTAMM 리컴파일!

 

'Augmented Reality > PTAM' 카테고리의 다른 글

PTAMM - 수술도구 올려보자  (0) 2014.06.16
PTAMM - Multiple Tracking Problems  (0) 2014.06.16
PTAM - Class Diagram  (0) 2014.06.16
PTAM - Calibration 3  (0) 2014.06.15
PTAM - Calibration 2  (0) 2014.06.15
Posted by 긍정왕오킹