CN112236777A - 混合云中基于向量的对象识别 - Google Patents

混合云中基于向量的对象识别 Download PDF

Info

Publication number
CN112236777A
CN112236777A CN201980038435.6A CN201980038435A CN112236777A CN 112236777 A CN112236777 A CN 112236777A CN 201980038435 A CN201980038435 A CN 201980038435A CN 112236777 A CN112236777 A CN 112236777A
Authority
CN
China
Prior art keywords
processor
objects
vector
image data
server
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
Application number
CN201980038435.6A
Other languages
English (en)
Inventor
艾苏托什·阿尔温德·马勒加翁卡尔
肖海华
陈日智
康立
凌斯琪
郑明恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN112236777A publication Critical patent/CN112236777A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/28Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/772Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Library & Information Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)

Abstract

公开了用于基于机器学习的对象识别的混合云结构的系统、方法和计算机可读介质。在一个方面,一种系统包括:一个或多个具有视频能力的访问点;以及一个或多个处理器,被配置为从一个或多个具有视频能力的访问点接收图像数据;在一个或多个处理器中的第一处理器处执行第一过程,以检测图像数据中的感兴趣的一个或多个对象;针对在图像数据中检测到的一个或多个对象生成向量ID;在一个或多个处理器中的第二处理器处执行第二过程,以标识向量ID中的一个或多个对象;以及基于与所标识的一个或多个对象相关联的统计信息来针对一个或多个对象生成至少一个离线轨迹。

Description

混合云中基于向量的对象识别
相关申请数据
本申请要求于2018年11月16日递交的美国申请No.16/193,238的优先权,该美国申请进而要求于2018年6月11日递交的美国临时专利申请No.62/683,202的优先权,这些申请的内容整体地通过引用并入本文。
技术领域
本技术涉及基于向量的对象识别,并且更具体地,涉及用于基于机器学习的对象识别的混合云结构。
背景技术
随着技术的进步和在线商务的不断发展,已经开发了许多技术来跟踪用户的在线移动和活动(用户的在线轨迹),以便了解他们的行为、提供有针对性的广告等。将同一概念应用于物理位置以跟踪用户在一个或多个物理位置内或通过一个或多个物理位置的运动和活动(用户的离线轨迹)有很多限制。例如,检测消费者在整个商店中的移动需要(1)在商店内安装足够数量的访问点/信标,以及(2)消费者携带能够与已安装的访问点进行通信的移动设备。此外,可用的基于面部识别的方法是不足的,因为它们由于要处理大量数据量而是计算密集的,并且它们无法识别用户采用不同的姿势、服装等的不同实例/捕获图像,也无法并将它们用于创建用户的离线轨迹。
附图说明
为了描述可以获得本公开的上述以及其他优点和特征的方式,将通过参考在附图中示出的上简要描述的原理的特定实施例来对以这些原理进行更具体的描述。理解到,这些附图仅描绘了本公开的示例性实施例,因此不应被认为是对其范围的限制,通过使用附图,以附加的特征和细节描述和解释了本文的原理,在附图中:
图1示出了根据本公开的一个方面的用于图像识别的示例混合云架构;
图2示出了根据本公开的一个方面的图1的雾层(fog layer)处的雾服务器的组件;
图3示出了根据本公开的一个方面的图1的私有平台层处的服务器的组件;
图4示出了根据本公开的一个方面的图1的公共平台层处的服务器的组件;
图5示出了根据本公开的一个方面的开发用于对象识别的基于机器学习的模型的示例方法;
图6示出了根据本公开的一个方面的示例图像检测和识别方法;
图7示出了根据本公开的一个方面的创建和检索个体的离线轨迹的示例方法;以及
图8示出了根据本公开的一方面的包括各种硬件计算组件的示例系统。
示例实施例
下面详细讨论本公开的各种示例实施例。虽然讨论了具体的实施方式,但应理解,这仅是出于说明目的。相关领域技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以使用其他组件和配置。因此,以下描述和附图是说明性的,并且不应解释为限制性的。描述了许多具体细节以提供对本公开的透彻理解。然而,在某些实例中,为了避免使描述难以理解,没有描述公知的或常规的细节。在本公开中对一个实施例或实施例的引用可以是对同一实施例或任何实施例的引用;并且,这些引用表示至少一个实施例。
对“一个实施例”或“实施例”的引用是指结合该实施例描述的特定特征、结构或特性包括在本公开的至少一个实施例中。说明书中各个地方出现的短语“在一个实施例中”不一定全都指同一实施例,也不是与其他实施例互斥的单独或替代的实施例。此外,描述了可以由一些实施例展现而未由其他实施例展现的各种特征。
在本说明书中使用的术语在本公开的上下文中以及在每个术语被使用的特定上下文中通常具有其在本领域中的普通含义。替代语言和同义词可用于本文所讨论的任何一个或多个术语,并且无论术语是否在本文中得到阐述或讨论,都没有特殊意义。在一些情况下,提供了某些术语的同义词。对一个或多个同义词的叙述不排除使用其他同义词。在本说明书中任何地方对示例的使用(包括本文讨论的任何术语的示例)仅是说明性的,并不旨在进一步限制本公开或任何示例术语的范围和含义。同样,本公开不限于本说明书中给出的各种实施例。
在不旨在限制本公开的范围的情况下,下面给出了根据本公开的实施例的仪器、装置、方法及其相关结果的示例。注意,为了方便读者,可以在示例中使用标题或副标题,这绝不应限制本公开的范围。除非另有限定,否则本文所使用的技术和科学术语具有与本公开所属领域的普通技术人员通常所理解的含义。在发生冲突的情况下,以本文件(包括定义)为准。
本公开的附加特征和优点将在下面的描述中阐述,并且部分地根据该描述中将是显而易见的,或者可以通过实践本文公开的原理来获悉。本公开的特征和优点可以借助于所附权利要求中特别指出的仪器和组合来实现和获得。本公开的这些和其他特征根据以下描述和所附权利要求书将变得更加显而易见,或者可以通过实践本文阐述的原理来获悉。
执行端点(EE)可以包括可运行功能的具有计算能力的系统。非限制性示例可以包括计算机、膝上型电脑、IoT设备、服务器、交换机、移动电话、信息亭(kiosk)、工作站等。可以在功能路由器(Function Router)中注册EE以用于执行功能。执行端点可以运行各种FaaS运行时环境和服务。
客户端可以包括试图在执行端点(Execution Endpoint)上执行功能的设备和/或应用。客户端的非限制性示例可以包括机械臂、移动电话、手持扫描仪、应用、打印机、信息亭等。
功能可以包括代码段。代码段可以表示例如短暂的、独立的业务逻辑集。无服务器功能可以与存储的过程进行比较,因为它们执行特定操作,并在需要时被调用和执行,仅在执行完成时返回休眠(但准备就绪)。
位置可以包括物理位置(例如,建筑物、楼层等)和/或逻辑位置。位置可以与特定纬度和经度坐标相关联。例如,位置可以指代与机器人所在的制造楼层、或插入FaaS设备的会议室、或与环境关联的区域相对应的特定纬度和经度坐标。
功能路由规则可以包括关于何者、什么、何时、何地、为什么、和/或如何执行功能的策略和控制。这些规则可以包括影响整个系统的IT限定护栏,以及由IT或开发团队为特开定功能指定的其他规则。示例规则可以包括:功能A可以在任何端点上运行,但功能B必须仅在私有端点上运行;或者功能A可以由特定位置的任何客户端调用,但功能B只能由任何位置的特定客户端调用。
概述
公开了用于混合云结构的系统、方法和计算机可读介质,该混合云结构提供了基于机器学习的对象识别以创建用户和消费者的离线轨迹。
在本公开的一个方面,一种系统包括:一个或多个具有视频能力的访问点;以及一个或多个处理器,被配置为从一个或多个具有视频能力的访问点接收图像数据;在一个或多个处理器中的第一处理器处执行第一过程,以检测图像数据中的感兴趣的一个或多个对象;为在图像数据中检测到的一个或多个对象生成向量ID;在一个或多个处理器中的第二处理器处执行第二过程,以标识向量ID中的一个或多个对象;以及基于与所标识的一个或多个对象相关联的统计信息为一个或多个对象生成至少一个离线轨迹。
在一个方面,一种方法包括:从一个或多个具有视频能力的访问点接收图像数据;在第一处理器处执行第一过程,以检测图像数据中的感兴趣的一个或多个对象;为在图像数据中检测到的一个或多个对象生成向量ID;将向量ID发送到第二处理器;在第二处理器处执行第二过程,以标识向量ID中的一个或多个对象;以及基于与所标识的一个或多个对象相关联的统计信息为一个或多个对象生成离线轨迹。
在一个方面,一种或多种非暂时性计算机可读介质,具有计算机可读指令,这些计算机可读指令在由一个或多个处理器执行时使一个或多个处理器执行以下操作:从一个或多个具有视频能力的访问点接收图像数据;在第一处理器处执行检测过程,以检测图像数据中的感兴趣的一个或多个对象;为在图像数据中检测到的一个或多个对象生成向量ID;将向量ID发送到第二处理器;在第二处理器处执行识别过程,以标识向量ID中的一个或多个对象;以及基于与所标识的一个或多个对象相关联的统计信息为一个或多个对象生成离线轨迹。
具体实施方式
所公开的技术解决了本领域中对高效图像识别过程的需求,该图像识别过程可用于在对象或个体移动通过一个或多个物理位置和/或其各个部分时跟踪该对象或个体的离线轨迹。
本公开以示例网络架构的描述开始。图1示出了根据本公开的一个方面的用于图像识别的示例混合云架构。
图1示出了包括三个层的示例混合云系统100。这些层包括雾层102、私有平台层104和公共平台层106。
雾层102可以包括两个子层108和110。子层108可以包括一个或多个访问点,例如,访问点(AP)112。访问点112能够捕获其视场(FOV)中的对象和个体(例如,个体113)的视频和图像数据,并且可以提供相机服务。尽管下文中以个体113为示例使用,但发明构思不限于个体和个人,还可以包括任何其他类型的移动物体、动物等。在一个示例中,每个个体113可以具有与其相关联的购物和/或移动设备。
在另一示例中,具有视频能力的访问点112可以耦合到移动相机,该移动相机可以例如在个体113访问商业站点或特定位置时附接到个体113所携带的购物车。这可以提供可与个体113相关联的各种类型的元数据(例如,被选择用于购买的产品类型、查看但未被选择的产品类型等),该元数据可以传达个体113的改进且更准确的离线轨迹。
在捕获图像/视频数据时,访问点112的FOV中可能存在多于一个对象/个体。访问点112可以是任何已知的或将要开发的基于IP的视频/图像捕获设备,例如,加利福尼亚州圣何塞的思科公司的具有视频/图像捕获能力的访问点。这些具有视频能力的访问点在下文中可以简称为访问点。
访问点112可以被安装在可以连续地(或以预定时间间隔)捕获其FOV中的对象的图像和视频数据的整个物理位置或场所(例如,百货商店、购物中心、体育场、图书馆、大学校园等)中。
子层110可以是雾/边缘服务,其包括可以对由子层108中的访问点112捕获的视频和图像数据执行检测过程(面部检测过程)的一个或多个服务器(可以是例如加利福尼亚州圣何塞的思科技术公司的任何已知或将要开发的服务器)。这样的雾服务器的非限制性示例是树莓派(Raspberry Pi)设备/服务器。替代地,由雾服务器执行的检测过程可以在私有平台层104处执行,如下所述。将参考图2描述雾服务器的示例结构和组件。
私有平台层104可以是包括提供基于容器的服务的一个或多个服务器的私有云,并且可以位于在其中安装雾层102的组件的场所的地理位置附近或位于其中(例如,在同一受限物理空间/建筑物内、在例如几百英尺或几英里的阈值物理距离之内)、或者在替代方案中可位于其远处但与其通信地耦合。私有平台层104可以是由加利福尼亚州圣何塞的思科技术公司开发的平台,因此可被称为思科容器平台(Cisco Container Platform,CCP)104。私有平台层104可以是基础设施即服务(IaaS),其具有一个或多个服务器(允许基于容器的应用的自动部署、缩放和管理)、一个或多个存储设施等,如下所述。私有平台层104的一个或多个服务器可以是可由其他服务器节点(例如,Kubemetes(K8)节点)管理的一个或多个服务器节点(例如,K8主节点)。私有平台层104还可以包括对其操作必需的任何其他组件,包括但不限于图像处理和面部检测算法、用于与系统100的其他组件(例如,雾层102或公共平台层106中的组件等)建立通信的组件。将参考图2描述专用平台层104的示例结构和组件。
公共平台层106可以是由第三方提供的第三方云平台,因此可称为外部云平台(ECP)106。公共平台层106可以是公共、私有或混合云平台。替代地,公共平台层106可以由提供私有平台层104的同一实体(例如,加利福尼亚州圣何塞的思科技术公司)提供。
在私有平台层104和公共平台层106之间可能存在安全通信通道,通过该安全通信信道,由私有平台层104的组件/服务所提供的各种服务可以调用在公共平台层106处提供的服务和功能。此外,可以通过经由终端114登录系统100来访问个体和对象的离线轨迹,如下所述。终端114可以是能够在系统100的各个级别建立到服务器的连接的任何已知或将开发的计算机设备,包括但不限于移动设备、膝上型电脑、台式电脑、平板电脑等。终端114可以通信地耦合到公共平台层106、私有平台层104、和/或雾层102处的组件。
图2示出了根据本公开的一个方面的图1的雾层处的雾服务器的组件。
雾服务器200可以是具有一个或多个存储器(例如,存储器202)和一个或多个处理器(例如,处理器204)(它们一起可以提供托管/对接环境)的物理或虚拟网络节点(例如,kubelet节点)。存储器202可以具有安装在其上的一个或多个服务,这些服务在由处理器204执行时执行其相应的功能。例如,存储器202可以包括相机/传感器服务206、对象检测服务208、流服务210和协调器服务212。
相机/传感器服务206在由处理器204执行时可以管理、控制和更新传感器和访问点112。雾服务器200通信地耦合到每个访问点112以及相关联的图像捕获相机和传感器,并且可以连续地从访问点112接收所捕获的图像和视频数据。
对象检测服务208在由处理器204执行时可以对接收到的图像和视频数据执行任何已知的或将要开发的操作,以检测接收到的数据中的感兴趣的一个或多个对象,如下所述。由处理器204从接收到的视频和图像数据中提取的信息可以包括个体113的面部信息、个体113的捕获图像中所包括的对象的位置、与个体113相关联的各种元数据,包括但不限于一天中的时间、场所的GPS位置、个体113选择的产品/物品、个体113在安装访问点112的场所中从事的活动等。然后,可以将所提取的信息作为数字向量而发送到私有平台层104处的服务器以供进一步处理,如下所述。
流服务210在由处理器204执行时管理系统100内的网络节点的操作和通信。例如,流服务210可以是管理kubelet节点的互操作性的Kubelet流服务,如本领域中已知的。
协调器服务212在由处理器204执行时可以管理和协调系统100的混合结构的不同层之间的信息交换,以用于执行不同的图像处理和识别功能,如下所述。
图3示出了根据本公开的一个方面的图1的私有平台层处的服务器的组件。
服务器300可以是具有一个或多个存储器(例如,存储器302)、一个或多个处理器(例如,处理器304)和一个或多个数据库305的物理或虚拟网络节点(例如,kubelet节点)。在虚拟网络节点的情况下,服务器300可以在HyperFlex超融合系统上实现,HyperFlex超融合系统可以将软件定义的存储装置和数据服务软件与统一计算系统相结合,以提供将计算、联网和存储资源集成在一起来提高效率并实现系统100的集中管理的融合基础设施系统。
存储器302可以具有安装在其上的一个或多个服务,这些服务在由处理器304执行时执行其相应的功能。例如,存储器302可以包括简档服务306、活动/标记服务308、向量搜索服务310、机器学习训练服务312和协调器服务314。
活动/标记服务308在由处理器304执行时可以将(在对访问点112所捕获的视频或图像数据执行面部检测过程之后从服务器200接收的)向量ID按照在其间具有阈值量的相似度而关联起来,而未将向量与给定用户ID相关联。例如,如果对具有轻微变化(例如,角度、面部表情、眼镜等的变化)的个体113的同一面部执行识别过程,则可以实现标记服务308以确定两个不同的向量足够接近而都属于同一个人。该过程可以被称为独立于用户ID的向量相关,这是系统100的混合架构的一个新颖优势。由于这些向量是“匿名”发送到服务器300并被标记为相似的,因此对这些向量的非授权访问不能揭示与这些向量相关联的用户的真实身份,从而保护相应用户的身份的隐私和安全性。
简档服务306在由处理器304执行时可以建立这样的向量ID与给定用户ID的链接或关联。例如,个体113可以具有与系统100建立的、还包括其图片(图片ID)的简档,或者个体113可以经由终端114登录到系统100。在登录时拍摄的个体113的图像、或可能已与个体113的简档相关联存储的图像可用于将相关的向量ID与用户ID相关联,并将结果存储在数据库305中。
向量搜索服务310在由处理器304执行时可以执行任何已知的或将要开发的数字向量的图像识别处理,这些数字向量表示在由雾服务器200执行的图像检测过程之后接收的检测到的图像。下面将进一步描述用于图像识别的向量搜索。
机器学习训练服务312可以是分类器,该分类器从终端114或公共平台层106连续地接收与对象和个体有关的各种数据并开发基于机器学习的模型,该模型由向量搜索服务用于识别从(一个或多个)雾服务器200接收到的数据中的感兴趣的图像。这种分类器的训练可以基于任何已知的或将要开发的机器学习过程。
在另一示例中,机器学习训练服务312可以生成新数据(例如,来自经由终端114或公共平台层106接收的同一个体的单张照片的个体的多个不同姿势,如下所述)。
协调器服务314在由处理器304执行时可以管理和协调系统100的混合结构的不同层之间的信息交换以执行不同的图像处理和识别功能,如下所述。协调器服务314可以与雾服务器200的协调器服务212进行通信或同步。
图4示出了根据本公开的一个方面的图1的公共平台层处的服务器的组件。
服务器400可以是具有一个或多个存储器(例如,存储器402)、一个或多个处理器(例如,处理器404)和一个或多个数据库405的物理或虚拟网络节点(例如,kubelet节点)。
存储器402可以具有安装在其上的一个或多个服务,这些服务在由处理器404执行时执行其相应的功能。例如,存储器402可以包括协调器服务406和机器学习训练服务408。
协调器服务406在由处理器404执行时可以管理和协调系统100的混合结构的不同层之间的信息交换以执行不同的图像处理和识别功能,如下所述。协调器服务406可以与服务器300的协调器服务314和/或雾服务器200的协调器服务212进行通信或同步。
机器学习训练服务408可以与上述服务器300的机器学习训练服务312相同,或者可以与机器学习训练服务312协同工作以训练服务器300的模型集,该模型集将在对从雾服务器200接收的数据向量执行向量搜索以检测面部和执行图像识别时使用。
数据库405可以是收集并存储关于用户和对象的信息的一个或一些公共、私有和/或混合数据库。例如,数据库405可以包括经由公共云层106(例如,谷歌数据库、脸书(Facebook),其可被称为公共云平台)在互联网、各种社交媒体网站等上可用的个体的各种不同图像。机器学习训练服务408可以检索这些不同的图像,并将它们关联或使用它们来训练服务器300上的模型集,该模型集可用于更好且更准确地检测用户图像。
已经描述了用于图像检测和识别的示例混合云结构的各个组件,在下文中将描述由这种混合云结构实现的示例方法。
图5示出了根据本公开的一个方面的开发用于对象识别的基于机器学习的模型的示例方法。将从服务器300的角度描述图5。然而,将理解,诸如服务器300的处理器304之类的一个或多个处理器实现存储在服务器300的存储器302上的一个或多个服务以执行参考图5描述的功能。
在S500,服务器300可以从公共平台层106或其服务器400接收数据。所接收的数据可以包括关于用户、他们相关联的标识、活动和信息、捕获的图像等的各种类型的信息。替代地,在S500,服务器300可以向服务器400查询这样的信息。该查询可以响应于由处理器304执行的对向量搜索服务310的执行。在另一示例中,在S500处接收的数据可以是机器学习训练服务408以数据集的形式的输出,其可以由服务器300存储在数据库405中以用于基于向量的面部识别,如下所述。
在S502(其可以在步骤S500的同时、之前或之后),服务器300可以接收用户登记请求。可以经由终端114上的用户界面(UI)来接收这样的请求。用户登记请求可以是由用户使用终端114做出的请求。用户可以提供或注册相应的用户标识(ID)请求。与这样的请求一起,用户还可以提供照片ID。
在S504并且在接收到用户ID和照片ID之后,服务器300可以生成照片ID(其也可以称为参考图像)的多个不同版本。每个这样的版本可以通过例如将照片ID旋转特定角度(例如,旋转15度),对照片ID或其每个旋转版本施加高斯(Gaussian)噪声和/或水平或垂直摆放照片ID来生成。因此,可以生成用户的照片ID的多个不同版本,其可进而用于更好地训练通过执行机器学习训练服务312开发的模型集。
在S506,服务器300可以对在S500接收的数据和/或在S502和S504接收和生成的照片ID执行机器学习训练服务312。在一个示例中,机器学习训练服务可以提取所接收的数据和照片ID的各种特征和特性,使其相互关联并将其存储在诸如数据库305之类的数据库中。在一个示例中,每个用户ID可以具有指定照片ID以及与其相关联的多张其他照片。多个额外照片可以被称为生活照片,以指示这些额外照片是在不同实例处随着时间的推移而收集并提供的并且属于同一用户。
在S508并且基于S506的机器学习训练,服务器300生成模型集。所提取的特征与相应的用户标识信息一起可以被存储为数字数据集,以用于基于向量的搜索以进行面部识别,如下所述。
因此,通过实施图5的过程,连续地或者以设定间隔,服务器300开发可用于图6的过程的模型集,以从雾服务器200接收面部检测结果,执行用于图像识别的有效且安全的过程以识别对象和用户。
图6示出了根据本公开的一个方面的示例图像检测和识别方法。将从雾服务器200和服务器300的角度描述图6。然而,将理解,诸如雾服务器200的处理器204和服务器300的处理器304之类的一个或多个处理器实现存储在存储器202和存储器302中的相应的一个存储器上的一个或多个服务,以执行参考图6描述的功能。
在S600,对象或个体(例如,个体113)的图像和/或视频数据可以被一个或多个访问点捕获,例如,一个或多个访问点112,如上所述。在一个示例中,可以连续地执行图像和/或视频数据的捕获。
在S602,雾服务器200对在S600由(一个或多个)访问点112捕获的图像和/或视频数据执行检测过程。在一个示例中,服务器200可以使用多任务级联卷积神经网络(MTCNN)的修改版本来执行检测过程,以检测感兴趣的对象(例如,人脸)。如已知的,MTCNN具有三个输出,即面部分类置信度、面部位置和面部标志。根据修改版本,添加第四输出,其指示检测到的面部的清晰度信息,以便区分在图像中检测到的模糊面部和清晰面部。在一个示例中,将图像或检测到的面部分类为模糊图像或清晰图像是分类问题,其可以根据以下提供的公式使用交叉熵损失来求解:
Figure BDA0002825646100000121
其中,i表示训练数据集中的第i个示例,yi∈{0,1}表示地面真值标签(groundtruth label),以及pi是神经网络表示检测到的面部的清晰度的概率。
在S604,服务器200将检测结果作为数字向量而发送到服务器300。因此,当多个相机或访问点112捕获多个用户或同一用户的不同图像时,每个检测到的实例作为独立的数字向量而被发送到服务器300,而不与特定的用户ID相关联,这是由服务器300执行的过程,如下所述。
在S606,服务器300对从服务器200接收到的数字向量执行图像识别过程以识别用户。在一个示例中,服务器300使用根据图5的过程开发的模型集来执行向量搜索服务310,如上所述。因此,(一个或多个)向量ID与存储在数据库305中的用户ID或照片ID相关联。用于这种向量搜索的示例算法是近似最近邻搜索(Approximate Nearest NeighborSearch),该算法涉及确定两个向量之间的欧几里得(Euclidean)距离以确定它们之间的相似性。
在S608,将所生成的(一个或多个)向量ID(识别结果)与相应的(一个或多个)用户ID相关联地存储在数据库(例如,数据库305)中,连同其对应于各种统计信息的元数据。
随着越来越多的个体113的图像根据图5和图6的过程而被捕获、处理、识别和存储,可以创建个体的离线轨迹,其可以用于研究和跟踪个体111的习惯(购物习惯、访问地点、个体113在访问地点内的运动的更详细细节等)。
图7示出了根据本公开的一个方面的创建和检索个体的离线轨迹的示例方法。将从服务器300的角度描述图7。然而,将理解,诸如服务器300的处理器304之类的一个或多个处理器实现存储在服务器300的存储器302上的一个或多个服务,以执行参考图7描述的功能。
在S700,接收到针对用户离线轨迹的请求。该请求可以是来自诸如如上所述的个体113之类的个体的请求,其中,个体113想要查看他或她自己的离线轨迹(例如,经由终端114)。替代地,该请求可以来自网络运营商、或在其中使用系统100的场所(在其中安装访问点112和/或(一个或多个)服务器200和(一个或多个)服务器300)的运营商。
在S702,获取针对其接收到用户离线轨迹请求的用户的图像数据(其中,请求方是个体113)。该图像可以是先前记录的简档图像或新提供的图像。
在S704,将S702的图像数据与检测到的同一用户的实例的先前图像(作为向量ID存储在(一个或多个)数据库305中)相关联/匹配。在此过程中,首先通过执行检测和识别过程来以与上述类似的方式为S702的图像数据生成向量ID。此后,执行基于向量的搜索(例如,使用索引)以针对与S702的图像数据相关联的向量ID在所存储的向量ID中找到匹配(匹配向量ID)。
此后,在S706,生成离线轨迹。在此过程中,与匹配向量ID相关联的统计信息被检索(例如,从数据库305)并且被编译成报告,该报告的格式可以是请求方所请求的格式、表格形式等。
在S708,将离线轨迹发送(传送)到请求方。
在一个示例中,在S700从其接收到请求的请求方可以不是个体本人,而可以是利用系统100的一个或多个场所的运营商或管理者。因此,可以不执行如上所述的S702和S704,而是可以收集和检索关于在底层场所处检测到的顾客和个体的各种等级的统计信息,如上所述。
已经描述了使用由混合云结构的组件实现的组件和方法来进行面部检测和识别的各种示例,示例系统组件可以被实现为服务器200、300和/或400中的一者或多者。
图8示出了根据本公开的一方面的包括各种硬件计算组件的示例系统。在实践本技术时,更适当的实施例对于本领域普通技术人员将是显而易见的。本领域普通技术人员还将容易理解,其他系统实施例也是可能的。
图8示出了系统架构800,其中系统的组件使用连接806而彼此电连通。示例性系统800包括处理单元(CPU或处理器)804,以及将包括诸如只读存储器(ROM)818和随机存取存储器(RAM)816之类的系统存储器820的各种系统组件耦合到处理器804的系统连接806。系统800可以包括高速存储器的缓存,其与处理器804直接连接、紧邻处理器804、或集成为处理器804的一部分。系统800可以将数据从存储器820和/或存储设备808复制到缓存802,以供处理器804快速访问。以此方式,缓存可以提供性能提升,避免了处理器804在等待数据时的延迟。这些模块和其他模块可被控制或配置为控制处理器804执行各种动作。其他系统存储器820也可以使用。存储器820可以包括具有不同性能特征的多种不同类型的存储器。处理器804可以包括任何通用处理器和服务组件,例如,存储在存储设备808中的服务1 810、服务2 812和服务3 814,被配置为控制处理器804以及专用处理器,其中,软件指令被合并到实际的处理器设计中。处理器804本质上可以是完全自包含的计算系统,包含多个核或处理器、总线、存储器控制器、缓存等。多核处理器可以是对称的或非对称的。
为了使用户能够与系统800进行交互,输入设备822可以代表任何数量的输入机制,例如,用于语音的麦克风、用于手势或图形输入的触敏屏幕、键盘、鼠标、运动输入、语音等。输出设备824也可以是本领域技术人员已知的许多输出机制中的一个或多个。在一些情况下,多模式系统可以使用户能够提供多种类型的输入以与系统800通信。通信接口826通常可以支配和管理用户输入和系统输出。对于任何特定硬件布置上的操作没有限制,因此在开发时,本文的基本功能可以轻松替换为改进的硬件或固件布置。
存储设备808是非易失性存储器,并且可以是硬盘或其他类型的计算机可读介质,其可以存储可由计算机访问的数据,例如,磁带、闪存卡、固态存储设备、数字通用盘、盒、随机存取存储器(RAM)816、只读存储器(ROM)818、及其混合。
系统800可以包括集成电路828,例如,被配置为执行各种操作的专用集成电路(ASIC)。集成电路828可以与连接806耦合,以便与系统800中的其他组件通信。
存储设备808可以包括用于控制处理器804的软件服务810、812、814。考虑其他硬件或软件模块。存储设备808可以连接到系统连接806。在一个方面,执行特定功能的硬件模块可以包括与必要的硬件组件(例如,处理器804、连接806、输出设备824等)相关联地存储在计算机可读介质中的软件组件,以执行功能。
为了解释的清楚性起见,在一些情况下,本技术可以被呈现为包括单独的功能块,这些单独的功能块包括具有以软件、或硬件和软件的组合体现的方法中的设备、设备组件、步骤或例程的功能块。
在一些实施例中,计算机可读存储设备、介质和存储器可以包括包含比特流等的电缆或无线信号。然而,当提及时,非暂时性计算机可读存储介质明确地排除诸如能量、载波信号、电磁波和信号本身之类的介质。
可以使用存储在计算机可读介质中或从计算机可读介质中可获得的计算机可执行指令来实现根据上述示例的方法。这样的指令可以包括例如使得或配置通用计算机、专用计算机、或专用处理设备来执行特定功能或功能组的指令和数据。可以通过网络访问所使用的部分计算机资源。计算机可执行指令可以是例如二进制中间格式指令,例如,汇编语言、固件或源代码。可用于存储指令、所使用的信息、和/或在根据所述示例的方法期间创建的信息的计算机可读介质的示例包括磁盘或光盘、闪存、配备有非易失性存储器的USB设备、网络存储设备等。
实现根据这些公开的方法的设备可以包括硬件、固件和/或软件,并且可以采用多种形式因子中的任何一种。这种形式因子的典型示例包括膝上型计算机、智能电话、小形式因子个人计算机、个体数字助理、机架安装设备、独立设备等。本文描述的功能还可以体现在外围设备或附加卡中。作为进一步的示例,这种功能还可以在单个设备中执行的不同芯片或不同过程之间的电路板上实现。
指令、用于传达这样的指令的介质、用于执行它们的计算资源、以及用于支持这样的计算资源的其他结构是用于提供这些公开中描述的功能的装置。
尽管使用了各种示例和其他信息来解释所附权利要求的范围内的各个方面,但是不应基于此类示例中的特定功能或布置来暗示对权利要求的限制,因为本领域普通技术人员将能够使用这些示例来导出各种实施方式。此外,尽管可能已经以特定于结构特征和/或方法步骤的示例的语言描述了一些主题,但是应该理解,所附权利要求中限定的主题不必限于这些所描述的特征或动作。例如,这种功能可以在除本文所标识的组件之外的组件中不同地分布或执行。此外,所描述的特征和步骤被公开为在所附权利要求的范围内的系统和方法的组件的示例。
记载一组中的“至少一个”的权利要求语言表示该组中的一个成员或该组中的多个成员满足该权利要求。例如,记载“A和B中的至少一个”的权利要求语言是指A、B、或A和B。

