当前位置: 首页 > news >正文

高效网站建设与维护岗位职责网推拉新app推广平台

高效网站建设与维护岗位职责,网推拉新app推广平台,企业网站的维护工作要怎么做,seo杭州简介 瞌睡经常发生在汽车行驶的过程中#xff0c;该行为害人害己#xff0c;如果有一套能识别瞌睡的系统#xff0c;那么无疑该系统意义重大#xff01; 实现步骤 思路#xff1a;疲劳驾驶的司机大部分都有打瞌睡的情形#xff0c;所以我们根据驾驶员眼睛闭合的频率和…简介 瞌睡经常发生在汽车行驶的过程中该行为害人害己如果有一套能识别瞌睡的系统那么无疑该系统意义重大 实现步骤 思路疲劳驾驶的司机大部分都有打瞌睡的情形所以我们根据驾驶员眼睛闭合的频率和时间来判断驾驶员是否疲劳驾驶(或嗜睡)。 详细实现步骤 【1】眼部关键点检测。 我们使用Face Mesh来检测眼部关键点Face Mesh返回了468个人脸关键点 由于我们专注于驾驶员睡意检测在468个点中我们只需要属于眼睛区域的标志点。眼睛区域有 32 个标志点每个 16 个点。为了计算 EAR我们只需要 12 个点每只眼睛 6 个点。 以上图为参考选取的12个地标点如下 对于左眼 [362, 385, 387, 263, 373, 380] 对于右眼[33, 160, 158, 133, 153, 144] 选择的地标点按顺序排列P 1、 P 2、 P 3、 P 4、 P 5、 P 6 bashbash import cv2 import numpy as np import matplotlib.pyplot as plt import mediapipe as mpmp_facemesh mp.solutions.face_mesh mp_drawing mp.solutions.drawing_utils denormalize_coordinates mp_drawing._normalized_to_pixel_coordinates%matplotlib inline 获取双眼的地标索引点。bash # Landmark points corresponding to left eye all_left_eye_idxs list(mp_facemesh.FACEMESH_LEFT_EYE) # flatten and remove duplicates all_left_eye_idxs set(np.ravel(all_left_eye_idxs)) # Landmark points corresponding to right eye all_right_eye_idxs list(mp_facemesh.FACEMESH_RIGHT_EYE) all_right_eye_idxs set(np.ravel(all_right_eye_idxs))# Combined for plotting - Landmark points for both eye all_idxs all_left_eye_idxs.union(all_right_eye_idxs)# The chosen 12 points: P1, P2, P3, P4, P5, P6 chosen_left_eye_idxs [362, 385, 387, 263, 373, 380] chosen_right_eye_idxs [33, 160, 158, 133, 153, 144] all_chosen_idxs chosen_left_eye_idxs chosen_right_eye_idx 图片【2】检测眼睛是否闭合——计算眼睛纵横比(EAR)。 要检测眼睛是否闭合我们可以使用眼睛纵横比(EAR) 公式 EAR 公式返回反映睁眼程度的单个标量 我们将使用 Mediapipe 的 Face Mesh 解决方案来检测和检索眼睛区域中的相关地标下图中的点P 1 - P 6。检索相关点后会在眼睛的高度和宽度之间计算眼睛纵横比 (EAR)。 当眼睛睁开并接近零时EAR 几乎是恒定的而闭上眼睛是部分人并且头部姿势不敏感。睁眼的纵横比在个体之间具有很小的差异。它对于图像的统一缩放和面部的平面内旋转是完全不变的。由于双眼同时眨眼所以双眼的EAR是平均的。 上图检测到地标P i的睁眼和闭眼。 底部为视频序列的几帧绘制的眼睛纵横比 EAR。存在一个闪烁。 首先我们必须计算每只眼睛的 Eye Aspect Ratio || 表示L2范数用于计算两个向量之间的距离。 为了计算最终的 EAR 值作者建议取两个 EAR 值的平均值。 一般来说平均 EAR 值在 [0.0, 0.40] 范围内。在“闭眼”动作期间 EAR 值迅速下降。 现在我们熟悉了 EAR 公式让我们定义三个必需的函数distance(…)、get_ear(…)和calculate_avg_ear(…)。 def distance(point_1, point_2):Calculate l2-norm between two pointsdist sum([(i - j) ** 2 for i, j in zip(point_1, point_2)]) ** 0.5return dist get_ear (…)函数将.landmark属性作为参数。在每个索引位置我们都有一个NormalizedLandmark对象。该对象保存标准化的x、y和z坐标值。def get_ear(landmarks, refer_idxs, frame_width, frame_height):Calculate Eye Aspect Ratio for one eye.Args:landmarks: (list) Detected landmarks listrefer_idxs: (list) Index positions of the chosen landmarksin order P1, P2, P3, P4, P5, P6frame_width: (int) Width of captured frameframe_height: (int) Height of captured frameReturns:ear: (float) Eye aspect ratiotry:# Compute the euclidean distance between the horizontalcoords_points []for i in refer_idxs:lm landmarks[i]coord denormalize_coordinates(lm.x, lm.y, frame_width, frame_height)coords_points.append(coord)# Eye landmark (x, y)-coordinatesP2_P6 distance(coords_points[1], coords_points[5])P3_P5 distance(coords_points[2], coords_points[4])P1_P4 distance(coords_points[0], coords_points[3])# Compute the eye aspect ratioear (P2_P6 P3_P5) / (2.0 * P1_P4)except:ear 0.0coords_points Nonereturn ear, coords_points最后定义了calculate_avg_ear(…)函数 def calculate_avg_ear(landmarks, left_eye_idxs, right_eye_idxs, image_w, image_h):Calculate Eye aspect ratioleft_ear, left_lm_coordinates get_ear(landmarks, left_eye_idxs, image_w, image_h)right_ear, right_lm_coordinates get_ear(landmarks, right_eye_idxs, image_w, image_h)Avg_EAR (left_ear right_ear) / 2.0return Avg_EAR, (left_lm_coordinates, right_lm_coordinates)让我们测试一下 EAR 公式。我们将计算先前使用的图像和另一张眼睛闭合的图像的平均 EAR 值。 image_eyes_open cv2.imread(test-open-eyes.jpg)[:, :, ::-1] image_eyes_close cv2.imread(test-close-eyes.jpg)[:, :, ::-1]for idx, image in enumerate([image_eyes_open, image_eyes_close]):image np.ascontiguousarray(image)imgH, imgW, _ image.shape# Creating a copy of the original image for plotting the EAR valuecustom_chosen_lmk_image image.copy()# Running inference using static_image_modewith mp_facemesh.FaceMesh(refine_landmarksTrue) as face_mesh:results face_mesh.process(image).multi_face_landmarks# If detections are available.if results:for face_id, face_landmarks in enumerate(results):landmarks face_landmarks.landmarkEAR, _ calculate_avg_ear(landmarks, chosen_left_eye_idxs, chosen_right_eye_idxs, imgW, imgH)# Print the EAR value on the custom_chosen_lmk_image.cv2.putText(custom_chosen_lmk_image, fEAR: {round(EAR, 2)}, (1, 24),cv2.FONT_HERSHEY_COMPLEX, 0.9, (255, 255, 255), 2) plot(img_dtimage.copy(),img_eye_lmks_chosencustom_chosen_lmk_image,face_landmarksface_landmarks,ts_thickness1, ts_circle_radius3, lmk_circle_radius3)结果 如您所见睁眼时的 EAR 值为0.28闭眼时接近于零为 0.08。 【3】设计一个实时检测系统。 首先我们声明两个阈值和一个计数器。 EAR_thresh 用于检查当前EAR值是否在范围内的阈值。D_TIME一个计数器变量用于跟踪当前经过的时间量EAR EAR_THRESH.WAIT_TIME确定经过的时间量是否EAR EAR_THRESH超过了允许的限制。当应用程序启动时我们将当前时间以秒为单位记录在一个变量中t1并读取传入的帧。 接下来我们预处理并frame通过Mediapipe 的 Face Mesh 解决方案管道。 如果有任何地标检测可用我们将检索相关的 ( Pi )眼睛地标。否则在此处重置t1 和重置以使算法一致。D_TIME (D_TIME如果检测可用则使用检索到的眼睛标志计算双眼的平均EAR值。如果是当前时间则加上当前时间和to之间的差。然后将下一帧重置为。EAR EAR_THRESHt2t1D_TIMEt1 t2如果D_TIME WAIT_TIME我们会发出警报或继续下一帧。
http://www.w-s-a.com/news/44722/

