(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-10-04
(45)【発行日】2023-10-13
(54)【発明の名称】システム、方法、およびプログラム
(51)【国際特許分類】
H04N 7/18 20060101AFI20231005BHJP
G06T 7/62 20170101ALI20231005BHJP
【FI】
H04N7/18 D
H04N7/18 K
G06T7/62
(21)【出願番号】P 2023032053
(22)【出願日】2023-03-02
【審査請求日】2023-03-02
【早期審査対象出願】
(73)【特許権者】
【識別番号】515029558
【氏名又は名称】セーフィー株式会社
(74)【代理人】
【識別番号】100094569
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100109335
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【氏名又は名称】近藤 直樹
(74)【代理人】
【識別番号】100139712
【氏名又は名称】那須 威夫
(74)【代理人】
【識別番号】100141553
【氏名又は名称】鈴木 信彦
(74)【代理人】
【識別番号】100170209
【氏名又は名称】林 陽和
(72)【発明者】
【氏名】日座 正和
(72)【発明者】
【氏名】橋本 貴博
(72)【発明者】
【氏名】柏木 直諒
【審査官】秦野 孝一郎
(56)【参考文献】
【文献】国際公開第2016/072056(WO,A1)
【文献】特開2016-057952(JP,A)
【文献】特開2020-086961(JP,A)
【文献】特許第4473676(JP,B2)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/18
G06T 7/00-7/90
(57)【特許請求の範囲】
【請求項1】
カメラにより撮影された映像を解析するシステムであって、
ユーザの指示に応じてエリアを設定し、
前記エリアにおける前記商品の充足率を算出し、
前記充足率の上限値を設定し、
前記充足率と前記上限値との関係が視覚的に認識できるように、前記充足率の時間推移を示すグラフとともに前記上限値を表示する、
システム。
【請求項2】
カメラにより撮影された映像を解析するシステムであって、
ユーザの指示に応じてエリアを設定し、
前記エリアにおける前記商品の充足率を算出し、
前記充足率の基準値を設定し、
前記充足率と前記基準値との関係が視覚的に認識できるように、前記充足率の時間推移を示すグラフとともに前記基準値を表示する、
システム。
【請求項3】
前記充足率の下限値を設定し、
前記充足率と前記下限値の関係が視覚的に認識できるように、前記充足率の時間推移を示すグラフとともに前記下限値を表示することで、前記充足率に関する出力を行う、
請求項1又は2に記載のシステム。
【請求項4】
ユーザの指示に応じてラインを設定し、
前記グラフにおいて、前記ラインを通過した人の数を更に表示する、
請求項
1又は2に記載のシステム。
【請求項5】
前記映像を解析する際に、人が存在する部分を除外する、
請求項1
又は2に記載のシステム。
【請求項6】
前記充足率の精度を上げるためのキャリブレーションを行う、
請求項1
又は2に記載のシステム。
【請求項7】
カメラにより撮影された映像を解析するための方法であって、
ユーザの指示に応じてエリアを設定することと、
前記エリアにおける前記商品の充足率を算出することと、
前記充足率の上限値を設定することと、
前記充足率と前記上限値との関係が視覚的に認識できるように、前記充足率の時間推移を示すグラフとともに前記上限値を表示することと、
を含む、方法。
【請求項8】
カメラにより撮影された映像を解析するための方法であって、
ユーザの指示に応じてエリアを設定することと、
前記エリアにおける前記商品の充足率を算出することと、
前記充足率の基準値を設定することと、
前記充足率と前記基準値との関係が視覚的に認識できるように、前記充足率の時間推移を示すグラフとともに前記基準値を表示することと、
を含む、方法。
【請求項9】
カメラにより撮影された映像を解析するためのプログラムであって、
ユーザの指示に応じてエリアを設定することと、
前記エリアにおける前記商品の充足率を算出することと、
前記充足率の上限値を設定することと、
前記充足率と前記上限値との関係が視覚的に認識できるように、前記充足率の時間推移を示すグラフとともに前記上限値を表示することと、
を少なくとも1つのコンピュータに実行させるための、プログラム。
【請求項10】
カメラにより撮影された映像を解析するためのプログラムであって、
ユーザの指示に応じてエリアを設定することと、
前記エリアにおける前記商品の充足率を算出することと、
前記充足率の基準値を設定することと、
前記充足率と前記基準値との関係が視覚的に認識できるように、前記充足率の時間推移を示すグラフとともに前記基準値を表示することと、
を少なくとも1つのコンピュータに実行させるための、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、システム、方法、およびプログラムに関する。
【背景技術】
【0002】
従来、スーパーやコンビニエンスストアなどの小売店舗の売場をカメラにより撮影することで得られた映像を解析することで、商品棚に配置された個々の商品の数量を特定し、商品の在庫状況(または欠品状況)を把握する技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、一般に、商品棚には様々な商品が配置されるため、商品棚に配置された個々の商品の数量をAI等により正確に特定するためには、商品棚に配置されうる様々な商品に関する膨大なデータの準備などを含む様々な工程が必要となり、膨大なコストがかかる。これに対して、個々の商品の数量を正確に特定することまでは必要なく、商品の在庫状況をおおよその精度で把握できれば十分である、というニーズが存在する。
【0005】
そこで、本開示が解決しようとする課題の一つは、精度とコストとのバランスをとりつつ、商品の在庫状況を把握することが可能なシステム、方法、およびプログラムを提供することである。
【課題を解決するための手段】
【0006】
本開示の一例としてのシステムは、カメラにより撮影された映像を解析するシステムであって、ユーザの指示に応じてエリアを設定し、エリア全体の面積と、エリアのうち商品が存在する部分の面積を計測し、エリア全体の面積と、部分の面積に基づいて、エリアにおける商品の充足率を算出し、充足率に関する出力を行う。
【0007】
また、本開示の他の一例としての方法は、カメラにより撮影された映像を解析するための方法であって、ユーザの指示に応じてエリアを設定することと、エリア全体の面積と、エリアのうち商品が存在する部分の面積を計測することと、エリア全体の面積と、部分の面積に基づいて、エリアにおける商品の充足率を算出することと、充足率に関する出力を行うことと、を含む。
【0008】
また、本開示のさらに他の一例としてのプログラムは、カメラにより撮影された映像を解析するためのプログラムであって、ユーザの指示に応じてエリアを設定することと、記エリア全体の面積と、エリアのうち商品が存在する部分の面積を計測することと、エリア全体の面積と、部分の面積に基づいて、エリアにおける商品の充足率を算出することと、充足率に関する出力を行うことと、を少なくとも1つのコンピュータに実行させるための、プログラムである。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施形態にかかるシステムの機能的構成を示した例示的かつ模式的なブロック図である。
【
図2】
図2は、実施形態にかかるシステムにおいて実行される処理の流れを示した例示的かつ模式的なシーケンス図である。
【
図3】
図3は、実施形態にかかる条件の設定を説明するための例示的かつ模式的な図である。
【
図4】
図4は、実施形態にかかるエリアの登録・編集を説明するための例示的かつ模式的な図である。
【
図5】
図5は、実施形態にかかる検知処理の詳細な流れを示した例示的かつ模式的なフローチャートである。
【
図6】
図6は、実施形態にかかる検知処理の結果の表示態様の一例を示した例示的かつ模式的な図である。
【
図7】
図7は、実施形態にかかる検知処理の結果の表示態様の他の一例を示した例示的かつ模式的な図である。
【
図8】
図8は、実施形態にかかる検知処理の結果の表示態様のさらに他の一例を示した例示的かつ模式的な図である。
【
図9】
図9は、実施形態にかかる検知処理の結果のダウンロードを説明するための例示的かつ模式的な図である。
【
図10】
図10は、実施形態にかかる検知処理に用いられうる学習モデルの作成手順の流れを示した例示的かつ模式的なシーケンス図である。
【
図11】
図11は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるメニュー画面の一例を示した例示的かつ模式的な図である。
【
図12】
図12は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示される申し込み画面の一例を示した例示的かつ模式的な図である。
【
図13】
図13は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示される設定画面を示した例示的かつ模式的な図である。
【
図14】
図14は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示される収集データ確認画面の一例を示した例示的かつ模式的な図である。
【
図15】
図15は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示されるアノテーション結果確認画面の一例を示した例示的かつ模式的な図である。
【
図16】
図16は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示される学習結果確認画面の一例を示した例示的かつ模式的な図である。
【
図17】
図17は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるステータス確認画面の一例を示した例示的かつ模式的な図である。
【
図18】
図18は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるステータス確認画面の他の一例を示した例示的かつ模式的な図である。
【
図19】
図19は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるデプロイ対象カメラ確認画面の一例を示した例示的かつ模式的な図である。
【
図20】
図20は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるデプロイ画面の一例を示した例示的かつ模式的な図である。
【
図21】
図21は、実施形態にかかるカメラ、クラウドプラットフォーム、およびユーザ端末に含まれる情報処理装置のハードウェア構成を示した例示的かつ模式的なブロック図である。
【発明を実施するための形態】
【0010】
以下、本開示の実施形態および変形例を図面に基づいて説明する。以下に記載する実施形態および変形例の構成、ならびに当該構成によってもたらされる作用および効果は、あくまで一例であって、以下の記載内容に制限されるものではない。
【0011】
<実施形態>
図1は、実施形態にかかるシステム100の機能的構成を示した例示的かつ模式的なブロック図である。
【0012】
図1に示されるように、実施形態にかかるシステム100は、カメラ110と、クラウドプラットフォーム120と、ユーザ端末130と、を含む。
【0013】
カメラ110は、機能モジュールとして、撮影部111と、検知部112と、通信部113と、を含む。また、クラウドプラットフォーム120は、機能モジュールとして、通信部121と、記録部122と、画像情報生成部123と、を含む。また、ユーザ端末130は、機能モジュールとして、入力受付部131と、通信部132と、表示再生部133と、を含む。
【0014】
カメラ110は、たとえば店舗などに設置され、ネットワーク経由でクラウドプラットフォーム120と通信可能に接続される。また、クラウドプラットフォーム120は、ネットワーク経由でユーザ端末130と通信可能に接続される。これにより、カメラによって撮影された映像(および当該映像に基づいて検出される情報)は、クラウドプラットフォーム120を介してユーザ端末130に提供され、店舗のDXに利用される。
【0015】
たとえば、店舗のDXに利用される技術の一例として、従来、スーパーやコンビニエンスストアなどの小売店舗の売場をカメラにより撮影することで得られた映像を解析することで、商品棚に配置された個々の商品の数量を特定し、商品の在庫状況(または欠品状況)を把握する技術が知られている。
【0016】
しかしながら、一般に、商品棚には様々な商品が配置されるため、商品棚に配置された個々の商品の数量をAI等により正確に特定するためには、商品棚に配置されうる様々な商品に関する膨大なデータの準備などを含む様々な工程が必要となり、膨大なコストがかかる。これに対して、個々の商品の数量を正確に特定することまでは必要なく、商品の在庫状況をおおよその精度で把握できれば十分である、というニーズが存在する。
【0017】
そこで、実施形態では、
図1に示される各機能モジュールが次の
図2に示されるような流れで動作することで、精度とコストとのバランスをとりつつ、商品の在庫状況を把握することが実現される。
【0018】
図2は、実施形態にかかるシステム100において実行される処理の流れを示した例示的かつ模式的なシーケンス図である。なお、
図2では、簡単化のため、クラウドプラットフォーム120が単にクラウド120として表現されている。
【0019】
まず、ユーザ端末130を用いてカメラ110に対して各種の条件の設定を行うための設定処理について説明する。詳細は後述するが、条件とは、たとえば、カメラ110が複数設置されている場合にどのカメラ110の映像に着目して在庫状況の検知を行うか、および、当該映像のどのエリアを対象として在庫状況の検知を行うか、などに関する条件である。
【0020】
設定処理においては、まず、ステップS201において、ユーザ端末130の入力受付部131は、下記の
図3および
図4に示されるようなUI(ユーザインターフェース)を介したユーザの操作に基づく条件の設定を受け付ける。
【0021】
図3は、実施形態にかかる条件の設定を説明するための例示的かつ模式的な図である。
【0022】
図3に示される画像300は、ユーザによる条件の設定に関する操作を受け付けるUIの一例である。この画像300は、8つの領域310、320、330、340、350、360、370、および380を含む。
【0023】
領域310には、カメラ110が複数設置されている場合にどのカメラ110の映像に着目して在庫状況の検知を行うかの選択を受け付けるインターフェースが表示される。また、領域320には、検知の結果をどのような態様で出力するかの選択を受け付けるインターフェースが表示される(詳細は後述する)。また、領域330には、在庫状況の検知を行う対象のエリアの設定を受け付けるインターフェースが表示される。当該インターフェースでは、予め登録されたエリアの一覧がプルダウンメニューで表示され、その中から、ユーザの選択に応じて、在庫状況の検知を行う対象のエリアが設定されうる。エリアの登録は、たとえば右上の「エリアの登録・編集」をクリックすることで表示される、次の
図4に示されるようなUIを介したユーザの操作に基づいて行われうる。
【0024】
図4は、実施形態にかかるエリアの登録・編集を説明するための例示的かつ模式的な図である。
図4に示される画像401は、ユーザによるエリアの設定に関する操作を受け付けるUIの一例である。画像401の左側には、設定済のエリア名が一覧表示されるとともに、設定可能なエリア数(またはライン数)の上限値と現在設定済のエリア数とを示す情報、および新たなエリアを登録するための新規作成ボタン403が表示される領域402が設けられる。各領域402の左側にある色が付されたアイコンは、領域401Aに表示された画像400内に設定されたエリアの色と連動しており、これをクリックして色を選択することで、エリア毎に所望の色を設定することが可能である。また、各領域402の右側にある「削除」ボタンは、これをクリックすることで対応するエリアを削除することが可能である。領域402の中から1つをクリックして選択すると、その名称と画像400内の対応するエリアが共に強調表示され、選択されていることが識別可能となる。エリアが選択された状態で、画像400内の対応するエリアをクリック/ドラッグ等すると、そのエリアの位置や形を変更することが可能である。
【0025】
また、画像401の右側の領域401Aには、一例として、在庫状況の検知を行う対象のエリアとして8つのエリア411~418を含む画像400が表示されている。ユーザは、領域401Aに対して左側に設けられた新規作成ボタン403をクリックした後、画像400上でドラッグ&ドロップ操作などを行うことにより、所望の位置、大きさ、および形のエリアを設定することが可能である。たとえば、エリアの頂点を順次クリックしていき、最後の頂点でダブルクリックすることにより、それらの頂点を結ぶエリアが設定されうる。エリアの形は、四角形のみならず所望の形で設定可能である。その他、実施形態では、画像400を利用して、たとえばエリアの境界線のようなラインを任意に設定することも可能である。設定されたラインは、当該ラインを介した人の出入りの検知に利用することが可能である。
【0026】
図3に戻り、領域340には、現在の設定内容を識別するための名前の入力を受け付けるインターフェースが表示される。また、領域350には、在庫状況の検知を行う対象の商品の価格の入力を受け付けるインターフェースが表示される。設定名や商品価格は、
図4のエリア登録時に、各エリアに対応付けて設定可能としてもよい。また、領域360には、在庫状況を示す数値としての充足率に関して設定すべき複数の閾値の入力を受け付けるインターフェースが表示される。下限値は、充足率が下限値を下回ったこと、たとえば商品棚の中の商品が少なくなったことの検知に利用することができ、上限値は、充足率が上限値を上回ったこと、たとえば返却品を入れる棚がいっぱいになったことの検知に利用することができる。また、基準値は、充足率と基準値との差分(幅)が一定以上になったこと、たとえば工場や物流施設などにおけるライン上の商品の上振れまたは下振れの検知に利用することができる。また、領域370には、領域360のインターフェースを用いた閾値の設定の参考となる値、たとえば過去何年かにおける平均の充足率、が表示される。なお、領域380には、充足率が閾値に達したことの通知をどのタイミング(たとえば時間帯、曜日、日付など)で行うかの設定を受け付けるインターフェースが表示される。このような通知は、メール、プッシュ通知、放送、パトライト(登録商標)、パトランプ、サイネージ、モニター、またはこれらの1以上の組み合わせを用いて行われうる。なお、これらの通知は基本的には充足率が各閾値(上限値/下限値/基準値)に達したときに行うが、更に充足率と各閾値との差に応じて段階的に行ってもよい。例えば、各エリアの充足率をモニターで一覧表示する場合、充足率が下限値より高くその差が一定以上のときは「十分な在庫があります」、充足率が下限値より高いがその差が一定未満になったときは「品出しの準備をしてください」、充足率が下限値に達し又はそれ以下になったときは「今すぐ品出ししてください」、といったメッセージを各エリアの映像とともに対応付けて表示する。
【0027】
図2に戻り、ステップS201における条件の設定が終了すると、ステップS202において、ユーザ端末130の通信部132は、設定された条件をクラウドプラットフォーム120に送信する。そして、クラウドプラットフォーム120の通信部121は、ユーザ端末130により送信された条件を受信する。
【0028】
そして、ステップS203において、クラウドプラットフォーム120の通信部121は、ユーザ端末130から受信した条件をカメラ110に転送する。そして、カメラ110の通信部113は、クラウドプラットフォーム120により送信された条件を受信する。
【0029】
そして、ステップS204において、カメラ110の検知部112は、クラウドプラットフォーム120から受信した条件を、以下で説明する撮影処理に利用するために保存する。このようにして、設定処理が終了する。
【0030】
次に、カメラ110による映像の撮影と、当該映像に基づく各種の情報の検知と、を含む撮影処理について説明する。
【0031】
撮影処理においては、まず、ステップS211において、カメラ110の撮影部111は、映像を撮影する。そして、ステップS212において、カメラ110の検知部112は、上述した設定処理において行われた設定に基づいて映像を解析し、エリア内における商品の充足率の算出を含む検知処理を実行する。充足率の検知処理は、たとえば次の
図5に示されるような流れで実行される。
【0032】
図5は、実施形態にかかる検知処理の詳細な流れを示した例示的かつ模式的なフローチャートである。
【0033】
図5に示されるように、実施形態では、まず、ステップS501において、検知部112は、撮影部111により撮影された映像(カメラ画像)を取得する。そして、ステップS502において、検知部112は、上述した設定処理において行われた設定に基づいて、カメラ画像から、充足率の検知の対象となるエリアを抽出する。
【0034】
そして、ステップS503において、検知部112は、ステップS502で抽出されたエリアから、人が存在する部分、つまり人が写っている領域を除外する。そして、ステップS504において、検知部112は、ステップS503の処理を経たエリアの全体の面積と、当該エリアのうち商品が存在している第1部分の面積と、当該エリアのうち商品が存在していない第2部分の面積と、のうち少なくとも2つを算出し、算出した少なくとも2つの面積に基づいて、エリアにおける商品の充足率を算出する。より具体的に、検知部112は、エリア全体の面積と第1部分の面積との差(または比)と、エリア全体の面積と第2部分の面積との差(または比)と、第1部分の面積と第2部分の面積との差(または比)と、のうち少なくとも1つを、商品の充足率として算出する。このようにして、
図2のステップS212における検知処理が実行される。
【0035】
図2に戻り、ステップS212が終了すると、ステップS213において、カメラ110の通信部113は、ステップS211において撮影された映像と、ステップS212における検知処理の結果とを、クラウドプラットフォーム120に送信する。映像には、撮影した時刻が対応付けられ、検知結果には、充足率がステップS201で設定された各種の条件を満たすと判断された時刻が含まれる。なお、検知結果は、充足率がステップS201で設定された条件を満たすときのみならず、それ以外のときにも送信されうる。そして、クラウドプラットフォーム120の通信部121は、カメラ110により送信された情報を受信する。
【0036】
そして、ステップS214において、クラウドプラットフォーム120の記録部122は、カメラ110から受信した映像および検知結果を記録する。そして、ステップS215において、クラウドプラットフォーム120の画像情報生成部123は、充足率の検知結果に関する情報をユーザに通知するために、たとえば次の
図6に示されるような画像情報を生成する。このようにして、撮影処理が終了する。
【0037】
図6は、実施形態にかかる検知処理の結果の表示態様の一例を示した例示的かつ模式的な図である。
【0038】
図6に示される画像600は、検知処理の結果がタイムライン形式で表示されるUIの一例である。このUIは、後述する確認処理においてユーザ端末130に提供されうる。
【0039】
画像600の下側には、タイムラインが表示される領域701が設けられる。このタイムラインは、映像において上述したステップS201(
図2参照)で設定された条件が成立したタイミング、たとえば上述した検知処理において算出された充足率が閾値に達したタイミング、を時系列で識別可能に示すものである。ここでいう識別可能とは、たとえばタイムラインにおいて条件を満たすタイミングに色付きの帯やフラグなどを付けて表示する態様を意味する。色が付される場合、その色は前述したエリアの登録・編集において設定した色と同じ色に対応しうる。
【0040】
その他、画像600には、撮影部111により撮影された映像が、上述したステップS201(
図2参照)で設定されたエリアが区別可能な態様で加工された画像610が表示される。各エリアには、商品の価格や充足率、エリア名などが重畳して表示される。また、画像600には、各エリアの登録・編集を行うための領域621~623(
図4の領域402と略同様)や、画像610内に表示されたエリアに充足率、エリア名、商品価格を重畳して表示するか否かを切り替えるためのインターフェース631~633が表示される。
【0041】
なお、実施形態にかかる検知処理の結果は、上記の
図6に示される表示態様の他、次の
図7に示されるような表示態様でも表示されうる。
【0042】
図7は、実施形態にかかる検知処理の結果の表示態様の他の一例を示した例示的かつ模式的な図である。
【0043】
図7に示される画像700は、商品の充足率の時間推移をヒストグラム形式で表すUIの一例である。このUIは、後述する確認処理においてユーザ端末130に提供されうる。
【0044】
画像700は、カメラ110が複数設置されている場合にどのカメラ110のどのエリアの映像に基づいて検知された充足率の時間推移を表示するかの選択を受け付けるインターフェースが表示される領域710を含む。領域710では、充足率の表示対象とするカメラとエリアを選択することが可能である。エリアの選択は、例えば610のような画像のサムネイルを空いた領域に表示し、その中から所望のエリアをクリック等することにより行ってもよい。なお、ここでは複数のエリアを選択することも可能であり、その場合は各エリアに対応するヒストグラムを透過式で重ね合わせて表示する。このとき、各ヒストグラムの色は、サムネイル上の各エリアの色と対応させると見やすい。また、画像700は、検知の結果をどのような態様で出力するかの選択を受け付けるインターフェースが表示される領域720を含む。領域720において「充足率推移」が選択されると、商品の充足率の時間遷移を示すヒストグラムを含む領域730が画像700内に表示される。
【0045】
なお、
図7に示される例では、領域730に、商品の充足率の時間遷移を示すヒストグラムとともに、上述した
図3に示される画像300を用いて設定された閾値(上限値、下限値、および基準値)などが表示されている。また、領域730には、上述した
図4に示される画像400を用いて設定されたラインを介した人の出入りの検知結果をさらに表示するか否かを切り替えるためのインターフェースが表示される領域731が設けられている。ラインを介した人の出入りの検知結果は、たとえば次の
図8に示されるような表示態様で表示されうる。また、領域730には、前述のヒストグラムのノイズ(前後の値との差が極端に大きい値)を除去するためのインターフェースが表示される領域732が設けられている。また、領域730には、前述のヒストグラムを平滑化(ベジエ曲線等を利用)するためのインターフェースが表示される領域733が設けられている。
【0046】
その他、所定の日時またはユーザの指示に応じた任意のタイミングで、商品の充足率が0%または100%のとき(このうち何れか一方でも両方でもよい)のキャリブレーションを実行する機能を設けてもよい。これは、映像解析の精度等により、例えば商品の充足率を計測する対象領域に実際には商品が全く置かれていないにも関わらず充足率が0%を上回ってしまったり、逆に対象領域に実際には商品が目一杯置かれているにも関わらず充足率が100%を下回ってしまったりする状況に対応するためである。具体的には、キャリブレーションを行うためのボタン734を設け、それをクリックすることによりキャリブレーションの設定画面(不図示)へと遷移する。この設定画面では、カメラとエリアを選択し、0%や100%といった対象値を指定し、日時指定(時刻/日/曜日/月等から1つ以上の条件を組み合わせ可能)または即時実行(ユーザ指示したタイミングで即実行)を指示することができる。この設定に基づいて、キャリブレーションが実行される。
【0047】
図8は、実施形態にかかる検知処理の結果の表示態様のさらに他の一例を示した例示的かつ模式的な図である。
【0048】
図8に示される画像800は、ラインを介した人の出入りの検知結果を商品の充足率の時間推移とともに表すUIの一例である。このUIは、後述する確認処理においてユーザ端末130に提供されうる。
【0049】
画像800は、上述した
図7に示される領域710および720とそれぞれ同様の領域810および820を含む。そして、画像800は、ラインを介した人の出入りの検知結果を示すヒストグラムと、商品の充足率の時間推移を示す折れ線グラフと、が表示される領域830を含む。この領域830には、上述した
図7に示される領域730と同様、上述した
図3に示される画像300を用いて設定された閾値(上限値、下限値、および基準値)も表示されている。なお、各閾値の表示をON/OFFするためのボタンを設け、これに対応して各閾値の表示の有無を切り替えてもよい。また、領域830は、ラインを介した人の出入りの検知結果を表示するか否かを切り替えるためのインターフェースが表示される、上述した
図7に示される領域731と同様の領域831も設けられている。
【0050】
なお、実施形態において、上述したような検知処理の結果は、クラウドプラットフォーム120において記録されうるが、ユーザの便宜のため、検知処理の結果をユーザ端末130にダウンロード可能に構成しておくことが望まれる。この場合、検知処理の結果のダウンロードは、たとえば次の
図9に示されるようなUIを用いて実行されうる。
【0051】
図9は、実施形態にかかる検知処理の結果のダウンロードを説明するための例示的かつ模式的な図である。
【0052】
図9に示される画像900は、クラウドプラットフォーム120により生成されるUIの一例である。このUIは、後述する確認処理においてユーザ端末130に提供されうる。
【0053】
画像900は、カメラ110が複数設置されている場合にどのカメラ110の映像に基づいて検知された充足率の時間推移を表示するかの選択を受け付けるインターフェースが表示される領域910を含む。また、画像900は、検知の結果をどのような態様で出力するかの選択を受け付けるインターフェースが表示される領域920を含む。領域920において「CSV DL」が選択されると、検知処理の結果をユーザ端末130にダウンロードするための操作を受け付ける領域930が画像900内に表示される。ユーザは、この領域930には、ダウンロードする対象の映像(カメラ画像)のサムネイルや、ダウンロードを開始するためのボタンなどが表示される。なお、領域920において「外部App」を選択すれば、検知の結果を外部システムに送信することも可能である。
【0054】
図2に戻り、上述した撮影処理において撮影される映像および検知される情報を確認するための確認処理について説明する。
【0055】
確認処理においては、まず、ステップS221において、ユーザ端末130の入力受付部131は、上述した撮影処理において撮影される映像および検知される情報を確認するためのユーザの操作に基づく確認要求を受け付ける。
【0056】
そして、ステップS222において、ユーザ端末130の通信部132は、受け付けた確認要求をクラウドプラットフォーム120に送信する。そして、クラウドプラットフォーム120の通信部121は、ユーザ端末130により送信された確認要求を受信する。
【0057】
そして、ステップS223において、クラウドプラットフォーム120の画像情報生成部223は、ユーザ端末130から受信した確認要求に応じて、上述した撮影処理において生成した各種の画像情報を読み出す。
【0058】
そして、ステップS224において、クラウドプラットフォーム120の通信部121は、ステップS223において読み出された画像情報をユーザ端末130に送信する。そして、ユーザ端末130の通信部132は、クラウドプラットフォーム120により送信された画像情報を受信する。
【0059】
そして、ステップS225において、ユーザ端末130の表示再生部133は、クラウドプラットフォーム120から受信した画像情報をディスプレイ(不図示)に表示する。画像情報は、たとえば上述した
図6~
図9に示されるような態様で表示される。
【0060】
そして、ステップS226において、ユーザ端末130の入力受付部131は、上述した画像情報に基づいてユーザが所望のタイミングの映像を選択(指定)する操作としての選択指示を受け付ける。
【0061】
そして、ステップS227において、ユーザ端末130の通信部132は、受け付けた選択指示をクラウドプラットフォーム120に送信する。そして、クラウドプラットフォーム120の通信部121は、ユーザ端末130により送信された選択指示を受信する。
【0062】
そして、ステップS228において、クラウドプラットフォーム120の画像情報生成部223は、ユーザ端末130から受信した選択指示に応じて、上述した撮影処理において記録した映像を読み出す。たとえば、画像情報生成部223は、ステップS226で選択(指定)されたタイミングの映像を読み出す。
【0063】
そして、ステップS229において、クラウドプラットフォーム120の通信部121は、ステップS228において読み出された映像をユーザ端末130に送信する。そして、ユーザ端末130の通信部132は、クラウドプラットフォーム120により送信された映像を受信する。
【0064】
そして、ステップS230において、ユーザ端末130の表示再生部133は、クラウドプラットフォーム120から受信した映像をディスプレイ(不図示)上で再生する。たとえば、表示再生部133は、
図6に示される画像610のような形で映像を再生する。このようにして、確認処理が終了する。
【0065】
ところで、上述したような検知処理は、カメラ画像の入力に応じて充足率を出力するように予めトレーニングされた学習モデルを用いて実現することも可能である。以下、
図10~
図20を参照して、上述したような検知処理に用いられうる学習モデルの作成手順の一例について説明する。
【0066】
図10は、実施形態にかかる検知処理に用いられうる学習モデルの作成手順の流れを示した例示的かつ模式的なシーケンス図である。
【0067】
図10に示されるように、実施形態では、まず、ステップS1011において、学習モデルの提供を望むエンドユーザは、プラットフォーマーに対して学習モデルを発注する。学習モデルの発注に際しては、まず、次の
図11に示されるような画像がエンドユーザ側に表示される。
【0068】
図11は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるメニュー画面の一例を示した例示的かつ模式的な図である。
【0069】
図11に示される画像1100は、学習モデルの発注に際して最初にエンドユーザ側に表示されるメニュー画面である。この画像1100は、学習モデルの作成の申し込みを開始するためのボタン1101と、発注した学習モデルの作成の進捗状況を確認するためのボタン1102と、エンドユーザ側で管理しているカメラであって、発注した学習モデルをデプロイ可能なカメラを確認するためのボタン1103と、を含む。ボタン1101が操作されると、次の
図12に示されるような画像1200がエンドユーザ側に表示される。
【0070】
図12は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示される申し込み画面の一例を示した例示的かつ模式的な図である。
【0071】
図12に示される画像1200は、上述した
図11に示されるボタン1101の操作に応じて画像1100から切り替わって表示される申し込み画面である。この画像1200は、発注する学習モデルに学習させるデータの取得元のカメラ、学習モデルの名称、および学習モデルに検知させる対象を指定するためのインターフェースが表示される領域1210を含む。エンドユーザは、領域1210を用いて各種情報を指定した上で、申し込みボタン1220を操作することで、プラットフォーマーに対して学習モデルを発注する。
【0072】
図10に戻り、エンドユーザにより学習モデルが発注されると、プラットフォーマーは、ステップS1021において、学習モデルに学習させるデータを収集する。データの収集に際しては、次の
図13に示されるような画像1300がプラットフォーマー側に表示される。
【0073】
図13は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示される設定画面を示した例示的かつ模式的な図である。
【0074】
図13に示される画像1300は、発注を受けた学習モデルに学習させるデータを収集するにあたりプラットフォーマーが各種の設定を行うための設定画面である。この画像1300は、発注内容、つまり上述した
図12に示される領域1210でエンドユーザにより指定された各種の情報が表示される領域1310と、データを取得するタイミング(取得期間、取得間隔、取得時間、曜日)に関するプラットフォーマーの設定を受け付けるインターフェースが表示される領域1320と、を含む。プラットフォーマーは、領域1310に表示された情報を確認した上で領域1320を介して設定を行い、開始ボタン1330を操作することで、発注を受けた学習モデルに学習させるデータの収集を開始する。
【0075】
図10に戻り、学習モデルに学習させるデータが収集されると、プラットフォーマーは、ステップS1022において、収集したデータに基づく学習を開始する。学習の開始に際しては、次の
図14に示されるような画像1400がプラットフォーマー側に表示される。
【0076】
図14は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示される収集データ確認画面の一例を示した例示的かつ模式的な図である。
【0077】
図14に示される画像1400は、収集が完了した学習用のデータをプラットフォーマーに確認させるための収集データ確認画面である。この画像1400は、収集されたデータがサムネイル画像として一覧表示される領域1410を含む。プラットフォーマーは、領域1410に表示されたサムネイル画像を確認し、問題なければ、「A社に送信」というボタン1420を操作することで、収集されたデータに対するアノテーションをA社に依頼する。なお、ここでは、一例として、アノテーションを外注する例について説明するが、アノテーションは、外注を行うことなくプラットフォーマーが自ら実施してもよい。
【0078】
アノテーションが完了すると、次の
図15に示されるような画像1500がプラットフォーマー側に表示される。
【0079】
図15は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示されるアノテーション結果確認画面の一例を示した例示的かつ模式的な図である。
【0080】
図15に示される画像1500は、アノテーションの結果をプラットフォーマーに確認させるためのアノテーション結果確認画面である。この画像1500は、アノテーションされたデータがサムネイル画像として一覧表示される領域1510を含む。プラットフォーマーは、領域1510に表示されたサムネイル画像を確認し、問題なければ、「学習を開始」というボタン1520を操作することで、アノテーションされたデータを教師データとして用いて学習モデルの学習を開始する。
【0081】
そして、
図10に戻り、プラットフォーマーは、ステップS1023において、収集したデータに基づく学習を完了する。学習が完了した際には、次の
図16に示されるような画像1600がプラットフォーマー側に表示される。
【0082】
図16は、実施形態にかかる学習モデルの作成の流れにおいてプラットフォーマー側に表示される学習結果確認画面の一例を示した例示的かつ模式的な図である。
【0083】
図16に示される画像1600は、学習を経た学習モデルの性能をプラットフォーマーに確認させるための学習結果確認画面である。この画像1600は、学習を経た学習モデルの性能としての精度が円グラフとして表示される領域1610を含む。プラットフォーマーは、領域1610に表示された円グラフを確認し、問題なければ、「完了」というボタン1620を操作することで、学習モデルをフィックスする。
【0084】
なお、実施形態では、学習モデルの作成の進捗状況が、適時、エンドユーザ側で確認することが可能である。つまり、
図10に戻り、エンドユーザは、ステップS1012において、プラットフォーマー側での学習モデルの作成(ステップS1021~S1023)の進捗状況を確認することができる。このような進捗状況の確認は、次の
図17に示されるような画像1700をよって行われうる。
【0085】
図17は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるステータス確認画面の一例を示した例示的かつ模式的な図である。
【0086】
図17に示される画像1700は、カメラごとの学習モデルの作成の進捗状況の一覧をエンドユーザに確認させるためのステータス確認画面である。この画像1700は、上述した
図11に示される画像1100のボタン1102の操作に応じてエンドユーザ側に表示されうる。エンドユーザは、画像1700を用いて、発注した学習モデルの進捗状況としての「ステータス」を、学習モデルに学習させるデータの取得元としてのカメラの名称(設置位置)、学習モデルの名称、および学習モデルの発注を申し込んだ日とともに確認することができる。
【0087】
なお、学習モデルの作成の進捗状況の確認は、次の
図18に示されるような画像1800によっても行われうる。
【0088】
図18は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるステータス確認画面の他の一例を示した例示的かつ模式的な図である。
【0089】
図18に示される画像1800は、ある1つの学習モデルの作成の進捗状況を今後の予定とともにエンドユーザに確認させるためのステータス確認画面である。エンドユーザは、画像1800を用いて、学習モデルの発注の申し込み日、学習モデルに学習させるデータの収集の開始日、アノテーションが行われる日、アノテーションされたデータに基づく学習が行われる日、および学習が完了した学習モデルの利用を開始できる日を確認することができる。
【0090】
図10に戻り、プラットフォーマー側での学習モデルの作成が完了すると、エンドユーザは、ステップS1013において、作成された学習モデルをカメラに対してデプロイする。デプロイに際しては、まず、次の
図19に示されるような画像1900がエンドユーザ側に表示される。
【0091】
図19は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるデプロイ対象カメラ確認画面の一例を示した例示的かつ模式的な図である。
【0092】
図19に示される画像1900は、上述した
図11に示される画像1100のボタン1103の操作に応じてエンドユーザ側に表示されるデプロイ対象カメラ確認画面である。エンドユーザは、画像1800を用いて、エンドユーザ側で管理しているカメラであって、発注した学習モデルをデプロイ可能なカメラを確認する。そして、エンドユーザは、次の
図20に示されるような画像2000を用いて、カメラに対する学習モデルのデプロイを実施する。
【0093】
図20は、実施形態にかかる学習モデルの作成の流れにおいてエンドユーザ側に表示されるデプロイ画面の一例を示した例示的かつ模式的な図である。
【0094】
図20に示される画像2000は、上述した
図19に示される画像1900において「編集」というボタンが操作されることに応じてエンドユーザ側に表示されるデプロイ画面である。エンドユーザは、画像2000を用いて、デプロイを行う対象のカメラの情報を確認し、デプロイボタン2010を操作することで、対象のカメラに対して学習モデルのデプロイを実施する。
【0095】
以上説明したように、実施形態にかかるシステム100は、カメラ110により撮影された映像を解析するように構成される。システム100は、ユーザの指示に応じてエリアを設定し、当該エリア全体の面積と、エリアのうち商品が存在する部分の面積と、を計測する。そして、システム100は、エリア全体の面積と、エリアのうち商品が存在する部分の面積と、に基づいて、エリアにおける商品の充足率を算出し、算出した充足率に関する出力を行う。このような構成によれば、エリア全体の面積と、エリアのうち商品が存在する部分の面積と、に基づいて、商品の充足率を概算的に求めることができる。これにより、個々の商品の数量を正確に特定するための様々な工程および膨大なコストを必要とすることなく、商品の在庫状況をおおよその精度で把握することができるので、精度とコストとのバランスをとりつつ、商品の在庫状況を把握することができる。
【0096】
最後に、上述した実施形態にかかるシステム100を構成するカメラ110、クラウドプラットフォーム120、およびユーザ端末130に含まれるハードウェア構成について説明する。実施形態において、カメラ110、クラウドプラットフォーム120、およびユーザ端末130は、たとえば次の
図21に示されるようなハードウェア構成を有する情報処理装置2100を含むように構成される。
【0097】
図21は、実施形態にかかるカメラ110、クラウドプラットフォーム120、およびユーザ端末130に含まれる情報処理装置2100のハードウェア構成を示した例示的かつ模式的なブロック図である。
【0098】
なお、
図21は、カメラ110、クラウドプラットフォーム120、およびユーザ端末130において実質的に共通するハードウェア構成のみを示したものである。このため、カメラ110、クラウドプラットフォーム120、およびユーザ端末130の実際のハードウェア構成は、
図21に示されている以外の部分で様々に異なる点について留意されたい。
【0099】
図21に示されるように、情報処理装置2100は、プロセッサ2110と、メモリ2120と、ストレージ2130と、入出力インターフェース(I/F)2140と、通信インターフェース(I/F)2150と、を備えている。これらのハードウェアは、バス2160に接続されている。
【0100】
プロセッサ2110は、たとえばCPU(Central Processing Unit)として構成され、情報処理装置2100の各部の動作を統括的に制御する。
【0101】
メモリ2120は、たとえばROM(Read Only Memory)およびRAM(Random Access Memory)を含み、プロセッサ2110により実行されるプログラムなどの各種のデータの揮発的または不揮発的な記憶、およびプロセッサ2110がプログラムを実行するための作業領域の提供などを実現する。
【0102】
ストレージ2130は、たとえばHDD(Hard Disk Drive)またはSSD(Solid State Drive)を含み、各種のデータを不揮発的に記憶する。
【0103】
入出力インターフェース2140は、たとえばキーボードおよびマウスなどのような入力装置(不図示)から情報処理装置2100へのデータの入力と、たとえば情報処理装置2100からディスプレイおよびスピーカなどのような出力装置(不図示)へのデータの出力と、を制御する。
【0104】
通信インターフェース2150は、情報処理装置2100が他の装置と通信を実行することを可能にする。
【0105】
実施形態にかかるカメラ110、クラウドプラットフォーム120、およびユーザ端末130が有する各機能モジュール(
図1参照)は、それぞれの情報処理装置2100のプロセッサ2110がメモリ2120またはストレージ2130に予め記憶された情報処理プログラムを実行した結果として、ハードウェアとソフトウェアとの協働による機能モジュール群として実現される。ただし、実施形態では、
図1に示される機能モジュール群のうち一部または全部が、専用に設計された回路のようなハードウェアのみによって実現されてもよい。
【0106】
なお、上述した情報処理プログラムは、必ずしもメモリ2120またはストレージ2130に予め記憶されている必要はない。たとえば、上述した情報処理プログラムは、フレキシブルディスク(FD)のような各種の磁気ディスク、またはDVD(Digital Versatile Disk)のような各種の光ディスクなどといった、コンピュータで読み取り可能な媒体にインストール可能な形式または実行可能な形式で記録されたコンピュータプログラムプロダクトとして提供されてもよい。
【0107】
また、上述した情報処理プログラムは、インターネットなどのネットワーク経由で提供または配布されてもよい。すなわち、上述した情報処理プログラムは、インターネットなどのネットワークに接続されたコンピュータ上に格納された状態で、ネットワーク経由でのダウンロードを受け付ける、といった形で提供されてもよい。
【0108】
<変形例>
上述した実施形態では、検知処理により商品の充足率を算出する構成が例示されている。しかしながら、変形例として、商品の充足率に替えて、商品の不足率を算出する構成も考えられる。たとえば、充足率がパーセンテージで表される場合、充足率と不足率との関係は、充足率+不足率=100という関係である。なお、本発明において、充足率の意味は、広義では不足率も含むものとする。
【0109】
以上、本開示の実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態およびその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0110】
100 システム
110 カメラ
111 撮影部
112 検知部
113 通信部
120 クラウドプラットフォーム
121 通信部
122 記録部
123 画像情報生成部
130 ユーザ端末
131 入力受付部
132 通信部
133 表示再生部
【要約】
【課題】精度とコストとのバランスをとりつつ、商品の在庫状況を把握する。
【解決手段】本開示の一例としてのシステムは、カメラにより撮影された映像を解析するシステムであって、ユーザの指示に応じてエリアを設定し、エリア全体の面積と、エリアのうち商品が存在する部分の面積を計測し、エリア全体の面積と、部分の面積に基づいて、エリアにおける前記商品の充足率を算出し、充足率に関する出力を行う。
【選択図】
図2