Linux Mint安装face_recognition报错需彻底清理依赖重装问题咨询
修复方案
第一步:解决优先级最高的命名冲突问题
- 你运行
test.py的目录下存在和官方模块完全重名的face_recognition.py文件,还有对应的Python缓存目录,Python导入模块时会优先加载当前工作目录的本地文件而非pip安装的官方模块,这是你报错直接指向未主动运行的本地文件的核心原因。先执行以下命令删除冲突文件:
cd /home/jay/Documents/Scripts/PYTHON/Face_Recognition/Newest_2021/face_recognition_examples/ rm -f face_recognition.py rm -rf __pycache__
后续自行编写的脚本永远不要和第三方库重名,避免再次出现导入异常。
第二步:彻底清理所有相关残留
清理pip安装的相关包
# 强制卸载所有关联包 pip3 uninstall -y face_recognition face-recognition-models dlib opencv-python opencv-contrib-python cmake # 清理pip全局缓存 pip3 cache purge
清理系统级安装的关联依赖
sudo apt remove --purge -y python3-opencv cmake build-essential dlib* sudo apt autoremove -y sudo apt autoclean
清理散落的残留文件
# 清理全局site-packages残留 sudo find /usr/local/lib/python3* -name "*face_recognition*" -o -name "*dlib*" -o -name "*cv2*" | xargs sudo rm -rf # 清理用户目录下的site-packages残留 find ~/.local/lib/python3* -name "*face_recognition*" -o -name "*dlib*" -o -name "*cv2*" | xargs rm -rf
第三步:安装dlib编译前置依赖
Linux Mint基于Debian发行版,先安装dlib编译需要的系统底层依赖,解决wheel构建失败问题:
sudo apt update sudo apt install -y build-essential cmake gfortran libopenblas-dev liblapack-dev python3-dev python3-pip git
第四步:按顺序安装所需包
严格遵循安装顺序,避免依赖错乱:
# 先安装用户级cmake pip3 install --user cmake # 安装完整opencv包,包含face扩展模块 pip3 install --user opencv-python opencv-contrib-python # 安装dlib,编译过程需要3-5分钟,不要中断进程 pip3 install --user dlib # 最后安装官方版face_recognition pip3 install --user face_recognition
第五步:验证安装结果
不要在之前的项目目录下测试,先切换到用户根目录执行验证命令,避免本地文件干扰:
cd ~ python3 -c "import face_recognition; import cv2; print('安装成功,版本:face_recognition=', face_recognition.__version__, ' opencv=', cv2.__version__)"
如果无报错且输出版本信息即为安装完成,回到项目目录运行自有脚本即可。
内容的提问来源于stack exchange,提问作者uk_user2014
相关产品推荐
相关产品推荐

