应用办公生活信息教育商业
投稿投诉
商业财经
汽车智能
教育国际
房产环球
信息数码
热点科技
生活手机
晨报新闻
办公软件
科学动态
应用生物
体育时事

小kiss!Yolov3的汽车车牌定位python实现

  1说明:
  1。1对于强大的yolov3来说,汽车车牌的定位,太简单了!
  1。2技术要点:对蓝底和白底车牌超强定位,正面的、侧面的均可。
  1。3环境:yolov3python3。8OpenCV4。2。0华为笔记本电脑deepinlinux操作系统。
  1。4图片来自今日头条正版免费图库,仅供学习,注释讲解,小白秒懂。
  pic1:原图
  pic2:定位图
  pic3:原图
  pic4:定位图
  pic5:原图
  pic6:定位图
  2yolov3的三个文件:
  2。1下载地址:https:www。kaggle。comachrafkhazriyoloweightsforlicenceplatedetector下载速度超级快
  2。2图:
  2。3文件结构:
  2。4操作示范:
  图片定位,视频省略
  3main。py代码:
  3。1注意本代码可以进行图片车牌定位,也可以进行视频和摄像头视频定位。强!!
  3。2完整代码:第1步:使用说明文件所在目录下终端输入Usageexample:python3main。pyvideocar。mp4python3main。pyimagetest。jpeg本机:python3。8main。pyimagetest。jpeg第2步:模块导入importcv2ascvimportargparseimportsysimportnumpyasnpimportos。path第3步:初始化参数InitializetheparametersconfThreshold0。5Confidencethreshold过滤弱检测的最小概率nmsThreshold0。4Nonmaximumsuppressionthreshold非最大值抑制阈值inpWidth416608WidthofnetworksinputimageinpHeight416608Heightofnetworksinputimageargparse库可以让我们直接在命令行中就可以向程序中传入参数并让程序运行parserargparse。ArgumentParser(descriptionObjectDetectionusingYOLOinOPENCV)parser。addargument(image,helpPathtoimagefile。)parser。addargument(video,helpPathtovideofile。)argsparser。parseargs()第4步:加载yolov3文件classesFileclasses。names在图片或视频上框上的名字classesNonewithopen(classesFile,rt)asf:classesf。read()。rstrip()。split()modelConfigurationdarknetyolov3。cfgmodelWeightslapi。weights;加载网络、配置权重netcv。dnn。readNetFromDarknet(modelConfiguration,modelWeights)一般情况都是使用opencvdnn作为后台计算net。setPreferableBackend(cv。dnn。DNNBACKENDOPENCV)表示在CPU设备上使用net。setPreferableTarget(cv。dnn。DNNTARGETCPU)第5步:函数定义Getthenamesoftheoutputlayers获取名字:车牌仅仅一个:LPdefgetOutputsNames(net):GetthenamesofallthelayersinthenetworklayersNamesnet。getLayerNames()Getthenamesoftheoutputlayers,i。e。thelayerswithunconnectedoutputsreturn〔layersNames〔i〔0〕1〕foriinnet。getUnconnectedOutLayers()〕画预测绿色框boxDrawthepredictedboundingboxdefdrawPred(classId,conf,left,top,right,bottom):Drawaboundingbox。cv。rectangle(frame,(left,top),(right,bottom),(0,255,0),3)label。2fconfGetthelabelfortheclassnameanditsconfidenceifclasses:assert(classIdlen(classes))labels:s(classes〔classId〕,label)DisplaythelabelatthetopoftheboundingboxlabelSize,baseLinecv。getTextSize(label,cv。FONTHERSHEYSIMPLEX,0。5,1)topmax(top,labelSize〔1〕)红色文字框cv。rectangle(frame,(left,topround(1。5labelSize〔1〕)),(leftround(1。5labelSize〔0〕),topbaseLine),(0,0,255),cv。FILLED)黑色文字显示cv。putText(frame,label,(left,top),cv。FONTHERSHEYSIMPLEX,0。75,(0,0,0),2)定位过程函数defpostprocess(frame,outs):获取宽和高frameHeightframe。shape〔0〕frameWidthframe。shape〔1〕初始化三个列表classIds〔〕confidences〔〕boxes〔〕类似yolov3的目标检测读取foroutinouts:print(out。shape:,out。shape)fordetectioninout:scoresdetection〔5:〕classIdnp。argmax(scores)confidencescores〔classId〕ifdetection〔4〕confThreshold:print(detection〔4〕,,scores〔classId〕,th:,confThreshold)print(detection)ifconfidenceconfThreshold:centerxint(detection〔0〕frameWidth)centeryint(detection〔1〕frameHeight)widthint(detection〔2〕frameWidth)heightint(detection〔3〕frameHeight)leftint(centerxwidth2)topint(centeryheight2)classIds。append(classId)confidences。append(float(confidence))boxes。append(〔left,top,width,height〕)indicescv。dnn。NMSBoxes(boxes,confidences,confThreshold,nmsThreshold)foriinindices:ii〔0〕boxboxes〔i〕leftbox〔0〕topbox〔1〕widthbox〔2〕heightbox〔3〕画出预测框:绿色框和文字框drawPred(classIds〔i〕,confidences〔i〕,left,top,leftwidth,topheight)第6步:图片和视频判定如果是视频,则在根目录下动态显示目标检测或者车牌检测的视频outputFileyolooutpy。avi图片判定if(args。image):Opentheimagefileifnotos。path。isfile(args。image):print(Inputimagefile,args。image,doesntexist)sys。exit(1)capcv。VideoCapture(args。image)在当前目录下输出outputFileargs。image〔:4〕yolooutpy。jpg视频判断elif(args。video):Openthevideofileifnotos。path。isfile(args。video):print(Inputvideofile,args。video,doesntexist)sys。exit(1)capcv。VideoCapture(args。video)当前目录下输出完成后的视频outputFileargs。video〔:4〕yolooutpy。avi摄像头判断else:Webcaminputcapcv。VideoCapture(0)如果不是图片,那么写入视频设置Getthevideowriterinitializedtosavetheoutputvideoif(notargs。image):vidwritercv。VideoWriter(outputFile,cv。VideoWriterfourcc(M,J,P,G),30,(round(cap。get(cv。CAPPROPFRAMEWIDTH)),round(cap。get(cv。CAPPROPFRAMEHEIGHT))))第7步:循环whilecv。waitKey(1)0:视频类判定getframefromthevideohasFrame,framecap。read()StoptheprogramifreachedendofvideoifnothasFrame:print(Doneprocessing!!!)print(Outputfileisstoredas,outputFile)cv。waitKey(3000)breakCreatea4Dblobfromaframe。blobcv。dnn。blobFromImage(frame,1255,(inpWidth,inpHeight),〔0,0,0〕,1,cropFalse)Setstheinputtothenetworknet。setInput(blob)Runstheforwardpasstogetoutputoftheoutputlayersoutsnet。forward(getOutputsNames(net))Removetheboundingboxeswithlowconfidencepostprocess(frame,outs)Putefficiencyinformation。ThefunctiongetPerfProfilereturnstheoveralltimeforinference(t)andthetimingsforeachofthelayers(inlayersTimes)t,net。getPerfProfile()labelInferencetime:。2fms(t1000。0cv。getTickFrequency())左上角输出红色的文字:耗时,暂时注释掉cv。putText(frame,label,(0,15),cv。FONTHERSHEYSIMPLEX,0。5,(0,0,255))写入设置if(args。image):cv。imwrite(outputFile,frame。astype(np。uint8))else:vidwriter。write(frame。astype(np。uint8))

