一种冰箱转让专利

申请号 : CN202010051231.0

文献号 : CN113139402B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵启东

申请人 : 海信集团有限公司

摘要 :

本发明公开一种冰箱,冰箱包括:机壳;至少一个冰箱门;设置在机壳顶部的感知模组,感知模组包括相机组件,用于拍摄存取开口对应的检测区域的彩色图像以及彩色图像对应的深度图像;控制器与相机组件电连接,控制器被配置为:计算所述深度图像中的运动区域;利用所述彩色图像进行手部检测,并识别食物种类;根据所述运动区域和手部检测的结果,确定所述深度图像中的目标区域;根据所述目标区域,计算手部质心;根据所述手部质心和所述储藏室内各层位的深度范围,获得用户操作信息,用户操作信息包括食物种类、位置信息和操作类型,所述操作类型为存操作或取操作。本发明能准确确定食物存取位置和用户操作信息,便于冰箱的智能化管理。

权利要求 :

1.一种冰箱,其特征在于,包括:

机壳,所述机壳内设有储藏室,所述储藏室前侧设有存取开口;

至少一个冰箱门,与所述壳体连接,用于打开或关闭所述存取开口;

设置在所述机壳顶部的感知模组,所述感知模组包括相机组件,所述相机组件用于拍摄所述存取开口对应的检测区域的彩色图像以及所述彩色图像对应的深度图像;

控制器,所述控制器与所述相机组件电连接,所述控制器被配置为:计算所述深度图像中的运动区域;

利用所述彩色图像进行手部检测,并识别食物种类;

根据所述运动区域和手部检测的结果,确定所述深度图像中的目标区域;

根据所述目标区域,计算手部质心;

根据所述手部质心和所述储藏室内各层位的深度范围,获得用户操作信息;所述用户操作信息包括食物种类、位置信息和操作类型;其中,所述操作类型是在检测到手部具有食物时根据手部质心的运动方向识别的,所述操作类型为存操作或取操作。

2.根据权利要求1所述的冰箱,其特征在于,所述控制器被配置为按照如下方式计算所述深度图像中的运动区域:在所述深度图像中提取感兴趣区域;

确定所述感兴趣区域中的冰箱背景区域;

将所述感兴趣区域与所述冰箱背景区域作差,得到所述运动区域。

3.根据权利要求2所述的冰箱,其特征在于,所述控制器被配置为按照如下方式确定所述感兴趣区域中的冰箱背景区域:在所述感兴趣区域中划定一个矩形区域;

计算第一深度图像和第二深度图像中矩形区域内各像素点的深度值差值;所述第一深度图像和所述第二深度图像为相邻的两帧深度图像,或者为间隔若干帧的两帧深度图像;

获取第一目标像素点的数量,所述第一目标像素点对应的深度值差值大于或等于深度阈值;

如果所述第一目标像素点的数量小于第一数量阈值,则确定第二深度图像中的矩形区域为所述冰箱背景区域。

4.根据权利要求2或3所述的冰箱,其特征在于,在所述深度图像中提取感兴趣区域之前,所述控制器还被配置为:将所述深度图像的分辨率M*N缩小为(M/r)*(N/s);其中,M为所述深度图像在高度方向上包括的像素点个数,N为所述深度图像在宽度方向上包括的像素点个数,r为在高度方向上的下采样倍数,s为在宽度方向上的下采样倍数。

5.根据权利要求1所述的冰箱,其特征在于,所述控制器被配置为按照如下方式确定所述深度图像中的目标区域:如果在所述彩色图像中检测到手部区域,则根据所述彩色图像与所述深度图像的映射关系,将所述手部区域中各像素点的坐标转换为所述运动区域中的手部深度坐标;

根据所述手部深度坐标,在所述运动区域中提取出所述目标区域。

6.根据权利要求1所述的冰箱,其特征在于,所述控制器被配置为按照如下方式确定所述深度图像中的目标区域:如果在所述彩色图像中无法检测到手部区域,则在所述运动区域中生成滑动窗口;

利用所述滑动窗口遍历所述运动区域,统计所述滑动窗口内第二目标像素点的数量,所述第二目标像素点的深度值在阈值范围内;

如果所述滑动窗口内第二目标像素点的数量大于或等于第二数量阈值,则将所述滑动窗口当前圈定的区域作为所述目标区域。

7.根据权利要求5或6所述的冰箱,其特征在于,所述控制器被配置为按照如下方式计算手部质心:对所述目标区域进行滤波处理;

计算滤波后的目标区域中各像素点坐标的均值,作为所述手部质心。

8.根据权利要求7所述的冰箱,其特征在于,所述控制器被进一步配置为按照如下方式获得用户操作信息:追踪所述手部质心的运动轨迹;

根据所述运动轨迹的方向和食物种类识别结果,确定所述操作类型;

比较所述手部质心的深度值与所述储藏室内各层位的深度范围,确定手部操作对应的目标层位,根据所述目标层位得到所述位置信息。

9.根据权利要求1所述的冰箱,其特征在于,所述感知模组还包括扬声器,所述扬声器与所述控制器电连接,所述控制器被进一步配置为:控制所述扬声器播报所述用户操作信息。

10.根据权利要求1所述的冰箱,其特征在于,所述冰箱门上设置有显示屏,所述显示屏与所述控制器电连接,所述控制器被进一步配置为:控制所述显示屏显示所述用户操作信息。

