以下、本明細書で開示するシステムの好ましい一実施形態を、図を参照して説明する。但し、本発明の技術範囲はそれらの実施形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
図1は、本明細書に開示するシステムの第1実施形態を示す図である。
システム1は、光学読み取り情報である二次元コードを用いて、物品の2種類以上の物品情報を管理するシステムである。具体的には、本実施形態では、物品は、製品を格納する箱であり、物品情報は、箱に含まれる製品の在庫数である。
システム1は、サーバ20と、データベース21と、二次元コードを発行する二次元コードの管理者の端末30と、発行部31と、二次元コードを使用するユーザの端末10とを備える。サーバ20と、端末30と、端末10とは、ネットワークNを介して、通信可能に接続している。なお、ネットワークNの代わりに、サーバ20が端末30と直接シリアル通信等で通信しても良い。
サーバ20は、物品である箱を識別する識別情報と、識別情報と関連づけられた製品の在庫数との関係を有する在庫管理表を記憶するデータベース21と通信可能に接続している。サーバ20は、管理者の端末30又はユーザの端末10と通信して、データベース21に記憶されている在庫管理表を管理する。
二次元コードの管理者の端末30は、箱を識別する識別情報を含む二次元コードCを、発行部31を用いて、例えばシール等に印刷して発行する。二次元コードCは、二次元コードCが含む識別情報によって識別される箱Bに貼付される。二次元コードの管理者は、箱Bに含まれる製品の在庫数と、箱Bの識別情報とを関連づけて、在庫管理表を作成し、作成した在庫管理表を、サーバ20へ送信する。サーバ20は、受信した在庫管理表を、データベース21に記憶する。
二次元コードのユーザの端末10は、複数の箱Bに貼付された二次元コードを撮影して、二次元コードが有する識別情報を認識すると共に、サーバ20からデータベース21に記憶されている在庫管理表を受信する。端末10は、ユーザの操作に基づいて、箱に含まれる製品の在庫数を変更して、在庫管理表の内容を更新する。端末10は、内容が更新された在庫管理表を、サーバ20へ送信する。サーバ20は、受信した在庫管理表を、データベース21に記憶することにより、更新された在庫管理表の内容が、データベース21に記憶される在庫管理表と同期される。端末10の詳細な動作は、更に後述される。
図2は、ユーザの端末10を説明する図である。
端末10は、演算部11と、記憶部12と、操作部13と、表示部14と、画像取得部15と、通信部16を有する。
演算部11は、記憶部12に予め記憶されている所定のプログラムに従い、端末10の各要素の制御及び各種処理を行い、処理中に生じるデータを一時的に保存するために記憶部12を利用する。記憶部12は、1次記憶装置及び2次記憶装置を有していても良い。また、記憶部12は、所定のプログラムを記憶する記憶媒体を読み出し可能なドライブを有していても良い。
操作部13は、端末10のユーザによって操作されて、各種の情報を入力する。操作部13としては、例えば、タッチパネルを用いることができる。演算部11は、操作部13から入力された各種の情報を用いて、各種処理を行う。
表示部14は、演算部11の動作によって、各種の情報を表示する。表示部14としては、例えば、液晶パネルを用いることができる。
画像取得部15は、演算部11により制御されて、複数の二次元コードを、一画像で撮像する。画像取得部15としては、例えば、CCD、又はCMOS画像化素子等を用いることができる。画像取得部15により撮影された撮影画像は、上述した表示部14に表示される。また、画像取得部15により撮影された撮影画像は、記憶部12に一旦保存しても良い。
通信部16は、ネットワークNを介して、サーバ20との間で情報の送受信を行う。ネットワークNは、有線若しくは無線又は有線及び無線を含むネットワークを用いることができる。
端末10としては、例えば、多機能型携帯電話機、タブレット端末、ノート型パーソナルコンピュータ、デスクトップ型パーソナルコンピュータ、ハンディターミナル等を用いることができる。
次に、上述したユーザの端末10の詳細な動作について、図3に示すフローチャートを参照しながら、以下に説明する。
まず、ステップS10において、端末10は、複数の二次元コードを撮影する。
図4は、ユーザの端末10が複数の二次元コードを撮影する図である。
図4に示す例では、6個の箱B1〜B6が、縦及び横方向に並べて積まれている。各箱B1〜B6には、箱を識別する識別情報を含む二次元コードC1〜C6が貼付されている。6個の箱B1〜B6は、二次元コードC1〜C6が貼付された面を同一の方向に向けて、並べられている。端末10は、操作部13として、タッチパネル13a及びボタン13bを有する。撮影は、例えば、アプリケーションを立ち上げ、カメラを起動し常にキャプチャが行われる。キャプチャされた画像は、表示部14に表示される。更に、表示部14は、ボタン、ラベル、スイッチを重ねて表示できる。また、これらのボタン等には透過性を持たせることができる。そして、タッチパネル13aをタップすることで、表示部14に表示されたボタン等を押すことができる。
ユーザは、端末10を用いて、各箱B1〜B6に貼付された二次元コードC1〜C6を撮影する。撮影された二次元コードC1〜C6は、添付されている箱B1〜B6と共に、表示部14に表示される。
次に、ステップS12において、端末10は、撮影した撮影画像を解析して、撮影された二次元コードの識別情報を認識する。本実施形態では、全ての二次元コードC1〜C6の識別情報が認識されたとする。
次に、ステップS14において、端末10は、ネットワークNに接続されたサーバ20を介して、データベース21から在庫管理表T1を受信する。
図5は、在庫管理表T1を説明する図であり、図5(A)は在庫数の変更前を示しており、図5(B)は在庫数の変更後を示す。
6個の箱B1〜B6は、識別情報としての識別番号001〜006を用いて識別される。各識別番号で識別される箱には、在庫管理表T1に示す在庫数の製品が格納される。例えば、図5(A)に示す例では、識別番号001を有する箱B1には、35個の製品が格納され、識別番号006を有する箱B6には、48個の製品が格納される。
次に、ステップS16において、端末10は、受信した在庫管理表T1に基づいて、識別情報である識別番号と関連づけられている箱が有する物品情報である在庫数を取得する。具体的には、端末10は、在庫管理表T1に基づいて、識別番号001〜006を用いて識別される箱B1〜B6と、各箱B1〜B6の在庫数との関係を得る。ステップS14で受信した在庫管理表又はステップS16で得られた関係は、その全部又は一部を記憶部12にキャッシュとして保存しても良い。また、ステップS14の処理を、ステップS10又はステップS12の前に行って、在庫管理票の全部、または一部を記憶部12にキャッシュとして保存しておいても良い。これらにより、認識の度にサーバと通信する通信量を低減して、応答を早くすることができる。
次に、ステップS18において、端末10は、箱B1〜B6が有する在庫数(物品が有する物品情報)に基づいて定められる特定画像F1〜F6を、認識された二次元コードC1〜C6の撮影画像中の位置を特定するように撮影画像内に表示する。
図4に示す例では、特定画像F1〜F6は、矩形の輪郭を有し、各二次元コードの画像G1〜G6と重なるように、表示部14に表示される。各特定画像F1〜F6は、半透明な同じ色を有している。
また、各箱に含まれる製品の在庫数は、特定画像F1〜F6と関連づけて、撮影画像中に表示される。具体的には、各箱の在庫数は、特定画像F1〜F6の内部に表示される。例えば、特定画像F1内には、識別番号001によって識別される箱B1が含む製品の在庫数35が表示されており、識別番号001を含む二次元コードの画像G1と重なって表示部14に表示される箱B1の在庫数が、ユーザに対して認識可能となっている。他の箱についても、箱に格納される製品の在庫数が、ユーザに対して認識可能となっている。
このように、特定画像F1〜F6は、箱B1〜B6が有する製品の在庫数が内部に表示されることにより、箱B1〜B6が有する在庫数に基づいて定められる画像となっており、表示される在庫数によって、各箱の在庫数の違いがユーザに対して即座に認識される。
図4に示す例では、特定画像は、矩形の輪郭を有し、在庫数が内部に表示されるものであったが、特定画像の表現の仕方は、識別情報と関連づけられている物品が有する物品情報に基づいて定められるものであれば、これに限定されるものではない。例えば、特定画像の色、形状、位置、大きさは、物品情報に基づいて変更することができる。更に、特定画像の色、形状、位置、大きさは、物品情報の数に基づいて変更しても良い。例えば、図4の正しい6個の二次元コード全てを認識したら、正しい6個を認識したことを示すため特定画像を赤色に変更するなどである。また、特定画像は、文字を含んでいてもよい。
特定画像の色は、不透明でもよいし、半透明でもよい。また、特定画像の色はグラデーションに変化するようにしてもよい。
特定画像の形状は、矩形(四角形)、三角形、円であってもよい。また、特定画像は、二次元コードの画像から引出線を延ばして吹き出しのような形状を有していてもよい。
特定画像の位置は、撮影画像内であれば、特に制限はされない。例えば、特定画像を、二次元コードの画像と一部又は全体が重なるように配置してもよい。また、特定画像を、二次元コードの画像と隣接させて、二次元コードの画像の右上又は左上に配置してもよい。更に、特定画像を、撮影画像の右側の端部に上下方向に並べて配置してもよい。
特定画像の大きさは、二次元コードの画像の大きさと同じ程度にしてもよい。また、特定画像の大きさを、二次元コードの画像の大きさと対応させて変化させてもよい。また、特定画像の大きさは、撮影画像の大ささに基づいて固定してもよい。又は、特定画像の大きさを、上述したバリエーションを組み合わせて決定してもよい。
また、特定画像は、図4に示す例のように、撮影画像内で静止していてもよいが、動きを有していてもよい。例えば、特定画像は、撮影画像内で点滅するようにしてもよい。また、特定画像は、撮影画像内で振動するようにしてもよい。更に、特定画像は、撮影画像内で回転するようにしてもよい。また、この回転は、二次元コードの空間に合わせて回転させても良い。更に事前にラベル形状が分かっているのであれば、これに合わせて形状を変化させても良い。
上述したように、撮影画像内では、物品の物品情報である箱に含まれる製品の在庫数が、特定画像と関連づけられて表示されていた。更に、物品情報以外の情報を、特定画像と関連づけて表示してもよい。
例えば、特定画像と関連づけて、二次元コードが有する情報を表示させてもよい。具体的には、二次元コードが有する情報として、物品名(例えば、箱)、製品名、二次元コードのコード情報が挙げられる。コード情報としては、例えば、コードのサイズ、絵柄を植え込み可能なコードの場合には埋め込み絵柄の有無、誤り訂正情報、撮影画像内のコードの座標(中心座標、コーナ座標)、データベースに記憶されているコード名、登録日、発行者情報が挙げられる。また、特定画像と関連づけて、二次元コードが表示されている位置の順番を表示するようにしてもよい。
また、特定画像と関連づけて、二次元コードが含む情報と関連づけられている画像又は動画を、撮影画像内に表示するようにしてもよい。
更に、特定画像と関連づけて、二次元コードが含むURL情報に基づいて、ウェブコンテンツ(ウェブページ、画像又は動画)をダウンロードして、撮影画像内に表示するようにしてもよい。
特定画像に含まれる文字、又は特定画像と関連づけて表示される文字のフォントは、初期値により設定されていても、ユーザの視認性を高める観点から、適宜設定を変更可能であることが好ましい。
また、特定画像が動きを有する場合には、画像の動きの速さは、初期値により設定されていても、ユーザの視認性を高める観点から、適宜設定を変更可能であることが好ましい。
次に、ステップS20において、端末10は、ユーザによる撮影画像中の特定画像に対する操作に基づいて、箱の中の製品の在庫数を変更する。
ユーザは、箱B1〜B6内の製品の一部を取り出すか、又は、新たに製品を追加する等の作業を行う場合がある。このようにして、箱B1〜B6に含まれる製品の在庫数に変動があった場合には、ユーザは、端末10を操作して、在庫管理表の内容を変更する。ここでは、箱B1に対して製品を1個追加した場合の処理を以下に説明する。
図6に示すように、ユーザが、端末10の表示部14に表示されている撮影画面中の特定画像F1をタッチすると、即ちタッチパネル13a上の特定画像F1の部分をタッチすると、特定画像F1の上下左右に十字型に処理内容が表示される。特定画像F1の右側には在庫数を1個増やす処理が表示され、特定画像F1の左側には在庫数を1個減らす処理が表示され、特定画像F1の上側には在庫数を10個増やす処理が表示され、特定画像F1の下側には在庫数を10個減らす処理が表示される。
ユーザは、タッチパネル13aの特定画像F1上に置いた指先を、特定画像F1の上下左右の何れかの方向にスライドさせる操作により、処理を選択する。このような操作は、いわゆるフリック入力と呼ばれる操作である。
ここでは、箱B1に格納される製品の在庫数を1個増やすので、ユーザは、タッチパネル13aの特定画像F1上に置いた指先を、特定画像F1の右の方向にスライドさせて、在庫数を1個増やす処理が選択される。
図5(B)に示すように、端末10は、ユーザによる撮影画像中の特定画像F1に対する操作に基づいて、在庫管理表T1における識別番号001の在庫数を35個から36個に変更する。
また、図7に示すように、端末10は、変更された在庫管理表T1に基づいて、表示部14に表示される特定画像F1内の在庫数を35から36に変更する。即ち、識別番号001を含む二次元コードの画像G1の位置を特定する特定画像F1は、識別番号001により識別される箱B1に格納される製品の在庫数の変更と共に変化するようになされている。なお、特定画像F1内の在庫数を変更した場合には、特定画像F1の画像を変化させて(例えば、特定画像F1の色)、在庫数が変化したことを認識可能にしてもよい。また、特定画像F1の画像の変化は、在庫数が増加した場合と、減少した場合とでは、異なるように変化させてもよい。更に、特定画像F1の画像の変化は、在庫数の変化量に対応させて更に変化するようにしてもよい。例えば、在庫数の変化量が大きくなるのと共に、特定画像F1の色が濃くなるようにしてもよい。
上述した例では、在庫数を1個増加する例を示していたが、例えば、3個増加する場合には、タッチパネル13aの特定画像F1上に置いた指先を、特定画像F1の右の方向にスライドさせる操作を3回繰り返せばよい。
また、在庫数を19個増加する場合には、タッチパネル13aの特定画像F1上に置いた指先を、特定画像F1の上の方向にスライドさせる操作を2回繰り返した後、特定画像F1の左の方向にスライドさせる操作を1回行えばよい。
在庫数を任意の数に変更する処理は、4つの処理内容の適宜組み合わせにより操作することが可能である。
また、上述した例では、箱B1に含まれる製品の在庫数を変更していたが、他の箱B2〜B6に含まれる製品の在庫数を変更する処理も同様に行うことができる。
また、例えば、本来、箱B2に含まれる製品の在庫数を変更するのを、誤って箱B1に含まれる製品の在庫数を変更してしまった場合には、図8に示すように、ユーザは、タッチパネル13aの特定画像F1上に指先を所定の時間の間置いて、いわゆる長押しを行うことにより、箱B1の在庫数を元の35個に戻すことができる。その後、あらためて箱B2に含まれる製品の在庫数を変更するために、特定画像F2に対する操作を行う。
上述したタッチパネル13aに対する操作では、いわゆるフリック入力を用いて、特定画像を操作することにより、物品の物品情報である箱の在庫数を変更していたが、タッチパネル13aに対する操作は、特にフリック入力に限定されるものではない。
例えば、タッチパネル13aを用いた特定画像に対する操作として、ダブルタップ、ドラッグ、スワイプ、ピンチイン、ピンチアウト等の操作を用いてもよい。また、トグル入力のように、特定画像をタップすることにより複数の状態を循環的に変更する操作を用いてもよい。更に、チェックボックスを用いてON・OFFの切り替え操作を用いてもよい。
また、特定画像をタップする時間に基づいて、物品情報に対する変更内容を異なるようにしてもよい。例えば、タッチパネル13aとユーザの指が接触している時間に比例して在庫数が増加したり、タッチパネル13aとユーザの指が一定時間以上接触していた場合には、在庫数の変更内容をリセットさせるようにしても良い。また、タッチパネル13aに対するユーザの指の圧力に応じて在庫数の増加速度を変化させたり、タッチパネル13aに対するユーザの指の圧力が所定以上であれば、在庫数の変更内容をリセットさせるようにしても良い。
次に、ステップS22において、端末10は、変更された在庫管理表T1を、ネットワークNを介して、サーバ20へ送信する。サーバ20は、受信した在庫管理表T1を、データベース21に記憶することにより、更新された在庫管理表の内容が、データベース21に記憶される在庫管理表T1と同期される。
上述した本実施形態のシステムによれば、箱を識別する識別番号を含む複数の二次元コードが撮影された撮影画像に基づいて、2種類以上の製品の在庫数と関連づけられている箱を識別する識別番号を含む二次元コードの画像それぞれの位置を認識できる。また、撮影画像中の特定画像に対する操作に基づいて、製品の在庫数を変更することができる。
上述した第1実施形態では、端末10は、データベース21に記憶されている在庫管理表を受信し、変更後の在庫管理表を、再びデータベース21に記憶させていたが、端末10は、データベース21に記憶されている在庫管理表に対して在庫数の変更を直接行うようにしてもよい。
また、上述した第1実施形態では、特定画像を操作して在庫数を変更していたが、撮影画像内に表示されている全ての箱の在庫数を一律で1つ増加する処理を行う場合には、撮影画像内で特定画像以外の部分を操作して、例えばフリック操作して、全ての箱の在庫数を一律で1つ増加するようにしてもよい。同様に、撮影画像内で特定画像以外の部分を操作して、例えばフリック操作して、全ての箱の在庫数を一律で1つ減少するようにしてもよい。
また、上述した第1実施形態では、二次元コードが貼付された箱という同じ種類の複数の物品を一画面で撮影していたが、二次元コードが貼付された異なる種類の複数の物品を一画面で撮影してもよい。この場合にも、端末は、表示部に表示された撮影画面内において、異なる物品それぞれが有する物品情報に基づいて定められる特定画像を、認識された二次元コードの撮影画像中の位置を特定するように撮影画像内に表示する。例えば、物品A(酒)及び物品B(ジュース)という異なる種類の物品を一画面で撮影して、異なる種類の物品A(酒)及び物品B(ジュース)それぞれが有する物品情報(酒及びジュース)に基づいて定められる特定画像を、認識された二次元コードの撮影画像中の位置を特定するように撮影画像内に表示する。例えば、物品A(酒)を矩形の画像で表示し、物品B(ジュース)を円形の画像で表示する。また、物品A(酒)及び物品B(ジュース)が、それらの識別情報と関連づけられている第2の物品情報を有する場合には、特定画像と関連づけて、第2の物品情報を表示するようにしてもよい。例えば、物品A(酒)を識別する矩形の特定画像と関連づけて第2の物品情報である物品A(酒)の在庫数(4本)を表示し、物品B(ジュース)を識別する円形の特定画像と関連づけて第2の物品情報である物品B(ジュース)の在庫数(10本)を表示するようにしてもよい。
次に、上述した第1実施形態のシステムの変形例1及び変形例2を、下記に説明する。
図9は、変形例1の処理を説明する図である。
本変型例のシステムも、光学読み取り情報である二次元コードを用いて、物品の物品情報を管理する。具体的には、本変型例では、物品である製品が納められた箱は、倉庫に入庫されている「入庫済み」の状態と、倉庫に入庫されている箱に対して出庫の依頼を受けた「出庫待ち」の状態と、箱が倉庫から出庫された「出庫済み」の状態の3つの状態(物品情報)を有している。
図9は、図4と同様に、4個の箱が縦及び横方向に並べて積まれており、各箱には、箱を識別する識別情報を含む二次元コードが貼付されている。4個の箱は、二次元コードが貼付された面を同一の方向に向けて、並べられている。ユーザは、端末10を用いて、各箱に貼付された二次元コードを撮影する。
図10は、変形例1の在庫管理表T2を説明する図であり、図10(A)は在庫状態の変更前を示しており、図10(B)は在庫状態の変更後を示す。在庫管理表T2は、データベース21に記憶されている。
4個の箱は、識別情報としての識別番号001〜004を用いて識別される。各識別番号で識別される箱の状態は、識別番号と関連づけられた状態によって管理される。例えば、図10(A)に示す例では、識別番号001を有する箱は、「出庫待ち」の状態であり、識別番号002〜004を有する箱は、「入庫済み」の状態である。
以下、端末10の動作の要部について、説明する。
端末10は、撮影した撮影画像を解析して、撮影された二次元コードの識別情報を認識する。本変型例では、全ての二次元コードの識別情報が認識されたとする。もし、撮影された二次元コードが有する識別情報が在庫管理表になかった場合には、識別情報が認識されなかった二次元コードの画像と重なるように、二次元コードが認識されなかったことを示す表示(例えば、?マーク)を示すようにしてもよい。
端末10は、ネットワークNに接続されたサーバ20を介して、データベース21から在庫管理表T2を受信する。
端末10は、受信した在庫管理表T2に基づいて、識別情報である識別番号と関連づけられている箱の状態を取得する。具体的には、端末10は、在庫管理表T2に基づいて、識別番号001〜004を用いて識別される箱と、各箱の状態との関係を得る。
図9に示すように、端末10は、箱が有する状態(物品が有する物品情報)に基づいて定められる特定画像F1〜F4を、認識された二次元コードの撮影画像中の位置を特定するように撮影画像内に表示する。
図9に示す例では、特定画像F1〜F4は、矩形の輪郭を有し、各二次元コードの画像G1〜G4と重なるように、表示部14に表示される。なお、説明を分かり易くするために、表示部14には、各二次元コードの画像G1〜G4のみを示しており、箱の画像は示していない。
また、各箱の状態は、特定画像F1〜F4と関連づけて、撮影画像中に表示される。具体的には、各箱の状態は、特定画像F1〜F4の内部に表示される。例えば、特定画像F1内には、識別番号001によって識別される箱の「出庫待ち」の状態が表示されており、識別番号001を含む二次元コードの画像G1と重なって表示部14に表示される箱の状態が、ユーザに対して認識可能となっている。「出庫待ち」の状態にある特定画像F1の色は、「入庫済み」の状態である特定画像F2〜F4とは異なる色に表示されており、箱の状態が、ユーザに対して認識可能となっている。更に、ユーザが端末10等によって、識別情報、または物品情報に対する条件文を入力し、条件文に応じて特定画像の表示を変化させても良い。例えば、「物品情報=出庫待ち」という条件文を入力すると、「出庫待ち」の状態の二次元コードのみが表示されるようにしても良い。
端末10は、ユーザによる撮影画像中の特定画像に対する操作に基づいて、箱の状態を変更する。
ユーザは、物品である製品が納められた箱の状態に変更があった場合には、端末10を操作して、在庫管理表の内容を変更することになる。ここでは、識別番号001によって識別される箱の状態が、「出庫待ち」の状態から「出庫済み」の状態に変更する場合の処理を以下に説明する。
本変型例では、端末10は、タッチパネル13a上の特定画像の部分がタップされる度に、箱の状態が、「出庫待ち」→「出庫済み」→「入庫済み」と循環して入力されるようになされている。いわゆるトグル入力が用いられている。
図9に示すように、ユーザは、端末10の表示部14に表示されている撮影画面中の特定画像F1をタップする、即ちタッチパネル13a上の特定画像F1の部分をタップする。
図10(B)に示すように、端末10は、ユーザによる撮影画像中の特定画像F1に対する操作に基づいて、在庫管理表T2における識別番号001の状態を、「出庫待ち」から「出庫済み」に変更する。
また、端末10は、変更された在庫管理表T2に基づいて、表示部14に表示される特定画像F1の色を、「出庫済み」の状態を示す色に変更するのと共に、特定画像F1内に「出庫済み」の状態を表示する。
端末10は、変更された在庫管理表T2を、ネットワークNを介して、サーバ20へ送信する。サーバ20は、受信した在庫管理表T2を、データベース21に記憶することにより、更新された在庫管理表の内容が、データベース21に記憶される在庫管理表T2と同期される。以上が、変形例1の説明である。
図11は、変形例2の処理を説明する図である。
本変型例のシステムも、光学読み取り情報である二次元コードを用いて、物品の物品情報を管理する。具体的には、本変型例では、物品である製品が納められた箱は、棚卸し前の「確認前」の状態と、箱を確認した「確認済み」の状態の2つの状態(物品情報)を有している。
図11は、図4と同様に、4個の箱が縦及び横方向に並べて積まれており、各箱には、箱を識別する識別情報を含む二次元コードが貼付されている。4個の箱は、二次元コードが貼付された面を同一の方向に向けて、並べられている。ユーザは、端末10を用いて、各箱に貼付された二次元コードを撮影する。
図12は、変形例2の在庫管理表T3を説明する図であり、図12(A)は在庫状態の変更前を示しており、図12(B)は在庫状態の変更後を示す。在庫管理表T3は、データベース21に記憶されている。
4個の箱は、識別情報としての識別番号001〜004を用いて識別される。各識別番号で識別される箱の状態は、識別番号と関連づけられた状態によって管理される。例えば、図12(A)に示す例では、識別番号001〜003を有する箱は、「確認前」の状態であり、識別番号004を有する箱は、「確認済み」の状態である。
以下、端末10の動作の要部について、説明する。
端末10は、撮影した撮影画像を解析して、撮影された二次元コードの識別情報を認識する。本変型例では、全ての二次元コードの識別情報が認識されたとする。
端末10は、ネットワークNに接続されたサーバ20を介して、データベース21から在庫管理表T3を受信する。
端末10は、受信した在庫管理表T3に基づいて、識別情報である識別番号と関連づけられている箱の状態を取得する。具体的には、端末10は、在庫管理表T3に基づいて、識別番号001〜004を用いて識別される箱と、各箱の状態との関係を得る。
図11に示すように、端末10は、箱が有する状態(物品が有する物品情報)に基づいて定められる特定画像F1〜F4を、認識された二次元コードの撮影画像中の位置を特定するように撮影画像内に表示する。
図11に示す例では、特定画像F1〜F4は、矩形の輪郭を有し、各二次元コードの画像G1〜G4と重なるように、表示部14に表示される。なお、説明を分かり易くするために、表示部14には、各二次元コードの画像G1〜G4のみを示しており、箱の画像は示していない。
また、各箱の状態は、特定画像F1〜F4と関連づけて、撮影画像中に表示される。具体的には、各箱の状態は、特定画像F1〜F4の内部に表示される。例えば、特定画像F1内には、識別番号001によって識別される箱の「確認前」の状態が表示されており、識別番号001を含む二次元コードの画像G1と重なって表示部14に表示される箱の状態が、ユーザに対して認識可能となっている。「確認前」の状態にある特定画像F1〜F3の色は、「確認済み」の状態である特定画像F4とは異なる色に表示されており、箱の状態が、ユーザに対して認識可能となっている。このように、ユーザは、ユーザが棚卸しを行うために撮影した4つの箱の内の1つの箱に対しては、既に棚卸しがなされていることが認識できる。従って、ユーザは、残りの「確認前」の状態にある3つの箱に対してのみ棚卸しの作業を行えばよいことになる。
そこで、ユーザは、残りの「確認前」の状態にある3つの箱に対して棚卸しの作業を行う。
端末10は、ユーザによる撮影画像中の特定画像に対する操作に基づいて、箱の状態を変更する。
本変型例では、端末10は、タッチパネル13a上の特定画像の部分がタップされる度に、箱の状態が、「確認前」→「確認済み」と循環して入力されるようになされている。いわゆるトグル入力が用いられている。
図11に示すように、ユーザは、端末10の表示部14に表示されている撮影画面中の特定画像F1〜F3それぞれをタップする、即ちタッチパネル13a上の特定画像F1〜F3それぞれの部分をタップする。
図12(B)に示すように、端末10は、ユーザによる撮影画像中の特定画像F1に対する操作に基づいて、在庫管理表T3における識別番号001〜003の状態を、「確認前」から「確認済み」に変更する。
また、端末10は、変更された在庫管理表T3に基づいて、表示部14に表示される特定画像F1〜F3の色を、「確認済み」の状態を示す色に変更するのと共に、特定画像F1〜F3内に「確認済み」の状態を表示する。
端末10は、変更された在庫管理表T3を、ネットワークNを介して、サーバ20へ送信する。サーバ20は、受信した在庫管理表T3を、データベース21に記憶することにより、更新された在庫管理表の内容が、データベース21に記憶される在庫管理表T3と同期される。以上が、変形例2の説明である。
次に、上述したシステムの第2実施形態を、図13〜図16を参照しながら以下に説明する。第2実施形態について特に説明しない点については、上述の第1実施形態に関して詳述した説明が適宜適用される。また、同一の構成要素には同一の符号を付してある。
図13は、本明細書に開示するシステムの第2実施形態において、ユーザの端末が複数の二次元コードを撮影する図である。
二次元コードのユーザの端末10は、4つの書類D1〜D4に貼付された二次元コードC1〜C4を撮影して、二次元コードが有する識別情報を認識すると共に、サーバ20からデータベース21に記憶されている在庫管理表を受信する。端末10は、ユーザの操作に基づいて、書類の承認の状態を変更して、在庫管理表の内容が更新される。端末10は、内容が更新された在庫管理表を、サーバ20へ送信する。サーバ20は、受信した在庫管理表を、データベース21に記憶することにより、更新された在庫管理表の内容が、データベース21に記憶される在庫管理表と同期される。
図14は、書類の承認工程を説明するフローチャートである。
まず、起案された書類の状態は、ステップS30に示すように、「申請中」の状態にある。書類の起案者は、第1の承認者に対して、書類の承認を申請する。
次に、ステップS32において、第1の承認者は、「申請中」の状態にある書類の承認又は却下を判断する。却下された書類は、ステップ32の前に戻る。一方、承認された書類は、「承認1 処理済み」の状態に変化して、ステップS34における第2の承認者の承認の判断に進む。
ステップ34に進んだ場合には、第2の承認者は、「承認1 処理済み」の状態にある書類の承認又は却下を判断する。却下された書類は、ステップ34の前に戻る。一方、承認された書類は、「承認2 処理済み」の状態に変化して、ステップS36における最終の承認者の承認の判断に進む。
ステップ36に進んだ場合には、最終の承認者は、「承認2 処理済み」の状態にある書類の承認又は却下を判断する。却下された書類は、ステップ36の前に戻る。一方、承認された書類は、「最終承認 処理済み」の状態に変化して、書類の申請処理が終了する。このように、書類は、物品情報として、「申請中」の状態、「承認1 処理済み」の状態、「承認2 処理済み」の状態及び「最終承認 処理済み」の状態の4つの状態を有する。
図13に示す例では、4つの書類D1〜D4が、縦及び横方向に並べて配置される。各書類D1〜D4には、書類を識別する識別情報を含む二次元コードC1〜C4が貼付されている。4つの書類D1〜D4は、二次元コードC1〜C4が貼付された面を同一の方向(上向き)に向けて、並べられている。
以下、端末10の動作の要部を説明する。
第1の承認者であるユーザは、端末10を用いて、各書類D1〜D4に貼付された二次元コードC1〜C4を撮影する。撮影された二次元コードC1〜C4は、添付されている書類D1〜D4と共に、表示部14に表示される。
端末10は、撮影した撮影画像を解析して、撮影された二次元コードの識別情報を認識する。本実施形態では、全ての二次元コードC1〜C4の識別情報が認識されたとする。
端末10は、ネットワークNに接続されたサーバ20を介して、データベース21から在庫管理表T4を受信する。
図15は、書類管理表T4を説明する図であり、図15(A)は書類の状態の変更前を示しており、図15(B)は書類の状態の変更後を示す。
4つの書類D1〜D4は、識別情報としての識別番号001〜004を用いて識別される。各識別番号で識別される書類には、書類管理表T4に示す書類の状態により管理される。例えば、図15(A)に示す例では、識別番号001を有する書類D1は、「申請中」の状態にあり、識別番号002を有する書類D2は、「承認1 処理済み」の状態にあり、識別番号003を有する書類D3は、「承認2 処理済み」の状態にあり、識別番号004を有する書類D4は、「最終承認 処理済み」の状態にある。
端末10は、受信した在庫管理表T4に基づいて、識別情報である識別番号と関連づけられている書類の状態を取得する。具体的には、端末10は、書類管理表T4に基づいて、識別番号001〜004を用いて識別される書類D1〜D4と、書類D1〜D4の状態との関係を得る。
端末10は、書類D1〜D4が有する状態(物品が有する物品情報)に基づいて定められる特定画像F1〜F4を、認識された二次元コードC1〜C4の撮影画像中の位置を特定するように撮影画像内に表示する。
図13に示す例では、特定画像F1〜F4は、矩形の輪郭を有し、各二次元コードの画像G1〜G4と重なるように、表示部14に表示される。
各書類D1〜D4の状態は、特定画像F1〜F4と関連づけて、撮影画像中に表示される。具体的には、各書類D1〜D4の状態は、特定画像F1〜F4の内部に表示される。例えば、特定画像F1内には、識別番号001によって識別される書類の「申請中」の状態が表示されており、識別番号001を含む二次元コードの画像G1と重なって表示部14に表示される書類の状態が、ユーザに対して認識可能となっている。特定画像の色は、書類の状態によって異なっている。「申請中」の状態にある特定画像F1の色は、他の「承認1 処理済み」、「承認2 処理済み」及び「最終承認 処理済み」の状態である特定画像F2〜F4とは異なる色に表示されており、書類の状態が、第1の承認者であるユーザに対して認識可能となっている。
従って、第1の承認者であるユーザは、表示部14に表示されている画像を見ることにより、自分が判断すべき書類が「申請中」の状態にある特定画像F1によって示される書類D1であることが認識可能となされている。端末10は、「申請中」の状態にある特定画像F1以外の特定画像に対する、第1の承認者であるユーザによる操作に基づいて、操作された特定画像を、操作の対象から除外するようにしてもよい。
第1の承認者であるユーザは、書類D1に対して、承認する又は却下するかの判断を行う。ここでは、書類D1に対して、承認する判断を行ったとする。
端末10は、第1の承認者であるユーザによる撮影画像中の特定画像に対する操作に基づいて、書類の状態を変更する。
本変型例では、端末10は、タッチパネル13a上の特定画像F1の部分がタップされる度に、書類の状態が、「申請中」→「承認1 処理済み」と循環して入力されるようになされている。いわゆるトグル入力が用いられている。なお、第1の承認者であるユーザは、書類D1に対して、却下の判断を行った場合には、書類の状態を「申請中」のままで変更を行わない。
ユーザが、第2の承認者である場合には、タッチパネル13a上の特定画像F2の部分がタップされる度に、書類の状態が、「承認1 処理済み」→「承認2 処理済み」と循環して入力されるようになされている。また、ユーザが、最終の承認者である場合には、タッチパネル13a上の特定画像F2の部分がタップされる度に、書類の状態が、「承認2 処理済み」→「最終承認 処理済み」と循環して入力されるようになされている。
図16に示すように、第1の承認者であるユーザは、端末10の表示部14に表示されている撮影画面中の特定画像F1をタップする、即ちタッチパネル13a上の特定画像F1の部分をタップする。
図15(B)に示すように、端末10は、ユーザによる撮影画像中の特定画像F1に対する操作に基づいて、書類管理表T4における識別番号001の状態を、「申請中」から「承認1 処理済み」に変更する。
また、端末10は、変更された在庫管理表T4に基づいて、表示部14に表示される特定画像F1の色を、「承認1 処理済み」の状態を示す色に変更するのと共に、特定画像F1内に「承認1 処理済み」の状態を表示する。
なお、特定画像に対する操作は、物品情報である書類の状態に基づいて異なっていてもよい。例えば、特定画像をタップする操作により、「申請中」から「承認1 処理済み」への変更を行うようにする。また、特定画像へのフリック操作により、「承認1 処理済み」から「承認2 処理済み」への変更を行うようにする。また、特定画像へのダブルタップ操作により、「承認2 処理済み」から「最終承認 処理済み」への変更を行うようにしてもよい。
端末10は、変更された書類管理表T4を、ネットワークNを介して、サーバ20へ送信する。サーバ20は、受信した書類管理表T4を、データベース21に記憶することにより、更新された書類管理表の内容が、データベース21に記憶される書類管理表T4と同期される。
上述した本実施形態のシステムによれば、書類を識別する識別番号を含む複数の二次元コードが撮影された撮影画像に基づいて、2種類以上の書類の状態と関連づけられている書類を識別する識別番号を含む二次元コードの画像それぞれの位置を認識できる。また、撮影画像中の特定画像に対する操作に基づいて、書類の状態を変更することができる。
上述した各実施形態及び変形例では、ユーザは、端末10を片手で持って複数の二次元コードを撮影するので、必ずしも、二次元コードに対して対向するように静止した状態で撮影されるとは限らない。端末10では、複数の二次元コードの撮影と認識処理とを所定の間隔で繰り返し行っているので、端末を持つ手がぶれたり、撮影する角度の変化に起因して、前回の撮影で認識された二次元コードが、次回の撮影では認識されないこともあり得る。
そこで、端末10は、認識されなかった二次元コードの位置を特定する特定画像を、前回の撮影で認識された二次元コードの位置に基づいて推定して表示する。以下、この処理について、図を参照しながら説明する。
図17は、撮影画像中の二次元コードの位置を推定することを説明する図である。
時刻T=t0における撮影では、4つの二次元コードが撮影されていて、4つの二次元コードが認識されている。端末10の表示部14には、4つの二次元コードの画像G1〜G4が、二次元コードが貼付された物品の画像と共に表示される。
次に、時刻T=t1における撮影では、4つの二次元コードが撮影されて、4つの内の3つの二次元コードが認識されたとする。3つの二次元コードの画像G1〜G3は認識されたが、二次元コードの画像G4は認識されなかったとする。
端末10は、前回認識されて今回認識されなかった二次元コードの画像G4に対して、前回の撮影画像において、二次元コードの画像G4の位置に最も近い二次元コード画像G2の位置の変化に基づいて、今回認識されなかった二次元コードの画像G4の位置を推定する。
撮影画像内における二次元コードの画像G2の位置を代表する座標が、時刻T=t0において(Xa0,Ya0)であり、二次元コードの画像G4の位置を代表する座標が、時刻T=t0において(Xb0,Yb0)であったとする。
時刻T=t1では、二次元コード画像G2の位置を代表する座標は、(Xa1,Ya1)に変化したとする。
端末10は、時刻T=t0からT=t1における二次元コード画像G2の位置の座標の変化として、ΔXa=Xa1−Xa0、ΔYa=Ya1−Xa0を求める。
端末10は、時刻T=t1における二次元コードの画像G4の位置として、Xb1=Xb0+ΔXa、Yb1=Yb0+ΔYaを求める。
そして、端末10は、認識出来なかった二次元コードの画像G4を推定した位置(Xb1,Yb1)を特定するように、画像G4の位置を特定する特定画像を表示する。
上述した処理は、二次元コードが認識できなくなった時点から所定の期間の間行うようにすることができる。所定の期間が過ぎても認識されない二次元コードについては、二次元コードの位置の推定及び特定画像の表示を中止してもよい。
本発明では、上述した実施形態方法、装置及びプログラムは、本発明の趣旨を逸脱しない限り適宜変更が可能である。また、一の実施形態又は変形例が有する構成要件は、他の実施形態にも適宜適用することができる。
上述した各実施形態及び変形例では、光学読み取り情報として、二次元コードを用いていたが、光学読み取り情報は、二次元コードに限定されるものではない。光学読み取り情報は、光学的に読み取られる情報であれば特に制限されるものではく、例えば、一次元コード、電子透かし、OCRによって認識される文字情報も含まれる。