Claims (19)

1.一种系统,包括:
一个或多个具有视频能力的访问点;以及
一个或多个处理器,被配置为:
从所述一个或多个具有视频能力的访问点接收图像数据;
在所述一个或多个处理器中的第一处理器处执行第一过程,以检测所述图像数据中的感兴趣的一个或多个对象;
针对在所述图像数据中检测到的一个或多个对象生成向量标识(ID);
在所述一个或多个处理器中的第二处理器处执行第二过程,以标识所述向量ID中的所述一个或多个对象;以及
基于与所标识的一个或多个对象相关联的统计信息来针对所述一个或多个对象生成至少一个离线轨迹。
2.根据权利要求1所述的系统,其中,所述一个或多个对象是个体。
3.根据前述权利要求中任一项所述的系统,其中,所述第一处理器和所述一个或多个具有视频能力的访问点形成混合云架构的雾层。
4.根据权利要求3所述的系统,其中,所述第二处理器在物理上位于所述第一处理器和所述一个或多个具有视频能力的访问点附近,并且形成所述混合云架构的私有平台层。
5.根据前述权利要求中任一项所述的系统,其中,所述第一处理器通信地耦合到所述第二处理器。
6.根据前述权利要求中任一项所述的系统,其中,所述第二过程是对数据库的基于向量的搜索,以用于标识所述一个或多个对象。
7.根据权利要求6所述的系统,其中,所述第二处理器被配置为使用基于机器学习的模型来执行所述基于向量的搜索。
8.根据权利要求7所述的系统,其中,所述第二处理器被配置为使用从公共云平台检索的图像数据以及所述一个或多个对象的参考图像的一个或多个计算机生成的版本来创建所述基于机器学习的数据集。
9.根据权利要求8所述的系统,其中,所述第二处理器被配置为:
接收所述参考图像;并且
执行旋转或翻转所述参考图像中的至少一者,以生成所述参考图像的相应的计算机生成的版本。
10.一种方法,包括:
从一个或多个具有视频能力的访问点接收图像数据;
在第一处理器处执行第一过程,以检测所述图像数据中的感兴趣的一个或多个对象;
针对在所述图像数据中检测到的一个或多个对象生成向量标识(ID);
将所述向量ID发送到第二处理器;
在所述第二处理器处执行第二过程,以标识所述向量ID中的一个或多个对象;以及
基于与所标识的一个或多个对象相关联的统计信息来针对所述一个或多个对象生成离线轨迹。
11.根据权利要求10所述的方法,其中,所述一个或多个对象包括至少一个个体。
12.根据权利要求10至11中任一项所述的方法,还包括:
从至少一个请求方接收对所述离线轨迹的请求。
13.根据权利要求12所述的方法,其中,所述离线轨迹指示个体的访问位置和购物习惯的历史。
14.根据权利要求10至13中任一项所述的方法,其中,所述第一处理器通信地耦合到所述第二处理器。
15.根据权利要求10至14中任一项所述的方法,其中,所述第二过程是对数据库的基于向量的搜索,以用于标识所述一个或多个对象。
16.根据权利要求15所述的方法,其中,所述基于向量的搜索使用基于机器学习的数据集。
17.根据权利要求16所述的方法,还包括:
使用从公共云平台检索的图像数据以及所述一个或多个对象的参考图像的一个或多个计算机生成的版本来创建所述基于机器学习的模型。
18.根据权利要求17所述的方法,还包括:
接收所述参考图像;并且
通过旋转或翻转所述参考图像中的至少一者来生成所述参考图像的相应的计算机生成的版本。
19.一种或多种非暂时性计算机可读介质,包括计算机可读指令,所述计算机可读指令在由一个或多个处理器执行时,使所述一个或多个处理器执行根据权利要求10至19中任一项所述的方法。
CN201980038435.6A 2018-06-11 2019-06-06 混合云中基于向量的对象识别 Pending CN112236777A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862683202P 2018-06-11 2018-06-11
US62/683,202 2018-06-11
US16/193,238 2018-11-16
US16/193,238 US11068705B2 (en) 2018-06-11 2018-11-16 Vector based object recognition in hybrid cloud
PCT/US2019/035729 WO2019241016A1 (en) 2018-06-11 2019-06-06 Vector based object recognition in hybrid cloud

