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

网站建设采用的技术网站备份流程

网站建设采用的技术,网站备份流程,少儿教育网站建设价格,抖音视界北京有限公司背景知识 官网介绍#xff1a; Face Mesh - mediapipe mpFaceMesh.FaceMesh() 类的参数有#xff1a;self.staticMode, self.maxFaces, self.minDetectionCon, self.minTrackCon staticMode:是否将每帧图像作为静态图像处理。如果为 True#xff0c;每帧都会进行人脸检测…背景知识 官网介绍 Face Mesh - mediapipe  mpFaceMesh.FaceMesh() 类的参数有self.staticMode, self.maxFaces, self.minDetectionCon, self.minTrackCon staticMode:是否将每帧图像作为静态图像处理。如果为 True每帧都会进行人脸检测如果为 False在检测到人脸后进行跟踪速度更快     maxFaces:要检测的最大人脸数量     minDetectionCon:检测的最小置信度阈值。低于此值的人脸将被忽略     minTrackCon:跟踪的最小置信度阈值。低于此值的跟踪将被忽略 import cv2 import mediapipe as mpmp_drawing mp.solutions.drawing_utils#绘图工具 mp_facemesh mp.solutions.face_mesh #手部模型 faceMesh mp_facemesh.FaceMesh(static_image_modeFalse,max_num_faces2,min_detection_confidence0.75,min_tracking_confidence0.75)cap cv2.VideoCapture(0)#打开默认摄像头 while True:ret,frame cap.read()#读取一帧图像#图像格式转换frame cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)# 因为摄像头是镜像的所以将摄像头水平翻转# 不是镜像的可以不翻转frame cv2.flip(frame,1)#输出结果results faceMesh.process(frame)frame cv2.cvtColor(frame, cv2.COLOR_RGB2BGR)if results.multi_face_landmarks:for face_landmarks in results.multi_face_landmarks:# 关键点可视化mp_drawing.draw_landmarks(frame, face_landmarks, mp_facemesh.FACEMESH_CONTOURS)cv2.imshow(MediaPipe face, frame)if cv2.waitKey(1) 0xFF 27:break cap.release() 这几个基本格式类似的就是换个模型输出结果不同 效果 脸部检测 src/yahboom_esp32_mediapipe/yahboom_esp32_mediapipe/目录下新建文件04_FaceMesh.py 代码如下 #!/usr/bin/env python3 # encoding: utf-8 #import ros lib import rclpy from rclpy.node import Node from geometry_msgs.msg import Point import mediapipe as mp #import define msg from yahboomcar_msgs.msg import PointArray #import commom lib import cv2 as cv import numpy as np import time from cv_bridge import CvBridge from sensor_msgs.msg import Image, CompressedImagefrom rclpy.time import Time import datetimeprint(import done)class FaceMesh(Node):def __init__(self, name,staticModeFalse, maxFaces2, minDetectionCon0.5, minTrackingCon0.5):super().__init__(name)self.mpDraw mp.solutions.drawing_utils#画图self.mpFaceMesh mp.solutions.face_mesh#模型初始化self.faceMesh self.mpFaceMesh.FaceMesh(static_image_modestaticMode,max_num_facesmaxFaces,min_detection_confidenceminDetectionCon,min_tracking_confidenceminTrackingCon )self.pub_point self.create_publisher(PointArray,/mediapipe/points,1000)self.lmDrawSpec mp.solutions.drawing_utils.DrawingSpec(color(0, 0, 255), thickness-1, circle_radius3)self.drawSpec self.mpDraw.DrawingSpec(color(0, 255, 0), thickness1, circle_radius1)def pubFaceMeshPoint(self, frame, drawTrue):pointArray PointArray()img np.zeros(frame.shape, np.uint8)imgRGB cv.cvtColor(frame, cv.COLOR_BGR2RGB)self.results self.faceMesh.process(imgRGB)#检测if self.results.multi_face_landmarks:for i in range(len(self.results.multi_face_landmarks)):#输出关键点if draw: self.mpDraw.draw_landmarks(frame, self.results.multi_face_landmarks[i], self.mpFaceMesh.FACEMESH_CONTOURS, self.lmDrawSpec, self.drawSpec)self.mpDraw.draw_landmarks(img, self.results.multi_face_landmarks[i], self.mpFaceMesh.FACEMESH_CONTOURS, self.lmDrawSpec, self.drawSpec)for id, lm in enumerate(self.results.multi_face_landmarks[i].landmark):point Point()point.x, point.y, point.z lm.x, lm.y, lm.zpointArray.points.append(point)self.pub_point.publish(pointArray)return frame, imgdef frame_combine(slef,frame, src):if len(frame.shape) 3:frameH, frameW frame.shape[:2]srcH, srcW src.shape[:2]dst np.zeros((max(frameH, srcH), frameW srcW, 3), np.uint8)dst[:, :frameW] frame[:, :]dst[:, frameW:] src[:, :]else:src cv.cvtColor(src, cv.COLOR_BGR2GRAY)frameH, frameW frame.shape[:2]imgH, imgW src.shape[:2]dst np.zeros((frameH, frameW imgW), np.uint8)dst[:, :frameW] frame[:, :]dst[:, frameW:] src[:, :]return dstclass MY_Picture(Node):def __init__(self, name):super().__init__(name)self.bridge CvBridge()self.sub_img self.create_subscription(CompressedImage, /espRos/esp32camera, self.handleTopic, 1) #获取esp32传来的图像self.last_stamp Noneself.new_seconds 0self.fps_seconds 1self.face_mesh FaceMesh(face_mesh)def handleTopic(self, msg):self.last_stamp msg.header.stamp if self.last_stamp:total_secs Time(nanosecondsself.last_stamp.nanosec, secondsself.last_stamp.sec).nanosecondsdelta datetime.timedelta(secondstotal_secs * 1e-9)seconds delta.total_seconds()*100if self.new_seconds ! 0:self.fps_seconds seconds - self.new_secondsself.new_seconds seconds#保留这次的值start time.time()frame self.bridge.compressed_imgmsg_to_cv2(msg)frame cv.resize(frame, (640, 480))cv.waitKey(10)frame, img self.face_mesh.pubFaceMeshPoint(frame,drawFalse)end time.time()fps 1 / ((end - start)self.fps_seconds)text FPS : str(int(fps))cv.putText(frame, text, (20, 30), cv.FONT_HERSHEY_SIMPLEX, 0.9, (0, 0, 255), 1)dist self.face_mesh.frame_combine(frame, img)cv.imshow(dist, dist)# print(frame)cv.waitKey(10)def main():print(start it)rclpy.init()esp_img MY_Picture(My_Picture)try:rclpy.spin(esp_img)except KeyboardInterrupt:passfinally:esp_img.destroy_node()rclpy.shutdown()订阅esp32传出来的图像后通过MediaPipe去做相关的识别后显示。主体流程跟之前一样换了检测模型。 构建后运行ros2 run yahboom_esp32_mediapipe FaceMesh 效果如下
http://www.hkea.cn/news/14297355/

