説明

客層認識装置

【課題】来客数が多くても客層を確実に認識することの可能な客層認識装置を提供する。
【解決手段】カメラで来客を撮影して順次生成された複数フレームの画像を取得し(S1)、単位時間当たりの来客数に応じて間引き率を決定し(S2)、来客数が多いほど多数のフレームを間引くことにより画像データを大量に削減し(S3)、フレームを間引いた画像をバッファメモリ21に一時的に保存し(S4)、バッファメモリ21に保存された画像に基づいてカメラで撮影された来客の客層を認識する(S6)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、客層認識装置に関し、さらに詳しくは、自動販売機などに用いられる客層認識装置に関する。
【背景技術】
【0002】
特開平9−319940号公報(特許文献1)には、カメラで顧客を撮影してその客層(年齢や性別等)を判断し、その顧客が興味をひきそうな文字情報を表示するようにした自動販売機が記載されている。また、客層の情報をセンタに送信し、販売促進に利用することも記載されている。しかしながら、顧客をどのように撮影し、客層をどのように判断するのか、その具体的な方法は全く記載されていない。
【0003】
一方、特開2006−31387号公報(特許文献2)には、カメラで撮影した画像の中から人物の顔を検出し、その人物を特定(推定)する画像認識装置が記載されている。この装置のアルゴリズムは非常に複雑で、処理コストも高い。したがって、この装置を自動販売機等に単に搭載し、カメラで撮影した画像を全て処理していたのでは、処理コストが高くつき過ぎ、現実味に乏しい。
【0004】
カメラで撮影した顧客の画像を用いて客層を認識する客層認識処理を行う場合、認識精度を高くするためには、顧客1人につき、できる限り多くの画像を取得するのが望ましい。一方、このような画像処理にはCPU(Central Processing Unit)が用いられるが、自動販売機のような組み込みシステムに用いられるCPUは一般に、パソコン等に用いられるCPUよりも処理能力が低い。したがって、このようなデータ量の多い客層認識処理をリアルタイムに行うこと、すなわち、現在の画像の処理を次の画像を取得するまでに終了しておくことは困難である。そのため、取得した画像を一時的に保存しておくためのバッファメモリが必要になる。
【0005】
しかしながら、バッファメモリの容量も有限であるから、一時的に保存された画像が処理される前に次の顧客が来るという状態が続くと、空き容量も次第に少なくなっていき、やがてはなくなってしまう。このような容量不足の状態で次の顧客が来ると、その顧客の画像は保存されない。そのため、その客層は全く認識されないという問題が生じる。
【特許文献1】特開平9−319940号公報
【特許文献2】特開2006−31387号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
本発明の目的は、来客数が多くても客層を確実に認識することの可能な客層認識装置を提供することである。
【課題を解決するための手段及び発明の効果】
【0007】
本発明による客層認識装置は、カメラと、来客数取得手段と、データ削減手段と、バッファメモリと、客層認識手段とを備える。カメラは、来客を撮影して複数フレームの画像を順次生成する。来客数取得手段は、単位時間当たりの来客数を取得する。データ削減手段は、来客数取得手段により取得された来客数が多いほどカメラにより生成された画像のデータ量を多く削減する。バッファメモリは、データ削減手段によりデータ量が削減された画像を記憶する。客層認識手段は、バッファメモリに記憶された画像に基づいてカメラにより撮影された来客の客層を認識する。
【0008】
本発明によれば、カメラにより生成された画像は来客数が多いほどそのデータ量が多く削減され、バッファメモリに記憶されるので、来客数が多くてもバッファメモリに容量不足が生じることはほとんどなく、客層を確実に認識することができる。
【0009】
好ましくは、客層認識装置はさらに、バッファメモリの使用容量を取得する使用容量取得手段を含む。データ削減手段はさらに、使用容量取得手段により取得された使用容量が多いほどカメラにより生成された画像のデータ量を多く削減する。
【0010】
この場合、来客数が多くてもバッファメモリに容量不足が生じることはまずなく、客層をより確実に認識することができる。
【発明を実施するための最良の形態】
【0011】
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。
【0012】
[構成]
図1を参照して、本発明の実施の形態による自動販売機10は、商品見本11と、商品選択ボタン12と、硬貨投入口13と、商品取出口14と、硬貨返却口15とを備える。顧客は必要な硬貨を硬貨投入口13から投入し、商品見本11を見ながら欲しい商品を決定し、その商品選択ボタン12を押す。すると、その商品が商品取出口14に供給され、必要に応じて釣り銭が硬貨返却口15に供給される。以上の構成及び動作は周知のものである。
【0013】
図2を参照して、自動販売機10はさらに、自動販売機本体制御装置(以下、単に「本体制御装置」と略す。)16と、客層認識装置17とを備える。本体制御装置16は、自動販売機10全体の制御を統括する。客層認識装置17は、カメラ18と、画像キャプチャ装置19と、間引き装置20と、バッファメモリ21と、コンピュータ22とを備える。
【0014】
カメラ18は硬貨投入口13の周辺に埋設され、自動販売機10前方に立った顧客、特にその顔を撮影して映像(動画)を生成する。すなわち、カメラ18は来客を撮影して複数フレームの画像を順次生成する。本実施の形態では、顧客は少なくとも1回硬貨を投入するために硬貨投入口13に顔を向けることに着目し、カメラ18を硬貨投入口13の周辺に埋設している。顧客は少なくとも1回商品を選択するために商品見本11及び商品選択ボタン12に顔を向けることになるため、カメラ18は自動販売機10前面のほぼ中央で、かつ、商品見本11と商品選択ボタン12との間辺りに埋設してもよい。また、顧客は少なくとも1回商品を取り出すために商品取出口14に顔を向けることに着目し、カメラ18を商品取出口14の周辺に埋設してもよい。
【0015】
画像キャプチャ装置19は、カメラ18から順次出力される画像の中から所定時間おきに1フレームずつ画像を抽出する。間引き装置20は、画像キャプチャ装置19により抽出されたフレームを来客数に応じて間引き、これによりカメラ18により生成されかつ画像キャプチャ装置19により抽出された画像のデータ量を削減する。詳細は後述する。
【0016】
バッファメモリ21は、間引き装置20によるフレーム間引き処理後の画像を一時的に記憶するFIFO(First-In First-Out)等の半導体メモリである。コンピュータ22は、バッファメモリ21に記憶された画像の中から顧客の顔を検出し、その顔に基づいて客層を認識する客層認識処理などを実行する。
【0017】
[動作]
次に、自動販売機10の動作を説明する。自動販売機10内のコンピュータ22は、図3に示される画像保存処理及び客層認識処理のための両プログラムを並行して実行する。
【0018】
まず、画像キャプチャ装置19は、カメラ18から出力される映像の中から所定時間おきに画像をキャプチャする(S1)。
【0019】
[間引き率決定処理(1)]
続いて、コンピュータ22は、図4に示した間引き率決定処理を実行する(S2)。具体的には、コンピュータ22はまず、最近T時間(現時点から所定時間T前まで)の来客数Cを取得する(S21)。たとえば、本体制御装置16が最近T時間以内に行った決済回数を来客数Cとして取得する。決済回数とは、本体制御装置16が硬貨等の対価を受け付け、1又は2回の商品選択ボタン12の押下に応じて1又は2以上の商品を払い出し、釣り銭を計算する、という一連の動作回数である。決済回数の代わりに、対価の受付回数、商品選択ボタン12の押下回数、商品の払出回数などを来客数とみなしてもよい。
【0020】
続いて、コンピュータ22は次の表1に示した間引き率テーブルを参照し、取得した来客数CがC0以下(C≦C0)か、C0を超えC1以下(C0<C≦C1)か、C1を超えC2以下(C1<C≦C2)か、…、Cn−2を超えCn−1以下(Cn−2<C≦Cn−1)か、Cn−1を超える(C>Cn−1)か、を判断する(S22)。
【表1】