Publications (1)

Publication Number Publication Date
CN112236777A true CN112236777A (zh) 2021-01-15

Family

ID=68765108

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980038435.6A Pending CN112236777A (zh) 2018-06-11 2019-06-06 混合云中基于向量的对象识别

Country Status (5)

Country Link
US (1) US11068705B2 (zh)
EP (1) EP3803683A1 (zh)
CN (1) CN112236777A (zh)
CA (1) CA3103237A1 (zh)
WO (1) WO2019241016A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11227176B2 (en) * 2019-05-16 2022-01-18 Bank Of Montreal Deep-learning-based system and process for image recognition

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090059007A1 (en) * 2007-09-05 2009-03-05 Sony Corporation Apparatus and method of object tracking
CN101535994A (zh) * 2006-09-17 2009-09-16 诺基亚公司 提供标准真实世界到虚拟世界的链接的方法、装置和计算机程序产品
US20110090344A1 (en) * 2009-10-21 2011-04-21 Pvi Virtual Media Services, Llc Object Trail-Based Analysis and Control of Video
CN102402582A (zh) * 2010-09-30 2012-04-04 微软公司 提供与相关媒体项相关联的对象和个体之间的关联
CN103930901A (zh) * 2011-11-17 2014-07-16 微软公司 基于图像内容的自动标记生成
CN107368514A (zh) * 2016-05-03 2017-11-21 塞尼股份公司 自适应资源管理系统中的对象识别
CN107766811A (zh) * 2017-10-10 2018-03-06 浙江大学 一种基于复杂流型结构的人脸识别方法及系统
CN107895160A (zh) * 2017-12-21 2018-04-10 曙光信息产业(北京)有限公司 人脸检测与识别装置及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1769637A2 (en) 2004-07-09 2007-04-04 Emitall Surveillance S.A. Smart video surveillance system ensuring privacy
US8503539B2 (en) 2010-02-26 2013-08-06 Bao Tran High definition personal computer (PC) cam
US9736349B2 (en) 2014-12-24 2017-08-15 Intel Corporation Adaptive video end-to-end network with local abstraction
EP3568787B1 (en) * 2017-05-17 2024-04-10 Google LLC Automatic image sharing with designated users over a communication network
US20190034716A1 (en) * 2017-12-28 2019-01-31 Intel Corporation Privacy-preserving demographics identification

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101535994A (zh) * 2006-09-17 2009-09-16 诺基亚公司 提供标准真实世界到虚拟世界的链接的方法、装置和计算机程序产品
US20090059007A1 (en) * 2007-09-05 2009-03-05 Sony Corporation Apparatus and method of object tracking
US20110090344A1 (en) * 2009-10-21 2011-04-21 Pvi Virtual Media Services, Llc Object Trail-Based Analysis and Control of Video
CN102402582A (zh) * 2010-09-30 2012-04-04 微软公司 提供与相关媒体项相关联的对象和个体之间的关联
CN103930901A (zh) * 2011-11-17 2014-07-16 微软公司 基于图像内容的自动标记生成
CN107368514A (zh) * 2016-05-03 2017-11-21 塞尼股份公司 自适应资源管理系统中的对象识别
CN107766811A (zh) * 2017-10-10 2018-03-06 浙江大学 一种基于复杂流型结构的人脸识别方法及系统
CN107895160A (zh) * 2017-12-21 2018-04-10 曙光信息产业(北京)有限公司 人脸检测与识别装置及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
司旭: "分布式多云架构下的协同计算方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, vol. 2018, no. 4, 15 April 2018 (2018-04-15), pages 139 - 399 *

