安装easyocr时出现numpy==1.21.2版本匹配失败问题求助
问题原因及解决办法
原因分析
问题核心在于opencv-python-headless<=4.5.4.60的版本限制与Python 3.11.0不兼容:
- opencv-python-headless 4.5.4.60依赖numpy==1.21.2,但numpy 1.21.2发布时未提供适配Python 3.11的预编译包,导致pip无法找到匹配版本满足构建依赖。
- 即便本地已安装更高版本的numpy,pip在构建隔离环境中仍会强制寻找指定的旧版本numpy,因此更新numpy无法解决问题。
解决办法
方法1:先安装兼容Python3.11的opencv版本
手动安装支持Python3.11的高版本opencv-python-headless,再安装easyocr:
pip install opencv-python-headless>=4.6.0 pip install easyocr
此方法让easyocr复用已安装的兼容版opencv,避免拉取不兼容的旧依赖。
方法2:跳过构建隔离环境
使用--no-build-isolation参数,让pip直接使用当前环境已安装的包完成构建:
pip install easyocr --no-build-isolation
这样会直接复用你现有的numpy 1.24.2,无需寻找旧版本numpy。
方法3:降级Python版本(备选)
如果上述方法无效,可将Python降级至3.10及以下版本,该版本与numpy 1.21.2、opencv-python-headless 4.5.4.60完全兼容,之后再正常执行pip install easyocr即可。
内容的提问来源于stack exchange,提问作者Youcef Bouregag
相关产品推荐
相关产品推荐