11.根据权利要求1所述的冰箱,其特征在于,所述冰箱还包括通信器,所述通信器与所述控制器电连接,所述控制器被配置为:通过所述通信器,向用户的终端设备推送所述用户操作信息。

说明书 :

一种冰箱

技术领域

[0001] 本发明涉及智能家电技术领域,尤其涉及一种冰箱。

背景技术

[0002] 冰箱是生活中常用的电器设备,通过对食物进行制冷,比如冷藏或冷冻,实现食物的保鲜储存,用户可以将食物存放入冰箱,也可以从冰箱中取出所需的食物,通过对食物种类以及食物存取位置等用户操作信息的识别,可以便于冰箱的智能化管理。
[0003] 目前识别用户操作信息主要采用食物动态识别技术,即在冰箱上安装相机,在用户动态存取食物的过程中,通过拍摄手部食物的彩色图像来识别食物种类,并借助冰箱储藏室内各层的参照物和食物种类识别结果等信息进行食物存取位置识别,这种方式高度依赖于食物种类识别的准确性和实时性,而食物种类识别仍存在较多的漏检和误检情况,导致食物存取位置识别的准确性低。

发明内容

[0004] 为解决上述技术问题,本发明提供一种冰箱,以提高食物存取位置识别的准确性。
[0005] 本发明提供一种冰箱,包括:
[0006] 机壳,所述机壳内设有储藏室,所述储藏室前侧设有存取开口;
[0007] 至少一个冰箱门,与所述壳体连接,用于打开或关闭所述存取开口;
[0008] 设置在所述机壳顶部的感知模组,所述感知模组包括相机组件,所述相机组件用于拍摄所述存取开口对应的检测区域的彩色图像以及所述彩色图像对应的深度图像;
[0009] 控制器,所述控制器与所述相机组件电连接,所述控制器被配置为:
[0010] 计算所述深度图像中的运动区域;
[0011] 利用所述彩色图像进行手部检测,并识别食物种类;
[0012] 根据所述运动区域和手部检测的结果,确定所述深度图像中的目标区域;
[0013] 根据所述目标区域,计算手部质心;
[0014] 根据所述手部质心和所述储藏室内各层位的深度范围,获得用户操作信息;所述用户操作信息包括食物种类、位置信息和操作类型,所述操作类型为存操作或取操作。
[0015] 在第一种可能的实现方式中,所述控制器被配置为按照如下方式计算所述深度图像中的运动区域:
[0016] 在所述深度图像中提取感兴趣区域;
[0017] 确定所述感兴趣区域中的冰箱背景区域;
[0018] 将所述感兴趣区域与所述冰箱背景区域作差,得到所述运动区域。
[0019] 在第二种可能的实现方式中,所述控制器被配置为按照如下方式确定所述感兴趣区域中的冰箱背景区域:
[0020] 在所述感兴趣区域中划定一个矩形区域;
[0021] 计算第一深度图像和第二深度图像中矩形区域内各像素点的深度值差值;所述第一深度图像和所述第二深度图像为相邻的两帧深度图像,或者为间隔若干帧的两帧深度图像;
[0022] 获取第一目标像素点的数量,所述第一目标像素点对应的深度值差值大于或等于深度阈值;
[0023] 如果所述第一目标像素点的数量小于第一数量阈值,则确定第二深度图像中的矩形区域为所述冰箱背景区域。
[0024] 在第三种可能的实现方式中,在所述深度图像中提取感兴趣区域之前,所述控制器还被配置为:
[0025] 将所述深度图像的分辨率M*N缩小为(M/r)*(N/s);其中,M为所述深度图像在高度方向上包括的像素点个数,N为所述深度图像在宽度方向上包括的像素点个数,r为在高度方向上的下采样倍数,s为在宽度方向上的下采样倍数。
[0026] 在第四种可能的实现方式中,所述控制器被配置为按照如下方式确定所述深度图像中的目标区域:
[0027] 如果在所述彩色图像中检测到手部区域,则根据所述彩色图像与所述深度图像的映射关系,将所述手部区域中各像素点的坐标转换为所述运动区域中的手部深度坐标;
[0028] 根据所述手部深度坐标,在所述运动区域中提取出所述目标区域。
[0029] 在第五种可能的实现方式中,所述控制器被配置为按照如下方式确定所述深度图像中的目标区域:
[0030] 如果在所述彩色图像中无法检测到手部区域,则在所述运动区域中生成滑动窗口;
[0031] 利用所述滑动窗口遍历所述运动区域,统计所述滑动窗口内第二目标像素点的数量,所述第二目标像素点的深度值在阈值范围内;
[0032] 如果所述滑动窗口内第二目标像素点的数量大于或等于第二数量阈值,则将所述滑动窗口当前圈定的区域作为所述目标区域。
[0033] 在第六种可能的实现方式中,所述控制器被配置为按照如下方式计算手部质心:
[0034] 对所述目标区域进行滤波处理;
[0035] 计算滤波后的目标区域中各像素点坐标的均值,作为所述手部质心。
[0036] 在第七种可能的实现方式中,所述控制器被进一步配置为按照如下方式获得用户操作信息:
[0037] 追踪所述手部质心的运动轨迹;
[0038] 根据所述运动轨迹的方向和食物种类识别结果,确定所述操作类型;
[0039] 比较所述手部质心的深度值与所述储藏室内各层位的深度范围,确定手部操作对应的目标层位,根据所述目标层位得到所述位置信息。
[0040] 在第八种可能的实现方式中,所述感知模组还包括扬声器,所述扬声器与所述控制器电连接,所述控制器被进一步配置为:控制所述扬声器播报所述用户操作信息。
[0041] 在第九种可能的实现方式中,所述冰箱门上设置有显示屏,所述显示屏与所述控制器电连接,所述控制器被进一步配置为:控制所述显示屏显示所述用户操作信息。
[0042] 在第十种可能的实现方式中,所述冰箱还包括通信器,所述通信器与所述控制器电连接,所述控制器被配置为:通过所述通信器,向用户的终端设备推送所述用户操作信息。
[0043] 本发明提供的技术方案具备如下有益效果:本申请主要是基于深度图像实现食物动态识别,通过对深度图像进行计算处理,确定深度图像中的目标区域,该目标区域是用户手部运动的区域,根据目标区域可以准确定位手部质心的位置,由于相机组件是从冰箱顶部拍摄存取开口对应的检测区域的深度图像,因此拍摄出的深度图像是视野内场景的俯视图,包含有场景的深度信息,因此在深度图像中可以划分出冰箱高度方向上各层位的深度范围,手部质心落到哪个深度范围内,则说明存取位置在对应的层位上,并且根据手部质心也能确定用户是向冰箱内存放食物(存操作)还是从冰箱取出食物(取操作),从而确定操作类型,根据相机组件拍摄的彩色图像,可以识别食物种类,这样即可获得用户操作信息,比如苹果存入第一层。相较于二维彩色图像的食物动态识别方式,深度图像包含深度信息,能够更准确地确定食物存取的位置信息,以及准确获取用户操作信息,便于冰箱的智能化管理。

