CN111476171B - 分布式对象识别系统、方法及边缘计算设备 - Google Patents

分布式对象识别系统、方法及边缘计算设备 Download PDF

Info

Publication number
CN111476171B
CN111476171B CN202010272649.4A CN202010272649A CN111476171B CN 111476171 B CN111476171 B CN 111476171B CN 202010272649 A CN202010272649 A CN 202010272649A CN 111476171 B CN111476171 B CN 111476171B
Authority
CN
China
Prior art keywords
edge computing
equipment
central control
computing devices
video stream
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.)
Active
Application number
CN202010272649.4A
Other languages
English (en)
Other versions
CN111476171A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010272649.4A priority Critical patent/CN111476171B/zh
Publication of CN111476171A publication Critical patent/CN111476171A/zh
Priority to PCT/CN2021/078060 priority patent/WO2021203862A1/zh
Application granted granted Critical
Publication of CN111476171B publication Critical patent/CN111476171B/zh
Priority to US17/709,768 priority patent/US11907046B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • 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/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • 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/48Matching video sequences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • 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
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Image Analysis (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种分布式对象识别系统、方法、边缘计算设备及计算机可读存储介质;方法包括:待监控环境中的多个边缘计算设备进行选举操作,以在待监控环境中的多个边缘计算设备中选举出中央控制设备;每个边缘计算设备采集待监控环境的视频流,并对视频流进行对象识别处理,得到视频流中对象的身份信息;中央控制设备对多个边缘计算设备的运行状态进行监测;当中央控制设备监测到故障状态的边缘计算设备时,对故障状态的边缘计算设备执行故障应对操作。通过本发明,能够提升对象识别的稳定性,加强容错能力。

Description

分布式对象识别系统、方法及边缘计算设备
技术领域
本发明涉及分布式计算技术,尤其涉及一种分布式对象识别系统、方法、边缘计算设备及计算机可读存储介质。
背景技术
对象识别是指从视频流或图像中识别出特定的对象如人脸,对象识别技术广泛应用于如校园安防及社区安防等场景中,通过构建对象识别系统,从而实现对特定场景的有效监控,有利于进行特定场景的安全防护和对象统计。为了降低单个设备在对象识别过程中承载的压力,可基于分布式原理来构建对象识别系统。
在相关技术提供的方案中,分布式主要体现为计算的集群,例如构建包括多个计算服务器的集群,并将待监控环境的视频流统一发送至该集群中,由该集群中的每个计算服务器分担一部分的计算任务。但是,对于该类型的分布式系统来说,在其中的某个环节如视频流发送环节出现故障时,整个分布式系统面临着不可用的风险,稳定性差。
发明内容
本发明实施例提供一种分布式对象识别系统、方法、边缘计算设备及计算机可读存储介质,能够加强容错能力,提升系统的稳定性和健壮性。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种分布式对象识别系统,包括:
分布在待监控环境中的多个边缘计算设备;
所述边缘计算设备,用于:
与所述待监控环境中的其他边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备;
采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息;
所述中央控制设备,用于对所述多个边缘计算设备的运行状态进行监测;当监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作。
本发明实施例提供一种分布式对象识别方法,应用于分布式对象识别系统,所述分布式对象识别系统包括分布在待监控环境中的多个边缘计算设备;
所述分布式对象识别方法包括:
所述待监控环境中的多个边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备;
每个所述边缘计算设备采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息;
所述中央控制设备对所述多个边缘计算设备的运行状态进行监测;
当所述中央控制设备监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作。
本发明实施例提供一种边缘计算设备,其特征在于,包括:
边缘计算模块,用于与待监控环境中的其他边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备;
所述边缘计算模块,还用于采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息;
中央控制模块,用于当所述边缘计算设备为中央控制设备时,对所述多个边缘计算设备的运行状态进行监测;当监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作。
本发明实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本发明实施例提供的分布式对象识别方法。
本发明实施例具有以下有益效果:
在待监控环境中部署多个边缘计算设备,每个边缘计算设备采集待监控环境的视频流进行对象识别处理,另外,在多个边缘计算设备中选举出中央控制设备,由中央控制设备监测多个边缘计算设备的运行状态,并对故障状态的边缘计算设备执行故障应对操作。如此,就算其中某个边缘计算设备出现故障,也不会影响到整个系统的正常运行,提升了对象识别的稳定性。
附图说明
图1是本发明实施例提供的分布式对象识别系统的一个可选的架构示意图;
图2是本发明实施例提供的结合区块链网络的分布式对象识别系统的一个可选的架构示意图;
图3是本发明实施例提供的边缘计算设备的一个可选的架构示意图;
图4A是本发明实施例提供的分布式对象识别方法的一个可选的流程示意图;
图4B是本发明实施例提供的分布式对象识别方法的一个可选的流程示意图;
图4C是本发明实施例提供的分布式对象识别方法的一个可选的流程示意图;
图5是本发明实施例提供的人脸识别与处理系统的一个可选的架构示意图;
图6是本发明实施例提供的人脸识别与处理系统的一个可选的架构示意图;
图7是本发明实施例提供的人脸识别与处理系统的一个可选的架构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。另外,在以下的描述中,涉及到的“多个”是指至少两个。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)云计算(cloud computing):一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。
2)云存储(cloud storage):是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
3)边缘计算:指在靠近物或数据源头的一侧,采用网络、计算、存储及应用等能力,就近提供最近端服务。在某种意义上,边缘计算可以看做云计算的补充或云计算的预处理。
4)边缘计算设备:用于提供边缘计算服务。在本文中,边缘计算设备包括两类,一类需要连接外部摄像头,另一类集成有摄像头,可根据两类边缘计算设备中的至少一类来构建分布式对象识别系统。
5)对象识别:从视频流或图像中识别出某个特定的对象,对象如人脸或车辆等,对象识别可以通过设定的规则或人工智能模型来实现。
6)监控方:泛指概念,可指与待监控环境相关的各种类型的人员和设备。
7)区块链(Blockchain):由区块(Block)形成的加密的、链式的交易的存储结构。
8)区块链网络(Blockchain Network):通过共识的方式将新区块纳入区块链的一系列的节点的集合。
在相关技术提供的方案中,为了降低单个设备在对象识别过程中承载的压力,通常是构建包括多个计算服务器的集群,从而提供分布式的计算服务,其中计算服务器如云服务器。在进行对象识别时,将待监控环境的视频流或实时图像从摄像头统一发送至接入服务器,再由接入服务器分发至集群中的各个计算服务器。但是,相关技术提供的方案存在以下缺点:1)使用成本高,具体需要购置和维护多台服务器(如计算服务器及存储服务器等),需要耗费大量成本;2)网络条件要求高,要实现图像或视频流的实时传输需要较高的传输带宽,如果网络条件较差,则会带来较大延迟;3)安全性不足,由于普通摄像头难以承受加密视频流的计算开销,故摄像头通常是基于未加密的实时流传输协议(RTSP,RealTime Streaming Protocol),将图像或视频流发送至接入服务器,再进行分发,在该过程中,很容易导致包含用户行为的画面泄露;4)稳定性差,若对象识别的某个环节中断,如接入服务器故障,则会导致整个系统的不可用。
本发明实施例提供一种分布式对象识别系统、方法、边缘计算设备及计算机可读存储介质,能够提升对象识别的稳定性和系统的健壮性,下面说明本发明实施例提供的边缘计算设备的示例性应用。
参见图1,图1是本发明实施例提供的分布式对象识别系统100的一个可选的架构示意图,为实现支撑一个分布式对象识别应用,在待监控环境中部署了边缘计算设备400,这里,示例性地示出了通过网络300连接的、且为嵌入式设备的边缘计算设备400-1、400-2及400-3,网络300可以是有线网络或无线网络,本发明实施例对此不做限定。图1中示出了两种类型的边缘计算设备,其中边缘计算设备400-1用于连接外部摄像头410-1,边缘计算设备400-2用于连接外部摄像头410-2,为了便于区分,将该类型的边缘计算设备命名为第一边缘计算设备,第一边缘计算设备与外部摄像头之间可通过有线或无线的方式连接;边缘计算设备400-3在内部集成有摄像头,将该类型的边缘计算设备命名为第二边缘计算设备。值得说明的是,分布式对象识别系统100可基于第一边缘计算设备构建,可基于第二边缘计算设备构建,也可以基于第一边缘计算设备和第二边缘计算设备共同构建。
分布式对象识别系统100中的多个边缘计算设备用于对待监控环境进行监控,具体到其中的每个边缘计算设备,其用于获取对应的子环境的视频流,不同边缘计算设备所监控的子环境可以相同,也可不同。例如在安防场景中,待监控环境是整个校园,则可在校园的不同位置(子环境),例如前门、教学楼及操场等处部署边缘计算设备。在对象识别的过程中,所有边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备。同时,每个边缘计算设备采集对应的子环境的视频流,并对视频流进行对象识别处理,得到视频流中对象的身份信息,边缘计算设备可将得到的身份信息上报至用户,其中,图1中所示的用户可以指与待监控环境相关的各种类型的人员。选举出的中央控制设备对多个边缘计算设备(包括中央控制设备自身)的运行状态进行监测,并在监测到故障状态的边缘计算设备时,对故障状态的边缘计算设备执行故障应对操作。由于在本发明实施例中,每个边缘计算设备都会执行对应子环境的视频采集和对象识别处理等操作,故就算某个边缘计算设备故障,也不会影响到其他边缘计算设备的正常工作,提升了系统的稳定性和健壮性。
例如,中央控制设备为边缘计算设备400-3,则边缘计算设备400-3对边缘计算设备400-1、400-2及400-3的运行状态进行监测,若监测到边缘计算设备400-1处于故障状态,则将故障信息作为告警信息发送至用户。本发明实施例对引起故障的原因不做限定,例如可以是边缘计算设备400-1不工作,可以是与边缘计算设备400-1之间的网络连接断开或不稳定。同时,对于中央控制设备之外的边缘计算设备来说,也可以对自身的运行状态进行监测,若自身处于故障状态,则将故障信息作为告警信息发送至用户。
此外,中央控制设备还可以在多个边缘计算设备中确定出交互设备,该交互设备用于进行与用户之间的交互,图1中以交互设备为边缘计算设备400-1的情况进行举例说明。分布式对象识别系统中的每个边缘计算设备都持有通过加密算法生成的密钥,并在采集到视频流后,根据持有的密钥对视频流进行加密处理。边缘计算设备400-1获取多个边缘计算设备持有的密钥,并在接收到设备访问请求时,在多个边缘计算设备中确定设备访问请求所请求的目标设备,将目标设备持有的密钥发送至所述设备访问请求的发起方(图1所示的用户)。如此,发起方便可根据所述目标设备持有的密钥,对所述目标设备中加密后的视频流进行解密处理,能够有效提升交互过程的安全性。
本发明实施例也可结合区块链技术实现,区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参见图2,图2是本发明实施例提供的结合区块链网络的分布式对象识别系统110的一个可选的架构示意图,包括区块链网络500(示例性地示出了边缘计算设备400-1至边缘计算设备400-3)、认证中心600、监控方业务系统700(示例性地示出了归属于监控方业务系统700的电子设备710),下面分别进行说明。
图1所示的边缘计算设备400-1至边缘计算设备400-3可加入至区块链网络500,成为区块链网络500中的原生节点。区块链网络500的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务系统的电子设备例如终端设备和服务器,都可以在不需要授权的情况下接入区块链网络500;以联盟链为例,业务系统在获得授权后其下辖的电子设备(例如终端设备/服务器)可以接入区块链网络500,此时,成为区块链网络500中的一类特殊的节点即客户端节点。
需要指出地,客户端节点可以只提供支持业务系统发起交易(例如,用于上链存储数据或查询链上数据)功能,对于区块链网络500的原生节点的功能,例如下文的排序功能、共识服务和账本功能等,客户端节点可以缺省或者有选择性(例如,取决于业务系统的具体业务需求)地实现。从而,可以将业务系统的数据和业务处理逻辑最大程度迁移到区块链网络500中,通过区块链网络500实现数据和业务处理过程的可信和可追溯。
区块链网络500接收来自业务系统(例如图2中示出的监控方业务系统700)的客户端节点(例如,图2中示出的归属于监控方业务系统700的电子设备710)提交的交易,执行交易以更新账本或者查询账本。
下面以业务系统接入区块链网络以实现身份信息的查询为例,说明区块链网络的示例性应用。
首先,边缘计算设备400(指边缘计算设备400-1至400-3中的任意一个)采集到视频流后,对视频流进行对象识别处理,得到身份信息,并将身份信息以交易形式广播到区块链网络500中。区块链网络500中其他的边缘计算设备400在对该交易进行验证、区块填充及共识一致后,将包括身份信息的新区块追加到区块链的尾部,并执行新区块中的交易:对于提交身份信息的交易,将身份信息以键值对的形式存储至状态数据库。
然后,监控方业务系统700的相关人员(如待监控环境的安保人员)在需要获取身份信息时,通过监控方业务系统700的电子设备710接入区块链网络500,成为区块链网络500的客户端节点。进而,通过电子设备710生成查询身份信息的交易,在交易中指定了实现查询操作需要调用的智能合约以及向智能合约传递的参数,交易还携带了监控方业务系统700的数字证书,并将交易广播到区块链网络500。其中,数字证书可由监控方业务系统700向认证中心600进行登记注册得到。除此之外,还可在交易中指定需要查询的身份信息对应的具体边缘计算设备,如指定对边缘计算设备400-1识别得到的身份信息进行查询。
区块链网络500中的边缘计算设备400在接收到交易时,对交易携带的数字证书进行验证,数字证书验证成功后,根据交易中携带的监控方业务系统700的身份,确认监控方业务系统700是否是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成功后签署边缘计算设备400自己的数字签名,并继续在区块链网络500中广播。
区块链网络500中具有排序功能的边缘计算设备400接收到验证成功的交易后,将交易填充到新的区块中,并广播到区块链网络中500提供共识服务的边缘计算设备400。
区块链网络500中的提供共识服务的边缘计算设备400对新区块进行共识过程以达成一致,提供账本功能的边缘计算设备400将形成的新区块追加到区块链的尾部,并执行新区块中的交易:对于查询身份信息的交易,从状态数据库中查询出身份信息(例如查询由边缘计算设备400-1识别出的身份信息),并将其发送至电子设备710。值得说明的是,状态数据库中存储的数据通常与区块链存储的数据相同,在响应查询交易时,优先根据状态数据库中的数据进行响应,从而提升响应效率。
当然,除了将身份信息进行上链之外,也可将与边缘计算设备400相关的其他信息进行上链,以供监控方业务系统700查询,可上链的信息包括但不限于加密的视频流、第一边缘计算设备与外部摄像头之间的分配关系以及边缘计算设备的配置信息,可根据实际应用场景来具体设定。通过上述方式,能够提升查询得到的数据的准确性和有效性。
下面继续说明本发明实施例提供的边缘计算设备的示例性应用,本发明实施例对边缘计算设备的类型不做限定,例如边缘计算设备可以在内部集成摄像头,也可以连接外部摄像头。参见图3,图3是本发明实施例提供的边缘计算设备400(例如,可以是图1所示的边缘计算设备400-1、400-2和400-3)的架构示意图,图3所示的边缘计算设备400包括:至少一个处理器410、存储器440和至少一个网络接口420。服务器400中的各个组件通过总线系统430耦合在一起。可理解,总线系统430用于实现这些组件之间的连接通信。总线系统430除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统430。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器440可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器440可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器440包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本发明实施例描述的存储器440旨在包括任意适合类型的存储器。
在一些实施例中,存储器440能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统441,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块442,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等。
在一些实施例中,本发明实施例提供的边缘计算设备可以采用软件方式实现分布式对象识别,图3示出了存储在存储器440中的以下软件模块:边缘计算模块4431及中央控制模块4432,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
在另一些实施例中,本发明实施例提供的边缘计算设备可以采用硬件方式实现分布式对象识别,作为示例,可以采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的分布式对象识别方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,ComplexProgrammable Logic Device)、现场可编程门阵列(FPGA,Field-Programmable GateArray)或其他电子元件。
下面将结合上文记载的边缘计算设备的示例性应用和结构,说明通过边缘计算设备而实现分布式对象识别方法的过程。
参见图4A,图4A是本发明实施例提供的分布式对象识别方法的一个可选的流程示意图,以图1示出的边缘计算设备400-1、400-2和400-3作为示例,将结合图4A示出的步骤进行说明。
在步骤101中,所述待监控环境中的多个边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备。
这里,分布在待监控环境中、通过网络连接的多个边缘计算设备进行选举操作,以选举出中央控制设备。一种选举方式是,每个边缘计算设备向其他边缘计算设备发送请求,以获取其他边缘计算设备的设备信息,然后,边缘计算设备根据设定的选举条件和所有边缘计算设备的设备信息,在所有边缘计算设备选举出中央控制设备。其中,设备信息包括但不限于设备类型、网络条件及处理能力,选举条件是与设备信息对应的规则,可根据实际应用场景进行设定,例如要求设备类型是预先设定的某种或某几种类型,要求网络条件为有线连接且网络拥塞程度低于拥塞阈值,要求处理能力高于设定的处理能力阈值等。值得说明的是,图4A中仅示出了以边缘计算设备400-3为主体获取其他边缘计算设备的设备信息的过程,但边缘计算设备400-2也会获取其他边缘计算设备如边缘计算设备400-1的设备信息。
在每个边缘计算设备选举出中央控制设备后,还可进行进一步确认。为了便于区分,将每个边缘计算设备独自选举出的中央控制设备命名为候选设备,则每个边缘计算设备可以将候选设备的相关信息发送至其他边缘计算设备,以供其他边缘计算设备进行确认。这里,可以预先设定确认条件,例如候选设备在所有候选设备中的占比超过选举阈值(如90%),若某个候选设备满足该确认条件,则所有边缘计算设备共同将该候选设备确认为最终的中央控制设备,图4A中以最终选举出的中央控制设备为边缘计算设备400-3为例。
在步骤102中,每个所述边缘计算设备采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息。
对于分布在待监控环境中的每个边缘计算设备,其用于采集所述待监控环境的视频流,并对视频流进行对象识别处理,从而识别出视频流中的身份信息。这里,对象可以是人物、野生动物及车辆等,根据具体的对象识别场景而定。
在一些实施例中,可以通过这样的方式来实现上述的对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息:边缘计算设备抽取采集的所述视频流中的图像,并对所述图像进行特征提取处理,得到对象特征;将所述对象特征与数据库中的多个样本对象特征进行匹配,并确定匹配成功的所述样本对象特征对应的身份信息。
在进行对象识别处理时,边缘计算设备抽取视频流中的图像,并提取图像中的对象特征,其中,可根据设定的抽帧频率,如2秒1次的频率来抽取图像。将得到的对象特征与数据库中的多个样本对象特征进行匹配,若对象特征与某个样本对象特征之间的相似度大于相似度阈值,则确定匹配成功,获取数据库中的与该样本对象特征对应的身份信息。例如,在人脸识别的场景中,身份信息可以包括某个人物的姓名及性别等。通过上述方式,能够有效对出现在待监控环境中的对象实现身份监控,提升待监控环境的安全性。
在一些实施例中,在步骤102之后,还包括:所述边缘计算设备将所述身份信息发送至所述待监控环境的监控方。
边缘计算设备在得到身份信息后,可以根据身份信息进行数据上报,具体将身份信息发生至待监控环境的监控方的指定地址。在一些情况中,监控方的指定地址可能位于外部网络中,若边缘计算设备无法连接外部网络,则该边缘计算设备可以将身份信息发送至能够连接外部网络的其他边缘计算设备,由其他边缘计算设备将身份信息转发至指定地址,例如可将身份信息发送至交互设备,由交互设备进行转发,交互设备的确定过程在后文进行阐述。通过数据上报的方式,能够满足监控方的监控需求,便于监控方根据上报的身份信息进行对象统计等操作。
在一些实施例中,在步骤102之后,还包括:所述边缘计算设备监测自身的运行状态,并在监测到自身的运行状态处于故障状态时,根据引起故障状态的故障信息进行实时告警;每隔设定的发送周期,将所述发送周期内得到的所述身份信息发送至归档服务器;当所述身份信息属于可疑身份时,根据所述身份信息进行实时告警
在本发明实施例中,边缘计算设备可以对自身的运行状态进行监测,并在监测到自身的运行状态处于故障状态时,根据引起故障状态的故障信息进行实时告警,例如将故障信息发送至待监控环境的监控方。边缘计算设备还可将得到的所述身份信息发送至设定的归档服务器进行归档,由于归档对于时效性的要求不高,故可设定每隔设定的发送周期(如10秒),将发送周期内得到的身份信息发送至归档服务器,其中,归档服务器可以是云服务器或其他类型的服务器。此外,还可预先在数据库中设定属于可疑身份的身份信息,例如属于某被通缉人员的身份信息。当边缘计算设备识别出待监控环境中某个对象的身份信息属于可疑身份时,根据该身份信息进行实时告警,例如将该身份信息实时发送至待监控环境的安保人员持有的设备中。通过上述方式,提升了告警的多样性和有效性。
在步骤103中,所述中央控制设备对所述多个边缘计算设备的运行状态进行监测。
这里,选举出的中央控制设备对待监控环境中的多个边缘计算设备(包括中央控制设备自身)的运行状态进行监测。例如,中央控制设备可以对其他的边缘计算设备进行心跳监测,具体中央控制设备对其他的边缘计算设备间隔性地发送心跳信息,其他的边缘计算设备也会间隔性地向中央控制设备发送心跳信息。当中央控制设备在设定的超时时长内未收到某个边缘计算设备的心跳信息时,确定该边缘计算设备处于故障状态。
在步骤104中,当所述中央控制设备监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作。
例如,中央控制设备将故障状态的边缘计算设备的相关信息作为告警信息,发送至分布式对象识别系统的管理人员,提示管理人员对故障状态的边缘计算设备进行修复。当然,故障应对操作并不限于此,对于不同类型的边缘计算设备,中央控制设备可针对性地实施不同的故障应对操作,具体在后文进行阐述。
在一些实施例中,在步骤101之后,还包括:所述边缘计算设备对所述中央控制设备的运行状态进行监测;当监测到所述中央控制设备处于故障状态时,向其他的边缘计算设备发送验证请求;其中,所述验证请求用于验证与所述中央控制设备之间的网络连接关系;当无法连接所述中央控制设备的边缘计算设备在所述多个边缘计算设备中的占比大于占比阈值时,与能够连接的其他边缘计算设备进行选举操作,以选举出新的中央控制设备;所述新的中央控制设备根据处于故障状态的所述中央控制设备进行告警。
中央控制设备在对其他边缘计算设备的运行状态进行监测的同时,其他边缘计算设备也可对中央控制设备的运行状态进行监测。当边缘计算设备监测到中央控制设备处于故障状态,例如边缘计算设备在超时时长内未接收到中央控制设备的心跳信息时,向其他的边缘计算设备发送验证请求,该验证请求用于提示其他的边缘计算设备验证与所述中央控制设备之间的网络连接关系。
当无法连接所述中央控制设备的边缘计算设备在所有边缘计算设备中的占比大于占比阈值时,边缘计算设备与能够连接的其他边缘计算设备进行选举操作,以选举出新的中央控制设备,占比阈值可根据实际应用场景进行设定,如设定为1/2。选举出新的中央控制设备后,新的中央控制设备将旧的处于故障状态的中央控制设备的故障信息作为告警信息,进行告警,以提醒相关人员对处于故障状态的中央控制设备进行修复。通过上述方式,有效地避免了因中央控制设备故障而导致的整个系统不可用,进一步提升了对象识别的稳定性。
在一些实施例中,在步骤101之后,还包括:所述中央控制设备获取所述多个边缘计算设备的设备信息,并根据设定的转发条件和所述设备信息,将每个所述边缘计算设备与其他的边缘计算设备进行配对;所述边缘计算设备当向所述待监控环境的监控方发送信息失败时,将待发送的信息发送至配对的边缘计算设备,以使所述配对的边缘计算设备将所述待发送的信息发送至所述监控方。
在选举出中央控制设备后,中央控制设备可根据设定的转发条件以及多个边缘计算设备的设备信息,将每个所述边缘计算设备与其他的边缘计算设备进行配对,转发条件可根据实际应用场景进行设定。举例来说,在图4A中,边缘计算设备400-3将边缘计算设备400-1和边缘计算设备400-2进行配对,当然边缘计算设备400-3还可将自身与其他的边缘计算设备进行配对。边缘计算设备在向监控方发生信息时,可能因网络原因导致发送信息失败,此时,边缘计算设备将待发送的信息发送至配对的边缘计算设备,以使所述配对的边缘计算设备将待发送的信息发送至监控方。除此之外,也可以在某个边缘计算设备向监控方发送信息失败时,中央控制设备实时地将该边缘计算设备与其他的网络条件良好的边缘计算设备进行配对。通过上述方式,使得边缘计算设备产生的信息能够被成功地发送,提升了信息发送的成功率。
通过发明实施例对于图4A的上述示例性实施可知,本发明实施例将视频采集及对象识别处理的工作集成在边缘计算设备内部实现,如此,就算某个边缘计算设备故障,也不会影响到其他边缘计算设备的正常工作,中央控制设备通过执行故障应对操作也能较好地修复故障问题,提升了对象识别的稳定性。
在一些实施例中,参见图4B,图4B是本发明实施例提供的分布式对象识别方法的一个可选的流程示意图,基于图4A,在步骤101之后,还可以在步骤201中,所述中央控制设备获取所述多个边缘计算设备的设备信息,并根据设定的交互条件和所述设备信息,在所述多个边缘计算设备中确定交互设备。
这里,中央控制设备可获取多个边缘计算设备的设备信息,并根据交互条件和所述设备信息,在所述多个边缘计算设备中确定交互设备,交互设备用于进行与客户端的交互,同样地,交互条件可根据实际应用场景进行设定,例如将能够连接外部网络、网络条件较好及处理能力较高的边缘计算设备,确定为交互设备。其中,为了防止中央控制设备的处理压力过大,可在除中央控制设备之外的多个边缘计算设备中确定交互设备。确定出的交互设备可为一个或多个,在图4B中以交互设备为边缘计算设备400-1的情况为例。
在步骤202中,所述边缘计算设备根据所述边缘计算设备持有的密钥,对采集到的所述视频流进行加密处理。
分布在待监控环境中的每个边缘计算设备各自根据加密算法生成密钥,并在采集到视频流后,根据自身持有的密钥对视频流进行加密。本发明实施例对加密算法的类型不做限定,例如加密算法可为高级加密标准(AES,Advanced Encryption Standard)算法。
在步骤203中,所述交互设备获取所述多个边缘计算设备持有的密钥。
例如,在图4B中,边缘计算设备400-2和400-3将自身持有的密钥发送至边缘计算设备400-1。
在步骤204中,所述交互设备响应于客户端的设备访问请求,在所述多个边缘计算设备中确定所述设备访问请求所请求的目标设备,并将所述目标设备持有的密钥发送至客户端,以使所述客户端根据所述目标设备持有的密钥,对所述目标设备中加密后的视频流进行解密处理。
交互设备在接收到客户端的设备访问请求时,根据设备访问请求的内容,确定其所请求的目标设备,并将目标设备持有的密钥发送至客户端。值得说明的是,交互设备可以预先获取并存储多个边缘计算设备持有的密钥,也可以在接收到设备访问请求时,实时获取目标设备持有的密钥,另外,这里的客户端即对应上文的发起方,发起方可以是监控方中的某个人员或某个设备。客户端在得到目标设备持有的密钥后,即可对所述目标设备中加密后的视频流进行解密处理,便于客户端的用户观看解密后的视频流。
在一些实施例中,在步骤204的同时,还包括:所述交互设备获取所述目标设备的地址,并将所述目标设备的地址发送至所述客户端,以使所述客户端根据所述目标设备的地址访问所述目标设备,并根据所述目标设备持有的密钥对所述目标设备中加密后的视频流进行解密处理;或者,获取所述目标设备中加密后的视频流,并将所述加密后的视频流发送至所述客户端,以使所述客户端根据所述目标设备持有的密钥,对所述加密后的视频流进行解密处理。
本发明实施例提供了客户端访问视频流的两种实现方式。第一种方式是推流,即交互设备将目标设备的地址直接发送至所述客户端,所述客户端根据所述目标设备的地址访问所述目标设备,并根据所述目标设备持有的密钥对所述目标设备中加密后的视频流进行解密处理。第二种方式是转发,即交互设备获取所述目标设备中加密后的视频流,并将所述加密后的视频流转发至所述客户端,所述客户端根据接收到的所述目标设备持有的密钥,对所述加密后的视频流进行解密处理。通过上述方式,提升了视频流服务的灵活性。
在步骤205中,所述交互设备响应于配置修改请求,在所述多个边缘计算设备中确定所述配置修改请求所请求的待修改设备,并将所述配置修改请求中的配置部署至所述待修改设备。
除了响应设备访问请求之外,交互设备还可响应于客户端发起的配置修改请求,在多个边缘计算设备(包括交互设备自身)中确定配置修改请求所请求的待修改设备。然后,将配置修改请求中的配置部署至所述待修改设备,图4B中以待修改设备为边缘计算设备400-2的情况进行举例说明。
在图4B中,图4A示出的步骤104可更新为步骤206,在步骤206中,当所述中央控制设备监测到故障状态的交互设备时,根据所述故障状态的交互设备进行告警,并根据所述交互条件和所述设备信息,在非故障状态的所述多个边缘计算设备中确定新的交互设备,以替代所述故障状态的交互设备。
选举出的中央控制设备对多个边缘计算设备进行监测,若中央控制设备监测到故障状态的交互设备时,将故障状态的交互设备的故障信息作为告警信息,进行告警。此外,中央控制设备还根据交互条件和所述设备信息,在非故障状态的多个边缘计算设备中确定新的交互设备,以替代故障状态的交互设备,使得分布式对象识别系统中的交互服务能够继续正常运行。在图4B中,以新的交互设备为边缘计算设备400-2为例。
通过发明实施例对于图4B的上述示例性实施可知,本发明实施例通过确定交互设备,使交互设备响应客户端的设备访问请求和配置修改请求,提升了与客户端之间的交互效果,另外,在交互设备出现故障时,中央控制设备选定新的交互设备,进一步提升了对象识别的稳定性。
在一些实施例中,参见图4C,图4C是本发明实施例提供的分布式对象识别方法的一个可选的流程示意图,基于图4A,在步骤101之后,还可以在步骤301中,所述中央控制设备获取第一边缘计算设备的设备信息,并根据设定的分配条件、所述设备信息以及外部摄像头能够连接的第一边缘计算设备,将所述外部摄像头分配至所述能够连接的第一边缘计算设备中的一个。
在本发明实施例中,边缘计算设备包括两种类型,第一边缘计算设备用于连接所述外部摄像头,所述第二边缘计算设备在内部集成有摄像头。图4C中,以第一边缘计算设备包括边缘计算设备400-1和400-2,第二边缘计算设备包括边缘计算设备400-3,外部摄像头包括410-1和410-2的情况进行举例说明,则在选举出中央控制设备后,中央控制设备根据边缘计算设备400-1和400-2的设备信息、设定的分配条件以及每个外部摄像头能够连接的第一边缘计算设备,将每个外部摄像头分配至该外部摄像头能够连接的第一边缘计算设备中的一个,分配条件可根据实际应用场景进行设定。这里,可以根据均衡化的原则进行分配,即尽量保证分配至每个第一边缘计算设备的外部摄像头的数量相同,也可以为网络条件和处理能力更强的第一边缘计算设备分配更多的外部摄像头。其中,分配至每个第一边缘计算设备的摄像头数量不超过数量阈值,以保证每个第一边缘计算设备的处理压力不会过大,数量阈值可根据实际应用场景进行设定。在图4C中,以外部摄像头410-1和410-2均能够连接边缘计算设备400-1和400-2,且中央控制设备将外部摄像头410-1分配至边缘计算设备400-1,将外部摄像头410-2分配至边缘计算设备400-2的情况进行举例。在完成分配之后,可以将外部摄像头与第一边缘计算设备之间的分配关系以配置的形式进行存储,便于后续查询。
在图4C中,图4A示出的步骤102可通过步骤302至步骤303实现,将结合各个步骤进行说明。
在步骤302中,所述外部摄像头采集所述待监控环境的视频流,并将所述视频流发送至被分配的所述第一边缘计算设备。
例如,外部摄像头410-1采集待监控环境的视频流,并将所述视频流发送至被分配的所述边缘计算设备400-1;外部摄像头410-2采集待监控环境的视频流,并将所述视频流发送至被分配的所述边缘计算设备400-2。
在步骤303中,所述第一边缘计算设备对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息。
第一边缘计算设备对外部摄像头发送的所述视频流进行对象识别处理,得到所述视频流中对象的身份信息。
在图4C中,图4A示出的步骤104可更新为步骤304,在步骤304中,当所述中央控制设备监测到故障状态的第一边缘计算设备时,根据所述故障状态的第一边缘计算设备进行告警,将分配至所述故障状态的第一边缘计算设备的外部摄像头确定为待挂载摄像头,并根据所述分配条件、所述设备信息以及所述待挂载摄像头能够连接的、非故障状态的第一边缘计算设备,将所述待挂载摄像头分配至所述可连接的、非故障状态的第一边缘计算设备中的一个。
这里,当中央控制设备监测到故障状态的第一边缘计算设备时,根据故障状态的第一边缘计算设备进行告警,同时,为了便于区分,将分配至所述故障状态的第一边缘计算设备的外部摄像头命名为待挂载摄像头。由于故障状态的第一边缘计算设备不再可用,无法执行对象识别的工作,故中央控制设备根据分配条件、设备信息以及待挂载摄像头能够连接的、非故障状态的第一边缘计算设备,将待挂载摄像头分配至可连接的、非故障状态的第一边缘计算设备中的一个,以保证待挂载摄像头采集到的视频流能够被及时处理,提升对象识别的稳定性。在图4C中,中央控制设备监测到边缘计算设备400-2的运行状态处于故障状态,故将原本分配至边缘计算设备400-2的外部摄像头410-2,重新分配至边缘计算设备400-1,使边缘计算设备400-1对外部摄像头410-2采集的视频流进行对象识别。
在一些实施例中,在步骤103之后,还包括:当所述中央控制设备监测到故障状态的第二边缘计算设备时,根据所述故障状态的第二边缘计算设备进行告警。
由于第二边缘计算设备是在内部集成摄像头,故当中央控制设备监测到故障状态的第二边缘计算设备时,中央控制设备根据所述故障状态的第二边缘计算设备进行告警,例如将故障状态的第二边缘计算设备的故障信息作为告警信息,发送至分布式对象识别系统的管理人员,提醒管理人员尽快进行修复。
通过发明实施例对于图4C的上述示例性实施可知,本发明实施例通过中央控制设备来将外部摄像头分配至第一边缘计算设备,实现了分配关系的自动管理和维护。
下面,将说明本发明实施例在一个实际的应用场景中的示例性应用。本发明实施例提供的分布式对象识别系统可应用于对象识别的各种应用场景,例如车辆监控、校园安防及社区安防等场景。下面以在校园安防场景中进行人脸识别的情况举例,即待监控环境是整个校园,当然,实际的对象识别并不限于人脸识别,例如还可以是人体识别及步态识别等。
由于校园里存在教学楼、操场、楼道及花园等多个需要监控的子环境,因此校园安防具有范围大、场地多和布线复杂的特点。在本发明实施例中,将需要连接外部摄像头的边缘计算设备称为第一边缘计算设备,将内部集成有摄像头的边缘计算设备称为第二边缘计算设备,也称为AI摄像头。则在校园安防场景中,可利用第一边缘计算设备连接校园里原有的外部摄像头,在第一边缘计算设备上进行对象识别(人脸识别),在新安装摄像头时,也可安装具有人脸识别能力的AI摄像头,其中,外部摄像头是指不具有人脸识别能力的摄像头。多台外部摄像头通过网线与多台第一边缘计算设备连接,第一边缘计算设备与AI摄像头之间可通过无线网络互相连接(当然也可通过有线网络连接,这里以无线连接进行举例说明)。
在分布式对象识别系统启动时,在所有边缘计算设备中根据第一用户规则选举出中央控制设备,用于监控其余边缘计算设备运行,这里的第一用户规则对应上文的选举条件。此外,中央控制设备根据第二用户规则选择一台边缘计算设备,作为网页系统的承载设备,第二用户规则对应上文的交互条件,该承载设备对应上文的交互设备。中央控制设备还根据第三用户规则,将每个外部摄像头分配至能够连接的第一边缘计算设备中的一个。值得说明的是,以上涉及到的用户规则,可以是根据边缘计算设备的设备类型、网络条件、处理能力及设备负载等参数建立的限制规则,其中,网络条件可包括带宽、时延及可靠性等衡量因素,其中带宽是指单位时间内数据传输的能力,时延是指把数据包从信息源送到目的地所需的时间,可靠性是指传输数据包的差错率。至于设备类型,不同边缘计算设备的运算能力不同,例如AI摄像头有的型号计算能力弱,仅支持自身视频流的识别、推流及上报,而有的AI摄像头或某些第一边缘计算设备具有较富余的计算能力,能够提供网页服务,故可根据设备类型来建立用户规则。在实际应用场景中,优先选取处理能力较强和网络条件较好的设备作为中央控制设备和网页系统的承载设备。
用户可通过网页连接到网页系统,从而查看分布式对象识别系统的状态及修改系统配置。用户在查看某一个摄像头的视频流时,可通过网页系统直接连接AI摄像头或通过第一边缘计算设备连接外部摄像头,查看加密后的视频流。校园内的每个边缘计算设备经人脸识别后得到的结果,可通过网络发送给用户指定设备。
对于选举出的中央控制设备来说,其用于对其余边缘计算设备进行心跳监测。当分布式对象识别系统中的任何设备出现故障时,中央控制设备将相应的告警信息发送到用户指定设备,如系统管理员的邮箱。若网页系统的承载设备(相当于网页服务器)出现故障,中央处理设备在其他边缘计算设备中,根据第二用户规则选择一台边缘计算设备,作为新的承载设备,让其继续运行网页系统。若用于连接外部摄像头的第一边缘计算设备出现故障,中央控制设备将分配至该第一边缘计算设备的外部摄像头重新分配至其他第一边缘计算设备。若AI摄像头或第一边缘计算设备因网络原因无法向用户发送信息,则中央控制设备负责将该设备与其他网络条件良好的边缘计算设备进行配对,以使网络条件良好的边缘计算设备转发信息。
为了对校园各处进行人脸识别,搭建的系统可由两部分组成:
1)第一部分:人脸识别与处理系统,为了便于描述称为S1。S1对应上文的分布式对象识别系统,由如下若干数量的两部分组成:
①AI摄像头:具备视频采集能力及人脸识别能力的摄像头,即第二边缘计算设备,可接入网络环境。
②人脸识别子系统,为了便于描述称为S2,每单位的S2由一台第一边缘计算设备和若干数量的外部摄像头组成。为了便于理解,本发明实施例提供了如图5所示的人脸识别与处理系统的示意图,在图5中,设备A、B和C均为第一边缘计算设备,设备D、E和F均为AI摄像头,其中,设备A与外部摄像头A1和A2连接,组成了一单位的S2,以此类推。其中,第一边缘计算设备可用于连接外部摄像头和AI摄像头,通过外部摄像头采集视频流,具备一定的人脸识别能力,且可接入网络环境。
2)第二部分:使用设备,使用设备可包括以下两种类型:
①系统监测设备,为了便于描述称为D1,指任何可通过网络连接S1的设备,包括但不限于个人计算机(PC,Personal Computer)、智能手机、笔记本电脑及平板电脑。此类设备可通过网页连接,管理与下发S1的配置,并且查看S1的运行状态。此类设备仅需在使用时打开,S1的运行并不依赖于此类设备。
②系统信息接收设备,为了便于描述称为D2,指任何可通过网络连接S1的设备,包括但不限于PC、智能手机、笔记本电脑及服务器。此类设备接收S1的告警及日志等信息,同样地,D2并非S1的必要组成部分。值得说明的是,在实际应用时,可以将D1和D2的功能集成在同一设备中,当然D1和D2也可以是不同的设备。另外,在图5至图7中,示出的使用设备D1和D2位于待监控环境(校园)外,但这仅是为了表示使用设备与S1中的设备之间的身份差异,实际上,D1和D2可以位于待监控环境内,也可以位于待监控环境外。
下面,对S1进行具体说明,S1包括若干台AI摄像头以及若干单位的S2,AI摄像头和S2均包含以下模块:
1)人脸识别与结果发送模块,为了便于描述称为M1,包括以下子模块:
①视频模块:视频模块是摄像头的基本功能的实现,用于从摄像头中取出视频流或图像。这里,摄像头也直接提供推流服务,D1通过网页访问边缘计算设备的地址,可直接播放摄像头拍摄到的视频流,该视频流可通过边缘计算设备进行加密。
②人脸识别模块:用于从视频模块中取出图像进行人脸识别,将得到的人脸特征与人脸库中的样本人脸特征进行匹配,确定匹配成功的样本人脸特征对应的身份信息。
③数据上报模块:获取到身份信息后,生成数据结果,并将数据结果上报到指定地址。若无法与指定地址建立网络连接,则上报至网页系统的承载设备,由其转发至指定地址。身份信息可呈现给用户查看,也可进行如人员监控及人流统计等其他操作。
④人脸库:保存样本人脸特征及对应的身份信息的数据库。其中,可通过对包括样本人脸的图像或视频进行特征提取处理,得到样本人脸特征,当然,也可直接将包括样本人脸的图像或视频存储至人脸库中。
2)网页前端与摄像头连接模块,为了便于描述称为M2,包括以下子模块:
①网页系统:与用户进行交互的系统,使得用户能够在D1访问S1,查看S1状态。同时,网页系统可用于将用户的请求和配置具体化为系统指令,让S1执行,如图5中的(1)所示,用户PC通过网页连接请求,如超文本传输协议(HTTP,HyperText Transfer Protocol)请求与网页系统建立连接,从而访问网页系统,此时网页系统的承载设备相当于HTTP服务器。其中,用户PC可通过客户端软件及命令行(终端、SHELL)等方式与网页系统建立连接,连接方式并不限于HTTP协议,也可通过其他协议,例如通过安全外壳协议(SSH,SecureShell)及远程系统调用等来实现连接。
②配置管理系统:将用户由网页前端发起的配置修改,部署到S1各设备,并负责管理、同步与备份配置。
③信息告警系统:系统中存在多类信息需要通知用户,例如识别出的身份信息及系统故障信息等,信息告警系统负责将信息发送到指定设备。如图5中的(2)和(3)所示,设备C和设备F将得到的身份信息将发送到云存储进行保存,设备E在得到属于可疑身份的身份信息时,将身份信息作为告警信息,发送至安保室电脑,以提醒校园的安保人员注意。
④监控与维护系统:负责整个系统的健壮运行与故障告警,具体包括网页系统承载设备的自动挑选与维护,S2中第一边缘计算设备的自动管理与维护,以及信息告警系统承载设备的自动挑选与维护。
对于网页系统进行进一步说明,S1内每一台具备一定处理能力的设备(AI摄像头或S2中的第一边缘计算设备)都可运行网页系统。用户可在第二用户规则中提前设定哪些设备或哪些类型的设备能够运行该网页系统。网页系统可运行在一台或多台S1内的设备上。当用户需要管理系统配置时,可通过网页系统访问S1,并修改S1中的配置。此外,网页系统还提供摄像头视频流的查看服务,当D1设备需要查看某摄像头的视频流时,可访问网页系统,网页系统将加载对应摄像头的信息并播放视频流,值得说明的是,可设定由AI摄像头或S2中的第一边缘计算设备进行推流,即实时直播,也可由网页系统转发对应的视频流,例如设定在网络条件较好时进行推流。
对于M2中的信息告警系统进行进一步说明,信息告警系统负责将S1内的信息发送至对应的D2设备上。每台能够连接D2(即外部网络)的S1内设备都可以独立地运行该系统。在信息告警系统中,可将信息划分为多个主题,每个主题可设置相应的发送延迟以及作为发送对象的D2设备。例如,可以设立的主题包括:
1)系统故障信息,零延迟,接收设备为系统维护管理员。当任意设备出现故障,信息告警系统将实时发送相应信息给每一位系统管理员。
2)身份信息,每10秒发送一次,接收设备为归档服务器,用于对人员进出场所的情况进行归档。
3)属于可疑身份的身份信息,零延迟,接收设备为安保室的电脑。即当有可疑人物出现,信息告警系统实时发送告警信息至安保室。
对于M2中的监控与维护系统进行进一步说明,监控及维护系统可在S1内的每台设备上运行。在本发明实施例中,在S1的所有设备中挑选出一台设备作为中央控制设备,该设备用于运行监控与维护系统,具体负责:通过接收心跳信息监测其余所有设备的运行状态,挑选网页系统的备用承载设备,管理S2中第一边缘计算设备和外部摄像头之间的分配关系。如图6所示,图6中设备B被选为中央控制设备,其他的AI摄像头和第一边缘计算设备向设备B发送心跳,受其监测。
上述设计主要针对下列情况:
1)网页系统的承载设备故障。若通过监控与维护系统监测到网页系统的承载设备心跳超时,则首先通过信息告警系统通知用户,然后根据用户设置的第二用户规则,从备用承载设备(例如可以是网页系统的承载设备之外的、所有非故障状态的设备)中挑选一台作为网页系统的新承载设备,保证网页系统持续可用。
2)S2中的第一边缘计算设备故障。若通过监控与维护系统监测到第一边缘计算设备心跳超时,则首先通过信息告警系统通知用户,然后从配置管理系统中找出与该第一边缘计算设备连接的外部摄像头,根据用户设置的第三用户规则,从其余S2中的第一边缘计算设备中挑选一部分,将这些外部摄像头分别挂载到对应的第一边缘计算设备,保证每一台外部摄像头可用。
3)AI摄像头故障。若通过监控与维护系统监测到AI摄像头心跳超时,则通过信息告警系统通知用户。
4)外部摄像头故障。S2中的第一边缘计算设备检测到挂载(分配)的外部摄像头故障时,通过信息告警系统通知用户。
5)S1中的设备无法使用信息告警系统。由中央控制设备根据用户设定的转发规则,在S1的可以使用信息告警系统的设备中,指定无法使用信息告警系统的设备的信息转发设备,由信息转发设备进行信息转发。
如图7所示,若原承载网页系统的边缘计算设备A出现故障,则之前选举出的中央控制设备B向管理员发送告警信息,并新选出设备C承载网页系统。同时,将原挂载在设备A的外部摄像头A1和A2重新挂载到设备B。
此外,若中央控制设备故障,例如设备E向中央控制设备B发送心跳后,获取返回信息超时,则设备E请求局域网内,即S1内的其他非中央控制设备验证中央控制设备是否故障。若局域网内超过半数的设备无法连接中央控制设备,且这些设备可以访问外部网络,则连通的设备间发起新一轮选举,根据第一用户规则选出新的中央控制设备,由新的中央控制设备通过信息告警系统,告知用户旧的中央控制设备B故障,从而保证整个系统可用。
通过本发明实施例能够实现以下有益效果:
1)系统稳定性高。去中心化的设计避免了传统人脸识别系统中因中心化的人脸识别服务器(计算服务器)、前端接入服务器及数据上报服务器等设备故障时系统不可用的风险,分布式的边缘计算设备保证了系统在部分边缘计算故障时,仍能照常运行。
2)实现成本低。传统的人脸识别服务器(计算服务器)因其高负载和高运算量,决定了其购买成本和维护成本巨大,在本发明实施例中,人脸识别都在分散的AI摄像头或第一边缘计算设备上完成,实现成本低。
3)易部署,网络条件要求低。传统的人脸识别要求分散的摄像头连接服务器,若通过有线的方式,则会因布线复杂导致难以部署;若通过无线的方式,则会因需要传送大量图像或视频流而导致对网络条件要求较高。在本发明实施例中,人脸识别都在分散的AI摄像头或第一边缘计算设备上完成,均可通过无线网络部署,且无须传输每一个摄像头的图像或视频流,对网络条件的要求低。
4)安全性高。传统的外部摄像头无法加密实时视频流,在本发明实施例中,可通过AI摄像头或第一边缘计算设备对视频流进行加密,安全性高,能够有效避免包含用户实时行为的画面被泄露。
下面继续说明本发明实施例提供的边缘计算设备400中的软件模块的示例性结构,在一些实施例中,如图3所示,存储在存储器440的软件模块可以包括:边缘计算模块4431,用于与待监控环境中的其他边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备;边缘计算模块4431,还用于采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息;中央控制模块4432,用于当所述边缘计算设备为中央控制设备时,对所述多个边缘计算设备的运行状态进行监测;当监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作。
在一些实施例中,边缘计算模块4431,还用于:根据所述边缘计算设备持有的密钥,对采集到的所述视频流进行加密处理;
所述中央控制模块4432,还用于:当所述边缘计算设备为中央控制设备时,获取所述多个边缘计算设备的设备信息,并根据设定的交互条件和所述设备信息,在所述多个边缘计算设备中确定交互设备;
所述边缘计算设备400还包括交互模块4433,交互模块4433用于:当所述边缘计算设备为交互设备时,获取所述多个边缘计算设备持有的密钥;响应于设备访问请求,在所述多个边缘计算设备中确定所述设备访问请求所请求的目标设备,并将所述目标设备持有的密钥发送至所述设备访问请求的发起方,以使所述发起方根据所述目标设备持有的密钥,对所述目标设备中加密后的视频流进行解密处理。
在一些实施例中,交互模块4433,还用于:当所述边缘计算设备为交互设备时,获取所述目标设备的地址,并将所述目标设备的地址发送至所述发起方,以使所述发起方根据所述目标设备的地址访问所述目标设备,并根据所述目标设备持有的密钥对所述目标设备中加密后的视频流进行解密处理;或者,获取所述目标设备中加密后的视频流,并将所述加密后的视频流发送至所述发起方,以使所述发起方根据所述目标设备持有的密钥,对所述加密后的视频流进行解密处理。
在一些实施例中,交互模块4433,还用于:当所述边缘计算设备为交互设备时,响应于配置修改请求,在所述多个边缘计算设备中确定所述配置修改请求所请求的待修改设备,并将所述配置修改请求中的配置部署至所述待修改设备。
在一些实施例中,所述中央控制模块4432,还用于:当所述边缘计算设备为中央控制设备、且监测到故障状态的交互设备时,根据所述故障状态的交互设备进行告警,并根据所述交互条件和所述设备信息,在非故障状态的所述多个边缘计算设备中确定新的交互设备,以替代所述故障状态的交互设备。
在一些实施例中,所述中央控制模块4432,还用于:当所述边缘计算设备为中央控制设备时,获取第一边缘计算设备的设备信息,并根据设定的分配条件、所述设备信息以及外部摄像头能够连接的第一边缘计算设备,将所述外部摄像头分配至所述能够连接的第一边缘计算设备中的一个;其中,所述边缘计算设备的类型包括所述第一边缘计算设备和第二边缘计算设备;所述第一边缘计算设备用于连接所述外部摄像头,所述第二边缘计算设备集成有摄像头;分配至每个所述第一边缘计算设备的摄像头数量不超过数量阈值;
所述边缘计算模块4431,还用于:获取分配的外部摄像头中的视频流;其中,所述外部摄像头用于采集待监控环境的视频流。
在一些实施例中,所述中央控制模块4432,还用于:当所述边缘计算设备为中央控制设备、且监测到故障状态的第一边缘计算设备时,根据所述故障状态的第一边缘计算设备进行告警,将分配至所述故障状态的第一边缘计算设备的外部摄像头确定为待挂载摄像头,并根据所述分配条件、所述设备信息以及所述待挂载摄像头能够连接的、非故障状态的第一边缘计算设备,将所述待挂载摄像头分配至所述可连接的、非故障状态的第一边缘计算设备中的一个。
在一些实施例中,所述中央控制模块4432,还用于:当所述边缘计算设备为中央控制设备、且监测到故障状态的第二边缘计算设备时,根据所述故障状态的第二边缘计算设备进行告警。
在一些实施例中,所述边缘计算模块4431,还用于:对所述中央控制设备的运行状态进行监测;当监测到所述中央控制设备处于故障状态时,向其他的边缘计算设备发送验证请求;其中,所述验证请求用于验证与所述中央控制设备之间的网络连接关系;当无法连接所述中央控制设备的边缘计算设备在所述多个边缘计算设备中的占比大于占比阈值时,与能够连接的其他边缘计算设备进行选举操作,以选举出新的中央控制设备,以使新的中央控制设备根据处于故障状态的所述中央控制设备进行告警。
在一些实施例中,中央控制模块4432,还用于:当所述边缘计算设备为中央控制设备时,获取所述多个边缘计算设备的设备信息,并根据设定的转发条件和所述设备信息,将每个所述边缘计算设备与其他的边缘计算设备进行配对;
所述边缘计算模块4431,还用于:当向所述待监控环境的监控方发送信息失败时,将待发送的信息发送至配对的边缘计算设备,以使所述配对的边缘计算设备将所述待发送的信息发送至所述监控方。
在一些实施例中,边缘计算模块4431,还用于:抽取采集的所述视频流中的图像,并对所述图像进行特征提取处理,得到对象特征;将所述对象特征与数据库中的多个样本对象特征进行匹配,并确定匹配成功的所述样本对象特征对应的身份信息;将所述身份信息发送至所述待监控环境的监控方。
在一些实施例中,边缘计算模块4431,还用于:监测自身的运行状态,并在监测到自身的运行状态处于故障状态时,根据引起故障状态的故障信息进行实时告警。
在一些实施例中,边缘计算模块4431,还用于:每隔设定的发送周期,将所述发送周期内得到的所述身份信息发送至归档服务器。
在一些实施例中,边缘计算模块4431,还用于:当所述身份信息属于可疑身份时,根据所述身份信息进行实时告警。
本发明实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本发明实施例提供的方法,例如,如图4A、图4B或图4C示出的分布式对象识别方法。值得说明的是,计算机指的是边缘计算设备。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
综上所述,通过本发明实施例能够实现以下有益效果:
1)去中心化的设计避免了传统方案因中心化的计算服务器、前端接入服务器及数据上报服务器等设备故障时系统不可用的风险,分布式的边缘计算设备保证了系统在部分边缘计算故障时,仍能照常运行。
2)通过选举中央控制设备,由中央控制设备对多个边缘计算设备进行监测,使得在某个边缘计算设备故障时,中央控制设备能够快速进行应对,同时在中央控制设备故障时,也可选举出新的中央控制设备,进一步提升了系统的稳定性。
3)本发明实施例可通过第一边缘计算设备兼容传统的外部摄像头,也可通过第二边缘计算设备来构建分布式对象识别系统,灵活性较强,可根据实际应用场景来调整构建方式。
4)在本发明实施例中,对象识别都在分散的边缘计算设备上完成,而边缘计算设备较之传统的服务器,购置成本和维护成本较低,故能够有效降低分布式对象识别系统的实现成本。
5)对象识别都在分散的边缘计算设备上完成,均可通过无线网络部署,且无须统一传输各个摄像头的图像或视频流,对网络条件的要求低。
6)可通过边缘计算设备对采集到的视频流进行加密,安全性高,能够有效避免包含对象实时行为的画面被泄露。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。