相关文章:

  • 郑州网站模板动漫设计与制作设计课程
  • 在线制作网站的工具岳阳网站设计改版
  • 网站建设需要汇报哪些内容前端开发的工作内容
  • 无锡阿凡达网站建设美团app开发公司
  • 个性化企业网站制作公司深圳高端网站定制公
  • 专业深圳网站定制开发企业网站开发 流程
  • 网站建设推广的软文php网站平台
  • 如何做代刷网站长外贸网站个性设计
  • 合同网站开发 设计 后期维护如何搭建海外网络
  • 提供网站建设服务优化大师哪个好
  • 军队营房基础建设网站哦咪咖网站建设
  • fifa17做任务网站app下载免费安装
  • 网站开发用哪些技术seo是什么意思为什么要做seo
  • 网站会动的页面怎么做的与网站建设有关的招标文件
  • 公司网站如何做seowordpress付费资源
  • 福田做商城网站建设哪家公司便宜点WordPress安装子目录
  • 南京建设交易中心网站wordpress 拼车
  • 上海今天发生的重大新闻5条河南网站seo费用
  • 广东深圳最新情况临安网站seo
  • 华为快速建站女人做春梦网站
  • 建外贸网站费用手机排行榜zol
  • 长治网站制作的网站做网站要什么知识条件
  • discuz 做门户网站wordpress怎么添加图片不显示图片
  • 东营网站建设方案范文百度应用搜索
  • 网站 常见推广js代码放wordpress哪里
  • 靖江网站开发徐州住房和城乡建设局网站
  • 南宁网站建设公司如何为老板打造网站赚钱的wordpress optimizer
  • 做微商好还是开网站好网站网络推广
  • 网站建设岗位所需技能泊头网站优化
  • 企业网站建设是什么网络营销岗位介绍