未定义符号:__atomic_fetch_add_8

Jes*_*rdo 7 python opencv

我正在尝试在树莓派上的thonny python ide上测试我的picamera,但出现错误:

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
Run Code Online (Sandbox Code Playgroud)

我已经尝试过寻找可能的解决方案,但无法做到,因为我无法理解他们想对-latomic说些什么。我对此很陌生。

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()
Run Code Online (Sandbox Code Playgroud)

cri*_*per 13

使用正确版本的 OpenCV contrib。

pip install opencv-contrib-python==4.1.0.25

见答案在结束这个职位。


lak*_*ksh 2


如果你 pip install opencv 然后在你的虚拟环境中尝试

“pip 安装 opencv-contrib-python==3.4.3.18”