Claims (15)

1.一种分布式对象识别系统,其特征在于,包括:
分布在待监控环境中的多个边缘计算设备;
所述边缘计算设备,用于:
与所述待监控环境中的其他边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备;
采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息;
根据持有的密钥对所述视频流进行加密处理;
所述中央控制设备,用于:
在所述多个边缘计算设备中确定交互设备;
对所述多个边缘计算设备的运行状态进行监测;当监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作;
所述交互设备,用于:
获取所述多个边缘计算设备持有的密钥;
响应于设备访问请求,在所述多个边缘计算设备中确定所述设备访问请求所请求的目标设备,并将所述目标设备持有的密钥发送至所述设备访问请求的发起方,以使
所述发起方根据所述目标设备持有的密钥,对所述目标设备中加密后的视频流进行解密处理。
2.根据权利要求1所述的分布式对象识别系统,其特征在于,
所述中央控制设备,还用于获取所述多个边缘计算设备的设备信息,并根据设定的交互条件和所述设备信息,在所述多个边缘计算设备中确定交互设备。
3.根据权利要求2所述的分布式对象识别系统,其特征在于,
所述中央控制设备,还用于当监测到故障状态的交互设备时,根据所述故障状态的交互设备进行告警,并
根据所述交互条件和所述设备信息,在非故障状态的所述多个边缘计算设备中确定新的交互设备,以替代所述故障状态的交互设备。
4.根据权利要求1所述的分布式对象识别系统,其特征在于,
所述交互设备,还用于:
获取所述目标设备的地址,并将所述目标设备的地址发送至所述发起方,以使
所述发起方根据所述目标设备的地址访问所述目标设备,并根据所述目标设备持有的密钥对所述目标设备中加密后的视频流进行解密处理;或者,
获取所述目标设备中加密后的视频流,并将所述加密后的视频流发送至所述发起方,以使所述发起方根据所述目标设备持有的密钥,对所述加密后的视频流进行解密处理。
5.根据权利要求1所述的分布式对象识别系统,其特征在于,
所述交互设备,还用于响应于配置修改请求,在所述多个边缘计算设备中确定所述配置修改请求所请求的待修改设备,并
将所述配置修改请求中的配置部署至所述待修改设备。
6.根据权利要求1所述的分布式对象识别系统,其特征在于,所述边缘计算设备的类型包括第一边缘计算设备和第二边缘计算设备;其中所述第一边缘计算设备用于连接外部摄像头,所述第二边缘计算设备集成有摄像头;所述分布式对象识别系统还包括外部摄像头;
所述中央控制设备,还用于获取所述第一边缘计算设备的设备信息,并
根据设定的分配条件、所述设备信息以及所述外部摄像头能够连接的第一边缘计算设备,将所述外部摄像头分配至所述能够连接的第一边缘计算设备中的一个;
所述外部摄像头,用于采集所述待监控环境的视频流,并将所述视频流发送至被分配的所述第一边缘计算设备;
其中,分配至每个所述第一边缘计算设备的摄像头数量不超过数量阈值。
7.根据权利要求6所述的分布式对象识别系统,其特征在于,
所述中央控制设备,还用于:
当监测到故障状态的第一边缘计算设备时,根据所述故障状态的第一边缘计算设备进行告警,将分配至所述故障状态的第一边缘计算设备的外部摄像头确定为待挂载摄像头,并
根据所述分配条件、所述设备信息以及所述待挂载摄像头能够连接的、非故障状态的第一边缘计算设备,将所述待挂载摄像头分配至所述可连接的、非故障状态的第一边缘计算设备中的一个;
当监测到故障状态的第二边缘计算设备时,根据所述故障状态的第二边缘计算设备进行告警。
8.根据权利要求1所述的分布式对象识别系统,其特征在于,
所述边缘计算设备,还用于:
对所述中央控制设备的运行状态进行监测;
当监测到所述中央控制设备处于故障状态时,向其他的边缘计算设备发送验证请求;其中,所述验证请求用于验证与所述中央控制设备之间的网络连接关系;
当无法连接所述中央控制设备的边缘计算设备在所述多个边缘计算设备中的占比大于占比阈值时,与能够连接的其他边缘计算设备进行选举操作,以选举出新的中央控制设备;
所述新的中央控制设备,用于根据处于故障状态的所述中央控制设备进行告警。
9.根据权利要求1所述的分布式对象识别系统,其特征在于,
所述中央控制设备,还用于获取所述多个边缘计算设备的设备信息,并
根据设定的转发条件和所述设备信息,将每个所述边缘计算设备与其他的边缘计算设备进行配对;
所述边缘计算设备,还用于:
当向所述待监控环境的监控方发送信息失败时,将待发送的信息发送至配对的边缘计算设备,以使
所述配对的边缘计算设备将所述待发送的信息发送至所述监控方。
10.根据权利要求1至9任一项所述的分布式对象识别系统,其特征在于,所述边缘计算设备,还用于:
抽取采集的所述视频流中的图像,并对所述图像进行特征提取处理,得到对象特征;
将所述对象特征与数据库中的多个样本对象特征进行匹配,并确定匹配成功的所述样本对象特征对应的身份信息;
将所述身份信息发送至所述待监控环境的监控方。
11.根据权利要求10所述的分布式对象识别系统,其特征在于,
所述边缘计算设备,还用于:
监测自身的运行状态,并在监测到自身的运行状态处于故障状态时,根据引起故障状态的故障信息进行实时告警;
每隔设定的发送周期,将所述发送周期内得到的所述身份信息发送至归档服务器;
当所述身份信息属于可疑身份时,根据所述身份信息进行实时告警。
12.一种分布式对象识别方法,其特征在于,
应用于分布式对象识别系统,所述分布式对象识别系统包括分布在待监控环境中的多个边缘计算设备;
所述分布式对象识别方法包括:
所述待监控环境中的多个边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备;
每个所述边缘计算设备采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息;
每个所述边缘计算设备根据持有的密钥对所述视频流进行加密处理;
所述中央控制设备在所述多个边缘计算设备中确定交互设备;
所述中央控制设备对所述多个边缘计算设备的运行状态进行监测;
当所述中央控制设备监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作;
所述交互设备获取所述多个边缘计算设备持有的密钥;
所述交互设备响应于设备访问请求,在所述多个边缘计算设备中确定所述设备访问请求所请求的目标设备,并将所述目标设备持有的密钥发送至所述设备访问请求的发起方,以使
所述发起方根据所述目标设备持有的密钥,对所述目标设备中加密后的视频流进行解密处理。
13.根据权利要求12所述的分布式对象识别方法,其特征在于,所述中央控制设备在所述多个边缘计算设备中确定交互设备,包括:
所述中央控制设备获取所述多个边缘计算设备的设备信息,并根据设定的交互条件和所述设备信息,在所述多个边缘计算设备中确定交互设备。
14.一种边缘计算设备,其特征在于,包括:
边缘计算模块,用于:
与待监控环境中的其他边缘计算设备进行选举操作,以在所述待监控环境中的多个边缘计算设备中选举出中央控制设备;
采集所述待监控环境的视频流,并对所述视频流进行对象识别处理,得到所述视频流中对象的身份信息;
根据持有的密钥对所述视频流进行加密处理;
中央控制模块,用于当所述边缘计算设备为中央控制设备时,执行以下处理:
在所述多个边缘计算设备中确定交互设备;
对所述多个边缘计算设备的运行状态进行监测;当监测到故障状态的边缘计算设备时,对所述故障状态的边缘计算设备执行故障应对操作;
交互模块,用于当所述边缘计算设备为交互设备时,执行以下处理:
获取所述多个边缘计算设备持有的密钥;
响应于设备访问请求,在所述多个边缘计算设备中确定所述设备访问请求所请求的目标设备,并将所述目标设备持有的密钥发送至所述设备访问请求的发起方,以使
所述发起方根据所述目标设备持有的密钥,对所述目标设备中加密后的视频流进行解密处理。
15.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于引起处理器执行时,实现权利要求12至13任一项所述的分布式对象识别方法。
CN202010272649.4A 2020-04-09 2020-04-09 分布式对象识别系统、方法及边缘计算设备 Active CN111476171B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010272649.4A CN111476171B (zh) 2020-04-09 2020-04-09 分布式对象识别系统、方法及边缘计算设备
PCT/CN2021/078060 WO2021203862A1 (zh) 2020-04-09 2021-02-26 分布式对象识别系统、方法及边缘计算设备
US17/709,768 US11907046B2 (en) 2020-04-09 2022-03-31 Distributed object identification system and method, and edge computing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010272649.4A CN111476171B (zh) 2020-04-09 2020-04-09 分布式对象识别系统、方法及边缘计算设备

