
在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 範例。
我還更新了您連結的教程以包含此修復。