附图说明

[0044] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045] 图1为本发明实施例示出的冰箱门关闭时冰箱的正面结构示意图;
[0046] 图2为本发明实施例示出的冰箱门打开时冰箱的正面结构示意图;
[0047] 图3为本发明实施例示出的冰箱侧面结构示意图;
[0048] 图4为本发明实施例示出的感知模块的仰视图;
[0049] 图5为本发明实施例示出的相机组件的FOV范围示意图;
[0050] 图6为本发明实施例示出的深度图像的效果示例图;
[0051] 图7为本发明实施例示出的冰箱结构连接框图;
[0052] 图8为本发明实施例示出的一种冰箱的控制方法流程图;
[0053] 图9为本发明实施例示出的另一种冰箱的控制方法流程图;
[0054] 图10为本发明实施例示出的深度图像中ROI的示意图;
[0055] 图11为本发明实施例示出的ROI中划定的矩形区域的示意图;
[0056] 图12为本发明实施例示出的冰箱背景区域的示意图;
[0057] 图13为本发明实施例示出的运动区域的示意图;
[0058] 图14(a)为本发明实施例示出的基于肤色检测算法得到的手部效果图;
[0059] 图14(b)为本发明实施例示出的基于深度学习算法得到的手部效果图;
[0060] 图15为本发明实施例示出的在运动区域中设定阈值范围的原理图;
[0061] 图16为本发明实施例示出的滑窗法检测到的深度图像中目标区域的示意图;
[0062] 图17为本发明实施例示出的冷藏室内各层位的深度范围的划分示意图;
[0063] 图18为本发明实施例示出的冰箱智能化应用和服务示意图。

具体实施方式

