在ubuntu 16.04上安裝opencv後出現import cv2錯誤

在ubuntu 16.04上安裝opencv後出現import cv2錯誤

在Ubuntu上安裝帶有contrib模組的OpenCV3.2.0後,如下所示: http://www.samontab.com/web/2017/06/installing-opencv-3-2-0-with-contrib-modules-in-ubuntu-16-04-lts/

我運行 python 範例程式碼:

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

我收到以下錯誤:

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

運行其他 python 範例也會得到相同的錯誤。

我在谷歌中沒有找到答案。我如何解決它?

答案1

那是一個contrib 模組中的已知錯誤,特別是在 freetype 模組中,它允許您繪製 UTF-8 字串。

在編譯 OpenCV 3.2 之前,執行以下命令:

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

之後,您應該能夠運行 Python 範例。

我還更新了您連結的教程以包含此修復。

相關內容