一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

情况识别方法及执行其的装置与流程

2021-12-08 02:20:00 来源:中国专利 TAG:
1.以下实施例涉及一种情况识别方法及执行其的装置。
背景技术
::2.近年来,人工智能(ai,artificialintelligence)技术已应用于各个领域。基于人工智能的实时图像对象检测技术显示出比传统图像处理方法(如surf、模板匹配(templatematching)及shift等)更好的性能。基于ai的对象检测应用于机器人、自动驾驶及安全摄像头等,从而识别视野内的车辆、物体及人员。3.对于自动驾驶车辆及机器人等,为了正确应对各种情况全面的情况识别能力至关重要。目前,大多数系统使用一种简基于规则的(rule‑based)简单的情况确定方法。然而,在基于规则的系统中,鲁棒性在各种情况下无法保证,因此基于ai的情况识别技术正在开发中。技术实现要素:4.要解决的技术问题5.实施例可以提供一种通过使用单个框架检测图像流中的对象来识别情况的技术。6.解决问题的技术方法7.根据一实施例的情况识别方法,包括以下步骤:从图像流获取特征图(featuremap);基于所述特征图生成对象图(objectmap);以及基于所述对象图识别由所述图像流构成的图像的情况。8.所述情况识别方法还可以包括以下步骤:基于所述特征图检测被包括在所述图像中的对象。9.所述获取步骤可以包括以下步骤:使用卷积层(convolutionlayer)及最大池化层(maxpoollayer)来生成所述特征图。10.所述检测步骤可以包括以下步骤:通过基于所述特征图计算所述对象的类型(type)、类别(class)、位置(position)及区域(area)中的至少一个来检测所述对象。11.所述生成步骤可以包括以下步骤:将所述特征图转换为表示对象存在于所述特征图的每个网格单元(gridcell)中的概率的桥接图(bridgedmap);以及通过在所述桥接图中显示具有阈值以上的概率的区域来生成所述对象图。12.生成所述桥接图的步骤可以包括以下步骤:使用锚框(anchorbox)来计算所述每个网格单元中存在对象的概率值。13.所述情况识别方法还可以包括以下步骤:扩展所述对象图的尺寸。14.所述对象图包括多个对象图,并且,所述识别步骤可以包括以下步骤:根据时间步(timestep)将所述多个对象图中的每一个输入到每个lstm单元中;以及使用最终lstm单元的输出来识别所述图像的情况。15.根据一实施例的情况识别装置包括:包含指令的存储器;以及用于执行所述指令的处理器,并且,当所述指令由所述处理器执行时,所述处理器从图像流获取特征图(featuremap),并基于所述特征图生成对象图(objectmap),并基于所述对象图识别由所述图像流构成的图像的情况。16.所述处理器可以基于所述特征图来检测被包括在所述图像中的对象。17.所述处理器可以使用卷积层(convolutionlayer)及最大池化层(maxpoollayer)来生成所述特征图。18.所述处理器可以通过基于所述特征图计算所述对象的类型(type)、类别(class)、位置(position)及区域(area)中的至少一个来检测所述对象。19.所述处理器可以将所述特征图转换为表示对象存在于所述特征图的每个网格单元(gridcell)中的概率的桥接图(bridgedmap),并通过在所述桥接图中显示具有阈值以上的概率的区域来生成所述对象图。20.所述处理器可以使用锚框(anchorbox)来计算所述每个网格单元中存在对象的概率值。21.所述处理器可以扩展所述对象图的尺寸。22.所述对象图包括多个对象图,并且,所述处理器可以根据时间步(timestep)将所述多个对象图中的每一个输入到每个lstm单元中,并使用最终lstm单元的输出来识别所述图像的情况。附图说明23.图1为显示根据一实施例的情况识别系统的附图。24.图2为图1所示的情况识别装置的示意框图。25.图3为说明图1所示的情况识别装置的操作的附图。26.图4为详细说明图3所示的对象图生成模块的操作的附图。27.图5a至图5c为显示图像帧及对应于图像帧的对象图的附图。28.图6为详细说明图3所示的情况识别模块的操作的附图。29.图7为说明情况识别装置的学习操作的附图。30.图8为显示情况识别装置的学习结果的图表。31.图9a至图9c为显示情况识别装置的基于实时图像流的情况识别结果的附图。具体实施方式32.以下,参照附图对本发明的实施例进行详细说明。可以对以下实施例进行多种变更,因此本技术的权利范围并非受到以下实施例的限制或限定。对所有实施例的全部更改、其等同物乃至其替代物均包括在权利要求范围。33.实施例中使用的术语仅用于说明特定实施例,并非用于限定实施例。在内容中没有特别说明的情况下,单数表达包括复数含义。在本说明书中,“包括”或者“具有”等术语用于表达存在说明书中所记载的特征、数字、步骤、操作、构成要素、配件或其组合,并不排除还具有一个或以上的其他特征、数字、步骤、操作、构成要素、配件或其组合,或者附加功能。34.在对各种组件的描述中,可以使用第一或第二等术语,但组件不应受到术语的限制。这些术语仅用于区分其构成元素和另一构成元素,例如,在不脱离根据实施例的概念的权利范围的情况下,第一组件可以被称为第二组件,并且类似地,第二组件也可以被称为第一组件。35.在没有其他定义的情况下,包括技术或者科学术语在内的在此使用的全部术语,都具有本领域普通技术人员所理解的通常的含义。通常使用的与词典定义相同的术语,应理解为与相关技术的通常的内容相一致的含义,在本技术中没有明确言及的情况下,不能过度理想化或解释为形式上的含义。36.并且,在参照附图进行说明的过程中,与附图标记无关,相同的构成要素赋予相同的附图标记,并省略对此的重复的说明。在说明实施例的过程中,当判断对于相关公知技术的具体说明会不必要地混淆实施例时,省略对其详细说明。37.本说明书中的模块(module)可以指能够根据本说明书中描述的每个名称执行功能和操作的硬件,或可以指能够执行特定功能和操作的计算机程序代码,或者,可以指加载有能够执行特定功能和操作的计算机程序代码的电子记录介质,例如,处理器或微处理器。38.换言之,模块可以表示用于实现本发明的技术思想的硬件和/或用于驱动上述硬件的软件的功能和/或结构组合。39.下面,将参照附图详细描述实施例。然而,专利申请的范围不受这些实施例的限制。40.图1为显示根据一实施例的情况识别系统的附图,图2为图1所示的情况识别装置的示意框图。41.参照图1及图2,情况识别系统10可以提供基于实时图像的情况识别技术。例如,情况识别系统10可以向自动驾驶车辆(autonomousvehicles)提供情况识别技术。42.在自动驾驶车辆中,驾驶状况识别技术是关键组成部分,在高度自动化阶段以上的阶段尤为重要。自动驾驶车辆的高度自动化阶段(4级)意味着在指定道路条件下的所有情况下都可以进行自动驾驶,并且驾驶员干预其他道路条件下的驾驶,处于完全自动化阶段(5级)的之前阶段。在高度自动化阶段和完全自动化阶段的自动驾驶车辆中,情况识别系统10可以用作识别基于实时图像的驾驶状况的技术。43.情况识别系统10包括情况识别装置100及图像流150。44.图像流150可以包括图像帧。可以根据时间序列配置包括在图像流150中的图像帧。例如,图像流250可以是将由自动车辆在行驶中实时拍摄的图像以时间顺序组成的图像序列(imagesequences)。45.情况识别装置100可以从所输入的图像流150识别情况。例如,情况识别装置100可以从自动驾驶车辆在行驶时拍摄的图像流150识别道路正在施工的情况或行人正在横穿道路的情况。46.情况识别装置100可以使用单个框架(framework)来同时执行对象检测(objectdetection)及情况识别(situationrecognition)。由于情况识别装置100的情况识别模型被设计为针对对象检测进行优化,因此情况识别装置100非常高效并可提供高性能。47.情况识别装置100包括存储器200和处理器300。处理器300可以控制情况识别装置100的整体操作。处理器300可以基于准备用于执行对象检测和情况识别操作的数据进行学习。处理器300可以基于学习结果从图像流150检测对象,并基于对象检测结果识别情况。48.处理器300可以基于图像流150获得特征图(featuremap),并基于特征图检测对象。此外,处理器300可以基于特征图生成对象图(objectmap),并且可以基于对象图识别图像流150的状况。49.存储器200可以存储可由处理器300执行的指令(instructions)和/或程序。例如,指令和/或程序可以包括用于执行处理器300的操作和/或处理器300的每个组件的操作的指令。50.处理器300可以处理存储在存储器200中的数据。处理器300可以执行存储在存储器200中的计算机可读代码(例如,软件)及由处理器300生成的指令。51.处理器300可以是由硬件实现的数据处理装置,其具有用于执行期望操作(desiredoperations)的物理结构的电路。例如,期望操作可以包括程序中包含的代码(coe)或指令(instructions)。52.例如,作为硬件实现的数据处理装置包括微处理器(microprocessor)、中央处理单元(centralprocessingunit)、处理器核心(processorcore)、多核处理器(multi‑coreprocessor)、多处理器(multiprocessor)、专用集成电路(asic,application‑specificintegratedcircuit)及现场可编程门阵列(fpga,fieldprogrammablegatearray)。53.情况识别装置100可以在个人计算机(pc)、数据服务器或便携式设备中实现。54.便携式设备可以实现为笔记本电脑、移动手机、智能手机、平板电脑、移动互联网设备(mid,mobileinternetdevice)、个人数字助理(pda,personaldigitalassistant)、企业数字助理(eda,enterprisedigitalassistant)、数码相机(digitalstillcamera)、数码摄像机(digitalvideocamera)、便携式多媒体播放器(portablemultimediaplayer)、个人导航设备(personalnavigationdevice)或便携式导航设备(portablenavigationdevice)、手持游戏机(handheldgameconsole)、电子书(e‑book)或智能设备(smartdevice)。智能设备可以实现为智能手表(smartwatch)、智能带(smartband)或智能戒指(smartring)。55.图3为说明图1所示的情况识别装置的操作的附图。56.参照图3,处理器300包括对象检测模块330、对象图生成模块340及情况识别模块350。57.图像流150可以包括按时间顺序排列的图像帧(151‑1、151‑2至151‑n)。例如,图像流150可以是根据时间顺序配置图像帧(151‑1、151‑2至151‑n)的图像序列(imagesequences)。58.对象检测模块330可以从图像帧检测出对象的类型(type)、坐标(coordinates)及大小(size)。例如,对象检测模块330可以基于图像帧(151‑1、151‑2至151‑n)生成特征图(featuremap),并可以基于特征图来生成对象的类型、坐标及大小。59.对象检测模块330可以实现为yolo(youonlylookonce)。实现为yolo的对象检测模块330可以包括卷积神经网络(cnn,convolutionalneuralnetwork)(331‑1、331‑2至331‑n)及检测器(333‑1、333‑2至333‑n)。60.为了说明cnn(331‑1、331‑2至331‑n)和检测器(333‑1、333‑2至333‑n)对每个图像帧(151‑1、151‑2至151‑n)执行对象检测操作,图3示出了与图像帧(151‑1、151‑2至151‑n)的数量相同的cnn(331‑1、331‑2至331‑n)及检测器(333‑1、333‑2至333‑n)的数量,但也可以实现为单个(或小于图像帧数的数量)cnn模块和检测器模块对于每个帧依次执行对象检测操作。61.下面,将对于图像帧(151‑1、151‑2至151‑n)的每一个cnn(331‑1、331‑2至331‑n)及检测器(333‑1、333‑2至333‑n)的操作说明为代表每一个cnn及检测器的对于图像帧151的cnn331及检测器333的操作。62.cnn331可以基于图像帧151生成特征图。在这种情况下,cnn331可以基分割为网格单元(gridcell)的图像帧151来生成特征图。例如,cnn3310可以通过将图像帧151分割为13×13个网格单元来生成特征图。63.cnn331可以通过在每个网格单元中设置锚框(anchorbox)来执行卷积(convolution)。例如,cnn331可以通过在每个网格单元中设置五个锚框来执行卷积845次。由cnn331生成的特征图可以包括关于锚框检测到的对象的信息。64.cnn331可以包括卷积层(convolutionlayer)、最大池化层(maxpoollayer)及全连接层(fullyconnectedlayer)。cnn331可以使用卷积层、最大池化层及全连接层在分割为网格单元的图像帧151执行卷积操作(convolutionoperation)及最大池化(maxpooling),从而生成特征图。65.检测器333可以基于特征图来计算对象的类型(或类别)、位置及区域。检测器333可以对由cnn331生成的特征图执行后处理(post‑processing)操作,以获得关于对象的元数据(metadata)。66.对象图生成模块340可以基于由对象识别模块330生成的特征图来生成对象图(341‑1、341‑2至341‑n)。即,对象图生成模块340可以基于对应于每个图像帧(151‑1、151‑2至151‑n)由对象识别模块330生成的特征图,生成对应于每个图像帧(151‑1、151‑2至151‑n)的对象图(341‑1、341‑2至341‑n)。67.情况识别模块350可以基于对象图(341‑1、341‑2至341‑n)来识别情况。情况识别模块350可以实现为lstm(longshort‑termmemory)。实现为lstm的情况识别模块350可以基于对应于图像帧(151‑1、151‑2至151‑n)的对象图(341‑1、341‑2至341‑n)来识别情况。68.情况识别模块350可以由lstm单元(353‑1、353‑2至353‑n)构成。配置有lstm单元(353‑1、353‑2至353‑n)的情况识别模块350可以基于对象图(341‑1、341‑2至341‑n)来识别情况。与按时间顺序构成的图像帧(151‑1、151‑2至151‑n)相对应的对象图(341‑1、341‑2至341‑n)可以依次地被输入到每一个lstm单元(353‑1、353‑2至353‑n)。69.lstm单元(353‑1、353‑2至353‑n)可以将基于输入对象图(351‑1、351‑2至351‑n)的输出顺序地输入到下一个lstm单元(353‑1和353‑2至353‑n)。最后的lstm单元353‑n可以将结果输入到全连接层355,并且,全连接层355可以识别情况。70.图4为详细说明图3所示的对象图生成模块的操作的附图。71.图4所示的对象图341用于说明图3所示的对象图(341‑1、341‑2至341‑n)中的每一个的生成操作,并且,图3所示的对象图(341‑1、341‑2至341‑n)都对应于对象图341。此外,图4所示的特征图335对应于与图3所示的图像帧(151‑1、151‑2至151‑n)所对应而生成的特征图335。72.对象图生成模块340可以基于由对象检测模块330生成的特征图335及被包括在特征图335中的锚框(anchorbox)470,将特征图335转换为桥接图430。桥接图430可以表示对象存在于特征图的每个网格单元中的概率。例如,桥接图430的每个网格单元可以将对象存在于特征图的每个网格单元中的概率表示为代表值。73.对象图生成模块340可以基于对象存在于对应于每个网格单元的锚框470内部的概率来计算对象出现在特征图的每个网格单元中的概率,并且基于所计算出的概率,可以将特征图335转换为桥接图430。74.对象图生成模块340可以基于桥接图430来生成对象图341。对象图生成模块340可以将桥接图430中的每个网格单元的代表值与阈值进行比较,并生成仅显示阈值以上的网格单元的对象图341。75.虽然特征图335无法输入到lstm,但对象图341可以输入到lstm。此外,由于情况识别操作只需要在近似位置输入特定对象的存在与否即可,因此可以使用对象图341来减少复杂的计算。76.图5a至图5c为显示图像帧及对应于图像帧的对象图的附图。77.5a显示与示出重型卡车正在行驶的情况的图像帧510‑1相对应的对象图530‑1。情况识别模块350可以生成表示重型卡车存在的区域的对象图530‑1。78.5b显示对应于包括多个对象(车辆、施工车辆及行人)的图像帧510‑2的对象图530‑2。情况识别模块350可以对多个对象进行分类,并生成显示每个对象存在的区域的对象图530‑2。79.参照图5c,示出分别对应于被包括在按时间顺序配置的图像流150中的图像帧510‑3和下一图像帧510‑4的对象图(530‑3及530‑4)。情况识别模块350可以根据时间序列生成与被包括在图像流150中的图像相对应的对象图530‑3。80.如上所述生成的对象图(530‑1至530‑4)可以被输入到情况识别模块350,以用于情况识别操作。81.图6为详细说明图3所示的情况识别模块的操作的附图。82.情况识别模块350可以基于对应于图像帧(151‑1、151‑2至151‑n)的对象图(341‑1、341‑2至341‑n)来识别情况。83.对应于根据时间序列配置的图像帧(151‑1、151‑2至151‑n)的对象图(341‑1、341‑2至341‑n)可以根据时间步(timestep)分别输入到lstm单元(353‑1、353‑2至353‑n)。lstm单元(353‑1、353‑2至353‑n)中的每一个可以基于多层识别器(mlp,multilayerperceptron)来形成单元状态(cellstate)。例如,由于对象图(341‑1、341‑2至341‑n)是简单的28x28图,因此不需要使用复杂的层(layer)。84.情况识别模块350可以被配置为lstm单元(353‑1、353‑2至353‑n)。为了说明与图像帧(151‑1、151‑2至151‑n)相对应的每个对象图(341‑1、341‑2至341‑n)被顺序输入到每个lstm单元(353‑1、353‑2至353‑n)的操作,在图3及图6中示出了与图像帧(151‑1、151‑2至151‑n1)的数量相等的lstm单元(353‑1、353‑2至353‑n)的数量,但也可以实现为与单个(或小于图像帧数的数量)lstm单元中按时间顺序排列的图像帧相对应的对象图(341‑1、341‑2至341‑n)被顺序地输入到lstm单元。85.lstm单元(353‑1、353‑2至353‑n)可以将基于所输入对象图(353‑1、353‑2至353‑n)的输出顺序地输入到下一lstm单元(353‑1、353‑2至353‑n)。即,第一lstm单元353‑1可以将基于第一对象图351‑1的输出输入到第二lstm单元353‑2,第二lstm单元353‑2可以基于第一lstm单元353‑1的输出和第二对象图351‑2来输出结果。通过这样的方法,第k个lstm单元353‑k可以基于第k‑1个lstm单元353‑(k‑1)的输出和第k个对象图351‑k来输出结果。最后的lstm单元353‑n可以将输出结果输入到全连接层(fullyconnectedlayer)355,并且,全连接层355可以输出情况识别结果。86.情况识别模块350可以被设计为基于表1中所示的参数(parameter)的lstm。87.[表1][0088]参数(parameter)值(value)内迭代200外迭代10批量大小4学习率0.001隐藏大小128输入大小768时间步10类别(情况)10[0089]图7为说明情况识别装置的学习操作的附图。[0090]情况识别装置100可以针对各种情况执行学习。各种情况可以包括:行人横穿道路的情况(情况1)、行人站在人行横道前面的情况(情况2)、车辆在道路上安全的情况(情况3)、重型卡车在前面的情况(情况4)、其他车辆太近且需要注意的情况(情况5)以及前方有施工的情况(情况6)等。[0091]可以使用对应于每个情况(情况1至情况6)的多个图像流(序列1至序列n)来学习情况识别装置100。学习到各种情况的情况识别装置100可以识别现有情况识别技术无法识别的情况。[0092]图8为显示情况识别装置的学习结果的图表。[0093]图8示出根据隐藏层(hiddenlayer)的数量的情况识别装置100的学习结果。可以确认,隐藏层的数量越多,学习效果越好。情况识别装置100使用128个隐藏层,并且可以通过9000条数据来学习六种情况(或类别)。[0094]图9a至图9c为显示情况识别装置的基于实时图像流的情况识别结果的附图。[0095]参照图9a可以确认,情况识别装置100已经从自动驾驶车辆的实时图像流识别出行人横穿道路的情况(情况1)和行人站在道路前方的情况(情况2)。[0096]参照图9b可以确认,情况识别装置100已经从自动驾驶车辆的实时图像流识别出车辆在道路上安全的情况(情况3)和重型卡车在前面的情况(情况4)。[0097]参照图9c可以确认,情况识别装置100已经从自动驾驶车辆的实时图像流识别出前方正在施工的情况(情况6)。[0098]根据实施例的方法以能够通过多种计算机手段执行的程序命令的形式体现,并记录在计算机读写介质中。所述计算机读写介质能够以单独或者组合的形式包括程序命令、数据文件、数据结构等。记录在所述介质的程序指令能够是为实现实施例而特别设计与构成的指令,或者是计算机软件领域普通技术人员能够基于公知使用的指令。计算机读写记录介质能够包括硬盘、软盘以及磁带等磁性媒介(magneticmedia);与cd‑rom、dvd等类似的光学媒介(opticalmedia);与光磁软盘(flopticaldisk)类似的磁光媒介(magneto‑opticalmedia),以及与只读存储器(rom)、随机存取存储器(ram)、闪存等类似的为存储并执行程序命令而特别构成的硬件装置。程序指令的例子不仅包括通过编译器生成的机器语言代码,还包括通过使用解释器等能够由计算机执行的高级语言代码。为执行实施例的操作,所述硬件装置能够构成为以一个以上的软件模块实现操作的方式,反之亦然。[0099]软件能够包括计算机程序(computerprogram)、代码(code)、指令(instruction),或其中的一个以上的组合,能够使加工装置按照所期待的方式操作,或者,单独或共同(collectively)命令加工装置。为通过加工装置进行解释或者向加工装置提供命令或数据,软件和/或数据能够永久或临时体现于(embody)任何类型的设备、构成要素(component)、物理装置、虚拟装置(virtualequipment)、计算机存储介质或装置,或者传送的信号波(signalwave)。软件分布于通过网络连接的计算机系统上,能够以分布式存储或执行。软件及数据能够存储于一个以上的计算机读写存储介质中。[0100]虽然通过有限的附图对实施例进行了说明,但本领域普通技术人员能够基于所述记载进行多种更改与应变。例如,所说明的技术按照与说明的方法不同的顺序执行,和/或所说明的系统、结构、装置、电路等构成要素按照与说明的方法不同的形态进行结合或组合,或者由其他构成要素或者等同物置换或代替,也能得到适当的结果。[0101]由此,其他体现,其他实施例以及权利要求范围的等同物,均属于本发明的权利要求范围。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献