'Surf'에 해당되는 글 2건

  1. 2011.09.05 OpenCV 2.3 Computer vision (1) 2
  2. 2010.06.22 SURF Lib 3
Computer Vision2011. 9. 5. 13:18
오래간만에 보는 전공 (?) 서적인 OpenCV 2 Computer vision application programming cookbook입니다.

Embedded 혹은 non windows 개발을 위해서 QT와 windows에서는 Visual studio에서 차례로 설명합니다.
내용은 어려운것이 없으니 쉽게 술술 읽어가면서 해볼 수있습니다.

OpenCV를 다운 받을 수 있는 홈페이지는 아래와 같습니다.
http://opencv.willowgarage.com/wiki/

최근에는 Android 버전으로도 Release되고 있는데 BETA입니다.
- 안정성에서는 확인한적이 없습니다.

QT를 다운 받을 수 있는 사이트는 아래와 같습니다.
qt.nokia.com

그리고 OpenCV 현재 버전은 2.3입니다. 2011년 7월에 Release되었습니다.

(MAC인 관계로.. ) QT도 설치하고 OpenCV도 설치합니다.

QT는 설치가 쉬운데 다운받아서 Pkg install만 하면 됩니다. 그럼 아래와 같은 창을 볼 수 있습니다.



OpenCV의 컴파일 및 설치
- OSX 기준

cmake를 사용하면 되는데 일단 소스 코드 폴더에서 cmake를 치면 다음과 같은 메시지를 마지막에 볼 수 있습니다.

Generators

The following generators are available on this platform:
  Unix Makefiles              = Generates standard UNIX makefiles.
  Xcode                       = Generate Xcode project files.
  CodeBlocks - Unix Makefiles = Generates CodeBlocks project files.
  Eclipse CDT4 - Unix Makefiles
                              = Generates Eclipse CDT 4.0 project files.
  KDevelop3                   = Generates KDevelop 3 project files.
  KDevelop3 - Unix Makefiles  = Generates KDevelop 3 project files.
...

위의 것을 기준으로 보면 Unix Makefiles와 XCode등을 해 볼 수 있습니다.
일단 Unix Makefile을 기준으로 한다면 아래와 같습니다.

cmake -G "Unix Makefiles"
 로 하면 makefile이 만들어집니다.

 이후에 
make all
make install
을 하여서 컴파일 및 설치를 완료 합니다.
 

같은 방법으로, XCode를 사용해서 하면 쉽게 컴파일을 할 수 있습니다.

cmake -G Xcode

로 하면 

OpenCV.xcodeproj

파일이 만들어 집니다. 이걸 XCode에서 불러들여서 컴파일하면 됩니다.

그리고,
인텔 IPP나 TBB등을 사용하면 빨라지겠지만 지금은 그냥 Pass
나중에 좀더 빠른게 필요해지면 그때 검토하고 지금은 쉽게 쉽게 갑니다.

Windows용도 Visual Studio에서 컴파일이 가능합니다.


Sample Program 빌드
테스트를 위해서 samples 폴더에서 하나를 빌드해 봅니다.
dft.cpp를 가지고 빌드합니다.

g++을 사용하며 아래와 같이 빌드합니다.

g++ -o dft.elf dft.cpp -L/usr/local/lib -lopencv_core -lopencv_highgui -lopencv_ml -lopencv_imgproc 

실행은 아래와 같습니다.
./dft.elf stuff.jpg




이 책의 소스 코드는 PacktLib에서 다운 받을 수 있습니다.




 

'Computer Vision' 카테고리의 다른 글

OpenCV 2.3 Computer vision (3)  (0) 2011.09.06
OpenCV 2.3 Computer vision (2)  (0) 2011.09.05
OpenCV 2.1 맥에서 빌드하기  (0) 2010.09.04
SURF Lib  (3) 2010.06.22
Rob Hess의 SIFT [8]  (7) 2009.06.21
Posted by GUNDAM_IM
Computer Vision2010. 6. 22. 01:49
SURF는 2006년 호주의 Garz가 제일 먼저 제안한 알고리즘입니다.
SIFT보다 계산량을 단순화 시키고 (특정 논문에서는 4배 정도 빠르다고 결과를 발표하였습니다)
대신 결과의 퀄리티는 비슷하다고 강조하고 있습니다.


http://www.vision.ee.ethz.ch/~surf/
  비 상업용으로 쓰인다는 전제 하에서 Linux용 C코드와  Windows용 DLL을 제공하고 있습니다.

http://www.chrisevansdev.com/computer-vision-opensurf.html
  Chris evans가 정리한 SURF 관련 자료 및 C++과 C#으로 쓰여진 라이브러리를 제공
  오픈 라이브러리인 만큼 라이브러리에 대한 용법이 설명된 매뉴얼도 제공됩니다

http://www.springerlink.com/content/tg61524386764t2t/
 관련 논문을 참조하기 바라고, (해당 사이트에 있습니다.)
 병렬처리로 빠르게 한다는 기본 개념입니다.

http://labe.felk.cvut.cz/~tkrajnik/fpga-surf/
  FPGA에 SURF를 넣은 자료
  2009년에 발표했으며 관련 논문과 FPGA자료를 오픈하고 있습니다.
  소스코드라고 하지만 실제로는 Netlist이며 (어찌보면 당연한 말씀..)
  논문이 참고할 만한 자료입니다.
  코드로 구현한다면 논문보고 하드웨어로 만드는게 더 빠를듯..


아래는 간단한 동영상




'Computer Vision' 카테고리의 다른 글

OpenCV 2.3 Computer vision (1)  (2) 2011.09.05
OpenCV 2.1 맥에서 빌드하기  (0) 2010.09.04
Rob Hess의 SIFT [8]  (7) 2009.06.21
Rob Hess의 SIFT [7]  (1) 2009.04.30
OpenCV - Alpha Blending cvAddWeighted , cvFillPoly  (2) 2009.04.25
Posted by GUNDAM_IM