opencv、mediapipe==0.8.9人脸检测项目复现过程中遇到的bug(1)

本文档记录了在PyCharm环境下使用Mediapipe库遇到的模型选择错误、版本不匹配、pip升级、旧版pip和模块导入失败等问题,以及相应的解决方案,包括调整Python版本、更新或降级pip、处理OpenCV的兼容性等。同时提到了环境管理、虚拟环境的创建和配置,以及如何处理本地库路径冲突。
摘要由CSDN通过智能技术生成

场景:pycharm+win10+mediapipe
mediapipe第三方库相关资料学习:https://github.com/google/mediapipe

报错一:
TypeError: __init__() got an unexpected keyword argument 'model_selection'

情景:使用mediapipe的函数时,说没有model_selection(模型选择)传入参数

model = mp_face_detection.FaceDetection(min_detection_confidence=0.5,
                                        model_selection=0)

原因:mediapipe的版本比较低,下载有该参数的对应版本

报错二:
ERROR: Could not find a version that satisfies the requirement mediapipe==0.8.9
ERROR: No matching distribution found for mediapipe==0.8.9

解决办法:
过程:换环境的时候,发现有时候mediapipe==0.8.9的版本可以下载
知识点:
激活不同的虚拟环境 :activate 环境名
关闭虚拟环境 :conda.bat deactivate
mediapipe==0.8.9版本的下载需要配合python为3.7版本
如果你的环境为python3.6
解决办法:
1、在anaconda中新建的虚拟环境,进入 anaconda的anaconda powershell prompt 命令编辑窗口输入

conda create -n 环境名 python=3.7

注意:
anaconda建立的新环境,如何在pycharm项目中设置,添加新的虚拟环境
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
找到你新建立的环境的python.exe的地址

2、不想卸载重新安装、新建虚拟环境,直接升级python版本:首先anacode prompt进入该虚拟环境,
输入指令:update python 或者 conda install python=3.7(3.6为示例),则可以实现更新,更新完后进入输入python,检测python版本即可。

下载mediapipe第三方库:
pip install mediapipe==0.8.9 -i https://mirrors.aliyun.com/pypi/simple/#(配合镜像下载更快)
报错三:
You are using pip version 10.0.1, however version 22.0.3 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

场景:pip很久没更新,pip版本比较老
按提示解决:python -m pip install --upgrade pip

报错四:
AttributeError: 'NoneType' object has no attribute 'bytes'

场景:pip更新之后版本太高
解决办法:

python -m pip install --upgrade pip==9.0.3
报错五:
Traceback (most recent call last):
  File "E:/桌面/face_recognition_py-master/detect.py", line 5, in <module>
    import mediapipe as mp
  File "E:\桌面\face_recognition_py-master\mediapipe\__init__.py", line 17, in <module>
    from mediapipe.python._framework_bindings import resource_util
ModuleNotFoundError: No module named 'mediapipe.python'

解决思路:
报错信息说”E:\桌面\face_recognition_py-master\mediapipe\__init__.py“错误
我突然想到自己把https://github.com/google/mediapipe放在了代码运行目录下面,所以在调用mediapipe的时候,要先删去或移去目录下的mediapipe文件,移动之后运行成功。

报错六:
ImportError: cannot import name '_registerMatType' from 'cv2.cv2' (E:\software\anaconda\envs\pyqt\lib\site-packages\cv2\cv2.cp37-win_amd64.pyd)

原因:opencv-pythonopencv-contrib-python不兼容,出现了这个错误
解决办法:
1、 pip uninstall 删去opencv-pythonopencv-contrib-python
2、

pip install opencv-python==3.4.2.16 -i  https://pypi.tuna.tsinghua.edu.cn/simple/
pip install opencv-contrib-python==3.4.2.16 -i  https://pypi.tuna.tsinghua.edu.cn/simple/
如有错误,谢谢指导
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值