灵凌子 发表于 2023-4-4 11:20:19

为什么加了面部检测之后代码就出问题了

问题如下
Traceback (most recent call last):
File "D:/Python Charm/project/bishe/FaceDepthMeasurement.py", line 6, in <module>
    detector = FaceMeshDetector(maxFaces=1)
File "D:\Python\lib\site-packages\cvzone\FaceMeshModule.py", line 32, in __init__
    self.faceMesh = self.mpFaceMesh.FaceMesh(static_image_mode=self.staticMode,
File "C:\Users\戴尔\AppData\Roaming\Python\Python38\site-packages\mediapipe\python\solutions\face_mesh.py", line 94, in __init__
    super().__init__(
File "C:\Users\戴尔\AppData\Roaming\Python\Python38\site-packages\mediapipe\python\solution_base.py", line 264, in __init__
    validated_graph.initialize(
FileNotFoundError: The path does not exist.

代码如下import cv2
import cvzone
from cvzone.FaceMeshModule import FaceMeshDetector

cap = cv2.VideoCapture(0)
detector = FaceMeshDetector(maxFaces=1)

while True:
    success, img = cap.read()
    img, faces = detector.findFaceMesh(img, draw=False)

    if faces:
      face = faces
      piontLeft = face

      cv2.circle(img,piontLeft,5,(255,0,255),cv2.FILLED)

    cv2.imshow("Image", img)
    cv2.waitKey(1)

isdkz 发表于 2023-4-4 11:33:27

根据您提供的错误信息,问题出在找不到模型文件的路径上。这个问题可能是因为mediapipe包没有正确安装,或者模型文件没有放在正确的路径下。

为了解决这个问题,请尝试以下步骤:

1、首先,确保您已经正确安装了mediapipe包。您可以通过运行以下命令来安装或更新它:

pip install --upgrade mediapipe

2、确保您的Python环境和代码使用的是相同的版本。例如,如果您在代码中使用Python 3.8,则确保已经安装了与之对应的mediapipe版本。

3、如果问题仍然存在,您可以尝试手动找到mediapipe模型文件,并将其路径添加到代码中。您可以使用以下代码来找到mediapipe的安装位置:

import mediapipe as mp
print(mp.__file__)

然后,将输出的路径中的__init__.py替换为模型文件的路径,并在代码中添加这个路径。例如:

import os
os.environ['GLOG_logtostderr'] = '1'
os.environ['GLOG_minloglevel'] = '2'
os.environ['MODEL_PATH'] = '<path_to_mediapipe_models_directory>'

确保将<path_to_mediapipe_models_directory>替换为实际的模型文件路径。

希望这些建议能帮助您解决问题!
页: [1]
查看完整版本: 为什么加了面部检测之后代码就出问题了