游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

deepstream实践Gstnvinfer插件

  学习deepstream插件,首先要了解推理插件,它运行AI模型实现推理,是核心插件。在了解完推理插件后,可以在此基础上了解其他插件的功能。
  Gstnvinfer插件是deepstream推理插件之一,它使用NVIDIATensorRT对输入图像数据进行推理。Gstnvinfer框架
  下图Gstnvinfer插件框架图,该插件接受来自上游的NV12RGBA批量缓冲数据,NvDsBatchMeta结构必须已经添加到GstBuffer。底层库(libnvdsinfer)对具有高、宽维度的INT8RGB、BGR或GRAY数据进行处理。Gstnvinfer插件根据网络要求对输入帧进行转换(格式转换和缩放),并将转换后的数据传递给底层库。底层库对转换后的帧进行预处理(执行归一化和均值减法)并生成最终的浮点RGBBGRGRAY平面数据,数据传递给TensorRT引擎进行推理。
  nvinfer框架
  Gstnvinfer目前适用于以下类型的网络:
  多类型目标检测;多标签分类;语义分割;实例分割
  Gstnvinfer插件可以在三种模式下工作:主模式:处理全帧;次要模式:对上游组件在元数据中添加的对象进行处理预处理张量输入模式:对上游组件添加的张量进行处理
  在预处理张量输入模式下运行时,会完全跳过Gstnvinfer内部预处理。Gstnvinfer查找添加到输入buffer的GstNvDsPreProcessBatchMeta并将张量原封不动传递给TensorRT推理函数。此模式目前支持处理全帧和ROI。GstNvDsPreProcessBatchMeta由Gstnvdspreprocess插件添加。
  当Gstnvinfer与跟踪器插件一起作为二级分类器运行时,它把分类输出缓存在以对象的唯一ID作为键的map中,避免重复推断每一帧中的相同对象来提高性能。即当对象首次出现在框架中(基于对象ID)或对象的大小(边界框区域)增加20或更多时,才会推断对象。注意此优化仅当将跟踪器添加为上游元素时,才可能进行。
  Gstnvinfer下游组件接收一个Gstbuffer,其中包含未修改的NV12RGBA数据以及经Gstnvinfer插件推理后创建的元数据。该插件可用于级联推理,即可以直接对输入数据进行一级推理,然后对一级推理的结果进行二级推理,以此类推。Gstinfer输入输出
  输入:GstBufferNvDsBatchMeta(包含NvDsFrameMeta)Caffe模型和CaffePrototxtONNXUFF文件TAO编码模型和Key离线:支持TAOSDK工具箱转换模型产生的engine文件Layers:支持TensorRT支持的所有Layers
  控制参数:
  Gstnvinfer从配置文件中获取控制参数。通过GObject属性也可以设置Gstnvinfer控制参数,它可以设置下面这些参数:Batch大小推理间隔帧数添加推理输出张量为buffer元数据添加实例mask输出到对象元数据通过GObject属性设置的参数会覆盖通过配置文件设置的参数
  输出:GstBuffer根据网络类型和配置参数会输出下面的一种或几种数据:
  NvDsObjectMeta,NvDsClassifierMeta,NvDsInferSegmentation,MetaNvDsInferTensorMeta学习Gstnvinfer配置文件
  参见https:www。toutiao。comarticle7096632112018686497,我们分析安装deepstream后得到的deepstreamapp配置文件样例来学习如何设置Gstnvinfer属性。
  下面是配置了caffe模型的Gstnvinfer配置文件configinferprimarynano。txt,对主要的属性做了注释。〔property〕gpuid0把输入从0255转换到01的比例值netscalefactor0。0039215697906911373caffe模型文件,存储了权重、偏置信息,并存储了网络结构信息modelfile。。。。modelsPrimaryDetectorNanoresnet10。caffemodelcaffe模型网络结构信息protofile。。。。modelsPrimaryDetectorNanoresnet10。prototxt模型识别处的物体类别标签labelfilepath。。。。modelsPrimaryDetectorNanolabels。txt最多一次预测8帧batchsize81处理整帧图像;2只处理预测出来的对象区域processmode1输入模型网络图像格式,0RGB;1BGR;2GRAYmodelcolorformat00FP32,1INT8,2FP16mode,预测网络使用的数据精度networkmode2预测出来的对象种类数量numdetectedclasses4每隔一帧图像预测一次interval1nvinfer标志id,用来标记,无其他作用gieuniqueid1预测模型网络输出层名称outputblobnamesconv2dbbox;conv2dcovSigmoid1:隐式batch维度,0:显式batch维度,使用onnx时需要设置为显式batch维度;模型网络使用动态tensor维度时,也需要设置为显式batch维度forceimplicitbatchdim1〔classattrsall〕preclusterthreshold0。2groupthreshold1eps0。2roitopoffset0roibottomoffset0detectedminw0detectedminh0detectedmaxw0detectedmaxh0
  在配置文件中,若没有指定模型的engine文件,需要根据情况指定以下属性:int8calibfile(只有在模型进行了INT8量化时使用)若使用Caffe模型,需要指定下列属性:modelfile,protofile,outputblobnames若使用uff模型,需指定下列属性:ufffile,inputdims,uffinputblobname,outputblobnames
  对于目标检测,必须设置属性:numdetectedclasses。下面属性是可选的:clustermode:默认是GroupRectanglesinterval:只有在主模式下起作用,默认值是0clustomlibpath:用户自定义bbox解析动态库路径
  parsebboxfuncname:用户自定义解析bbox函数名。
  clustomlibpath需要与parsebboxfuncname一起配合使用
  对于分类,必须设置的属性有:
  classifierthreshold,isclassifier
  可选属性classifierasyncmode,只有在次模式下起作用,默认值是false
  在次模式下,可选的属性有:operateongieid:此Gstnvinfer实例要处理的metadata中必须包含的Gstnvinfer实例id,默认值0operateonclassids:此Gstnvinfer实例要处理对象的分类id。
  譬如主Gstnvinfer目标检测实例,能检测4种类型物体,汽车、自行车、人、路标,它们的分类id是0;1;2;3,若operateonclassids0;表示此Gstnvinfer实例会对汽车分类。默认是对目标检测出的所有类型物体进行分类。inputobjectminwidth,inputobjectminheight
  inputobjectmaxwidth,inputobjectmaxheight
  batchsize:每次都推荐设置一个合适值,默认值是1操作Gstnvinfer配置文件
  上一节介绍了Gstnvinfer配置文件各属性作用。这节通过简单例子介绍如何修改Gstnvinfer配置文件。
  上一节Gstnvinfer配置文件使用了caffe模型文件,bbox处理函数是默认的方法。使用caffe模型转换后的tensorrtengine文件,bbox处理函数使用用户自定义函数如何配置呢?可以看下面的配置,与上一节的配置文件相比modelfile和protofile换成了modelenginefile,添加了parsebboxfuncname和customlibpath属性。
  安装deepstream后,开源的部分代码中给出了用户自定义处理函数样例,此部分代码路径:
  {pathofdeepstream}sourceslibsnvdsinfercustomparser,{pathofdeepstream}是deepstream的安装路径。〔property〕gpuid0把输入从0255转换到01的比例值netscalefactor0。0039215697906911373模型gpu加速后的tensorrt模型文件modelenginefile。。。。modelsPrimaryDetectorNanoresnet10。caffemodelb8gpu0fp16。engine模型识别出的物体类别标签labelfilepath。。。。modelsPrimaryDetectorNanolabels。txt最多一次预测8帧batchsize81处理整帧图像;2只处理预测出来的对象区域processmode1输入模型网络图像格式,0RGB;1BGR;2GRAYmodelcolorformat00FP32,1INT8,2FP16mode,预测网络使用的数据精度networkmode2预测出来的对象种类数量numdetectedclasses4每隔一帧图像预测一次interval1nvinfer标志id,用来标记,无其他作用gieuniqueid1预测模型网络输出层名称outputblobnamesconv2dbbox;conv2dcovSigmoid1:隐式batch维度,0:显式batch维度,使用onnx时需要设置为显式batch维度;模型网络使用动态tensor维度时,也需要设置为显式batch维度forceimplicitbatchdim1用户自定义解析bbox函数名parsebboxfuncnameNvDsInferParseCustomResnet用户自定义bbox解析动态库路径customlibpathhomenvidiadeepstreamsourceslibsnvdsinfercustomparserlibnvdsinfercustomparser。so〔classattrsall〕preclusterthreshold0。2groupthreshold1eps0。2roitopoffset0roibottomoffset0detectedminw0detectedminh0detectedmaxw0
  下面介绍deepstreamapp配置文件如何调用Gstnvinfer插件对于主模式Gstnvinfer,configfile是必须要配置的。若配置属性与Gstnvinfer属性一致,会覆盖Gstnvinfer对应属性〔primarygie〕确定调用Gstnvinfer主模式enable1使用0号GPU,会覆盖Gstnvinfer配置文件中对应属性gpuid0模型gpu加速后的tensorrt模型文件,会覆盖Gstnvinfer配置文件中对应属性modelenginefile。。。。modelsPrimaryDetectorNanoresnet10。caffemodelb8gpu0fp16。engine最多一次预测1帧,会覆盖Gstnvinfer配置文件中对应属性batchsize1用于OSD,不是Gstnvinfer属性bboxbordercolor01;0;0;1bboxbordercolor10;1;1;1bboxbordercolor20;0;1;1bboxbordercolor30;1;0;1每隔4帧图像预测一次,会覆盖Gstnvinfer配置文件中对应属性interval4给Gstnvinfer实例设置的唯一id,用于区分不同实例产生的metadata,会覆盖Gstnvinfer配置文件中对应属性gieuniqueid1设置推理输出配置的cuda内存类型nvbufmemorytype0Gstnvinfer配置文件路径configfileconfiginferprimarynano。txt保存推理原始结果的文件路径inferrawoutputdirhomenvidiaworkspacestudy对于次模式Gstnvinfer,configfile是必须要配置的。若配置属性与Gstnvinfer属性一致,会覆盖Gstnvinfer对应属性〔secondarygie0〕确定调用Gstnvinfer次模式enable1模型gpu加速后的tensorrt模型文件,会覆盖Gstnvinfer配置文件中对应属性modelenginefile。。。。modelsSecondaryVehicleTypesresnet18。caffemodelb16gpu0int8。engine使用0号GPU,会覆盖Gstnvinfer配置文件中对应属性gpuid0最多一次预测16帧,会覆盖Gstnvinfer配置文件中对应属性batchsize16给Gstnvinfer实例设置的唯一id,用于区分不同实例产生的metadata,会覆盖Gstnvinfer配置文件中对应属性gieuniqueid4此Gstnvinfer实例要处理的metadata中必须包含的Gstnvinfer实例id,会覆盖Gstnvinfer配置文件中对应属性operateongieid1此Gstnvinfer实例要处理对象的分类id。譬如主Gstnvinfer是目标检测实例,能检测4种类型物体,汽车、自行车、人、路标,汽车的分类id是0,此Gstnvinfer实例对汽车分类此属性会覆盖Gstnvinfer配置文件中对应属性operateonclassids0;Gstnvinfer配置文件路径configfileconfiginfersecondaryvehicletypes。txt
  本文介绍了如何配置deepstreamGstnvinfer插件,相信了解这些后,可以轻松配置deepstreamapp,调用Gstnvinfer进行模型推理。
  参考:https:docs。nvidia。commetropolisdeepstreamdevguidetextDSplugingstnvinfer。html

家里的空气净化器,在什么情况下需要24小时开启?随着生活水平的不断提高,很多家庭对空气质量也有了更高的要求,空气净化器已经成为提升家居舒适度的刚需产品。空气净化器需要24小时开启吗?在天气晴好,室外空气质量优良的……高端访谈中国收入分配现状与问题2020年一项调查发现,83以上的人认为,中国当前收入差距非常大或比较大。李建伟国务院发展研究中心社会发展研究部部长当前中国收入差距现状从各国发展的历史经验看,居民……浮光掠影谁在萍踪浪迹中如白驹过隙?若一挽低低呜咽着的箫韵摇动三月秦淮水,心情满溢了难以言说的娇翠之绿,欲滴、如泪遥追的思绪,引领苍鹰的心飞到了一个地方:那么多的繁花开放,那么多的莺歌燕舞。风儿清新而……牛仔裤这4双鞋子,让你时髦整个冬季,好看又舒适嗨,各位小仙女们,大家好呀!喜欢穿牛仔裤吗?相信,对于这种款式的裤子,都很了解吧?众所周知,它百搭经典也十分耐看,不管怎么搭配都很好看,也适合运用在各种场合穿搭上。那么,……海南共3家民宿入选全国首批甲级乙级旅游民宿名单23日,全国旅游标准化技术委员会发布了《关于甲级、乙级旅游民宿的公告》,确定31家民宿为甲级旅游民宿,27家民宿为乙级旅游民宿。其中,我省3家民宿榜上有名,无所归止精品民宿拟被……(国际)泰国举办国际风筝节2022年泰国国际风筝节22日至24日在泰国南部碧武里府七岩海滩举行,来自多个国家的表演队为观众进行了精彩的风筝表演。此次风筝节由泰国国家旅游局与碧武里府合作举办,主题为炫彩天……别再用三四百的洗面奶了!试一试便宜的糯米粉,洗完嫩滑的不行现在的洗面奶花样真是越来越多了,不仅贵,里面的成分还让人不放心,这种东西真没必要买这么贵的呀!大家可以像我一样试试用糯米粉,效果一样好我用了这么多年了,皮肤依旧光滑细嫩的。……荣耀80系列配置曝光,1。6亿像素主摄,或将在11月22日发前不久,荣耀官宣将会在11月22日23日举办荣耀MagicOS暨旗舰新品发布会,除了会发布新的MagicOS操作系统以外,预计还会发布荣耀80系列手机、折叠屏手机以及平板电脑。……预警7月汽车销量或大跌超30,新能源汽车价格战小鹏先降价北京时间7月21日,关于小鹏汽车变相降价促销有了最新的消息,有消息显示小鹏开了一次内部会,谈到了小鹏为何降价促销、将会持续多久。受到小鹏降价促销消息的影响,小鹏汽车美股这周每天……用过小米12S后才知道中杯也是很香的有很多朋友在小杯、中杯和大杯版本里面会优选考虑小杯的手机,不好意思,应该是中杯、大杯和超大杯,你选的是中杯大家看我评测过的手机也比较多了,有粉丝朋友留言说总是看我推荐大杯和超大……图解新能源汽车电池出口和新能源汽车出口解析上半年动力电池产量累计206。4GWh,对应的动力电池累计装车量110。1GWh,里面大概有96。3GWh的差距。我一直在思考这些电池在哪里,但是从海关总署的数据来看,也算找到……客家公园导游词导游词是导游人员引导游客观光游览时的讲解词,是导游员同游客交流思想,向游客传播文化知识的工具,也是应用写作研究的文体之一。以下小编为大家收集了有关于客家公园导游词,希望对你有所……
我长期坚持的5个储蓄习惯,让钱包越来越鼓头条创作挑战赛1hr不把鸡蛋放在一个篮子里。很多人都喜欢把钱攒够整数然后放一起去存银行。但是这种方法其实很伤财,而且难以抵御突发风险。以10万为例,假如你直接……欧冠1多特蒙德阿德耶米一条龙破门菲利克斯中框北京时间2月16日凌晨4点,202223赛季欧洲足球冠军联赛18决赛首回合,德甲球队多特蒙德坐镇主场迎战英超豪门切尔西。上半场,蒂亚戈席尔瓦手球破门无效,菲利克斯击中横梁;下半……血瘀百病生,血虚体质弱!一个中成药,活血补血,适用这8类人群血瘀阻络百病生,精血不足体质弱!大家好我是屈医生,今天给大家分享一个中成药,能够活血、补血、通络。这个中成药就是鸡血藤颗粒,它由鸡血藤这一味药组成,能够补血止血,活血通络……刺激!贝弗利险成罪人,莫兰特关键时刻传球,双状元罚球救赎4月24日,NBA季后赛结束了一场焦点战,森林狼主场1分优势险胜灰熊,顽强的将系列赛扳成22平,黑七的悬念继续延续。这一组对决是青春风暴的PK,两队有太多青年才俊,他们的表现都……勇士5连胜收官,克莱轰41分!季后赛首轮对手确定,勇士迎利好北京时间4月11日,NBA常规赛继续进行,今天是常规赛收官战,勇士客场对阵鹈鹕。在昨天的比赛中,克莱休息,勇士凭借普尔最后阶段的表现,险胜马刺,但是并没有确定西部第三的位置,所……卖油的鲁花突然卖酱,来白酒圈是投资还是投机近日,鲁花在其会员商场小程序上,发售了两款鲁花经典酱香酱香型白酒,在白酒行业里掀起了不小的波澜。我们以往对鲁花这个品牌的印象,都是粮油产品,如今突然推出酱香型白酒,让很多人都一……牛爱芳出面道歉,承认欺骗粉丝,年入600万,在市区有7套房1最近牛爱芳夫妇的事情在网上引发了网友们的热切讨论,他们是一对夫妻,在网上塑造了一种虽然我们贫穷,但是我们积极向上,乐观对待生活的心态,获得了不少网友们的好感。短短一年的时……任何时候都可以发的无风格文案时间才是最好的法官,是非成败,我们未来见。自己把自己说服了,是一种理智的胜利。选择你所热爱的,热爱你所选择的。生活不是为了钱,但想要的生活都需要钱。人生……如何科学食用野菜?消费提示请查收食品安全民以食为天食以安为先春夏之交,大地回暖,各种野菜生机勃勃竞相长出。我国可以食用的野菜有很多,食用的历史也很悠久,不过很多野菜虽然好吃,但部分却有毒,若是食用……最新款物联网智能水表,更智能更贴近人们的生活随着科技的发展,几乎将所有的产品都套上了智能的光圈,无论是随手用的、还是家里摆的越是智能越受到用户的热捧。就连家用水表也一同被智能水表所取代。如果您对于智能水表还只限于预存水费……两年前旗舰还值得入手吗?小米11Ultra推荐,性价比依旧!经常有朋友问我,预算不到3000元选手机感到非常尴尬,不知道该选择新款中端机,还是老款旗舰呢?从性能角度讲当然是新机更强悍,毕竟半导体摩尔定律还没失效,但从体验角度讲还是应该选……夏吃姜有讲究,记住2个忌吃的时间段,按规矩夏补,安稳度夏老话说冬吃萝卜夏吃姜,不劳医生开药方,夏天多吃姜是我国传统的养生之道,生姜辛辣性温,有姜辣素等活性成分,天热人们喜食寒凉的食物饮品,容易导致外热内寒,出现腹泻等情况,夏天吃姜暖……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网