【0021】
表1に示した間引き率テーブルは、コンピュータ22のハードディスク等に記憶される。間引き率テーブルには、あらかじめ定められた最近T時間の来客数Cとあらかじめ定められた間引き率Pとが対応付けられて記録される。表1中、C0<C1<C2<…<Cn−2<Cn−1、P0(=0)<P1<P2<…<Pn−1<Pn(=1)である。Cn−1には、あり得ないほど多数の来客数を割り当てる。
【0022】
たとえばC≦C0の場合、コンピュータ22は間引き率PをP0(=0)に設定する(S230)。C0<C≦C1の場合、コンピュータ22は間引き率PをP1(>P0)に設定する(S231)。C>Cn−1の場合、コンピュータ22は間引き率PをPn(=1)に設定する(S23n)。
【0023】
以上の結果、コンピュータ22は、ステップS21で取得された来客数Cが多いほど間引き率Pを高く設定する。
【0024】
[間引き率決定処理(2)]
また、コンピュータ22は、図4に示した間引き率決定処理の代わりに図5に示した間引き率決定処理を実行してもよい。具体的には、コンピュータ22は、来客数Cの取得(S21)後、バッファメモリ21の使用容量Eを取得する(S24)。バッファメモリ21は一定の記憶容量を有するが、間引き装置20から画像が書き込まれるに連れて既使用の記憶容量が増加し、未使用の記憶容量が減少する。また、コンピュータ22へ画像が読み出されるに連れて既使用の記憶容量が減少し、未使用の記憶容量が増加する。このようにバッファメモリ21の使用容量は常に変動するが、コンピュータ22は現在の使用容量Eを取得する。
【0025】
続いて、コンピュータ22は次の表2に示した間引き率テーブルを参照し、取得したバッファメモリ21の使用容量EがE0以下(E≦E0)か、E0を超えE1以下(E0<E≦E1)か、En−2を超えEn−1以下(En−2<E≦En−1)か、En−1を超える(E>En−1)か、などを判断する(S25)。
【表2】

