Setup von OpenCV und den Python-Bindings unter Mac OS X

Eine kurze Anleitung zum Setup von OpenCV 2.0 mitsamt der Python-Bindings unter MacOsX:

Vorbedingungen

siehe auch OpenCV Mac Setup Doku
  • Falls noch nicht geschehen, muss MacPorts installiert werden. Falls vorhanden bietet sich sudo port selfupdate an.
  • Die XCode-IDE ist (für Quicktime- und Carbon-Frameworks) vonnöten
  • Subversion: sudo port install subversion
  • CMake-Tools: sudo port install cmake

Abhängigkeiten

siehe auch OpenCV General Install Guide
  • pkg-config: sudo port install pkgconfig
  • libjpeg, libtiff, libjasper, libpng, zlib: sudo port install jpeg tiff jasper libpng zlib
  • ffmpeg, libxine, unicap, libdc1394 2.x sudo port install ffmpeg gstreamer libdc1394

Aktuelle Quellen beschaffen

Im Terminal die aktuellen Quellen auschecken (z.B. in ~/Library): svn co https://code.ros.org/svn/opencv/trunk opencv

Danach Verzeichniswechsel cd opencv

Beschaffen einer aktuellen Python-Version

(hier am Beispiel von 2.6) sudo port install python26 sudo port install python_select

Umschalten auf die aktuelle Python-Version sudo python_select python26

which python muss nun nach /opt/local/... zeigen.

Konfiguration und Build

siehe auch OpenCV Python Bindings

mkdir opencv/build

cd opencv/build

cmake ..

ccmake .

Im ccmake-Interface zunächst mit t auf den erweiterten Modus umschalten. Die folgenden Einstellungen müssen geändert werden:
  • BUILD_NEW_PYTHON_SUPPORT: ON (ctypes-bindings)
  • BUILD_SWIG_PYTHON_SUPPORT: OFF
  • CMAKE_BUILD_TYPE: Release
  • CMAKE_INSTALL_PREFIX: /opt/local (Hier befindet sich die mit port installierte Software)
  • PYTHON_EXECUTABLE: /opt/local/bin/python (Das eben kompilierte python, nicht das Framework-Python von Apple)
  • PYTHON_INCLUDE_PATH: /opt/local/include/python2.6 (Die zugehörigen Header-Dateien)
  • PYTHON_LIBRARY: /opt/local/Library/Frameworks/Python.framework/Python

Mit c konfigurieren und mit g generieren.

Kompilieren: sudo make -j8

Installieren: sudo make install

Test

Python starten: python

>>> import cv
  • kein Fehler: Glückwunsch!
  • No module named cv: cv.so bei make install nicht in /opt/local/lib/python2.6/site-packages/cv.so gelandet
  • Fatal Python error: Interpreter not initialized (version mismatch?): Bindings wurden nicht gegen ports-Python gelinkt, sondern gegen System-Python (PYTHON_LIBRARY: =-framework=-Parameter in ccmake)

Capturing-Test (z.B. mit der integrierten iSight-Kamera)

>>> cv.NamedWindow("hallo")

>>> cam = cv.CaptureFromCAM(0)

>>> img = cv.QueryFrame(cam)

>>> cv.ShowImage("hallo", img)

-- MarkusZimmermann - 17 Mar 2010
Topic revision: r1 - 17 Mar 2010, MarkusZimmermann
 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Medieninformatik-Wiki? Send feedback