冰箱、服务器和冰箱的对象识别方法与流程

文档序号:25038175发布日期:2021-05-11 17:11阅读:179来源:国知局
冰箱、服务器和冰箱的对象识别方法与流程

本公开涉及冰箱、服务器及其对象识别方法,更具体地,涉及用于通过比较冰箱的原始图像和当前捕获的图像来识别图像捕获方向的改变的冰箱、服务器和冰箱的对象识别方法。



背景技术:

冰箱可以是指用于通过使用制冷剂的制冷循环来使可食用和可饮用的食物保持冷藏或冷冻的电子装置(或家用电器)。除了食物之外,冰箱还可以储藏药品、酒精饮料或化妆品。

近年来,为了管理储藏在冰箱中的食物,应用了用于捕获冰箱储藏室的图像并通过使用捕获的图像来执行关于所储藏的食物的对象识别的方法。为此,冰箱可以通过使用附接到门的前表面的相机来捕获储藏室的图像。

然而,由于门被用户多次打开和关闭,冲击可能施加到门上,这可能导致附接到门的前表面的相机的图像捕获方向的改变。当相机在图像捕获方向改变的同时捕获储藏室的图像时,可以通过识别原始图像和当前捕获的图像之间的显著变化来执行附加对象识别,尽管储藏在储藏室中的食物没有实际变化。在这种情况下,上述附加对象识别具有不必要的成本增加的问题,该问题归因于当执行对象识别时的资源使用引起的成本。



技术实现要素:

技术问题

本公开的目的在于提供冰箱、服务器和冰箱的对象识别方法,该冰箱通过比较冰箱的原始图像和当前捕获的图像来识别图像捕获方向的改变。

技术方案

根据本公开的一方面,提供一种冰箱的对象识别方法,该方法包括:通过拍摄(capture)冰箱的储藏室来获取捕获图像;基于捕获图像与预先存储的原始图像相比的变化被识别,识别拍摄了储藏室的图像捕获设备的图像捕获方向的改变;以及基于图像捕获方向被保持,针对捕获图像执行对象识别操作。

根据本公开的另一方面,提供一种冰箱,其包括:储藏室,配置为储藏食物;图像捕获设备,配置为捕获储藏室的图像;存储器,配置为存储先前由图像捕获设备捕获的原始图像;以及处理器,配置为通过经由控制捕获设备捕获储藏室的图像来获取捕获图像,基于捕获图像与原始图像相比的变化被识别,识别图像捕获设备的图像捕获方向是否改变,并且基于图像捕获方向被保持,针对捕获图像执行对象识别操作。

根据本公开的又一方面,提供一种服务器,其包括:存储器,配置为存储先前从冰箱接收的原始图像;通信设备,配置为从冰箱接收通过拍摄冰箱的储藏室而获取的捕获图像,基于捕获图像与原始图像相比的变化被识别,识别捕获图像的图像捕获方向是否改变,并且基于图像捕获方向被保持,针对捕获图像执行对象识别操作。

发明效果

附图说明

图1是用于示出根据一实施例的冰箱的具体配置的框图,

图2是示出根据一实施例的冰箱的具体配置的框图,

图3是示出根据一实施例的服务器的具体配置的框图,

图4是示出根据一实施例的服务器的具体配置的框图,

图5是示出根据一实施例的发生了图像捕获方向的改变的示例的图,

图6至图9是示出根据一实施例的用于使用图像中的多个特征点来识别图像捕获方向的改变的方法的示例的图,

图10是示出根据一实施例的用于使用人工智能模型来识别图像捕获方向的改变的方法的示例的图,

图11是用于示出根据一实施例的对象识别方法的流程图,

图12是用于具体示出根据一实施例的对象识别方法的流程图,

图13是用于示出第一实施例的使用冰箱和服务器的对象识别方法的序列图,以及

图14是用于示出根据第二实施例的使用冰箱和服务器的对象识别方法的序列图。

具体实施方式

示例性实施例的详细描述

在简要解释本公开中使用的术语之后,本公开将在下面被更详细地描述。

考虑到本公开中的功能,选择了本公开的实施例中使用的术语作为尽可能广泛使用的通用术语,但是这些术语可以根据本领域技术人员的意图、先例、新技术的出现等而变化。此外,在某种情况下,还可以存在任意选择的术语,在该情况下,将在本公开的描述中描述含义。因此,本公开中使用的术语应基于术语本身的含义以及贯穿本公开的内容而不是基于术语的简单名称来定义。

本公开的实施例可以被各种各样地改变并包括各种实施例,并且具体实施例将在附图中示出并在说明书中详细地描述。然而,应理解,这不是为了限制具体实施例的范围,并且所公开的精神和技术范围中包括的所有修改、等同形式和/或替代形式被包括。在描述本公开中,当确定详细描述可能不必要地使本公开的要点模糊时,可以省略相关技术的详细描述。

术语“第一”、“第二”等可以用于描述各种元件,但是这些元件可以不受术语限制。术语仅用于将一个元件与另一个元件区分开。

除非另有具体规定,否则单数表达可以涵盖复数表达。将理解,诸如“包括”或“由……构成”的术语在此用于表示特征、数量、步骤、操作、元件、部分或其组合的存在,而不排除其他特征、数量、步骤、操作、元件、部分或其组合中的一个或更多个的存在或添加可能性。

在下文中,参照附图,将详细描述本公开的实施例以使本领域技术人员容易地实践实施例。然而,本公开可以以各种不同的形式来实现,并且不限于在此描述的实施例。此外,在附图中,为了清楚地描述本公开,省略了与描述无关的部分。

在下文中,将参照附图更详细地描述本公开。

图1是用于示出根据一实施例的冰箱的具体配置的框图。

参照图1,冰箱100可以包括储藏室110、图像捕获设备120、存储器130和处理器140。