【0026】
表2に示した間引き率テーブルには、あらかじめ定められた最近T時間の来客数Cとあらかじめ定められた間引き率Pとが対応付けられて記録される。間引き率Pはまた、バッファメモリ21の使用容量Eにも対応付けられる。1つのレコード内には、1種類の来客数と、複数種類の間引き率とが記録される。表2中、P00(=0)<P01<P02<…<P0n−1<P0n、P10<P11<P12<…<P1n−1<P1n、…、Pn−10<Pn−11<Pn−12<…<Pn−1n−1<Pn−1n、Pn0<Pn1<Pn2<…<Pnn−1<Pnn(=1)である。また、P00(=0)<P10<…<Pn−10<Pn0、P01<P11<…<Pn−11<Pn1、P02<P12<…<Pn−12<Pn2、…、P0n−1<P1n−1<…<Pn−1n−1<Pnn−1、P0n<P1n<…<Pn−1n<Pnn(=1)である。
【0027】
続いて、コンピュータ22は、ステップS21で取得した来客数CがC0以下(C≦C0)か、C0を超えC1以下(C0<C≦C1)か、…、Cn−1を超える(C>Cn−1)か、を判断する(S260,S261,…,S26n)。
【0028】
E≦E0かつC≦C0の場合、コンピュータ22は間引き率PをP00(=0)に設定する(S270)。E≦E0かつC0<C≦C1の場合、コンピュータ22は間引き率PをP01(>P00)に設定する(S271)。E≦E0かつC>Cn−1の場合、コンピュータ22は間引き率PをP0nに設定する(S27n)。
【0029】
E0<E≦E1かつC≦C0の場合、コンピュータ22は間引き率PをP10(>0)に設定する(S280)。E0<E≦E1かつC0<C≦C1の場合、コンピュータ22は間引き率PをP11(>P10)に設定する(S281)。E0<E≦E1かつC>Cn−1の場合、コンピュータ22は間引き率PをP1nに設定する(S28n)。
【0030】
E>En−1かつC≦C0の場合、コンピュータ22は間引き率PをPn0に設定する(S290)。E>En−1かつC0<C≦C1の場合、コンピュータ22は間引き率PをPn1(>Pn0)に設定する(S291)。E>En−1かつC>Cn−1の場合、コンピュータ22は間引き率PをPnn(=1)に設定する(S29n)。
【0031】
以上の結果、コンピュータ22は、ステップS21で取得された来客数Cが多いほど間引き率Pを高く設定する。
【0032】
[間引き処理(1)]
再び図3を参照して、上述した間引き率決定処理S2の後、コンピュータ22は、図6に示した間引き処理を実行する(S3)。具体的には、コンピュータ22はまず、間引き率決定処理S2で設定された間引き率Pが「1」か否かを判断する(S29)。P=1の場合(S29でYES)、コンピュータ22は間引き装置20を制御し、全てのフレームを間引き、画像を全く抽出しない(S30)。一方、P≠1の場合(S29でNO)、コンピュータ22は間引き率Pに応じて、画像キャプチャ装置19でキャプチャされた画像の中から何フレームごとに画像を抽出するかを示すフレーム数N(P)を設定する(S31)。フレーム数N(P)は次の式(1)により算出される。
N(P)=1/(1−P) …(1)
【0033】
続いて、コンピュータ22は間引き装置20を制御し、画像キャプチャ装置19でキャプチャされた画像の中からN(P)フレームごとに画像を抽出する。すなわち、間引き装置20は、画像キャプチャ装置19から順次出力されるフレームの中からN(P)フレームごとに{N(P)−1}フレームを間引き、1フレームを抽出する。たとえばP=0.8の場合、N(P)=5となるので、図7に示すように、5フレームごとに4フレームを間引き、1フレームを抽出する。以上の結果、間引き装置20は、ステップS21で取得された来客数Cが多いほど多数のフレームを間引く。
【0034】
[間引き処理(2)]
また、コンピュータ22は、図6に示した間引き処理の代わりに図8に示した間引き処理を実行してもよい。具体的には、コンピュータ22はまず、間引き率決定処理S2で設定された間引き率Pに応じて、画像キャプチャ装置19でキャプチャされた所定時間T0分の画像の中から何時間分の画像を抽出するかを示す抽出時間T(P)を設定する(S33)。抽出時間T(P)は次の式(2)により算出される。
T(P)=T0×(1−P) …(2)
【0035】
続いて、コンピュータ22は間引き装置20を制御し、画像キャプチャ装置19でキャプチャされたT0分の画像の中からT(P)分の画像を抽出する。すなわち、間引き装置20は、画像キャプチャ装置19から出力されるT0分のフレームの中から{T0−T(P)}分のフレームを間引き、T(P)フレームを抽出する。たとえばP=0.3の場合、T(P)=0.7×T0となるので、図9に示すように、T0分のフレームの中から0.3×T0分のフレームを間引き、0.7×T0分のフレームを抽出する。以上の結果、間引き装置20は、ステップS21で取得された来客数Cが多いほど多数のフレームを間引く。
【0036】
[圧縮処理]
また、コンピュータ22は、図2に示した間引き装置20の代わりに圧縮装置(図示せず)を設け、かつ、図6又は8に示した間引き処理の代わりに、図10に示した圧縮処理を実行してもよい。具体的には、コンピュータ22はまず、間引き率決定処理S2で設定された間引き率Pに応じて、画像キャプチャ装置19でキャプチャされた画像を圧縮する圧縮率CPR(P)を設定する(S35)。圧縮率CPR(P)は次の式(3)により算出される。
CPR(P)=(1−P)×100 …(3)
【0037】
続いて、コンピュータ22は圧縮装置を制御し、画像キャプチャ装置19でキャプチャされた画像を圧縮率CPR(P)で圧縮する(S36)。ここでの圧縮方法は、圧縮率の高い非可逆圧縮(JPEG、MPEGなど)が好ましいが、可逆性圧縮でもよい。以上の結果、圧縮装置は、ステップS21で取得された来客数Cが多いほど高い圧縮率CPR(P)で画像を圧縮する。
【0038】
[画像認識処理]
再び図2を参照してコンピュータ22は、上述した間引き処理又は圧縮処理によりデータ量が削減された画像をバッファメモリ21に一時的に保存する(S4)。
【0039】
上述した画像保存処理と並行して、コンピュータ22は客層認識処理を実行する。具体的には、コンピュータ22は、バッファメモリ21から画像を読み出し(S5)、その画像に基づいてカメラ18で撮影された来客の客層を認識する(S6)。そして、コンピュータ22は、その認識結果を出力する(S7)。具体的には、客層の認識結果を内蔵の記録媒体等に購入履歴として記録したり、電気通信回線を通じてセンタサーバに送信したり、自動販売機10に接続されるモバイル端末に転送したりする。
【0040】
[効果]
以上のように本発明の実施の形態によれば、カメラ18により生成された画像は来客数が多いほどそのデータ量が多く削減され、バッファメモリ21に記憶されるので、来客数が多くてもバッファメモリ21に容量不足が生じることはほとんどなく、客層を確実に認識することができる。
【0041】
なお、上述した実施の形態では客層認識装置17を自動販売機10に取り付けているが、たとえば店舗のレジ、イベント会場の受付に設置してもよいなど、特に限定されることはない。
【0042】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
【図面の簡単な説明】
【0043】
【図1】本発明の実施の形態による自動販売機の外観構成を示す斜視図である。
【図2】図1に示した自動販売機の内部構成を示す機能ブロック図である。
【図3】図2中のコンピュータに実行させるためのプログラムを示すフロー図である。
【図4】図3中の間引き率決定処理の一例を示すフロー図である。
【図5】図3中の間引き率決定処理の他の例を示すフロー図である。
【図6】図3中の間引き処理の一例を示すフロー図である。
【図7】図6に示した間引き処理を説明するための図である。
【図8】図3中の間引き処理の他の例を示すフロー図である。
【図9】図8に示した間引き処理を説明するための図である。
【図10】図3中の間引き処理に代わる圧縮処理を示すフロー図である。
【符号の説明】
【0044】
10 自動販売機
17 客層認識装置
18 カメラ
19 画像キャプチャ装置
20 間引き装置
21 バッファメモリ
22 コンピュータ