相关文章:

  • 在网站加上一个模块怎么做网络营销推广培训机构
  • 网站开发一般用什么数据库东莞的网站建设公司
  • 网站没有关键词住建部历史文化街区和历史建筑信息平台
  • 济南网站建设是什么网站开发成本如何账务处理
  • 一个网站建设流程做网站发布
  • 做塑料的网站名字东莞网站建设哪里找
  • 免费隐私网站推广app少儿编程课
  • 太平洋手机官方网站网站设计手机
  • 建设门户网站都需要什么进销存软件终身免费版
  • 成都市住房和城乡建设局网站黑龙江省垦区建设协会网站
  • 蚌埠建设网站学校 网站建设 招标
  • 网站 建设 成品centos wordpress 整站
  • 创建个人网站制作流程步骤青岛专业网站营销
  • 做企业云网站的企业邮箱深圳市宝安区松岗街道邮政编码
  • 网页设计与网站建设期末考试金坛市住房和城乡建设局网站
  • 银行网站 设计方案wordpress主题 Grace
  • 手机网站菜单网页怎么做网站单页面怎么做的
  • 花瓣网设计网站交互式网站定义
  • 怎么能自己做网站河南省建设工程网站
  • 响应式企业网站开发所用的平台加盟代理网
  • 域网站名分类收费网站空间
  • 网站开发企业需要什么资质个人怎么做百度竞价
  • 团队建设 深度好文分享的网站搜狗收录提交
  • 外贸做的社交网站有哪些友情链接交换网址大全
  • 关于室内设计的网站有哪些创建个人百度百科
  • 网站开发所需要的时间 知乎江西响应式网页建设
  • 高端建站网站手机网站域名解析
  • 南希网站建设货车保险哪家网站可以直接做
  • 网站title是什么公司网站百度搜不到
  • 济南设计网站的公司单位网站建设ppt