[0064] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0065] 如图1~图3所示,冰箱可以放置在厨房等室内空间中,冰箱整体上至少包括机壳10、冰箱门20、感知模组30和控制器40。
[0066] 其中,机壳10内包括储藏室101,储藏室101可以具体规划为冷藏室和冷冻室,冷藏室和冷冻室可以上下分布或左右分布,冷藏室和冷冻室的容量配比不作限定。对于冷藏室和冷冻室,其室内空间比如可以沿竖直方向设置多个隔板,从而将室内空间划分多个层位,便于用户对食物进行分类放置和管理。需要说明的是,冰箱储藏室的结构和空间利用方式不限于本实施例所述。储藏室101的前侧,即储藏室101与冰箱门20的连接侧设置有存取开口102,通过存取开口可以方便用户从储藏室内存放或取出食物。
[0067] 冰箱门20与机壳10连接,比如可采用枢转连接等方式,以使冰箱门20能够沿与机壳10的连接端转动,实现冰箱门20的开合,从而打开或关闭存取开口102,便于用户存取食物,并且保证冰箱的储藏室101的密封性。冰箱门20的数量至少为一个,冰箱门20的数量和安装位置应适应于储藏室的规划。
[0068] 冰箱门20上可以设置显示屏50,显示屏50与控制器40电连接,显示屏50面向用户,可以向用户显示食物库中的食物种类、食物放置的位置、食物存放的时间以及保质期等信息,还可以根据食物库中的食物种类,向用户显示推荐的健康食谱,用户也可以对显示屏50进行触控操作,对冰箱进行一些基本控制,比如调节冷冻室和冷藏室的温度等,实现了冰箱的智能化管理和应用,并且提升用户与冰箱之间的交互体验。
[0069] 感知模组30包括感知模块301和驱动机构302,感知模块301和驱动机构302之间机械连接,如图4所示,感知模块301中集成有相机组件301A、扬声器301B和语音输入设备301C等设备,相机组件301A、扬声器301B、语音输入设备301C和驱动机构302分别与控制器40电连接,实现控制器40对各电器设备的电控制。其中,语音输入设备301C可以是麦克风,麦克风可采用线性4麦,即在感知模块301的底部上均匀分布4个麦克风孔,扬声器301B可以设置在感知模块301的侧面,以增加麦克风与扬声器301B之间的距离。
[0070] 相机组件301A可以包括彩色相机301A‑1和深度相机301A‑2,彩色相机301A‑1和深度相机301A‑2的视窗都设置在感知模块301的底部,使得两个相机的视野范围朝下,即拍摄出的图像是视野内场景的俯视图,感知模组30设置在冰箱的顶部,当冰箱门20处于关闭状态时,感知模块301位于初始位置,所述初始位置可以是冰箱顶部的中央,这时彩色相机301A‑1和深度相机301A‑2的拍摄视野会被遮挡,从而可以保证用户的隐私安全。驱动机构
302可以由电机驱动运转,驱动机构302可以采用履带式驱动机构,即通过履带的传动来输送感知模块301,从而调节感知模块301的位置,驱动机构302不限于本实施例所述,比如还可采用弹动式,控制感知模块301弹出至指定的工作位置。
[0071] 具体地,控制器40响应于接收到的开门指令,控制驱动机构302将感知模块301输送到存取开口102上方的位置,即感知模块301是在冰箱门20打开时才会达到存取开口102上方,以使相机组件301A能够拍摄存取开口102对应的检测区域的彩色图像以及彩色图像对应的深度图像,便于后续识别食物种类、操作类型和食物存取位置等信息;以及,控制器40响应于接收到的关门指令,控制驱动机构302将感知模块301复位到所述初始位置,即在冰箱门20关闭时,感知模块301要归于初始位置处,起到隐藏感知模组30的目的,这样既可以保证冰箱外观的美观性,还可以保证用户的隐私安全。
[0072] 其中,开门指令和关门指令可以是根据用户的开关门动作生成电平信号,比如可以在冰箱门20上设置感应器,用以感应用户的开关门动作,开门指令为根据开门动作生成的高电平信号,关门指令为根据关门动作生成的低电平信号;或者,开门指令和关门指令也可以由用户通过语音进行控制生成,冰箱中还可包括语音识别系统,语音输入设备301C将音频信号发送给语音识别系统,并由语音识别系统对音频信号进行识别,则开门指令为在识别出用户通过语音输入设备301C输入的开门指示信息后生成的开门信号,关门指令为在识别出用户通过语音输入设备301C输入的关门指示信息后生成的关门信号,比如用户对准麦克风说出“开门”,则语音识别系统识别后生成开门指令,并将指令发给控制器40,控制器40根据开门指令控制驱动机构302将感知模块301移动至存取开口102的上方,同时控制冰箱门20打开,通过语音控制冰箱门20启闭时,可以在冰箱门20上设置门控装置,控制器40给门控装置发送控制指令,则门控装置根据控制指令即可控制冰箱门20打开或关闭。
[0073] 当冰箱门20被打开时,控制器40控制驱动机构302工作,驱动机构302会带动感知模块301移动至冰箱前侧且位于存取开口102上方的位置,这时相机组件301A的视野没有遮挡,可以拍摄检测区域的彩色图像和深度图像,这里所述的检测区域是对应于存取开口102一定范围内的空间区域,也即相机组件301A的拍摄视野范围对应的区域,如图5所示,示出了冰箱正面和侧面视向下,相机组件301A的FOV(Field Of View,视场角)范围,冰箱正面视向下,FOV为角度α,视野可以涵盖存取开口102和冰箱门20内侧的大部分区域;冰箱侧面视向下,FOV为角度β,视野可以涵盖储藏室101的部分区域以及冰箱前侧一定高度范围内的空间区域。可选地,可以在感知模组30中设置反射光路,以提高α和β的角度值,增大相机组件301A的视野范围,降低相机组件301A的拍摄盲区,有利于提高检测的准确性。
[0074] 相机组件301A包括彩色相机301A‑1和深度相机301A‑2时,即相机组件301A相当于RGBD相机,相机组件301A同一时刻可以输出一帧彩色图像以及一帧与彩色图像对应的深度图像,这里所述的深度图像相当于在彩色图像中融合深度信息后得到的图像,深度图像中可以具有一定的深度渲染效果,如图6所示,示出了某深度相机输出的深度图像的效果图(俯拍图),深度图像中每个像素点都具有深度值,可用于衡量图中每个像素点位置与相机组件301A之间的高度差。
[0075] 其中,彩色相机301A‑1可以拍摄彩色图像,彩色相机301A‑1可以采用RGB相机等,通过对彩色图像进行处理和计算,可以准确地识别手部存取的食物种类,在手部进出存取开口102时,彩色相机301A‑1拍摄检测区域的彩色图像,在进行食物种类识别时,可在彩色图像中提取ROI(Region Of Interest,感兴趣区域),ROI对应于手部和食物的区域,通过提取ROI的区域图像可以降低计算量和传输的数据量,也能提升食物识别的实时性、准确性和效率,ROI可以根据实际经验和硬件参数等进行设定;在提取出彩色图像的ROI后,可以采用现有的一些食材识别算法来识别存取食物的种类,比如使用基于CNN(Convolutional Neural Networks,卷积神经网络)模型进行识别,CNN模型是计算机视觉领域常用的一种深度学习模型,具体可参照相关现有技术,本实施例不再赘述。需要说明的是,食物种类识别的算法不作限定。
[0076] 深度相机301A‑2可以拍摄出深度图像,深度相机301A‑2比如可以选取TOF(Time Of Flight,飞行时间)相机或双目结构光深度相机等,相机的光轴应垂直于地面,深度图像(depth image)也被称为距离影像,是指将图像采集器到场景中各点的距离(深度)作为像素值的图像,它直接反映了景物可见表面的几何形状,深度图像经过坐标转换可以计算为三维点云数据。由于深度图像中具有场景的深度信息,可以更利于准确捕捉和追踪手部的运动轨迹,从而提高目标对象操作类型识别的准确性,这里所述的操作类型包括存操作和取操作,存操作是指用户向冰箱内存放食物的操作,取操作是指用户从冰箱内取出食物的操作。此外,由于相机组件301A是从冰箱顶部拍摄存取开口102对应的检测区域的深度图像,因此拍摄出的深度图像是视野内场景的俯视图,包含有场景的深度信息,因此这里的深度信息用于衡量场景中各点与深度相机301A‑2在竖直高度上的距离,通过在深度图像中划分出冰箱高度方向上各层位的深度范围,手部质心落到哪个深度范围内,则说明存取位置在对应的层位上。
[0077] 本实施例中所述的控制器40为冰箱的总控制系统,如图7所示,控制器40分别与感知模组中的相机组件301A、扬声器301B、语音输入设备301C和驱动机构302电连接,以及与显示屏50和通信器60电连接,可用于对彩色图像、深度图像、音频数据等进行采集和处理,从而得到冰箱门20打开后的用户操作信息,所述用户操作信息包括食物种类、位置信息和操作类型,所述操作类型为存操作或取操作,例如,用户操作信息为“苹果存入冷藏室第一层”,即食物种类为苹果,操作类型为存操作,位置信息为冷藏室第一层,同时控制器40承担数据库、与外部终端设备通讯等功能。
[0078] 在其他可能的实现方式中,也可以为冰箱配置外置相机80,外置相机80与控制器40电连接,用于采集人脸图像,控制器40通过建立人脸数据库以用于人脸识别,这样即可识别出操作主体是哪个家庭成员,比如用户操作信息为“妈妈从冷藏室第三层取出冰淇淋”,即操作主体为家庭成员中的妈妈,食物种类为冰淇淋,操作类型为取操作,位置信息为冷藏室第三层,从而实现“谁从冰箱什么位置存或取了什么食物”这一用户操作信息的自动感知和录入。
[0079] 冰箱中还可包括通信器60,通信器60与控制器40电连接,通信器60可采用WIFI模块、蓝牙模块等无线通信模块,实现冰箱与用户的终端设备70之间的无线通信,比如向终端设备70推送今日健康食谱,发送检测到的用户操作信息,或者发送即将达保质期的食物信息等内容。终端设备70可以是智能手机、智能手环和平板电脑等移动终端,也可以是笔记本电脑、台式电脑等显示设备,本实施例不作限定。
[0080] 如图8所示,本申请提供一种冰箱的控制方法,该控制方法为控制器被配置执行的方法,即该控制方法的执行主体为控制器40,所述方法包括:
[0081] 步骤S1,计算深度图像中的运动区域。
[0082] 深度图像中可以包括静止区域和运动区域,由于冰箱的机壳10在室内空间中是静置的,因此冰箱背景属于静止区域,而人手进行存取食物操作时是运动着的,因此手部和手臂对应的区域属于运动区域,在冰箱门20打开后,由于深度组件301A‑2与冰箱之间的位置相对固定,因此深度图像中静止的物体的深度值是固定的,或者在较小范围内波动,因此可以根据静止区域反向获取运动区域。
[0083] 具体地,如图9所示,步骤S1可包括:
[0084] 步骤S102,在深度图像中提取感兴趣区域(Region Of Interest,ROI)。本领域技术人员可以根据实际需要来设定ROI的区域范围,本实施例中采用食物动态识别方案,即在用户存取食物的过程中动态识别食物种类、操作类型和存取操作的位置信息,因此在深度图像中主要关注冰箱与用户之间的区域,比如ROI可包括用户前侧(包括用户手部和手中食物)、冰箱储藏室、冰箱门20内侧区域等。通过在深度图像中提取ROI,可将深度图像中的一些无效区域剔除,这里所述的无效区域包括但不限于无深度区域、噪声区域、以及对实际计算无用的场景区域,比如用户背侧等区域,从而降低图像处理的计算量,提高检测效率和检测的准确性。ROI部分对应的深度图像记为depthROI。
[0085] 深度相机301A‑2拍摄的是高分辨率的大图,为进一步降低算法的计算量,提交图像处理效率,可选地,在步骤S102之前,所述方法包括:步骤S101,对所述深度图像进行下采样处理。进行下采样的目的在于将高分辨率的深度图像缩减为小图,即下采样后生成深度图像对应的缩略图depthSample,然后在depthSample上设定并提取ROI,即可得到depthROI,如图10所述,虚线框中圈定的部分即为ROI区域。
[0086] 下采样的计算方式为:对于深度图像depthImage,其分辨率为M*N,其中,M为深度图像在高度方向上包括的像素点个数,N为深度图像在宽度方向上包括的像素点个数,对深度图像进行r*s倍下采样,将分辨率M*N缩小为(M/r)*(N/s),r为在高度方向上的下采样倍数,s为在宽度方向上的下采样倍数,r和s应分别为M和N的公约数,从而得到分辨率为(M/r)*(N/s)的小图,即将原始深度图像r*s窗口内的图像变成了一个像素,该像素点可以是r*s窗口所有像素的均值、最大值、最小值或者中值等统计值。
[0087] 步骤S103,利用帧差法确定所述感兴趣区域中的冰箱背景区域。本实施例中,提供利用帧差法确定冰箱背景区域的计算方式,深度相机301A‑2连续采集深度图像,对应的图像帧号依次为1,2…,i,i+1,…,然后在感兴趣区域(depthROI)中划定一个矩形区域rect,如图11中的点线矩形框圈定的区域,由于depthROI中包括静止区域和运动区域,矩形区域rect是根据实际尺寸在depthROI上进一步设定的包含冰箱背景的区域,然后将第一深度图像和第二深度图像的矩形区域rect做差,即计算第一深度图像和第二深度图像中矩形区域rect内各像素点的深度值差值,这里要确保深度值depthValue是有效的,即满足depthMin﹤depthValue﹤depthMax,无效的深度值不参与计算,depthMin和depthMax分别为depthROI中深度值的最小值和最大值,然后可以将深度值差值存入到差值矩阵matDiff_i中:
[0088]
[0089] 上式中, 为第一深度图像(帧号为i‑n)中的矩形区域rect,为第二深度图像(帧号为i)中的矩形区域rect,其中i大于3,表示从第三帧深度图像开始计算差值,第一深度图像和第二深度图像可以为相邻的两帧深度图像,这时n=1,即第一深度图像和第二深度图像是连续的两帧;或者,第一深度图像和第二深度图像为间隔若干帧(n帧)的两帧深度图像,这时n大于1,为保证冰箱背景区域计算的准确性以及便于冰箱背景区域的更新,n的取值不应过大,n可取2或3,即选取间隔1帧或2帧的两帧深度图像来计算matDiff_i。
[0090] 在matDiff_i计算完成后,获取第一目标像素点的数量depthNum1,这里所述的第一目标像素点是指matDiff_i中深度值差值大于或等于深度阈值depthT的像素点,然后判断第一目标像素点的数量depthNum1是否小于第一数量阈值depthNumT1,如果depthNum1小于depthNumT1,则说明矩形区域rect中深度值波动较小,即认为当前划定的矩形区域rectrect为静止区域,则将第二深度图像中的矩形区域depthROIi 作为冰箱背景区域AreaFridge进行存储,获得的冰箱背景区域AreaFridge如图12所示,从而实现对冰箱背景区域AreaFridge的更新;如果depthNum大于或等于depthNumT,则说明当前划定的矩形区域rect中存在运动物体,则不更新冰箱背景区域AreaFridg(pass),既满足如下公式:
[0091]
[0092] 步骤S104,将所述感兴趣区域与所述冰箱背景区域作差,得到所述运动区域AreaMoving,即:
[0093] AreaMoving=depthROI‑AreaFridge
[0094] 这一步骤是利用冰箱背景区域来反向获得depthROI中的运动区域,即计算depthROI与AreaFridge中各像素点深度值的差值,从depthROI中减去静止部分的区域,即可得到包括手部和手臂的运动区域,运动区域如图13所示,从图中可以看出,获得的运动区域中可能存在一些零星的斑点噪声,可以采取斑点滤波来消除,斑点滤波可以参照现有技术,本实施例不再赘述。
[0095] 步骤S2,利用彩色图像进行手部检测,并识别食物种类。
[0096] 步骤S1计算的运动区域AreaMoving可以初步获取到手部和手臂区域,但是基于此时获取的运动区域进行食物存取位置识别,仍然存在一定的误识别,比如竖直存入矿泉水到冷藏室第二层时,经常误识别为存入冷藏室第三层,分析原因发现,手部位置接近每个层位的隔板分界处时,由于粗提取的手部运动位置不够精确,容易误触发预设的层位深度范围。因此,本实施例中利用彩色图像进行手部检测,以进一步精细化地提取手部质心。
[0097] 利用彩色图像进行手部检测的算法不作限定,比如一种是基于肤色的手部检测方法,运动区域AreaMoving中,手部如果没有遮挡或者没有戴手套,则裸露的手部可以利用肤色检测到,常用的肤色检测算法包括但不限于基于RGB/Ycrcb/HSV颜色空间,基于椭圆皮肤模型的皮肤检测等,基于肤色的手部检测效果如图14(a)所示,手部为图中灰色部分(实际图像中灰色部分呈现肤色);另一种是基于深度学习算法,利用深度模型直接将手部框出,如图14(b)所示。基于肤色检测获取的手部更加精准,但是计算量相对大些;基于深度学习算法,直接利用食物识别模型将手部作为识别目标类即可,但是可能存在一定的漏检,并且只能用矩形框框出手部区域。
[0098] 步骤S3,根据所述运动区域和手部检测的结果,确定所述深度图像中的目标区域。
[0099] 如图9所示,步骤S3包括:
[0100] 步骤S301,判断彩色图像中是否检测到手部区域。利用肤色检测或者深度学习等算法对彩色图像进行手部检测,如果检测到手部区域AreaHand,则执行步骤S302;反之,法检测到手部区域AreaHand,则执行步骤S303。
[0101] 步骤S302,将彩色图像中的手部区域映射至对应的深度图像的运动区域,得到目标区域。如果能检测到手部区域,则可以基于彩色图像反向获取AreaHand中各像素点的深度信息,这是由于深度相机301A‑2一般在出厂时就完成了彩色图像与深度图像的标定,使得彩色图像与深度图像之间具有映射关系,那么就可以根据所述映射关系,将彩色图像中的手部区域AreaHand映射至对应的深度图像的运动区域AreaMoving中,即将手部区域AreaHand中各像素点的坐标转换为运动区域AreaMoving中的手部深度坐标,然后根据手部深度坐标,将映射后的手部深度坐标对应的各像素点进行汇总,即可在运动区域中提取出目标区域AreaTarget,相当于对AreaMoving和AreaHand进行了融合取交,既有:
[0102] AreaTarget=AreaMoving∩AreaHand
[0103] 步骤S303,在运动区域中利用滑窗法获得目标区域。
[0104] 在某些使用情景中,用户在存取食物过程中,存在手部被遮挡或者戴手套等情况,导致在彩色图像中无法检测到手部区域AreaHand,在这种情况下,为了能获取到目标区域AreaTarget,本实施例在运动区域AreaMoving中采用滑窗法检测目标区域,具体地,可以在运动区域AreaMoving中生成滑动窗口,滑动窗口的尺寸p*q应适应于框住手部,滑动窗口的尺寸在合理范围内覆盖越大,计算准确性越高,但是相对地计算量也越大,因此可以根据实际情况设定滑动窗口的尺寸p*q,本实施例不作具体限定。然后利用滑动窗口遍历运动区域AreaMoving,比如可以由运动区域AreaMoving下方开始遍历,并统计滑动窗口内第二目标像素点的数量,所述第二目标像素点的深度值在阈值范围内。
[0105] 如图15所示,运动区域AreaMoving中包括白色虚线框内部的手部运动区域(图15中呈现灰色,在实际图像中该区域呈现彩色),此外还可能包括一些无效区域,图15中所述无效区域即为呈现黑色的区域,所以无效区域内的像素点不具有有效的深度值,因此可以根据手部运动区域可能的深度值范围,适应性地设定一个阈值范围[dmin,dmax],dmin和dmax分别为阈值范围的深度下限值和深度上限值,深度值在该阈值范围内的像素点即为第二目标像素点。基于运动区域AreaMoving设定阈值范围,便于将手部运动区域和无效区域进行分割,从而提高获取目标区域的准确性。
[0106] 滑动窗口在运动区域AreaMoving中不断滑动遍历,即滑动窗口在运动区域AreaMoving中的位置会发生变化,滑动窗口位置不同,其圈定的区域也就不同,其圈定的可能是无效区域或者是有效的手部运动区域,因此统计滑动窗口内第二目标像素点的数量depthNum2,判断滑动窗口内第二目标像素点的数量depthNum2是否大于或等于第二数量阈值depthNumT2。如果depthNum2小于depthNumT2,认为滑动窗口没有位于手部运动区域中,则继续利用滑动窗口遍历运动区域AreaMoving;如果depthNum2大于或等于depthNumT2,则认为滑动窗口位于手部运动区域内,停止遍历,将滑动窗口当前圈定的区域作为目标区域AreaTarget,基于滑窗法检测到的深度图像中的目标区域AreaTarget如图16中的矩形线框所示。
[0107] 步骤S4,根据所述目标区域,计算手部质心。
[0108] 如图9所示,获取目标区域AreaTarget后,步骤S4包括:
[0109] 步骤S401,对目标区域进行滤波处理。所述滤波处理包括斑点滤波和3sigma滤波等,以去掉目标区域AreaTarget中的噪声,以保证手部质心计算的准确性。
[0110] 步骤S402,计算滤波后的目标区域中各像素点坐标的均值,作为所述手部质心H(x,y,z)。H(x,y,z)表示深度图像中手部质心的三维位置坐标,x和y是二维平面上的坐标,也是在对应的彩色图像中的坐标,z则是深度值坐标,然后追踪手部质心的运动位置,以便后续获得用户操作信息。
[0111] 步骤S5,根据所述手部质心和所述储藏室内各层位的深度范围,获得用户操作信息;所述用户操作信息包括食物种类、位置信息和操作类型,所述操作类型为存操作或取操作。
[0112] 冰箱门20打开后,通过相机组件301A中的彩色相机301A‑1拍摄彩色图像,从彩色图像中提取出包括手部的ROI,进而根据彩色图像中的ROI区域确定手部是否具有食物以及食物种类,这里所述的食物种类可以是例如肉、水果、冷饮、水这种大类别,或者是每个大类别中更细化的食物名称,比如牛肉、苹果、雪糕、可口可乐等等。
[0113] 追踪手部质心的运动轨迹,连续的运动轨迹可以看作由多段向量组成,实时分析手部质心的轨迹向量,结合彩色图像中食物种类识别结果,便可确定所述目标对象的操作类型。
[0114] 具体来说,比如,冰箱门20打开后,追踪到手部质心的运动方向为从冰箱前侧的用户存取操作区域向内移动至存取开口102处,并且在移动至存取开口102的时刻拍摄的彩色图像中,识别到手部拿有食物,则说明用户是向冰箱内存放食物,即用户的操作类型为存操作;又比如,追踪到手部质心的运动方向为从储藏室101内部向外移动至存取开口102处,并且在移动至存取开口102的时刻拍摄的彩色图像中,识别到用户手部拿有某种类的食物,则说明用户是从冰箱内取出了食物,即目标对象的操作类型为取操作。
[0115] 基于深度相机的固定位置以及固有的冰箱储藏室分层结构,不同区域在深度图像中的位置及深度范围是固定的,因此可以对应于储藏室各层位,分别设定各层位的深度范围,如图17所示,为冷藏室内各层位的深度范围的示例性划分,图中多条白色虚线分割了不同的深度范围,追踪到手部质心进入存取开口102内时,比较手部质心的深度值与各层位的深度范围,从而确定手部操作对应的目标层位。
[0116] 对于冷藏室和冷冻室上下分布的冰箱结构,可以根据手部质心的深度值和划定的深度范围,确定手部操作对应于哪个储藏室以及在该储藏室中的目标层位,从而得到所述位置信息;或者,对于冷藏室和冷冻室左右分布的冰箱结构,可以根据手部质心的三维位置坐标H(x,y,z)来确定,比如x坐标用于确定手部质心运动到左侧还是右侧,从而可以确定手部操作对应于哪个储藏室,并根据深度值坐标z确定手部操作对应于该储藏室内的哪个层位,从而得到位置信息,这样得到的位置信息包括储藏室类型和目标层位,比如位置信息为冷藏室第二层。
[0117] 当食物种类、操作类型和位置信息确定后,即可获得用户操作信息,并完成用户操作信息的自动录入,比如鸡蛋从冷藏室第一层取出,表明食物种类为鸡蛋,操作类型为取操作,位置信息为冷藏室第一层。本实施例中,冰箱的层位排序可以是从下至上,即层位序号随高度的升高而递增,或者,也可以是从上之下,即层位序号随高度的降低而递增。可以在控制器40中建立食物库,食物库中记录冰箱中存放的食物种类、食物存放的位置以及存入时间等信息,便于对冰箱储存的食物进行管理。
[0118] 当获取到用户操作信息后,在一种可能的实现方式中,控制器40可以被配置为控制扬声器301B播报所述用户操作信息。这种方式下,用户操作信息体现为语音信息,语音信息的格式可以预置为“某用户从某位置取出了某食物”,或者“某用户向某位置存入了某食物”,比如扬声器301B播报“爸爸向冷冻室第一层存入了冰淇淋”,则其他家庭成员可以通过该语音信息,听到爸爸对冰箱的操作行为。
[0119] 在另一种可能的实现方式中,控制器40可以被配置为控制显示屏50显示所述用户操作信息,这种方式下,用户操作信息体现为可视化的文字信息,这样用户就可以在显示屏50上看到用户的操作行为提示。
[0120] 在其他可能的实现方式中,控制器40可以被配置为通过所述通信器60,向用户的终端设备70推送所述用户操作信息。通信器60可以采用WIFI模块、蓝牙模块等无线通信模块,实现冰箱端与用户终端之间的通信交互,终端设备70可以是智能手机、智能手环、平板电脑等移动终端,或者笔记本电脑、台式电脑等设备,本实施例对此不作限定。用户操作信息推送到终端设备70后,可以体现为文字信息,即通过终端设备70的屏幕显示用户操作信息;或者,体现为语音信息形式,即通过终端设备70的扬声器来播放用户操作信息,当然在终端设备70中的体现形式不作限定。用户通过终端设备70接收到用户操作信息后,可以查看用户操作信息,从而获知家庭成员对冰箱的存取操作。
[0121] 需要说明的是,控制器40不限于配置为上述几种用户操作信息的提示方式,当一条用户操作信息生成后,可以触发至少一种提示方式。此外,冰箱的结构不限于本实施例所述,在实际中冰箱还应包括制冷系统、供电电源、温度控制系统等必要的电器结构,这部分电器结构可以参照现有冰箱结构进行配置,本实施例不再赘述。相较于二维彩色图像的食物动态识别方式,深度图像包含深度信息,提高食物存取的位置信息识别的准确性和稳定性,从而更准确地获取用户操作信息,便于冰箱的智能化管理。
[0122] 如图18所示,响应于冰箱门20的开关门信号,由感知模组30采集数据,这里所述的数据包括相机组件301A采集的图像数据(包括深度图像和彩色图像),以及语音输入设备301C采集的音频数据,控制器40根据感知模组30发送的数据识别食物种类、食物存取的位置信息、操作类型和食物保质期等信息,并将这些信息发送至终端设备70、冰箱的显示屏50或者控制感知模组30中的扬声器301B进行播报,终端设备701和冰箱可以安装与冰箱智能化服务有关的应用程序(APP),综合以上食物种类、操作类型、食物存取的位置信息等多维感知层信息,可通过不同维度的信息融合,结合知识图谱、大数据等技术,从而更好地为用户提供美食服务,比如可以支持用户查询食物库、食谱推荐、购买提醒、保质期管理、食物过期提醒等应用层功能,从而真正实现了冰箱的智能化管理和应用,提升用户体验。
[0123] 本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。具体实现中,本发明还提供一种存储介质90,其中,该存储介质90可存储有程序,该程序执行时可包括本发明提供的冰箱及其控制方法中的部分或全部步骤。所述存储介质90可为磁碟、光盘、只读存储记忆体(英文:read‑only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
[0124] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,并不构成对本发明保护范围的限定。本发明的真正范围和精神由所附的权利要求指出。
[0125] 本说明书中各个实施例之间相同相似的部分互相参照即可。