Also Published As

Publication number Publication date
WO2019241016A1 (en) 2019-12-19
EP3803683A1 (en) 2021-04-14
US20190377939A1 (en) 2019-12-12
US11068705B2 (en) 2021-07-20
CA3103237A1 (en) 2019-12-19

Similar Documents

Publication Publication Date Title
Chen et al. An edge traffic flow detection scheme based on deep learning in an intelligent transportation system
JP7091504B2 (ja) 顔認識アプリケーションにおけるフォールスポジティブの最小化のための方法および装置
Kim et al. Vision-based human activity recognition system using depth silhouettes: A smart home system for monitoring the residents
US20210027085A1 (en) Universal object recognition
US9805065B2 (en) Computer-vision-assisted location accuracy augmentation
US20190378204A1 (en) Generating and providing augmented reality representations of recommended products based on style similarity in relation to real-world surroundings
Walia et al. Recent advances on multicue object tracking: a survey
US10606824B1 (en) Update service in a distributed environment
US9904866B1 (en) Architectures for object recognition
Gaikwad et al. Smart surveillance system for real-time multi-person multi-camera tracking at the edge
Bae et al. Fast and scalable structure-from-motion based localization for high-precision mobile augmented reality systems
Werner et al. DeepMoVIPS: Visual indoor positioning using transfer learning
US20170235793A1 (en) Retrieval device, retrieval method, and retrieval system
Liu et al. Vi-Fi: Associating moving subjects across vision and wireless sensors
US10403016B2 (en) Face syncing in distributed computing environment
Sawas et al. A versatile computational framework for group pattern mining of pedestrian trajectories
US11068705B2 (en) Vector based object recognition in hybrid cloud
Salehin et al. Fusion of Foreground Object, Spatial and Frequency Domain Motion Information for Video Summarization
Almonfrey et al. A flexible human detection service suitable for Intelligent Spaces based on a multi-camera network
Lu et al. A fast 3D indoor-localization approach based on video queries
Ullah et al. A Robust Convolutional Neural Network for 6D Object Pose Estimation from RGB Image with Distance Regularization Voting Loss
Seidenari et al. Wearable systems for improving tourist experience
Ahamad et al. A new fast estimating floor region based on image segmentation for smart rovers
US20230086009A1 (en) System and techniques to normalize objects in spatial imaging of spaces
Hu et al. [Retracted] Footprint Extraction and Sports Dance Action Recognition Method Based on Artificial Intelligence Distributed Edge Computing

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