范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

YOLOv7与MediaPipe在人体姿态估计上的对比

  前期文章的分享,我们介绍了YOLOv7人体姿态估计的文章以及MediaPipe人体姿态估计方面的文章。由于YOLOv7与MediaPipe都可以进行人体姿态估计,我们本期就对比一下2个算法的不同点。
  利用机器学习,进行人体33个2D姿态检测与评估
  人工智能领域也卷了吗——YOLO系列又被刷新了,YOLOv7横空出世
  MediaPipe
  基于深度学习的人体姿态估计
  自2014年Google首次发布DeepPose以来,基于深度学习的姿态估计算法已经取得了较大的进步。这些算法通常分两个阶段工作。人员检测 关键点定位
  根据设备[CPU/GPU/TPU]的不同,不同框架的性能有所不同。有许多两阶段姿态估计模型在基准测试中表现良好,例如:Alpha Pose、OpenPose、Deep Pose等等。然而,由于两阶模型相对复杂,获得的实时性能非常昂贵。这些模型在GPU上运行得很快,但在CPU上运行的较慢。就效率和准确性而言,MediaPipe是一个很好的姿态估计框架。它在CPU上生成实时检测,且速度很快。
  YOLOv7
  与传统的姿态估计算法不同,YOLOv7姿态是一个单级多人关键点检测器。它具有自顶向下和自底向上两种方法中的优点。YOLOv7姿态是在COCO数据集上训练的,前期的文章我们也分享过YOLOv7人体姿态检测的代码。
  YOLOv7 是 YOLO 系列中最先进的新型物体检测器。根据论文,它是迄今为止最快、最准确的实时物体检测算法。根据 YOLOv7 论文,最好的模型获得了 56.8% 的平均精度(AP),这是所有已知对象检测算法中最高的。各种模型的速度范围为 5-160 FPS。与基础模型相比,YOLOv7 将参数数量减少到40%,计算量减少 50%。
  MediaPipe人体姿态检测
  MediaPipe 是一款由 Google Research 开发并开源的多媒体机器学习模型应用框架。在谷歌,一系列重要产品,如 、Google Lens、ARCore、Google Home 以及 ,都已深度整合了 MediaPipe。
  MediaPipe 的核心框架由 C++ 实现,并提供 Java 以及 Objective C 等语言的支持。MediaPipe 的主要概念包括数据包(Packet)、数据流(Stream)、计算单元(Calculator)、图(Graph)以及子图(Subgraph)。
  MediaPipe Pose是用于高保真人体姿势跟踪的ML解决方案,利用BlazePose研究成果,还从ML Kit Pose Detection API中获得了RGB视频帧的整个33个2D标志(或25个上身标志)。当前最先进的方法主要依靠强大的桌面环境进行推理,而MediaPipe Pose的方法可在大多数现代手机,甚至是Web上实现实时性能。
  MediaPipe中有三个模型用于姿势估计。BlazePose GHUM Heavy BlazePose GHUM Full BlazePose GHUM Lite
  YOLOv7 vs MediaPipe特征对比
  YOLOv7
  MediaPipe
  Topology
  17 Keypoints   COCO
  33 Keypoints   COCO   +   Blaze     Palm   +   Blaze     Face
  Workflow
  Detection runs for all frames
  Detection runs once followed by tracker until occlusion occurs
  GPU support
  CPU and GPU
  CPU
  Segmentation
  Segmentation not integrated to pose directly
  Segmentation integrated
  Number of persons
  Multi-person
  Single person
  YOLOv7是一个多人检测框架。MediaPipe是一个单人检测框架(主要原因是只用于CPU,速度较快),因此在我们实现人体姿态检测时,需要关注是否只检测多人,或者单人,当然对自己的硬件配置也有较高的要求。
  MediaPipe 代码实现人体姿态检测  cap = cv2.VideoCapture(0) time.sleep(2) while cap.isOpened():     success, image = cap.read()     if not success:         print("Ignoring empty camera frame.")         continue     image = cv2.cvtColor(cv2.flip(image, 1), cv2.COLOR_BGR2RGB)     image.flags.writeable = False     results = pose.process(image)     image.flags.writeable = True     image = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)     mp_drawing.draw_landmarks(     image, results.pose_landmarks, mp_pose.POSE_CONNECTIONS)     cv2.imshow("MediaPipe Pose", image)     if cv2.waitKey(5) & 0xFF == ord("q"):         break pose.close() cap.release()
  由于MediaPipe是一个单人检测框架,因此在视频中,MediaPipe只检测单个人的姿态,其他人体姿态则会忽略,当然,软件会检测哪个人体姿态,理论上是最前面的人体姿态,但是通过实验后,其实并不完全是这样。从上图可以看出,虽然MediaPipe仅支持使用在CPU上,但是检测速度与精度相当快,缺点是智能进行单人体姿态检测。
  YOLOv7 代码实现人体姿态检测
  从 YOLOv7-Tiny 模型开始,参数刚刚超过 600 万。它的验证 AP 为 35.2%,击败了具有相似参数的 YOLOv4-Tiny 模型。具有近 3700 万个参数的 YOLOv7 模型提供了 51.2% 的 AP,再次击败了具有更多参数的 YOLOv4 和 YOLOR 的变体。
  YOLO7 系列中较大的模型,YOLOv7-X、YOLOv7-E6、YOLOv7-D6 和 YOLOv7-E6E。所有这些都击败了 YOLOR 模型,它们的参数数量相似,AP 分别为 52.9%、55.9%、56.3% 和 56.8%。
  def pose_video(frame):     mapped_img = frame.copy()     img = letterbox(frame, input_size, stride=64, auto=True)[0]     print(img.shape)     img_ = img.copy()     img = transforms.ToTensor()(img)     img = torch.tensor(np.array([img.numpy()]))     img = img.to(device)     with torch.no_grad():         t1 = time.time()         output, _ = model(img)         t2 = time.time()         fps = 1/(t2 - t1)         output = non_max_suppression_kpt(output,                                           0.25,    # Conf. Threshold.                                          0.65,    # IoU Threshold.                                          nc=1,   # Number of classes.                                          nkpt=17, # Number of keypoints.                                          kpt_label=True)           output = output_to_keypoint(output)     nimg = img[0].permute(1, 2, 0) * 255     nimg = nimg.cpu().numpy().astype(np.uint8)     nimg = cv2.cvtColor(nimg, cv2.COLOR_RGB2BGR)     for idx in range(output.shape[0]):         plot_skeleton_kpts(nimg, output[idx, 7:].T, 3)        return nimg, fps
  由于YOLOv7是一个多人检测框架,因此在单个视频帧中,YOLOv7框架会实时检测多人体姿态。从上图可以看出,检测速度也是很快的,这是因为此例子使用的是GPU模型运行,若YOLOv7应用在CPU上面,则检测速度很慢。
  MediaPipe与YOLOv7对比检测
  从以上的介绍,我们知道,mediapipe是一个单人检测框架,因此检测速度特别快,同样的的一段检测对象,同样的使用CPU进行人体姿态检测,则mediapipe完全占绝对优势。
  CPU人体姿态检测
  但是一旦上GPU,yolov7的优势就会大大的提高,可以看到,一旦用上了GPU,yolov7的检测速度就达到了84FPS,而由于mediapipe仅仅用于CPU,就算加上GPU,也发挥不到GPU的优势。
  其他文章参考
  Transformer模型注意力机制的概念
  利用机器学习,进行人体33个2D姿态检测与评估
  利用机器学习,进行人手的21个3D手关节坐标检测
  利用机器学习进行人脸468点的3D坐标检测,并生成3D模型
  MediaPipe 集成人脸识别,人体姿态评估,人手检测模型
  颠覆2D对象检测模型,MediaPipe 3D对象检测还原真实的对象特征
  MediaPipe Face Detection可运行在移动设备上的亚毫秒级人脸检测
  高大上的YOLOV3对象检测算法,使用python也可轻松实现
  使用python轻松实现高大上的YOLOV4对象检测算法
  基于python的YOLOV5对象检测模型实现

中澳,破冰?终迎暖流2022年已经过半,在开局的6个月里,我们继续在通胀暴涨俄乌冲突能源和粮食危机以及全球经济衰退的恐惧中见证历史。然而,在寒冷的南半球冬夜里,澳大利亚却迎来了一股罕见的暖流中丹东黄码袭警发生的背后最近网络热点不断,一波未平一波又起。先是毒教材事件令人发指,至今调查还没结果。接着是唐山涉黑打人案件,手段极度残忍,性质极其恶劣,后果极为严重。然后是郑州精准赋红码事件,世间罕见,丹东市父女黄码看病被交警拦下发生冲突6月21日,辽宁丹东,女子带着社区证明驾车带父亲去看病,因健康码显示为黄码被拦与民警发生冲突。我看完了这个视频,事情经过大概是,女子健康码显示的黄码,她开了社区证明,父亲没有开证明00后整顿职场爆火,他们为何这样有勇气本版图片由视觉中国提供所谓00后整顿职场,多半只是希望让职场更合法合理合情的一个调侃而已。00后也开始大学毕业步入职场了。和每一代人一样,00后也拥有了自己的顺口溜80后在加班对领法国成运输大队长?俄坦克厂感谢马克龙赠送卡车炮据俄罗斯卫星社24日报道,俄罗斯乌拉尔机车车辆厂在社交平台上发布消息称,该厂(生产多种俄军现役坦克及自行火炮本网注)感谢法国马克龙提供给乌克兰军队凯撒卡车炮,这些卡车炮最终被俄军完伦敦污水中发现脊髓灰质炎病毒,英卫生当局全国性事件据新华社报道,英国卫生安全局22日发表声明说,在伦敦北部和东部的污水中检测到脊髓灰质炎病毒,该机构随即宣布这是一起全国性事件,但目前尚未发现确诊病例。在极少数情况下,对于未完全接种家有儿女中被忽视的有钱日常,你发现了吗?小时候太天真每一个90后的童年里一定都有一部家有儿女的存在,小时候你的童年,我的童年,好像不一样,小小肩膀大大书包,上呀上学堂好像是每个小朋友耳熟能详的欢快旋律。捣蛋鬼刘星乖乖女夏雪海归靓仔夏鱼长得丑也有错?!研究发现越丑的鱼越容易濒危,漂亮鱼反而安全美貌是一种优势,对鱼来说也是如此。最近,法国科学家发现珊瑚鱼的颜值和它们的生存息息相关。越是美丽的珊瑚鱼,它们越是安全,处于无危和低危状态越是丑陋的珊瑚鱼,生存环境恶劣,处于濒危状苹果发布iOS16beta2测试版,修复多个bug今天凌晨,苹果正式发布了iOS16beta2测试版。根据文件显示,这次的更新仅修复了一些问题以及改进,上面也并没有提到任何新功能。我也看了一下,这次更新修复的问题是真的多。其中包括婚戒刺青是大S提议!具俊晔幸福来得太晚死前会一直表达爱意具俊晔飞来台湾见大S,见面当下20年前回忆涌现,两人抱在一起哭了30分钟。(图friDay影音提供)图文CTWANT具俊晔做客刘在锡曹世镐主持的刘QUIZONTHEBLOCK,甜蜜这才是奶奶辈女人该有的穿搭不服老也不扮嫩,美得高级又从容关于年龄,每个人都有不同的看法和面对的态度。很多人觉得女人一旦上了年纪,似乎就和社会脱轨了一样,无论是思想还是审美观念,都要更加落后一些,可事实真的是这样子吗?其实并不是这样的,如
云南高考700分却无缘清华,考生含泪无奈吐槽,成绩好不如生的好文苗老师导语相信大家都知道中考的55分流,这种方式将会有一半的学生会无缘高中,从而就会无缘大学。等到一部分成功的学生开始上高中的时候学生又开始了新一轮的竞争,毕竟要为以后上大学而努2000块钱买了破壁机后,我又入手了一个200块钱的!原因太简单现在的天气已经很热了,动不动就是40度。这样的天气,别说食欲不振,就算是想做饭,都是一种折磨!即便是早餐,我家现在都懒得开火但是光靠面包牛奶这样的方式也不行于是就买了台破壁机。想着大漠风情让外国网红流连忘返视频加载中7月28日下午,2022打卡中国最美地标你好,内蒙古!网络国际传播活动走进位于内蒙古鄂尔多斯市达拉特旗境内的响沙湾旅游景区。沙丘连连,鸣沙阵阵,苍茫辽阔瑰丽奇特的响沙湾,异地强制被开银行卡十多张,河北银行这样解释近日,河北沧州的李女士向中国交通广播记者反映,不知何时她名下竟然无缘无故多了11张河北银行的银行卡,但她本人从未在该银行开过任何账户。想让银行工作人员帮助查询经办人银行卡交易明细,一席之地勉强打满三个电话,而盛宇和capper早就把规则吃透了把失利者锁到小黑屋,然后让胜利者打电话给他们沟通,中国说唱巅峰对决节目组这次想出来的选人环节,让胜败双方都非常不舒服。对于关在小黑屋里的rapper来说,限制他们自由,本就是对他们二舅家30里外,还有个故事高度重合的拐二叔作者慕云清编者按7月25日,一部片名为回村三天,二舅治好了我精神内耗的短视频纪录片在手机端刷屏。至29日中午,该视频在B站已获近3385万点击。有网友评论每个村都有这样一个二舅我也1983年加拿大猪场恶魔,6年杀害49人,并且把她们的尸体喂猪1983年,温哥华东区发生了一起少女失踪案件,当地警方也接到了报警,可奇怪的是,在少女失踪的地方和家里,并没有找到有用的线索,谁也不知道失踪的少女去了哪里。因为线索很少,这起案件过东亚杯男足总结任务完成那未来呢?一胜一平一负一进球。这是本届东亚杯,国足选拔队交出的成绩单。有惊喜,更有迷茫。面对实力比自己更强又有主场优势的日本,面对首场溃败韩国产生的国内舆论压力,选拔队的球员能够放下包袱,敢现代故事出租车上的啤酒郭芳是一名出租车司机。前两年老公因病去世,留下了一辆车和一个八岁的女儿。郭芳原來开着一家小超市,老公每天开出租车,虽说两人都挺辛苦,但日子还过得去。老公一走,郭芳把侄子大顺叫来看店成龙的玩命十大瞬间,第一名打破吉尼斯记录,至今无人能模仿成龙为了拍戏全身受重伤至少三十处,多次险些丧命。今天小虎爆肝为大家盘点成龙最玩命的十大瞬间,第一名被列入吉尼斯,至今无人敢模仿。这是电影A计划中的画面,当时成龙要从一个钟楼上跳下来中央和国家机关选举产生出席中国共产党第二十次全国代表大会代表7月19日,中国共产党中央和国家机关代表会议选举产生出席党的二十大代表293名。代表名单如下(按姓氏笔画为序)中央和国家机关出席党的二十大代表,是严格按照党章和党中央关于做好代表选