储藏室110可以是布置在冰箱100内部用于储藏食物的地方。储藏室110可以用作被保持在大约0至5摄氏度以冷却并储藏食物的冷藏室以及被保持在大约负30至0摄氏度以冷冻并储藏食物的冷冻室。

储藏室110可以具有开放的前表面,使得食物被放入和取出,并且其开放的前表面可以通过门(未示出)打开和关闭。用于放置食物的搁架可以设置在储藏室110中。

图像捕获设备120可以获取与图像捕获方向对应的预定区域的捕获图像。具体地,图像捕获设备120可以设置在门的面对储藏室110的一侧表面上,以具有朝向储藏室110的图像捕获方向。此外,图像捕获设备120可以获取储藏室110中的与图像捕获方向对应的预定区域的捕获图像。

这里的图像捕获方向可以是图像捕获设备120的透镜所面对的方向。通过透镜形成的图像可以根据图像捕获方向的改变而改变。因此,当图像捕获方向改变时,与其对应的预定区域也可以改变。这里的预定区域可以是指可由图像捕获设备120通过透镜检测到的唯一检测区域。

图像捕获设备120的数量可以多于一个,并且多个图像捕获设备可以获取分别与多个图像捕获方向对应的多个预定区域的捕获图像。具体地,图像捕获设备120可以以预定间隔设置在门的面对储藏室110的所述一侧表面上,并且可以获取储藏室110中的分别与所述多个图像捕获方向对应的所述多个预定区域的捕获图像。

当发生预定事件时,图像捕获设备120可以获取预定区域中的捕获图像。这里的预定事件可以对应于冰箱100的开启事件、预定周期到达事件或冰箱100的门关闭事件,并且不限于以上示例。

存储器130可以存储用于冰箱100的通用操作的各条数据,诸如用于处理或控制处理器140的程序。具体地,存储器130可以存储在冰箱100中运行的多个应用程序以及用于冰箱100的操作的数据和指令。

此外,存储器130可以由处理器140访问,并且通过处理器140的数据读取、记录、编辑、删除或更新可以被执行。除了冰箱100中的储存介质之外,存储器130还可以被实现为包括外部存储介质或usb存储器的可移动盘、经由网络的网络服务器等。

存储器130可以存储图像捕获设备120捕获的图像。具体地,存储器130可以存储通过由图像捕获设备120捕获储藏室110的内部而获取的图像。

处理器140可以针对冰箱100中的每个元件执行控制。具体地,关于具体功能的指令被接收,处理器140可以控制与对应功能有关的元件的操作。

处理器140可以执行关于容纳在冰箱的储藏室110中的食物的对象识别。具体地,处理器140可以使用储藏室100的由图像捕获设备120捕获的捕获图像来执行对象识别。例如,处理器140可以分析捕获图像以识别容纳在储藏室110中的食物的类型、食物的数量、容纳时间点、有效期信息等。

然而,如果处理器140针对由图像捕获设备120捕获的所有捕获图像执行对象识别,则需要相当大量的操作。因此,处理器140可以在针对当前捕获的图像执行对象识别之前,确定是否有必要针对每个捕获图像执行对象识别。

在相关技术中,处理器140比较按顺序捕获的图像,并且当识别出在捕获图像中产生变化区域时,处理器确定发生了对象的改变并且确定执行对象识别。此外,当没有识别出没有产生变化区域时,处理器140识别出没有发生对象的改变并且确定不执行对象识别。

然而,用户可以通过多次打开或关闭冰箱的门而对图像捕获设备120施加冲击,并且图像捕获设备120的图像捕获方向可以相应地稍微改变。在这种情况下,尽管容纳在储藏室110中的食物没有实际变化,但是由于图像捕获方向的改变,可以在捕获图像中产生变化区域。

换句话说,存在以下问题:尽管以相同的方式计算关于按顺序捕获的每个图像的对象识别的结果,但是处理器140确定有必要执行对象识别。

例如,参照图5,可以识别出发生了图像捕获方向的改变的示例。具体地,参照图5a和图5b的图像,可以识别出菠萝、罐头、葡萄和苹果被容纳在储藏室110中,并且每个对象的数量或位置没有实际变化。因此,图5a的对象识别结果和图5b的对象识别结果可以是相同的。

然而,可以识别出图5b的图像捕获方向与图5a的图像捕获方向略有不同。例如,可以从图5b中识别出没有捕获到有苹果的碗的右边缘。如果图像捕获方向如上所述改变,则当将图5a的图像的每个像素与图5b的图像的对应于其的每个像素相比较,发生值之间的变化。因此,会将图5a和图5b确定为彼此不同,从而执行不必要的对象识别。

为了解决这样的问题,处理器140可以通过附加地识别图像捕获方向是否改变来确定是否执行对象识别。具体地,处理器140可以通过附加地识别捕获图像的对象是否移动以及图像捕获方向是否改变来确定是否执行对象识别。

更具体地,处理器140可以分析以下情况之中的与每个捕获图像对应的情况:发生了对象移动也发生了图像捕获方向的改变(①),发生了对象移动但是没有发生图像捕获方向的改变(②),没有发生对象移动但是发生了图像捕获方向的改变(③),以及没有发生对象移动也没有发生图像捕获方向的改变(④)。

此外,如果捕获图像对应于上述多个情况之中的情况①和②,则处理器140可以确定执行对象识别,因为发生了对象移动。如果捕获图像对应于情况④,则处理器140可以确定不执行对象识别,因为捕获图像中没有发生改变。此外,如果捕获图像对应于情况③,则处理器140可以确定不执行对象识别,因为没有实质发生对象的移动。

在相关技术中,尽管捕获图像对应于情况③,但是处理器140执行了对象识别,而在本公开中,如果捕获图像对应于情况③,则处理器140可以确定不执行对象识别,从而由于附加对象识别而表现出减少操作的效果。在下文中将描述处理器140的关于确定是否有必要执行对象识别的具体操作。

首先,处理器140可以通过控制图像捕获设备120来获取捕获图像。具体地,处理器140可以通过控制图像捕获设备120捕获储藏室110内部的图像来获取捕获图像。处理器140可以将获取的捕获图像存储在存储器130中。

此外,处理器140可以通过将获取的捕获图像与原始图像相比较来识别是否产生了捕获图像的变化区域。这里的原始图像可以是指通过预先由图像捕获设备120捕获储藏室110内部的图像而获取的捕获图像。此外,原始图像可以是先前获取的多个捕获图像之中的最近获取的图像。

具体地,处理器140可以通过将原始图像的每个像素值与捕获图像的对应于其的每个像素值相比较来检测像素值变化区域,以识别是否产生了捕获图像的变化区域。

如果没有检测到像素值变化区域,则这可以意味着原始图像是与捕获图像相同的图像。换句话说,这意味着这种情况对应于上述四种情况之中的没有发生对象移动也没有发生图像捕获方向的改变的情况(④),因此,处理器140可以确定不执行针对捕获图像执行对象识别。

另一方面,如果检测到像素值变化区域,则处理器140可以识别检测到的区域的大小并确定是否执行对象识别或根据检测到的区域的大小是否超过预定大小来识别图像捕获方向是否附加地改变。

具体地,如果变化区域的大小不超过预定大小,则这意味着变化区域仅在来自捕获图像的局部区域中产生。如果发生了图像捕获方向的改变,则捕获图像的变化区域在整个区域上而不是在局部区域中产生。因此,如果变化区域的大小不超过预定大小,则处理器140可以确定图像捕获方向没有改变,并且确定所产生的变化区域归因于对象的移动。

换句话说,如果变化区域的大小不超过预定大小,则捕获图像的像素值变化区域是由对象的实际移动引起,因此,捕获图像可以对应于上述四类情况之中的发生了对象移动但没有发生图像捕获方向的改变的情况(②)。因此,处理器140可以确定针对捕获图像执行对象识别。

如上所述,如果变化区域的大小不超过预定大小,则处理器140可以确定执行对象识别而不用识别图像捕获方向的改变,从而表现出减少操作的效果。

另一方面,如果变化区域的大小超过预定大小,则不仅有可能发生对象的实际改变而且还有可能发生图像捕获方向的改变,因此,处理器140可以附加地识别图像捕获方向是否改变。

如果识别出图像捕获方向没有改变,则捕获图像的像素值变化区域是由对象的实际移动引起,因此,这可以对应于实际发生了容纳在储藏室110中的食物的改变的情况。换句话说,捕获图像对应于上述四类情况之中的发生了对象移动但没有发生图像捕获方向的改变的情况(②),因此,处理器140可以确定针对捕获图像执行对象识别。

另一方面,如果识别出图像捕获方向改变,则处理器140可以根据是否发生了对象的移动来确定执行对象识别。具体地,处理器140可以在发生了对象移动并且没有发生图像捕获方向的改变的情况下确定执行对象识别(①)。

另一方面,没有发生对象移动但发生了图像捕获方向的改变的情况(③)意味着捕获图像的像素值变化区域不是由容纳在储藏室110中的食物的实际改变引起,而是由图像捕获方向的改变引起,因此,处理器140可以确定不执行对象识别。

同时,关于识别是否发生了图像捕获方向的改变和对象移动的具体描述稍后将参照图6至图10来描述。

处理器140可以通过对存储在存储器130中的原始图像进行替换而将捕获图像存储在存储器130中,并且当确定是否针对稍后捕获的图像执行对象识别时,可以使用该捕获图像作为比较目标。

此外,当确定执行对象识别时,处理器140可以使用捕获图像来执行对象识别。处理器140可以经由显示器向用户显示对象识别结果。

另一方面,如果确定不执行对象识别,则处理器140可以再次使用先前用原始图像执行的对象识别的结果。换句话说,当确定没有发生捕获图像和原始图像之间的变化或确定发生了图像捕获方向的改变时,处理器140可以使用关于原始图像的对象识别结果。

同时,在示出和描述图1时,示出并描述了图像捕获设备被提供在冰箱中,但是在实施方式中,图像捕获设备可以被提供为与冰箱分离的设备。在这种情况下,可以通过以下方法来实现图像捕获设备:通过附接到冰箱来捕获冰箱的储藏室的图像,经由有线或无线通信将捕获图像发送给冰箱,以及使用冰箱接收到的捕获图像来执行对象识别。此外,图像捕获设备可以存储所有的原始图像和通过拍摄冰箱的储藏室而获取的捕获图像,并且可以直接识别捕获图像的图像捕获方向是否改变。图像捕获设备可以根据图像捕获方向改变的结果来执行对象识别操作。除了图像捕获设备之外,还可以在其他外部设备上执行上述操作。

在上文中,仅关于配置冰箱的简要配置进行图示和描述,但是在实施方式中可以附加地提供各种元件。这将在下面参照图2来描述。

图2是示出根据一实施例的冰箱的具体配置的框图。

参照图2,根据本公开的一实施例的冰箱100可以配置有储藏室110、图像捕获设备120、存储器130、处理器140、通信设备150、输入设备160和显示器170。

储藏室110、图像捕获设备120、存储器130和处理器140执行与图1的元件相同的功能,因此将不重复重叠的描述。

通信设备150可以连接到外部设备(未示出),以将各条数据发送给外部设备并从外部设备接收各条数据。具体地,除了经由局域网(lan)或互联网与外部设备的连接之外,通信设备150还可以经由通用串行总线(usb)端口或无线通信(例如,wi-fi802.11a/b/g/n、近场通信(nfc)或蓝牙)端口被连接。外部设备可以是pc、膝上型电脑、智能电话、服务器等。

通信设备150可以将图像捕获设备120捕获的图像发送给外部设备。具体地,通信设备150可以将储藏室110中的预定区域的捕获图像发送给外部设备。外部设备可以使用接收到的捕获图像来执行对象识别,并将对象识别结果再次发送给通信设备150。

在这种情况下,处理器140可以经由显示器170向用户显示从外部设备接收到的对象识别结果,而不用直接针对捕获图像执行对象识别。同时,关于通过与外部设备的通信来获取对象识别结果的操作的具体描述稍后将参照图13和图14来描述。

输入设备160可以包括用于由用户设置或选择冰箱100所支持的各种功能的多个功能键。借此,用户可以输入关于冰箱100的各种操作命令。例如,用户可以经由输入设备160输入关于冰箱的冷却强度的命令。

此外,输入设备160可以接收关于容纳在储藏室110中的食物的信息,作为关于对象识别结果的用户反馈。例如,如果用户将新购买的葡萄放入储藏室110中,则葡萄可以被新辨别为对象识别结果,并且用户可以输入与食物有关的信息,诸如关于新辨别的葡萄的有效期信息。

显示器170可以显示从冰箱100提供的各种信息。具体地,显示器170可以显示冰箱100的操作状态或显示用于用户所选择的功能或选项选择的用户界面窗口。显示器170可以以触摸屏的形式来实现,用于同时执行输入设备160的功能。

此外,显示器170可以显示由处理器140执行的对象识别的结果或经由通信设备150接收到的外部设备的对象识别的结果。例如,可以显示关于容纳在储藏室110中的葡萄的食物名称、食物类别、初始容纳时间点、容纳位置等的信息。

在相关技术中,即使在图像捕获设备的图像捕获方向改变的情况下,冰箱也针对捕获图像执行对象识别。在这种情况下,尽管容纳在储藏室中的食物没有实际变化,但是归因于由发生了捕获图像的改变而导致的冰箱的附加对象识别,存在需要大量操作的问题。

相比之下,如上所述,根据实施例的冰箱可以通过比较捕获图像和原始图像来识别图像捕获方向是否改变,并且当识别出仅仅发生了图像捕获方向的改变时,冰箱可以确定不执行附加对象识别,从而表现出减少操作的效果。

图3是示出根据一实施例的服务器的具体配置的框图。

参照图3,服务器200可以包括存储器210、通信设备220和处理器230。

存储器210可以存储用于服务器200的通用操作的各条数据,诸如用于处理器230的处理或控制的程序。具体地,存储器210可以存储在服务器200中运行的多个应用程序以及用于服务器200的操作的数据和指令。

此外,存储器210可以由处理器230访问,并且通过处理器230的数据读取、记录、编辑、删除或更新可以被执行。除了服务器200中的存储介质之外,存储器210还可以被实现为包括外部存储介质或usb存储器的可移动盘、经由网络的网络服务器等。

此外,存储器210可以存储经由通信设备220接收的捕获图像。具体地,存储器210可以存在经由通信设备220从冰箱100接收的在储藏室中的预定区域的捕获图像。

通信设备220可以连接到外部设备(未示出),以将各条数据发送给外部设备并从外部设备接收各条数据。具体地,除了经由局域网(lan)或互联网与外部设备的连接之外,通信设备220还可以经由通用串行总线(usb)端口或无线通信(例如,wi-fi802.11a/b/g/n、近场通信(nfc)或蓝牙)端口被连接。外部设备可以是冰箱、pc、膝上型电脑、智能电话、服务器等。

此外,通信设备220可以从冰箱100接收储藏室中的预定区域的捕获图像。

处理器230可以执行服务器200中的每个元件的控制。具体地,当接收到关于具体功能的命令时,处理器230可以控制与对应功能有关的元件的操作。

此外,处理器230可以使用接收到的捕获图像来执行关于容纳在冰箱100中的食物的对象识别。然而,当处理器230针对所有接收到的捕获图像执行对象识别时,需要相当大量的操作。因此,处理器230可以在针对当前接收到的捕获图像执行对象识别之前确定是否有必要执行对象识别。

具体地,处理器230可以通过识别捕获图像的对象移动和图像捕获方向的改变两者来确定是否执行对象识别。

更具体地,处理器230可以分别以下情况之中的与每个捕获图像对应的情况:发生了对象移动也发生了图像捕获方向的改变(①),发生了对象移动但是没有发生图像捕获方向的改变(②),没有发生对象移动但是发生了图像捕获方向的改变(③),以及没有发生对象移动也没有发生图像捕获方向的改变(④)。

此外,如果捕获图像对应于上述多种情况之中的情况①和②,则处理器230可以确定执行对象识别,因为发生了对象移动。如果捕获图像对应于情况④,则处理器230可以确定不执行对象识别,因为捕获图像中没有发生变化。此外,如果捕获图像对应于情况③,则处理器230可以确定不执行对象识别,因为没有实质发生对象的移动。在下文中将描述处理器230的关于确定是否有必要执行对象识别的具体操作。

首先,处理器230可以经由通信设备220获取冰箱100的捕获图像。处理器230可以将获取的捕获图像存储在存储器210中。

此外,处理器230可以通过将获取的捕获图像与原始图像相比较来识别是否了捕获图像的改变。这里的原始图像可以是指通过捕获预先经由通信设备220接收到的冰箱100内部的图像而获取的捕获图像。此外,原始图像可以是先前接收到的多个捕获图像之中最近获取的图像。

具体地,处理器230可以通过将原始图像的每个像素值与捕获图像的对应于其的每个像素值相比较来检测像素值变化区域,从而识别是否发生了捕获图像的改变。

如果没有检测到像素值变化区域,则这意味着这种情况对应于上述四种情况之中的没有发生对象移动也没有发生图像捕获方向的改变的情况(④),因此,处理器230可以确定不针对捕获图像执行对象识别。

另一方面,如果检测到像素值变化区域,则处理器230可以识别检测到的区域的大小并确定是否执行对象识别或根据检测到的区域的大小是否超过预定大小来识别图像捕获方向是否附加地改变。