【特許請求の範囲】
【請求項1】
来客を撮影して複数フレームの画像を順次生成するカメラと、
単位時間当たりの来客数を取得する来客数取得手段と、
前記来客数取得手段により取得された来客数が多いほど前記カメラにより生成された画像のデータ量を多く削減するデータ削減手段と、
前記データ削減手段によりデータ量が削減された画像を記憶するためのバッファメモリと、
前記バッファメモリに記憶された画像に基づいて前記カメラにより撮影された来客の客層を認識する客層認識手段とを備えることを特徴とする客層認識装置。
【請求項2】
請求項1に記載の客層認識装置であってさらに、
前記バッファメモリの使用容量を取得する使用容量取得手段を含み、
前記データ削減手段はさらに、前記使用容量取得手段により取得された使用容量が多いほど前記カメラにより生成された画像のデータ量を多く削減する、ことを特徴とする客層認識装置。
【請求項3】
請求項1に記載の客層認識装置であって、
前記データ削減手段は、
前記来客数取得手段により取得された来客数が多いほど多数のフレームを間引くフレーム間引き手段を含む、ことを特徴とする客層認識装置。
【請求項4】
請求項3に記載の客層認識装置であって、
前記フレーム間引き手段は、
前記来客数取得手段により取得された来客数が多いほどフレーム数を多く設定するフレーム数設定手段と、
前記フレーム数設定手段により設定されたフレーム数ごとに1フレームを抽出するフレーム抽出手段とを含む、ことを特徴とする客層認識装置。
【請求項5】
請求項3に記載の客層認識装置であって、
前記フレーム間引き手段は、
前記来客数取得手段により取得された来客数が多いほど抽出時間を短く設定する時間設定手段と、
前記時間設定手段により設定された抽出時間分のフレームを所定時間分のフレームの中から抽出するフレーム抽出手段とを含む、ことを特徴とする客層認識装置。
【請求項6】
請求項1に記載の客層認識装置であって、
前記データ削減手段は、
前記来客数取得手段により取得された来客数が多いほど圧縮率を高く設定する圧縮率設定手段と、
前記圧縮率設定手段により設定された圧縮率で前記カメラにより生成された画像を圧縮する圧縮手段とを含む、ことを特徴とする客層認識装置。
【請求項7】
カメラで来客を撮影して順次生成された複数フレームの画像を取得する画像取得ステップと、
単位時間当たりの来客数を取得する来客数取得ステップと、
前記来客数取得ステップにより取得された来客数が多いほど前記カメラにより生成された画像のデータ量を多く削減するデータ削減ステップと、
前記データ削減ステップによりデータ量が削減された画像をバッファメモリに保存するステップと、
前記バッファメモリに保存された画像に基づいて前記カメラで撮影された来客の客層を認識する客層認識ステップとをコンピュータに実行させるためのプログラム。
【請求項8】
請求項7に記載のプログラムであってさらに、
前記バッファメモリの使用容量を取得する使用容量取得ステップを含み、
前記データ削減ステップはさらに、前記使用容量取得ステップにより取得された使用容量が多いほど前記カメラにより生成された画像のデータ量を多く削減する、ことを特徴とするプログラム。
【請求項9】
請求項7に記載のプログラムであって、
前記データ削減ステップは、
前記来客数取得ステップにより取得された来客数が多いほど多数のフレームを間引くフレーム間引きステップを含む、ことを特徴とするプログラム。
【請求項10】
請求項9に記載のプログラムであって、
前記フレーム間引きステップは、
前記来客数取得ステップにより取得された来客数が多いほどフレーム数を多く設定するフレーム数設定ステップと、
前記フレーム数設定ステップにより設定されたフレーム数ごとに1フレームを抽出するフレーム抽出ステップとを含む、ことを特徴とするプログラム。
【請求項11】
請求項9に記載のプログラムであって、
前記フレーム間引きステップは、
前記来客数取得ステップにより取得された来客数が多いほど抽出時間を短く設定する時間設定ステップと、
前記時間設定ステップにより設定された抽出時間分のフレームを所定時間分のフレームの中から抽出するフレーム抽出ステップとを含む、ことを特徴とするプログラム。
【請求項12】
請求項7に記載のプログラムであって、
前記データ削減ステップは、
前記来客数取得ステップにより取得された来客数が多いほど圧縮率を高く設定する圧縮率設定ステップと、
前記圧縮率設定ステップにより設定された圧縮率で前記カメラにより生成された画像を圧縮する圧縮ステップとを含む、ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate