IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 東芝テック株式会社の特許一覧

<>
  • 特開-情報処理装置及びプログラム 図1
  • 特開-情報処理装置及びプログラム 図2
  • 特開-情報処理装置及びプログラム 図3
  • 特開-情報処理装置及びプログラム 図4
  • 特開-情報処理装置及びプログラム 図5
  • 特開-情報処理装置及びプログラム 図6
  • 特開-情報処理装置及びプログラム 図7
  • 特開-情報処理装置及びプログラム 図8
  • 特開-情報処理装置及びプログラム 図9
  • 特開-情報処理装置及びプログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024103246
(43)【公開日】2024-08-01
(54)【発明の名称】情報処理装置及びプログラム
(51)【国際特許分類】
   G06Q 50/10 20120101AFI20240725BHJP
   G07G 1/12 20060101ALI20240725BHJP
【FI】
G06Q50/10
G07G1/12 321Z
G07G1/12 301Z
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023007467
(22)【出願日】2023-01-20
(71)【出願人】
【識別番号】000003562
【氏名又は名称】東芝テック株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】岩井 寿記
【テーマコード(参考)】
3E142
5L049
5L050
【Fターム(参考)】
3E142AA01
3E142BA01
3E142CA12
3E142DA20
3E142JA02
5L049CC11
5L050CC11
(57)【要約】
【課題】本発明が解決しようとする課題は、複数の依頼元からの処理依頼を平準化して処理することが可能な情報処理装置及びプログラムを提供することである。
【解決手段】店舗で採取されたデータの処理依頼を複数の依頼元から受け付ける受付手段と、前記受付手段が受け付けた処理依頼のデータに基づき所定の処理を実行する処理手段と、前記依頼元の各々を識別する識別子に関連付けて、当該識別子に対応する前記依頼元から受け付けた処理依頼を前記処理手段が最後に処理した処理日時を記録する記録手段と、前記受付手段が複数の依頼元から処理依頼を受け付けた場合に、当該依頼元の各々の識別子に関連付けて記録された前記処理日時に基づいて、当該処理日時が古い依頼元の処理依頼から優先的に前記処理手段に実行させる制御手段と、を備える。
【選択図】図4
【特許請求の範囲】
【請求項1】
店舗で採取されたデータの処理依頼を複数の依頼元から受け付ける受付手段と、
前記受付手段が受け付けた処理依頼のデータに基づき所定の処理を実行する処理手段と、
前記依頼元の各々を識別する識別子に関連付けて、当該識別子に対応する前記依頼元から受け付けた処理依頼を前記処理手段が最後に処理した処理日時を記録する記録手段と、
前記受付手段が複数の依頼元から処理依頼を受け付けた場合に、当該依頼元の各々の識別子に関連付けて記録された処理日時に基づいて、当該処理日時が古い依頼元の処理依頼から優先的に前記処理手段に処理させる制御手段と、
を備える情報処理装置。
【請求項2】
前記制御手段は、前記受付手段が複数の依頼元から処理依頼を受け付けた場合、処理日時が古い依頼元の処理依頼の一つを実行対象とし、前記処理手段に実行させる、
請求項1に記載の情報処理装置。
【請求項3】
前記受付手段が受け付けた処理依頼のうち、前記処理手段が未処理の処理依頼を記憶部に記憶する記憶制御手段と、
前記制御手段は、前記記憶部に複数の処理依頼が記憶されている場合に、前記受付手段が複数の依頼元から処理依頼を受け付けたと判定する、
請求項1又は2に記載の情報処理装置。
【請求項4】
前記処理手段が実行した処理依頼の処理結果を、当該処理依頼の依頼元に出力する出力手段を更に備える、
請求項1に記載の情報処理装置。
【請求項5】
前記受付手段は、前記処理依頼の依頼元となる端末装置、又は当該端末装置で動作中のプロセスから前記処理依頼を受け付ける、
請求項1に記載の情報処理装置。
【請求項6】
情報処理装置のコンピュータを、
店舗で採取されたデータの処理依頼を複数の依頼元から受け付ける受付手段と、
前記受付手段が受け付けた処理依頼のデータに基づき所定の処理を実行する処理手段と、
前記依頼元の各々を識別する識別子に関連付けて、当該識別子に対応する前記依頼元から受け付けた処理依頼を前記処理手段が最後に処理した処理日時を記録する記録手段と、
前記受付手段が複数の依頼元から処理依頼を受け付けた場合に、当該依頼元の各々の識別子に関連付けて記録された処理日時に基づいて、当該処理日時が古い依頼元の処理依頼から優先的に前記処理手段に処理させる制御手段と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、情報処理装置及びプログラムに関する。
【背景技術】
【0002】
従来、情報処理装置であるサーバ装置が、依頼元となるクライアント端末の各々から処理依頼を受け付け、受け付けた処理依頼を順次処理するシステムが存在している。例えば、従来、行先となる1又は複数の部署の情報を受け付けた場合に、各部署における平均待ち時間に当該部署での処理待ちの人数を掛けることで、各部署における予測待ち時間を算出して出力するサーバが提案されている。
【0003】
ところで、上述したシステムのサーバ装置では、複数のクライアント端末から処理依頼が来た場合、特定のクライアント端末に偏って処理を実行する可能性がある。例えば、特定のクライアント端末から複数の処理依頼が連続して送信されている最中や送信された後に、他のクライアント端末から処理依頼が送信されたような場合、特定のクライアント端末から送信された複数の処理が優先して実行される可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明が解決しようとする課題は、複数の依頼元からの処理依頼を平準化して処理することが可能な情報処理装置及びプログラムを提供することである。
【課題を解決するための手段】
【0005】
実施形態の情報処理装置は、店舗で採取されたデータを含む処理依頼を複数の依頼元から受け付ける受付手段と、前記受付手段が受け付けた処理依頼のデータに基づき処理を実行する処理手段と、前記依頼元の各々を識別する識別子に関連付けて、当該識別子に対応する前記依頼元から受け付けた処理依頼を前記処理手段が最後に処理した処理日時を記録する記録手段と、前記受付手段が複数の依頼元から処理依頼を受け付けた場合に、当該依頼元の各々の識別子に関連付けて記録された前記処理日時に基づき、当該処理日時が最も古い依頼元の処理依頼から優先的に前記処理手段に処理させる制御手段と、を備える。
【図面の簡単な説明】
【0006】
図1図1は、実施形態に係るデータ処理システムの一例を示す図である。
図2図2は、実施形態に係る撮像装置のハードウェア構成の一例を示す図である。
図3図3は、実施形態に係るサーバ装置のハードウェア構成の一例を示す図である。
図4図4は、実施形態に係る撮像装置及びサーバ装置の機能構成の一例を示す図である。
図5図5は、実施形態に係る処理日時テーブルの状態の一例を模式的に示す図である。
図6図6は、実施形態に係る処理日時テーブルの状態の一例を模式的に示す図である。
図7図7は、実施形態に係る処理日時テーブルの状態の一例を模式的に示す図である。
図8図8は、実施形態に係る処理日時テーブルの状態の一例を模式的に示す図である。
図9図9は、実施形態に係る処理日時テーブルの状態の一例を模式的に示す図である。
図10図10は、実施形態の撮像装置とサーバ装置との間で行われる処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0007】
以下、図面を参照して実施形態の情報処理装置及びプログラムについて説明する。以下に説明する実施形態では、スーパーマーケット等の店舗に適用した例について説明するが、この実施形態に限定されるものではない。
【0008】
図1は、実施形態に係るデータ処理システムの一例を示す図である。図1に示すように、データ処理システム1は、POS端末10と、撮像装置20と、サーバ装置30とを有する。POS端末10と撮像装置20とは、USB(Universal Serial Bus)ケーブル等の接続線Lを介して通信可能に接続される。また、撮像装置20とサーバ装置30とは、有線又は無線のネットワークNを介して通信可能に接続される。
【0009】
なお、データ処理システム1の構成は、図1の例に限定されないものとする。例えば、図1では、POS端末10と撮像装置20との組みを3組としたが、組数はこれに限らない。また、POS端末10の各々が、ネットワークNに接続される構成としてもよい。
【0010】
POS端末10は、顧客が購入対象とする商品の登録処理や、登録処理により登録された商品の会計処理等の販売データ処理を実行する販売データ処理装置である。POS端末10は、撮像装置20で撮像された商品の商品コードを当該撮像装置20から取得し、この商品コードに基づいて登録処理及び会計処理を実行する。
【0011】
具体的には、POS端末10は、店舗で販売される各商品の商品コードと、当該商品の商品名や価格等の商品情報とを関連付けた商品マスタから、撮像装置20で撮像された商品の商品コードに対応する商品情報を読み出す。そして、POS端末10は、取得した商品コードや商品情報をRAM(Random Access Memory)等の記憶装置に記憶することで、顧客が購入する商品の登録処理を実行する。また、POS端末10は、登録終了を指示する操作を受け付けると、それまでに登録された商品の商品情報に含まれた価格及び商品の登録点数に基づき商品の合計金額を算出する。そして、POS端末10は、算出した合計金額を顧客が支払った支払金額で精算する会計処理を実行する。
【0012】
また、値引きや割引等のサービスの提供対象となった商品には、提供されるサービスの内容を所定のマークで表したシール(以下、サービスマークともいう)が付されることがある。この場合、POS端末10は、商品に付されたサービスマークが示すサービスの内容を撮像装置20から取得し、その内容に応じたサービスを商品に適用する。例えば、サービスマークが示すサービス内容が100円の値引きを指示するものである場合には、POS端末10は、そのサービスマークが付された商品の価格から100円を値引きした価格を用いて会計処理を実行する。また、例えば、サービスマークが示すサービス内容が10%の割引を指示するものである場合には、POS端末10は、そのサービスマークが付された商品の価格から10%割引した価格を用いて会計処理を実行する。
【0013】
撮像装置20は、処理の依頼元となる端末装置(クライアント)の一例である。撮像装置20は、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等の撮像素子を有する。また、撮像装置20は、撮像によって得られた画像(画像データ)からバーコードや二次元コード等のコードシンボルを検出し、コードシンボルをデコードすることでコードシンボルに含まれた情報を読み取る。そして、撮像装置20は、読み取った情報をPOS端末10に出力する。例えば、撮像装置20は、商品に付されたコードシンボルから商品コードを読み取り、POS端末10に出力する。なお、撮像装置20が撮像によって取得する画像は、店舗で採取されるデータの一例である。
【0014】
また、撮像装置20は、撮像した画像を処理依頼としてサーバ装置30に送信することで、当該画像に対する処理をサーバ装置30に依頼する。本実施形態では、撮像装置20は、商品に付されたサービスマークの認識処理をサーバ装置30に依頼する形態について説明する。そして、撮像装置20は、サーバ装置30から処理結果を取得すると、取得した処理結果をPOS端末10に出力する。具体的には、撮像装置20は、サーバ装置30から処理結果としてサービス内容を受信すると、このサービス内容をPOS端末10に出力する。
【0015】
サーバ装置30は、情報処理装置の一例である。サーバ装置30は、撮像装置20の各々から処理依頼を受け付け、当該処理依頼のデータに対し所定の処理を実行する。具体的は、サーバ装置30は、撮像装置20から処理依頼を受け付けると、その処理依頼に含まれる画像からサービスマークを認識し、認識したサービスマークが示すサービス内容を特定する処理を実行する。そして、サーバ装置30は、特定したサービス内容を依頼元の撮像装置20に送信する。
【0016】
このように、データ処理システム1では、コードシンボルの読み取りよりも一般的に処理負荷の高いサービスマークの認識処理をサーバ装置30で行う構成となっている。そのため、サーバ装置30は、例えば画像処理に特化したハードウェア構成や、POS端末10及び撮像装置20よりも処理能力の高いハードウェア構成を備えている。
【0017】
次に、データ処理システム1を構成する主要な装置の構成について説明する。図2は、撮像装置20のハードウェア構成の一例を示す図である。図2に示すように、撮像装置20は、CPU(Central Processing Unit)21と、ROM(Read Only Memory)22と、RAM(Random Access Memory)23とを備える。
【0018】
CPU21は、プロセッサの一例であり、撮像装置20の各部を統括的に制御する。ROM22は、各種プログラムを記憶する。RAM23は、プログラムや各種データを展開するワークスペースである。
【0019】
CPU21、ROM22、及びRAM23は、バス等を介して接続され、コンピュータ構成の制御部200を構成する。制御部200では、CPU21が記憶部24等に記憶されたプログラムをRAM23に展開し、RAM23に展開されたプログラムに従って動作することによって、各種の処理を実行する。
【0020】
また、撮像装置20は、記憶部24、撮像部25、接続部26、及び通信部27等を備える。
【0021】
記憶部24は、フラッシュメモリやSSD(Solid State Drive)等の補助記憶装置である。記憶部24は、CPU21が実行可能な各種のプログラムや各種の設定情報を記憶する。例えば、記憶部24は、画像中からコードシンボルを検出し、当該コードシンボルをデコードするためのプログラムや設定情報を記憶する。
【0022】
撮像部25は、CCDやCMOS等の撮像素子を有するデジタルカメラである。本実施形態において、撮像部25は、顧客が購入する商品を撮像するが、被写体となる対象は商品に限らないものとする。
【0023】
接続部26は、POS端末10と接続するためのインタフェースである。接続部26は、例えばUSBインタフェース等であり、POS端末10と通信可能に接続する。通信部27は、ネットワークNに接続することが可能な有線又は無線の通信インタフェースである。通信部27は、ネットワークNに接続し、当該ネットワークNに接続されたサーバ装置30等との間で各種データの送受信を行う。
【0024】
図3は、サーバ装置30のハードウェア構成の一例を示す図である。図3に示すように、サーバ装置30は、CPU31と、ROM32と、RAM33とを備える。
【0025】
CPU31は、プロセッサの一例であり、サーバ装置30の各部を統括的に制御する。ROM32は、各種プログラムを記憶する。RAM33は、プログラムや各種データを展開するワークスペースである。
【0026】
CPU31、ROM32、及びRAM33は、バス等を介して接続され、コンピュータ構成の制御部300を構成する。制御部300では、CPU31が記憶部34等に記憶されたプログラムをRAM33に展開し、展開したプログラムに従って動作することによって、各種の処理を実行する。
【0027】
また、サーバ装置30は、記憶部34、表示部35、操作部36、及び通信部37等を備える。
【0028】
記憶部34は、フラッシュメモリやSSD、HDD(Hard Disk Drive)等の補助記憶装置である。記憶部34は、CPU31が実行可能な各種のプログラムや各種の設定情報を記憶する。例えば、記憶部34は、画像中からサービスマークを認識し、当該サービスマークが示すサービス内容を特定することが可能なプログラムや設定情報を記憶する。
【0029】
表示部35は、LCD(Liquid Crystal Display)等の表示デバイスである。表示部35は、CPU31の制御の下、各種の情報を表示する。操作部36は、キーボード、ポインティングデバイス等の入力デバイスである。操作部36は、店員等のオペレータから受け付けた操作内容をCPU31に出力する。なお、操作部36は、表示部35の表示画面に設けられたタッチパネルであってもよい。
【0030】
通信部37は、ネットワークNに接続可能な有線又は無線の通信インタフェースである。通信部37は、ネットワークNに接続された撮像装置20等との間で各種データの送受信を行う。
【0031】
次に、撮像装置20及びサーバ装置30の機能構成について説明する。図4は、撮像装置20及びサーバ装置30の機能構成の一例を示す図である。図4に示すように、撮像装置20は、撮像制御部201と、コード読取部202と、処理依頼部203と、出力制御部204とを機能構成として備える。具体的には、撮像装置20の制御部200(CPU21)は、ROM22又は記憶部24に記憶されたプログラムを実行することで上述した機能構成を実現する。
【0032】
なお、本実施形態では、撮像装置20の機能構成は、撮像装置20のプロセッサとプログラムとの協働により実現されるソフトウェア構成とするが、これに限らず、機能構成の一部又は全てを専用回路等で実現するハードウェア構成としてもよい。
【0033】
撮像装置20の撮像制御部201は、撮像部25の撮像に係る動作を制御する。具体的には、撮像制御部201は、予め定められた撮像条件で撮像部25を動作させ、撮像によって生成された画像(画像データ)を撮像部25から取得する。例えば、撮像制御部201は、所定のフレームレートで撮像部25を動作させ、所定のフレーム間隔で生成される画像を取得する。
【0034】
コード読取部202は、撮像制御部201が取得した画像からコードシンボルを検出する。また、コード読取部202は、検出したコードシンボルをデコードすることで、当該コードシンボルに含まれる情報を読み取る。例えば、商品に付されたコードシンボルが撮像部25によって撮像された場合、コード読取部202は、撮像制御部201が取得した画像からコードシンボルを検出し、その商品を識別する商品コードを読み取る。
【0035】
処理依頼部203は、撮像制御部201が取得した画像を含んだ処理依頼をサーバ装置30に送信する。ここで、処理依頼部203は、依頼元である自己の撮像装置20(又は対となるPOS端末10)を識別可能な識別子(以下、依頼元識別子ともいう)を、処理依頼に含めて(或いは処理依頼とともに)サーバ装置30に送信する。識別子は、例えば撮像装置20のIPアドレスやホスト名等であってもよい。また、処理依頼部203は、処理依頼の各々を識別可能な識別子を処理依頼に含めてもよい。
【0036】
また、処理依頼部203は、処理依頼に対する応答として、サーバ装置30から処理結果を受信する。具体的には、処理依頼部203は、サービスマークの有無や、サービスマークのサービス内容を示した処理結果をサーバ装置30から受信する。
【0037】
なお、処理依頼部203は、コード読取部202の読み取り結果等に応じて、処理依頼として送信する画像や処理要求を行う期間を制限してもよい。例えば、処理依頼部203は、コード読取部202でコードシンボルが検出された画像について順次処理依頼を送信してもよい。また、例えば、処理依頼部203は、コード読取部202でコードシンボルが検出された画像の撮像タイミングを基点とし、当該基点から所定時間以内に撮像される画像の各々について処理依頼を順次送信してもよい。
【0038】
出力制御部204は、POS端末10に対するデータ出力を制御する。具体的には、出力制御部204は、コード読取部202の読取結果をPOS端末10に出力する。また、出力制御部204は、処理依頼部203がサーバ装置30から受信した処理結果をPOS端末10に出力する。
【0039】
なお、出力制御部204は、コード読取部202の読取結果である商品コードと、サーバ装置30の処理結果とをあわせて出力してもよいし、個別に出力してもよい。また、出力制御部204は、サーバ装置30の処理結果が、サービスマークが存在しないことを示す場合には、当該処理結果の出力を抑制してもよい。
【0040】
また、出力制御部204は、同一商品ついて出力する読取結果及び処理結果の出力回数がそれぞれ1回となるよう制御してもよい。例えば、出力制御部204は、一つの商品コードが読み取られた後、所定時間内に同一の商品コードが1又は複数回読み取られた場合には、所定時間内に読み取られた商品コードを破棄する構成してもよい。また、例えば、出力制御部204は、一つのサービス内容を処理結果として受信した後、所定時間内に同一のサービス内容を示す処理結果を1又は複数回受信した場合には、所定時間内に受信したサービス内容を破棄する構成してもよい。
【0041】
一方、サーバ装置30は、処理依頼受付部301と、処理実行部302と、記録処理部303と、実行制御部304と、処理結果送信部305とを機能構成として備える。具体的には、サーバ装置30の制御部300(CPU31)は、ROM32又は記憶部34に記憶されたプログラムを実行することで上述した機能構成を実現する。
【0042】
なお、本実施形態では、サーバ装置30の機能構成は、サーバ装置30のプロセッサとプログラムとの協働により実現されるソフトウェア構成とするが、これに限らず、機能構成の一部又は全てを専用回路等で実現するハードウェア構成としてもよい。
【0043】
処理依頼受付部301は、受付手段及び記憶制御手段の一例である。処理依頼受付部301は、店舗で採取された画像の処理依頼を複数の撮像装置20から受け付ける。また、処理依頼受付部301は、受け付けた処理依頼をRAM33又は記憶部34に確保された記憶領域(以下、処理待ちメモリともいう)に記憶する。ここで、処理待ちメモリに記憶される処理依頼は、後述する処理実行部302による処理が未実施の処理依頼となる。
【0044】
具体的には、処理依頼受付部301は、撮像装置20から処理依頼を受信すると、処理依頼に含まれた処理対象の画像と、依頼元の撮像装置20を識別する依頼元識別子とを関連付けて処理待ちメモリに記憶する。また、処理依頼受付部301は、受信した順に処理依頼を処理待ちメモリに記憶する。
【0045】
処理実行部302は、処理手段の一例である。処理実行部302は、処理依頼受付部301が受け付けた処理依頼の画像に基づき所定の処理を実行する。具体的には、処理実行部302は、実行制御部304の制御の下、実行対象の処理依頼を処理待ちメモリから読み出し、処理依頼に含まれる画像に対し所定の処理を実行する。なお、処理実行部302により読み出された処理依頼は、RAM33等に展開されることで、処理待ちメモリから削除されるものとする。
【0046】
処理実行部302が実行する処理内容は特に問わないものとするが、本実施形態では、サービスマークの認識に係る処理を実行する。例えば、処理実行部302は、画像認識技術等の公知の技術を用いることで、処理依頼に含まれる画像からサービスマークを認識し、当該サービスマークが示すサービス内容を特定する。そして、処理実行部302は、サービスマークの有無や、認識したサービスマークが示すサービス内容を処理結果として出力する。なお、本実施形態では、処理実行部302は、一度に一つの処理依頼を処理することが可能なシングルスレッドの構成であるものとする。
【0047】
記録処理部303は、記録手段の一例である。記録処理部303は、撮像装置20の各々を識別する依頼元識別子に関連付けて、当該依頼元識別子に対応する撮像装置20から受け付けた処理依頼を処理実行部302が最後に処理した処理日時を記録する。具体的には、記録処理部303は、各撮像装置20の依頼元識別子が登録された処理日時テーブルTを用いて、撮像装置20から受け付けた処理依頼を処理実行部302が最後に処理した処理日時を記録し管理する。なお、処理日時テーブルTは、例えばRAM33又は記憶部34に保持される。
【0048】
記録処理部303は、処理実行部302が処理依頼に基づき処理を開始すると、その処理が開始された日時を処理日時とし、処理依頼の依頼元の依頼元識別子に関連付けて処理日時テーブルTに記録する。なお、記録処理部303は、処理実行部302による処理が終了したタイミングで、終了した日時を処理日時として記録する構成としてもよい。
【0049】
実行制御部304は、制御手段の一例である。実行制御部304は、処理依頼受付部301が複数の撮像装置20から処理依頼を受け付けた場合、当該撮像装置20の各々の依頼元識別子に関連付けて記録された処理日時に基づき、処理日時が古い依頼元の処理依頼から優先的に処理実行部302に処理させる。
【0050】
具体的には、実行制御部304は、処理依頼受付部301が複数の依頼元から処理依頼を受け付けた場合、つまり処理待ちメモリに複数の処理依頼が記憶されている場合に、これらの処理依頼の中から次に処理実行部302に実行させる処理依頼を選ぶため、以下の処理を行う。まず、実行制御部304は、処理待ち状態にある処理依頼の各々の依頼元識別子に関連付けられた処理日時を処理日時テーブルTから検索する。次いで、実行制御部304は、検索した処理日時を比較することで処理日時がより古い依頼元識別子を特定し、特定した依頼元識別子の処理依頼の一つを実行対象に設定する。これにより、記録処理部303は、例えば現在実行中の処理依頼の処理が完了すると、実行対象に設定された処理依頼を処理待ちメモリから読み出し、次の処理を開始する。
【0051】
なお、処理待ちメモリに依頼元識別子が同一の処理依頼が複数記憶されている場合には、実行制御部304は、複数の処理依頼の中から一つを選択して実行対象に設定する、この場合、実行制御部304は、処理待ちメモリに先に記憶された処理依頼から順に実行対象に設定することが好ましい。また、処理待ちメモリに単一の処理依頼が記憶されている場合には、実行制御部304は、この処理依頼を実行対象に設定することで、当該処理依頼を直ちに処理実行部302に処理させる。
【0052】
ここで、図5図9を参照して、処理依頼受付部301、処理実行部302、記録処理部303及び実行制御部304の動作例について説明する。図5図9は、処理日時テーブルTの状態の一例を模式的に示す図である。
【0053】
図5の処理日時テーブルTは、処理日時テーブルTの初期状態を示している。処理日時テーブルTには、図1に示した3台分の撮像装置20の依頼元識別子(クライアント1~3)が登録されている。また、依頼元識別子の各々の処理日時は、初期状態の「00:00」に設定されている。つまり、図5の処理日時テーブルTは、クライアント1~3の何れについても処理依頼に基づいた処理が行われていない、初期状態であることを示している。
【0054】
この初期状態において、例えば、クライアント1~3の各々から略同等のタイミングで処理依頼が送信されると、処理依頼受付部301は、クライアント1~3の各々から受け付けた各処理依頼を処理待ちメモリに記憶する。なお、略同等のタイミングとは、同一のタイミングに限らず、例えば、先に受信した処理依頼の受信タイミングから、当該処理依頼の処理が開始されるまでの期間をも含む概念である。
【0055】
次いで、実行制御部304は、処理日時テーブルTを参照し、処理待ちメモリに記憶されたクライアント1~3の処理依頼の中から実行対象の処理依頼を決定する。処理日時テーブルTが図5の状態の場合、クライアント1~3の処理日時が同じであるため、実行制御部304は、例えば依頼元識別子の番号が小さいものから優先的に実行対象を設定し、処理実行部302に処理させる。この場合、実行制御部304は、クライアント1~3の順に処理依頼を順次実行させることになる。その結果、処理日時テーブルTには、例えば図6に示すように、クライアント1~3の順でより近時の処理日時が記録されることになる。
【0056】
なお、処理日時が同じである場合の実行対象の決定方法はこれに限らないものとする。例えば、依頼元識別子の番号が大きいものから優先的に実行対象を決定してもよいし、ランダムに実行対象を決定してもよい。
【0057】
次に、図6に示した処理日時テーブルTの状態において、例えば、クライアント2、3の各々から略同等のタイミングで処理依頼が送信されると、処理依頼受付部301は、クライアント2、3の各々から受け付けた処理依頼を処理待ちメモリに記憶する。次いで、実行制御部304は、処理日時テーブルTを参照し、処理待ちメモリに記憶されたクライアント2、3の処理依頼の中から実行対象の処理依頼を決定する。
【0058】
処理日時テーブルTが図6の状態の場合、クライアント3の処理日時よりもクライアント2の処理日時の方が古いため、実行制御部304は、クライアント2の処理依頼を実行対象に設定し、処理実行部302に処理させる。そして、クライアント2の処理依頼の処理が完了した時点において、クライアント3の処理依頼が処理待ちメモリに記憶されている場合、実行制御部304は、クライアント3の処理依頼を実行対象に設定することで、処理実行部302に処理させる。その結果、処理日時テーブルTには、例えば図7に示すように、クライアント1~3の順でより近時の処理日時が記録されることになる。
【0059】
次に、図7に示した処理日時テーブルTの状態において、例えば、クライアント1、3の各々から略同等のタイミングで処理依頼が送信されると、処理依頼受付部301は、クライアント1、3の各々から受け付けた処理依頼を処理待ちメモリに記憶する。次いで、実行制御部304は、処理日時テーブルTを参照し、処理待ちメモリに記憶されたクライアント1、3の処理依頼の中から実行対象の処理依頼を決定する。
【0060】
処理日時テーブルTが図7の状態の場合、クライアント3の処理日時よりもクライアント1の処理日時の方が古いため、実行制御部304は、クライアント1の処理依頼を優先的に実行対象に設定し、処理実行部302に処理させる。そして、クライアント1の処理依頼の処理が完了した時点において、クライアント3の処理依頼が処理待ちメモリに記憶されている場合、実行制御部304は、クライアント3の処理依頼を実行対象に設定することで、処理実行部302に処理させる。その結果、処理日時テーブルTには、例えば図8に示すように、クライアント2、1、3の順でより近時の処理日時が記録されることになる。
【0061】
次に、図8に示した処理日時テーブルTの状態において、例えば、クライアント1~3の各々から略同等のタイミングで処理依頼が送信されると、処理依頼受付部301は、クライアント1~3の各々から受け付けた処理依頼を処理待ちメモリに記憶する。次いで、実行制御部304は、処理日時テーブルTを参照し、処理待ちメモリに記憶されたクライアント1~3の処理依頼の中から実行対象の処理依頼を決定する。
【0062】
処理日時テーブルTが図8の状態の場合、クライアント2の処理日時が最も古いため、実行制御部304は、クライアント2の処理依頼を実行対象に設定し、処理実行部302に処理させる。また、クライアント2の処理依頼の処理が完了した時点において、残りのクライアント1、3の処理依頼が処理待ちメモリに記憶されている場合、実行制御部304は、処理日時がより古いクライアント1の処理依頼を実行対象に設定し、処理実行部302に処理させる。また、クライアント1の処理依頼の処理が完了した時点において、残りのクライアント3の処理依頼が処理待ちメモリに記憶されている場合、実行制御部304は、クライアント3の処理依頼を実行対象に設定することで、処理実行部302に処理させる。その結果、処理日時テーブルTには、例えば図9に示すように、クライアント2、1、3の順でより近時の処理日時が記録されることになる。
【0063】
このように、実行制御部304は、複数の依頼元から処理依頼があると、依頼元の各々について最後に処理が実行された処理日時を比較し、処理日時が古い依頼元の処理依頼から優先的に処理実行部302に実行させる。
【0064】
これにより、サーバ装置30では、クライアント1~3の各々からの処理依頼を平準化して処理することができる。このため、例えば、特定の依頼元から複数の処理依頼が連続して送信されたような場合であっても、特定の依頼元の処理に偏ることなく、他の依頼元からの処理依頼を処理することができる。
【0065】
図4に戻り、処理結果送信部305は、出力手段の一例である。処理結果送信部305は、処理実行部302において処理依頼に基づく処理が完了すると、当該処理依頼の依頼元識別子に対応する撮像装置20宛にその処理結果を送信する。具体的には、処理結果送信部305は、処理実行部302により実行されたサービスマークの認識結果を、依頼元の撮像装置20に送信する。
【0066】
これにより、撮像装置20では、処理依頼部203が、処理依頼に対する応答してサービスマークの認識結果をサーバ装置30から取得する。そして、撮像装置20からPOS端末10にサービスマークの認識結果が出力されることで、サービスマークの認識結果に基づいた商品の値引きや割引等がPOS端末10で行われる。
【0067】
以下、図10を参照して、撮像装置20とサーバ装置30との間で行われる処理の一例について説明する。図10は、撮像装置20とサーバ装置30との間で行われる処理の一例を示すフローチャートである。なお、図10では、1台の撮像装置20の処理について記載しているが、他の撮像装置20においても同様の処理が行われるものとする。
【0068】
撮像装置20の撮像部25により商品の撮像が行われると(ステップS11)、処理依頼部203は、撮像で得られた画像を含む処理依頼をサーバ装置30に送信する(ステップS12)。
【0069】
一方、サーバ装置30では、処理依頼受付部301が処理依頼を受信したか否かを判定する(ステップS21)。処理依頼受付部301は、何れかの撮像装置20から処理依頼を受信すると(ステップS21;Yes)、受信した処理依頼を処理待ちメモリに記憶し(ステップS22)、ステップS24に移行する。
【0070】
また、処理依頼受付部301が処理依頼を受信しない場合には(ステップS21;No)、実行制御部304は、処理待ちメモリに既存の処理依頼が記憶されているか否かを判定する(ステップS23)。ここで、処理待ちメモリに処理依頼が記憶されていない場合(ステップS23;No)、ステップS21に戻る。また、処理待ちメモリに処理依頼が記憶されている場合には(ステップS23;Yes)、ステップS24に移行する。
【0071】
続いて、実行制御部304は、処理待ちメモリに記憶された処理依頼の個数が単一か複数かを判別する(ステップS24)。ここで、処理待ちメモリに単一の処理依頼が記憶されている場合には(ステップS24;Yes)、実行制御部304は、その処理依頼を実行対象に設定し(ステップS25)、ステップS28に移行する。
【0072】
また、処理待ちメモリに複数の処理依頼が記憶されている場合には(ステップS24;No)、実行制御部304は、処理日時テーブルTを参照し、当該処理依頼の依頼元の依頼元識別子に関連付けられた処理日時を比較する(ステップS26)。次いで、実行制御部304は、処理日時が最も古い依頼元識別子の処理依頼を処理対象に設定し(ステップS27)、ステップS28に移行する。
【0073】
続いて、処理実行部302は、ステップS25又はS27で設定された処理依頼を処理待ちメモリから読み出し、処理依頼に含まれる画像からサービスマークを認識する処理を実行する(ステップS28)。処理実行部302で処理が開始されると、記録処理部303は、処理対象となった処理依頼の依頼元識別子に関連付けて、処理日時テーブルに処理日時を記録する(ステップS29)。
【0074】
そして、処理実行部302の処理が完了すると、送信部305は、処理実行部302の処理結果を依頼元の撮像装置20に送信し(ステップS30)、ステップS21に処理を戻す。
【0075】
撮像装置20では、処理依頼に対する応答として処理依頼部203が処理結果を受信すると(ステップS13)、出力制御部204は、その処理結果をPOS端末10に出力し(ステップS14)、ステップS11に処理を戻す。
【0076】
以上説明したように、本実施形態のサーバ装置30は、店舗で採取されたデータの処理依頼を複数の依頼元から受け付け、受け付けた処理依頼のデータに基づき所定の処理を実行し、実行した処理日時を依頼元の依頼元識別子に関連付けて記録する。また、サーバ装置30は、複数の依頼元から処理依頼を受け付けた場合に、当該依頼元の各々の依頼元識別子に関連付けて記録された処理日時に基づき、処理日時が古い依頼元の処理依頼から優先的に処理を実行する。
【0077】
このように、本実施形態のサーバ装置30では、各依頼元の処理依頼が最後に処理された処理日時に基づき、次に処理する実行対象の処理依頼を決定することができる。これにより、サーバ装置30では、例えば特定の依頼元から複数の処理依頼が連続して送信されたような場合であっても、特定の依頼元に偏って処理が行われることなく、複数の依頼元からの処理依頼を平準化して処理することができる。
【0078】
なお、上述した実施形態は、上述した各装置が有する構成又は機能の一部を変更することで、適宜に変形して実施することも可能である。そこで、以下では、上述した実施形態に係るいくつかの変形例を他の実施形態として説明する。なお、以下では、上述した実施形態と異なる点を主に説明することとし、既に説明した内容と共通する点については詳細な説明を省略する。また、以下で説明する変形例は、個別に実施されてもよいし、適宜組み合わせて実施されてもよい。
【0079】
(変形例1)
上述の実施形態では、処理依頼の依頼元を撮像装置20とする装置単位の例を説明した。しかしながら、処理依頼の依頼元は装置単位に限らない。例えば、一台の撮像装置20が複数の処理依頼部203を備える場合、処理依頼部203の各々から処理依頼が送信されることになる。この場合、処理依頼部203の実現に係るプロセスの各々が依頼元となる。
【0080】
処理依頼の依頼元をプロセス単位とする場合、撮像装置20の識別子と、各プロセスの識別子との組を依頼元識別子して処理待ちメモリ及び処理日時テーブルTで管理することで、上述したサーバ装置30の構成及び動作を適用することができる。したがって、処理依頼の依頼元をプロセス単位とした場合であっても、上述した実施形態と同様の効果を奏することができる。
【0081】
[変形例2]
上述の実施形態では、処理依頼部203の各々がサーバ装置30に依頼する処理内容を同一としたが、これに限らず、処理依頼部203の各々が異なる処理内容をサーバ装置30に依頼してもよい。
【0082】
例えば、一部の処理依頼部203は、画像からサービスマークを認識する処理を依頼し、残りの処理依頼部203は、画像から他のマークや情報を認識する処理を依頼してもよい。
【0083】
また、処理依頼部203の各々がサーバ装置30に依頼する処理内容は、商取引に係る処理内容に限らず、他の処理内容であってもよい。例えば、処理依頼部203は、店舗内を撮像した画像から客の行動や人物を認識する処理をサーバ装置30に依頼してもよい。
【0084】
[変形例3]
上述の実施形態では、サーバ装置30が単一の処理依頼のみ実行することが可能なシングルスレッドの構成を説明したが、これに限らず、複数の処理依頼を並列で実行することが可能なマルチスレッドの構成であってもよい。
【0085】
この場合、実行制御部304は、サーバ装置30で一度に実行することが可能なスレッド数分の処理依頼を処理実行部302に実行させる。また、スレッド数を超える処理依頼が処理待ちメモリに記憶された場合には、実行制御部304は、処理日時テーブルTを参照し、処理依頼の依頼元に対応する依頼元識別子の各々に対応する処理日時に基づき、処理対象の処理依頼を設定する。具体的には、実行制御部304は、処理日時の古いものから順にスレッド数分の依頼元識別子を選択し、選択した依頼元識別子に係る処理依頼を実行対象に決定する。
【0086】
これにより、サーバ装置30が依頼処理をマルチスレッドで実行する構成であっても、上述した実施形態と同様の効果を奏することができる。なお、本変形例の構成を採用する場合には、記録処理部303は、処理が開始された日時を処理日時として処理日時テーブルTに記録することが好ましい。
【0087】
上述の実施形態の各装置で実行されるプログラムは、ROMや記憶部等に予め組み込まれた状態で提供される。上述の実施形態の各装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0088】
さらに、上述の実施形態の各装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の実施形態の各装置で実行されるプログラムをインターネット等のネットワーク経由で提供又は配布するように構成してもよい。
【0089】
以上、本発明の実施形態を説明したが、この実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの新規な実施形態やその変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、組み合わせを行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0090】
1 データ処理システム
10 POS端末
20 撮像装置
30 サーバ装置
200 制御部
201 撮像制御部
202 コード読取部
203 処理依頼部
204 出力制御部
300 制御部
301 処理依頼受付部
302 処理実行部
303 記録処理部
304 実行制御部
305 処理結果送信部
【先行技術文献】
【特許文献】
【0091】
【特許文献1】特開2014-160342号公報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10