Traceback (most recent call last): File "E:\1作业与文件\智能建造\大作业\main.py", line 33, in <module> left_eye = shape.part(36, 42) TypeError: part(): incompatible function arguments. The following argument types are supported: 1. (self: _dlib_pybind11.full_object_detection, idx: int) -> _dlib_pybind11.point Invoked with: <_dlib_pybind11.full_object_detection object at 0x0000017CC3E0F730>, 36, 42
时间: 2024-03-14 18:44:59 浏览: 76
这个错误通常是由于dlib库版本不兼容所致,常见的解决方法是更新dlib库到最新版本。您可以尝试使用以下命令更新dlib库:
```
pip install --upgrade dlib
```
如果更新dlib库仍然无法解决问题,您可以检查代码中的部分参数是否正确,比如在这里是否应该传递两个参数,而不是一个。
相关问题
Traceback (most recent call last): File "E:/kq智能信息/dcgan/main.py", line 10, in <module> import matplotlib.pyplot as plt ModuleNotFoundError: No module named 'matplotlib'
这个错误提示告诉你没有找到名为`matplotlib`的模块,解决方法是安装`matplotlib`模块。你可以打开命令行或者终端,输入以下命令安装:
```
pip install matplotlib
```
如果你使用的是 Anaconda 环境,可以使用以下命令:
```
conda install matplotlib
```
安装完成后再次运行代码即可。
Traceback (most recent call last): File "E:\1作业与文件\智能建造\大作业\main.py", line 37, in <module> left_eye_aspect_ratio = (left_eye[4].y - left_eye[1].y) / (left_eye[4].x - left_eye[0].x + 1e-6) TypeError: '_dlib_pybind11.point' object is not subscriptable
根据错误信息,`left_eye` 是一个 `_dlib_pybind11.point` 类型的对象,对象不支持使用下标操作。因此,在代码中使用 `left_eye[4]` 这样的下标操作是错误的。
如果想要获取关键点的 x 和 y 坐标,可以使用 `left_eye.x()` 和 `left_eye.y()` 这两个函数获取。例如:
```
left_eye_aspect_ratio = (left_eye[4].y() - left_eye[1].y()) / (left_eye[4].x() - left_eye[0].x() + 1e-6)
```
这样可以获取左眼纵横比。
阅读全文