неопределенный символ: __atomic_fetch_add_8 - PullRequest
5 голосов
/ 09 ноября 2019

Я пытаюсь проверить мою Picamera на Thonny Python Ide на моем Raspberry Pi, но получаю сообщение об ошибке:

Traceback (most recent call last):
  File "/home/pi/Documents/Camera_test.py", line 2, in <module>
    import cv2
  File "/usr/lib/python3/dist-packages/thonny/backend.py", line 305, in _custom_import
    module = self._original_import(*args, **kw)
  File "/home/pi/.local/lib/python3.7/site-packages/cv2/__init__.py", line 3, in <module>
    from .cv2 import *
  File "/usr/lib/python3/dist-packages/thonny/backend.py", line 305, in _custom_import
    module = self._original_import(*args, **kw)
ImportError: /home/pi/.local/lib/python3.7/site-packages/cv2/cv2.cpython-37m-arm-linux-gnueabihf.so: undefined symbol: __atomic_fetch_add_8

Я уже пытался найти возможные решения, но не смогсделай это, потому что я не могу понять, что они пытались сказать что-то о -атомном. я довольно новичок в этом.

import numpy as np
import cv2

cap = cv2.VideoCapture(0)
cap.set(3,640) # set Width
cap.set(4,480) # set Height

while(True):
    ret, frame = cap.read()
    frame = cv2.flip(frame, -1) # Flip camera vertically
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    cv2.imshow('frame', frame)
    cv2.imshow('gray', gray)

    k = cv2.waitKey(30) & 0xff
    if k == 27: # press 'ESC' to quit
        break

cap.release()
cv2.destroyAllWindows()

Ответы [ 2 ]

0 голосов
/ 15 ноября 2019

Я столкнулся с той же проблемой, когда я следовал этой статье https://www.pyimagesearch.com/2019/09/16/install-opencv-4-on-raspberry-pi-4-and-raspbian-buster/

в комментариях, решается по этой ссылке, а также решаю то же самое для меня благодаря ему: - https://www.pyimagesearch.com/2019/09/16/install-opencv-4-on-raspberry-pi-4-and-raspbian-buster/#comment-572080

и вот что он пишет: -

#

Я следую учебному пособию с RP4, 1 ГБ памяти на Buster.

Я увидел следующую ошибку после выполнения шага 4 (a), полная компиляция при проверке установки cv2 из консоли Python (шаг 5):

ImportError: /home/pi/.virtualenvs/cv/lib/python3.7/site-packages/cv2/cv2. cpython-37m-arm-linux-gnueabihf.so: неопределенный символ: __atomic_fetch_add_8

Мне удалось решить проблему с помощью следующих шагов:

1 - $ sudo find / -type f -имя ' atom .so *' /usr/lib/arm-linux-gnueabihf/libatomic.so.1.2.0

2 - LD_PRELOAD = / usr / lib / arm-linux-gnueabihf / libatomic.so.1.2.0 python3

3 - Python 3.7.3 (по умолчанию, 3 апреля 2019, 05:39:12) [GCC 8.2.0] в linux Тип «help», «copyright»»,« Крредактирование »или« лицензия »для получения дополнительной информации.

импорт печати cv2 (cv2. версия ) 4.1.1

Надеюсь, что это поможет кому-то с той же проблемой ...

J

#

Также для вашей информации, когда я следую за другим tuotrail для того же автора, он работал нормально со мной безпроблемы вот ссылка: -

https://www.pyimagesearch.com/2018/09/26/install-opencv-4-on-your-raspberry-pi/

Я все еще 15 дней опыта в Python и Raspberry Pi, так что извините за любую ошибку в Advane Regards

0 голосов
/ 14 ноября 2019

Если вы установили opencv в pip, попробуйте
в вашей виртуальной среде

"pip install opencv-contrib-python == 3.4.3.18"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...