JP6893278B1 - 情報処理装置、方法及びコンピュータプログラム - Google Patents

情報処理装置、方法及びコンピュータプログラム Download PDF

Info

Publication number
JP6893278B1
JP6893278B1 JP2020210337A JP2020210337A JP6893278B1 JP 6893278 B1 JP6893278 B1 JP 6893278B1 JP 2020210337 A JP2020210337 A JP 2020210337A JP 2020210337 A JP2020210337 A JP 2020210337A JP 6893278 B1 JP6893278 B1 JP 6893278B1
Authority
JP
Japan
Prior art keywords
image
target
ratio
pixel
line segment
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
JP2020210337A
Other languages
English (en)
Other versions
JP2022097002A (ja
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.)
Retail AI Inc.
Original Assignee
Retail AI Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Retail AI Inc. filed Critical Retail AI Inc.
Priority to JP2020210337A priority Critical patent/JP6893278B1/ja
Application granted granted Critical
Publication of JP6893278B1 publication Critical patent/JP6893278B1/ja
Publication of JP2022097002A publication Critical patent/JP2022097002A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】動画において物体が追加された現象を検知するために用いられる、情報処理装置、方法及びコンピュータプログラムを提供する。【解決手段】情報処理装置内のプロセッサは、動画供給源から、1つの画像を対象画像として取得し、対象画像に対して微分処理を施すことにより線分画像を生成し、線分画像の画素値に第1比率を乗じた値と、既に生成された第1蓄積画像の画素値に第3比率を乗じた値とを合算して、新たな第1蓄積画像を生成し、線分画像の画素値に第2比率を乗じた値と、既に生成された第2蓄積画像の画素値に、第4比率を乗じた値とを合算して、新たな第2蓄積画像を生成し、第1蓄積画像から第2蓄積画像を減ずることにより差分画像を生成する。差分画像に基づく参照値が、旧差分画像に基づく最大参照値より大きいときに、動画供給源から新たな1つの画像を取得して保存画像として保存する。【選択図】図2A

Description

