CN111492374A - 图像识别系统 - Google Patents
图像识别系统 Download PDFInfo
- Publication number
- CN111492374A CN111492374A CN201880081419.0A CN201880081419A CN111492374A CN 111492374 A CN111492374 A CN 111492374A CN 201880081419 A CN201880081419 A CN 201880081419A CN 111492374 A CN111492374 A CN 111492374A
- Authority
- CN
- China
- Prior art keywords
- image
- image data
- user
- computing device
- capture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/28—Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
- G06V10/12—Details of acquisition arrangements; Constructional details thereof
- G06V10/14—Optical characteristics of the device performing the acquisition or on the illumination arrangements
- G06V10/141—Control of illumination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
- G06V10/12—Details of acquisition arrangements; Constructional details thereof
- G06V10/14—Optical characteristics of the device performing the acquisition or on the illumination arrangements
- G06V10/143—Sensing or illuminating at different wavelengths
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/09—Recognition of logos
Abstract
用于预测内容内的项目并且使用改进的细粒度图像分类技术系统和方法,所述系统和方法用于通过允许使用在例如角度、照明、相机设定等各种条件和环境下捕获的图像来识别产品,以产生用于在现实世界中标识消费产品的图像。
Description
相关申请的交叉引用
本申请要求于2017年10月24日提交的标题为“图像识别系统(IMAGERECOGNITIONSYSTEM)”的美国临时专利申请第62/576250号的权益和优先权,出于任何和所有非限制性目的,通过引用明确地将所述申请整体并入本文。
技术领域
所公开的技术涉及用于标识和识别对象的系统和方法。更具体地说,所公开的技术涉及用于通过利用机器学习协议和算法来可靠地预测内容内的项目的系统和方法。
背景技术
某些图像分类系统受到用于训练和校准检测系统的输入类型的限制,并且还受到系统准确地检测在各种环境和条件下捕获的对象的能力的限制。实际上,随着越来越多地使用移动设备来捕获内容,分类系统通常依赖于本质上过于统一的条件下捕获的图像-目的是创建高质量图像。然而,即使具有增强的捕获能力,搜索空间(例如,表示图像中的像素值的抽象向量或张量场参数)也可能变得过于密集,由此使用传统的图像识别技术实际上不可能进行准确并且细粒度的图像分类。当试图开发高效的学习/通用化方案时,由于随着粒度变得非常精细而不可避免地缺少经标记或经分类的例子,执行细粒度分类可能会带来挑战。
为了以可能的最低的捕获事件量在尽可能多的场景和条件下高效地捕获对象的数据,无论视角、照明、亮度、焦点或运动模糊等,需要专门的系统和处理以使重复的、时间不敏感的和昂贵的数据捕获的性质降到最低。因此,需要一种改进的图像识别系统,其能够高效地获得要用作机器学习技术的训练和验证数据的图像数据,使得所述系统可以以一定的置信水平检测图像数据内的对象。因此,本公开的各方面旨在通过建立学习系统来解决此挑战,该学习系统在未开发的空间中很好地推广,并且能够充分理解产品的基本分类以高效地标识区分所述产品精细类的差异。
附图说明
图1说明根据示例实施例的可以被配置成向用户提供捕获和传输图像数据的能力的示例系统;
图2说明可以是图1的系统的一部分或与图1的系统通信的示例计算机设备;
图3A和图3B示出根据示例实施例的可以用于捕获产品的图像的示例用户界面;
图4A-图4D示出根据示例实施例的通信系统裁剪与所捕获产品相关联的图像数据的例子;
图5说明根据示例实施例的电子文档及其中的内容的例子;
图6示出根据示例实施例的与其中的产品捕获相关联的场的例子;
图7示出根据示例实施例的系统;
图8示出根据示例实施例的网络服务器;
图9示出根据示例实施例的电子文档数据库;
图10示出根据示例实施例的库存服务器;
图11示出根据示例实施例的库存数据库;
图12示出根据实例实施例的示例图像捕获系统;
图13示出根据实例实施例的示例图像捕获系统;
图14示出根据示例实施例的捕获图像数据的方法。
具体实施方式
本文中所公开的创新的各方面还涉及用于通过利用机器学习协议和算法来可靠地预测内容内的项目的系统和方法。使用改进的细粒度图像分类技术,本文中描述的分类系统可以区分共享基本分类内的异议以及某些基本分类的附属类。
在本公开的其他方面中,本文中所公开的分类系统旨在通过允许使用在例如角度、照明、相机设定等各种条件和环境下捕获的图像来识别产品,以产生用于在现实世界中标识消费产品的图像。此外,分类系统在捕获图像数据(潜在地用作验证数据)时反直觉地创建尽可能多的变化,以试图模仿可能被消费者捕获和提交的拍摄类型。分类系统可以利用验证数据来校准特定产品的检测和分类。在本公开的一些方面中,分类系统可以利用允许用户捕获并且提交用于分类的图像数据的应用程序界面。
本公开的一些方面还可以涉及以下的系统和方法的方面:接收对包括内容的电子文档的请求,检索与所述请求相关联的电子文档,处理电子文档以标识在内容中标识项目的库存标签,获得与库存标签相关联的项目的可用性信息,更新电子文档以包括可用性信息,以及传输包括可用性信息的电子文档。本公开的另外的方面可以涉及以下的系统和方法的方面:接收用于在电子文档中呈现的内容,接收标识包括在内容中的项目的库存标签,所述库存标签与发布用户标识符相关联,接收对项目的购买请求,所述购买请求包括发布用户标识符,以及更新与发布用户标识符相关联的激励信息。
在各种实施例的以下描述中,参考附图,这些附图形成实施例的一部分,并且附图中借助于图示展示本公开的各方面可以被实践的各种实施例。应理解,在不脱离本公开的范围和精神的情况下,可以利用其他实施例,并且可以做出结构和功能修改。另外,本公开内的标题不应被视为限制本公开的各方面,并且示例实施例不限于示例标题。
I.示例用户系统
A.说明性网络
本公开的各方面涉及可以在多个网络上利用的系统和方法。就此而言,某些实施例可以被配置成适应动态网络环境。另外的实施例可以用于不同的离散网络环境中。图1说明根据示例实施例的用户通信系统100的例子。示例系统100可以包括一个或多个互连网络,例如说明性体域网(BAN)102、局域网(LAN)104和广域网(WAN)106。如图1中所示出(并且贯穿本公开所描述的),一个或多个网络(例如,BAN 102、LAN 104和/或WAN 106)可以重叠或以其他方式包括彼此。所属领域的技术人员将了解,说明性网络102-106是可以各自包括一个或多个不同的通信协议和/或网络架构但是可以被配置成具有去往彼此或其他网络的网关的逻辑网络。例如,BAN 102、LAN 104和/或WAN 106中的每个可以可操作方式连接到同一物理网络架构,例如蜂窝网络架构108和/或WAN架构110。例如,可以被视为BAN 102和LAN104两者的部件的便携式电子设备112可以包括网络适配器或网络接口卡(NIC),所述网络适配器或网络接口卡被配置成根据一个或多个通信协议通过架构108和/或110中的一个或多个将数据和控制信号转换成网络消息和从网络消息转换数据和控制信号,所述通信协议例如传输控制协议(TCP)、互联网协议(IP)和用户数据报协议(UDP)。这些协议在本领域中是众所周知的,因此在本文中不会更详细地加以论述。
网络架构108和110可以包括单独或组合地一个或多个任何类型或拓扑的信息分配网络,例如缆线、光纤、卫星、电话、蜂窝、无线等,并且因此,网络架构108和110可以以不同方式配置,例如具有一个或多个有线或无线通信信道(包括但不限于:近场通信(NFC)和/或ANT技术)。因此,在图1的网络内的任何设备(例如便携式电子设备112或本文中所描述的任何其他设备)可以被视为包括不同逻辑网络102-106中的一个或多个。有了前述想法,将描述说明性BAN和LAN(它们可以耦接到WAN106)的示例部件。
LAN 104可以包括一个或多个电子设备,例如计算机设备114。计算机设备114或系统100的任何其他部件可以包括移动终端,例如电话、音乐播放器、平板电脑、上网本或任何便携式设备。在其他实施例中,计算机设备114可以包括媒体播放器或记录器、台式电脑、服务器、游戏控制台,例如XBOX、Playstation和/或Wii游戏控制台。所属领域的技术人员将了解,这些只是用于描述目的的示例设备,并且本公开不限于任何控制台或计算设备。
所属领域的技术人员将了解,计算机设备114的设计和结构可以依据若干种因素而变化,例如计算机设备114的预期目的。在图2中提供计算机设备114的一个示例实现,图2说明计算设备200的框图。所属领域的技术人员将了解,图2的公开内容可适用于本文中所公开的任何设备。设备200可以包括一个或多个处理器,例如处理器202-1和202-2(在本文中一般称为“处理器202(processors)”或“处理器202(processor)”)。处理器202可以经由互连网络或总线204与彼此或其他部件通信。处理器202可以包括一个或多个处理核心,例如核心206-1和206-2(在本文中作为“核心(cores)206”或一般被称为“核心206(core)”),处理核心可以实现于单个集成电路(IC)芯片上。
核心206可以包括共享高速缓存208和/或私有高速缓存(例如,分别为高速缓存210-1和210-2)。一个或多个高速缓存208/210可以在本地高速缓存存储在例如存储器212的系统存储器中的数据,以供处理器202的部件进行更快的存取。存储器212可以经由芯片组216与处理器202通信。在某些实施例中,高速缓存208可以是系统存储器212的一部分。存储器212可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM),并且包括固态存储器、光学或磁性存储设备和/或可以用于存储电子信息的任何其他介质中的一个或多个。另外的其他实施例可以省略系统存储器212。
系统200可以包括一个或多个I/O设备(例如,I/O设备214-1至214-3,每个I/O设备一般被称为I/O设备214)。来自一个或多个I/O设备214的I/O数据可以存储在一个或多个高速缓存208、210和/或系统存储器212处。每个I/O设备214可以被永久性或暂时性地被配置成使用任何物理或无线通信协议而与系统100的部件操作性通信。
返回到图1,示出四个示例I/O设备(示出为元件116-122)与计算机设备114通信。所属领域的技术人员将了解,设备116-122中的一个或多个可以为单独设备,或可以与除计算机设备114之外的另一设备相关联。例如,一个或多个I/O设备可以与BAN 102和/或WAN106的部件相关联或与其交互。I/O设备116-122可以包括但不限于活动数据获取单元,例如传感器。一个或多个I/O设备可以被配置成感测、检测和/或测量例如用户124的用户的运动参数。例子包括但不限于:加速度计、陀螺仪、位置确定设备(例如,GPS)、光(包括不可见光)传感器、温度传感器(包括环境温度和/或体温)、睡眠模式传感器、心率监测仪、图像捕获传感器、湿度传感器、力传感器、指南针、角速率传感器和/或其组合等等。
在另外的实施例中,I/O设备116-122可以用于提供输出(例如,听觉、视觉或触觉提示)和/或接收输入,例如用户124的用户输入。在下文提供这些说明性I/O设备的示例使用,但是所属领域的技术人员将了解,此类论述只描述了在本公开的范围内的许多选择方案中的一些。另外,对任何数据获取单元、I/O设备或传感器的提及应被解释为公开可以具有(呈个别或组合形式的)本文中所公开的或本领域中已知的一个或多个I/O设备、数据获取单元和/或传感器的实施例。
系统100可以被配置成传输和/或接收数据,包括由在系统100内收集的或以其他方式提供到系统100的便携式设备112(和/或例如相机的独立图像捕获设备)内的图像捕获设备捕获的图像数据。作为一个例子,WAN 106可以包括服务器111。服务器111可以具有图2的系统200的一个或多个部件。在一个实施例中,服务器111包括至少一个处理器和存储器,例如处理器206和存储器212。服务器111可以被配置成在非暂时性计算机可读介质上存储计算机可执行指令。指令可以包括图像数据,例如在系统100内收集的原始或经处理数据。系统100可以被配置成将例如图像和/或视频的数据传输到社交网站或托管这样的网站。服务器111可以用于准许一个或多个用户存取由一个或多个用户获得的图像数据。因而,服务器111可以被配置成基于图像数据或其他信息而传输和/或接收通知。
返回到LAN 104,计算机设备114示出为与显示设备116、图像捕获设备118、传感器120操作性通信,所述显示设备116、图像捕获设备118、传感器120在下文参考示例实施例依次论述。在一个实施例中,显示设备116可以向用户124提供视听提示以捕获特定对象的图像。视听提示可以响应于在计算机设备114或包括BAN 102和/或WAN的设备的任何其他设备上执行的计算机可执行指令而提供。显示设备116可以为触摸屏设备,或以其他方式被配置成接收用户输入。
在本公开的一些方面中,可以从图像捕获设备118(和/或便携式设备112)获得图像数据,其可以用于检测图像数据内的项目(和/或训练系统以检测图像数据内的项目)。图像捕获设备118可以包括收发器设备。例如,图像捕获设备118可以将波形传输到环境中,包括朝向用户124的方向传输,并且接收“反射”或以其他方式检测那些所释放的波形的更改。所属领域的技术人员将很容易了解,可以根据各种实施例利用对应于大量不同数据频谱的信号。就此而言,设备118可以检测从外部来源(例如,不是系统100)发射的波形。例如,设备118可以检测从用户124和/或周围环境发射的热。因此,图像捕获设备126可以包括一个或多个热成像设备。在一个实施例中,图像捕获设备126可以包括被配置成执行距离现象学的IR设备。
BAN 102可以包括两个或更多个被配置成接收、传输或以其他方式有助于收集图像数据的设备(包括无源设备)。示例性设备可以包括一个或多个数据获取单元或本领域中已知的或本文中所公开的设备,包括但不限于I/O设备116-122。BAN 102的两个或更多个部件可以直接通信,但在其他实施例中,通信可以经由第三设备来实施,第三设备可以是BAN102、LAN 104和/或WAN 106的一部分。LAN 104或WAN 106的一个或多个部件可以形成BAN102的一部分。在某些实现中,例如便携式设备112的设备是否是BAN 102、LAN 104和/或WAN106的一部分可以取决于用户相对于存取点的接近度,以准许与移动蜂窝网络架构108和/或WAN架构110进行通信。用户活动和/或偏好也可能影响一个或多个部件是否用作BAN 102的一部分。下面提供示例实施例。
用户124可以与任何数目的设备相关联,例如,拥有、携带、佩戴和/或交互,所述设备例如是便携式设备112、安装在鞋上的设备126,腕戴式设备128。一个或多个设备112、126、128可以被专门设计用于图像捕获目的。实际上,本发明的各方面涉及利用来自一个或多个设备的数据来收集和检测图像数据,并且在某些情况下涉及运动数据。在某些实施例中,BAN 102(或任何其他网络)中的一个或多个设备可以包括被专门设计用于捕获特定类型的图像数据的图像捕获设备。
观察说明性便携式设备112,它可以是例如包括电话或数字音乐播放器的多用途电子设备,包括可以从加利福尼亚库比蒂诺的苹果公司购得的或品牌设备,或可以从华盛顿雷德蒙德的微软购得的或Windows设备。如本领域中已知,数字媒体播放器可以用作计算机的输出设备、输入设备和/或存储设备。设备112可以被配置成用于接收从BAN 102、LAN 104或WAN 106中的一个或多个设备收集的原始或经处理数据的输入设备。在一个或多个实施例中,便携式设备112可以包括计算机设备114的一个或多个部件。例如,便携式设备112可以包括显示器116、图像捕获设备118和/或一个或多个数据获取设备,例如上文所论述的I/O设备116-122中的任一个,同时可以具有也可以不具有额外部件,以便包括移动终端。
在某些实施例中,I/O设备可以形成于用户124的衣服或配饰内或以其他方式与用户124的衣服或配饰相关,所述衣服或配饰包括手表、臂带、腕带、项链、衬衫、鞋等等。这些设备可以被配置成捕获图像数据。应理解,它们可以在用户124与计算机设备114交互期间检测基于一个或多个运动移动,和/或可以独立于计算机设备114(或本文中所公开的任何其他设备)进行操作。例如,BAN 102中的一个或多个设备可以被配置成用作全天活动监测器,这种监测器不管用户相对于计算机设备114的接近度如何或是否与计算机设备114交互都测量活动。
在某些实施例中,图1中所示的设备126可以包括可包括一个或多个传感器的鞋类,传感器包括但不限于本文中所公开的和/或本领域中已知的那些传感器。
ii.腕戴式设备
图1的元件130示出可以与物理装置相关联的示例传感位置,所述物理装置例如传感器、数据获取单元或其他设备。但在其他实施例中,它可以是例如经由图像捕获设备(例如,图像捕获设备118)监测的身体部分或区域的特定位置。在某些实施例中,元件130可以包括传感器,使得元件130a和130b可以为集成到例如运动服的服装中的传感器。此类传感器可以被放置在用户124的身体的任何所需位置处。传感器130a/b可以与BAN 102、LAN 104和/或WAN 106的一个或多个设备(包括其他传感器)通信(例如,以无线方式)。在某些实施例中,无源感测表面可以反射由图像捕获设备118和/或传感器120发射的波形,例如红外光。在一个实施例中,位于用户124的服装上的无源传感器可以包括由玻璃制成的大体上球状结构或可以反射波形的其他透明或半透明的表面。可以利用不同类型的服装,其中给定类型的服装具有被配置成在被正确地佩戴时位于用户124的身体的特定部分附近的特定传感器。例如,高尔夫服装可以包括定位于呈第一配置的服装上的一个或多个传感器,而足球服装可以包括定位于呈第二配置的服装上的一个或多个传感器。
II.根据本公开的例子的图像捕获系统的总体描述
通常,如上所描述,本发明的一些方面涉及使用基本的和细粒度的分类方法来区分消费产品(例如鞋类制品、服装和/或运动装备)的系统和方法。
用户可以使用例如相机、移动设备等的图像捕获设备来捕获任何期望类型的消费产品。所述系统可以利用由用户捕获的例如图像、照片、视频等内容来区分各种可用的产品,并且实时地标识包括在所捕获的内容中的产品。根据本公开的各方面,系统可以利用与消费产品(例如,鞋类制品)相关联的各种细节来标识产品,例如:鞋类制品(例如,各种鞋面部分或元件,各种中底部分或元件,各种外底部分或元件等。)的一部分的颜色;可以印刷或以其他方式提供在鞋类上的图像或其他图形数据,图片或图形定向等;可以在鞋(例如,鞋类制造商的徽标,团队或团体徽标等)上提供的徽标数据;可以在鞋上提供的文本数据、文本位置、文本大小、文本颜色、文本定向、文本字体等。在一些情况下,系统可以使用指示鞋类制品的各种部分的各种材料或其他特性的信息来区分消费产品,例如不同的鞋面材料;中底材料;外底材料;鞋面厚度;中底厚度;外底厚度。
尽管上文结合鞋类制品的分类进行了描述,但是本公开的各方面还可以用于其他消费产品的分类,例如服装制品、运动装备等。
在鞋类的例子中,可以允许用户在各种不同的环境中捕获鞋类制品的图像。例如,用户可以捕获由沿街道行走的另一个人穿着的鞋类制品的图像;用户可以捕获显示在例如广告牌、电视广告、在线广告等的广告上的鞋类制品的图像;或用户可以在零售环境中(例如在购物商场或零售店)捕获鞋类制品的图像。鞋类的视觉图像可以存储在用户的设备上和/或可以存储在远程位置,例如远程服务器处。在一些例子中,用户可以在由用于对图像内的一个或多个项目(例如,消费产品)进行分类的软件应用程序提供的用户界面中查看所捕获的图像。软件应用程序可以在用户的设备上执行和/或可以在远程计算设备上执行。用户界面可以提供关于如何使用界面来捕获对象的图像的一个或多个视觉的、听觉的或文本的指示(例如,虚拟对象、书写指令、语音命令、屏幕上的图标等)。
在某些情况下,用户可以使用计算设备来存取远程应用程序。计算设备在网络内建立通信信道并且与提供用于检测和分类特定消费产品的产品分类特征的服务器系统(包括一个或多个服务器计算机)通信。任何期望的通信链路和通信协议可以用于提供和控制计算设备与系统之间的数据交换。用户可以使用计算设备经由例如因特网、局域网(LAN)、广域网(WAN)等网络连接到在线分类系统。用户可以经由任何通信信道,例如来自链接到制造商的网站门户的各种社交网络网站的网站门户和应用程序将其计算设备连接到系统。
在不脱离本公开的方面的情况下,可以使用任何期望类型的计算设备,如以下将更详细描述的,例如能够建立网络连接和/或对等连接并且能够提供必要的显示、用户界面和输入能力的任何计算设备。在根据本发明的至少一些例子的系统和方法中可以使用的计算设备的一些更具体的例子包括但不限于:台式计算机、个人计算机、膝上型计算机、掌上计算机、手持计算机、蜂窝电话、任何其他移动设备或智能手机、个人数字助理、计算机工作站、电视等。
在根据本发明的例子的系统和方法中可以使用的计算设备可以包括一个或多个输入设备和数据处理系统(例如,包括一个或多个微处理器)。可以包括在计算设备中的输入设备的例子可以包括图1和图2中所说明的一个或多个设备,并且不限于传统的输入设备,例如:键盘(硬键盘或软键盘);鼠标、跟踪球、滚动球、触摸板或其他定点设备;触控笔或其他笔型输入设备(例如,用于平板PC型计算设备);磁盘驱动器;USB端口;网络连接;操纵杆型控制器;电话连接;以太网连接;语音识别功能;等等。此外,计算设备可以具有“触摸屏”功能,使得用户通过由用户的手指或例如触控笔的选择设备物理地触摸显示器的屏幕来将数据输入到计算设备中。另外,可以提供与根据本发明的系统和方法的计算设备结合使用的任何期望类型的显示设备,包括与计算设备本身集成的显示设备或与计算设备分离但与其通信的显示设备,例如投影仪显示器、单独的监视器显示器等。
用于生成以上论述的用户界面的软件可以驻留在存在于计算设备或服务器系统上或可用于计算设备或服务器系统的计算机可读介质上。在某些情况下,用户的计算设备可以将图像数据传输到服务器系统以进一步处理图像数据和/或对与图像数据相关联的对象进行分类。计算设备可以基于预定的或动态的处理阈值来确定何时将图像数据传送到服务器系统。例如,计算设备可以估计设备的处理系统上的负载,以处理图像数据和/或对对象进行分类。计算设备可以以各种方式估计负载,包括基于图像数据的文件大小。如果处理负载超过处理阈值,则计算设备将图像数据发送到服务器系统以进行附加处理。在处理图像数据和/或对对象进行分类之后,服务器系统可以将指示已分类对象的数据发送到计算设备。在一些实施例中,计算设备可以将图像数据发送到服务器系统以验证由计算设备做出的确定/分类。替代地,如果需要,所述软件或其至少一些部分可以驻留在一个以上的计算设备或服务器系统上。服务器系统可以由与操作和维护计算设备和/或网络的相同组织或个人来操作和维护,或服务器系统可以由与任何或所有这些实体分开的一方来操作、控制和维护。作为一些更具体的例子,服务器系统可以由一个或多个通过下面(例如,零售商、制造商或零售商选择的供应商等)描述的分类系统和方法对其产品进行分类的实体来操作和维护(并且用户界面软件也可以被操作和维护)。
图像数据可以从一个或多个图像捕获设备捕获,例如位于移动终端设备上的相机、摄像机、静止图像相机和/或配置成检测包括光、磁场和/或热能的能量的波长的任何装置。如本文中所使用的,“图像数据”可以包括原始的和/或压缩的数据,或以物理的有形形式或作为电子信息存储在计算机可读介质上。此外,多个图像可以形成视频的一部分。因此,对图像和/或图片的参考包括视频等。
在本公开的各方面中,图像数据,例如当用户在零售环境内时,在用户进行体育活动(例如,参加篮球比赛和/或执行特定动作,同时用户正在消费与消费产品有关的广告)期间获得的信息。例如,计算机可读介质可以包括计算机可执行指令,其在被执行时可以执行获得进行运动的运动员的多个图像(例如,视频)。例如,便携式电子设备112可以包括允许用户124(或另一用户)使用图像捕获设备(便携式电子设备的一部分或向外部图像捕获设备提供输入)来捕获图像数据的应用程序。
在本发明的一些方面中,在用户激活主机设备(例如,便携式设备112)上的图像捕获功能(其可为硬按钮或软按钮)时,便携式设备可以处理所捕获的图像数据以确定其中的一个或多个消费产品并对其进行分类。在本发明的其他方面中,用户可以经由软件应用程序选择所捕获的图像数据以发起产品分类过程。
可以响应于用户在例如便携式设备112的相机的设备上操作的相机来获得图像数据。在某些实施例中,图像数据可以从用户124(和/或在用户124的指导下的个人或实体)不能直接控制的广播源获得,例如内容源提供者。例如,内容源提供者可以广播(实况和/或延迟的)体育赛事。在一个实施例中,所述赛事可包括预定的篮球比赛。然而,在另一个实施例中,体育赛事可以包括非预定赛事,例如接球比赛。
在本发明的一些方面中,可以仅基于传感器数据来捕获图像数据。在一个实施例中,传感器数据可以是体育活动数据。例如,在某些实现中,可以在确定用户正在参与特定活动时捕获图像数据。作为另一例子,在某些实现中,图像数据可以在确定用户已超过阈值性能目标和/或活动性能度量时被捕获。在另一实施例中,至少一个物理属性值必须满足阈值。
如上论述,传感器数据可以被接收,其可以包括与用户124的活动有关的原始和/或处理信息。活动数据可以从本文中所描述的一个或多个传感器获得。例如,在一个实施例中,使用者的鞋类可以包括至少一个传感器。在某些实施例中,运动数据的至少一部分可以保留在传感设备或可操作地连接到用户的另一设备(例如,腕戴式设备和/或安装在鞋上的传感器)上。然后可以将数据与所捕获的图像数据结合和/或以其他方式相关联。
在本发明的一些方面中,系统可以使用深度神经网络架构和深度学习方法来处理和分析包括一个或多个待分类的消费产品的图像数据。深度学习提供了一组技术和算法,其帮助我们参数化深度神经网络结构-具有许多隐藏层和参数的人工神经网络。在本发明的某些方面中,系统可以利用机器学习软件来处理图像数据并且对其中所包括的一个或多个消费产品进行分类。例如,具有隐藏层的前馈网络和其他深度神经网络可以用于对包括在图像数据内的消费产品进行分类。这些网络可以使用中间(隐藏)层来建立多个抽象层,其中每个层可以用于执行单独的图像处理功能。例如,当对特定产品(例如,鞋类制品)执行视觉图案/产品识别时,则第一层的神经元可以被配置成识别鞋类的边缘,第二层的神经元可以学习识别从边缘建立的更复杂的形状(例如,三角形和矩形)。第三层可以学习以识别更复杂的形状,等等。在学习解决复杂的模式和产品识别问题时,这些多个抽象层很可能给深度网络带来令人信服的优势。在不脱离本发明的范围的情况下,可以利用例如卷积神经网络和生成对抗网络的其他类型的神经网络来执行图像处理功能。
在本公开的一些方面中,可以捕获并且存储与待分类的各种可用消费产品相关联的一个或多个图像数据库。当试图对图像数据内的产品进行分类时,所述系统可以从这些数据库中检索信息。系统可以将从数据库检索的信息(例如,与消费产品相关联的一个或多个图像)与由系统生成的指示对象的帧/图像的信息(例如,由用户设备捕获的对象的图像数据)进行比较。另外,为了适当地校准分类系统以准确地并且适当地标识图像数据内的产品,可以训练系统使用存储在一个或多个图像数据库内的信息和/或从一个或多个用户计算设备提交的信息来标识特定产品。例如,如果系统能够在第一组条件下检测第一产品,则随后可以训练系统在稍微经修改的一组条件下检测第一产品。例如,如果系统已确定图像数据内的第一项目对应于特定样式/类型的鞋类(例如,NIKE空军一号),则系统可以被呈现以NIKE空军一号的多个图像,所述图像已被调整尺寸为各种像素尺寸(例如,被调整尺寸大于原始图像,被调整尺寸小于原始图像),以试图使系统不断地学习如何在各种尺寸条件/环境的背景下标识鞋类的特定样式/类型。
为了保持跨机器学习训练试验的分类结果的上下文,可以利用一组固定的验证图像。在一些情况下,固定集可以旋转或增加鞋类制品的附加样式颜色。另外,为了最好地模拟现实世界环境,用于训练分类系统的验证图像可以包括在各种环境中鞋类制品的图像,例如在容纳在某人手中的鞋盒中、面对不同颜色的背景、在铺有地毯的地板上、在各种照明条件下、以各种图像捕获角度等等。附加地或替代地,可以从多个用户通过网络提交的数据获得验证图像。
在本公开的一些方面中,可以利用例如旋转扫描仪等专门编程的计算设备来使用一个或多个图像捕获设备捕获特定产品的多个图像。例如,扫描仪可以用于收集产品的多个分离的图像,其可以对应于(并且由其捕获)一个或多个不同的图像捕获设备,每个捕获产品的一个或多个图像。当产品在盘片上旋转时,一个或多个图像捕获设备可以以特定的角度安装,从而允许图像捕获设备以多个不同的角度捕获产品。
用旋转扫描仪捕获的图像可以用来显影图像的验证集,以帮助系统学习如何检测和分类特定的消费产品。这些验证图像可以成为图像集(例如,验证集)的基础,所述图像集可以被用来评估被建立以标识消费产品的特定特征的各种神经网络。为了增加系统的学习准确性,可以将附加验证图像提供给系统,其中附加验证图像在各种条件下捕获消费产品,例如固态背景、纹理化背景、不同照明角度等。在系统已学习以检测特定产品之后,例如通过在阈值置信水平(例如,85%,90%等)内检测产品,然后系统可以能够检测由用户的移动设备捕获的图像内的产品。
并非在所有验证图像上利用设定的角度和固定的照明水平,因为这可能导致验证数据过于统一和同质,并且导致系统聚焦在产品的错误特征上,从而对产品的错误特征施加过多的权重,而改变捕获产品的条件将更接近地再现用户可能捕获特定产品的各种条件。换句话说,在由系统执行的特征检测期间,可以给予重复的元素更多的权重,例如光级、直线轨迹、极度特写镜头等。当被提交用于推断的图像缺乏这些权重较大的特性时,结果概率反映了网络作出正确猜测的置信度。更一般化的和较少结构化的训练数据有助于在各种环境和条件下可能通用的特征的规则化。通过利用使用移动设备(例如便携式设备112)捕获的模仿“现实世界”环境和情景的训练数据,所述系统更有可能生成对消费者提交的图像进行确信推断所需的特征向量。
假设消费者可以从无数个角度进行拍摄,则当分析由消费者捕获的图像时,系统的预测能力总是存在一些弱点。然而,通过使用包括可能由消费者提交的以各种角度捕获的产品的图像的验证数据集,当试图对特定产品进行分类时,系统可以为用户建立特定角度的粗略指南。作为一个例子,通过使用侧面轮廓平移方法围绕鞋的侧面捕获拍摄,可以达到最好的结果。另外,许多产品当从某些角度观察时可能看起来是相同的,因为它们独特标识的颜色特征不是清晰可见的。这样,当与通过以不良角度捕获的图像传达的有限特征数据结合时,前面提到的由照明引起的障碍可能进一步加剧这些困难。因此,可以通过利用在用户设备(或远程设备)上执行的分类应用程序/软件的用户界面经由视觉提示来引导用户来尝试指导用户行为。
如上论述,所述系统可以学习使用包括以多个不同角度捕获的产品的图像的验证数据集来分类和检测特定产品。在本公开的其他方面,由所述系统利用的验证数据集可以包括在多个不同照明环境中捕获的产品的图像。这可以通过使用若干型号的采用不同的滤光器的LED灯捕获产品的多个图像来实现。有颜色的和纹理化的背景还可以帮助不同波长的漫射和折射,进一步允许在数据集中为特定类别引入不确定性。因此,强光、背光、弱光、阴影、日光、荧光等均可以提供散发不同色调的不同照明场景,使得图像捕获设备可以拾取不同的信息以包括在验证数据集中。通过收集使用各种照明和阴影捕获的训练/验证数据,系统可以减轻可能未包括在验证数据集中的所有各种场景。通过在强度和频谱中引入表面上无关紧要的细微差别,验证数据集可以教导系统在检测和/或分类产品时区分重要或不重要的信息。
如上所述,验证图像可以作为图像集(例如,验证集)的基础,所述图像集可以用于评估被建立以标识产品的特定特征的各种神经网络。然而,用于对输入图像(例如,消费产品或其他项目)进行分类的神经网络可能最终在图像测试和校准期间显示不一致的失效模式。此类错误可能是由图像捕获系统对捕获图像的各种条件的敏感性引起的。此类条件(例如,照明、环境等)可能是不可能控制的,并且在它们可以被复制的程度上,在相同或不同产品的多个图像捕获上,这样做实际上是不可能的并且极其麻烦。例如,尝试使用黑色调来捕获白色鞋子的图像并且在较暗的光设定下拍摄将产生与在较亮的光设定下在相同鞋子上使用的相同黑色调颜色拍摄时不同的RGB颜色值。同样,尝试使用黑色调来捕获白色鞋子的图像并且在较暗的光设定下拍摄将产生与在较亮的光设定下在另一鞋子上拍摄的相同黑色不同的RGB。
为了解决这些问题,系统可以以防止图像捕获之间的光照和环境不一致的方式开发训练数据,以降低用于产生验证集的图像输入的可靠性和准确性,并且进一步训练被配置成标识各种产品的特定特征的神经网络。在本公开的一些方面中,系统可以在各种设定(例如,照明、环境、图像捕获的角度等)下从多个图像捕获设备捕获多个图像或视频。例如,系统可以在三(3)个不同的照明/环境设定下从多个相机中的每个捕获三(3)个视频。可以使用各种不同的设定来捕获图像或视频。例如,第一设定可以用于捕获最适合捕获特定产品的图像/视频(例如,用于捕获特定形状、尺寸、颜色等的鞋的最佳照明设定)。附加地或替代地,可以使用设定来捕获最适合捕获多个不同产品的图像/视频。此设定可以被认为是中性的,并且为可以在多个不同产品上使用的照明或其他条件环境提供基线设定。
由多个图像捕获设备捕获的所得图像和视频可以被处理并且存储以供系统稍后使用。例如,系统可以使用捕获的图像/视频数据作为训练神经网络的输入以训练神经网络。参考下面的例子,如果使用三个不同的相机中的每个在不同的条件/设定下捕获产品,所得到的9个图像/视频集可以被用作用于训练神经网络的扩展数据集。因此,除了在输出中提供更多的一致性之外,在照明/条件不一致不利地影响提供给神经网络的用于标识产品的训练数据的情况下,所得到的用于神经网络的训练数据将更强健并且提供更适度的失效模式,由此提高了神经网络可以用来对期望的产品进行分类的准确性。
给定此一般背景和信息,以下将更详细地描述根据本公开的各方面的关于系统、方法、计算机可读介质和用户界面的特定示例的更详细信息。应了解,此更详细的描述涉及各种实施例的各种特定例子及其特征和功能,并且此描述不应被解释为限制任何此类实施例。
III.根据本公开的例子的图像捕获系统的具体例子
下面将更详细地描述产品分类系统、方法和用户界面(例如,用于接受用户输入并且向用户提供关于产品分类的信息由计算设备生成)的各种特征。所述领域的技术人员将理解,以下描述和附图仅表示根据本发明的系统、方法和用户界面的潜在特征、功能、界面部件的布置、界面部件的定向、界面部件的组合等的例子。
在本公开的一些方面中,分类系统可以包括规则数据库,其被配置成存储操作系统内的一个或多个计算设备的一个或多个规则以捕获用于训练分类系统的验证数据的图像数据。例如,规则数据库可以包括被配置成指示分类系统内的一个或多个计算设备发起一个或多个图像捕获设备以捕获各种环境和条件内的项目的图像的多个规则,这将在下面并且至少关于图12-图14进一步详细描述。存储在数据库中的规则可以包括多个条件和参数,用于何时应该操作某些设备来捕获用于验证集的图像数据,以及分类应该如何使用这此类信息来促进机器学习技术来标识和学习图像数据内的特定项目(例如,消费产品)的上下文。通过在数据库内存储、存取和修改各种规则,分类系统可以更高效地检测和分类消费者提交的图像数据中的项目。
在本公开的至少一些方面中,可以从在用户的计算设备(例如,便携式设备112)上执行和/或存取的软件应用程序来启动或发起分类会话。
在此类系统和用户界面中可以接受用户输入,例如通过鼠标、轨迹球、键盘、滚动球、触摸屏、触控笔、操纵杆等,并且可以允许用户与界面交互并且使用选择设备进行选择。在某些情况下,用户能够通过分类应用程序的用户界面捕获图像数据,例如照片、视频等。如果需要,可以以一种或多种方式提供用户界面以启动产品分类系统和方法。在不脱离本发明的情况下,产品分类还可以从网站或其他在线体验发起,例如通过与专用产品设计网站的直接交互,通过产品制造商的网站等。
图3A和图3B示出作为如上所描述的产品分类系统的发起的结果可能发生的用户界面响应的示例。如图3A中所示,用户界面601可以向用户提供示出由与用户的计算设备相关联的图像捕获设备,例如便携式设备112捕获的图像的屏幕。用户界面可以包括指示用户界面的一部分的焦点或目标覆盖图(例如覆盖图605),用户应使用所述部分来捕获所需产品的图像。在不脱离本公开的范围的情况下,在用户界面中显示的焦点覆盖图可以包括各种形状和/或尺寸。在本公开的一些方面中,目标覆盖图可以包括场,例如,场603,以帮助用户正确地捕获产品607(例如,鞋类制品)的图像。如图3B中所示,用户界面601的一部分可以包括文本和/或对用户的通信消息的提示。例如,可以提示用户移动、旋转或调整图像捕获设备的焦点以更好地捕获产品。作为另一例子,可以提示用户将由图像捕获设备捕获的项目与用户界面上显示的区域(或轮廓)更紧密地对准,以便帮助用户正确地捕获图像数据内的项目。作为又一例子,可以经由用户界面来提示用户捕获例如覆盖图605等目标区域内的产品的图像。还可以提示用户使用分类应用程序从各种角度捕获产品的一个或多个图像。在某些情况下,可以提示用户将产品697与在用户界面的显示器中提供的场轮廓603对准。
在本公开的一些方面中,分类系统可以通过在图像数据处理之前和/或期间裁剪产品的图像来提高产品检测和分类的准确性。通过裁剪图像数据,应用程序可以将其处理主要集中在检测到的项目上。在本发明的其他方面中,分类系统可以进一步扩充或修改图像数据以便对产品进行分类。例如,如图4A-图4D所示,分类系统可以通过裁剪背景以聚焦对消费产品的处理来分离图像数据内的产品图像。如图4B、图4C和图4D中所示,分类系统可以利用基于轮廓的边缘检测技术来检测将图像裁剪到“目标”区域的尺寸的位置,以便去除被传输用于处理/检测的多余或背景信息,并且进一步聚焦于消费产品。在本公开的其他方面中,分类系统可以利用被训练为检测特定产品,例如鞋类制品的Haar-Cascade分类器。
通常,通过利用分类应用程序的用户界面经由视觉提示来引导用户,可以实现指导用户行为的努力。随着更多的消费者自然地开发从接触到各种类型的检测界面的学习行为,这已经变得越来越容易。当不利用应用程序中的对象检测、隔离和裁剪时,如在本公开的一些方面中的情况,可以尝试引导用户捕获合适的图像以用于分类系统的推断和处理。在本公开的一些方面中,这可以包括保持适当的焦距,从而能够捕获相关的和区分的特征和细节,同时限制引入无关的背景细节。
在本公开的一些方面中,分类系统可以利用基于网络的应用程序来向用户提供产品分类应用程序。在某些情况中,网络客户端可以与在用户的移动计算设备(例如,便携式设备112)上执行的浏览器兼容,并且可以允许提交使用移动计算设备和/或图像捕获设备捕获的一个或多个图像。网络客户端和/或移动计算设备可以在保持高宽比的同时调整所传输的图像的大小。在提交到远程计算设备后,一个或多个图像可以通过在用户的移动计算设备上执行的软件应用程序所使用的类似API来处理。分类的结果可以经由显示设备在标准HTML表格中显示给用户。
在本公开的其他方面中,分类系统可以利用客户端处理来检测图像数据内的产品。例如便携式设备112等用户的计算设备可以执行对象检测和裁剪以隔离产品并且减少总体数据传送和处理时间。附加地或替代地,使用被训练以识别产品形状的Haar-Cascade分类器可能是理想的解决方案,从而可以高置信度从源图像中紧密裁剪感兴趣的对象。
在本公开的另外方面中,分类系统可以处理图像和/或视频的连续流以执行产品检测/分类。在本发明的其他方面中,分类系统可以生成与图像数据内的产品的图像相关联的检测到的分类对应于特定消费产品的概率。分类系统可以向用户呈现已经由分类系统标识为与图像数据内的产品相对应的一个或多个潜在产品。分类系统还可以基于分类处理确定每个潜在产品的置信水平。
分类系统还可以经由应用程序界面向用户提供用于检测和分类消费产品的各种特征。
那些是什么:耐克(Nike)在其历史中已经制造了几十万种独特的鞋类型号,并且目前每年制造几千种新的鞋类产品和样式。分类系统可以允许消费者在任何地方直观地标识消费产品,推断消费者和他们拥有、欣赏或隶属于文化的产品之间的数百万的联系。
产品透明度和购买:无论是在批发零售场所还是在各种其他环境中,分类系统都允许消费者拍摄产品的图像并且对其性能和需求的适合性作出快速决定,找到视觉上类似于所捕获产品的产品,和/或(如以下将进一步详细说明的)立即购买所检测的产品的能力。
NRC自动标记:使用NRC的运动员可以通过以下两种方式来标识他们的鞋类(或其他产品):(i)经由应用程序界面在下拉菜单中主动“标记”(和/或关联)所述鞋,或(ii)通过简单地经由照片捕获产品的图像并且将所述图像共享到用于NRC和/或运动在线社区的数据反馈。可以主动地采用分类系统来代替分类应用程序中的手动鞋标记特征,或当用户将照片发布到在线社区或社交联网站点时,这是偶然的,其中消费产品被分类系统检测和分类。
照片/媒体自动标记:作为服务的一部分,分类系统可以在消费产品可以被识别的任何地方对消费产品进行自动标记和/或关联。例如,分类系统可以在耐克的在线抵押品内可以被识别的任何地方自动标记产品(例如,品牌摄影、媒体等);出现在耐克软件应用程序内的用户生成的内容中;或在第三方应用程序(例如,YouTube、Instagram、Snapchat、Facebook等)内。
用户提交的内容:分类系统可以获得和收集由用户或用户组捕获和/或提交的图像。这些用户可以用产品信息、样式信息以及与所述产品相关联的其他信息来标记所捕获的图像,使得分类系统可以确认分类,并且将图像与产品数据一起存储在数据库中以供后续检索。
搭配我的服装:在处理和/或确定产品的分类之后,分类系统可以由从视觉搜索和/或其他因素返回的数据的任何组合向消费者提供颜色和/或样式考虑。
功能检测与增强现实:通过附加服务,分类系统还可以在使用分类应用程序界面时帮助消费者标识产品设计、技术、材料和/或品牌的元素。例如,当执行分类和检测技术时,系统可以经由应用程序界面以图形方式检测并且向消费者强调产品元素。例如,在由用户的计算设备(例如,便携式设备112)捕获的图像数据内,由应用程序界面标识的Swooosh或Jumpman徽标可以经由应用程序界面中的覆盖图来激活徽标的图形表示,以提供产品和覆盖图的复合视图。分类系统可以进一步被配置成将其他计算机生成的图像覆盖在产品上,例如气囊或囊状物覆盖在检测到的产品的图像的鞋底上;Lunarlon中底在检测到的产品的图像的中底上;基于与产品相关联的各种类型的信息,例如与产品相关联的元数据,用于产品的样式选项和颜色方式,在检测到的产品的图像上的覆盖飞织材料。在本公开的一些方面中,应用程序界面可以提供由图像捕获设备捕获的图像/视频的实况直接(或间接)视图以及计算机生成或提取的现实世界感官输入,例如声音、视频、图形和/或位置/地点信息。这样,除了标识产品之外,消费者还可以通过增强现实来标识产品的特征。
IV.根据本公开的例子的库存和购买确定的描述
图5示出根据本公开的示例实施例的电子文档802。示例实施例可以在显示购买链接之前作出关于要在电子文档802中显示的项目的可用性确定。在示例实施例中,电子文档802可以包括显示一个或多个项目806的内容804。例如,电子文档802可以是网页或HTML(或任何其他标记语言)文档。在本公开的一些方面中,电子文档可以是以电子形式使用的任何电子媒体内容。电子文档802也可以是适于向用户呈现信息的任何数据类型。内容804例如可以是照片,和/或也可以是视频。项目806可以是可以从提供者购买的任何产品或服务。作为产品的项目的例子可以包括T恤、裤子、鞋、帽子、食物等。服务的例子可以是草坪护理、旅游、食物配送等。电子文档802可以在呈现与项目806相关联的购买链接之前确定项目806中的任何一个当前是否在库存中,如下面进一步详细论述的。
在所描绘的例子中,内容804是对应于鞋类制品的项目806的图片。项目806可以与可能或可能不在内容804中显示的场相关联。
图6示出根据本公开的示例实施例的包括与呈现的项目806相关联的场902的内容804。在图6中,鞋类制品从图5中去除以更好地说明场902。场902可以对应于显示项目806的内容804中的位置。例如,场902可以对应于在内容804中显示鞋类制品的位置。场902也可以被称为热点。如果内容6104是照片,则场902可以是静态的,并且场902可以调整以对应于项目806的当前位置。例如,内容804可以是视频,并且图5中所描绘的鞋类可以随时间移动。当呈现电子文档802时,可以确定内容804中的项目806是否可在库存中可供购买。如果可用,则可以显示允许用户购买项目的购买链接806。如果不可用,则可能不会显示购买链接。
在本公开的一些方面中,用户可以使指示符相对于内容804中呈现的项目806定位。例如,例如但不限于触摸屏显示器、计算机鼠标、跟踪球或键盘的用户输入设备(未示出)可以使指示符围绕电子文档802移动。用户输入设备可以使指示符悬停在感兴趣的项目806上。如果项目106在库存中可用于购买,则可以显示购买链接,并且用户可以选择购买链接以购买项目806。购买链接可以包括指示用户选择用于购买项目的文本的文本(即,选择此处以购买此项目)。下面论述确定是否呈现购买链接的系统。
图7示出根据本公开的方面的系统。系统1000可以包括网络1002、用户终端1004、库存服务器1006和网络服务器1008。用户终端1004、库存服务器1006和网络服务器1008中的每个可以通信地耦接到网络1002。用户终端1004、库存服务器1006和网络服务器1008中的每个可以具有一个或多个处理器,并且可以具有存储用于执行本文中所述的方法和功能的计算机可执行指令的计算机可读存储器。存储器可以用只读存储器模块或随机存取存储器模块的任意组合来实现,可选地包括易失性和非易失性存储器。此外,一些或所有计算机可执行指令可以呈现在硬件或固件(未示出)中。此外,库存服务器1006和网络服务器1008被描绘为单独的设备,但替代地可以是单个设备。用户终端1004、库存服务器1006和网络服务器1008中的每个执行的操作、功能和方法可以跨另外的设备划分,或各种设备可以彼此集成。
用户终端1004可以是如图所描绘的计算机,但也可以是能够与网络通信的其他设备,例如但不限于移动电话、个人数字助理、机顶盒等。网络服务器1008可以存储电子文档802,并且可以响应于来自用户终端1004的请求来传输电子文档802。库存服务器1006可以包括指示项目的可用性的数据,例如要在电子文档802中呈现的项目806。许多技术可以经由网络1002实现用户终端1004、网络服务器1008和库存服务器1006之间的通信。在示例实施例中,可以使用被称为(AJAX)的异步JavaScript和可扩展标记语言(XML)。也可以使用其他协议。例如,电子文档802可以包括一个或多个样式表,并且对电子文档802的请求可以是对网络服务器1008的AJAX调用。
最初,用户终端1004可以向网络服务器1008传输对电子文档802的请求。例如,用户终端1004可以包括网络浏览器,并且请求可以是针对作为网页的电子文档802。除了请求电子文档802之外,所述请求可以包括用户简档。用户简档可以包括关于用户终端1004的用户的信息,例如但不限于衣服尺寸。例如,用户终端1004可以提示用户用关于用户的信息填充用户简档。用户简档可以指示用户穿着十号大小的鞋,以及可能与消费产品相关或不相关的其他用户偏好。用户简档可以是先前存储的信息,或可以由用户在发送请求之前输入。此外,用户可以具有与电子文档802相关联的提供者的帐户,并且所述请求可以包括登录信息。例如,鞋类公司可以提供用于订购鞋类的网页。用户可以使用网页进行注册以获得用于存储用户简档信息的帐户,并且可以获得用于存取帐户的用户名和密码。响应于所述请求,网络服务器1008可以检索电子文档802,并且可以确定电子文档802的内容804包括一个或多个库存标签,所述一个或多个库存标签可以用于指示网络服务器1008确定与每个库存标签相关联的项目806当前是否在库存中可供购买。
图8示出根据本公开的示例实施例的网络服务器1008。网络服务器1008可以包括一个或多个处理器1102和存储器1104。存储器1104可以存储电子文档数据库1106,所述电子文档数据库1106可以存储一个或多个电子文档802。网络服务器1008可以接收并且处理来自用户终端1004的请求,以从电子文档数据库1106获得电子文档802。
图9示出根据本公开的示例实施例的电子文档数据库1106。电子文档数据库1106可以存储一个或多个电子文档(例如,文档802、文档1210)。每个电子文档可以包括内容,所述内容可以包括一个或多个库存标签,例如标签1202A到1202Z。库存标签(例如,标签1202A)可以表示在内容804中显示的项目可供购买。在所描绘的示例中,电子文档数据库1106包括电子文档802A和1210。电子文档802包括内容104和多个库存标签(例如,标签1202A到1202Z)。电子文档1210包括内容1204和库存标签1203。
库存标签1202可以是用于指示网络服务器1008在将电子文档802传输到用户终端1004之前确定例如鞋类制品的项目在与相关库存标签相关联的库存中的可用性的标识符。例如,库存标签1202A可以是指令,并且可以包括数字/字母/符号序列以唯一地标识项目,例如项目806。在项目是鞋类制品的例子中,每个项目可以与作为样式号的标识符相关联,并且样式号可以用于确定所述鞋类制品的可用性。当在电子文档802中标识了库存标签1202时,网络服务器1008可以生成包括库存标签1202的可用性请求,并且可以经由网络1002将可用性请求传输到库存服务器1006。此外,库存服务器1006可以周期性地向网络服务器1008提供库存反馈消息,所述网络服务器1008包括关于用于更新一个或多个电子文档802的一个或多个标签的可用性信息。然后,代替或除了向库存服务器1006通信可用性请求之外,网络服务器1008可以检查库存反馈消息以获得可用性信息。
发布用户标识符可以标识谁发布或上传了电子文档802中的内容804。例如,社交网络网站可以提供用于下载的计算机应用程序,该计算机应用程序允许网站成员标记呈现在他们的内容804中的项目806。成员可以创建电子文档802并且可以上传显示项目806的内容804,例如但不限于鞋类制品。计算机应用程序可以允许成员为上传的内容804中呈现的每个项目添加库存标签或其他识别标签。例如,用户可以添加指示项目是特定型号、样式、颜色、品牌等的标签。计算机应用程序可以包括具有样式的下拉菜单,用户可以通过样式导航以标识显示在内容804中的项目106。计算机应用程序可以向电子文档802添加库存标签,所述电子文档802还包括唯一地标识在社交网站上发布了内容的用户的发布用户标识符。如果预定数量的销售(例如,一个或多个)由成员发布的内容804产生,则项目806的提供者可以用例如但不限于会员费用或奖励的激励来奖励发布用户。所述激励可以是,例如,优惠券、点数、现金、参加免费赠送奖品、商品信用、亲笔签名、其他激励和/或其来自销售的任何组合,所述销售由在购买了成员所发布的内容804中呈现的项目806之后进行购买的人产生。
图10说明根据本公开的示例实施例的库存服务器1006。库存服务器1006可以包括一个或多个处理器1302和存储器1304。存储器1304可以存储库存数据库1306,所述库存数据库1306可以存储指示提供者的库存中的一个或多个项目的可用性的信息。库存服务器1006可以接收可用性请求并且可以查询库存数据库1306或其他数据库,以获得与特定项目和/或库存标签,例如库存标签1202A相关联的可用性信息。
图11说明根据本公开的示例实施例的库存数据库1206。库存数据库1206可以包括一个或多个项目对象,例如对象1404和1410。项目对象1404可以包括关于项目806的可用性的信息。例如,项目对象1404可以包括指示项目当前是否有库存的可用性数据1402A。可用性数据1402A可以一般地指示项目是可用的,和/或还可以包括关于项目的进一步的详细信息。例如,可用性数据1402A可以指示项目是可用的或不可用的,当前库存的数量,是否期望在一段时间(例如,一天、一周、一个月等)内接收任何附加项目、特定模型或样式的可用性,什么颜色可用,其任何组合等。如果所述项目是衬衫,则可用性数据1402A可以包括样式级别的信息(即,特定样式是否可用)。可用性数据1402还可以包括关于哪些尺寸当前是库存,每个尺寸中可用数量等的信息,等等。在所描绘例子中,库存数据库1206包括具有可用性数据1402A-1403G的项目对象1404以及具有可用性数据1404的项目对象1410。
库存服务器1006可以接收和处理具有一个或多个库存标签的可用性请求,以确定与库存标签相关联的项目当前是否在库存中。库存服务器1006可以基于库存标签标识项目对象(例如,对象1404)。例如,库存服务器1006可以基于库存标签1202A的标识符来查询库存数据库1306以标识项目对象1404,并且库存数据库1306可以从项目对象1404返回可用性数据1402A-1402G。一旦被检索,库存服务器1006可以生成库存响应,所述库存响应包括与可用性请求中包括的一个或多个库存标签相关联的可用性数据,并且可以将库存响应通信到网络服务器1008。网络服务器1008可以更新电子文档802以包括所述项目的对应可用性信息,并且可以经由网络1002将电子文档802通信到用户终端1004。此外,如上所述,库存服务器1006可以周期性地向网络服务器1008提供库存反馈消息,所述库存反馈消息包括关于用于更新一个或多个电子文档的一个或多个标签的可用性信息,并且可以包括或可以不包括发送可用性请求。
用户终端1004可以接收电子文档802,并且可以将电子文档802呈现给用户。例如,用户终端1004可以包括显示器,并且用户终端1004可以在显示器中呈现电子文档802。用户可以操纵用户终端1004以使得指示符位于感兴趣的项目上方(即,悬停)。当指示符悬停在例如场902的场的上方时,用户终端1004可以处理可用性数据以确定是否引起购买链接的显示。如果可用性数据指示与场相关联的项目在库存中,则用户终端1004可以引起显示购买链接。如果包括在可用性数据中,则用户终端1004还可以实时地显示当前库存中的项目数量,是否期望在一定时间段内接收任何项目等。用户可以使指示符选择购买链接以输入购买感兴趣项目的信息。然后,用户终端1004可以与网络服务器1008交互以显示图像等,并且处理数据以完成购买。如果可用性数据指示项目不在库存中,则用户终端1004可能不显示购买链接。在本公开的一些方面中,可以在项目变得可用或当前处于库存中时警告用户。可以进一步警告用户在库存中可能具有期望产品的特定零售店。此外,如果不可用,则用户终端1004可以呈现指示项目当前不可用的购买链接,并且可以指示预期所述项目在将来某个时间是否可用。这样,系统1000可以在要呈现电子文档时确定项目的可用性,并且因此可以基于当前项目可用性来实时确定是否呈现购买链接。
IV.根据本公开的例子的用于高效捕获图像数据的过程和技术的说明
本文中所公开的创新的各方面还涉及用于通过利用机器学习协议和算法来可靠地预测内容内的项目的系统和方法。通过使用改进的细粒度图像分类技术,系统可以区分共享基本分类中的异议。细粒度图像分类涉及区分例如特定车型、食物类型、衣服类型、鞋类型号等一些基本分类的附属类别的任务。它与基本分类分类的不同之处在于,对象类之间的差异更加微妙,并且类别只能通过局部差异来区分,因此区分它们更加困难。所捕获的内容内的项目的姿势、比例或旋转的变化通常使对项目进行分类的问题更加困难。
当试图开发高效的学习/通用化方案时,由于随着粒度变得非常精细而不可避免地缺少经标记或经分类的例子,执行细粒度分类可能会带来挑战。因此,本公开的各方面旨在通过建立学习系统来解决此挑战,所述学习系统在未探索的空间中很好地推广,并且能够充分理解基本分类以高效地标识区分精细类的差异,并且进一步理解单个精细类内可允许的固有变化。此第二能力允许系统分离区分未看见的类。例如,人类儿童可以容易地分类和记住他/她以前从未看过的面部,并且能够立即将新的类别(人物)添加和保留到记忆中。以类似的方式,本系统能够从完全未标记或未分类的数据类似地发展其自己的分类方案。
为了以可能的最低的捕获事件量在尽可能多的场景和条件下高效地捕获对象的数据,无论视角、照明、亮度、焦点或运动模糊等,需要专门的系统和处理以使重复的、时间不敏感的和昂贵的数据捕获的性质降到最低。用于训练在人工智能和机器学习任务中的图像数据传统上是从野外采集的,意味着公众可获得的-用户提交的来自社交媒体站点的图像。此过程需要对图像资产进行手动标记和加标签,这当然是耗时且费力的。另外,由于源的预期性质,不能保证特征中所需变化的分布。例如,以共享内容为目的向在线社区或服务发布图片的人倾向于基于感知的图像质量来过滤他们的帖子。用于训练分类系统的可用数据的使用也抑制了在将释放产品的日子内标识产品的能力。
如上论述,用于获得在分类系统中使用的产品的图像的常规过程需要在照明、角度、缺陷等方面性质上太统一的输出。因此,此类过程的分类结果和预测准确性非常差,并且低于使用手动并且因此不可重复的过程所获得的结果。为了实现更高的预测准确性的优势,本文中公开的分类设法以这样的方式定制图像捕获过程,以此允许改进分类系统的预测准确性所需的变化,同时保持高通量和更高效的生产质量过程所需的自动化和可重复性。因此,本文中所公开的分类系统旨在通过允许使用在例如角度、照明、相机设定等各种条件和环境下捕获的图像来识别产品,以产生用于在现实世界中标识消费产品的图像。此外,分类系统在捕获图像数据(潜在地用作验证数据)时反直觉地创建尽可能多的变化,以试图模仿可能被消费者捕获和提交的拍摄类型。
装备建立和设备配置
如图13中所示,在本公开的一些方面中,光箱1601可以用于将对象1603(例如,鞋类)浸入从光源1605发射的光1606中。在不脱离本公开范围的情况下,光源可以包括各种不同的发光元件,例如发光二极管(LED)。一个或多个光源可以从光箱内的各种不同位置发射光,例如从光箱的顶部、底部和/或一个或多个侧面发射光,以便从背景中遮蔽对象。在本公开的其他方面中,可以将对象放置在被机动化以旋转预定度数的盘片(例如,盘片1602)上。在一些实施例中,盘片可以包括玻璃不透明盘片。在其他实施例中,盘片可以包括用于捕获光箱内的产品的图像,同时对图像数据内的对象的处理造成最小的干扰的任何其他合适的材料。在一些实施例中,盘片可以被编程配置成精确地旋转360度。这可确保对象在盘片上运动时的可重复性达到记录到对象的程度。
如上所描述,分类系统可以包括一个或多个规则数据库,所述规则数据库包括用于确定如何和/或何时操作各种设备以捕获验证数据以便于用于对检测项目进行分类的机器学习技术的规则、参数和条件。例如,分类系统可以查阅规则数据库以确定当捕获项目的图像时盘片应如何旋转以及旋转到什么程度。作为另一例子,分类系统可以查阅规则数据库以确定在捕获项目的图像时要操作哪些图像捕获设备,以确定应当利用哪些光源(和/或每个光源的强度)以便在捕获对象的图像数据时适当地修改环境条件。通过查阅规则数据库,分类系统可以高效地捕获与机器学习技术一起使用的验证数据,以改进系统的分类和检测能力,同时还减少需要拍摄(或手动拍摄)以执行此类对象检测/分类的图像的数量。
如图12中所示,一个或多个图像捕获设备(例如设备1510-设备1512)可以以多个高度和/或角度记录对象。在本公开的一些方面中,可以通过将对象(例如,对象1503)设定在盘片(例如,盘片1502)的中心,然后以某种方式(例如,北、南、东、西等)倾斜捕获设备,将所述对象设定在捕获设备的镜头的正中心以确定图像捕获设备的各种角度。通过调整捕获设备的倾斜,这可以消除由镜头引起的潜在桶形失真,否则可能使被捕获的对象失真。在本公开的其他方面中,具有臂的多层支架可将一个或多个图像捕获设备保持在适当位置以捕获对象的图像。在一些实施例中,图像捕获设备可以沿竖直居中的轴对准。多个图像捕获设备可以以预定邻近角度彼此以不同的角度间隔开。例如,参考图12,每个图像捕获设备可以以三个不同的角度竖直排列成间隔10英寸,并且指向可以放置对象1503的旋转盘片1502的中心。在本公开的一些方面中,图像捕获设备可以附接到三脚架头上的多层臂。在一些实施例中,三脚架头可以以固定的平移位置附接到水平基板。在一些情况中,基板可以被配置成以南北倾斜移动,以补偿由图像捕获设备记录的对象的高度的任何变化。
返回参考图13,在本公开的其他方面中,对象(例如,消费产品)可以被放置在旋转盘片1602上。当对象在盘片上旋转时,例如以顺时针方式旋转完整的360°时,对象可以被一个或多个图像捕获设备捕获。在本公开的一些方面中,一个或多个图像捕获设备可以在特定颜色空间中记录对象。在本公开的其他方面中,一个或多个图像捕获设备可以以特定帧速率记录对象。由一个或多个图像捕获设备捕获的图像数据可以存储在存储器中和/或作为视频或图像文件导出到远程计算设备。
在本公开的另外的方面中,当对象在盘片1602上旋转时,对象可以穿过多个光场。每个光场可以被设计成影响对象的一个或多个图像特性,例如对象的颜色、纹理、镜面度、饱和度和色调。
一个或多个图像捕获设备可以具有可变的设定,以便收集正被记录的对象的动态范围。图像捕获设备可以偏离对象的理想曝光,例如+/-1曝光停止。这是重要的,因为当对象的亮度增加时,所记录的颜色的整体饱和度质量可能降低。同样,图像的亮度越暗,所记录的颜色的总饱和度的值可能增加。在本公开的一些方面中,图像捕获设备可以利用各种不同的捕获设定来捕获对象的各个部分。例如,一个或多个图像捕获设备可以被设定为在对象的前部附近聚焦以允许在可变孔径处的最佳景深,以便捕获高、中和低焦点。另外,与可能需要两倍于帧速率的固定快门速度以控制运动模糊的常规视频应用程序相反,本文中公开的系统内的图像捕获设备可以以可变快门速度为目标和/或配置以促进旋转对象越来越小的模糊。
图15说明根据本公开的一个实施例的捕获用于机器学习分类技术的验证数据输入的示例方法,其可以由一个或多个计算设备执行。当描述以下方法的步骤时,当指代在方法的每个步骤中使用的每个部件时,可以使用术语“系统”。此类用法仅仅是为了便于论述所述方法,而不应被解释为限制可以执行以下方法的精确实施例。
在步骤1702处,系统可以确定(和/或检测)要捕获的特定对象。在一些实施例中,所述系统可以被配置成检测项目已经被放置在设备(例如,光箱)内,用于捕获对象的图像。在一些例子中,管理员可以标识正在捕获的特定对象,使得系统可以将捕获的图像数据与对应的对象相关联(和/或相关)。如上所述,对象可以是多种不同的消费产品或项目,例如服装、鞋类、运动装备等。
在步骤1704处,系统可以获得用于捕获在步骤1702期间检测到的对象的图像的规则。例如,系统可以查阅规则数据库以确定用于捕获对象的图像的一个或多个条件。规则可以指示用于操作系统中的各种设备的一个或多个条件和/或参数,以达到用于捕获对象的图像的特定环境和/或图像特性。在步骤1706处,系统可以确定用于捕获对象图像的特定图像捕获条件。在本公开的一些方面中,系统可以基于在步骤1704期间获得的一个或多个规则来确定一个或多个图像捕获条件。在步骤1707处,系统可以使用一个或多个捕获设备来捕获与对象相关联的图像数据。
在步骤1708处,系统可以从对象的捕获图像中提取帧。如上所述,在步骤1707处,可以使用一个或多个图像捕获设备捕获对象,以产生对应于对象的图像数据。在步骤1708期间,系统可以选择图像数据的一个或多个帧(例如,对象的捕获图像,包括视频)。当在步骤1708期间捕获对象的一个或多个图像时,系统可以基于图像捕获设备所采取的路径的时序来选择图像数据的一个或多个帧。例如,图像捕获设备可以沿第一路径运动以在对象在盘片上旋转时(例如,经由旋转扫描仪)捕获对象的各种角度。与图像捕获设备和/或对象的时序和位置运动有关的数据可以被存储以供以后检索,并且被系统用以确定在步骤1708期间要选择的一个或多个帧。在一些情况中,当对象在盘片上旋转时,图像捕获设备可以是固定的。在本发明的其他方面中,所述系统可以将由消费者佩戴或利用的对象的图像作为输入示例,以确定所述对象在将来的迭代中可能由系统捕获的各种图像、位置和角度。
所选择的帧形成用于神经网络分类处理的训练数据的一个组件的基础。如上所述,因为神经网络分类器可能对角度(或其他条件)的微小变化敏感,所以系统被配置成选择与训练神经网络的角度精确地对应的帧。因此,系统可以基于指示对象可能被捕获的预定使用案例的各种输入或参数来选择图像数据的一个或多个帧。换句话说,帧可以被选择以模仿或复制可能由消费者产生的图像,所述消费者选择捕获对象的图像,例如,用户在零售店中试穿鞋类,并且当他们站在特定区域或姿势中时具有由图像设备捕获的鞋类。作为另一例子,在一些使用案例中,可以防止终端用户捕获不对应于预定角度的产品的图像。例如,所述系统可以防止约束终端用户捕获对象的一个或多个侧面轮廓图像,从而允许系统和图像捕获设备在所捕获的图像中获得产品的更多标识信息。
因此,可以基于多种预定使用案例来训练分类系统,以增加分类的准确性。参考与对象的轮廓图相关的上述使用案例,以获得此使用案例的最佳准确性,在步骤1708期间,所述系统可以被配置成提取与在侧面轮廓处或其附近正被捕获的对象相对应的图像数据的一个或多个帧。例如,系统可以选择对应于在侧面轮廓处被捕获的对象的一个或多个帧,其可以被设定为或对应于设定的角度。附加地或替代地,所述系统可以选择与从基本角旋转预定度数(沿任一旋转方向)的对象相对应的一个或多个帧,在此例子中,基本角对应于对象的侧面轮廓。这允许系统获得和分析足够的帧变化,以说明如何拍摄对象的每个图像,尤其是因为终端用户在试图捕获图像时可能没有给出对象的完美侧面轮廓,并且图像捕获设备相机的角度可能对于被捕获的对象的每个图像轻微变化。在其他使用案例中,可以对最终用户施加较少的约束,从而要求系统被配置成以不同的角度提取的帧的较大的变化。在一些情况中,系统可以获得对象的360度图像。
如上所述,为了创建提供给神经网络的最终训练数据,在步骤1708期间,系统从在步骤1707期间捕获的图像数据中提取一个或多个帧。一个或多个被提取的帧,其中每个帧可以对应于单个图像。在步骤1709处,系统可以修改在步骤1708期间产生的图像数据以去除背景图像和其他数据。例如,系统可以从与在步骤1708期间提取的帧相对应的单个图像中提取背景数据。为了完成从对应于所选择的帧的图像中提取背景信息,系统可以在像素级(例如,像素边界)标识对象的轮廓,然后确定图像(对应于所选择帧)中可能包括所述对象的区域。在一些实施例中,系统可以采用并且训练神经网络(例如,“MaskR-CNN”)以执行这些确定。在其他实施例中,系统可以使用其他神经网络来执行实例分割和确定对象的像素边界。在本公开的一些方面中,神经网络可以使用特定于预定使用案例的架构来实现。附加地或替代地,可以使用已经通过使终端用户或其他管理员例如使用绘图应用程序或其他合适的软件来追踪对象的边界而被手动分割的图像数据来实现网络。所得到的数据可以用作训练神经网络(例如,MaskR-CNN)的输入和基础。
在步骤1710处,系统可以使用捕获的图像数据发起机器学习算法和/或过程。如上所述,所述系统可以使用各种捕获的图像数据和/或验证集运行多个试验,以直观地标识(和/或分类)各种环境和条件中的对象。随着时间的过去,分类系统可以学习标识图像数据内的项目,尽管多余的图像信息可能包括在图像数据内而不是对象本身以外。另外,所述系统可以具有基于由与项目相关联地系统处理的各种训练集执行对对象的精细分类的能力。在步骤1712处,分类系统可以基于通过机器学习训练获得的信息来修改和/或调整对象检测和分类参数。经修改的对象检测分类参数可以用作用于捕获其他对象的图像并且生成用于校准神经网络的附加图像数据的进一步的输入。这允许系统以最低的捕获事件量在尽可能多的场景和事件条件下高效地捕获对象的数据,从而使数据捕获序列的重复性质降到最低。在步骤1712期间,系统可以使用经修改或经调整的对象检测和分类参数来对其他图像数据集内的一个或多个对象进行分类。例如,系统可以接收输入图像(例如,从数据库检索、由用户经由移动设备捕获等),并且使用经调整的对象检测和分类参数来对输入图像中的对象进行分类。输入图像可以包括包括对象的捕获图像的数据文件。
在以上描述的示例实施例中,根据特定结果和/或应用程序,可以以任何期望的方式组合、划分、省略、重新布置、修改和/或扩充各种特征和步骤。所属领域的技术人员将容易想到各种改变、修改和改进。虽然未在本文中明确陈述,但此类改变、修改和改进通过此公开变得显而易见,并且旨在在本公开的精神和范围内。因此,前面的描述仅仅是示例性的,而不是限制性的。
装备建立和验证
为了确定设备的旋转速度、感知的和发射的色温,以及光的角度的准确度,将需要以三种方式来评估设备以确保质量。第一种是评估设备的旋转速度;是为电动机速度和来自所述设备的数据输出。光谱仪和照度计可以独立地和共同地测量设备发射光的温度,以确保一致的发射。为了评估由捕获设备再现的颜色感知,每个捕获设备将在对象中心成角度的三个位置录制九个视频:一个是MacBeth颜色图表、一个是18%的灰色球和一个是铬球。每个将由捕获设备在从转盘中心的完整360°旋转中被记录。可以将这些视频与CIELAB色标进行比较,以确定由捕获设备、传感器、灯、捕获设备镜头或视频的数字化过程引起的任何颜色偏移。如果存在偏移,则将测试硬件和软件以使视频恢复准确性。这些视频将与先前记录的控制测试环境进行比较,以验证捕获设备的感知颜色。在本公开的一些方面中,当捕获项目的图像时,分类系统可以利用铬球和灰色球来捕获与特定环境相关联的照明和其他图像特性。所述系统可以利用此信息来存储和分类捕获图像数据的各种环境和条件。
前面的描述提供了关于确定是否向用户呈现购买链接。应当理解,当将其他类型的信息呈现给用户时,本文中描述的原理可以扩展到类似的决定。
尽管已经用对结构特征和/或方法动作专用的语言描述了本主题,但是应当理解,所附权利要求书中定义的主题不必限于上述特定特征或动作。相反,以上描述的特定特征和动作是作为实现权利要求的示例形式而公开的。
Claims (20)
1.一种方法,其包括:
由计算设备检索图像捕获规则;
获取对应于对象的图像数据;
从所述图像数据提取一个或多个图像帧;
修改所述一个或多个图像帧以提取背景信息;
基于一个或多个经修改的图像帧确定对象分类设定;以及
使用所确定的对象分类设定对所述对象进行分类。
2.根据权利要求1所述的方法,其还包括:
由所述计算设备生成用户界面以查看所述对象。
3.根据权利要求2所述的方法,其还包括:
经由所述用户界面呈现视觉指示,所述视觉指示提供指令以基于所检索的图像捕获规则来捕获对应于所述对象的所述图像数据。
4.根据权利要求1所述的方法,其还包括:
向第二计算设备发送对应于所述对象的所述图像数据以验证所述对象的分类。
5.根据权利要求4所述的方法,其中,发送所述图像数据还包括:
确定已超过所述计算设备的处理阈值;以及
向所述第二计算设备发送对应于所述对象的所述图像数据。
6.根据权利要求1所述的方法,其中,修改所述一个或多个图像帧以提取背景信息还包括:
使用至少第一图像帧来确定所述对象的像素边界。
7.根据权利要求1所述的方法,其中,使用所确定的对象分类设定对所述对象进行分类还包括:
将对应于所述对象的所述图像数据与多个产品图像进行比较。
8.根据权利要求1所述的方法,其中,获得对应于所述对象的所述图像数据还包括:
经由图像捕获设备以多个不同视角捕获所述对象的多个图像。
9.一种装置,其包括:
一个或多个处理器;以及
存储器,所述存储器存储指令,所述指令在被执行时使所述装置:
检索图像捕获规则;
获得对应于对象的图像数据;
从所述图像数据提取一个或多个图像帧;
修改所述一个或多个图像帧以提取背景信息;
基于一个或多个经修改的图像帧确定对象分类设定;以及
使用所确定的对象分类设定对所述对象进行分类。
10.根据权利要求9所述的装置,其中,所述指令在被执行时还使所述装置:
生成用户界面以查看所述对象。
11.根据权利要求10所述的装置,其中,所述指令在被执行时还使所述装置:
经由所述用户界面呈现视觉指示,所述视觉指示提供指令以基于所检索的图像捕获规则来捕获对应于所述对象的所述图像数据。
12.根据权利要求9所述的装置,其中,所述指令在被执行时还使所述装置:
向第一计算设备发送对应于所述对象的所述图像数据以验证所述对象的分类。
13.根据权利要求12所述的装置,其中,所述指令在被执行时还使所述装置通过以下步骤来发送所述图像数据:
确定已超过所述装置的处理阈值;以及
向计算设备发送对应于所述对象的所述图像数据。
14.根据权利要求9所述的装置,其中,所述指令在被执行时还使所述装置通过以下步骤来修改所述一个或多个图像帧以提取背景信息:
使用至少第一图像帧来确定所述对象的像素边界。
15.根据权利要求9所述的装置,其中,所述指令在被执行时还使所述装置通过以下步骤来使用所确定的对象分类设定对所述对象进行分类:
将对应于所述对象的所述图像数据与多个产品图像进行比较。
16.根据权利要求9所述的装置,其还包括图像捕获设备,其中,所述指令在被执行时还使所述装置通过以下步骤来获得对应于所述对象的所述图像数据:
经由所述图像捕获设备以多个不同视角捕获所述对象的多个图像。
17.一种非暂时性机器可读介质,所述非暂时性机器可读介质存储指令,所述指令在被执行时使第一计算设备:
检索图像捕获规则;
获得对应于对象的图像数据;
从所述图像数据提取一个或多个图像帧;
修改所述一个或多个图像帧以提取背景信息;
基于一个或多个经修改的图像帧确定对象分类设定;以及
使用所确定的对象分类设定对所述对象进行分类。
18.根据权利要求17所述的非暂时性机器可读介质,其中,所述指令在被执行时还使所述第一计算设备通过以下步骤来修改所述一个或多个图像帧以提取背景信息:
使用至少第一图像帧来确定所述对象的像素边界。
19.根据权利要求17所述的非暂时性机器可读介质,其中,所述指令在被执行时还使所述第一计算设备:
向第一计算设备发送对应于所述对象的所述图像数据以验证所述对象的分类。
20.根据权利要求19所述的非暂时性机器可读介质,其中,所述指令在被执行时还使所述第一计算设备通过以下步骤来发送所述图像数据:
确定已超过所述装置的处理阈值;以及
向第二计算设备发送对应于所述对象的所述图像数据。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762576250P | 2017-10-24 | 2017-10-24 | |
US62/576,250 | 2017-10-24 | ||
PCT/US2018/057370 WO2019084179A1 (en) | 2017-10-24 | 2018-10-24 | IMAGE RECOGNITION SYSTEM |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111492374A true CN111492374A (zh) | 2020-08-04 |
Family
ID=66170099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880081419.0A Pending CN111492374A (zh) | 2017-10-24 | 2018-10-24 | 图像识别系统 |
Country Status (3)
Country | Link |
---|---|
US (4) | US11127157B2 (zh) |
CN (1) | CN111492374A (zh) |
WO (1) | WO2019084179A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022193077A1 (en) * | 2021-03-15 | 2022-09-22 | Shanghai United Imaging Healthcare Co., Ltd. | Systems and methods for image segmentation |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020061236A1 (en) * | 2018-09-18 | 2020-03-26 | Focal Systems, Inc. | Product onboarding machine |
US11077795B2 (en) * | 2018-11-26 | 2021-08-03 | Ford Global Technologies, Llc | Trailer angle detection using end-to-end learning |
US11386473B2 (en) * | 2019-10-24 | 2022-07-12 | Shopify Inc. | Systems and methods for providing product image recommendations |
CN111368886B (zh) * | 2020-02-25 | 2023-03-21 | 华南理工大学 | 一种基于样本筛选的无标注车辆图片分类方法 |
CN111325282B (zh) * | 2020-03-05 | 2023-10-27 | 北京深睿博联科技有限责任公司 | 适应多机型的乳腺x射线影像识别方法和装置 |
CN112565292B (zh) * | 2020-12-22 | 2023-05-02 | 咪咕文化科技有限公司 | 验证码验证方法、电子设备及存储介质 |
EP4285313A1 (en) * | 2021-01-29 | 2023-12-06 | Kevin Fialko | Three-dimensional modelling from photographs in series |
US20220398820A1 (en) * | 2021-06-11 | 2022-12-15 | University Of Southern California | Multispectral biometrics system |
US20230153862A1 (en) * | 2021-11-12 | 2023-05-18 | William Frederick Vartorella | Real-time interactive advertisements placed on a moving vehicle |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100260426A1 (en) * | 2009-04-14 | 2010-10-14 | Huang Joseph Jyh-Huei | Systems and methods for image recognition using mobile devices |
US9037600B1 (en) * | 2011-01-28 | 2015-05-19 | Yahoo! Inc. | Any-image labeling engine |
US20150169994A1 (en) * | 2012-08-24 | 2015-06-18 | Google Inc. | Providing image search templates |
WO2016123538A1 (en) * | 2015-01-29 | 2016-08-04 | Clear Research Corporation | Mobile visual commerce system |
US9424461B1 (en) * | 2013-06-27 | 2016-08-23 | Amazon Technologies, Inc. | Object recognition for three-dimensional bodies |
US9652838B1 (en) * | 2014-12-23 | 2017-05-16 | A9.Com, Inc. | Object retrieval |
EP3218076A1 (en) * | 2014-11-10 | 2017-09-20 | Lego A/S | System and method for toy recognition |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008205774A (ja) * | 2007-02-20 | 2008-09-04 | Nec Corp | 撮影操作誘導システム、撮影操作誘導方法および撮影操作誘導プログラム |
US8774504B1 (en) * | 2011-10-26 | 2014-07-08 | Hrl Laboratories, Llc | System for three-dimensional object recognition and foreground extraction |
US8687104B2 (en) * | 2012-03-27 | 2014-04-01 | Amazon Technologies, Inc. | User-guided object identification |
IL234396A0 (en) * | 2014-08-31 | 2014-12-02 | Brightway Vision Ltd | Self-portrait remediation |
US20160307028A1 (en) * | 2015-04-16 | 2016-10-20 | Mikhail Fedorov | Storing, Capturing, Updating and Displaying Life-Like Models of People, Places And Objects |
JP2016213718A (ja) * | 2015-05-11 | 2016-12-15 | キヤノン株式会社 | 画像処理装置及び画像処理方法、プログラム、記憶媒体 |
US9549101B1 (en) * | 2015-09-01 | 2017-01-17 | International Business Machines Corporation | Image capture enhancement using dynamic control image |
-
2018
- 2018-10-24 US US16/169,774 patent/US11127157B2/en active Active
- 2018-10-24 WO PCT/US2018/057370 patent/WO2019084179A1/en active Application Filing
- 2018-10-24 CN CN201880081419.0A patent/CN111492374A/zh active Pending
-
2021
- 2021-08-13 US US17/401,814 patent/US11810344B2/en active Active
-
2023
- 2023-10-03 US US18/376,204 patent/US20240029425A1/en active Pending
- 2023-10-03 US US18/376,258 patent/US20240029426A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100260426A1 (en) * | 2009-04-14 | 2010-10-14 | Huang Joseph Jyh-Huei | Systems and methods for image recognition using mobile devices |
US9037600B1 (en) * | 2011-01-28 | 2015-05-19 | Yahoo! Inc. | Any-image labeling engine |
US20150169994A1 (en) * | 2012-08-24 | 2015-06-18 | Google Inc. | Providing image search templates |
US9424461B1 (en) * | 2013-06-27 | 2016-08-23 | Amazon Technologies, Inc. | Object recognition for three-dimensional bodies |
EP3218076A1 (en) * | 2014-11-10 | 2017-09-20 | Lego A/S | System and method for toy recognition |
US9652838B1 (en) * | 2014-12-23 | 2017-05-16 | A9.Com, Inc. | Object retrieval |
WO2016123538A1 (en) * | 2015-01-29 | 2016-08-04 | Clear Research Corporation | Mobile visual commerce system |
Non-Patent Citations (2)
Title |
---|
管燕 等: "外轮廓与花纹特征相结合的平面鞋印图像识别的研究", 《长江大学学报》 * |
马超杰 等: "应用支持向量机分类的多角度目标识别技术", 《激光与红外》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022193077A1 (en) * | 2021-03-15 | 2022-09-22 | Shanghai United Imaging Healthcare Co., Ltd. | Systems and methods for image segmentation |
Also Published As
Publication number | Publication date |
---|---|
US20190122384A1 (en) | 2019-04-25 |
US20210374992A1 (en) | 2021-12-02 |
US11127157B2 (en) | 2021-09-21 |
US20240029425A1 (en) | 2024-01-25 |
WO2019084179A1 (en) | 2019-05-02 |
US20240029426A1 (en) | 2024-01-25 |
US11810344B2 (en) | 2023-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11810344B2 (en) | Image recognition system | |
US11756291B2 (en) | Scene and user-input context aided visual search | |
US10789699B2 (en) | Capturing color information from a physical environment | |
US11100054B2 (en) | Digital image suitability determination to generate AR/VR digital content | |
CN105809620B (zh) | 用于线性全景图像拼接的预览图像获取用户界面 | |
US10210423B2 (en) | Image match for featureless objects | |
US9841877B2 (en) | Utilizing color descriptors to determine color content of images | |
US20180121732A1 (en) | Data recognition model construction apparatus and method for constructing data recognition model thereof, and data recognition apparatus and method for recognizing data thereof | |
US11921777B2 (en) | Machine learning for digital image selection across object variations | |
US11126845B1 (en) | Comparative information visualization in augmented reality | |
US20210312523A1 (en) | Analyzing facial features for augmented reality experiences of physical products in a messaging system | |
US11521334B2 (en) | Augmented reality experiences of color palettes in a messaging system | |
US10635280B2 (en) | Interactive interfaces for generating annotation information | |
US11915305B2 (en) | Identification of physical products for augmented reality experiences in a messaging system | |
US20210312678A1 (en) | Generating augmented reality experiences with physical products using profile information | |
US20220114639A1 (en) | Recommending products using artificial intelligence | |
CN111279381A (zh) | 经由目标图像检测的增强现实体验解锁 | |
US20210256174A1 (en) | Computer aided systems and methods for creating custom products | |
EP3671410B1 (en) | Method and device to control a virtual reality display unit | |
US20220101416A1 (en) | Templates to generate augmented reality content items that display product information | |
US10701999B1 (en) | Accurate size selection | |
KR102568875B1 (ko) | 멘토 추천 서비스 및 강의 추천 서비스를 제공하는 서버 및 그 동작 방법 | |
US20240161179A1 (en) | Identification of physical products for augmented reality experiences in a messaging system | |
CN113554762A (zh) | 基于深度学习的短视频风格图像生成方法、装置及系统 | |
Yusof | Real-time Person Re-identification for Interactive Environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |