import cv2
import dlib
import numpy as np
from imutils import face_utils
"""
思路:
第一步:2D人脸关键点检测;第二步:3D人脸模型匹配;
第三步:求解3D点和对应2D点的转换关系;第四步:根据旋转矩阵求解欧拉角。
"""
# 加载人脸检测和姿势估计模型(dlib)
face_landmark_path = 'shape_predictor_68_face_landmarks.dat'
"""
只要知道世界坐标系内点的位置、像素坐标位置和相机参数就可以搞定旋转和平移矩阵(OpenCV自带函数solvePnp())
"""
# 世界坐标系(UVW):填写3D参考点,该模型参考http://aifi.isr.uc.pt/Downloads/OpenGL/glAnthropometric3DModel.cpp
object_pts = np.float32([[6.825897, 6.760612, 4.402142], # 33左眉左上角
[1.330353, 7.122144, 6.903745], # 29左眉右角
[-1.330353, 7.122144, 6.903745], # 34右眉左角
[-6.825897, 6.760612, 4.402142], # 38右眉右上角
[5.311432, 5.485328, 3.987654], # 13左眼左上角
[1.789930, 5.393
实时疲劳检测实战项目
最新推荐文章于 2024-10-24 16:01:26 发布
本文介绍了一个使用人工智能技术,特别是图像处理和深度学习方法实现的实时疲劳驾驶检测项目。通过OpenCV库捕获并分析驾驶员的面部特征,结合深度学习模型来判断驾驶员的疲劳状态,为行车安全提供保障。
订阅专栏 解锁全文
8506

被折叠的 条评论
为什么被折叠?