本件出願に開示された技術は、動画において追加された物体を検知するために用いられる、情報処理装置、方法及びコンピュータプログラムに関する。
現在、過去の画像と現在の画像とを比較して変化を検知する背景差分技術が知られている(特許文献1〜特許文献8)。
特開2020−95554号公報 特開2020−30768号公報 特開2020−106257号公報 特開2019−133286号公報 特開2019−125269号公報 特開2017−220020号公報 特開平7−336694号公報 特開平7−334683号公報
昨今、動画において新たな物体が入ってきた現象を自動的に認識する手法が必要とされている。
そこで、本件出願に開示された様々な実施形態は、動画において物体が追加された現象を検知するために用いられる、情報処理装置、方法及びコンピュータプログラムを提供する。
一態様に係る情報処理装置は、「少なくとも1つのプロセッサを具備する情報処理装置であって、該少なくとも1つのプロセッサが、動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記動画供給源から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、前記一連の処理が、前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記動画供給源から新たな1つの画像を取得して保存画像として保存し、前記差分画像において第1閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、を含む」ことができる。
一態様に係る方法は、「コンピュータにより読み取り可能な命令を実行する少なくとも1つのプロセッサにより実行される方法であって、該少なくとも1つのプロセッサが、動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記動画供給源から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、前記一連の処理が、前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記動画供給源から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、を含む」ことができる。
一態様に係るコンピュータプログラムは、「少なくとも1つのプロセッサにより実行されることにより、動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記動画供給源から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返す、ように前記少なくとも1つのプロセッサを機能させ、前記一連の処理が、前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記動画供給源から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、を含む」ことができる。
一態様に係るスマートレジカートは、「少なくとも1つのプロセッサを具備するスマートレジカートであって、該少なくとも1つのプロセッサが、動画を構成する複数の画像をフレームレートに従って順次出力する撮像部から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記撮像部から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、前記一連の処理が、前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記第1撮像部から新たな1つの画像を取得して保存画像として保存し、前記差分画像において第1閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、を含む」ことができる。
別の態様に係る方法は、「スマートレジカートに搭載されるコンピュータにより読み取り可能な命令を実行する少なくとも1つのプロセッサにより実行される方法であって、該少なくとも1つのプロセッサが、動画を構成する複数の画像をフレームレートに従って順次出力する撮像部から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記撮像部から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、前記一連の処理が、前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記撮像部から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、並びに、を含む」ことができる。
別の態様に係るコンピュータプログラムは、「スマートレジカートに搭載される少なくとも1つのプロセッサにより実行されることにより、動画を構成する複数の画像をフレームレートに従って順次出力する撮像部から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記撮像部から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返す、ように前記少なくとも1つのプロセッサを機能させ、前記一連の処理が、前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記撮像部から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、を含む」ことができる。
図1は、一実施形態に係る情報処理装置100のハードウェア構成の一例を示すブロック図である。 図2Aは、図1に示した情報処理装置100により行われる動作の一例を示すフロー図である。 図2Bは、図2Aに示すフローの一部の演算内容を詳細に示す模式図である。 図3は、図1に示した情報処理装置100により生成される線分画像の一例を示す模式図である。 図4は、図1に示した情報処理装置100により生成される画像が変化する様子の一例を示す模式図である。 図5は、図1に示した情報処理装置100により生成された2値化画像に残存する画素を囲む矩形を決定する方法の一例を説明する模式図である。 図6は、図1に示した情報処理装置100により算出された矩形の面積が変化する様子の一例を示す模式図である。 図7は、図1に示した情報処理装置100により算出された矩形の面積が変化する様子の別の例を示す模式図である。 図8は、図1に示した情報処理装置100により生成される各種の画像の一例を示す模式図である。 図9は、図1に示した情報処理装置100により行われる動作の別の例を示すフロー図である。 図10は、図1に示した情報処理装置100を搭載したスマートレジカート1000の構成の一例を模式的に示す斜視図である。 図11は、図10に示したスマートレジカート1000により行われる動作の一例を示すフロー図である。 図12は、図10に示したスマートレジカート1000の表示装置1040に表示される保存画像及び未スキャン投入警告情報の具体例を示す模式図である。
以下、添付図面を参照して様々な実施形態を説明する。なお、図面において共通した構成要素には同一の参照符号が付されている。また、或る図面に表現された構成要素が、説明の便宜上、別の図面においては省略されていることがある点に留意されたい。さらにまた、添付した図面が必ずしも正確な縮尺で記載されている訳ではないということに注意されたい。
1.一実施形態に係る情報処理装置の概要
まず、一実施形態に係る情報処理装置の概要を説明する。
一実施形態に係る情報処理装置は、主に、動画供給源から供給される動画において新たに生じた物体(商品等)を検知し、そのように検知された物体の画像を取得して履歴情報として保存することを、1つの目的とすることができる。ここで、「動画供給源から供給される動画」は、以下に例示する動画のうちの少なくとも1つを含むことができる。
・当該情報処理装置に搭載及び/又は接続されたカメラにより撮像及び出力される動画
・カメラにより撮像及び出力され、通信回線を介して受信される動画
・コンピュータ(サーバ装置等)から通信回線を介して受信される動画
・当該情報処理装置の内部及び/又は外部における任意の場所(コンピュータ及び/又は記録媒体等)に記録された動画ファイルを、動画視聴アプリケーション等を用いて実行することにより受信される動画
上記特許文献1〜上記特許文献8に記載された従来の背景差分技術は、カメラにより撮像された2枚の静止画の間において変化した領域を識別する技術に過ぎない。すなわち、上記従来の背景差分技術は、過去に撮像されたカメラ画像(自然画)と現在のカメラ画像(自然画)とを加算/減算することにより、差分領域を特定する技術に過ぎない。
したがって、このような従来の背景差分技術には、特定された差分領域が、人間の身体の一部(手や腕等)に対応するのか、人間の身体の一部(手や腕等)の影に対応するのか、人間により握持された物体(商品等)に対応するのかを判別する機能は、存在しない。さらに、上記従来の背景差分技術は、外部から指定された複数枚の静止画の差分領域を特定するものであるので、動画には対応することができない。
一方、一実施形態に係る情報処理装置は、主に、次の2つの特徴を有することができる。なお、これらの特徴の詳細については後に詳述する。
まず第1に、上記情報処理装置は、動画を扱うことを前提とした新規な背景差分技術を用いることにより、現在画像と過去画像とを動的に作り出すことができる。ここで、現在画像とは、動画供給源から供給される画像に生じた変化をより早く反映した画像をいい、過去画像とは、動画供給源から供給される画像に生じた変化をより遅く反映した画像をいう。これにより、上記情報処理装置は、望ましい画像(例えば、動画供給源から供給される動画において、新たに生じた物体が写り、その物体に対してその物体を握持している人間の身体やその影等が写っていない画像)を動画供給源から取得するタイミングを、自動的に識別することができる(これに対して、上記従来の背景差分技術は、与えられた複数枚の静止画(現在画像/過去画像)間において変化した領域を抽出することしかできない)。
第2に、上記情報処理装置は、動画供給源から供給される動画において新たに物体(商品等)が生じた際に、その物体が静止したこと(静止物体)を検知することができる。これにより、上記情報処理装置は、その物体が静止したタイミングで、動画供給源からその物体が写る画像を取得することができる。これにより、上記情報処理装置は、動きのある物体(動きブレ、手や腕、これらの影等)の写り込みを排除した、静止した後の物体が写る画像を、動画供給源から取得することができる。
このような特徴は、簡潔にいえば、例えば、次に示す処理を用いることにより実現可能である。なお、これらの処理の詳細については、図面を参照して後に詳述する。
まず、第1に、一実施形態に係る情報処理装置は、動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から、これら複数の動画のうちの1つの画像(静止画)を対象画像として取得することができる。さらに、上記情報処理装置は、対象画像に対して微分処理(線分抽出処理)を実行することができる。これにより、上記情報処理装置は、対象画像に写る各物体の輪郭が抽出された線分画像を生成することができる。
ここで、対象画像に写る移動物体にはブレが生じるため、線分画像では、そのような移動物体の輪郭は、抽出されにくくなる。
なお、ここでは、対象画像から線分画像を生成するために、一実施形態では、微分処理が用いられるが、別の実施形態では、その他の処理を用いることも可能である。
第2に、上記情報処理装置は、上記のように生成された線分画像を時間軸方向で積分することにより、蓄積画像を取得することができる。これにより、蓄積画像では、静止物の輪郭の値はそのまま残り、移動物の輪郭は消えるか又は薄くなる。
さらに具体的には、上記情報処理装置は、各々が相互に異なる加算比率を用いる2種類の積分器を使用することにより、同一の線分画像を用いて2種類の蓄積画像を生成することができる。2種類の積分器は、短蓄積分器(第1積分器)及び長蓄積分器(第2積分器)を含むことができる。
各積分器は、新たに生成すべき蓄積画像の対象画素の画素値を、現在の線分画像の当該対象画素の画素値に或る比率(比率A)を掛けた値と、これまでに生成された蓄積画像の当該対象画素の画素値に別の比率(1.0−比率A)を掛けた値と、を加算することにより、新たな蓄積画像を生成する、という点において共通する。但し、短蓄積分器は、比率Aとして、長蓄積分器が用いるものよりも大きい比率(後に説明する第1比率)を用い、長蓄積分器は、比率Aとして、短蓄積分器が用いるものよりも小さい比率(後に説明する第2比率)を用いることができる。これにより、短蓄積分器は、新しい変化(例えば、移動する物体の動き)を、長蓄積分器よりも早く反映した蓄積画像(第1蓄積画像)を生成し、長蓄積分器は、新しい変化(例えば、移動する物体の動き)を、短蓄積分器よりも遅く反映した蓄積画像(第2蓄積画像)を生成することができる。
第3に、上記情報処理装置は、同一の線分画像を用いて短蓄積分器により生成された第1蓄積画像から、同一の線分画像を用いて長蓄積分器により生成された第2蓄積画像を減ずることにより、上記線分画像について差分画像を生成することができる。本発明者は、動画供給源から供給される動画において、新たな物体が生じた後、その物体が静止した直後付近において、この差分画像に基づく参照値は概ね最大になる性質に着目した。そこで、上記情報処理装置は、差分画像に基づく参照値を監視し、この参照値が最大になるポイントで、動画供給源から新たな画像を取得して保存画像として保存することができる。この保存画像には、それまで移動していた物体が静止した状態で写ることとなる。
なお、差分画像に基づく参照値としては、第1の例として、この差分画像に含まれる各画素の画素値を合計した値を用いることができる。また、差分画像に基づく参照値としては、第2の例として、各画素の画素値を閾値に基づいて2値化した差分画像において、画素値が1である各画素全体を外側から囲む領域の面積を用いることができる。ここで、差分画像を2値化することは、差分画像の各画素について、その画素値が規定閾値(基準値)以上である場合には、当該画素の画素値を「1」に設定し、その画素値が規定閾値(基準値)未満である場合には、当該画素の画素値を「0」に設定することであり得る。
2.一実施形態に係る情報処理装置の構成
次に、一実施形態に係る情報処理装置の構成を説明する。
一実施形態に係る情報処理装置は、動画供給源から出力される動画において新たに生じた物体を検知するために用いられ得る。この情報処理装置は、スマートフォン、携帯電話、パーソナルコンピュータ、マイクロコンピュータ、スーパーコンピュータ、携帯情報端末、端末装置及びサーバ装置等を、これらに限定することなく含むことができる。このような情報処理装置は、例えば、この情報処理装置にインストールされた特定のアプリケーション(ソフトウェア又はソフトウェアとミドルウェアとの組み合わせ)を実行することにより、動画供給源から出力される動画において新たに生じた物体を検知する動作を実行することができる。
2−1.ハードウェア構成
図1は、このような情報処理装置のハードウェア構成の一例を示すブロック図である。図1に示すように、情報処理装置100は、主に、中央処理装置101と、主記憶装置102と、入出力(I/O)インタフェイス装置103と、入力装置104と、補助記憶装置105と、出力装置106と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続され得る。
中央処理装置101は、「CPU(Central Prosessing Unit)」と称され、主記憶装置102に記憶されている命令及びデータに対して演算を行い、その演算の結果を主記憶装置102に記憶させることができる。さらに、中央処理装置101は、入出力インタフェイス装置103を介して、入力装置104、補助記憶装置105及び出力装置106等を制御することができる。情報処理装置100は、1又はそれ以上のこのような中央処理装置101を含むことが可能である。
主記憶装置102は、「メモリ」と称され、入力装置104、補助記憶装置105及び通信網10等から、入出力インタフェイス装置103及び中央処理装置101を介して受信した命令及びデータ、並びに、中央処理装置101の演算結果を記憶することができる。主記憶装置102は、RAM(ランダムアクセスメモリ)、ROM(リードオンリーメモリ)及び/又はフラッシュメモリ等を、これらに限定することなく含むことができる。
補助記憶装置105は、主記憶装置102よりも大きな容量を有する記憶装置である。上記特定のアプリケーション等を構成する命令及びデータ(コンピュータプログラム)を記憶することができる。この補助記憶装置105は、中央処理装置101により制御されることにより、これらの命令及びデータ(コンピュータプログラム)を、入出力インタフェイス装置103を介して主記憶装置102に送信することができる。補助記憶装置105は、磁気ディスク装置及び/又は光ディスク装置等をこれらに限定することなく含むことができる。
入力装置104は、外部からデータを取り込む装置であり、タッチパネル、ボタン、キーボード、マウス及び/又はセンサ等をこれらに限定することなく含むものである。センサは、後述するように、1又はそれ以上のカメラ等をこれらに限定することなく含むことができる。
出力装置106は、ディスプレイ装置、タッチパネル及び/又はプリンタ装置等をこれらに限定することなく含むことができる。
このようなハードウェア構成にあっては、中央処理装置101は、補助記憶装置105に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置102にロードし、ロードした命令及びデータを演算することができる。よって、中央処理装置101は、入出力インタフェイス装置103を介して出力装置106を制御し、或いはまた、入出力インタフェイス装置103及び通信網10を介して、他の装置との間で様々な情報の送受信を行うことができる。
これにより、情報処理装置100は、インストールされた特定のアプリケーション等を実行することにより、動画供給源から出力される動画において新たに生じた物体を検知することに関連する動作を実行することができる。かかる動作については、図面を参照して後述する。
なお、情報処理装置100は、中央処理装置101に代えて又は中央処理装置101とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むこともできる。
また、通信網10は、携帯電話網、無線ネットワーク、固定電話網、インターネット、イントラネット(登録商標)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、及び/又は、イーサネットネットワークを、これらに限定することなく含むことができる。ここで、無線ネットワークには、例えば、Bluetooth(登録商標)、(IEEE 802.11a/b/nといったような)WiFi、WiMax、衛星、レーザー、赤外線を介したRF接続が含まれ得る。
3.情報処理装置100の動作の一例
次に、一実施形態に係る情報処理装置100により行われる動作の一例を、図2A及び図2Bを同時に参照して説明する。図2Aは、図1に示した情報処理装置100により行われる動作の一例を示すフロー図である。図2Bは、図2Aに示すフローの一部の演算内容を詳細に示す模式図である。なお、図2A及び図2Bにおいて、同一のフローに対して同一の参照符号が付されている。
以下、便宜上、基本的に図2A及び図2Bに示すフローに沿いつつも、途中で他の図面を参照した後に再度図2A及び図2Bに戻ることを繰り返しながら、上記動作の具体例を説明することに留意されたい
まず、ステップ(以下「ST」という。)200において、情報処理装置100は、入力装置104、ここでは、一例として図示しないカメラから出力される動画を取得することができる。具体的には、情報処理装置100は、動画を構成する複数の画像(静止画)を任意のフレームレート(例えば毎秒30枚/毎秒60枚等)に従って順次出力する入力装置(カメラ)104に接続されている。情報処理装置100は、カメラ104から、上記複数の画像のうちの1つの画像(静止画)を対象画像として取得する度に、以下の経路(A)〜経路(C)のうちのいずれかの経路を辿る動作を実行することができる。
(A)ST200〜ST214を実行した後、ST220を実行して、ST200に戻る動作
(B)ST200〜ST214を実行した後、ST216及びST218を実行して、ST200に戻る動作
(C)ST200〜ST214を実行した後、ST220を実行した結果、ST222及びST224を実行して、ST200に戻る動作
情報処理装置100は、経路(A)〜経路(C)のうちのいずれかの経路を辿った後にST200に戻ったときには、このST200において、カメラ104から、上記複数の画像のうちの次の1つの画像を対象画像として取得することができる。ここで、「次の1つの画像」は、前回カメラ104から取得した画像の直ぐ後に続く(すなわち1番目に続く)1つの画像であってもよいし、前回カメラから取得した画像から2番目以降に続く1つの画像であってもよい。
なお、好ましい実施形態においては、情報処理装置100は、十分な性能を有するCPU101を搭載することができる。この場合には、情報処理装置100は、経路(A)〜経路(C)のうちのいずれの経路についても、十分に高速に実行することが可能である。よって、情報処理装置100は、カメラ104により出力される上記複数の画像の「各々」について、順次、経路(A)〜経路(C)のうちのいずれかの経路を辿る動作を実行することができる。
一方、別の実施形態においては、情報処理装置100は、コスト等を考慮して、より低い性能を有するCPU101を搭載することもあり得る。この場合には、情報処理装置100は、経路(A)〜経路(C)のうちのいずれかの経路について、十分に高速に実行することができない可能性がある。よって、情報処理装置100は、カメラ104により出力される上記複数の画像のうちの一部のみについて(すなわち間欠的に)、順次、経路(A)〜経路(C)のうちのいずれかの経路を辿る動作を実行することができる。
ST202では、情報処理装置100は、ST200において取得した対象画像に対して微分処理を施すことにより、すなわち、対象画像を微分器に通すことにより、線分画像を生成することができる。生成された線分画像は、対象画像に写る各物体の輪郭線を示す情報を含むことができる。ST202において生成される線分画像の具体例について、図3を参照して説明する。図3は、図1に示した情報処理装置100により生成される線分画像の一例を示す模式図である。
図3において、左方には、ST200において取得された対象画像300Aが示され、右方には、ST202において生成された線分画像300Bが示されている。例えば、対象画像300Aに写る物体310に着目すると、線分画像300Bは、物体310の輪郭線に対応する画素において大きい画素値を有し、物体310の輪郭線に囲まれる部分に対応する画素において小さい画素値を有することができる。物体310は、静止している物体であるため、線分画像300Bにおいて、物体310の輪郭線は微分処理を経てもくっきりと表れる。これに対して、動いている物体(図示せず)の輪郭線及びその物体の影(図示せず)の輪郭線は、動きブレを含むため、微分処理を経ることによって薄くなる。
このような線分画像の性質についてさらに図4を参照して説明する。図4は、図1に示した情報処理装置100により生成される画像が変化する様子の一例を示す模式図である。図4には、3つの対象画像400A、400B、400Cからそれぞれ3つの線分画像410A、410B、410Cが生成され、これら3つの線分画像から蓄積画像420が生成され、蓄積画像420から2値化画像430が生成される様子が例示されている。
まず、対象画像400A、400B、400Cに着目する。対象画像400A、400B、400Cは、入力装置(カメラ)104から情報処理装置100により、それぞれ、第1のタイミング、第2のタイミング及び第3のタイミングにおいて取得された画像である。物体402は、静止しているため、対象画像400A〜400Cにおいて静止した状態で写っている。移動している手404は、対象画像400Aでは位置404Aのみにおいて写り、対象画像400Bでは位置404Bのみにおいて写り、対象画像400Cでは位置404Cのみにおいて写る。
次に、線分画像410A、410B、410Cに着目する。物体402は静止しているため、その輪郭線(微分値)412は、線分画像410A、410B、410Cのいずれにおいても、同一の位置においてくっきりと表れる。これに対して、手404は移動している。よって、手404の輪郭線(微分値)は、線分画像410Aでは、位置410Aのみにおいて薄く表れ、線分画像410Bでは、位置410Bのみにおいて薄く表れ、線分画像410Cでは、位置410Cのみにおいて薄く表れる。
なお、蓄積画像420及び2値化画像430については、後述する。
以上、図3及び図4を参照して、線分画像の具体例について説明した。
図2A及び図2Bに戻り、次に、ST204では、情報処理装置100は、ST202において生成された線分画像に対して第1積分処理を実行することにより、すなわち、線分画像を第1積分器(短蓄積分器)に通すことにより、蓄積画像(第1蓄積画像)を生成することができる。
具体的には、図2Bに示すように、第1積分器(短蓄積分器)204は、例えば、第1乗算器204Aと、減算器204Bと、第2乗算器204Cと、加算器204Dと、を含むことができる。
第1乗算器204Aは、微分器202により出力された線分画像(N番目の線分画像)に含まれる複数の対象画素の各々の画素値に対して第1比率を乗ずることができる。減算器204Bは、例えば1.0から第1比率を減じた比率を出力することができる。
第2乗算器204Cは、その時点で第1積分器(短蓄積分器)204により生成された第1蓄積画像(N−1番目の線分画像に基づいて生成された第1蓄積画像)に含まれる複数の対象画素の各々の画素値に対して、減算器204Bからの比率(1.0−第1比率)を乗ずることができる。
加算器204Dは、上記複数の対象画素に含まれる対象画素ごとに、第1乗算器204Aにより出力される画素値(N番目の線分画像におけるその対象画素の画素値×第1比率)と、第2乗算器204Cにより出力される画素値(N−1番目の線分画像に基づいて生成された第1蓄積画像におけるその対象画素の画素値×(1.0−第1比率))と、を加算することができる。これにより、加算器204Dは、上記複数の対象画素を含む新たな第1蓄積画像を生成することができる。
このようにして、情報処理装置100は、複数の対象画素の各々について、N番目の線分画像に含まれる当該対象画素の画素値に第1比率(例えば0.07)を乗じた値と、N−1番目の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から第1比率を減じた比率(例えば0.93)を乗じた値と、を合算することにより得られた画素値を、新たな第1蓄積画像の当該対象画素の画素値とすることができる。これにより、情報処理装置100は、N番目の線分画像と、N−1番目の線分画像について生成された第1蓄積画像と、を用いて、新たな第1蓄積画像、すなわち、N番目の線分画像についての第1蓄積画像を生成することができる。
ここでは、一例として、第1比率が0.07である場合について説明したが、第1比率は、後述する第2比率より大きい任意の比率(0より大きく1未満の比率)とすることができる。この場合、第1比率を大きく設定することにより、第1蓄積画像は、より速い変化(動き)を検知及び反映することができる。一方、第1比率を小さく設定することにより、第1蓄積画像は、より速い変化(動き)を無視して反映しないようにすることができる。情報処理装置100が用いられる用途・アプリケーションに応じて、第1比率を設定することができる。
ここでは、N番目の線分画像についての第1蓄積画像を生成するために、N番目の線分画像に含まれるすべての画素(N−1番目の第1蓄積画像に含まれるすべての画素)の各々について、その画素の画素値に第1比率を乗じた値と、N−1番目の線分画像に含まれるその画素の画素値に、1.0から第1比率を減じた比率を乗じた値と、を合算した画素値を、新たな第1蓄積画像に含まれるその画素の画素値とする場合について説明した。すなわち、「複数の対象画素」が、N番目の線分画像(N−1番目の線分画像)に含まれるすべての画素である場合について説明した。しかし、別の実施形態では、「複数の対象画素」は、N番目の線分画像(N−1番目の線分画像)に含まれる一部の画素であってもよい。すなわち、N番目の線分画像についての第1蓄積画像を生成するために、N番目の線分画像に含まれるすべての画素及びN−1番目の線分画像に含まれるすべての画素を用いることは必須ではなく、N番目の線分画像に含まれる一部の画素及びN−1番目の線分画像に含まれる当該一部の画素のみを用いることも可能である。ここでいう一部の画素は、例えば、N番目の線分画像(N−1番目の線分画像)に含まれるすべての画素から、当該線分画像の外縁部分に存在する複数の画素(全体として略ロ字状に延びる複数の画素)を除いた画素であってもよい。
このように生成される第1蓄積画像(短蓄画像)の具体例について、先に示した図4を参照する。図4に示された蓄積画像420は、第1蓄積画像の一例として捉えることも可能である。第一蓄積画像420は、3つの線分画像410A、410B、410Cを順次第1積分器(短蓄積分器)に通すことにより生成された画像である。
第1蓄積画像420では、静止している物体402の輪郭線(微分値)412は、線分画像410A〜410Cに比べて、ほとんど変化しない。一方、移動している手404の輪郭線(微分値)は、第1蓄積画像420では、線分画像410A〜410Cに比べて、さらに小さくなる。したがって、第1蓄積画像420では、移動している手404の輪郭線は、線分画像410A〜410Cに比べて、さらに薄く映る。このような第1蓄積画像420は、2値化処理を施されることによって、図4に例示された2値化画像430のように、手のみを消し去ることが可能になる。
以上、第1蓄積画像の具体例について説明した。
再度図2A及び図2Bに戻り、次に、ST206では、情報処理装置100は、ST202において生成された線分画像に対して第2積分処理を実行することにより、すなわち、線分画像を第2積分器(長蓄積分器)に通すことにより、蓄積画像(第2蓄積画像)を生成することができる。
具体的には、図2Bに示すように、第2積分器(長蓄積分器)206は、例えば、第1乗算器206Aと、減算器206Bと、第2乗算器206Cと、加算器206Dと、を含むことができる。
第1乗算器206Aは、微分器202により出力された線分画像(N番目の線分画像)に含まれる複数の対象画素の各々の画素値に対して第2比率を乗ずることができる。減算器206Bは、例えば1.0から第2比率を減じた比率を出力することができる。
第2乗算器206Cは、その時点で第2積分器(長蓄積分器)206により生成された第2蓄積画像(N−1番目の線分画像に基づいて生成された第2蓄積画像)に含まれる複数の対象画素の各々の画素値に対して、減算器206Bからの比率(1.0−第2比率)を乗ずることができる。
加算器206Dは、上記複数の対象画素に含まれる対象画素ごとに、第1乗算器206Aにより出力される画素値(N番目の線分画像におけるその対象画素の画素値×第2比率)と、第2乗算器206Cにより出力される画素値(N−1番目の線分画像に基づいて生成された第2蓄積画像におけるその対象画素の画素値×(1.0−第2比率))と、を加算することができる。これにより、加算器206Dは、上記複数の対象画素を含む新たな第2蓄積画像を生成することができる。
このようにして、情報処理装置100は、複数の対象画素の各々について、N番目の線分画像に含まれる当該対象画素の画素値に第2比率(例えば0.04)を乗じた値と、N−1番目の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から第2比率を減じた比率(例えば0.96)を乗じた値と、を合算することにより得られた画素値を、新たな第2蓄積画像の当該対象画素の画素値とすることができる。これにより、情報処理装置100は、N番目の線分画像と、N−1番目の線分画像について生成された第2蓄積画像と、を用いて、新たな第2蓄積画像、すなわち、N番目の線分画像についての第2蓄積画像を生成することができる。
ここでは、一例として、第2比率が0.04である場合について説明したが、第2比率は、上述した第1比率より小さい任意の比率(0より大きく1未満の比率)とすることができる。
ここでは、N番目の線分画像についての第2蓄積画像を生成するために、N番目の線分画像に含まれるすべての画素(N−1番目の第2蓄積画像に含まれるすべての画素)の各々について、その画素の画素値に第2比率を乗じた値と、N−1番目の線分画像に含まれるその画素の画素値に、1.0から第2比率を減じた比率を乗じた値と、を合算した画素値を、新たな第2蓄積画像に含まれるその画素の画素値とする場合について説明した。すなわち、「複数の対象画素」が、N番目の線分画像(N−1番目の線分画像)に含まれるすべての画素である場合について説明した。しかし、別の実施形態では、「複数の対象画素」は、N番目の線分画像(N−1番目の線分画像)に含まれる一部の画素であってもよい。すなわち、N番目の線分画像についての第2蓄積画像を生成するために、N番目の線分画像に含まれるすべての画素及びN−1番目の線分画像に含まれるすべての画素を用いることは必須ではなく、N番目の線分画像に含まれる一部の画素及びN−1番目の線分画像に含まれる当該一部の画素のみを用いることも可能である。ここでいう一部の画素は、例えば、N番目の線分画像(N−1番目の線分画像)に含まれるすべての画素から、当該線分画像の外縁部分に存在する複数の画素(全体として略ロ字状に延びる複数の画素)を除いた画素であってもよい。この場合、第2蓄積画像における「複数の対象画素」は、第1蓄積画像における「複数の対象画素」と一致することが望ましい。
ST204において情報処理装置100により生成された第1蓄積画像とST206において情報処理装置100により生成された第2蓄積画像とを比較すると、第1蓄積画像の生成に使用される第1比率は、第2蓄積画像の生成に使用される第2比率よりも大きい。この結果、同一の線分画像について生成された第1蓄積画像は、その線分画像に生じた変化に対してより早く反応し、同一の線分画像について生成された第2蓄積画像は、その線分画像に生じた変化に対してより遅く反応する。すなわち、同一の線分画像について生成された第1蓄積画像は、その線分画像に新たに追加された物体をより早く表し、同一の線分画像について生成された第2蓄積画像は、その線分画像に新たに追加された(新たに入ってきた)上記物体をより遅く表す。このような性質に基づいて、情報処理装置100は、第1蓄積画像を現在画像として利用し、第2蓄積画像を過去画像として利用することができる。ここで、現在画像とは、動画供給源から供給される画像に生じた変化をより早く反映した画像をいい、過去画像とは、動画供給源から供給される画像に生じた変化をより遅く反映した画像をいう。
次に、ST208において、情報処理装置100は、ST204において生成された同一の線分画像についての第1蓄積画像(短蓄画像)から、ST206において生成された当該同一の線分画像についての第2蓄積画像(長蓄画像)を減ずることにより、当該同一の線分画像についての差分画像を生成することができる。
具体的には、情報処理装置100は、例えば、N番目の線分画像についての第1蓄積画像及びN番目の線分画像についての第2蓄積画像を用いる場合には、第1蓄積画像に含まれる複数の対象画素(例えば、1920×1200の対象画素)に含まれる1番目の対象画素の画素値から、第2蓄積画像に含まれる1番目の対象画素の画素値を減ずることにより得られた画素値を、N番目の線分画像についての差分画像に含まれる1番目の対象画素の画素値とすることができる。
同様に、情報処理装置100は、第1蓄積画像に含まれる上記複数の対象画素に含まれる2番目の対象画素の画素値から、第2蓄積画像に含まれる2番目の対象画素の画素値を減ずることにより得られた画素値を、N番目の線分画像についての差分画像に含まれる2番目の対象画素の画素値とすることができる。
このように、情報処理装置100は、上記複数の対象画素の各々について、N番目の線分画像について生成された第1蓄積画像の当該対象画素の画素値から、N番目の線分画像について生成された第2蓄積画像の当該対象画素の画素値を減ずることにより、N番目の線分画像についての差分画像を生成することができる。
一実施形態では、差分画像の各画素の画素値は、例えば8ビットで表現され得る。すなわち、差分画像の各画素の画素値は、例えば0〜255の範囲にある値を有することができる。
このような差分画像は、動画供給源から供給される画像に生じた変化をより早く反映した画像である現在画像から、動画供給源から供給される画像に生じた変化をより遅く反映した過去画像を差し引くことにより生成された画像である。これにより、差分画像は、動画供給源から供給される画像において変化が生じた部分のみを取り出して写す画像であるということができる。
なお、上記「複数の対象画素」は、一実施形態では、N番目の線分画像についての第1蓄積画像(及び第2蓄積画像)に含まれるすべての画素とすることができる。別の実施形態では、上記「複数の対象画素」は、N番目の線分画像についての第1蓄積画像(及び第2蓄積画像)に含まれる一部の画素とすることもできる。
次に、ST210において、情報処理装置100は、差分画像を規定閾値(基準値)に基づいて2値化することにより、2値化画像を生成することができる。具体的には、情報処理装置100は、差分画像の各画素について、その画素値が規定閾値(基準値)以上である場合には、当該画素の画素値を「1」に設定し、その画素値が規定閾値(基準値)未満である場合には、当該画素の画素値を「0」に設定することができる。このように生成された2値化画像の各画素の画素値は「1」又は「0」である。
ここで、2値化画像の具体例について、先に用いた図4を参照して説明する。図4に関連して上述したように、線分画像410A、410B、410Cでは、静止している物体412の輪郭線(微分値)はくっきり表れ、移動している手404の輪郭線(微分値)は薄くなる。また、第1蓄積画像(短蓄画像)420では、静止している物体412の輪郭線はそのまま残り、移動している手404の輪郭線はさらに薄くなっている。このようにして、第1蓄積画像420では、静止している物体412の輪郭線の強さと、移動している手404の輪郭線の強さとの差は、大きくなっている。
ここで、第1蓄積画像(短蓄画像)420と、第2蓄積画像(長蓄画像)(図示せず)との間に生じた変化が、物体412が新たに置かれたことである場合には、差分画像は、主に、静止している物体412の輪郭線を写している。この差分画像が移動している手404の薄くなった輪郭線を写していたとしても、この差分画像では、静止している物体412の輪郭線の強さと、移動している手404の輪郭線の強さとの差が大きくなっている。したがって、このような差分画像を規定閾値(基準値)に基づいて2値化することにより生成される2値化画像430では、移動している手404の輪郭線は「0」に設定され、静止している物体412の輪郭線は「1」に設定される。これにより、2値化画像430では、静止している物体412の輪郭線と移動している手412の輪郭線とが、正確にかつ安定的に分離されることになる。したがって、図4に例示するように、2値化画像430は、専ら静止している物体412の輪郭線のみを含むことができる。
再度図2Aに戻り、次に、ST212において、情報処理装置100は、2値化画像において残存する画素を囲う矩形を決定することができる。すなわち、情報処理装置100は、2値化画像において画素値「1」を有する画素全体を囲う矩形を決定することができる。ここで、2値化画像において画素値「1」を有する画素は、図4に示した例では、物体412の輪郭線に対応する各画素である。さらに、情報処理装置100は、このように決定した矩形の面積を算出することができる。
ST212において情報処理装置100が行う具体的な情報処理の一例について、図5を参照して説明する。図5は、図1に示した情報処理装置100により生成された2値化画像に残存する画素全体を外側から囲む領域(例えば矩形)を決定する方法の一例を説明する模式図である。
まず、情報処理装置100は、2値化画像において画素値「1」を有する画素(図5の例では、物体500の輪郭線502)の座標値をスキャンすることにより、このような画素値「1」を有する画素について、x座標の最大値及び最小値、並びに、y座標の最大値及び最小値を抽出することができる。
次に、情報処理装置100は、(x座標の最小値,y座標の最小値)−(x座標の最大値,y座標の最大値)という形式により、画素値「1」を有する画素を囲う矩形510を定義することができる。このような矩形510に関する情報、すなわち、例えば(x座標の最小値,y座標の最小値)−(x座標の最大値,y座標の最大値)を、矩形情報(領域情報)ということができる。
さらに、情報処理装置100は、(xの最大値−xの最小値)×(yの最大値−yの最小値)により、矩形510の面積を算出することができる。
なお、図5に示した例では、「2値化画像に残存する画素全体を外側から囲む領域」が、x軸に平行に延びる2本の線と、y軸に平行に延びる2本の線と、により形成される。しかし、「2値化画像に残存する画素全体を外側から囲む領域」は、2値化画像に残存する画素全体を外側から囲む限りにおいて、3本以上の線により形成されるものであってもよい。
また、図5に示した例は単なる一例に過ぎず、情報処理装置100は、物体500の輪郭線502により囲まれる領域の面積自体を算出してもよい。
以上、ST212において情報処理装置100により行われる処理の例について説明した。
再度図2Aに戻り、次に、ST214以降において、情報処理装置100は、ST212で算出された矩形の面積に基づいた処理を実行することができる。このような矩形の面積に基づいた処理を行う理由について、図6及び図7を参照して説明する。図6は、図1に示した情報処理装置100により算出された矩形の面積が変化する様子の一例を示す模式図である。図7は、図1に示した情報処理装置100により算出された矩形の面積が変化する様子の別の例を示す模式図である。
図6には、時間の経過とともに、第1蓄積画像(短蓄画像)の各画素の画素値の合計値600、及び、第2蓄積画像(長蓄画像)の各画素の画素値の合計値602が変化する様子が示されている。
動画供給源から供給される画像において、人間の手に握持された物体(対象物)が置かれる動作が写されている場合について考える。図4を参照して上述したように、第1蓄積画像(短蓄画像)では、移動している人間の手の輪郭線及び移動している物体の輪郭線は、薄くなる。したがって、人間の手及び対象物が生じた時点610から、人間の手により対象物が置かれた時点616までの期間612、すなわち、人間の手及びこれに握持された対象物が移動している間の期間612においては、第1蓄積画像(短蓄画像)では、人間の手及び対象物の輪郭線は、ボケた状態になり、はっきりした状態にはならない。これにより、期間612においては、第1蓄積画像の各画素の画素値の合計値600は、小さい。この結果、第1蓄積画像(短蓄画像)の各画素の画素値の合計値600と第2蓄積画像(長蓄画像)の各画素の画素値の合計値602との差分は小さい。
しかし、対象物が置かれることにより静止した後にあっては、図4を参照して上述したように、対象物の輪郭線はクリアになりはっきりした線分となる。したがって、時点616付近以降の期間614にあっては、合計値600は、増加していく。一方、第2蓄積画像の生成に用いられる第2比率は、上述したように、第1蓄積画像の生成に用いられる第1比率より小さい。この結果、この期間614では、合計値600と合計値602との差分が拡大していく。この例では、時点618において、合計値600と合計値602との差分は最大となる。この後、合計値600は、最大値604に到達するとその値604を維持することになる。
この後、第2蓄積画像の各画素の画素値の合計値602は、第1蓄積画像の各画素の画素値の合計値600に比べて、より遅くすなわちより長い時間をかけて、最大値604に到達する。これにより、合計値600と合計値602との差分は0になる。
このような第1蓄積画像及び第2蓄積画像の性質を利用すれば、人間の手により対象物が置かれた直後のタイミングを検知することが可能である。一実施形態では、情報処理装置100は、合計値600から合計値602を減じた値が最大である時点618を、対象物が置かれた直後のタイミングとして検知することができる。この時点618又はこの時点618の付近において入力装置(カメラ)104から取得したカメラ画像は、対象物を握持する手が写り込まない対象物のみを写す画像になっている。
合計値600から合計値602を減じた値は、差分画像の各画素の画素値を合計した値に略等しい。ST212で算出される矩形の面積は、上述したように差分画像に残存する画素の画素値に基づいて生成されている。よって、矩形の面積は、合計値600から合計値602を減じた値(差分画像の各画素の画素値を合計した値)の増加(又は減少)に応じて、増加(又は減少)するといえる(この理由により、図6の縦軸は「矩形の面積」として記載されている)。このようにして、情報処理装置100は、矩形の面積が最大である時点618を、物体が置かれた直後のタイミングとして検知することができる。
ここで、情報処理装置100は、ある対象画像について矩形の面積を算出した時点(図2Aに示したST212)においては、その矩形の面積が最大値であるか否かを判定することはできない。なぜならば、その対象画像について算出された矩形の面積は、次回以降にST200で取得される対象画像について算出される矩形の面積より小さい可能性があるからである。
したがって、情報処理装置100は、図7に示す手法により、矩形の面積の最大値を決定することができる。図7において、縦軸は矩形の面積を示し、横軸は時間を示す。なお、期間700及び期間710にあっては、物体が移動しているため、矩形の面積は小さくなっている。
情報処理装置100は、或る対象画像についてST212で算出した矩形の面積が、前回以降の対象画像について算出した矩形の面積の最大値より大きいと、ST214において判定する度に、上記或る対象画像について算出した矩形の面積を最大値として上書き保存することができる。図7に示す例では、情報処理装置100は、矩形の面積を示す曲線において楕円状の記号が付されたタイミングで、当該対象画像について算出した矩形の面積を最大値として上書き保存することができる。この後、矩形の面積が閾値(最小値)702以下となった時点704において、情報処理装置100は、それまでに最大値として保存されている矩形の面積を、最終的な最大値として決定することができる。
その後も同様に、情報処理装置100は、矩形の面積を示す曲線において楕円状の記号が付されたタイミングで、当該対象画像について算出した矩形の面積を最大値として上書き保存することができる。この後、矩形の面積が閾値(最小値)702以下となった時点712において、情報処理装置100は、それまでに最大値として保存されている矩形の面積を、最終的な最大値として決定することができる。
以上、情報処理装置100が矩形の面積に基づいた処理を行う理由について説明した。
再度図2Aに戻り、ST214では、情報処理装置100は、ST212で算出した矩形の面積が、過去に算出した矩形の面積、すなわち、前回以前の差分画像に基づいて算出された矩形の面積よりも大きいか否かを判定することができる。
情報処理装置100は、ST212で算出した矩形の面積が過去に算出した矩形の面積より大きいと判定した場合には、処理は後述するST216に移行する。一方、情報処理装置100は、ST212で算出した矩形の面積が過去に算出した矩形の面積以下であると判定した場合には、処理は後述するST220に移行する。
ST216では、情報処理装置100は、その時点において入力装置(カメラ)104から出力される画像(最新カメラ画像)を取得することができる。次に、ST218において、情報処理装置100は、ST216で取得した画像を保存画像として保存(更新)することができる。さらに、情報処理装置100は、ST212で決定した矩形(図5に例示した矩形510)に関する情報、すなわち、例えば(x座標の最小値,y座標の最小値)−(x座標の最大値,y座標の最大値)を、矩形情報(領域情報)として保存(更新)することができる。さらにまた、情報処理装置100は、ST212で算出した矩形の面積を最大値として保存(更新)することができる。この後、処理は、上述したST200に戻る。
一方、(ST212で算出した矩形の面積が過去に算出した矩形の面積以下であると判定した場合には)ST220において、情報処理装置100は、ST212で算出した矩形の面積が閾値(最小値)以下となっているか否かを判定することができる。
情報処理装置100は、ST212で算出した矩形の面積が閾値(最小値)を上回ると判定した場合には、処理は上述したST200に戻る。
一方、情報処理装置100は、ST212で算出した矩形の面積が閾値(最小値)以下になっていると判定した場合には、処理はST222に移行する。
ST222において、情報処理装置100は、規定サイズ以上の矩形情報(領域情報)が保存されている場合には、現時点において保存されている保存画像及び矩形情報(領域情報)を、出力装置106に出力すべき情報として決定することができる。一実施形態では、情報処理装置100は、現時点において保存されている保存画像及び矩形情報(領域情報)を、出力装置106に出力することができる。
次に、ST224において、情報処理装置100は、保存情報、すなわち、保存画像、矩形情報(領域情報)及び矩形の面積の最大値を、すべてクリア(消去)することができる。この後、処理は上述したST200に戻る。
以上、図2A及び図2Bに示したフローに沿って、情報処理装置100により行われる動作の一例について説明した。
4.情報処理装置100により生成される各種画像の具体例
次に、先に参照した図2A及び図2Bに示すフローにおいて情報処理装置100により生成される各種の画像の一例について、図2A及び図2Bに加えて、図8を参照して簡単に説明する。図8は、図1に示した情報処理装置100により生成される各種の画像の一例を示す模式図である。
ここでは、動画供給源から出力される画像において、図3に示した物体310が新たな物体として人間の手により投入(配置)される場合について簡単に説明する。
図8において、上段には、同一の線分画像を用いてST204で生成された第1蓄積画像(短蓄画像)800A、及び、同一の線分画像を用いてST206で生成された第2蓄積画像(長蓄画像)800Bが例示されている。上述したように、短蓄積分器は、長蓄積分器に用いられる第2比率よりも大きい第1比率を用いるため、新たに投入された物体の輪郭線を、第1蓄積画像800Aにおいて、より早く反映することができる。別言すれば、長蓄積分器は、短蓄積分器に用いられる第1比率よりも小さい第2比率を用いるため、新たに投入された物体の輪郭線を、第2蓄積画像800Bにおいて、より遅く反映することができる。第1蓄積画像800Aは、現在画像として用いられ、第2蓄積画像800Bは、過去画像として用いられる。
図8において、中段左方には、ST208で生成された差分画像810が例示されている。差分画像810は、第1蓄積画像800Aから第2蓄積画像800Bを差し引くことにより、投入された物体の輪郭線を取り出すことができる。
図8において、中段右方には、ST210で生成された2値化画像820が例示されている。2値化画像820では、2値化処理によって、背景ノイズに対応する画素には画素値「0」が付与されることによって、かかる背景ノイズが除去されている。さらに、2値化画像820では、2値化処理によって、投入された物体の輪郭線に対応する画素には画素値「1」が付与されることによって、当該物体の輪郭線がより明確に写っている。
図8において、下段には、ST218で保存されたカメラ画像(保存画像)830が例示されている。一実施形態では、保存画像830には、矩形情報(領域情報)832が反映され得る。すなわち、保存画像830と矩形情報(領域情報)とは組み合わせて保存(更新)され得る。別の実施形態では、保存画像830と矩形情報(領域情報)とは、それじれ、別々に保存(更新)され得る。
また、さらに別の実施形態では、保存画像840は、ST216で取得したカメラ画像から、矩形情報(領域情報)により識別される矩形部分のみが切り出された画像であり得る。この保存画像840もまた、保存画像と矩形情報(領域情報)とが組み合わせて保存(更新)された1つの形態である。
なお、図8に例示された保存画像830及び保存画像840は、最終的な保存画像として決定される画像である。これらの画像は、図6に示したような、第1蓄積画像600の各画素の画素値の合計値600から第2蓄積画像602の各画素の画素値の合計値602を減じた値が最大となったタイミング、別言すれば、ST212で算出した矩形の面積が最大となったタイミングにおいて、入力装置(カメラ)104から取得された最新のカメラ画像である。このようなタイミングにおいて取得された最新のカメラ画像では、投入された物体には、動いている手やその影などが入り込んでいないことが理解される。これにより、保存画像830において矩形情報(領域情報)により特定される部分832、及び、保存画像840には、動いている手やその影などが写り込んでいないことが分かる。
5.情報処理装置100の変形例
上述した様々な実施形態では、2値化画像において残存する画素全体を外側から囲む矩形の面積が最大となるタイミングを用いて、物体が置かれた直後のタイミングを検出する場合について説明した。「2値化画像において残存する画素全体を外側から囲む矩形の面積」は、差分画像を2値化することにより生成された2値化画像に基づいているため、「差分画像に基づく参照値」の一態様(第1の態様)である。
別の実施形態では、差分画像の各画素の画素値を合計した値(以下「差分合計値」という。)が最大となるタイミングを用いて、物体が置かれた直後のタイミングを検出することも可能である。この「差分合計値」もまた、「差分画像に基づく参照値」の一態様(第2の態様)である。なお、「差分画像に基づく参照値」は、これらの態様に限定されず、第1の態様の一部を変更・修正した態様、第2の態様の一部を変更・修正した態様、及び/又は、これらの態様とは異なる他の任意の態様、を含むことができる。
以下、差分画像の差分合計値が最大となるタイミングを用いて、物体が置かれた直後のタイミングを検出する場合について、図9を参照して簡単に説明する。図9は、図1に示した情報処理装置100により行われる動作の別の例を示すフロー図である。
図9に示す動作のうち図2Aに示した動作とは異なる部分のみについて説明する。ST902において、情報処理装置100は、ST208で生成した差分画像の各画素の画素値を合計することにより、差分合計値を算出することができる。
ST904において、情報処理装置100は、図2Aに示したST210及びST212におけるものと同様の動作を実行することができる。但し、情報処理装置100は、2値化画像において残存する画素を囲う矩形の面積を算出する必要はない。なお、情報処理装置100は、ST904における動作を、図9に例示したタイミングに代えて、次のいずれかのタイミングで実行することも可能である。
・ST208とST902との間のタイミング
・ST906とST216との間のタイミング
・ST216とST908との間のタイミング
ST906において、情報処理装置100は、差分合計値が過去に算出した差分合計値、すなわち、前回以前の差分画像に基づいて算出された差分合計値よりも大きいか否かを判定することができる。
ST908では、情報処理装置100は、図2Aに示したST218におけるものと基本的に同一の動作を行うことができる。但し、情報処理装置100は、矩形の面積を最大値として保存することに代えて、ST902で算出した差分合計値を最大値として保存(更新)することができる。
ST910において、情報処理装置100は、ST902で算出した差分合計値が閾値(最小値)以下となっているか否かを判定することができる。
ST912において、情報処理装置100は、図2Aに示したST224におけるものと基本的に同一の動作を行うことができる。但し、情報処理装置100は、矩形の面積の最大値をクリアすることに代えて、差分合計値の最大値をクリアすることができる。
以上説明したように、様々な実施形態によれば、情報処理装置100は、動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から取得した対象画像を用いて、第1蓄積画像(現在画像)及び第2蓄積画像(過去画像)を動的に作り出し、第1蓄積画像から第2蓄積画像を減じた差分画像に基づく参照値が最大値となるタイミング(又はその付近のタイミング)で、動画供給源から最新の画像を取得することができる。このようなタイミングで取得した最新の画像は、動画に新たな物体が入ってきた後、その物体が静止した直後のタイミング(又はその付近のタイミング)における画像である。よって、このように取得した最新の画像においては、上記新たな物体に対して、動きのある物体(その物体を握持する手や腕、又は、それらの影等)が写り込んでいない。したがって、上記新たな物体が静止した状態にある画像を取得することができる。
なお、差分画像に基づく参照値が最大値となるタイミングでカメラから取得する画像だけでなく、そのようなタイミングを基準として前後一定時間以内にあるタイミングにカメラから取得する画像であっても、上記新たな物体に対して、動きのある物体(その物体を握持する手や腕、又は、それらの影等)が写り込んでいない画像である可能性がある。したがって、本件出願に開示される情報処理装置100において、差分画像に基づく参照値が最大値となるタイミングとは、前後一定時間以内という幅を含むものであり得る。このような一定時間は、情報処理装置100が用いられる用途・アプリケーションに応じて適当に設定可能又は更新可能である。
6.情報処理装置100の応用例
上述した様々な実施形態に係る情報処理装置100は、以下に例示する用途・アプリケーションに対して、これらに限定することなく適用することも可能である。
(1)空港等における特定の場所(手荷物検査場所、ロビー、待合室等)を撮像する動画において乗客の手荷物等が出現したことを検知すること、及び/又は、そのような手荷物等が静止した直後の画像(特にその手荷物等を囲む領域のみを写す画像)を取得すること
(2)工場等に設けられた特定の生産ラインを撮像する動画において加工対象物が出現したことを検知すること、及び/又は、そのような加工対象物が静止した直後の画像(特にその加工対象物等を囲む領域のみを写す画像)を取得すること
(3)建物、会場等を撮像する動画において訪問者が出現したことを検知すること、及び/又は、そのような訪問者が静止した直後の画像(特にその訪問者を囲む領域のみを写す画像)を取得すること
(4)手術を受ける人体を撮影する動画において物体(臓器又は異物等)が出現したことを検知すること、及び/又は、その物体が静止した直後の画像(特にその物体を囲む領域のみを写す画像)を取得すること
(5)スマートレジカートのカゴを撮像する画像において新たな商品等が出現したことを検知すること、及び/又は、そのような商品等が静止した直後の画像(特にその商品等を囲む領域のみを写す画像)を取得すること
(6)その他、任意の場所又は領域を撮像する画像において新たな物体が出現したことを検知すること、及び/又は、そのような物体が静止した直後の画像(特にその物体を囲む領域のみを写す画像)を取得すること
7.情報処理装置100の具体的な適用例
上述した様々な実施形態に係る情報処理装置100をスマートレジカートに適用した場合について、説明する。
昨今、スーパーマーケット及びディスカウントショップ等で購入者がスマートレジカートを用いて商品の搬送及び購入を行うことができる。購入者は、商品を購入する際には、その商品に付されたバーコードをスマートレジカートに設けられたスキャナに読み取らせるというスキャン操作を行う必要がある。購入者がこのようなスキャン操作を行うことにより、スマートレジカートに設けられた情報処理装置がその商品に関する決済処理を自動的に実行することができる。このように、購入者は、購入したい商品に対するスキャン操作を行ってから、その商品をスマートレジカートに搭載されたカゴに入れる必要がある。
しかし、購入者は、購入したい商品に対するスキャン操作を行うことを忘れ、そのままその商品をカゴに入れてしまう可能性がある。現在、このように購入したい商品に対するスキャン操作を忘れたままその商品をカゴに入れた行為に対して、購入者が気付く術がない。
したがって、一実施形態に係るスマートレジカートは、商品がカゴに投入されたことを自動的に検知するとともに、スキャン操作を行わずに投入された商品の画像を取得して、購入者に対してその画像を用いた警告を行う。
図10は、図1に示した情報処理装置100を搭載したスマートレジカート1000の構成の一例を模式的に示す斜視図である。図10に示すように、スマートレジカート1000は、主に、台車1010と、台車1010の上に着脱自在に搭載可能なカゴ1020と、台車1010の把手1012に取り付けられたバーコードスキャナ1030と、台車1010の把手1012に取り付けられた表示装置1040と、を含むことができる。
また、スマートレジカート1000は、上述した情報処理装置100を例えば表示装置1040の内部に有することができる。
さらにまた、スマートレジカート1000は、カゴ1020の内部を撮像可能な図示しないカメラ(撮像部)1025を含むことができる。カメラ1025は、例えば、表示装置1040におけるカゴ1020の内部に対向する位置に固定され得る。カメラ1025は、情報処理装置100に対して電気的に接続される。
台車1010は、地面に対向して回動可能に設けられた例えば4つのキャスターを有することができる。これにより、台車1010は、その把手1012を購入者により押圧されることにより又は引っ張られることにより、移動することができる。
また、台車1010は、地面に対して所定の角度(例えば15度)を成して、相互に距離をおいて延びる複数のフレーム1014を有することができる。台車1010は、これら複数のフレーム1014の上にカゴ1020を載置することができる。
バーコードスキャナ1030は、商品に付されたバーコードや2次元コード等を読み取ることにより、商品の識別情報等を取得することができる。バーコードスキャナ1030に代えて、バーコード等を撮像することが可能な撮像手段(カメラ)を用いることも可能である。このようなバーコードスキャナ1030は、情報処理装置100に電気的に接続される。
表示装置1040は、購入者に対して様々な情報を表示することができる。表示装置1040は、例えば、バーコードスキャナ1030等により取得された識別情報に対応する商品に関する情報(商品の名称、商品の値段、及び/又は、商品の消費期限等)を表示することができる。このような表示装置1040もまた、情報処理装置100に電気的に接続される。
次に、上記構成を有するスマートレジカート1000(に組み込まれた情報処理装置100)により実行される動作の具体例について、図11を参照して説明する。図11は、図10に示したスマートレジカート1000により行われる動作の一例を示すフロー図である。
まず、ST1100では、情報処理装置100は、動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源であるカメラ1025から、上記複数の画像のうちのいずれか1つの画像(静止画)を取得することができる。ST1100における動作は、上述した図2A又は図9におけるST200と同様である。
情報処理装置100は、ST1100においてカメラ1025から1つの画像(静止画)を取得する度に、後述するST1102以降の動作を実行して、ST1100に戻ることができる。
ST1102では、情報処理装置100は、図2A又は図9を参照して上述した動作を実行することができる。これにより、ST1104では、情報処理装置100は、図2AのST214において「YES」を選択した場合にST218において、又は、図9のST906において「YES」を選択した場合にST908において、保存画像を保存(更新)することができる。
情報処理装置100は、図2AのST220に関連して上述したように、矩形の面積が閾値(最小値)以下になったときに、又は、図9のST910に関連して上述したように、差分合計値が閾値(最小値)以下になったときに、カゴ1020に投入された商品が静止したことを検知することができる。
このようにして、ST1106では、情報処理装置100は、商品が投入されたか否かを判定することができる。情報処理装置100が商品は投入されていないと判定した場合には、処理は上述したST1100に戻る。一方、情報処理装置100は商品が投入されたと判定した場合には、処理はST1108に移行する。
ST1108では、情報処理装置100は、商品が投入される前に、商品に付されたバーコード等に対するバーコードスキャナ1030による読み取り操作(スキャン操作)が行われたか否かを判定することができる。このような判定は、例えば次の手法により実行可能である。
情報処理装置100は、商品に付されたバーコード等に対するバーコードスキャナ1030による読み取り(スキャン)が実行される度に、その時間を最新読み取り時間として更新(記憶)することができる。これにより、最新読み取り時間は、常に、バーコードスキャナ1030による読み取り(スキャン)が最後に実行された時間を記憶することができる。情報処理装置100は、新たに投入された商品が静止したことを検知した時間(以下「検知時間」という。)が、最新読み取り時間から起算して基準時間が経過した後の時間を示す場合には、商品がカゴ1020に投入される前にこの商品に対するスキャン操作が行われていない、すなわち、商品に対するスキャン操作がなされることなくこの商品がカゴ1020に投入されたと判定することができる。これに対して、情報処理装置100は、上記検知時間が、最新読み取り時間から起算して基準時間が経過する前の時間を示す場合には、商品が投入される前にこの商品に対するスキャン操作が行われた、すなわち、商品に対するスキャン操作がなされた後に基準時間が経過する前にこの商品がカゴ1020に投入されたと判定することができる。
上記検知時間は、図2AのST214において、矩形の面積がそれまでの最大値より大きいと判定された時間等、又は、図9のST906において、差分合計値がそれまでの最大値より大きいと判定された時間等であり得る。図2Aの場合には、情報処理装置100が、ST218において矩形情報及びカメラ画像とともにこのような検知時間を保存(更新)することができる。また、図9の場合には、情報処理装置100が、ST908において矩形情報及びカメラ画像とともにこのような検知時間を保存(更新)することができる。
なお、一般的な利用者は、商品に対するスキャンを行った時点から0.5秒〜10秒の時間が経過する前に、その商品をカゴに投入する傾向がある事実に鑑み、基準時間は、0.5秒〜10秒の範囲の時間に設定することができる。より好ましくは、基準時間は、1秒〜5秒の範囲の時間に設定することも可能である。
ST1108において、情報処理装置100が、商品がカゴ1020に投入される前に商品に対するスキャン操作が行われたと判定した場合には、処理は上述したST1100に戻る。一方、情報処理装置100が、商品がカゴ1020に投入される前に商品に対するスキャン操作が行われなかったと判定した場合には、処理はST1110に移行する。
ST1110では、情報処理装置100は、参照値が閾値以下となったときに(図2AのST220においてYESの場合、又は、図9のST910においてYESの場合)、既に保存画像が保存されている場合には、この保存画像(例えば、図8に示した保存画像830又は保存画像840)を、表示装置1040に表示(出力)することができる。これに代えて又はこれに加えて、情報処理装置100は、商品に対するスキャン操作が行われることなく商品がカゴ1020に投入された旨を示す警告に関する情報(未スキャン投入警告情報)を、表示装置1040に表示(出力)することもできる。
図12の上段には、情報処理装置100が、図8に示した保存画像840に組み合わせて、「未スキャン品です!」という未スキャン投入警告情報1200を、表示装置1040に表示する例が示されている。図12の下段には、情報処理装置100が、図8に示した保存画像830に組み合わせて、「未スキャン品です!」という未スキャン投入警告情報1200を、表示装置1040に表示する例が示されている。
図12に戻り、次に、ST1112では、情報処理装置100は、購入者により商品に対するスキャン操作又はキャンセル操作が行われたか否かを判定することができる。情報処理装置100が、スキャン操作又はキャンセル操作が行われていないと判定した場合には、処理はST1112に戻る。一方、情報処理装置100が、スキャン操作又はキャンセル操作が行われたと判定した場合には、処理はST1114に移行する。
ST1114では、情報処理装置100は、保存画像及び未スキャン投入警告情報を消去するように、表示装置1040を制御することができる。この後、処理は上述したST1100に戻る。
このように、スマートレジカート1000に搭載された情報処理装置100は、最後に商品に対するスキャン操作が実行された時間から基準時間が経過した後に、商品の投入が検知された場合には、商品に対するスキャン操作が行われることなくその商品がカゴ820に投入されたとみなして、利用者に対して商品に対するスキャン操作を促すメッセージを表示装置1040に表示することができる。これにより、商品に対するスキャン操作を行うことなくその商品をカゴ1020に投入するという購入者による誤操作を抑えることができる。
上述した様々な実施形態は、矛盾又は不都合の生じない限りにおいて、相互に組み合わせて用いることが可能である。
上述した様々な実施形態では、第1蓄積画像を生成するために、第1比率と、1.0から第1比率を減じた比率(1.0−第1比率)とを用い、第2蓄積画像を生成するために、第1比率より小さい第2比率と、1.0から第2比率を減じた比率(1.0−第2比率)とを用いる場合について説明した。ここで、コンピュータは、2進数を扱うため、厳密には第1比率と(1.0−第1比率)との合計値が必ずしも1.0になるとは限らない。例えば、第1比率は、浮動小数点型の変数として「0.1」に設定された場合、例えば小数点以下17ビットで表示させると「0.10000000000000001」となり、1.0から第1比率を減じた比率は「0.90000000000000002」となることもあり得る(これらの数値は一例に過ぎない)。同様に、厳密には第2比率と(1.0−第2比率)との合計値が必ずしも1.0になるとは限らない。
本件出願(特許請求の範囲を含む)において、「第1比率」及び「1.0から第1比率を減じた比率」は、これら2つの比率の合計値が正確に1.0になるように、定められた値であってもよいし、又は、これら2つの比率の合計値がおおむね1.0になるように、定められた値であってもよい。同様に、「第2比率」及び「1.0から第2比率を減じた比率」は、これら2つの比率の合計値が正確に1.0になるように、定められた値であってもよいし、又は、これら2つの比率の合計値がおおむね1.0になるように、定められた値であってもよい。
ここで、「第1比率」と「1.0から第1比率を減じた比率」との合計値が「おおむね1.0」であるとは、これら2つの比率の合計値が、正確には1.0にはならないが、「動画において物体が追加された現象を検知する」という目的を実質的に達成することが可能となるような範囲にあることをいうものとすることができる。同様に、「第2比率」と「1.0から第2比率を減じた比率」との合計値が「おおむね1.0」であるとは、これら2つの比率の合計値が、正確には1.0にはならないが、「動画において物体が追加された現象を検知する」という目的を実質的に達成することが可能となるような範囲にあることをいうものとすることができる。
本明細書に開示された様々な方法のいずれもが、コンピュータにより読み取り可能な1又はそれ以上の媒体(例えば、1又はそれ以上の光学媒体ディスク、複数の揮発性メモリ部品、又は、複数の不揮発性メモリ部品といったような、非一時的なコンピュータにより読み取り可能な記憶媒体)に記憶された、コンピュータにより実行可能な複数の命令を用いて実装され、さらに、コンピュータにおいて実行され得る。ここで、上記複数の揮発性メモリ部品は、例えばDRAM又はSRAMを含む。また、上記複数の不揮発性メモリ部品は、例えばハードドライブ及びソリッドステートドライブ(SSD)を含む。さらに、上記コンピュータは、例えば、計算を行うハードウェアを有するスマートフォン及び他のモバイル装置を含む、市場において入手可能な任意のコンピュータを含む。
本明細書において開示された技術を実装するためのこのようなコンピュータにより実行可能な複数の命令のいずれもが、本明細書において開示された様々な実施形態の実装の間において生成され使用される任意のデータとともに、1又はそれ以上のコンピュータにより読み取り可能な媒体(例えば、非一時的なコンピュータにより読み取り可能な記憶媒体)に記憶され得る。このようなコンピュータにより実行可能な複数の命令は、例えば、個別のソフトウェアアプリケーションの一部であり得るか、又は、ウェブブラウザ若しくは(リモート計算アプリケーションといったような)他のソフトウェアアプリケーションを介してアクセス又はダウンロードされるソフトウェアアプリケーションの一部であり得る。このようなソフトウェアは、例えば、(例えば市場において入手可能な任意の好適なコンピュータにおいて実行されるエージェントとしての)単一のローカルコンピュータにおいて、又は、1又はそれ以上のネットワークコンピュータを用いて、ネットワーク環境(例えば、インターネット、ワイドエリアネットワーク、ローカルエリアネットワーク、(クラウド計算ネットワークといったような)クライアントサーバネットワーク、又は、他のそのようなネットワーク)において、実行され得る。
明確化のために、ソフトウェアをベースとした様々な実装のうちの特定の選択された様々な態様のみが記載されている。当該分野において周知である他の詳細な事項は省略される。例えば、本明細書において開示された技術は、特定のコンピュータ言語又はプログラムに限定されない。例えば、本明細書において開示された技術は、C、C++、Java、又は、他の任意の好適なプログラミング言語で記述されたソフトウェアにより実行され得る。同様に、本明細書において開示された技術は、特定のコンピュータ又は特定のタイプのハードウェアに限定されない。好適なコンピュータ及びハードウェアの特定の詳細な事項は、周知であって、本明細書において詳細に説明する必要はない。
さらには、このようなソフトウェアをベースとした様々な実施形態(例えば、本明細書において開示される様々な方法のいずれかをコンピュータに実行させるための、コンピュータにより実行可能な複数の命令を含む)のいずれもが、好適な通信手段により、アップロードされ、ダウンロードされ、又は、リモート方式によりアクセスされ得る。このような好適な通信手段は、例えば、インターネット、ワールドワイドウェブ、イントラネット、ソフトウェアアプリケーション、ケーブル(光ファイバケーブルを含む)、磁気通信、電磁気通信(RF通信、マイクロ波通信、赤外線通信を含む)、電子通信、又は、他のそのような通信手段を含む。
本明細書において記載される、様々なシステム、方法及び装置は、いかなる方法によっても限定されるものとして解釈されるべきではない。実際には、本開示は、開示された様々な実施形態の各々、これら様々な実施形態を相互に組み合わせたもの、及び、これら様々な実施形態の一部を相互に組み合わせたもの、のうちのあらゆる新規な特徴及び態様に向けられている。本明細書において記載される、様々なシステム、方法及び装置は、特定の態様、特定の特徴、又は、このような特定の態様と特定の特徴とを組み合わせたものに限定されないし、本明細書に記載される物及び方法は、1若しくはそれ以上の特定の効果が存在すること又は課題が解決されることを、要求するものでもない。さらには、本明細書において記載された様々な実施形態のうちの様々な特徴若しくは態様、又は、そのような特徴若しくは態様の一部は、相互に組み合わせて用いられ得る。
以上のように、様々な態様によれば、動画において物体が追加された現象を検知するために用いられる、情報処理装置、方法及びコンピュータプログラムを提供することができる。
100 情報処理装置
101 中央処理装置
102 主記憶装置
103 I/Oインタフェイス装置
104 入力装置
105 補助記憶装置
106 出力装置
1000 スマートレジカート
1010 台車
1020 カゴ
1025 カメラ(撮像部)
1030 バーコードスキャナ
1040 表示装置