Publications (2)

Publication Number Publication Date
CN111476171A CN111476171A (zh) 2020-07-31
CN111476171B true CN111476171B (zh) 2021-03-26

Family

ID=71751265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010272649.4A Active CN111476171B (zh) 2020-04-09 2020-04-09 分布式对象识别系统、方法及边缘计算设备

Country Status (3)

Country Link
US (1) US11907046B2 (zh)
CN (1) CN111476171B (zh)
WO (1) WO2021203862A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111476171B (zh) * 2020-04-09 2021-03-26 腾讯科技(深圳)有限公司 分布式对象识别系统、方法及边缘计算设备
CN113382073B (zh) * 2021-06-08 2022-06-21 重庆邮电大学 一种在云边端工业控制系统中边缘节点的监督系统及方法
CN113810667B (zh) * 2021-11-19 2022-02-08 成都旺小宝科技有限公司 基于视频回溯模式的渠道风控系统
US11974232B2 (en) * 2021-12-07 2024-04-30 Qualcomm Incorporated Coordination of transmit power for distributed units
US11765230B2 (en) * 2021-12-10 2023-09-19 Sony Group Corporation Artificial intelligence (AI) based management of distributed ledger technology (DLT) network for internet of things (IoT)
CN114650231B (zh) * 2022-05-13 2022-10-18 南京金宁汇科技有限公司 一种可视容器化的联盟链节点部署方法及系统
CN115297093A (zh) * 2022-08-02 2022-11-04 北京百度网讯科技有限公司 边缘设备数据访问方法、相关装置及计算机程序产品
CN116320515B (zh) * 2023-03-06 2023-09-08 北京车讯互联网股份有限公司 一种基于移动摄像设备的实时直播方法与系统
TWI831727B (zh) * 2023-09-14 2024-02-01 晶睿通訊股份有限公司 影像模式應用方法及其監控設備

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796449A (zh) * 2014-01-22 2015-07-22 腾讯科技(深圳)有限公司 内容分发方法、装置及设备
CN105046303A (zh) * 2015-08-03 2015-11-11 深圳市科锐奇科技有限公司 一种基于分布式数据交互的生物识别方法及系统
US10147238B2 (en) * 2016-07-12 2018-12-04 Tyco Fire & Security Gmbh Holographic technology implemented retail solutions
CN109218100A (zh) * 2018-09-21 2019-01-15 郑州云海信息技术有限公司 分布式对象存储集群及其请求响应方法、系统和存储介质
CN109902640A (zh) * 2019-03-05 2019-06-18 江南大学 基于边缘计算和机器学习的视频质量异常检测系统及其检测方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9172918B2 (en) * 2007-02-02 2015-10-27 Honeywell International Inc. Systems and methods for managing live video data
JP5617627B2 (ja) * 2010-12-28 2014-11-05 オムロン株式会社 監視装置および方法、並びにプログラム
US20140026223A1 (en) * 2012-07-23 2014-01-23 Apple Inc. Mobile device recording
CN104283739B (zh) * 2014-10-20 2018-04-06 新华三技术有限公司 一种基于分布式issu升级的检测方法和设备
CN104834722B (zh) * 2015-05-12 2018-03-02 网宿科技股份有限公司 基于cdn的内容管理系统
US10534964B2 (en) * 2017-01-30 2020-01-14 Blackberry Limited Persistent feature descriptors for video
CN108446680B (zh) * 2018-05-07 2021-12-21 西安电子科技大学 一种基于边缘计算的人脸认证系统中的隐私保护方法及系统
CN111476171B (zh) * 2020-04-09 2021-03-26 腾讯科技(深圳)有限公司 分布式对象识别系统、方法及边缘计算设备
US11343544B2 (en) * 2020-06-29 2022-05-24 Seagate Technology Llc Selective use of cameras in a distributed surveillance system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796449A (zh) * 2014-01-22 2015-07-22 腾讯科技(深圳)有限公司 内容分发方法、装置及设备
CN105046303A (zh) * 2015-08-03 2015-11-11 深圳市科锐奇科技有限公司 一种基于分布式数据交互的生物识别方法及系统
US10147238B2 (en) * 2016-07-12 2018-12-04 Tyco Fire & Security Gmbh Holographic technology implemented retail solutions
CN109218100A (zh) * 2018-09-21 2019-01-15 郑州云海信息技术有限公司 分布式对象存储集群及其请求响应方法、系统和存储介质
CN109902640A (zh) * 2019-03-05 2019-06-18 江南大学 基于边缘计算和机器学习的视频质量异常检测系统及其检测方法