具体地,如果变化区域的大小不超过预定大小,则这意味着变化区域仅在来自捕获图像的局部区域中产生。如果发生了图像捕获方向的改变,则捕获图像的变化区域在整个区域上而不是在局部区域中产生。因此,如果变化区域的大小不超过预定大小,则处理器230可以确定图像捕获方向没有变化,并确定所产生的变化区域归因于对象的移动。

换句话说,如果变化区域的大小不超过预定大小,则捕获图像的像素值变化区域是由对象的实际移动引起,因此,捕获图像可以对应于上述四类情况之中的发生了对象移动但没有发生图像捕获方向的改变的情况(②)。因此,处理器230可以确定针对捕获图像执行对象识别。

如上所述,如果变化区域的大小不超过预定大小,则处理器230可以确定执行对象识别而不用识别图像捕获方向的改变,从而表现出减少操作的效果。

另一方面,如果变化区域的大小超过预定大小,则不仅有可能发生对象的实际改变,而且还有可能发生图像捕获方向的改变,因此,处理器230可以附加地识别图像捕获方向是否改变。

如果识别出图像捕获方向没有改变,则捕获图像的像素值变化区域是由对象的实际移动引起,因此,这可以对应于实际发生了容纳在冰箱100中的食物的变化的情况。换句话说,捕获图像对应于上述四类情况之中的发生了对象移动但没有发生图像捕获方向的改变的情况(②),因此,处理器230可以确定针对捕获图像执行对象识别。

另一方面,如果识别出图像捕获方向改变,则处理器230可以根据是否发生了对象移动来确定执行对象识别。具体地,处理器230可以在发生了对象移动也发生了图像捕获方向的改变的情况下确定执行对象识别(①)。

另一方面,没有发生对象移动但是发生了图像捕获方向的改变的情况(③)意味着捕获图像的像素值变化区域不是由容纳在冰箱100中的食物的实际变化引起,而是由图像捕获方向的改变引起,因此,处理器230可以确定不执行对象识别。

同时,关于识别是否发生了图像捕获方向的改变和对象移动的具体描述将稍后参照图6至图10来描述。

在这种情况下,处理器230可以通过对存储在存储器210中的原始图像进行替换而将捕获图像存储在存储器210中,并且可以在确定是否针对稍后接收到的捕获图像执行对象识别时使用该捕获图像作为比较目标。

此外,当确定执行对象识别时,处理器230可以使用捕获图像来执行对象识别。处理器230可以经由通信设备220将对象识别结果发送给冰箱100。

另一方面,如果确定不执行对象识别,则处理器230可以再次使用先前用原始图像执行的对象识别的结果。换句话说,当确定没有发生捕获图像和原始图像之间的改变或者确定发生了图像捕获方向的改变时,处理器230可以经由通信设备220将关于原始图像的对象识别结果发送给冰箱100。

同时,在示出和描述图3时,示出并描述了从冰箱接收捕获图像,但是在实施方式中,可以从拍摄了冰箱的单独的图像捕获设备接收捕获图像。

在上文中,仅关于配置服务器的简要配置进行了图示和描述,但是可以在实施方式中附加地提供各种元件。这将在下面参照图4来描述。

图4是示出根据一实施例的服务器的具体配置的框图。

参照图4,服务器200可以配置有存储器210、通信设备220、处理器230、输入设备240和显示器250。

存储器210、通信设备220和处理器230执行与图3的元件相同的功能,因此将不重复重叠的描述。

输入设备240可以包括用于设置或选择服务器200所支持的各种功能的多个功能键。借此,用户可以输入关于服务器200的各种操作命令。

此外,输入设备240可以通过在显示器250上显示的菜单来接收输入。此外,输入设备240可以被实现为多个按钮、键盘、鼠标等,并且也可以被实现为用于同时执行稍后将描述的显示器250的功能的触摸屏。

显示器250可以显示从服务器200提供的各种消息。例如,显示器250可以显示用于选择服务器200所提供的各种功能的用户界面窗口。显示器250可以是监视器,诸如lcd、crt、oled等,或者可以被实现为用于同时执行稍后将描述的输入设备240的功能的触摸屏。

在相关技术中,即使在接收到的捕获图像的图像捕获方向改变的情况下,服务器也针对捕获图像执行对象识别。在这种情况下,尽管容纳在冰箱中的食物没有实际变化,但是存在需要大量操作的问题,该问题归因于由发生捕获图像的变化导致的服务器的附加对象识别。

相比之下,如上所述,根据实施例的服务器可以通过比较捕获图像和原始图像来识别图像捕获方向是否改变,并且当识别出仅发生了图像捕获方向的改变时,服务器可以确定不执行附加对象识别,从而表现出减少操作的效果。

图6至图9是示出根据一实施例的用于使用多个特征点来识别图像捕获方向的改变的方法的示例的图。

冰箱或服务器的处理器140或230可以根据光流方法基于多个特征点在原始图像和捕获图像之间的位置变化来识别图像捕获方向是否改变。下面将描述与此有关的具体操作。

图6是示出根据一实施例的在图像中的多个特征点的位置变化的示例的图。图6a对应于原始图像,图6b对应于捕获图像。

首先,处理器140或230可以识别原始图像中的多个特征点,并从捕获图像中检测与之对应的多个特征点。

具体地,参照图6a,可以识别出一扇形块披萨的图像位于原始图像中,并且在扇形的边缘部分显示了三个黑点。

参照图6b,可以识别出该扇形块披萨的位置在捕获图像中移动到右上侧,并且扇形的边缘部分的三个黑点也移动到右上侧。

这里显示的点可以是指图像中的对象的特征点,该特征点是诸如具有用于区别于背景或另一对象的特征的区段的拐角或端点的点。特征点可以配置有二维坐标,并且作为三维图像的捕获图像的特征点可以配置有三维坐标。

换句话说,处理器140或230可以从图6a的原始图像中识别多个特征点,并从图6b的捕获图像中检测与原始图像的多个特征点对应的多个特征点。

同时,处理器140或230可以从原始图像中识别多个特征点,但是可以不从捕获图像中观察与原始图像的多个特征点对应的多个特征点。这种情况可以对应于难以根据能够从原始图像中识别出的对象移动从捕获图像中观察与原始图像的多个特征点对应的多个特征点的情况。

因此,当难以从捕获图像中识别与原始图像的多个特征点对应的多个特征点时,处理器140或230可以确定关于对象发生了改变并且确定图像捕获方向没有改变。

具体地,处理器140或230可以识别原始图像的多个特征点的数量和捕获图像的多个特征点的数量,并且如果特征点的数量的变化率超过预设阈值率,则处理器140或230可以确定图像捕获方向没有改变。

例如,如果从原始图像中识别出10个特征点,但是从捕获图像中仅识别出5个特征点,则处理器可以确定与未识别出的5个特征点对应的对象移动,并确定图像捕获方向没有改变。

如果从捕获图像中检测到与原始图像的多个特征点对应的多个特征点,则处理器140或230可以通过比较原始图像的多个特征点和捕获图像的多个特征点中的每个的移动距离和移动方向来区分是图像中的对象移动还是图像捕获方向改变。这将在下面参照图7至图9来描述。

图7至图9是示出根据一实施例的在捕获图像中的多个特征点的移动距离和移动方向的示例的图。这里,箭头的方向可以对应于每个特征点的移动方向,并且箭头的长度可以对应于每个特征点的移动距离。

参照图7,可以识别出捕获图像的多个特征点的所有箭头具有相同的方向和相同的长度。换句话说,可以识别出捕获图像的多个特征点沿着相同的移动方向和相同的移动距离移动。

在这种情况下,处理器140或230可以确定捕获图像可以对应于没有发生对象移动但是发生了图像捕获方向的改变的情况(③)。因此,处理器140或230可以确定不执行对象识别。

参照图8,可以识别出来自捕获图像的用虚线示出的正方形区域中的箭头朝右下方向,而其余区域中的箭头朝右上方向。在这种情况下,处理器140或230可以确定与具有虚线的正方形区域中的特征点对应的对象被移动并且图像捕获方向被保持。

换句话说,处理器140或230可以确定捕获图像对应于发生了对象移动也发生了图像捕获方向的改变的情况(①)。因此,处理器140或230可以确定执行对象识别。

参照图9,可以识别出捕获图像的多个特征点的移动方向和移动距离可以彼此不同。在这种情况下,处理器140或230可以确定对象被移动并且图像捕获方向被保持。

换句话说,处理器140或230可以确定捕获图像可以对应于发生了对象移动但是没有发生图像捕获方向的改变的情况(②)。因此,处理器140或230可以确定执行对象识别。

如上所述,处理器140或230可以通过如上所述地比较每个特征点的移动距离和移动方向来识别是发生了对象移动还是图像捕获方向改变。同时,为了比较移动距离和移动方向,处理器140或230可以通过比较原始图像的多个点和捕获图像的多个特征点中的每个之间的像素坐标值来计算捕获图像的多个特征点中的每个的坐标变化量。

此外,处理器140或230可以通过使用计算出的坐标变化量来计算捕获图像的多个特征点中的每个的移动距离和移动方向,并基于计算出的移动距离和移动方向来识别图像捕获方向是否改变。

如果这里计算出的坐标变化量是(x,y),则移动距离可以是并且移动方向可以被计算为以倾斜的形式计算的替代地,移动方向可以被计算为以角度的形式计算的

具体地,当计算出的捕获图像的多个特征点的移动距离和移动方向在预定误差范围内重合时,处理器140或230可以确定图像捕获方向改变。

另一方面,当捕获图像的多个特征点中的至少一个特征点的移动距离或移动方向具有超出预定误差范围的差异时,处理器140或230可以确定图像捕获方向被保持。

此外,预定误差范围可以是指当通过图像捕获设备捕获图像时被包括在误差范围内的范围,尽管多个特征点中的每个的移动距离和移动方向存在一定差异。

如上所述,处理器140或230可以基于多个特征点在原始图像和捕获图像之间的位置变化来识别图像捕获方向是否改变。

图10是示出根据一实施例的用于使用人工智能模型来识别图像捕获方向的改变的方法的示例的示图。

除了使用多个特征点的方法之外,冰箱或服务器的处理器140或230还可以通过使用人工智能模型来识别图像捕获方向是否改变。与此有关的具体操作将在下面进行描述。

参照图10,处理器1000可以包括学习单元1010和获取单元1020中的至少一个。图10的处理器1000可以对应于冰箱100的处理器140、服务器200的处理器230或数据学习服务器(未示出)的处理器。

学习单元1010可以生成或训练用于识别图像捕获方向的改变的模型。具体地,学习单元1010可以使用收集到的学习数据来生成用于识别图像捕获方向的改变的人工智能模型。

这里的人工智能模型可以用机器学习和使用机器学习的基础技术来配置。机器学习可以是指例如输入数据的自分类/自训练特征的算法技术,基础技术可以是指例如使用诸如深度学习的机器学习算法来模拟诸如识别或判断的人脑功能的技术,并包括语言理解、视觉理解、推理/预测、知识表达、操作控制等技术领域。

此外,人工智能模型可以对应于卷积神经网络(cnn)、循环神经网络(rnn)、卷积循环神经网络(crnn)等,并且不限于以上示例。

这里的学习数据可以对应于同一对象的通过稍微向上、向下、向左或向右移动而捕获的一组图像,或对应于同一图像的在向上、向上、向左或向右方向上稍微切割的一组图像。同时,学习数据不限于以上示例。

换句话说,学习单元1010可以通过使用其是学习数据的具有改变的图像捕获方向的一组图像作为输入数据来生成或训练用于识别图像捕获方向的改变的模型。

获取单元1020可以通过使用原始图像和捕获图像作为训练模型的输入数据来识别图像捕获设备的改变。

如上所述,处理器1000可以通过学习单元1010生成用于识别图像捕获方向的改变的人工智能模型,并通过获取单元1020通过使用人工智能模型来识别当前捕获的图像的图像捕获方向的改变。

同时,学习单元1010和获取单元1020可以被安装在诸如服务器的一个电子设备上,或者可以被分别安装在分离的电子设备上。例如,学习单元1010可以被安装在数据学习服务器上,并且获取单元1020可以被安装在服务器200或冰箱100上。在这种情况下,由学习单元1010构造的模型信息可以通过使用有线或无线通信被提供给获取单元1020。

图11是用于示出根据一实施例的对象识别方法的流程图。

参照图11,可以通过冰箱100的处理器140或服务器200的处理器230来执行根据本公开的一实施例的对象识别方法。

首先,获取通过拍摄储藏室内部而获取的图像(s1110)。具体地,冰箱的处理器可以使用图像捕获设备来获取捕获图像,并且服务器的处理器可以经由通信设备从冰箱接收捕获图像以获取该捕获图像。

当识别捕获图像与原始图像相比的变化时,可以识别图像捕获方向的改变(s1120)。这里的原始图像可以是指先前通过由冰箱使用图像捕获设备捕获储藏室的图像而获取的捕获图像,或是指先前由服务器通过从冰箱接收该储藏室的图像而获取的捕获图像。此外,原始图像可以是先前获取的多个捕获图像之中最近获取的图像。

具体地,可以通过将原始图像的每个像素值与捕获图像的对应于其的每个像素值相比较来检测像素值变化区域,以识别捕获图像是否改变。

可以通过使用原始图像中的多个特征点和捕获图像的对应于其的多个特征点来识别图像捕获方向是否改变。

具体地,可以从原始图像中识别多个特征点,并且可以从捕获图像中识别对应于其的多个特征点。如果多个特征点中的一些由于在原始图像中识别出的对象的移动而没有从捕获图像中被观察到,则可以确定图像捕获方向被保持。

更具体地,如果原始图像的多个特征点的数量和捕获图像的多个特征点的数量之间的变化率超过预定阈值率,则可以确定图像捕获方向被保持。

此外,可以通过比较多个特征点中的每个的移动距离和移动方向来识别图像捕获方向的改变。具体地,可以检测原始图像中的多个特征点和捕获图像中的对应于其的多个特征点,并且可以比较多个特征点中的每个之间的像素坐标值以计算捕获图像的多个特征点中的每个的坐标变化量。

此外,可以通过使用计算出的坐标变化量来计算捕获图像的多个特征点中的每个的移动距离和移动方向,并且可以基于计算出的移动距离和移动方向来识别图像捕获方向是否改变。

更具体地,当计算出的捕获图像的多个特征点的移动距离和移动方向在预定误差范围内重合时,可以确定图像捕获方向改变。另一方面,当捕获图像的多个特征点中的至少一个特征点的移动距离或移动方向具有超出预定误差范围的差异时,可以确定图像捕获方向被保持。

此外,可以通过使用人工智能模型来识别图像捕获方向的改变。具体地,可以通过将原始图像和捕获图像输入到人工智能模型来识别图像捕获方向是否改变。

这里的人工智能模型可以是指使用同一对象的通过稍微向上、向下、向左或向右移动而捕获的一组图像或同一图像的在向上、向下、向左或向右方向上被稍微切割的一组图像作为学习数据来训练以识别图像捕获方向是否改变的模型。

此外,人工智能模型的类型可以对应于卷积神经网络(cnn)、循环神经网络(rnn)、卷积循环神经网络(crnn)等,并且不限于以上示例。

此外,当图像捕获方向被保持时,可以针对捕获图像执行对象识别(s1130)。另一方面,当图像捕获方向被改变时,可以不执行针对捕获图像的对象识别,并且可以通过对原始图像进行替换来存储捕获图像。此外,可以再次使用针对原始图像执行的对象识别的结果。

因此,本公开的对象识别方法可以通过将捕获图像与原始图像相比较来识别图像捕获方向是否改变,并且当识别出仅发生了图像捕获方向的改变时,确定不执行附加对象识别,从而表现出减少操作的效果。如图11中的对象识别方法可以在具有图1或图2的配置的冰箱上以及在具有图3或图4的配置的服务器上执行,并且可以在具有其他配置的冰箱或服务器上执行。

此外,上述对象识别方法可以被实现为用于执行上述对象识别方法的至少一个执行程序,并且这样的执行程序可以被存储在非暂时性计算机可读介质中。

非暂时性计算机可读介质不是诸如寄存器、高速缓存或存储器的短时期存储数据的介质,而是可以指半永久性地存储数据并可由机器读取的介质。具体地,上述各种应用或程序可以被存储并提供给非暂时性计算机可读介质,诸如cd、dvd、硬盘驱动器、蓝光盘、usb、存储器卡和rom。

图12是用于具体示出根据一实施例的对象识别方法的流程图。

参照图12,可以首先获取冰箱的储藏室的捕获图像(s1210)。具体地,冰箱可以通过图像捕获设备获取通过拍摄储藏室而获取的图像,并且服务器可以经由通信设备从冰箱接收储藏室的捕获图像。

此外,可以识别捕获图像与原始图像相比的变化(s1220)。具体地,可以通过将原始图像的每个像素值与捕获图像的对应于其的每个像素值相比较来检测像素值变化区域,以识别捕获图像是否改变。

当没有检测到捕获图像的变化发生区域时(s1220-n),可以确定不针对捕获图像执行对象识别。另一方面,当检测到捕获图像的变化发生区域时(s1220-y),可以识别变化发生区域的大小超过预定大小(s1230)。

当变化发生区域的大小不超过预定大小时(s1230-n),可以针对捕获图像执行对象识别(s1250)。

