web-dev-qa-db-ja.com

opencvのインポート中のPython3再リンクの問題

質問:

Ubuntu 18.04の github から最新の OpenCV の新しくコンパイルされたバージョンをインポートしようとすると、セグメンテーションエラーが発生します。

Python 3cv2をインポートしようとしたときに表示されるエラーメッセージは次のとおりです。

$ python3
Python 3.6.8 (default, Aug 20 2019, 17:12:48) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
python3: Relink `/lib/x86_64-linux-gnu/libsystemd.so.0' with `/lib/x86_64-linux-gnu/librt.so.1' for IFUNC symbol `clock_gettime'
python3: Relink `/lib/x86_64-linux-gnu/libudev.so.1' with `/lib/x86_64-linux-gnu/librt.so.1' for IFUNC symbol `clock_gettime'
Segmentation fault (core dumped)

私のUbuntu; 5.0.0-29-generic x86_64 GNU/Linux

OpenCVのクローンを作成した場所。 https://github.com/opencv/opencv

関連スレッド;
ubuntu Amazonインスタンスにcv2モジュールをインポート中にエラーを取得する
Ubuntu 18.04でAWS Redshiftを設定し、pyodbc で使用します
https://unix.stackexchange.com/questions/444697/cannot-run-python-file-asks-to-relink-libraries
https://github.com/tensorflow/tensorflow/issues/19375

私のラップトップにはNVidiaグラフィックチップがないため、提示されたソリューションはどれも機能しませんでした。

$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 5500 (rev 09)

お知らせ
[〜#〜] sift [〜#〜][〜を使用するため、ソースからOpenCVをコンパイルする必要があります#〜] surf [〜#〜]detectors および descriptors そしてOpenCVが apt でインストール:

>>> import cv2
>>> cv2.__version__
'4.2.0'

>>> cv2.xfeatures2d.SIFT_create()    

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
cv2.error: OpenCV(4.2.0)     
/io/opencv_contrib/modules/xfeatures2d/src/sift.cpp:1210:    
error: (-213:The function/feature is not implemented)     
This algorithm is patented and is excluded in this configuration;    
Set OPENCV_ENABLE_NONFREE CMake option and rebuild the library in    
function 'create'
6
s.k

私の場合、エラーはOpenCVヘッダーをインストールすることで解決されましたSudo apt install libopencv-dev。通常、私はOpenCVをインストールする前にaptをインストールpipするPython bindings

1
Addison Klinke