Also Published As

Publication number Publication date
US11907046B2 (en) 2024-02-20
CN111476171A (zh) 2020-07-31
US20220222134A1 (en) 2022-07-14
WO2021203862A1 (zh) 2021-10-14

Similar Documents

Publication Publication Date Title
CN111476171B (zh) 分布式对象识别系统、方法及边缘计算设备
US11362961B2 (en) Service processing method and system and device
CN104168333B (zh) Proxzone服务平台的工作方法
US10547693B2 (en) Security device capability discovery and device selection
CN101652999B (zh) 用于管理实况视频数据的系统和方法
US8108504B2 (en) Non-centralized network device management using console communications apparatus
CN101361046B (zh) 远程复原无响应计算系统
CN101938460B (zh) 全程全网安全协同防御系统的协同防御方法
CN106412113A (zh) 一种能源云服务系统及其通信方法
CN101730094B (zh) 一种终端设备接入安防系统业务平台及信息传送方法
KR101408037B1 (ko) 클라우드 시스템에서의 가상 머신 통합 모니터링 장치 및 방법
CN104394366B (zh) 分布式视频流媒体转码访问控制的方法和系统
CN103916625A (zh) 一种基于云计算的视频监控系统及方法
KR101506250B1 (ko) 가상화 서비스 제공을 위한 가상화 서버 접속 이중화 시스템
CN105072386B (zh) 一种基于多播技术的视频联网系统及状态监测方法
CN111698126B (zh) 信息监控方法、系统及计算机可读存储介质
CN109561283A (zh) 一种社区监控视频的共享管理方法、装置及存储介质
CN110049027A (zh) 一种用于区块链网络信息的传输平台
CN101945086A (zh) 视频型安防网关接入安防系统业务平台及信息传送方法
CN110647583B (zh) 一种区块链构建方法、装置、终端及介质
CN103401705A (zh) 一种视频监控网络内集中式存储管理方法
CN103888310B (zh) 监控处理方法及系统
CN115955358B (zh) 基于点对点通信的数据流传输系统
CN101478571B (zh) 网络视频监控系统及其系统用户认证方法
CN104202230A (zh) 用于多级结构的数据交互装置及方法

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40025885

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant