Nach der Installation von OpenCV auf Ubuntu 16.04 ist ein CV2-Importfehler aufgetreten

Nach der Installation von OpenCV auf Ubuntu 16.04 ist ein CV2-Importfehler aufgetreten

Nach der Installation von OpenCV3.2.0 mit den Contrib-Modulen auf Ubuntu gehen Sie folgendermaßen vor: http://www.samontab.com/web/2017/06/installing-opencv-3-2-0-with-contrib-modules-in-ubuntu-16-04-lts/

Ich führe den Python-Beispielcode aus:

cd <opencv3.2.0_dir>/samples/python/
python asift.py

und ich erhalte die folgende Fehlermeldung:

Traceback (most recent call last):
File "asift.py", line 26, in <module>
import cv2
ImportError: /usr/local/lib/libopencv_freetype.so.3.2: undefined symbol: hb_shape

Beim Ausführen anderer Python-Beispiele tritt derselbe Fehler auf.

Ich habe die Antwort bei Google nicht gefunden. Wie kann ich das Problem beheben?

Antwort1

Das ist einbekannter Fehler in den Contrib-Modulen, insbesondere im Freetype-Modul, mit dem Sie UTF-8-Zeichenfolgen zeichnen können.

Führen Sie vor dem Kompilieren von OpenCV 3.2 diesen Befehl aus:

sed -i 's/${freetype2_LIBRARIES} ${harfbuzz_LIBRARIES}/${FREETYPE_LIBRARIES} ${HARFBUZZ_LIBRARIES}/g' ../opencv_contrib-3.2.0/modules/freetype/CMakeLists.txt

Danach sollten Sie die Python-Beispiele ausführen können.

Ich habe übrigens auch das von Ihnen verlinkte Tutorial aktualisiert, um diesen Fix einzuschließen.

verwandte Informationen