如何在我的 Raspberry Pi 4 上正确安装 opencv?

问题描述 投票:0回答:1

我一直收到此错误。

ImportError: /usr/local/lib/python3.9/dist-packages/cv2/cv2.abi3.so: undefined symbol: __atomic_store_8 

我检查了我的树莓派上安装的python和opencv,我认为它们是兼容的。我不知道出了什么问题,因为我已经尝试了很多方法来解决这个问题。有人可以帮忙吗?

Python 3.9.2、opencv 4.5.1

我的代码:

import cv2 

print cv2. __version__
python opencv tensorflow-lite raspberry-pi4
1个回答
0
投票

当安装的 OpenCV 版本与正在使用的 Python 版本不匹配时,可能会出现此问题,或者可能是由于 OpenCV 安装不完整或损坏所致。

您可以采取一些步骤来排除故障并可能解决问题:

检查Python和OpenCV版本:确保您安装的Python和OpenCV版本确实兼容。您提到使用 Python 3.9.2 和 OpenCV 4.5.1,它们应该是兼容的,但仔细检查总是好的。

重新安装 OpenCV:尝试在 Raspberry Pi 上重新安装 OpenCV。有时,安装可能会损坏或不完整,从而导致出现与您遇到的问题类似的问题。您可以使用 pip 等包管理器重新安装 OpenCV: pip install --upgrade --force-reinstall opencv-python-headless

此命令将重新安装 opencv-python-headless 软件包,这是适用于 Python 环境的 OpenCV 的流行版本。

检查依赖项:确保 OpenCV 所需的所有依赖项均已正确安装在您的系统上。这包括 libopencv-dev 等库和任何其他所需的系统库。在 Raspberry Pi 上,您可以使用以下命令安装 OpenCV 依赖项:

sudo apt-get install libopencv-dev

检查系统更新:确保您的 Raspberry Pi 系统已更新到最新的更新和补丁。有时,系统更新可以解决兼容性问题。

重新编译 OpenCV:如果上述步骤均不起作用,您可能需要在 Raspberry Pi 上从源代码重新编译 OpenCV。这个过程可能既耗时又复杂,但它可以确保 OpenCV 是专门为您的系统构建的。

使用虚拟环境:考虑使用 virtualenv 或 conda 的虚拟环境来隔离您的 Python 环境。这可以帮助避免不同 Python 包和版本之间的冲突。

检查其他安装的版本:确保您的系统上没有其他冲突的 OpenCV 安装。有时,多个安装可能会导致冲突。

通过执行以下步骤,您应该能够排查并解决 Raspberry Pi 上与 cv2 相关的 ImportError。如果问题仍然存在,请随时提供更多详细信息,我很乐意为您提供进一步帮助。

© www.soinside.com 2019 - 2024. All rights reserved.