Claims (17)

  1. 少なくとも1つのプロセッサを具備する情報処理装置であって、
    該少なくとも1つのプロセッサが、
    動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記動画供給源から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、
    前記一連の処理が、
    前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、
    複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、
    前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、
    前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、
    前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記動画供給源から新たな1つの画像を取得して保存画像として保存し、前記差分画像において第1閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、
    を含むことを特徴とする情報処理装置。
  2. 前記一連の処理が、
    前記差分画像に基づく前記参照値が第2閾値以下となったときに、前記保存画像及び前記領域情報を、出力すべき情報として決定すること、
    を含む、請求項1に記載の情報処理装置。
  3. 前記差分画像に基づく前記参照値は、該差分画像に含まれる各画素の画素値を合計した値である、請求項1又は請求項2に記載の情報処理装置。
  4. 前記差分画像に基づく前記参照値は、各画素の画素値を前記第1閾値に基づいて2値化した前記差分画像において画素値が1である各画素全体を外側から囲む領域の面積である、請求項1又は請求項2に記載の情報処理装置。
  5. 前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む、請求項1から請求項4のいずれかに記載の情報処理装置。
  6. コンピュータにより読み取り可能な命令を実行する少なくとも1つのプロセッサにより実行される方法であって、
    該少なくとも1つのプロセッサが、
    動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記動画供給源から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、
    前記一連の処理が、
    前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、
    複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、
    前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、
    前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、
    前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記動画供給源から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、
    を含むことを特徴とする方法。
  7. 前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む、請求項6に記載の方法。
  8. 少なくとも1つのプロセッサにより実行されることにより、
    動画を構成する複数の画像をフレームレートに従って順次出力する動画供給源から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記動画供給源から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返す、
    ように前記少なくとも1つのプロセッサを機能させ、
    前記一連の処理が、
    前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、
    複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、
    前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、
    前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、
    前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記動画供給源から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、
    を含むことを特徴とするコンピュータプログラム。
  9. 前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む、請求項8に記載のコンピュータプログラム。
  10. 少なくとも1つのプロセッサを具備するスマートレジカートであって、
    該少なくとも1つのプロセッサが、
    動画を構成する複数の画像をフレームレートに従って順次出力する撮像部から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記撮像部から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、
    前記一連の処理が、
    前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、
    複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、
    前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、
    前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、
    前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記像部から新たな1つの画像を取得して保存画像として保存し、前記差分画像において第1閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、
    を含むことを特徴とするスマートレジカート。
  11. 前記一連の処理が、
    物品に付されたバーコードがバーコードスキャナにより読み取られた読み取り時間を記憶すること、並びに、
    前記読み取り時間から基準時間が経過した後に、前記差分画像に基づく前記参照値が第2閾値以下となったときに、既に保存画像が保存されている場合には、前記保存画像及び前記領域情報を表示部に出力すること、を含む、請求項10に記載のスマートレジカート。
  12. 前記一連の処理が、
    前記保存画像及び前記領域情報を前記表示部に出力した後に、前記バーコードスキャナによる読み取りが実行されたときに、前記表示部における前記保存画像の表示を終了すること、
    を含む、請求項11に記載のスマートレジカート。
  13. 前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む、請求項10から請求項12のいずれかに記載のスマートレジカート。
  14. スマートレジカートに搭載されるコンピュータにより読み取り可能な命令を実行する少なくとも1つのプロセッサにより実行される方法であって、
    該少なくとも1つのプロセッサが、
    動画を構成する複数の画像をフレームレートに従って順次出力する撮像部から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記撮像部から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返すことが可能であり、
    前記一連の処理が、
    前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、
    複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、
    前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、
    前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、
    前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記撮像部から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、並びに、
    を含むことを特徴とする方法。
  15. 前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む、請求項14に記載の方法。
  16. スマートレジカートに搭載される少なくとも1つのプロセッサにより実行されることにより、
    動画を構成する複数の画像をフレームレートに従って順次出力する撮像部から、該複数の画像のうちの1つの画像を対象画像として取得し、該対象画像について一連の処理を実行した後に、前記撮像部から前記複数の画像のうちの別の1つの画像を対象画像として取得し、該対象画像について前記一連の処理を実行する、という動作を繰り返す、
    ように前記少なくとも1つのプロセッサを機能させ、
    前記一連の処理が、
    前記対象画像に対して微分処理を施すことにより該対象画像に存在する物体の輪郭を抽出した線分画像を生成すること、
    複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に第1比率を乗じた値と、該線分画像より前の線分画像について既に生成された第1蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第1比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第1蓄積画像を生成すること、
    前記複数の対象画素の各々について、前記線分画像に含まれる当該対象画素の画素値に前記第1比率より小さい第2比率を乗じた値と、該線分画像より前の線分画像について既に生成された第2蓄積画像に含まれる当該対象画素の画素値に、1.0から前記第2比率を減じた比率を乗じた値と、を合算した画素値を有する、新たな第2蓄積画像を生成すること、
    前記新たな第1蓄積画像から前記新たな第2蓄積画像を減ずることにより差分画像を生成すること、及び、
    前記差分画像に基づく参照値が、前記線分画像より前のいずれかの線分画像について生成された旧差分画像に基づく最大参照値より大きいときに、前記撮像部から新たな1つの画像を取得して保存画像として保存し、前記差分画像において閾値を上回る画素値を有する複数の画素全体を外側から囲む領域に関する領域情報を保存し、前記差分画像に基づく前記参照値を前記最大参照値として更新すること、
    を含むことを特徴とするコンピュータプログラム。
  17. 前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む、請求項16に記載のコンピュータプログラム。