另一方面,当变化发生区域的大小超过预定大小时(s1230-y),可以识别捕获图像的图像捕获方向的改变(s1240)。在以上与冰箱或服务器的处理器的操作有关的部分中具体描述了识别图像捕获方向是否改变的操作,因此将不重复重叠的描述。

当发生了图像捕获方向的改变时(s1240-y),可以确定不针对捕获图像执行对象识别。当没有发生图像捕获方向的改变时(s1240-n),可以针对捕获图像执行对象识别(s1250)。

因此,在本公开的对象识别方法中,可以根据捕获图像的变化区域的大小来确定是否执行识别图像捕获方向的改变的操作。因此,尽管图像捕获方向明显被保持,但是仍表现出防止识别图像捕获方向的改变的操作的效果。如图12中的对象识别方法可以在具有图1或图2的配置的冰箱上以及在具有图3或图4的配置的服务器上执行,并且可以在具有其他配置的冰箱或服务器上执行。

此外,上述对象识别方法可以被实现为用于执行上述对象识别方法的至少一个执行程序,并且这样的执行程序可以被存储在非暂时性计算机可读介质中。

图13是用于示出根据第一实施例的使用冰箱和服务器的对象识别方法的序列图。

首先,服务器200可以存储通过拍摄冰箱100的储藏室而获取的原始图像(s1310)。具体地,服务器200可以经由与冰箱100的通信来接收并存储先前从冰箱100捕获的储藏室内部的捕获图像。

此外,冰箱100可以使用图像捕获设备拍摄储藏室并获取捕获图像(s1320)。冰箱100可以将储藏室的捕获图像发送给服务器200(s1330)。

此外,服务器200可以识别与原始图像相比在接收到的捕获图像中是否发生了变化(s1340)。

当没有检测到变化发生区域时,服务器200可以不执行附加对象识别,并将针对原始图像执行的对象识别的结果发送给冰箱100。

另一方面,当检测到变化发生区域时,服务器200可以识别变化发生区域的大小是否超过预定大小(s1350)。当变化发生区域的大小不超过预定大小时,可以针对捕获图像执行对象识别。另一方面,当变化发生区域的大小超过预定大小时,可以识别图像捕获方向的改变(s1360)。

当图像捕获方向被保持时,可以针对捕获图像执行对象识别(s1370)。另一方面,当图像捕获方向没有被保持时,可以将针对原始图像执行的对象识别的结果发送给冰箱100。

此外,当针对捕获图像执行对象识别时,服务器200可以将捕获图像的对象识别结果发送给冰箱100,并且当不针对捕获图像执行对象识别时,服务器可以将原始图像的对象识别结果发送给冰箱100(s1380)。

冰箱100可以通过使用接收到的对象识别结果向用户显示对象信息(s1390)。具体地,冰箱100可以经由显示器向用户显示对象信息。

因此,在本公开的对象识别方法中,可以获取对象识别信息而不直接由冰箱执行对象识别,从而表现出将信息提供给用户的效果。如图13中的对象识别方法可以在具有图1或图2的配置的冰箱上以及在具有图3或图4的配置的服务器上执行,并且可以在具有其他配置的冰箱或服务器上执行。

此外,上述对象识别方法可以被实现为用于执行上述对象识别方法的至少一个执行程序,并且这样的执行程序可以被存储在非暂时性计算机可读介质中。

图14是用于示出根据第二实施例的使用冰箱和服务器的对象识别方法的序列图。

首先,冰箱100可以存储通过拍摄储藏室而获取的原始图像(s1410)。冰箱100可以使用图像捕获设备来拍摄储藏室并获取捕获图像(s1420)。

此外,冰箱100可以识别与原始图像相比在捕获图像中是否发生了变化(s1430)。

当没有检测到变化发生区域时,冰箱100可以将原始图像作为对象识别目标信息发送给服务器200,而不用识别捕获图像的图像捕获方向是否改变。

另一方面,当检测到变化发生区域时,冰箱100可以识别变化发生区域的大小是否超过预定大小(s1440)。当变化发生区域的大小不超过预定大小时,可以将捕获图像作为对象识别目标信息发送给服务器200。另一方面,当变化发生区域的大小超过预定大小时,可以识别图像捕获方向的改变(s1450)。

当图像捕获方向被保持时,可以将捕获图像作为对象识别目标信息发送给服务器200。另一方面,当图像捕获方向没有被保持时,可以将原始图像作为对象识别目标信息发送给服务器200(s1460)。

此外,服务器200可以根据接收到的对象识别目标来执行对象识别(s1470)。例如,当接收到的对象识别目标是捕获图像时,可以针对捕获图像执行对象识别,当接收到的对象识别目标是原始图像时,可以识别先前关于原始图像执行的对象识别的结果而不用执行附加对象识别。

此外,服务器200可以将与对象识别目标对应的对象识别结果发送给冰箱100(s1480)。

冰箱100可以通过使用接收到的对象识别结果向用户显示对象信息(s1490)。具体地,冰箱100可以经由显示器向用户显示对象信息。

因此,在本公开的对象识别方法中,冰箱可以通过识别图像捕获方向是否改变来确定对象识别目标,并将确定的对象识别目标发送给服务器,从而表现出减少服务器的操作的效果,因为服务器不必识别图像捕获方向的改变。如图14中的对象识别方法可以在具有图1或图2的配置的冰箱上以及在具有图3或图4的配置的服务器上执行,并且可以在具有其他配置的冰箱或服务器上执行。

此外,上述对象识别方法可以被实现为用于执行上述对象识别方法的至少一个执行程序,并且这样的执行程序可以被存储在非暂时性计算机可读介质中。

虽然示出和描述了本公开的优选实施例,但是本公开不限于前述的具体实施例,并且明显的是,在不背离如所附权利要求所要求保护的本公开的主旨的情况下,本公开所属技术领域的普通技术人员可以做出各种修改。此外,意图是,这样的修改将不独立于本公开的技术思想或前景来解释。

工业适用性

序列表自由文本

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1