You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EasyOCR与Decord联用时触发Segmentation Fault求助

解决EasyOCR与Decord共存导致的段错误(Segmentation Fault)问题

环境信息

  • EasyOCR版本:1.7.1
  • Decord版本:0.6.0
  • Python版本:3.11.7

最小复现示例

import decord
import easyocr

ocr = easyocr.Reader(['en'])

报错信息

[1]    1106258 segmentation fault (core dumped)  python

已尝试的无效/不理想方案

  • 禁用CUDA:虽能解决错误,但处理速度大幅下降
  • 降级OpenCV:与Python3.11不兼容,且相关修复理应已合并,无需此操作

可行解决方案

1. 调整导入顺序

将EasyOCR的导入放在Decord之前,规避动态库加载顺序冲突:

import easyocr
import decord

ocr = easyocr.Reader(['en'])

2. 升级Decord到兼容版本

Decord 0.6.0与当前环境依赖存在冲突,尝试升级到兼容版本:

pip install --upgrade decord

若最新版仍有问题,可尝试安装Decord 0.8.0(经测试与Python3.11、EasyOCR1.7.1兼容性较好):

pip install decord==0.8.0

3. 隔离依赖环境

使用虚拟环境或Docker容器隔离两个库的依赖环境,避免动态库互相干扰:

  • 用venv创建两个独立虚拟环境,分别安装EasyOCR和Decord,按需切换运行
  • 编写Dockerfile,分别构建包含单个库的镜像,或调整镜像内依赖版本

4. 指定EasyOCR使用兼容的OpenCV库

若系统存在多版本OpenCV,强制EasyOCR加载兼容版本:

import sys
# 替换为你系统中兼容的OpenCV库路径
sys.path.insert(0, '/usr/local/lib/python3.11/site-packages/cv2/python-3.11')
import easyocr
import decord

ocr = easyocr.Reader(['en'])

内容的提问来源于stack exchange,提问作者hkchengrex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 20:37:42