JP2020210337A 2020-12-18 2020-12-18 情報処理装置、方法及びコンピュータプログラム Active JP6893278B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020210337A JP6893278B1 (ja) 2020-12-18 2020-12-18 情報処理装置、方法及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020210337A JP6893278B1 (ja) 2020-12-18 2020-12-18 情報処理装置、方法及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP6893278B1 true JP6893278B1 (ja) 2021-06-23
JP2022097002A JP2022097002A (ja) 2022-06-30

Family

ID=76464566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020210337A Active JP6893278B1 (ja) 2020-12-18 2020-12-18 情報処理装置、方法及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6893278B1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002013512A1 (fr) * 2000-08-07 2002-02-14 Sony Corporation Procede et dispositif de traitement d'image et support enregistre
JP2004054726A (ja) * 2002-07-23 2004-02-19 Hitachi Medical Corp 画像処理装置
WO2013073627A1 (ja) * 2011-11-15 2013-05-23 株式会社 東芝 画像処理装置及び方法
JP2016083417A (ja) * 2015-12-25 2016-05-19 キヤノン株式会社 画像処理装置、画像処理方法、プログラムおよびコンピュータ記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002013512A1 (fr) * 2000-08-07 2002-02-14 Sony Corporation Procede et dispositif de traitement d'image et support enregistre
JP2004054726A (ja) * 2002-07-23 2004-02-19 Hitachi Medical Corp 画像処理装置
WO2013073627A1 (ja) * 2011-11-15 2013-05-23 株式会社 東芝 画像処理装置及び方法
JP2016083417A (ja) * 2015-12-25 2016-05-19 キヤノン株式会社 画像処理装置、画像処理方法、プログラムおよびコンピュータ記録媒体

