(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-19
(54)【発明の名称】データベースに格納されている対象主体識別子を適応的に更新するための方法及びサーバ装置
(51)【国際特許分類】
G06F 16/182 20190101AFI20240312BHJP
G06F 16/53 20190101ALI20240312BHJP
【FI】
G06F16/182
G06F16/53
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023558247
(86)(22)【出願日】2022-02-24
(85)【翻訳文提出日】2023-09-21
(86)【国際出願番号】 JP2022007736
(87)【国際公開番号】W WO2022209475
(87)【国際公開日】2022-10-06
(31)【優先権主張番号】10202103210R
(32)【優先日】2021-03-29
(33)【優先権主張国・地域又は機関】SG
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【氏名又は名称】家入 健
(72)【発明者】
【氏名】オング フイ ラム
(72)【発明者】
【氏名】ペー ウェイ ジアン
(72)【発明者】
【氏名】オング ホン イェン
(72)【発明者】
【氏名】山崎 智史
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA02
5B175FA01
5B175HB03
(57)【要約】
本開示は、データベースに格納されている対象主体識別子を適応的に更新するための方法及びサーバを提供し、前記対象主体識別子は、複数のサーバが含まれるシステムにおける対象主体と関連し、前記サーバは、対象主体情報を受信し、前記対象主体情報に第1の対象主体識別子を割り当て、前記第1の対象主体識別子を前記サーバの第1のデータベースに格納し、前記複数のサーバに対して、前記対象主体識別子を同期させるリクエストを送信し、前記リクエストは、前記対象主体に関連する前記対象主体情報を含む。
【選択図】
図12A
【特許請求の範囲】
【請求項1】
データベースに格納されている対象主体識別子を適応的に更新するためのサーバであって、前記対象主体識別子は、リクエストを送信するように構成された他のサーバが含まれるシステムにおける対象主体と関連し、前記サーバは、
前記他のサーバから、前記対象主体に関連する対象主体情報が含まれる前記リクエストを受信し、前記対象主体識別子を同期させ、
前記受信した対象主体情報と、前記データベースに格納されている情報とを比較して、前記対象主体識別子を同期させる前記リクエストを受け入れるか否かを判定する、サーバ。
【請求項2】
前記比較の結果に基づいて、前記リクエストを受け入れるレスポンスを前記他のサーバに送信するようにさらに構成され、前記レスポンスは、前記対象主体識別子と前記データベースに格納されている前記情報とを含む、請求項1に記載のサーバ。
【請求項3】
前記データベースに格納されている前記情報と前記対象主体情報との類似度を特定するようにさらに構成され、前記比較は前記類似度に基づく、請求項1又は2に記載のサーバ。
【請求項4】
前記データベースに格納されている前記情報内の参照情報が、1つ以上の基準を満たすか否かを判定し、前記参照情報は、前記対象主体識別子の下での前記対象主体の検出の数と、前記検出における顔の向き又は露出の度合いに関連するスコアと、前記対象主体の検出時点とのうちの少なくとも1つを含み、前記比較は、前記参照情報に係る判定に基づく、請求項1に記載のサーバ。
【請求項5】
前記リクエストを受け入れる前記レスポンスの送信の後、前記データベース内の前記対象主体識別子を更新するようにさらに構成される、請求項2に記載のサーバ。
【請求項6】
データベースに格納されている対象主体識別子を適応的に更新するためのサーバであって、前記対象主体識別子は、複数のサーバが含まれるシステムにおける対象主体と関連し、前記サーバは、
対象主体情報を受信し、
前記対象主体情報に第1の対象主体識別子を割り当て、前記第1の対象主体識別子を前記サーバの第1のデータベースに格納し、
前記複数のサーバに対して、前記対象主体識別子を同期させるリクエストを送信し、前記リクエストは、前記対象主体に関連する前記対象主体情報を含む、サーバ。
【請求項7】
前記複数のサーバにおける、対応する1つ以上のサーバから、1つ以上のレスポンスを受信するようにさらに構成され、前記1つ以上のレスポンスのそれぞれは、前記1つ以上のサーバのうちの1つから受信され、前記もう一つのサーバのうちの前記1つが前記対象主体識別子を同期させる前記リクエストを受け入れることを示し、前記1つ以上のレスポンスのそれぞれは、前記1つ以上のサーバのうちの前記1つにおける対応する第2のデータベースに格納されている情報と、前記格納されている情報に割り当てられている対応する第2の対象主体識別子とを含む、請求項6に記載のサーバ。
【請求項8】
前記1つ以上のサーバから受信された前記情報の各参照情報を比較するようにさらに構成され、前記参照情報は、前記対象主体識別子の下での前記対象主体の検出の数と、前記検出における顔の向き又は露出の度合いに関連するスコアと、前記対象主体の検出時点とのうちの少なくとも1つを含む、請求項7に記載のサーバ。
【請求項9】
前記比較の結果に基づいて、前記1つ以上のレスポンスに対応づけられている前記対応する1つ以上の第2の対象主体識別子のいずれか1つ、又は、前記第1の対象主体識別子から、対象主体識別子を選択するように構成される、請求項8に記載のサーバ。
【請求項10】
前記第1のデータベースにおける前記第1の対象主体識別子を更新するように構成される、請求項9に記載のサーバ。
【請求項11】
前記1つ以上のサーバへ前記選択された対象主体識別子を送信して、前記対応する1つ以上の第2のデータベースにおける前記対応する1つ以上の第2の対象主体識別子を前記対象主体識別子に更新するように構成される、請求項9の記載のサーバ。
【請求項12】
サーバにより、データベースに格納されている対象主体識別子を適応的に更新するための方法であって、前記対象主体識別子は、リクエストを送信するように構成された他のサーバが含まれるシステムにおける対象主体と関連し、前記方法は、
前記他のサーバから、前記対象主体に関連する対象主体情報が含まれる前記リクエストを受信し、前記対象主体識別子を同期させることと、
前記受信した対象主体情報と、前記データベースに格納されている情報とを比較して、前記対象主体識別子を同期させる前記リクエストを受け入れるか否かを判定することとを含む、方法。
【請求項13】
前記比較の結果に基づいて、前記リクエストを受け入れるレスポンスを前記他のサーバに送信することをさらに含み、前記レスポンスは、前記対象主体識別子と前記データベースに格納されている前記情報とを含む、請求項12に記載の方法。
【請求項14】
前記比較のステップは、前記データベースに格納されている前記情報と前記対象主体情報との類似度を特定することを含む、請求項12又は13に記載の方法。
【請求項15】
前記比較のステップは、前記データベースに格納されている前記情報内の参照情報が、1つ以上の基準を満たすか否かを判定することを含み、前記参照情報は、前記対象主体識別子の下での前記対象主体の検出の数と、前記検出における顔の向き又は露出の度合いに関連するスコアと、前記対象主体の検出時点とのうちの少なくとも1つを含み、前記比較のステップは、前記参照情報に係る判定に基づく、請求項12に記載の方法。
【請求項16】
前記リクエストを受け入れる前記レスポンスの送信の後、前記データベース内の前記対象主体識別子を更新することをさらに含む、請求項12に記載の方法。
【請求項17】
サーバにより、データベースに格納されている対象主体識別子を適応的に更新するための方法であって、前記対象主体識別子は、複数のサーバが含まれるシステムにおける対象主体と関連し、前記方法は、
対象主体情報を受信することと、
前記対象主体情報に第1の対象主体識別子を割り当て、前記第1の対象主体識別子を前記サーバの第1のデータベースに格納することと、
前記複数のサーバに対して、前記対象主体識別子を同期させるリクエストを送信することと、を含み、前記リクエストは、前記対象主体に関連する前記対象主体情報を含む、方法。
【請求項18】
前記複数のサーバにおける、対応する1つ以上のサーバから、1つ以上のレスポンスを受信することをさらに含み、前記1つ以上のレスポンスのそれぞれは、前記1つ以上のサーバのうちの1つから受信され、前記もう一つのサーバのうちの前記1つが前記対象主体識別子を同期させる前記リクエストを受け入れることを示し、前記1つ以上のレスポンスのそれぞれは、前記1つ以上のサーバのうちの前記1つにおける対応する第2のデータベースに格納されている情報と、前記格納されている情報に割り当てられている対応する第2の対象主体識別子とを含む、請求項17に記載の方法。
【請求項19】
前記1つ以上のサーバから受信された前記情報の各参照情報を比較することをさらに含み、前記参照情報は、前記対象主体識別子の下での前記対象主体の検出の数と、前記検出における顔の向き又は露出の度合いに関連するスコアと、前記対象主体の検出時点とのうちの少なくとも1つを含む、請求項18に記載の方法。
【請求項20】
前記比較の結果に基づいて、前記1つ以上のレスポンスに対応づけられている前記対応する1つ以上の第2の対象主体識別子のいずれか1つ、又は、前記第1の対象主体識別子から、対象主体識別子を選択することをさらに含む、請求項19に記載の方法。
【請求項21】
前記第1のデータベースにおける前記第1の対象主体識別子を更新することをさらに含む、請求項20に記載の方法。
【請求項22】
前記1つ以上のサーバへ前記選択された対象主体識別子を送信して、前記対応する1つ以上の第2のデータベースにおける前記対応する1つ以上の第2の対象主体識別子を前記対象主体識別子に更新することをさらに含む、請求項21に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバのデータベースに格納されている対象主体識別子を適応的に更新するための方法に関するものであるが、これに限定されるものではない。
【背景技術】
【0002】
顔認識技術は、より良いユーザエクスペリエンスを実現するために、オンライン/実店舗取引決済、ビル/ドアアクセス制御、及び通関などといった多くの現代的なソリューションに組み込まれている。近年、オープンソースアルゴリズム及び手頃な価格のハードウエアが利用可能であるために、顔認識が可能な映像監視システムがより普及している。顔認識技術は、インシデント後の調査を迅速化することに加え、リアルタイムセキュリティ監視における人手を減らすために役立つ。
【0003】
画像フレーム又は映像から外観を検出すること及び対象主体情報を受信することによって対象主体を識別できることにより、顔認識技術は、リアルタイムのセキュリティ監視及びインシデント後の調査などといった公共安全ソリューションのための映像監視システムにおける人手を減らすことに役立つ。
【0004】
通常、顔認識システムは、システム内の1つ以上のカメラから得た各対象主体情報に基づいて、主に、異なる会場や場所に対象主体が現れたことを特定するために利用される。顔認識システムは、その後、システムによる対象主体のさらなる識別のために、対象主体情報をデータベースに格納する。
【0005】
技術がより一般的になるにつれて、同時に、デプロイサイズが大きくなっている。例えば、ショッピングモールでは、1つ以上の顔認識システムにおいて数百台の監視カメラが導入されることがあり、また、人口密度の高い都市では、何千種類の顔認識システムにおいて、10万台以上の監視カメラが容易に導入されうる。
【発明の概要】
【発明が解決しようとする課題】
【0006】
各顔認識システムは、識別された異なる主体についての情報を格納するために自身のデータベースを持ちうる一方で、そのデータベースを管理し、かつ、他の顔認識システムとの間でそのデータベースに格納されている当該情報の受信/提供をするために、サーバが利用されうる。複数のカメラ及び/又は複数の顔認識システムにまたがって同じ主体を識別することの難しさは、カメラとシステムのデプロイ数の増加に伴って増加する。
【課題を解決するための手段】
【0007】
第1の側面として、本開示は、データベースに格納されている対象主体識別子を適応的に更新するためのサーバを開示し、前記対象主体識別子は、リクエストを送信するように構成された他のサーバが含まれるシステムにおける対象主体と関連し、前記サーバは、前記他のサーバ(例えばサーバA)から、前記対象主体に関連する対象主体情報が含まれる前記リクエストを受信し、前記対象主体識別子を同期させ、前記受信した対象主体情報と、前記データベースに格納されている情報とを比較して、前記対象主体識別子を同期させる前記リクエストを受け入れるか否かを判定する。
【0008】
第2の側面として、本開示は、データベースに格納されている対象主体識別子を適応的に更新するためのサーバを開示し、前記対象主体識別子は、複数のサーバが含まれるシステムにおける対象主体と関連し、前記サーバは、対象主体情報を受信し、前記対象主体情報に第1の対象主体識別子を割り当て、前記第1の対象主体識別子を前記サーバの第1のデータベースに格納し、前記複数のサーバに対して、前記対象主体識別子を同期させるリクエストを送信し、前記リクエストは、前記対象主体に関連する前記対象主体情報を含む。
【0009】
第3の側面として、本開示は、サーバにより、データベースに格納されている対象主体識別子を適応的に更新するための方法を開示し、前記対象主体識別子は、リクエストを送信するように構成された他のサーバが含まれるシステムにおける対象主体と関連し、前記方法は、前記他のサーバから、前記対象主体に関連する対象主体情報が含まれる前記リクエストを受信し、前記対象主体識別子を同期させることと、前記受信した対象主体情報と、前記データベースに格納されている情報とを比較して、前記対象主体識別子を同期させる前記リクエストを受け入れるか否かを判定することとを含む。
【0010】
第4の側面として、本開示は、サーバにより、データベースに格納されている対象主体識別子を適応的に更新するための方法を開示し、前記対象主体識別子は、複数のサーバが含まれるシステムにおける対象主体と関連し、前記方法は、
対象主体情報を受信することと、前記対象主体情報に第1の対象主体識別子を割り当て、前記第1の対象主体識別子を前記サーバの第1のデータベースに格納することと、前記複数のサーバに対して、前記対象主体識別子を同期させるリクエストを送信することと、を含み、前記リクエストは、前記対象主体に関連する前記対象主体情報を含む。
【0011】
開示される実施形態のさらなる利点及び効果は、明細書及び図面によって明らかになるであろう。利点及び/又は効果は、明細書及び図面の様々な実施形態及び特徴から個々に得ることができ、そのような利点及び/又は効果を得るためにそれらの全てが提供される必要はない。
【図面の簡単な説明】
【0012】
本発明の実施形態は、例示として、図面と併せて以下の書面による説明から、当業者にとってよりよく理解され、容易に明らかになるであろう。
【0013】
【
図1】
図1は、対象主体を特定するシステムの一例である。
【
図2】
図2は、対象主体に関する情報に対象主体識別子を割り当てる2つの顔認識システムの例を示す。
【
図3】
図3は、3つの顔認証システムが集約された集中共有人物IDレジストリを構成するブロック図である。
【
図4】
図4は、分散型共有人物IDレジストリを構成する3つの顔認識システムを示すブロック図である。
【
図5A】
図5Aは、サーバのデータベース内の対象主体に関連する対象主体IDを更新する、従来のシステムを示すブロック図である。
【
図5B】
図5Bは、サーバのデータベース内の対象主体に関連する対象主体識別子を更新する他の従来のシステムを示すブロック図である。
【
図6A】
図6Aは、本開示に係るデータベースに格納された対象主体識別子を適応的に更新する方法を示すフローチャートである。
【
図6B】
図6Bは、本開示に係るデータベースに格納された対象主体識別子を適応的に更新する別の方法を示すフローチャートである。
【
図7】
図7は、本開示に係るデータベースに格納された対象主体識別子を適応的に更新するサーバを備えたシステムを示すブロック図である。
【
図8A】
図8Aは、本開示の様々な実施形態に係るデータベースに格納された対象主体識別子を適応的に更新する3台のサーバを備えたシステムを示すブロック図である。
【
図8B】
図8Bは、本開示の様々な実施形態によるデータベースに格納された対象主体識別子を適応的に更新するための3つのサーバを含むシステムを示すブロック図を示す。
【
図9】
図9は、一実施形態に係る、対象主体IDを同期させるためのリクエストの受信とレスポンスの送信の処理を示すフローチャートである。
【
図10A】
図10Aは、3つのサーバ(例:サーバAからC)から受信した3つのレスポンスと、本開示の3つの実施形態それぞれにおいて3つの主体IDから1つを選択する選択プロセスとを表す概念図を示しており、各レスポンスは、データと、対象主体を識別する対象主体IDとを含む。
【
図10B】
図10Bは、3つのサーバ(例:サーバAからC)から受信した3つのレスポンスと、本開示の3つの実施形態それぞれにおいて3つの主体IDから1つを選択する選択プロセスとを表す概念図を示しており、各レスポンスは、データと、対象主体を識別する対象主体IDとを含む。
【
図10C】
図10Cは、3つのサーバ(例:サーバAからC)から受信した3つのレスポンスと、本開示の3つの実施形態それぞれにおいて3つの主体IDから1つを選択する選択プロセスとを表す概念図を示しており、各レスポンスは、データと、対象主体を識別する対象主体IDとを含む。
【
図11】
図11は、本開示の一実施形態に係るサーバのデータベースに格納されている情報と受信対象主体情報とを比較する処理を示すフローチャートである。
【
図12A】
図12Aは、本開示の一実施形態に係るサーバのデータベースに格納されている対象主体識別子を適応的に更新する処理を示すフローチャートである。
【
図12B】
図12Bは、本開示の一実施形態に係るサーバのデータベースに格納されている対象主体識別子を適応的に更新する処理を示すフローチャートである。
【
図13A】
図13Aは、本開示の他の実施形態に係るサーバのデータベースに格納されている対象主体識別子を適応的に更新する処理を示すフローチャートである。
【
図13B】
図13Bは、本開示の他の実施形態に係るサーバのデータベースに格納されている対象主体識別子を適応的に更新する処理を示すフローチャートである。
【
図14】
図14は、
図6A及び6Bに示される方法を実装するために、
図7に示されるシステムとして利用することに適した、コンピュータシステムの概念図である。
【発明を実施するための形態】
【0014】
開示される実施形態のさらなる利点及び効果は、明細書及び図面によって明らかになる。利点及び/又は効果は、様々な実施形態や明細書及び図面の特徴から個々に得ることができ、そのような利点及び/又は効果を得るためにはそれらの全てが提供される必要はない。
【0015】
以下、図面を参照しながら、本開示に係る実施形態が記載される。図面を通して同じ要素には同じ符号が付され、冗長な説明は必要に応じて省略される。さらに、所定の情報(例えば、所定値や所定の閾値)は、特に断らない限り、その情報を利用するコンピュータからアクセス可能な記憶装置に予め格納される。
【0016】
用語説明
【0017】
サーバ:サーバ又はクライアントは、カメラからの入力を受信し、データ入力(例えばカメラ)からの情報を得て処理し、主体を識別し、情報を送信し、及びサーバのデータベースに格納されている主体ID(identification:識別子)を適応的に更新するためのソフトウエアアプリケーションプログラムをホストする。以降の様々な実施形態において、顔情報を受信し、その顔情報(外観)に基づいて主体を識別し、その顔情報を主体IDに割り当て、その顔情報を格納し、自身のデータベースに格納されている自身の主体IDレジストリ(すなわち、主体IDのリスト)を管理し、及び、その顔情報と主体IDとを他のサーバへ送信して類似の顔情報と関連する主体IDとを他のサーバから受信するために利用される顔認識システムが、サーバと呼ばれうる。そのサーバは、他のサーバと通信を行って、自身のデータベースに格納されている主体に関連する主体IDを更新することで、主体IDが他のサーバのデータベースに格納されている主体IDと同期され、かつ、一致するようにする。
【0018】
データベース:データベースは、サーバに関連づけられているコンポーネントであり、情報(データ又はデータセット)を格納し、主体IDレジストリ(他の主体のリストに関連する主体IDのリスト)を管理するように構成されうる。サーバのデータベースに格納されている各データセットには、特定の主体に対応するデータセットを識別するために、主体IDが割り当てられうる。本開示によれば、最初にデータベースに格納された主体に係る主体IDは、他のサーバのデータベースに格納されている主体IDと一致するように適応的に更新されうる。サーバのデータベースに格納される(又は、データベースから取得される)情報を、サーバに格納される(又は、サーバから取得される)情報と解釈できることは、当業者に理解される。
【0019】
システム:システムは、1つ以上のサーバ(顔認識システム)及び1つ以上のデータベースを有し、当該1つ以上のサーバの各サーバは、データ入力(例えばカメラ)を受信し、かつ、データベースに格納されている主体に対応する自身の主体IDレジストリを管理する。本開示によれば、システム内の各サーバ(顔認識システム)は、主体IDを同期するために他のサーバへリクエストを送信することができ、これにより、他の装置から受信する主体IDに関するレスポンスに基づいて、自身の対応するデータベースに格納されている主体IDを適応的に更新しうる。
【0020】
対象主体:対象主体は、任意の適切な種類のエンティティであることができ、それは、人、ユーザ、又はその識別子(ID: identification)が適応的に更新される主体を含みうる。種々の実施形態において、(サーバのデータベースに格納されている、主体の情報及びIDの対応するリストに基づいて)サーバに知られている主体のリスト内のいずれの主体とも一致しない新たな主体を、対象主体と呼ぶことがあり、そのため、対象主体を識別するためのサーバによって新たな主体ID(例えば、対象主体ID)が生成される。一実施形態において、対象主体が他のサーバに知られている(例えば、他のサーバが各々のデータベースに、対象主体を識別する情報とIDを格納している)場合、サーバによって対象主体のために生成される主体IDは、他のサーバにおける主体IDと同期して更新されうる。
【0021】
対象主体情報:対象主体を識別する情報(データ又はデータセット)は、対象主体情報と呼ばれる。以下の種々の実施形態において、相対位置、サイズ、対象主体の目、鼻、頬骨、及びあごの形状及び/又は輪郭、虹彩パターン、主体の肌の色及び髪の色、又はそれらの組み合わせが含まれる顔情報が、対象主体情報と呼ばれる。それに加えて又はそれに代えて、物理的特徴情報(身長、体のサイズ、衣服、所持品、他の同様の特徴や組み合わせ)や行動的特徴情報(体の動き、手足の位置、移動方向、主体の歩き方、立ち方、動き方、話し方、他の特徴や組み合わせ)が含まれる特徴情報が、対象主体情報と呼ばれうる。種々の実施形態において、対象主体情報は、カメラ又はセンサによって生成された画像フレームから、サーバ内のデータベース又は記憶要素から、又は他のサーバからの情報の取得を通じて、対象主体情報が受信される。簡潔にするために、以下の種々の実施形態において、顔情報(外観)が主体情報として利用される。
【0022】
データベースに格納されている情報:データベースに格納されている情報は、サーバによって以前に受信された1つ以上の主体に関連する既存の情報(データまたはデータセット)が、データベースに格納されている情報と呼ばれうる。サーバのデータベースに格納されている各データセットは、特定の主体に対応するデータセットを識別するために、主体IDに割り当てられることがある。このような既存の情報は、サーバによって新たに受信された情報(例えば、他のサーバのカメラやデータベースから)と比較するために取得され、新たに受信された情報が、或る主体に関するデータベースに格納された既存の情報とある程度の類似性を示すかどうかを特定する。
【0023】
対象主体識別子(ID):対象主体IDは、対象主体(すなわち、対象となる主体情報)を識別する情報に割り当てられたIDである。様々な実施形態において、システムは複数のサーバを含むことができ、各サーバは、受信した情報に基づいて主体を識別し、そのデータベースに主体IDの自身のリストを格納するように構成されうる。このようにして、同じ主体は、システムの異なるサーバに格納されている異なる主体IDに対応しうる。一実施形態では、対象主体IDの同期は、システムの第1のサーバが、対象主体に関連する対象主体IDと第1のサーバのデータベースに格納されている対象主体に関連する情報とを同期するためのリクエストを、システムの第2のサーバに送信することによって開始されうる。リクエストと第1のサーバからの情報とを受信した第2のサーバは、受信した情報を自身のデータベースに格納された情報と比較し、比較の結果に基づいて、そのリクエストを受け入れるかどうかのレスポンスを送信しうる。
【0024】
一実施形態において、第2のサーバは、対象主体IDを同期させるリクエストを受け入れるレスポンスを第1のサーバへ返信する際に、自身の対象主体IDと第2のサーバに格納されている対象主体情報とを含めうる。複数のサーバ(例えば、第2のサーバ及び第3のサーバ)が対象主体IDを同期させるリクエストを受け入れるレスポンスを送信する場合に、(それぞれの対象主体情報とIDを使用することで)複数のレスポンスを受信した第1のサーバは、対象主体IDを同期させるための各対象主体情報の参照情報に基づいて、複数のレスポンスの中から1つの対象主体IDを選択しうる。
【0025】
類似度:類似度とは、2つのデータセット(例えば、他のサーバからカメラやデータベースから受信したものと、サーバのデータベースに格納されているもの)がどの程度類似しているかを示し、2つのデータセットが同一の対象主体に関連する確度に対応する。様々な実施形態において、2つのデータセットの比較の結果としての類似度は、0%から100%にスケーリングされ、0%の類似度は、2つのデータセットが類似するデータを含まないことを示し、100%の類似度は、2つのデータセットが同一であり、同じデータセットに対応することを示す。
【0026】
一実施形態において、サーバは、主体IDに割り当てられていない新しい情報をカメラから受信すると、それをそのデータベースに格納されている情報と比較し、データベースに格納されているデータセットと高い類似度を示す場合(例えば、類似度が閾値より大きい(例えば、80%より大きい)場合)、新しい情報は、次に、そのデータセットに対応付けられた主体IDに割り当てられ、その主体IDの下で格納され、その主体IDを有する主体のための新しいデータセットが識別されたことを示す。一方、データベースに格納されている全ての情報と低い類似度を示す場合(例えば、類似度が全て閾値より小さい(例えば、80%未満である)場合)、新しい情報は、その後、新しい主体IDに割り当てられ、新しい情報に基づいて新しい主体が識別されたことを示す。
【0027】
別の実施形態では、第1のサーバが第2のサーバに対象主体IDを同期させるためのリクエストと対象主体に関する情報とを送信する場合、第2のサーバは、第1のサーバから受信した情報と自身のデータベース内に格納されている情報とを比較し、両者が高い類似度を示す場合(例えば、類似度が閾値より大きい(例えば80%より大きい)場合)に、対象主体に関する対象主体IDを同期させるためのリクエストを受け入れるレスポンスフレームを送信しうる。これに対して、第1のサーバから受信した情報が自身のデータベースに格納されている全ての情報と低い類似度を示す場合(例えば、類似度が全て閾値より小さい(例えば80%未満である)場合)、第2のサーバは、第1のサーバが同期させたい対象主体に関する情報又は主体IDを格納していないため、対象主体IDを同期させることを拒否するレスポンスフレームを送信する。
【0028】
参照情報:ここで、参照情報は、サーバの対象主体情報の特徴を表すサーバ固有の情報を指す。様々な実施形態において、参照情報は、サーバの対象主体情報の関連性及び/又は最新性を特定するために利用されうる。参照情報には、(対象主体IDの下での)対象主体の検出の総数、それらの検出における対象主体の顔の向き又は正面顔の露出の程度に関するスコア、及び対象主体が検出された時点のタイムスタンプが含まれうるが、これらに限定されない。
【0029】
対象ID同期処理の間、特定の1つのサーバの対象主体IDが、当該特定の1つのサーバから受信された対象主体情報が大きな関連性及び最新性を提供する場合(例えば、当該特定の1つのサーバの参照情報が、対象主体の検出数が最も多い、対象主体の最大の正面顔のスコアを有する、及び/又は最新の検出を有する場合)において選択されうる。選択された対象主体IDは、その後、対象主体IDを同期するリクエストを受け入れるというそれぞれのレスポンスフレームを送信したサーバの間で同期される。
【0030】
本発明の実施の形態を、例示として、図面を参照ながら説明する。図面中の類似の参照番号及び文字は、類似の要素又は同等物を表す。
【0031】
以下の説明のいくつかの部分は、アルゴリズム及びコンピュータメモリ内のデータに対する操作の機能的又は記号的表現に関して明示的又は暗黙的に示される。これらのアルゴリズムの説明及び機能的又は記号的表現は、データ処理技術の当業者が、自身の作業の内容を最も効果的に他の技術の当業者に伝えるために使用する手段であり、アルゴリズムは、ここでは一般的に、所望の結果につながる自己整合的な手順のシーケンスであると考えられている。ステップは、記憶、転送、結合、比較、及び他の方法で操作することができる電気的、磁気的又は光学的信号のような物理量の物理的操作を必要とするステップである。
【0032】
特に明記されていない限り、また、以下から明らかなように、本明細書全体を通じて、「受信」、「算出」、「特定」、「更新」、「生成」、「初期化」、「出力」、「受信」、「取得」、「識別」、「分散」、「認証」等の用語を用いた議論は、コンピュータシステム内で物理量として表されるデータをコンピュータシステム内で同様に物理量として表される他のデータに操作し、変換するコンピュータシステム又は同様の電子機器又は他の情報記憶装置、送信装置又は表示装置の動作及び処理を指すことが理解される。
【0033】
本明細書には、これらの方法の動作を実行するための装置も開示されている。このような装置は、必要な目的のために特別に構築されてもよく、また、コンピュータに格納されたコンピュータプログラムによって選択的に起動又は再構成されるコンピュータ又は他の装置を含んでもよい。ここに提示されるアルゴリズム及びディスプレイは、いかなる特定のコンピュータ又は他の装置にも本質的に関連しない。様々なマシンは、ここに記載されている教示に従ってプログラムと共に使用することができる。あるいは、リクエストされた方法ステップを実行するためのより専門的な装置の構築が適切であり得る。コンピュータの構造は、以下の説明から現れる。
【0034】
さらに、本明細書は、本明細書に記載された方法の個々のステップがコンピュータコードによって実施され得ることが当業者に明白であるという点で、コンピュータプログラムも暗黙的に開示している。コンピュータプログラムは、特定のプログラミング言語及びその実装に限定されることを意図していない。本明細書に含まれる開示の教示を実装するために、様々なプログラミング言語及びそのコーディングを使用することができることが理解されるであろう。さらに、コンピュータプログラムは、特定の制御フローに限定されることを意図していない。本発明の精神又は範囲から逸脱することなく、異なる制御フローを使用することができるコンピュータプログラムの他の多くの変形がある。
【0035】
さらに、コンピュータプログラムの1つ以上のステップは、連続的ではなく並列的に実行することができる。このようなコンピュータプログラムは、任意のコンピュータ可読媒体に格納することができる。コンピュータ可読媒体は、磁気ディスク又は光ディスク、メモリチップ、又はコンピュータとのインタフェースに適した他の記憶装置などの記憶装置を含むことができる。コンピュータ可読媒体は、インターネットシステムに例示されるような有線媒体、又は GSM 移動電話システムに例示されるような無線媒体も含むことができる。このようなコンピュータにロードされ実行されるコンピュータプログラムは、好ましい方法のステップを実装する装置を効果的にもたらす。
【0036】
実施形態
【0037】
本発明の種々の実施形態は、第2の対象が出現し、かつ、第1の対象が出現しないフレームにおいて、第1の対象の出現を推定する方法及び装置に関する。
【0038】
図1は、対象主体702を識別するために使用される例示のシステム100を示す。システム100は、一つ以上のカメラ(例えば、カメラ100aからc)を含むことができ、各カメラは、ある場所の画像フレームを生成するように構成されうる。画像フレームがカメラ(例えば、100aからc)によって生成されると、主体を識別するための情報(例えば、外観や顔の情報)が、画像フレームから取り出され、データベースに記憶されている情報との比較により、主体に関連する主体IDに割り当てられる。このような主体IDは、異なる主体IDによって特徴づけられる情報を有する他の主体からその主体を区別するために、カメラによって使用される。その後、情報と、その主体の主体IDと、それら2つの間の対応関係は、主体をさらに識別するためにデータベースに格納されうる。
【0039】
従来の設定では、カメラ100aからcは、それぞれのデータベース内の検出された情報及び主体に、ID101、ID201及びID301という主体IDを割り当てられうる。このように、3つのカメラ100aから100cは、それぞれのロケーション1から3において、対象主体702を検出し、同じ対象主体情報(例えば、顔情報)を受信した場合であっても、異なるカメラには異なるIDが格納されているため、ID101という主体IDの下で情報を格納するカメラ100aは、ID201という主体IDを、異なる主体であって同一ではない主体を指していると認識する。このように、複数のカメラで同一の主体を識別する難しさは、近年、システムに配置されたカメラの数とともに増加している。
【0040】
上記の従来のシステムは、従来のシステム内の各顔認識システム(カメラとデータベース)が、その顔認識システム(カメラ)によって検出された主体のリストに対応するデータベースに格納された自身の主体IDレジストリを管理するスタンドアロンの人物IDレジストリに関する。
【0041】
特に、各顔認識システムは、新規/未知の主体を検出したときに(例えば、画像フレームから得られた情報と、顔認識システムのデータベースに格納されている全ての情報とを比較して、既存の主体IDレジストリに対応付けられている情報が一致しないと判断したときに)、新規/未知の主体を自動的に登録し、新規/未知の主体に一意の主体IDを割り当てて、さらなる識別を行う。異なる顔認識システム上に現れる、同一の未登録の主体は、それぞれのシステムの主体IDレジストリにおいて異なる主体IDを持つこととなる。
【0042】
図2は、データベース208、218をそれぞれ持ち、かつ、スタンドアロンの主体IDレジストリをそれぞれ持つ、2つの例示の顔認識システム206、216を示す。特に、カメラ204、214は、それぞれ画像フレームを生成し、新規/未知の主体202を検出しうる。これに応じて、顔認識システム206、216は、画像フレームから得られた新規/未知の同一の主体202の情報を処理し、それを主体ID「PID_001」及び「PID_0002」に割り当て、その後の主体202の識別のために、主体ID及びその情報をそれぞれデータベース208、218に格納する。前述したように、顔認識システム1 206は、主体IDを割り当てる過程で同一又は類似の主体情報が検出され使用されたとしても、自身が持つ主体ID「PID_0001」と、顔認識システム2 216によって割り当てられた主体ID「PID_0002」とを、異なる主体に対応するものとして認識する。
【0043】
図3は、集中共有主体IDレジストリとして使用されるデータベース302と共に3つの顔認識システム306、308、310を有する従来システム300を示すブロック図である。各顔認識システム306、308、310は、データベース302内の集中共有主体IDレジストリ304を照会及び更新して、既存の主体IDを検索し、新しい主体IDを格納することができる。対象主体に対応する同一の主体IDがデータベース30から検索されるので、この従来システム300は、異なる顔認識システムにまたがって現れる同一の主体を識別することができる。しかしながら、複数のサーバ、クライアント又は顔認識システムにまたがって共有される集中型の主体IDレジストリのみを有するこのような従来のシステムは、従来のシステムに実装可能かつサポートされるサーバ、クライアント又は顔認識システムの数に関して、スケーラビリティが低い可能性がある。これは、デプロイ全体に単一の障害点があるため、すなわち、集中型データベースに障害が発生すると、全ての顔認識システムが機能できなるためである。
【0044】
図4は、分散型共有主体IDレジストリとして使用される各データベース404、408、及び412を有する3つの顔認識システム402、406、408を含む別の従来システム400を示すブロック図を示す。
図3の従来システム300とは異なり、全ての顔認識システム402、406、410は、データベース404、408、412に対応付けられており、全てのデータベース404、408、412は、システム400内の全ての顔認識システム404、408、412によって得られたデータのフルセットの複製を格納している。各顔認識システムは、全てのデータ変更が全ての顔認識システム402、406、408間で同期され、システム400内の全てのデータベース404、408、412に反映されるように、新しいデータ変更を他の全ての顔認識システムにブロードキャストすることができる。有利な点として、そのようなシステム400の下にある顔認識システムは、他の全ての認識システムから切り離されている場合でも、独立して機能することができる。
【0045】
図5Aは、対象主体に関連する対象主体識別子を更新するための従来システム500を示すブロック図であり、従来システム500は、分散共有主体IDレジストリとして使用される3つのサーバ504、514、524とそれぞれのデータベース506、516、526を含む。サーバA 504によって(例えば、カメラから)受信され、そのデータベース506に格納された全てのデータ502は、常にデータ同期サーバ530に送信され、その後、同期のためにサーバB 512及びサーバC 522にブロードキャストされる。このフローは、サーバB 512及びサーバC 522がデータ512、522を(例えば、カメラから)受信し、データ同期サーバ530がシステム500の残りのサーバにデータ512、522をブロードキャストする場合にも適用される。データが全てのサーバ502、512、522間で完全に同期され複製されると、各データベース506、516、526は、全てのサーバ502、512、522によって受信されたデータの完全な記録を保持する。
【0046】
図5Bは、サーバのデータベース内の対象主体に関連する対象主体識別子を更新するための別の従来システム540を示すブロック図であり、従来システム540は、分散共有主体IDレジストリとして使用される3つのサーバ552、562、572とそれぞれのデータベース554、564、574を含む。マスタサーバ544によって(例えば、カメラから)受信された全てのデータ542は、データ分割サービス546によって異なるパーティションに分割され、全てのサーバ552、562、572へ送られ、それぞれのデータベース554、564、574に格納される。
【0047】
図6Aは、本開示によるデータベースに格納された対象主体識別を適応的に更新する方法を示すフローチャート600を示す。ステップ602では、対象主体に関する対象主体情報を含むリクエストを受信して対象主体識別子(ID)を同期させるステップが、実行される。ステップ604では、受信した、データベースに格納された対象主体情報を比較し、対象主体IDの同期リクエストを受け付けるか否かを判断するステップが、実行される。
【0048】
図6Bは、本開示によるデータベースに格納された対象主体IDを適応的に更新する別の方法を示すフローチャート610を示す。ステップ612では、対象主体情報が受信される。ステップ614では、対象主体情報に第1の対象主体が割り当てられる。ステップ616では、第1の対象主体識別子をサーバの第1のデータベースに格納するステップが、実行される。ステップ618では、対象主体に関連する対象主体IDを同期するために、対象主体に関連する対象主体情報を含むリクエストを複数のサーバに送信するステップが、実行される。
【0049】
図7は、本開示に係るデータベースに格納された対象主体IDを適応的に更新するサーバを含むシステムを示すブロック図である。
【0050】
システム700は、サーバ740Aから740Nとサービス検出サーバ702とを含み、サーバ740Aから740Nのそれぞれは、対象主体ID標準化モジュール708A、ホスト750Aから750N、及びカメラ742Aから742Nと通信する。簡潔にするために、サーバ740Aと通信しているコンポーネントのみが図示されている。
【0051】
サーバ740Aは、コネクション721Bから721Nのそれぞれを介して、他のサーバ740Bから740Nと通信している。コネクション721Bから721Nは、無線で(例えば、NFC 通信、Bluetoothなどを介して)又はネットワーク(例えば、インターネット)を介してもよい。コネクション721Bから721N及び722Bから722Nは、ネットワーク(例えば、ローカルエリアネットワーク、広域ネットワーク、インターネット等)のコネクションでもよい。サーバ740Aから740Nは、ここではサーバ740と総称され、サーバ740は、複数のサーバ740のいずれかを指す。
【0052】
サーバ740は、エンティティ(例えば、サービスの会社、組織又はモデレータ)に対応付けられる。サーバ740Aは、主体ID標準化モジュール708Aと通信する。ある構成では、主体ID標準化モジュール708は、サーバ708Aを操作するエンティティによって所有され、操作される。ある構成では、主体ID標準化モジュール708Aは、サーバ740の一部(例えば、コンピュータプログラムモジュール、コンピューティングデバイスなど。)として実装される。そのような構成では、サーバ740Aと主体ID標準化モジュール708は結合され、コネクション720は相互に接続されたバスであってもよい。
【0053】
主体ID標準化モジュール708Aは、用語説明のセクションで前述したとおりである。主体ID標準化モジュールサーバ708は、データベース709に格納されている主体IDを適応的に更新する処理を実行するように構成される。
【0054】
システム700のサービス検出サーバ702は、コネクション722Aから722Nのそれぞれを介して、全てのサーバ740の主体ID標準化モジュール(例えば、サーバ740Aのそれについては708で示される)と通信する。コネクション722Aから722Nは、無線で(例えば、NFC 通信、Bluetoothなどを介して)又はネットワーク(例えば、インターネット)を介してもよい。コネクション722Aから722Nは、ネットワーク(例えば、ローカルエリアネットワーク、広域ネットワーク、インターネット等)のコネクションでもよい。
【0055】
次に、サーバ740は、それぞれのコネクション722Aから722Nを介して、ホスト750Aから750Nと通信する。コネクション722Aから722Nは、ネットワーク(例えば、インターネット)であってもよい。
【0056】
ホスト750A~750Nはサーバである。ホストという用語は、ここでは、ホスト750Aから750Nとサーバ740Aとを区別するために使用される。ホスト750Aから750Nを総称してホスト750と呼び、ホスト750は複数のホスト750のいずれかを指す。ホスト750はサーバ740と組み合わせてもよい。
【0057】
カメラ742Aから742Nは、それぞれのコネクション744Aから744Nを介してサーバ740に接続される。ここでは、カメラ742Aから742Nを総称してカメラ742と呼び、カメラ742は複数のカメラ742のいずれかを指す。ここでは、コネクション744Aから744Nを総称してコネクション744と呼び、コネクション744は複数のコネクション744のいずれかを指す。コネクション744は、無線で(例えば、NFC 通信、Bluetoothなどを介して)又はネットワーク(例えば、インターネット)を介してもよい。カメラ744は、画像キャプチャ装置、モーションセンサー及び赤外線センサーのいずれかであることができ、カメラの種類に応じて、リクエスト側デバイス702の少なくとも一方に信号を送信するように構成されてもよい。
【0058】
例示の実施形態では、サーバ740Aから740N、750及び/又はデバイス708、740のそれぞれは、他の接続されたサーバ740Aから740N、750及び/又はデバイス708及び742及び/又はサーバ702、740及び750との通信を可能にするためのインタフェースを提供する。このような通信は、アプリケーションプログラミングインタフェース(「API」)によって実現される。このような API は、グラフィカルユーザインタフェース(GUI)、ウェブベースのインタフェース、アプリケーションプログラミングインタフェース(API)及び/又はインタフェース要素に対応する一連のリモートプロシージャコール(RPC)などのプログラムインタフェース、インタフェース要素が通信プロトコルのメッセージに対応するメッセージングインタフェース、及び/又はそれらの適切な組み合わせが含まれる、ユーザインタフェースの一部であってもよい。例えば、各サーバ740Aから740Nは、ユーザが実行中にGUI上のパニックボタンを押したときに、警告信号を送信することが可能である。同様に、サーバ740からサーバ740Aから740Nにわたって主体IDを同期させるリクエストを行うことが可能である。
【0059】
サーバ740A、ホスト750及び/又は主体ID標準化モジュールは、データベース709と通信する。
図7に示すように、ある構成では、サーバ740Aとデータベース709が結合されている。別の構成では、サーバ740Aとデータベース709が分離されており、相互接続されたバスを介して接続されている。
【0060】
用語「サーバ」の本明細書での使用は、プロセッサ(例えば、サーバ740Aのプロセッサ710)を含む単一のコンピューティングデバイスを意味することができ、複数の相互接続されたコンピューティングデバイスが一緒に動作し、それぞれがプロセッサ(例えば、サーバ740Aのプロセッサ710)を含み、特定の機能を実行する。すなわち、サーバは、単一のハードウェアユニット内に含まれてもよいし、複数又は多数の異なるハードウェアユニット間に分散されてもよい。
【0061】
また、サーバ740は、ユーザの登録を管理するように構成される。登録されたユーザは、データベース709に格納されたユーザの詳細を含むリモートアクセスアカウント(上記の議論を参照)を有する。登録ステップは、オンボーディングで実行される。ユーザは、ホスト750を使用して、主体ID標準化モジュール702及びサービス検出サーバ702へのオンボーディングを行うことができる。
【0062】
サーバ740の機能にアクセスするために、サーバ740にアカウントを持つ必要はない。すなわち、いくつかの実施形態では、主体ID標準化モジュールサーバ708及びサービス検出サーバ702は、サーバ740の機能を実行することができる。しかしながら、登録ユーザによって利用可能な機能がある。例えば、データベース709に格納されている主体IDを同期するために、システム700内の他のサーバにリクエスト/レスポンスを送信することが可能である。これらの機能については、後述する。
【0063】
ユーザのためのオンボーディング処理は、ホスト750を介してユーザによって実行される。ある構成では、ユーザは、(サーバ740と対話するための API が含まれる)アプリをカメラ742にダウンロードする。別の構成では、ユーザは、サーバ740と対話するための API が含まれるウェブサイトにアクセスする。次に、ユーザは、ユーザとペアリングされたカメラ742を介してサーバ740と対話することができる。
【0064】
登録の詳細は、例えば、ユーザの名前、ユーザのアドレス、緊急連絡先及びアカウントの更新を許可されたカメラなどを含む。オンボーディングされると、ユーザは、データベース709に全ての詳細を格納するアカウントを有する。
【0065】
ホスト750
【0066】
ホスト750は、主体IDレジストリに関するリソースを管理(例:確立、管理)するエンティティ(例えば、会社や組織)又は主体(リクエスタ)に対応付けられたサーバである。ホスト750は、デスクトップコンピュータ、対話型音声レスポンス(IVR: interactive voice response)システム、スマートフォン、ラップトップコンピュータ、パーソナルデジタルアシスタントコンピュータ(PDA: personal digital assistant computer)、モバイルコンピュータ、タブレットコンピュータなどのコンピューティングデバイスである。一例の構成では、ホスト750は、腕時計又は同様のウェアラブル内のコンピューティングデバイスであり、無線通信インタフェースを備える。
【0067】
一例の構成では、エンティティは、中央安全管理者である。したがって、各エンティティは、ホスト750を操作して、そのエンティティによってリソースを管理する。ホスト750は、セキュリティ監視システムであってもよいし、主体又は他の操作に関連する情報及び主体を格納するシステムであってもよい。ホスト702は、データベース709に格納されている主体IDを適応的に更新するリクエストの当事者である主体(又はリクエスタ)と対応付けられる。一例では、ホスト750は、エンティティのセキュリティ担当者によって管理されるものであってもよく、サーバ740は、各ホスト750からのデータを管理する中央サーバである。
【0068】
ある構成では、データベース709に格納された主体IDは、全てのホスト750に対応付けられたアカウントに対して自動的に更新されうる。有利な点として、これにより、データベース709内の全てのホスト750Aから750Nに対して格納された主体IDは、全て適応的に更新され、システム700内の他の全てのサーバ740Bから740Nのそれぞれのデータベースに格納された主体IDと同期される。
【0069】
カメラ742
【0070】
カメラ742は、サーバ740Aに対応付けられたユーザに対応付けられる。カメラがどのように利用されるかの詳細は、
図8A、8B、及び11から13とそれに付随する以下の説明によって表される。
【0071】
一実施形態では、カメラは、対象主体情報を取得するように構成される。
【0072】
主体ID標準化モジュール708
【0073】
主体ID標準化モジュール708Aから708Nは、サーバ740内のモジュールであり、他のサーバ740との間で主体IDの適応的な更新や同期を行う際に利用される。システム700内の主体ID標準化モジュール708Aから780Nは、それぞれコネクション722AからNを介し、サービス検出サーバ702を通じて互いに通信する。ある構成では、主体ID標準化モジュール708Aから780Nは、サーバのメインの通信コネクション721Bから721Nを介して直接通信する。ここでは、主体ID標準化モジュール708Aから708Nを総称して主体ID標準化モジュール708と呼び、主体ID標準化モジュール708は複数の主体ID標準化モジュール708の一つを指す。
【0074】
主体ID標準化モジュール708は、データベース709に格納されている主体IDの同期のための、サーバの或る主体ID標準化モジュールから別の主体ID標準化モジュールへのリクエスト及びレスポンスを管理及び指示することにより、システム700内のサーバ740により又はその間で主体ID同期処理を適切に実行するように構成される。
【0075】
サービス検出サーバ702
【0076】
一実施形態では、データベース709に格納されている自身の主体IDレジストリを適応的に更新し、その主体IDをシステム700内の他のサーバのそれぞれのデータベースに格納されている主体IDと同期させるための主体ID標準化プロセスをサーバ740Aが開始するとき、サーバ740Aは、ネットワーク内において接続されている主体ID標準化モジュール(コネクション722Bから722Nそれぞれを介してシステム700内のサーバ740Bから740Nに接続されているもの)のリストを得るために、主体ID標準化モジュール708を介してサービス検出サーバ702へリクエストを送信しうる。接続されている主体ID標準化モジュールのリストが得られたら、サーバ740Aは、次に、他のサーバ722Bから722Nにリクエストを送信して、主体IDを同期させうる。
【0077】
図8A及び8Bは、本開示の様々な実施形態によるデータベースに格納された対象主体識別子を適応的に更新するための3つのサーバを含むシステムが示されるブロック図を表す。
【0078】
本開示によれば、サーバによって受信された対象主体に関するデータ又は情報の新しいセットのみが、サーバに存在するID標準化モジュールへ送信され、他のサーバのID標準化モジュールと共有して対象主体IDを同期させる。
【0079】
図8Aは、本開示の様々な実施形態に従って各データベース806、816、826に格納された対象主体IDを適応的に更新するための3つのサーバ802、812、822を含むシステムを表すブロック
図800を示す。サーバAからC 804、814、824のデータベース806、816、826は、サーバAからC 804、814、824によってそれぞれ受信されたデータのセットに基づいて、対象IDのそれぞれのリストを格納する。
【0080】
この実施形態では、サーバAからCは、333、812及び123セットのデータを受信及び格納している。各データセットは、サーバAからCのそれぞれと通信する1つ以上のカメラを使用して、ある時点での主体の検出に関連することができ、主体を識別する主体IDに割り当てられる。サーバ802、812、822内に格納される単一の主体IDは、2以上のデータセットに関連づけられることができ、これは例えば、それらが同じ主体から得られた場合のように、それらが高い類似性を示す場合であることが理解される。一例では、単一の主体IDに対応付けられるこのような2以上のデータセットは、主体グループ又は人物グループとして、又は以下のいくつかの実施形態では類似の主体/人物グループとして、グループ化されうる。
【0081】
サーバA 804は、データソース802から新しいデータセットを受信し、それをデータベース806に格納されている各データセットと比較して、新しいデータセットがデータベース806に格納されているいずれかのデータセットと一致するかどうかを判定しうる。サーバA 804は、新しいデータセット(以下、「新規データ」という)が、データベース806に格納されている主体IDに対応付けられた照合されているデータセット(以下、「一致データ」という)と十分に一致することを特定し、したがって、既知の主体を識別する主体IDにその新規データセットを割り当てる。同様に、サーバB 814及びサーバC 824は、それぞれのデータソース812、822から新規データを受信し、それらをそれぞれのデータベース816、826に格納されている各データセットと比較して、データベース816、826に格納されている一致データを特定し、一致したデータに対応付けられたそれぞれの主体IDに新しいデータ812、822を割り当てることができる。
【0082】
サーバAからC 804、814、824の各々は、データベース806、816、826に格納されている主体IDを更新及び同期するために利用されるID標準化モジュール808、818、828を備えうる。システム内の全てのID標準化モジュール808、818、823は、コネクション810、820、830それぞれを介してサービス検出サーバ832とさらに通信することができる。各ID標準化モジュール808、818、823は、そのオンライン及びオフライン状態をサービス検出サーバ832に登録及び更新する。
【0083】
前述したように、異なるサーバ802、812、822によって受信された或る主体を識別する同一のデータセットであっても、異なる主体IDに割り当てられ、異なるサーバ802、812、822内のデータベース806、818、828それぞれに格納されてもよい。したがって、異なるサーバ802、812、822間で同一の主体を識別する主体IDを適応的に更新し、異なるサーバ802、812、822間で使用される単一の主体IDに同期させる必要がある。
【0084】
本開示によれば、サーバが受信した対象主体に関する新規データ又は情報のみが、サーバに常駐するID標準化モジュールに送信され、他のサーバのID標準化モジュールと共有して対象主体IDが同期される。
【0085】
サーバA 804が、データベース806に格納されているどのデータセットとも十分に一致しない新しいデータセットをデータソース802から受信した場合、サーバA 802は、対象主体に対応付けられるべき新しいデータセットを識別し、新しいデータセットに対象主体IDを割り当てることができる。対象主体IDは、対象主体を識別する任意の更なる新しいデータセット、すなわち、サーバA 802によって受信された新しいデータセットと十分に類似したデータセットへの割り当てに利用できる。
【0086】
対象主体を識別するためにサーバA 804によって作成されたこのような対象主体IDは、適応的に更新され、他のサーバ812、822と同期されてもよい。サーバA 804は、対象主体IDを、対応付けられたデータと共に自身のID標準化モジュール808に送信することによって、対象主体IDの同期リクエストを送信してもよい。このようにして、ID標準化プロセスが起動される。
【0087】
サーバA 804のID標準化モジュール808は、サービス検出サーバ832を介して、接続された(又はオンラインの)ID標準化モジュール(例えば、サーバB及びC 814、824のID標準化モジュール818、828)のリストを取得しうる。その後、ID標準化モジュールは、対象主体IDとデータが含まれるリクエストを、サービス検出サーバ832を介して、サーバB 814及びサーバC 824に転送しうる。サーバB 814及びサーバC 824は、サーバA 804から受信したデータセットを、データベース816、826それぞれに格納されているデータセットと比較し、その後、同じコネクション810、820、830を介してサーバAにレスポンスを送信して、そのようなリクエストを受け入れ又は拒否しうる。一実施形態では、サーバB及びサーバC 814、824の両方が、サーバA 804からのリクエストを受け入れ、それぞれのレスポンスをサーバA 804に返信することによって、ID標準化プロセスに参加することができる。このようなレスポンスは、サーバA 804によって送信された一連のデータと十分に一致する一致データと、サーバB及びC 814、824のデータベース816、826それぞれに格納されている対応する対象主体IDとを含む。そして、参加サーバB及びC 814,824からのレスポンス、一致したデータ及び対象主体IDを受信したサーバA 804は、全ての参加サーバAからC 804、814、824の対象主体IDの中から一つの対象主体IDを選択し、選択された一つの対象主体IDを全ての参加サーバAからC 804、814、824間で同期させる(すなわち、対象主体を識別するために予め全ての参加サーバAからC 804、814、824のデータベースに格納されている主体IDが、その後の対象主体のさらなる識別及び対象主体IDの割り当てに利用される選択された1つの対象主体IDに置き換えられる。)。
【0088】
図8Bは、本開示の様々な実施形態に係る、データベース846、856、866それぞれに格納されている対象主体IDを適応的に更新するための3つのサーバ844、854、864が含まれるシステムを表すブロック
図840を示す。サーバAからC 844、854、864のデータベース846、856、866は、サーバAからC 846、856、866それぞれによって受信されたデータセットに基づいて、主体IDのそれぞれのリストを格納する。各ID標準化モジュール848、858、868のオンライン及びオフライン状態を追跡するために、サーバAからC 844、854、864に設けられたID標準化モジュール848、858、868と通信するサービス検出サーバがないことを除いて、
図8BのサーバAからC 844、854、864の動作は、
図8AのサーバAからC 804、814、824と同様である。その代わりに、各サーバは、データベース846、856、866それぞれに格納された主体IDの更新及び同期の動作のために、ID標準化モジュール848、858、868を介して他のサーバと直接通信する。
【0089】
特に、サーバA 844が、データベース846に格納されているいずれのデータセットとも十分に一致しない新たなデータセットをデータソース842(例えば、サーバAと通信する1つ以上のカメラ)から受信した場合、サーバA 844は、対象主体に対応付けられる新しいデータセットを識別し、新しいデータセットに対象主体IDを割り当てうる。その対象主体IDは、サーバA 842によって受信される、その対象主体を識別する(すなわち、前述の新たなデータセットに十分に類似する)任意のさらなる新たなデータセットに割り当てるために使用することができる。サーバA 842によって作成された、対象主体を識別するための対象主体IDは、サーバB及びC 854、864と適応的に更新及び同期されてもよい。サーバA 804は、対象主体IDを、対応付けられたデータとともに自身のID標準化モジュール808に送信することによって、対象主体IDを同期させるリクエストを送信することができ、このリクエストは、コネクション850、860を介してサーバB及びC 854、864のID標準化モジュール858、868にそれぞれ直接送られる。このようにして、ID標準化プロセスが起動される。
【0090】
続いて、サーバB 854及びサーバC 864は、サーバA 844から受信したデータセットを、データベース856、866それぞれに格納されているデータセットと比較し、続いて同じコネクション850、860を介してサーバAにレスポンスを送信して、そのようなリクエストを受け入れ又は拒否することができる。サーバB及びサーバC 814、824の両方がID標準化プロセスに参加し、サーバA 804からのリクエストを受け入れる場合、サーバB及びサーバC 854、864は、サーバA 804が送信したデータセット及びデータベース856、866それぞれに格納されている対応する対象主体IDと十分に一致するデータセットを送信レスポンスに含める。参加サーバB及びサーバC 854、864からのレスポンス、一致データ及び対象主体IDを受信したサーバA 844は、次に、全ての参加サーバAからC 844、854、864の対象主体IDのうちの1つの対象主体IDを、全ての参加サーバAからC 844、854、864にわたって選択する。選択された対象主体IDは、対象主体のさらなる識別及び対象主体IDの割り当てのために、対象主体を識別するサーバAからC 804、814、824のデータベースに以前に格納されていた全ての主体IDと置き換えられる。
【0091】
図9は、一実施形態による対象主体IDを同期させるためのリクエストを受信し、レスポンスを送信するプロセスが示されるフローチャート900を示す。サーバのID標準化モジュールから、対象主体IDの同期リクエスト902が受信される。このリクエスト902には、そのサーバに格納されている対象主体IDと、その対象主体を識別する関連データ(以下、「新規データ」という)が含まれていてもよい。このリクエストを受信すると、対象主体IDを同期するリクエストを受け付けるか否かが判断され、その判断結果(リクエストを受け付けるか否か)がサーバに返信される。データベース904に格納されている各データ(以下、「格納データ」という)に対して検索・比較を行い、新規データに類似するデータを検索するステップ。この例では、データベースは、3つの異なる主体を識別するそれぞれの主体IDを持つ3つの主体グループを格納する。データベースには、主体ID「PID_01」の下に5つのデータセット(主体1の5つの検出)、主体ID「PID_02」の下に4つのデータセット(主体2の4つの検出)、及び主体ID「PID_03」の下に6つのデータセット(主体3の6つの検出)が格納される。
【0092】
比較ごとに、新規データと格納されたデータとの間の類似度を示す一致スコアが計算される。一致スコアは、パーセンテージで表され、0%から100%までスケーリングされる。0%の類似度は、新規データと格納されたデータが類似したデータを含まないことを示し、100%の類似度は、新規データが格納されたデータと同一であることを示し、同じデータセットに対応する。
【0093】
一例では、主体グループの下のデータは、主体グループの下の任意のデータセットが最大の一致スコアを有する場合に、リクエスト902内の受信したデータセットに最も近い一致(最高の一致データセット)として特定される。別の例では、主体グループの下の全てのデータセットが平均で最高の一致スコアを示す場合に、主体グループの下のデータは、リクエスト902内の受信したデータセットに最も近い一致として特定される。
【0094】
この実施形態では、主体ID「PID_02」(以下、「一致データ」、「一致グループ」及び「一致対象ID」という)を持つ主体グループ906の下のデータは、リクエスト902内の受信したデータセットに最も近い一致として特定され、一致スコアは 69.23% であるため、さらなる検討のために取得される。本開示によれば、一致データの一致スコアは、予め定義された最小類似データ一致スコアと照合される。一致スコアが予め定義された最小スコアよりも小さい場合、ステップ912が実行され、対象主体IDを同期するリクエスト902を拒否するレスポンスが生成される。これは、類似度が所望のレベルに達していない一致データを排除し、後続の選択プロセスにおいて受信データと十分に類似している一致データのみを許可する。
【0095】
一致スコアが事前に定義された最小スコアよりも大きい場合、ステップ908が実行される。検出数、顔正面スコア及び最終検出時点などといった、一致グループの参照データのセットが取得され、対応するデータ基準のセットについてチェックされる。この実施形態では、一致データ906は、それらの参照データが、少なくとも、最小検出数2回、最大顔正面スコア 0.5、及び5年以内の最終検出時点という基準を満たすかどうかがチェックされる。それらの参照データが、基準の少なくとも一つを満たさない場合、ステップ912が実行され、そこで拒絶レスポンスが生成される。
【0096】
この実施形態では、一致データ906は、検出の合計数が4、最大の顔正面スコアが 0.82、及び最終検出時点が2020年6月13日の午後1時6分43秒である。一致データ906の参照データのセットは全ての基準を満たすため、次のステップ910を実行することができる。
【0097】
ステップ910は、現在の一致データを履歴データと比較するステップ。履歴データは、対象主体IDを同期するために他のサーバから受信した全てのリクエストに対応づけられている対象主体を識別するデータのセットと、そのようなリクエストを受け入れるための全てのレスポンスに含まれる一致データと、リクエスト902を受信する前の全ての対象主体ID選択プロセスの結果として受信された、選択された対象主体IDとを含むことができる。一実施形態では、一致グループに関連する履歴データのレコードが見つからない場合、ステップ910はステップ914にスキップされる。ステップ918、920、922、928及び930を含むステップ910の処理の詳細は、フローチャート911及び後述のテキストに示される。
【0098】
フローチャート911を参照して、ステップ910のステップ918において、一致主体グループ及び一致主体ID「PID_0002」に関する履歴データを取得する。このような履歴データは、主体ID及び主体を識別する関連データセットが格納されるデータベースとは別に、履歴リクエスト・結果データベース924に格納されうる。ステップ920では、一致グループ及び一致主体ID「PID_0002」に関連する以前のリクエストを受け入れたレコードがあるかどうかが判定される。レコードが見つからない場合は、ステップ912が実行され、リクエスト902を拒否するレスポンスが生成される。
【0099】
一致グループ及び一致主体IDに関連する以前のリクエストを受け入れる少なくとも1つのレコードが見つかった場合は、ステップ922が実行される。ステップ922では、現在の一致データ906が、以前のリクエストに対応付けられた履歴データと比較される。一実施形態では、一致データの対応する参照情報と履歴データが、圧縮に利用される。現在の一致データが、それらの参照情報に基づいて履歴データよりも良いと判断された場合(例えば、検出数が多い、顔正面スコアが大きい、及び/又は検出時点が新しい場合)、ステップ930が実行され、リクエスト902を受け入れるレスポンス914が実行される。レスポンスは、(i) 一致主体ID、(ii) 一致データ908と、一致スコアが最も大きい一致主体グループのデータセットの1つとのいずれか、(iii) 一致データ908の参照データを含む。それ以外の場合、ステップ912が実行され、対象主体IDを同期するリクエスト902を拒否するレスポンスが生成される。
【0100】
様々な実施形態において、同一のリクエスト902に応じて、レスポンス及び他のサーバからの多くのレスポンスが、サーバに返信された後である。サーバは、それぞれのサーバから受信したレスポンスの主体IDから一つの主体IDを選択するために、主体ID選択プロセスを開始することができる。一実施形態において、選択結果及び選択された主体IDは、その後、リクエストを受け入れて応答した全てのサーバのID標準化モジュール926に返送され、選択された主体IDは、その後、サーバに格納されている一致IDを更新及び置換するため、サーバによって使用される。別の実施形態において、選択結果及び選択された主体IDは、システム内の接続されている全てのサーバに送信され、今後の比較のために、それぞれの履歴リクエスト・結果データベース924に格納される。一実施形態によれば、選択プロセスは、レスポンスに含まれる、対応する参照情報を利用することができる。選択プロセスの詳細については、
図10及び以下の記述で説明される。
【0101】
図10Aは、3つのサーバ(例:サーバAからC)から受信した3つのレスポンス1002、1004、1006と、本開示の実施形態において3つの主体IDから1つを選択する選択プロセスとを表す概念
図1000を示しており、各レスポンスは、データと、対象主体を識別する対象主体IDとを含む。この実施形態では、対象主体IDの選択は、例えば、対象主体IDに対応づけられている対象主体グループ内のデータセットの数を算出することによる、対象主体の最大総検出数に関する参照情報に基づいている。サーバAからCから受信したレスポンス1002、1004、1006は、対象主体の検出数がそれぞれ34、8、28である。その結果、レスポンス1002のデータが選択され、サーバAに格納されている対応する対象主体ID 10010 が、サーバAからC間の対象主体IDの同期に使用される。すなわち、サーバB及びCに格納されている対象主体を識別する対象主体ID 22311 及び 12314 が、対象主体ID 10010 に置き換えられ、サーバAからCにまたがって同期的に、対象主体が対象主体ID 10010 によって示される。
【0102】
図10Bは、3つのサーバ(例:サーバAからC)から受信した3つのレスポンス1012、1014、1016と、本開示の別の実施形態において3つの主体IDから1つを選択する選択プロセスとを表す概念
図1010を示しており、各レスポンスは、対象主体を識別するデータ及び対象主体IDを含む。この実施形態において、対象主体IDの選択は、対象主体を識別するデータセットの最大の正面顔スコアに関する参照情報に基づいている。一実施形態において、正面顔スコアは、顔情報及び/又は顔の露出領域を撮像するカメラへ向かう角度に対する、顔の角度及び方向に基づいて計算される。この例では、サーバAからCから受信したレスポンスに含まれる全てのデータセットのうち、データセットの最大正面顔スコアは、それぞれ 48.10%、56.78% 及び 98.00% である。その結果、レスポンス1016内のデータが選択され、サーバCに格納されている対応する対象主体ID 31130 が、サーバAからC間の対象主体IDの同期に使用される。つまり、サーバA及びBに格納されている対象主体を識別する対象主体ID 10010 及び 20210 が対象主体ID 10010 に置き換えられ、サーバAからCにまたがって同期的に、対象主体が対象主体ID 10010 によって示される。
【0103】
図10Cは、3つのサーバ(例:サーバAからC)から受信した3つのレスポンス1022、1024、1026と、本開示のさらに別の実施形態において3つの主体IDから1つを選択する選択プロセスとを表す概念
図1020を示しており、各レスポンスは、対象主体を識別するデータ及び対象主体IDを含む。この実施形態において、対象主体IDの選択は、対象主体の最新の検出に関する参照情報に基づいている。レスポンス1022、1024、1026において、サーバAからCは、それぞれ2020年1月1日、2020年2月1日及び2020年2月29日に、対象主体を最後に検出した。したがって、サーバCからのレスポンス1026のデータは、対象主体の最新の検出を示す。その結果、レスポンス1026のデータが選択され、サーバCに格納されている対応する対象主体ID 9042 が、サーバAからC間の対象主体IDの同期に使用される。すなわち、サーバA及びBに格納されている対象主体を識別する対象主体ID 2219 及び 10010 が、対象主体ID 9042 に置き換えられ、サーバAからCにまたがって同期的に、対象主体が、対象主体ID 9042 によって示される。
【0104】
図11は、本開示の一実施形態に係るサーバのデータベースに格納されている情報と、受信した対象主体情報(データ)とを比較する処理が表される、フローチャート1100を示す。本実施形態において、この処理は、サーバA 1101によって実行される。この処理は、ステップ1102で開始され、ビデオ又は画像フレームが、ビデオファイル又はカメラストリームの形式で、映像ソース入力(例えば、サーバと通信中の1つ以上のカメラ)から受信される。ステップ1104では、映像ソースからの画像フレームから、主体を識別する一連の顔情報(以下、「新規顔情報」という)が検出される。また、一連の顔情報から、顔品質スコア、正面顔スコアなどの顔情報の基準情報が算出されてもよい。ステップ1106では、次に、新規顔情報が、サーバAのローカルデータベース1107に格納されている顔情報のリストと比較され、(主体IDに対応付けられている)一致主体グループを見つける(特にこの例では、(グループIDに対応づけられている)類似人物グループ)。顔情報のリストには、データベース1107において、グループID「PID_1001」の下で格納されている5組の顔情報(主体1の5つの検出)、類似人物グループID「PID_1002」の下で格納されている6組の顔情報(主体2の6つの検出)、及びグループID「PID_10003」の下で格納されている4組の顔情報(主体3の4つの検出)が存在する。特に、ステップ1106では、データベースに格納されている主体を識別する各顔情報のセットを、ステップ1104で新規顔情報と比較する。各比較において、新規顔情報とデータベースに格納されている顔情報のセットとの間の類似度を表す一致スコアが算出される。
【0105】
ステップ1108では、一致が見つかったかどうかが判定される。本開示の一実施形態では、データベース1107に格納されている一連の顔情報と新規顔情報とを比較した一致スコアが、事前に定義された最小一致スコアよりも大きい場合に一致が見つかり、一致は、そのような顔情報に割り当てられた、対応する類似人物グループ(及びグループID)となる。本開示の別の実施形態では、データベース1107に格納されている複数の顔情報のセットが、事前に定義された最小一致スコアよりも大きい一致スコアを有する場合、一致は、最大の一致スコアを示す顔情報のセットに対応づけられた対象グループ(以下、それぞれ「一致グループ」及び「一致顔情報」という)となる。
【0106】
ステップ1108で一致が見つかった場合、ステップ1112が実行される。新規顔情報は、一致グループに対応するグループIDに割り当てられ、一致スコアが最大である一致顔情報に割り当てられる。新規顔情報は、グループIDの下にある類似人物グループに対応付けられている顔情報のリストの一部としてデータベースに格納される。一方、一致が見つからない場合、例えば、顔情報のセットのいずれも、事前に定義された最小一致スコアより大きい一致スコアを持たない場合、ステップ1110でID標準化プロセスが開始される。ID標準化プロセスの詳細は、以下のテキスト及び
図12のステップ1214から1244及び
図13のステップ1322から1328のそれぞれで説明される。
【0107】
図12及び13は、
図11の続きであり、本開示の実施形態に係るサーバのデータベースに格納されている対象主体識別子を適応的に更新するプロセスが表される2つのフローチャート1200、1300を示す。
図12のフローチャート1200を参照すると、ステップS1108が実行された後で、かつ、一致が見つかれないと判定された場合、ステップ1214において、新たな類似人物グループ及び新たなグループID(対象主体ID)を作成し、ステップ1104で抽出された新規顔情報にそれを割り当てることと、ステップS1216において、新規顔情報と新たなグループIDとが含まれる新たな類似人物ループ情報をサーバAのID標準化モジュールに送信することとにより、ID標準化プロセスがサーバAによって初期化される。ステップ1218において、新規顔情報及び新たなグループIDが含まれる類似人物グループ情報をサーバB等の他のサーバに送信し、新たなグループIDを同期させるステップ。簡潔にするため、接続されている1つのサーバ、すなわちサーバBの処理のみを図示する。ステップ1222では、サーバBからレスポンスを受信したかどうかを判定する。レスポンスを受信しなかった場合は、ステップ1220を実行してレスポンスを待つ。
【0108】
サーバBを参照すると、ステップ1232では、サーバAから、新規顔情報と新しいグループIDが含まれる類似人物グループ情報を含むリクエストを受信する。このリクエストを受信すると、サーバBは、新しいグループIDを同期するためにこのリクエストを受け入れるかどうかを判定し、判定結果(リクエストを受け入れるか拒否するか)をサーバに返信する。特に、ステップ1234では、新規顔情報は、次に、サーバBのローカルデータベース1107に格納されている顔情報のリストと比較され、この例では特に、(グループIDに対応付けられている)一致対象グループを見つける。ステップ1236では、サーバBのローカルデータベースに格納されている顔情報のリストが取得され、サーバBに類似人物グループの一致があるかどうかが判定される。サーバBで実行されるステップ1234、1236は、サーバAで実行されるステップ1106、1108と同様である一方で、新規顔情報がサーバBのローカルデータベースと比較され、サーバBの類似人物グループに対応付けられている顔情報のセットとの構成に基づいて、一致スコアが計算される。一致が見つからない場合、例えば、サーバBのローカルデータベース内の顔情報のセットのいずれも、事前に定義された最小一致スコアよりも大きい一致スコアを持たない場合、ステップ1238が実行され、サーバAから受信したリクエストを拒否するレスポンスが生成される。詳細については、
図13で説明される。
【0109】
(グループIDを持つ)類似人物グループの一致がサーバBで見つかった場合、例えば、類似人物グループの顔情報のセットが、事前に定義された最小一致スコアよりも大きい一致スコアを持つ場合、ステップ1240が実行される。一実施形態では、一致が検出されたかどうかを判定するステップは、上記及び
図9のステップ908、910で説明したように、類似人物グループに対応付けられた顔情報のセットの参照情報及び履歴情報が基準のセットを満たすかどうかを判定するステップを含む。ステップ1240では、グループIDに対応付けられた顔情報のセット内で関連性が最大である顔情報のセット(最も類似した顔、例えば顔正面スコアが最も大きい)が選択される。ステップ1241では、最も類似した顔を持つレスポンスがサーバAに返信され、サーバAによって送信されたリクエストを受け入れ、グループIDの同期に参加する。サーバAの処理に戻り、ステップ1222では、サーバB(及び他の接続サーバ)からのレスポンスを受信したと判定されると、ステップ1224が実行される。
【0110】
ステップ1224では、サーバB及びリクエストを受け付けた他の参加サーバのレスポンスで受信した顔情報と類似人物グループのセットを受信すると、それらを比較し、その中で最も好ましい顔情報のセットと関連性が最大である類似人物グループを選択するための選択基準が使用される。上記の選択プロセスと選択基準については、前述されており、かつ、
図10AからCに表されている。ステップ1226では、選択された類似人物グループの選択されたグループIDがサーバB及び全ての参加サーバにブロードキャストされる。ステップ1228では、サーバAの類似人物グループのグループIDが、選択されたグループIDに更新される。次に、更新されたグループIDに対応付けられた新規顔情報がサーバAのローカルデータベースに格納される。同様に、ステップ1244では、サーバB及び他の参加サーバ(図示せず)の一致類似人物グループIDが、選択されたグループIDに更新される。次に、更新されたグループIDに対応付けられた顔情報が、サーバB及び他の参加サーバのそれぞれのローカルデータベースに格納される。ID標準化プロセスは、終了することができる。
【0111】
図13は、処理ステップ1236及び1238の詳細を提供し、特に、一致が見つからないと判断され、グループIDを同期するためにサーバAから受信したリクエストを拒否するレスポンスがサーバAに返信される場合である。これは、サーバBが、新規顔情報及び対象主体の識別に関連する類似の情報がローカルデータベースに格納されておらず、IDの同期が必要でないことを特定することを示す。
【0112】
サーバAの処理に戻り、ステップ1238に続くステップ1322において、サーバB(及び他の接続サーバ)からのレスポンスを受信したと判断されると、ステップ1324が実行される。ステップ1324では、リクエストを受け入れた全ての参加サーバのレスポンスにおいて受信された顔情報のセットと類似人物グループを受信すると、選択基準を用いてそれらを比較し、その中で最も好ましい顔情報のセットと関連性が最大である類似人物グループとを選択する。
【0113】
ステップ1328では、サーバAの類似人物グループのグループIDを、選択されたグループIDに更新する。その後、更新されたグループIDに対応付けられた新規顔情報が、サーバAのローカルデータベースに格納される。サーバBはグループIDの同期リクエストを受け入れるレスポンスを送信しなかったため、対象主体IDの結果は、サーバBに送信されない。
【0114】
図14は、例示コンピューティングデバイス1400を示しており、以下、コンピュータシステム1400と同義である。このようなコンピューティングデバイス1400は、
図6Aと
図6Bに示される方法を実行するために使用することができる。例示コンピューティングデバイス1400は、
図7に示すシステム700を実装するために使用することができる。コンピューティングデバイス1400の以下の説明は、あくまで例示であり、限定することを意図していない。
【0115】
図14に示されるように、例示コンピューティングデバイス1400は、ソフトウェアルーチンを実行するためのプロセッサ1404を含む。明確にするために単一のプロセッサが示されているが、コンピューティングデバイス1400はマルチプロセッサシステムも含むことができる。プロセッサ1404は、コンピューティングデバイス1400の他のコンポーネントと通信するために通信基盤7406に接続される。通信基盤1406は、例えば、通信バス、クロスバー、又はネットワークを含むことができる。
【0116】
コンピューティングデバイス1400は、さらに、ランダムアクセスメモリ(RAM)のような主記憶要素1408と、補助記憶要素1410とを含む。補助記憶要素1410は、例えば、ハードディスクドライブ、ソリッドステートドライブ又はハイブリッドドライブである記憶ドライブ1412及び/又は磁気テープドライブ、光ディスクドライブ、ソリッドステートストレージドライブ(USB フラッシュドライブ、フラッシュメモリデバイス、ソリッドステートドライブ、メモリカードなど)などを含むリムーバブル記憶ドライブ1414を含むことができる。リムーバブル記憶ドライブ1414は、周知の順序でリムーバブル記憶媒体からの読み取り及び/又はリムーバブル記憶媒体1418への書き込みを行う。リムーバブル記憶媒体1418は、磁気テープ、光ディスク、不揮発性メモリ記憶媒体などを含み、リムーバブル記憶ドライブ1414によって読み書きされる。当業者には理解されるように、リムーバブル記憶媒体1418は、コンピュータ実行可能プログラムコード命令及び/又はデータを格納したコンピュータ読み取り可能な記憶媒体を含む。
【0117】
別の実施形態において、補助記憶要素1410は、コンピュータプログラム又は他の命令をコンピュータデバイス1400にロードすることを可能にする他の同様の手段を追加的に又は代替的に含むことができる。このような手段は、例えば、リムーバブル記憶部1422及びインタフェース1420を含むことができる。リムーバブル記憶部1422及びインタフェース1420の例は、プログラムカートリッジ及びカートリッジインタフェース(ビデオゲームコンソール装置に見られるもののような)、リムーバブル記憶チップ(EPROM 又は PROM のような)及び関連ソケット、リムーバブルソリッドステート記憶ドライブ(USB フラッシュドライブ、フラッシュメモリデバイス、ソリッドステートドライブ、メモリカードなど)、及びソフトウェア及びデータをリムーバブル記憶部1422からコンピュータシステム1400に転送することを可能にする他のリムーバブル記憶部1422及びインタフェース1420を含む。
【0118】
コンピュータデバイス1400はまた、少なくとも一つの通信インタフェース1424を含む。通信インタフェース1424は、通信路1424を介してコンピュータデバイス1400と外部装置との間でソフトウェア及びデータを転送することを可能にする。本発明の様々な実施形態において、通信インタフェース1424は、コンピュータデバイス1400と公衆データ又は私的データ通信ネットワークのようなデータ通信ネットワークとの間でデータを転送することを可能にする。通信インタフェース1424は、このようなコンピューティングデバイス1400が相互接続されたコンピュータネットワークの一部を形成する異なるコンピューティングデバイス1400間でデータを交換するために使用されてもよい。通信インタフェース1424の例は、モデム、ネットワークインタフェース(例えばイーサネットカード)、通信ポート(シリアル、パラレル、プリンタ、GPIB、IEEE 1394、RJ45、USBなど)、関連する回路を有するアンテナ等を含むことができる。通信インタフェース1424は、有線であってもよいし、無線であってもよい。通信インタフェース1424を介して転送されるソフトウェア及びデータは、電子的、電磁的、光学的又は通信インタフェース1424によって受信可能な他の信号であってもよい信号の形態である。これらの信号は、通信路1424を介して通信インタフェースに提供される。
【0119】
図14に示すように、コンピューティングデバイス1400は、関連するディスプレイ1430に画像をレンダリングする操作を実行するディスプレイインタフェース1402と、関連するスピーカ1434を介してオーディオコンテンツを再生する操作を実行するオーディオインタフェース1432とをさらに含む。
【0120】
本明細書で使用される用語「コンピュータプログラム製品」は、部分的には、リムーバブル記憶媒体1418、リムーバブル記憶部1422、記憶ドライブ1412に取り付けられたハードディスク、又は通信路1426(無線リンク又はケーブル)を介して通信インタフェース1424に搬送波を搬送するソフトウェアを指す。コンピュータ可読記憶媒体は、実行及び/又は処理のために記録された命令及び/又はデータをコンピューティングデバイス1400に提供する任意の非一時的で不揮発性の有形記憶媒体を指す。このような記憶媒体の例としては、磁気テープ、CD-ROM、DVD、Blu-ray(登録商標)ディスク、ハードディスクドライブ、ROM 又は集積回路、ソリッドステート記憶ドライブ(USB フラッシュドライブ、フラッシュメモリデバイス、ソリッドステートドライブ、メモリカードなど)、ハイブリッドドライブ、光磁気ディスク、又は PCMCIA カードなどのコンピュータ読み取り可能なカードなどがあり、これらのデバイスがコンピュータデバイス1400の内部又は外部にあるかどうかは問わない。コンピュータデバイス1400へのソフトウェア、アプリケーションプログラム、命令及び/又はデータの提供にも関与することができる一時的又は非有形のコンピュータ読み取り可能な伝送媒体の例としては、無線又は赤外線伝送チャネル、他のコンピュータ又はネットワーク化されたデバイスへのネットワーク接続、及び電子メール送信及びウェブサイトなどに記録された情報を含むインターネット又はイントラネットなどがある。
【0121】
コンピュータプログラム(コンピュータプログラムコードとも呼ばれる)は、主記憶要素1408及び/又は補助記憶要素1410に格納される。コンピュータプログラムは、通信インタフェース1424を介して受信することもできる。そのようなコンピュータプログラムが実行されると、コンピューティングデバイス1400は、本明細書で説明する実施形態の一つ以上の特徴を実行することができる。様々な実施形態において、コンピュータプログラムが実行されると、プロセッサ1404は、上述の実施形態の特徴を実行することができる。従って、そのようなコンピュータプログラムは、コンピュータシステム1400のコントローラを表す。
【0122】
ソフトウェアは、コンピュータプログラム製品に格納され、リムーバブル記憶ドライブ1414、記憶ドライブ1412、又はインタフェース1420を使用してコンピューティングデバイス1400にロードされうる。コンピュータプログラム製品は、非一時的なコンピュータ可読媒体であってもよい。あるいは、コンピュータプログラム製品は、通信路1426を介してコンピュータシステム1400にダウンロードされてもよい。ソフトウェアは、プロセッサ1404によって実行されると、
図6A及び6Bに示される方法を実行するために必要な操作をコンピューティングデバイス1400に実行させる。
【0123】
図14の実施形態は、システム400の動作及び構造を説明するために、単に例として提示されていることを理解されたい。したがって、いくつかの実施形態では、コンピューティングデバイス1400の一つ以上の特徴を省略することができる。また、いくつかの実施形態では、コンピューティングデバイス1400の一つ以上の特徴を一緒に組み合わせることができる。さらに、いくつかの実施形態では、コンピューティングデバイス1400の一つ以上の特徴を一つ以上の構成部品に分割することができる。
【0124】
図14に示された要素は、上記実施形態で説明されたようなサーバの様々な機能及び動作を実行するための手段を提供するように機能することが理解されるであろう。
【0125】
コンピューティングデバイス1400がトランスポートプロバイダーの効率を最適化するように構成されている場合、コンピューティングシステム1400は、非一時的なコンピュータ可読媒体を有することができ、その中には格納されるアプリケーションは、実行されたときに、コンピューティングシステム1400にステップを実行させ、その中には以下が含まれる:最初の場所でトランスポートプロバイダーによって管理される車両の最初の出発時刻を受信する。最初の場所の後に位置する2番目の場所で車両の2番目の出発時刻を受信する;最初の出発時刻と2番目の出発時刻の差を決定する;及び現在のスケジュールを更新して、差の決定に応じて更新されたスケジュールを提供し、更新されたスケジュールは、2番目の場所の後の場所での車両の更新された推定到着時刻を示す。
【0126】
当業者には、広く記載された本発明の精神又は範囲から逸脱することなく、特定の実施形態に示されるように、本発明にさまざまな変形及び/又は修正を加えることができることが理解されるであろう。したがって、本実施形態は、全ての点において例示的であり、限定的ではないと考えられる。
【0127】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに提供することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM、CD-R、CD-R/W、半導体メモリ(例えば、マスク ROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体によってコンピュータに提供されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0128】
この出願は、2021年3月29日に出願されたシンガポール特許出願 No. 10202103210R を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【手続補正書】
【提出日】2023-09-21
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
データベースに格納されている対象主体識別子を適応的に更新するためのサーバ
装置であって、
前記対象主体識別子は、リクエストを送信するように構成された他のサーバ
装置が含まれるシステムにおける対象主体と関連し、
前記サーバ
装置は、
前記他のサーバ
装置から、前記対象主体に関連する対象主体情報が含まれる前記リクエストを受信し、前記対象主体識別子を同期させ、
前記受信した対象主体情報と、前記データベースに格納されている情報とを比較して、前記対象主体識別子を同期させる前記リクエストを受け入れるか否かを判定する、サーバ
装置。
【請求項2】
前記比較の結果に基づいて、前記リクエストを受け入れるレスポンスを前記他のサーバ
装置に送信
し、
前記レスポンスは、前記対象主体識別子と前記データベースに格納されている前記情報とを含む、請求項1に記載のサーバ
装置。
【請求項3】
前記データベースに格納されている前記情報と前記対象主体情報との類似度を特定
し、
前記比較は前記類似度に基づく、請求項1又は2に記載のサーバ
装置。
【請求項4】
前記データベースに格納されている前記情報内の参照情報が、1つ以上の基準を満たすか否かを判定し、
前記参照情報は、前記対象主体識別子の下での前記対象主体の検出の数と、前記検出における顔の向き又は露出の度合いに関連するスコアと、前記対象主体の検出時点とのうちの少なくとも1つを含み、
前記比較は、前記参照情報に係る判定に基づく、請求項1に記載のサーバ
装置。
【請求項5】
前記リクエストを受け入れる前記レスポンスの送信の後、前記データベース内の前記対象主体識別子を更新す
る、請求項2に記載のサーバ
装置。
【請求項6】
データベースに格納されている対象主体識別子を適応的に更新するためのサーバ
装置であって、
前記対象主体識別子は、複数のサーバ
装置が含まれるシステムにおける対象主体と関連し、
前記サーバ
装置は、
対象主体情報を受信し、
前記
受信した対象主体情報に第1の対象主体識別子を割り当て、前記第1の対象主体識別子を前記サーバ
装置の第1のデータベースに格納し、
前記複数のサーバ
装置に対して、前記対象主体識別子を同期させるリクエストを送信し、
前記リクエストは、前記対象主体に関連する前記対象主体情報を含む、サーバ
装置。
【請求項7】
前記複数のサーバ
装置に
含まれる1つ以上のサーバ
装置から、1つ以上のレスポンスを受信
し、
前記1つ以上のレスポンスのそれぞれは、前記1つ以上のサーバ
装置のうちの1つから受信され、前記
1つ以上のサーバ
装置のうちの前記1つが前記対象主体識別子を同期させる前記リクエストを受け入れることを示し、
前記1つ以上のレスポンスのそれぞれは、前記1つ以上のサーバ
装置のうちの前記1つにおけ
る第2のデータベースに格納されている情報と、前記格納されている情報に割り当てられてい
る第2の対象主体識別子とを含む、請求項6に記載のサーバ
装置。
【請求項8】
前記1つ以上のサーバ
装置から受信された前記情報の各参照情報を比較し、
前記参照情報は、前記対象主体識別子の下での前記対象主体の検出の数と、前記検出における顔の向き又は露出の度合いに関連するスコアと、前記対象主体の検出時点とのうちの少なくとも1つを含む、請求項7に記載のサーバ
装置。
【請求項9】
前記比較の結果に基づいて、前記1つ以上のレスポンスに対応づけられてい
る1つ以上の
前記第2の対象主体識別子のいずれか1つ、又は、前記第1の対象主体識別子から、対象主体識別子を選択す
る、請求項8に記載のサーバ
装置。
【請求項10】
データベースに格納されている対象主体識別子を適応的に更新するため
に、サーバ装置によって実行される方法であって、
前記対象主体識別子は、リクエストを送信するように構成された他のサーバ
装置が含まれるシステムにおける対象主体と関連し、
前記方法は、
前記他のサーバ
装置から、前記対象主体に関連する対象主体情報が含まれる前記リクエストを受信し、前記対象主体識別子を同期させることと、
前記受信した対象主体情報と、前記データベースに格納されている情報とを比較して、前記対象主体識別子を同期させる前記リクエストを受け入れるか否かを判定することとを含む、方法。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0091
【補正方法】変更
【補正の内容】
【0091】
図9は、一実施形態による対象主体IDを同期させるためのリクエストを受信し、レスポンスを送信するプロセスが示されるフローチャート900を示す。サーバのID標準化モジュールから、対象主体IDの同期リクエスト902が受信される。このリクエスト902には、そのサーバに格納されている対象主体IDと、その対象主体を識別する関連データ(以下、「新規データ」という)が含まれていてもよい。このリクエストを受信すると、対象主体IDを同期するリクエストを受け付けるか否かが判断され、その判断結果(リクエストを受け付けるか否か)がサーバに返信される。データベース904に格納されている各データ(以下、「格納データ」という)に対して検索・比較を行い、新規データに類似するデータを検索するステップ
が実行される。この例では、データベースは、3つの異なる主体を識別するそれぞれの主体IDを持つ3つの主体グループを格納する。データベースには、主体ID「PID_01」の下に5つのデータセット(主体1の5つの検出)、主体ID「PID_02」の下に4つのデータセット(主体2の4つの検出)、及び主体ID「PID_03」の下に6つのデータセット(主体3の6つの検出)が格納される。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0097
【補正方法】変更
【補正の内容】
【0097】
ステップ910は、現在の一致データを履歴データと比較するステップが実行される。履歴データは、対象主体IDを同期するために他のサーバから受信した全てのリクエストに対応づけられている対象主体を識別するデータのセットと、そのようなリクエストを受け入れるための全てのレスポンスに含まれる一致データと、リクエスト902を受信する前の全ての対象主体ID選択プロセスの結果として受信された、選択された対象主体IDとを含むことができる。一実施形態では、一致グループに関連する履歴データのレコードが見つからない場合、ステップ910はステップ914にスキップされる。ステップ918、920、922、928及び930を含むステップ910の処理の詳細は、フローチャート911及び後述のテキストに示される。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0100
【補正方法】変更
【補正の内容】
【0100】
様々な実施形態において、同一のリクエスト902に応じて、レスポンス及び他のサーバからの多くのレスポンスが、サーバに返信された後
、サーバは、それぞれのサーバから受信したレスポンスの主体IDから一つの主体IDを選択するために、主体ID選択プロセスを開始することができる。一実施形態において、選択結果及び選択された主体IDは、その後、リクエストを受け入れて応答した全てのサーバのID標準化モジュール926に返送され、選択された主体IDは、その後、サーバに格納されている一致IDを更新及び置換するため、サーバによって使用される。別の実施形態において、選択結果及び選択された主体IDは、システム内の接続されている全てのサーバに送信され、今後の比較のために、それぞれの履歴リクエスト・結果データベース924に格納される。一実施形態によれば、選択プロセスは、レスポンスに含まれる、対応する参照情報を利用することができる。選択プロセスの詳細については、
図10及び以下の記述で説明される。
【国際調査報告】