安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

人体骨架舞OpenPose用pythonopencv实现

8月28日 枯心人投稿
  1说明
  1。1本次基于OpenPose用pythonopencv高级实现人体骨架舞,再次细化并写这篇文章,是为了回答我的一位粉丝的疑问。
  1。2基于我的第一篇文章:《OpenPose:实现抖音很火的人体骨架和视频动态舞》。
  1。3对视频单人舞蹈的人体骨架舞的代码进行删除、优化、修改、注释,提高可读性和可操作性。
  1。4熟悉python和opencv的编程思维和熟悉cv2的函数。
  1。5环境:python3。8opencv4。4。0深度deepinlinux操作系统微软编辑器vscode。
  2原图骨架舞
  2。1效果图
  视频节选
  2。2我的第一篇文章中有代码,对源代码进行修改后的代码第1步:导入模块importcv2importtimeimportnumpyasnp第2步:模块加载模块下载之间有介绍,此处省略protoFilehomexgjDesktoplearnopencv3OpenPoseOKposecocoposedeploylinevec。prototxtweightsFilehomexgjDesktoplearnopencv3OpenPoseOKposecocoposeiter440000。caffemodel参数初始化设置,建议不要动参数,默认18个节点nPoints18节点关系,固定POSEPAIRS〔〔1,0〕,〔1,2〕,〔1,5〕,〔2,3〕,〔3,4〕,〔5,6〕,〔6,7〕,〔1,8〕,〔8,9〕,〔9,10〕,〔1,11〕,〔11,12〕,〔12,13〕,〔0,14〕,〔0,15〕,〔14,16〕,〔15,17〕〕inWidth368inHeight368threshold0。1模型加载netcv2。dnn。readNetFromCaffe(protoFile,weightsFile)启动CPU,非GPUnet。setPreferableBackend(cv2。dnn。DNNTARGETCPU)print(UsingCPUdevice)第3步:cv2读取本地单人舞蹈视频capcv2。VideoCapture(0)读取摄像头实时检测人体骨架,有点卡,省略读取视频文件,注意单个人的姿势和人体骨架,目前多人出现bugcapcv2。VideoCapture(homexgjDesktoplearnopencv3OpenPoseOKsamplevideo。mp4)hasFrame,framecap。read()生成本目录下的视频vidwritercv2。VideoWriter(homexgjDesktoplearnopencv3OpenPoseOKoutput2。avi,cv2。VideoWriterfourcc(M,J,P,G),10,(frame。shape〔1〕,frame。shape〔0〕))第4步:循环whilecv2。waitKey(1)0:初始化时间ttime。time()hasFrame,framecap。read()frameCopynp。copy(frame)退出设置ifnothasFrame:cv2。waitKey()breakframeWidthframe。shape〔1〕frameHeightframe。shape〔0〕inpBlobcv2。dnn。blobFromImage(frame,1。0255,(inWidth,inHeight),(0,0,0),swapRBFalse,cropFalse)net。setInput(inpBlob)outputnet。forward()Houtput。shape〔2〕Woutput。shape〔3〕Emptylisttostorethedetectedkeypointspoints〔〕foriinrange(nPoints):confidencemapofcorrespondingbodyspart。probMapoutput〔0,i,:,:〕FindglobalmaximaoftheprobMap。minVal,prob,minLoc,pointcv2。minMaxLoc(probMap)Scalethepointtofitontheoriginalimagex(frameWidthpoint〔0〕)Wy(frameHeightpoint〔1〕)Hifprobthreshold:cv2。circle(frameCopy,(int(x),int(y)),8,(0,255,255),thickness1,lineTypecv2。FILLED)cv2。putText(frameCopy,{}。format(i),(int(x),int(y)),cv2。FONTHERSHEYSIMPLEX,1,(0,0,255),2,lineTypecv2。LINEAA)Addthepointtothelistiftheprobabilityisgreaterthanthethresholdpoints。append((int(x),int(y)))else:points。append(None)DrawSkeletonforpairinPOSEPAIRS:partApair〔0〕partBpair〔1〕ifpoints〔partA〕andpoints〔partB〕:画骨架线和圆点,颜色可自定义cv2。line(frame,points〔partA〕,points〔partB〕,(0,255,255),3,lineTypecv2。LINEAA)cv2。circle(frame,points〔partA〕,8,(0,0,255),thickness1,lineTypecv2。FILLED)cv2。circle(frame,points〔partB〕,8,(0,0,255),thickness1,lineTypecv2。FILLED)显示时间和帧cv2。putText(frame,timetaken{:。2f}sec。format(time。time()t),(50,50),cv2。FONTHERSHEYCOMPLEX,。8,(255,50,0),2,lineTypecv2。LINEAA)动态显示cv2。imshow(OutputSkeleton,frame)写入视频vidwriter。write(frame)vidwriter。release()
  3纯骨架舞
  3。1效果图:
  3。2操作步骤简单,注意路径即可,采用cpu法,大概这个视频需要30分钟。
  3。3代码第1步:导入模块importcv2importtimeimportnumpyasnp第2步:模块加载模块下载之间有介绍,此处省略protoFilehomexgjDesktoplearnopencv3OpenPoseOKposecocoposedeploylinevec。prototxtweightsFilehomexgjDesktoplearnopencv3OpenPoseOKposecocoposeiter440000。caffemodel参数初始化设置,建议不要动参数,默认18个节点nPoints18节点关系,固定POSEPAIRS〔〔1,0〕,〔1,2〕,〔1,5〕,〔2,3〕,〔3,4〕,〔5,6〕,〔6,7〕,〔1,8〕,〔8,9〕,〔9,10〕,〔1,11〕,〔11,12〕,〔12,13〕,〔0,14〕,〔0,15〕,〔14,16〕,〔15,17〕〕inWidth368inHeight368threshold0。1模型加载netcv2。dnn。readNetFromCaffe(protoFile,weightsFile)启动CPU,非GPUnet。setPreferableBackend(cv2。dnn。DNNTARGETCPU)print(UsingCPUdevice)第3步:cv2读取本地单人舞蹈视频capcv2。VideoCapture(0)读取摄像头实时检测人体骨架,有点卡,省略读取视频文件,注意单个人的姿势和人体骨架,目前多人出现bugcapcv2。VideoCapture(homexgjDesktoplearnopencv3OpenPoseOKsamplevideo。mp4)hasFrame,framecap。read()生成本目录下的视频vidwritercv2。VideoWriter(homexgjDesktoplearnopencv3OpenPoseOKoutput3。avi,cv2。VideoWriterfourcc(M,J,P,G),10,(frame。shape〔1〕,frame。shape〔0〕))第4步:循环whilecv2。waitKey(1)0:初始化时间ttime。time()hasFrame,framecap。read()frameCopynp。copy(frame)以上未修改增加一张输出的黑色图片,用于显示骨架和数字outnp。zeros(frame。shape,np。uint8)修改处,此处增加以下未修改退出设置ifnothasFrame:cv2。waitKey()breakframeWidthframe。shape〔1〕frameHeightframe。shape〔0〕inpBlobcv2。dnn。blobFromImage(frame,1。0255,(inWidth,inHeight),(0,0,0),swapRBFalse,cropFalse)net。setInput(inpBlob)outputnet。forward()Houtput。shape〔2〕Woutput。shape〔3〕Emptylisttostorethedetectedkeypointspoints〔〕foriinrange(nPoints):confidencemapofcorrespondingbodyspart。probMapoutput〔0,i,:,:〕FindglobalmaximaoftheprobMap。minVal,prob,minLoc,pointcv2。minMaxLoc(probMap)Scalethepointtofitontheoriginalimagex(frameWidthpoint〔0〕)Wy(frameHeightpoint〔1〕)Hifprobthreshold:以上未修改修改处:将frame改为outcv2。circle(out,(int(x),int(y)),8,(0,255,255),thickness1,lineTypecv2。FILLED)cv2。putText(out,{}。format(i),(int(x),int(y)),cv2。FONTHERSHEYSIMPLEX,1,(0,0,255),2,lineTypecv2。LINEAA)以下未修改Addthepointtothelistiftheprobabilityisgreaterthanthethresholdpoints。append((int(x),int(y)))else:points。append(None)DrawSkeletonforpairinPOSEPAIRS:partApair〔0〕partBpair〔1〕ifpoints〔partA〕andpoints〔partB〕:以上未修改修改处:将frame改为outcv2。line(out,points〔partA〕,points〔partB〕,(0,255,255),3,lineTypecv2。LINEAA)cv2。circle(out,points〔partA〕,8,(0,0,255),thickness1,lineTypecv2。FILLED)cv2。circle(out,points〔partB〕,8,(0,0,255),thickness1,lineTypecv2。FILLED)修改处:将frame改为outcv2。putText(out,timetaken{:。2f}sec。format(time。time()t),(50,50),cv2。FONTHERSHEYCOMPLEX,。8,(255,50,0),2,lineTypecv2。LINEAA)cv2。imshow(OutputSkeleton,out)vidwriter。write(out)vidwriter。release()
  4小结
  4。1讲解非常仔细,操作非常简单,是在源代码进行修改,非终端输入法,直接点击微软编辑器运行按钮即可。
  4。2采用摄像头获取实时个人视频,可能有点卡,但是生成视频文件播放应该是正常的,可以试试。我没有试过。
  希望大家喜欢。
投诉 评论

大学里明明有公共洗衣机,为什么很多人建议学生手洗衣物?每到秋天和冬天,许多学生都会产生特别大的烦恼,其中,大部分烦恼来自自己没有办法手洗衣服。并不是因为学生不会洗衣服,而是冬天的衣服多以棉服和毛衣为主,手洗拧干是一个特别复杂的过程……女教师错发消息到家长群,想撤回已来不及,令人感到尴尬学生的成长和教育离不开老师和家长的引导,有时为了做到平衡家庭教育和学院教育之间的关系,教师和学生家长之间也需要建立起即时的沟通关系网,以便对学生可能会出现的意想不到的状况做好及……特殊年份的巾帼担当贵州省黔南州妇联五个聚焦引领全州妇女发挥半2020年,是极不平凡的一年。这一年我们聚焦中心大局,我们忠实履行引领服务联系政治职责,我们组织广大妇女助力打赢两场战役,我们在完成十三五圆满收官的具体实践中唱响主旋律,共克时……人体骨架舞OpenPose用pythonopencv实现1说明1。1本次基于OpenPose用pythonopencv高级实现人体骨架舞,再次细化并写这篇文章,是为了回答我的一位粉丝的疑问。1。2基于我的第一篇文章:《O……金庸小说练过九阴白骨爪的有7人,唯有黄药师错的最离谱金庸小说:练过九阴白骨爪的有7人,唯有黄药师错的最离谱说起金庸的大名,想必应该是没有几个人是不知道的。作为咱们国家非常有名的武侠小说的作家,他所著的武侠小说可谓是非常多的……ampampquot年轻丈母娘ampampquot火了,新郎人们常说没有丑女人,只有懒女人,这句话虽然有一定的道理但也未必十分准确,因为不管如何打扮底子都很重要。比如网络上火起来的几个视频,在一些婚礼上明明盛妆打扮的新娘子才是主角,可因……我和我的家乡天下的彭楼有许多个,我最爱山东鄄城的这一个历史中的古老楼舍,记忆中的热闹戏楼,眼跟前的排排楼房,在交相辉映中彰显着精彩,使众多身在外乡的彭楼人,耳边又响起遥远的童谣,心中又唤醒美好的回忆,眼前又浮现灿烂的梦想。彭……孩子撒泼打滚管不了?学学这几招没孩子之前,觉得养孩子一定很简单,作为妈妈,只要我能给他满满的爱,给他讲道理,孩子一定能成长得很优秀。但是真正有了孩子后,才发现,在与孩子的相处中,并不是一直都母慈子孝,偶尔也……孩子到底几岁分房睡?该怎么培养孩子独立入睡孩子一直和父母睡会导致性早熟。这么大了还一起睡啊?这样不利于培养孩子的独立性。现在还不分开睡啊,到时候就很难分了。生活中总是会有这样的声音围绕着我们,很多家长一直对要不要……教师资格证考试复习资料3中华人民共和国教育师法》:(简称《教育法》)于1993年10月31日届入大常委会四次会议通过,1994年1月日起,实行。它的颁布实施体现了党和国家对人民教师的重视,对保证……三孩政策来了,大胆生来自《新闻联播》的消息,中共中央政治局5月31日召开会议,审议《关于优化生育政策促进人口长期均衡发展的决定》。会议指出,进一步优化生育政策,实施一对夫妻可以生育三个子女政策及配……泸州实验中学将整体搬迁,在你家附近吗近段时间,有不少网友咨询关于泸州实验中学整体搬迁的问题,相关职能部门也是在第一时间给予了回复。泸州实验中学泸州实验中学由两所具有悠久历史的原泸州市长江中学和原泸州市……
宝宝喜欢乱涂乱画,别急着训斥,兴趣启蒙让孩子成为艺术家宝宝第2个月,宝妈和其他家人怎么做,才能促进宝宝的大脑发育呢郑州孕妇怀上八胞胎为什么反响这么大?男人为什么在得到你之后,会逐渐变得冷淡宝贝成长记关注孟晚舟案证据公开!这家银行构陷,这个国家一手炮制老人进手术室前突发咯血死亡,家属不理解怎么人就没了,医生后怕小学一二年级不笔试,减负之后,孩子的时间应该用来做什么?夏日的雨(烟花来袭)对婚姻最大的威胁,不是外遇,而是陪娃写作业婆婆有没有把儿媳当自家人,从这几点可以看出,不想承认也不行壹教心理早期依恋模式对后期成长的影响小学5年级关于春节的作文锦集大学生毕业论文的致谢词外语退出主科地位?教育部回应了指甲有横纹竖纹白色斑点,是咋回事呢?不妨了解一下种瓜得瓜,种豆得豆公告精选长安新能源增资扩股确定投资方泰和新材等业绩大幅预增阮郎归(劝袁制机酒)资产不错的张飞,傲视天下的关羽,为何甘愿拜刘备为兄长?故事里的人生(6一个半朋友)翻一圈告别单调马尾怎样办理护照?公司出资额和出资时间有什么规定

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利