Also Published As

Publication number Publication date
JP2022097002A (ja) 2022-06-30

Similar Documents

Publication Publication Date Title
US9443353B2 (en) Methods and systems for capturing and moving 3D models and true-scale metadata of real world objects
JP6303160B1 (ja) 購入商品精算支援システム
JP6261197B2 (ja) 表示制御装置、表示制御方法、及びプログラム
WO2019181499A1 (ja) 店舗管理装置および店舗管理方法
CN108648140B (zh) 图像拼接方法、系统、设备及存储介质
WO2019080674A1 (zh) 自助结算设备、方法、装置、介质及电子设备
WO2012119143A1 (en) Blurred image detection for text recognition
CN110674670A (zh) 用于处理信息的方法和装置
CN114898249B (zh) 用于购物车内商品数量确认的方法、系统及存储介质
US11100677B2 (en) Information processing device, information processing method and recording medium
JP6893278B1 (ja) 情報処理装置、方法及びコンピュータプログラム
JP7081310B2 (ja) 行動分析装置、行動分析システム、行動分析方法、プログラムおよび記録媒体
JP6354233B2 (ja) 販売促進装置、情報処理装置、情報処理システム、販売促進方法及びプログラム
CN104917963A (zh) 一种图像处理方法及终端
US9135715B1 (en) Local feature cameras for structure from motion (SFM) problems with generalized cameras
JP5339464B2 (ja) 表示装置
US20230130674A1 (en) Computer-readable recording medium storing learning program, learning method, and information processing apparatus
US20170344820A1 (en) Method and system of identifying fillable fields of an electronic form
CN113689482B (zh) 拍摄点推荐方法、装置及存储介质
CN111473767B (zh) 一种远程测距方法及装置
CN110162251B (zh) 图像缩放方法及装置、存储介质、电子设备
JP2006301534A (ja) ディスプレイ制御装置、ディスプレイ制御方法、ディスプレイ制御プログラム、およびディスプレイ
JP6398331B2 (ja) 情報処理装置、制御方法、及びプログラム
JP2017102564A (ja) 表示制御プログラム、表示制御方法、及び表示制御装置
JP7078073B2 (ja) 情報処理装置、情報処理システム、販売促進方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201218

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20201218

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210217

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210518

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210531

R150 Certificate of patent or registration of utility model

Ref document number: 6893278

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250