具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
本申请实施例涉及一种能效分析的方法和系统。该能效分析的方法和系统可以应用于服务员、保洁人员、清洁机器人、自动清洁设备、清扫车、除冰车、除雪车等的能效分析。在一些实施例中,该能效分析的方法和系统可以应用于室内场所,例如,大堂、餐厅、食堂、茶水间、会议室、办公区等。在一些实施例中,该能效分析的方法和系统可以应用于露天场所,例如,操场、广场、绿地、游乐场、城市道路、高速公路等。通过该能效分析的方法和系统,可以实现:在相关人员和/或设备对目标位置进行清理和/或清洁后,自动检测目标位置的表面情况,提高效率和准确性、提高用户体验、保证安全性等一种或多种有益效果。在一些实施例中,该能效分析的方法和系统可以应用于其他领域,例如,安防领域。该能效分析的方法和系统可以提供诸如安全监控、突发事件警报、行为监督等服务。
图1是根据本说明书的一个或多个实施例所示的目标对象能效分析系统100的应用场景示意图。
目标对象能效分析系统100可以获取视频序列,基于模型判断目标对象是否进行预设动作,控制预设终端发射光照以进一步判断目标位置是否清洁干净。目标对象可以是、保洁人员、清洁机器人、自动清洁设备、清扫车、除冰车、除雪车等。目标位置可以是餐桌、地面、天花板、墙面、地毯、建筑物外墙、门窗、玻璃幕墙、草坪、跑道、路面等。
如图1所示,目标对象能效分析系统100可以包括服务器110、处理器112、摄像头120、发光设备130、存储设备140、网络150、信息源160。
在一些实施例中,服务器110可以用于处理与目标对象的能效分析系统100相关的信息和/或数据,例如,用于控制预设终端发射不同颜色的光照。在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。服务器组可以是集中式的或分布式的(例如,服务器110可以是一分布式系统)。在一些实施例中,服务器110可以是本地的,也可以是远程的。例如,服务器110可以经由网络150访问存储在摄像头120、发光设备130和/或存储设备140中的信息和/或数据。又例如,服务器110可以直接连接到摄像头120、发光设备130和/或存储设备140以访问存储信息和/或数据。在一些实施例中,服务器110可以在云平台上实现,或者以虚拟方式提供。仅作为示例,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
在一些实施例中,服务器110可以包括处理设备112。处理设备112可以处理与目标对象能效分析系统100有关的信息和/或数据,以执行本申请中描述的一个或以上功能。例如,处理设备112可以获取摄像头120和/或发光设备130发送的信息获取请求,并获取视频序列,基于第一模型对所述视频序列进行处理,确定是否有目标对象进行预设动作。在一些实施例中,处理设备112可以包括一个或以上处理引擎(例如,单芯片处理引擎或多芯片处理引擎)。仅作为示例,处理设备112可以包括中央处理单元(CPU)、特定应用集成电路(ASIC)、特定应用指令集处理器(ASIP)、图形处理单元(GPU)、物理处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器等或其任意组合。
摄像头120是指前端视频图像信号的采集工具,可以用于获取目标位置的图像数据。在一些实施例中,目标对象能效分析系统100可以包括一个或多个摄像头。在一些实施例中,摄像头120可以包括2D摄像头、3D摄像头、红外摄像头等一种或多种的组合。摄像头120可以用于采集目标位置(如桌面、草坪)的二维或者三维图像数据。在一些实施例中,摄像头120可以是独立摄像头,也可以是其他设备的一部分,例如,手机摄像头、电脑摄像头、车载摄像头、无人机摄像头等。在一些实施例中,摄像头120可以是固定的,也可以是可移动的。
在一些实施例中,摄像头120可以包括数字摄像头、模拟摄像头和网络摄像头。数字摄像头可以直接捕捉影像,然后通过串、并口和/或USB接口传入存储设备140;模拟摄像头可以将视频采集设备产生的模拟视频信号转换成数字信号,进而将其储存在存储设备140中;网络摄像头是融摄像、视频编码、Web服务于一体的摄像设备,内嵌了TCP/IP协议栈,可以直接连接到网络150。
发光设备130是指能透光、分配和改变光源光分布的设备,例如,白炽灯、荧光灯、节能灯、卤素灯、卤钨灯、气体放电灯和LED灯等。在一些实施例中,目标对象能效分析系统100可以包括一个或多个发光设备130。在一些实施例中,发光设备130可以包括吊灯、台灯、壁灯、落地灯、路灯等或其任意组合。在一些实施例中,发光设备130可以是独立灯具,也可以是其他设备的一部分,例如,手机照明装置、车载灯具、无人机灯具等。在一些实施例中,摄像头120和发光设备130可以配置在同一设备上,例如,同一无人机上、同一灯柱上等。在一些实施例中,服务器110可以控制发光设备130发出多种颜色的光,例如,循环往复发出红橙黄绿蓝靛紫7种颜色的光。
存储设备140可以用于存储与目标对象能效分析相关的数据和/或指令。在一些实施例中,存储设备140可以存储从摄像头120和/或发光设备130中获得/获取的数据。在一些实施例中,存储设备140可以储存服务器110用来执行或使用以完成本申请中描述的示例性方法的数据和/或指令。在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性易失性读写存储器可以包括随机存取存储器(RAM)。示例性RAM可包括动态随机存取存储器(DRAM)、双倍数据速率同步动态随机存取存储器(DDRSDRAM)、静态随机存取存储器(SRAM)、晶闸管随机存取存储器(T-RAM)和零电容随机存取存储器(Z-RAM)等。示例性只读存储器可以包括模型只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)和数字多功能磁盘只读存储器等。在一些实施例中,存储设备140可在云平台上实现。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,存储设备140可以连接到网络150以与目标对象能效分析系统100的一个或以上组件(例如,服务器110、摄像头120、发光设备130)通信。目标对象能效分析系统100的一个或以上组件可以经由网络150访问存储在存储设备140中的数据或指令。在一些实施例中,存储设备140可以直接连接到目标对象能效分析系统100的一个或以上组件(例如,服务器110、摄像头120、发光设备130)或与之通信。在一些实施例中,存储设备140可以是服务器110的一部分。在一些实施例中,存储设备140可以单独的存储器。
网络150可以促进信息和/或数据的交换。在一些实施例中,目标对象能效分析系统100的一个或以上组件(例如,服务器110、摄像头120、存储设备140、发光设备130)可以经由网络150将信息和/或数据发送至目标对象能效分析系统100的其他组件。例如,服务器110可以经由网络150从摄像头120获得/获取视频序列。在一些实施例中,网络150可以是有线网络或无线网络等或其任意组合。仅作为示例,网络150可以包括电缆网络、有线网络、光纤网络、电信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共交换电话网络(PSTN)、蓝牙网络、紫蜂网络、近场通讯(NFC)网络、全球移动通讯系统(GSM)网络、码分多址(CDMA)网络、时分多址(TDMA)网络、通用分组无线服务(GPRS)网络、增强数据速率GSM演进(EDGE)网络、宽带码分多址接入(WCDMA)网络、高速下行分组接入(HSDPA)网络、长期演进(LTE)网络、用户数据报协议(UDP)网络、传输控制协议/互联网协议(TCP/IP)网络、短讯息服务(SMS)网络、无线应用协议(WAP)网络、超宽带(UWB)网络、红外线等或其任意组合。在一些实施例中,目标对象能效分析系统100可以包括一个或以上网络接入点。例如,基站和/或无线接入点150-1、150-2、…,目标对象能效分析系统100的一个或以上组件可以连接到网络150以交换数据和/或信息。
信息源160是为标对象能效分析系统100提供其他信息的一个源。信息源160可以用于为系统提供与模型训练相关的信息,例如,模型训练用到的视频序列样本、与样本有关的其他信息如时间信息等。信息源160可以是一个单独的中央服务器的形式存在,也可以是以多个通过网络连接的服务器的形式存在,还可以是以大量的个人设备形式存在。当信息源160以大量个人设备形式存在时,这些设备可以通过一种用户生成内容(user-generatedcontents)的方式,例如向云端服务器上传文字、语音、图像、视频等,从而是云端服务器连通与其连接的众多个人设备一起组成信息源160。
应当注意目标对象能效分析系统100仅仅是为了说明的目的而提供的,并不意图限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出多种修改或变化。例如,目标对象能效分析系统100还可以包括数据库。又例如,目标对象能效分析系统100可以在其他设备上实现类似或不同的功能。然而,这些变化和修改不会背离本申请的范围。
在一些实施例中,该系统100中可以包括获取模块、动作判断模块和能效判断模块。
获取模块,可以用于基于摄像头获取视频序列,视频序列包括N个时间段的视频数据,N为大于2的整数。在一些实施例中,获取模块可以通过网络150从摄像头120获取视频序列。
动作判断模块,可以用于基于第一模型对所述视频序列进行处理,确定是否有目标对象进行预设动作;第一模型包括第一卷积神经网络、循环神经网络和第一全连接层,第一卷积神经网络用于对N个时间段的视频数据进行处理,获取N个时间段的视频序列特征;循环神经网络基于对N个时间段的视频序列特征进行处理,确定目标对象的动作特征;第一全连接层基于动作特征,确定是否有目标对象进行预设动作。
能效判断模块,可以用于响应于有目标对象进行预设动作,控制预设终端发射多个颜色的多个光照,获取多个光照下拍摄的多幅目标图像,多幅目标图像为预设动作作用的目标位置的图像。
在一些实施例中,能效判断模块用于基于第二模型对多幅目标图像和目标对象的动作特征进行处理,确定目标对象的能效结果;第二模型包括第二卷积神经网络和第二全连接层,第二卷积神经网络基于对多幅目标图像进行处理,确定目标图像特征;第二全连接层基于对目标图像特征和目标对象的动作特征进行处理,确定所述目标对象的能效结果。
需要注意的是,以上对于能效分析系统100及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。在一些实施例中,获取模块、动作判断模块和能效判断模块可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。在一些实施例中,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。在一些实施例中,上述多个模块中的图像识别功能可以由单独的图像识别模块实现。在一些实施例中,能效判断模块可以进一步包括光照控制单元、摄像头控制单元和模型训练单元。诸如此类的变形,均在本说明书的保护范围之内。
图2是根据本说明书一些实施例所示的目标对象的能效分析方法的示例性流程图。如图2所示,该目标对象的能效分析方法200可以包括:
步骤210,基于摄像头获取视频序列,所述视频序列包括N个时间段的视频数据,N为大于2的整数。具体地,该步骤210可以由获取模块执行。
视频数据是以电信号方式记录的动态影像,由多幅时间上连续的静态图像组成。其中,每幅静态图像为视频数据的一帧。在一些实施例中,一个时间段的视频数据可以包含多幅静态图像。
在一些实施例中,视频数据的格式可以包括高密度数字视频光盘(Digital VideoDisc,DVD)、流媒体格式(Flash Video,FLV)、动态图象专家组(MPEG,Motion PictureExperts Group)、音频视频交错(Audio Video Interleaved,AVI)、家用录像系统(VideoHome System,VHS )和视频容器文件格式(Real Media file format,RM)等中的一种或多种组合。
在一些实施例中,N个时间段之间可以间隔相同的时间。例如,每隔300秒采集一段时间。在一些实施例中,N个时间段的时间长度可以是相同的,也可以是不同的。在一些实施例中,获取模块可以基于上一个时间段获取的特征,通过算法自动调整间隔时间。在一些实施例中,获取模块还可以通过其他方式获取N个历史时间段,本实施例不作限制。
在一些实施例中,获取模块可以通过读取摄像头的数据、调用相关接口或其他方式获取N个时间段的视频数据。
在一些实施例中,可以根据预设条件,对视频序列中的图像进行筛选。例如,预设条件可以为图像的码流大于预设阈值。例如,预设阈值可以为5Mb/s、10Mb/s等。码流是指视频文件在单位时间内使用的数据流量。码流可以影响视频的画面质量,视频的码流越大,表示视频在单位时间内使用的数据流量越大,视频的画面质量越高。由于每个视频序列包括多个视频帧,每个视频帧对应一幅静态图像。因此,上述静态图像的画面质量越高,则对应的码流越大,或者,上述视频片段中相邻两个视频帧的静态图像的变化较大,则产生的码流也会较大。通过保留高码流图像、过滤掉低码流图像,有利于提高视频处理的效率。
步骤220,基于第一模型对视频序列进行处理,确定是否有目标对象进行预设动作。具体地,该步骤220可以由动作判断模块执行。
预设动作是指目标对象做出的可能使预设位置表面情况发生改变的单个动作或动作序列。单个动作可以包括保洁人员的打扫、擦拭等动作,装修工人的涂抹、粉刷等动作,吸尘器、清扫车的吸尘、清扫等动作,除冰车、除雪车的除冰、除雪等动作或其组合。动作序列可以包括按顺序执行的至少一个动作。例如,保洁人员的靠近餐桌->擦拭餐桌->远离餐桌、高空清洗人员的随安全绳和吊板下放->擦拭->落地、除雪车的发动->扫雪滚刷转动->驶离或熄火。在一些实施例中,动作序列比单个动作更能准确体现预设动作是否完成,例如,完成动作序列保洁人员的动作序列靠近餐桌->擦拭餐桌->远离餐桌,比完成擦拭餐桌或离开餐桌的动作更能体现清理餐桌动作的完成。
在一些实施例中,动作判断模块可以利用第一模型判断确定是否有目标对象在目标位置进行预设动作。例如,将餐桌的视频序列输入第一模型,确定是否有保洁人员进行擦拭动作。
关于第一模型的详细描述和训练过程参见图3和图5,在此不再赘述。
步骤230,响应于有目标对象进行预设动作,控制预设终端发射多个颜色的多个光照,获取所述多个光照下拍摄的多幅目标图像,所述多幅目标图像为所述预设动作作用的目标位置的图像。具体地,该步骤230可以由能效判断模块执行。
在一些实施例中,预设终端可以包括发光设备130。在一些实施例中,多个颜色可以包括红橙黄绿蓝靛紫等颜色或其组合。在一些实施例中,能效判断模块可以控制发光设备130循环往复发出红橙黄绿蓝靛紫7种颜色的光。在一些实施例中,能效判断模块可以控制发光设备130以随机顺序发出多种颜色的光。在一些实施例中,能效判断模块可以控制发光设备130按照预设规则发出多种颜色的光。在一些实施例中,预设规则可以是跳过与目标位置同色的光。例如,当目标位置是蓝色玻璃幕墙时,则控制发光设备130跳过蓝色光。又例如,当目标位置是草坪时,则控制发光设备130跳过绿色光。在一些实施例中,能效判断模块可以根据场所控制发光设备130发出的色光,例如,在餐厅等聚集场所,发出淡黄色、淡蓝色的光,以免影响用餐体验。在一些实施例中,能效判断模块可以根据环境控制发光设备130发出的色光,例如,在夜晚可以发出白色的光,以保证清晰的成像效果。在一些实施例中,能效判断模块可以根据目标位置本身的颜色,利用补色、对比色、中差色,控制发光设备130发出的色光,例如,当目标位置是草坪时,可以发出红色(绿色的补色)、橙红色(绿色的对比色)、黄橙色(绿色的中差色)的色光,以获得更好的检测效果。通过不同颜色的光照,可以获得目标位置更全面的图像特征,有利于判断结果更准确。
在一些实施例中,能效判断模块可以控制摄像头120采集多种颜色光照下的多幅目标图像。多幅目标图像中的每一幅包括目标位置的至少一部分。摄像头120可以采取的拍摄方法包括定点拍摄、环绕拍摄、旋转拍摄、往返拍摄、循环拍摄或其组合。在一些实施例中,摄像头120可以与发光设备130同步拍摄,例如,每切换一种颜色的光,则重启一次拍摄周期。在一些实施例中,摄像头120可以与发光设备130不同步,例如,检测到目标对象进行了预设动作,则开启拍摄。
在一些实施例中,当检测到目标对象进行预设动作,处理器110可以控制摄像头120开启高画质模式。例如,提高分辨率、提高对比度、切换至广角镜头等。在一些实施例中,可以当检测到目标对象进行预设动作时,立即开启高画质模式。在一些实施例中,可以延迟预设时间(例如,1秒钟,30分钟等)后开启高画质模式。在一些实施例中,可以在接收到发光设备130发出色光后,开启高画质模式。高画质模式图像可以显示目标位置的更多细节,使能效分析更准确。
在一些实施例中,当没有检测到目标对象进行预设动作时,处理器110可以控制摄像头120开启或保持低画质模式。例如,降低分辨率、降低对比度、切换至普通镜头等。在一些实施例中,当能效分析完成后,处理器110可以控制摄像头120从高画质模式切换至低画质模式。低画质模式图像的像素可以低于高画质模式图像的像素,在目标对象没有进行预设动作和能效分析完成后,切换至低画质模式,可以减少存储空间、并加快处理速度。
步骤240,基于第二模型对所述多幅目标图像和所述目标对象的动作特征进行处理,确定所述目标对象的能效结果。具体地,该步骤240可以由能效判断模块执行。
能效结果是指目标位置的表面情况是否达标,例如,表面是否干净、平整、光滑,是否有杂物、积雪等。
在一些实施例中,能效判断模块可以综合多个色光下的多幅目标图像获得能效结果。例如,可以将基于多幅目标图得到的平均结果,作为能效结果。又例如,可以将基于多幅目标图像获得的最好结果,作为能效结果。
在一些实施例中,可以利用第二模型对多幅目标图像和目标对象的动作特征进行处理,确定目标对象的能效结果。例如,可以将餐桌的多幅目标图像和保洁人员的擦拭动作的动作特征输入第二模型,确定餐桌是否干净。又例如,可以将地毯的多幅目标图像和吸尘器的吸尘动作的动作特征输入第二模型,确定地毯是否干净。再例如,可以将高速公路的多幅目标图像和除雪车的除雪动作的动作特征输入第二模型,确定高速公路的积雪是否清理干净。
关于动作特征的更多细节,参见图3及其描述。关于第二模型的详细描述和训练过程参见图4和图5,在此不再赘述。
应当注意的是,上述有关流程210、220、230和240的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程210、220、230和240进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。在一些实施例中,步骤210与步骤220可以为独立执行的两个步骤,两者可以顺序执行或并行执行。在一些实施例中,步骤220可以省略,系统100可以不判断是否有预设动作。
图3是根据本说明书一些实施例所示的第一模型的示例性结构图。
在一些实施例中,训练好的第一模型300包括第一卷积神经网络320、循环神经网络340和第一全连接层360。
在一些实施例中,第一卷积神经网络可以基于对N个时间点的视频数据310进行处理,确定N个视频序列特征。
视频序列特征330可以是经过第一卷积神经网络处理后的视频数据的向量。根据步骤210的描述,视频数据是由多幅图像组成的,多幅图像可以是时间上连续的,也可以是不连续的(例如,过滤掉低码流的帧的、经过剪辑的)。在一些实施例中,第一卷积神经网络可以对视频数据的多幅图像进行处理。例如,第一卷积神经网络可以对多幅图像进行卷积处理,来降低多幅图像的维度,或将多幅图像降低至相同维度。又例如,第一卷积神经网络可以对多幅图像进行卷积处理,实现平滑、去噪、锐化等操作。
基于此,第一卷积神经网络可以通过对视频数据进行处理,能够获取维度降低,或维度降低至相同维度的多幅图像对应的视频序列特征,以降低第一模型对于视频数据的整体计算强度和计算复杂度。
在一些实施例中,循环神经网络可以基于对N个视频特征进行处理,确定目标对象的动作特征350。循环神经网络能够处理任意长度的序列数据,捕捉序列的信息,输出基于序列中前后数据关联关系的结果。动作特征350可以是表征视频数据信息的向量。
在一些实施例中,动作特征可以包括目标对象是否进行预设动作、预设动作是否已完成和预设动作进行的时长中的至少一种。
在一些实施例中,循环神经网络可以基于对N个视频序列特征进行图像识别处理,确定目标对象的动作特征。具体的,循环神经网络可以对N个视频特征的多幅图像进行图像识别,来确定目标对象的动作特征。例如,循环神经网络可以识别出上述图像存在指定的动作,例如,擦拭、吸尘等,则可以确定目标对象已做出预设动作。又例如,循环神经网络可以识别出目标对象是否完成指定的动作序列,例如,靠近餐桌->擦拭餐桌->远离餐桌等,则可以确定目标对象已做出预设动作。又例如,循环神经网络可以识别出目标对象做出某一动作的时长,例如,擦拭动作的时长超过60秒,则可以确定目标对象已做出预设动作。
在一些实施例中,第一全连接层可以基于对动作特征进行处理,确定是否发生预设动作。
通过上述方式,第一模型可以通过依次运行第一卷积神经网络和循环神经网络提取视频序列的动作特征,第一全连接层可以基于对动作特征进行处理,输出是否发生预设动作的判定结果。
在一些实施例中,第一卷积神经网络模型可以通过迁移学习得到,即将其他训练好的卷积神经网络模型的参数迁移至第一卷积神经网络模型。例如,训练好的卷积神经网络模型中的卷积核的大小为3*3,则第一卷积神经网络模型中卷积核的大小为3*3。其中,卷积神经网络模型可以是图像识别模型。图像识别模型是指用于处理图像数据的模型,通过对图像数据进行处理,得到特征向量。
在一些实施例中,第一卷积神经网络模型可以通过训练第三模型获得,第三模型可以是基于卷积神经网络(CNN)和全连接层的目标识别模型,用于识别目标对象,例如,识别人物是否为进行清理动作的服务员、识别物体是否为正在工作的清洁机器人等。在一些实施例中,训练好的第三模型的CNN可以迁移至第一模型,即作为第一模型的第一卷积神经网络模型。在一些实施例中,训练第一模型时只训练第一卷积神经网络模型以外的部分,即,RNN循环神经网络部分和第一全连接层部分。
在一些实施例中,第一模型的第一卷积神经网络、循环神经网络和第一全连接层可以通过端到端训练得到。如图5所示,第一模型的训练过程可以包括:
(1)获取多个样本对,每个样本对可以包括样本视频序列以及标签。样本视频序列中包括样本目标位置(例如,餐桌、草坪、路面等)和目标对象(例如,保洁人员、除雪车)的至少一部分。标签代表目标对象是否对目标位置进行了预设动作。具体地,标签可以为是/否。在一些实施例中,标签可以通过人工标注的方式获取。在一些实施例中,标签还可以通过监测软件获取,或者通过其他常用方式获取。
在一些实施例中,样本视频序列可以为过去一段时间(如一天、一周、一个月等)内获取模块获取到的视频。在一些实施例中,样本视频序列可以为针对各个目标位置和各个预设动作专门拍摄的视频。每个样本视频对应的标签可以由人工标注或机器标注获得。在一些实施例中,多个样本对中可以至少包括两个样本对,该两个样本对的样本视频中包括拍摄角度不同的相同样本目标位置和样本预设动作。在一些实施例中,该两个样本对的样本视频可以分别为相同样本目标对象在相同样本目标位置做出的相同预设动作的正面和侧面视频。通过利用多角度拍摄的样本视频进行训练,有助于所得的第一模型具有更好的鲁棒性。(2)基于多个样本对,对初始第一模型进行训练,以获得训练完成的第一模型。具体的,可以将样本视频序列作为第一卷积神经网络的输入,并基于所得第一全连接层的输出与样本视频序列的标签得到损失函数,利用反向传播、梯度下降等方法迭代训练,使损失函数收敛。
端到端的训练方法能够简化训练过程,例如,不需要分别为第一卷积神经网络、循环神经网络和第一全连接层准备训练数据。端到端的训练方法还能够处理各种复杂情况,例如,可以结合视频序列特征和动作特征的影响。
图4是根据本说明书一些实施例所示的第二模型的示例性结构图。如图4所示,流程400包括:
在一些实施例中,训练好的第二模型包括第二卷积神经网络420和第二全连接层440。
在一些实施例中,第二卷积神经网络可以基于对多幅目标图像410进行处理,确定目标图像特征430。
在一些实施例中,第二卷积神经网络可以对多幅目标图像进行处理。例如,第二卷积神经网络可以对多幅目标图像进行卷积处理,来降低多幅目标图像的维度,或将多幅目标图像降低至相同维度。又例如,第二卷积神经网络可以对多幅目标图像进行卷积处理,实现平滑、去噪、锐化等操作。
基于此,第二卷积神经网络可以通过对视频数据进行处理,能够获取维度降低,或维度降低至相同维度的多幅目标图像对应的目标图像特征,以降低第二模型对于多幅目标图像的整体计算强度和计算复杂度。并且第二卷积神经网络还可以通过上述方式获取图像质量较高的多幅目标图像对应的目标图像特征,以提高后续对目标图像特征的处理效果和处理效率。
在一些实施例中,第二卷积神经网络可以基于对多幅目标图像进行图像识别处理,确定多幅目标图像的目标图像特征。具体的,第二卷积神经网络可以对多个光照下的多幅目标图像进行图像识别,识别出目标图像特征,来确定目标位置的表面情况。例如,第二卷积神经网络可以识别多幅目标图像中有明显梯度或噪点,则可以确定目标位置的表面上有杂物。
在一些实施例中,第二全连接层可以基于对目标对象的动作特征(例如,动作序列是否完成、动作时长)和目标图像特征(例如,是否有杂物)进行处理,结合目标对象的动作和目标图像输出目标对象的能效结果450。实际应用中,单凭目标对象的动作(或目标图像)可能存在判断错误的情况,例如,动作时长够长但目标图像仍然显示有杂物的情况。又例如,目标图像显示清洁程度尚可(没有明显杂物,但是图像可能识别不出第一遍湿擦后留下的小水珠,需要再一步擦干操作)、但动作时长不够的情况。因此,同时基于目标对象的动作和目标图像判断能效结果,可以使判断结果更准确。
通过上述方式,第二模型可以通过运行第二卷积神经网络提取目标位置的目标图像特征,第二全连接层可以基于对上述目标图像特征和第一模型中的循环神经网络得到的动作特征进行处理,综合考虑目标位置的表面情况和目标对象的动作特征,从而使得第二模型的输入数据更全面、输出结果更准确。
在一些实施例中,第二卷积神经网络模型可以通过迁移学习得到,即将其他训练好的卷积神经网络模型(例如,图像识别模型)的参数迁移至第二卷积神经网络模型。
在一些实施例中,第二模型的第二卷积神经网络和第二全连接层可以通过端到端训练得到。如图5所示,第二模型的训练过程500可以包括:
(1)获取多个样本对,每个样本对可以包括样本图像以及样本图像标签。样本图像中包括样本目标位置(例如,餐桌、草坪、路面等)的至少一部分。标签代表样本图像的能效结果。具体地,标签可以为达标/不达标。在一些实施例中,标签可以通过人工标注的方式获取。在一些实施例中,标签还可以通过监测软件获取,或者通过其他常用方式获取。
在一些实施例中,样本图像可以为过去一段时间(如一天、一周、一个月等)内获取模块获取到的图像。在一些实施例中,样本图像可以为针对各个样本目标位置专门拍摄的图像。每张样本图像对应的样本图像标签可以由人工标注或机器标注获得。在一些实施例中,多个样本对中可以至少包括两个样本对,该两个样本对的样本图像中包括拍摄角度不同的相同样本目标位置。在一些实施例中,该两个样本对的样本图像可以分别为相同样本目标位置的正面和侧面图像。在一些实施例中,多个样本对中可以至少包括两个样本对,该两个样本对的样本图像中包括不同颜色光照下的相同样本目标位置。在一些实施例中,该两个样本对的样本图像可以分别为相同样本目标位置在红色和绿色光照下的图像。通过利用多角度和多色光照拍摄相同目标位置的样本图像进行训练,有助于所得的第二模型具有更好的鲁棒性。(2)基于多个样本对,对初始第二模型进行训练,以获得训练完成的第二模型。在一些实施例中,训练的方法可以包括反向传播、梯度下降等方法。
在一些实施例中,多个样本对中可以包括仿真样本对,仿真样本对包括仿真样本图像以及仿真样本图像标签,仿真样本图像包括仿真样本目标位置的至少一部分,仿真样本图像标签包括仿真样本目标位置的能效结果。在一些实施例中,仿真样本目标位置可以是由仿真软件(如三维建模软件)建模而成的虚拟目标位置。通过在仿真软件中对目标位置进行不同的模拟处理,可以获得目标位置在不同状况下的模拟形态。在一些实施例中,通过仿真软件可以模拟效能达标的目标位置(如作为正样本),也可以模拟效能不达标的目标位置(如作为负样本),例如,表面有污渍、积水、残渣、鸟屎、积雪等。在一些实施例中,真实目标位置(例如,玻璃幕墙、高速公路)的真实图像往往获取成本较高,通过获取仿真样本目标位置的仿真样本图像,可以作为训练样本的有益补充,使训练样本覆盖更多情况,能够有效节约模型训练成本、提升所得模型的识别准确性。
本申请一些实施例可能带来的有益效果包括但不限于:(1)检测过程在识别出预设动作后进行,省略了不必要的检测,能够节约成本、提高效率。(2)自动检测目标位置的表面状况,能够节约人工成本,并有利于提升用户体验;(3)通过自定义第一模型、第二模型,使模型的规模适当,并避免冗余。(4)采用端到端和/或迁移训练,能够提高模型的鲁棒性,并提高训练效率、节越训练成本。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。