微软发布国际地理南极高级版新Windows10主题据外媒报道,日前,微软发布了《国家地理南极高级版(NationalGeographicAntarcticaPREMIUM)》,这是一个全新的主题包,里边含有12张高质量的4K壁……有关女性的魅力问:男性在什么场合下看到的女性印象最好,什么时候印象最坏?答:对这个问题可举出两点。一是仪表容姿,二是温文尔雅。比如早晨男人们往往是睡眼朦胧地去吃早饭,此时如果他们看到女……守望先锋获得侵权胜诉,4399抄袭原创遭赔偿397万元近日,上海浦东法院对《守望先锋》诉讼4399旗下两款手游《英雄枪战》、《枪战前线》侵犯著作权案作出一审判决。认定被告的两款游戏构成对《守望先锋》游戏整体画面类电子作品著作权的侵……让孩子正确识别大小代码教具操作解析刚才罗妈妈给大家分享了一组教具:https:mp。toutiao。comprofilev3graphicpreview?pgcid6810341117528113676……开源隐私浏览器Brave推出1。0正式版免费开放源码的Brave浏览器,已于今日发布了1。0正式版。在Beta测试期间,它就已经吸引了800万的越活用户。但是现在,完整稳定版已向Windows、macOS、Linux……微软砍掉Windows10我的人脉功能未来更新中将移除Windows10November2019功能更新已经开放下载,在修复诸多BUG和改善后台性能的同时微软也移除了很多过时,或者使用频率不高的应用程序。根据今天更新的支持文档,重……海南黄花梨为什么这么贵?可能贵在这四个字上【海南黄花梨】从明代开始就已经备受喜欢和推崇,在那个时期就开始大量砍伐用做家私了!几百年过去了,人们对海南黄花梨的热爱也没有减少,更有愈加强烈之势。文玩人生。记得收藏哦!……微软否认X019会有新主机消息等到明年就有了今天,微软Xbox游戏市场宣传经理阿伦middot;格林伯格(AaronGreenberg)在推特上回应网友,X019不会宣布新主机XboxScarlett的消息,新主机的情况……去北上广打拼更好,还是回小县城考编制,学生家长矛盾增加近年来,随着社会时代的发展,未来寻求更好的就业,很多学生大学刚刚毕业,在找工作的时候,就把目标定在了北上广深这一类在国内算得上发展相当不错的城市,削尖脑袋就为了跻身进去谋求自己……iOS13。3iPadOS13。3tvOS13。3开发者Be苹果于今天发布了iOS13。3,iPadOS13。3,tvOS13。3和watchOS6。1。1的第二轮Beta测试,参与测试项目的开发者可以通过AppleDeveloperC……Windows10Build18362。476发布修复Key面向尚处于支持状态的Windows10版本,在本月的补丁星期二活动日中微软推出了一系列累积更新。和往常一样,本次更新为仅安全更新,并不包含其他方面的改进。值得注意的是,Wind……饿了么联动PS4大作死亡搁浅网友热议11月8日,小岛秀夫全新大作《死亡搁浅》正式登陆PS4平台,经历了最初媒体评分两极分化的短暂混乱之后,玩家几乎一边倒好评,由此看来ldquo;跌落神坛rdquo;的并非小岛秀夫……
安吉胖若两人?爸爸去哪儿8年后那些小孩都怎样了?前两天,久不出现的安吉上了热搜原因是观看爸爸沙溢新电影时的可爱发言安吉称,自己差点没有认出爸爸沙溢,而且还童言无忌地表示:像个大狗熊一样。且不说这部电影……补课机构凉了,面对现状家长会就此躺平吗,答案一目了然最近,随着教育的竞争日渐激烈,家长鸡娃的现象越发严重,补课机构的出现表面上看似是消除了家长的焦虑,提高了学生的成绩。但是在深层次上看来,整体的竞争更加激烈,家长深陷焦虑,……长大后容易吃亏的,往往是这几种孩子俗话说,三岁看大,七岁看老,孩子在成长过程中形成的习惯与个性,将会追随孩子的一生,对他以后的生活和发展都起着至关重要的影响,并且很难有所改变。所以在孩子较年幼的时候,如果有一下……穷人和富人的差别在哪?鲁迅聪明的人,做正确的选择著名作家陶杰曾经写过一本书,名为《杀鹌鹑的少女》。你或许没有听说过这本书的名字,但你应该读过书中的这段话当你老了,回顾一生,就会发觉:什么时候出国读书、什么时候决定做第一……人大代表建议产假3年,评论区10000条反对,曝光女性最无奈最近,关于三孩政策的讨论,可谓热火朝天。政策发布当天,人大代表朱列玉就提议:延长产假至三年。他认为,导致年轻人不愿意生育,原因有二:一是子女照看成本越来越高;二是没……翅膀硬了!告辞近期流传的几份00后辞职报告人是会说话,有灵活的双手和头脑生下来就会开口发声的动物哲学家海德格尔说:人说话说话被认为是人独有的,而语言被认为是辨别人类最重要的特征然而我们也说……强迫症的本质调节体内激素平衡的行为成瘾所谓瘾,就是人把手段当目的,形成对手段的强烈依赖。比如运动是为了身心健康,但是不运动就难受,追求运动则很可能会伤害健康。强迫症就是典型的人过度依赖某些影响自己健康或他人关系的一……这些温暖美好适合猫冬的好地方,光看图也能让人心情愉悦天气越来越冷了,小爱一家人在没来暖气的日子里,经常会盖着毯子缩在沙发上幻想。猪队友说:我不冷,我正在南方泡着不冷不热的温泉呢吞金兽说:我不冷!我正在大太阳下面喂小动……不准辞职不让跑,逼人回家去啃老?大家好,我是石中剑,一个努力推广中华优秀传统文化的年轻人。最近有一个新闻不知道各位有没有注意到:浙江频繁辞职加入征信系统。可能有些人不太清楚征信是什么,简单说来就是……师范大学毕业的学生,将来毕业直接能当老师?网友直言想法太天真教师,应该是很多追求稳定学生的理想选择。和公务员、医生的职业一样享有正规编制的教师,因其工作性质的稳定,吸引很多人报考。尤其是对女生而言,成为老师是一个很理想的职业。每年……这才是我想要的语文书寻找写作秘诀,解析名家写作密码你回忆下自己曾经学的语文课本,有什么感觉?我自己的感觉就是枯燥,无趣,本身没有太多故事,很多深奥的东西,在我们那个年龄并没有深刻的感受到作者的意图和写作方式。作者叶开,是……经验分享努力做好父亲的角色(二十)出国选学校要切合自己的实力出国学习这事其实是有很多的学问的,首先就是要根据自己的孩子选定学校的,既不能好高骛远的不切合实际盲目追求名牌大学,也不能只听中介的推荐,因为中介……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网