Ошибка при запуске библиотеки на python

Я выполняю шаги в соответствии с http://npatta01.github.io/2015/08/10/dlib/, но когда я пытаюсь запустить (я использую sudo),

python python_examples/face_detector.py examples/faces/2007_007763.jpg 

вернуть ошибку. Во-первых, ошибка была

 AttributeError: 'module' object has no attribute 'image_window' 

к строке 8. Теперь ошибка – это Illegal instruction (core dumped) но я не знаю почему. Пожалуйста, помогите мне правильно добавить библиотеку.

 import sys import dlib from skimage import io detector = dlib.get_frontal_face_detector() win = dlib.image_window() for f in sys.argv[1:]: print("Processing file: {}".format(f)) img = io.imread(f) # The 1 in the second argument indicates that we should upsample the image # 1 time. This will make everything bigger and allow us to detect more # faces. dets = detector(img, 1) print("Number of faces detected: {}".format(len(dets))) for i, d in enumerate(dets): print("Detection {}: Left: {} Top: {} Right: {} Bottom: {}".format( i, d.left(), d.top(), d.right(), d.bottom())) win.clear_overlay() win.set_image(img) win.add_overlay(dets) dlib.hit_enter_to_continue() # Finally, if you really want to you can ask the detector to tell you the score # for each detection. The score is bigger for more confident detections. # The third argument to run is an optional adjustment to the detection threshold, # where a negative value will return more detections and a positive value fewer. # Also, the idx tells you which of the face sub-detectors matched. This can be # used to broadly identify faces in different orientations. if (len(sys.argv[1:]) > 0): img = io.imread(sys.argv[1]) dets, scores, idx = detector.run(img, 1, -1) for i, d in enumerate(dets): print("Detection {}, score: {}, face_type:{}".format( d, scores[i], idx[i])) 

    2 Solutions collect form web for “Ошибка при запуске библиотеки на python”

    Как я вижу в вашем коде:

     detector = dlib.get_frontal_face_detector() win = dlib.image_window() 

    Первая линия работает, а вторая – нет. Это означает, что dlib установлен, но он скомпилирован без поддержки графического интерфейса

    В исходном коде dlib мы видим, что если макрос DLIB_NO_GUI_SUPPORT определен – в модуле dlib не будет функции «image_window». Этот макрос определяется автоматически, если сценарии CMake не могут найти библиотеки X11

    Вы должны убедиться, что dlib скомпилирован с поддержкой GUI. Чтобы сделать это, сначала установите libx11-dev в вашу систему, если вы работаете в Linux, или XQuartz для Mac

    При создании dlib с запуском python setup.py install --yes DLIB_JPEG_SUPPORT – проверьте его сообщения. Если есть ошибки или предупреждения – исправьте их

    Я отвечаю на этот вопрос, потому что я столкнулся с тем же вопросом,

     conda install -c conda-forge dlib 

    а также

     pip install dlib 

    Я попробовал поиск и получил несколько полезных ссылок, и ниже одной ссылки был сохранен мой день. Таким образом, перечисление подробностей здесь тоже ..

    https://gist.github.com/ageitgey/629d75c1baac34dfa5ca2a1928a7aeaf

    Будет лучше компилировать последний код из Github, а не устанавливать его из conda / pip. Это делается для того, чтобы dlib был скомпилирован с поддержкой GUI.

    Установить зависимости

    sudo apt-get update

    Установить Boost

     sudo apt-get install libboost-all-dev 

    Установите другие зависимости (возможно, большинство из них уже установлено в вашей системе)

     apt-get install -y --fix-missing build-essential cmake gfortran git wget curl graphicsmagick libgraphicsmagick1-dev libatlas-dev libavcodec-dev libavformat-dev libboost-all-dev libgtk2.0-dev libjpeg-dev liblapack-dev libswscale-dev pkg-config python3-dev python3-numpy software-properties-common zip apt-get clean 

    Создайте последний код dlib от Github. Предположения: – Ubuntu 16.04 или выше – не имеют графического процессора nVidia и не установлены Cuda и cuDNN и не хотят ускорения GPU

    Клонировать код из github:

     git clone https://github.com/davisking/dlib.git 

    Создайте основную библиотеку dlib:

     cd dlib mkdir build; cd build; cmake .. -DDLIB_USE_CUDA=0 -DUSE_AVX_INSTRUCTIONS=1; cmake --build . 

    Создайте и установите расширения Python:

     cd .. python setup.py install --yes USE_AVX_INSTRUCTIONS --no DLIB_USE_CUDA 

    убедитесь, что указали на правильный питон (если у вас установлена ​​anaconda поверх ванильного питона Ubuntu, тогда вы должны установить пакет, указывающий anaconda).

    если вы все еще сталкиваетесь с ошибкой gcc, как показано ниже

     lib/libstdc++.so.6: version `GLIBCXX_3.4.21' not found 

    затем убедитесь, что вы устанавливаете следующий пакет python

     conda install libgcc 

    На этом этапе вы сможете запустить python и успешно импортировать dlib.

     
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.