(57)【要約】【課題】ユーザの利便性を向上させることを可能とする。【解決手段】画像取得部１０１は、親コードとしての複数の第１光学式認識コード及び子コードとしての複数の第２光学式認識コードを含む画像を取得する。デコード処理部１０２は、取得された画像に含まれる複数の第１光学式認識コード及び複数の第２光学式認識コードを読み取ることによって、当該画像中における複数の親コードの位置及び複数の子コードの位置を特定する。管理情報生成部１０４は、特定された複数の親コードの位置及び複数の子コードの位置に基づいて、当該複数の子コードの各々に対して１つの親コードが対応づけられた管理情報を生成する。管理情報出力部１０６は、生成された管理情報を出力する。【選択図】図５
2020173526.tif 000002
【特許請求の範囲】
【請求項１】
親コードとしての複数の第１光学式認識コード及び子コードとしての複数の第２光学式認識コードを含む画像を取得する取得手段と、
前記取得された画像に含まれる複数の第１光学式認識コード及び複数の第２光学式認識コードを読み取ることによって、当該画像中における複数の親コードの位置及び複数の子コードの位置を特定する特定手段と、
前記特定された複数の親コードの位置及び複数の子コードの位置に基づいて、当該複数の子コードの各々に対して、少なくとも１つの親コードが対応づけられた管理情報を生成する生成手段と、
前記生成された管理情報を出力する出力手段と
を具備する光学式認識コード読取装置。
【請求項２】
光学式認識コード読取装置が実行する方法であって、
親コードとしての複数の第１光学式認識コード及び子コードとしての複数の第２光学式認識コードを含む画像を取得するステップと、
前記取得された画像に含まれる複数の第１光学式認識コード及び複数の第２光学式認識コードを読み取ることによって、当該画像中における複数の親コードの位置及び複数の子コードの位置を特定する特定手段と、
前記特定された複数の親コードの位置及び複数の子コードの位置に基づいて、当該複数の子コードの各々に対して、少なくとも１つの親コードが対応づけられた管理情報を生成する生成手段と、
前記生成された管理情報を出力する出力手段と
を具備する方法。
【請求項３】
光学式認識コード読取装置のコンピュータによって実行されるプログラムであって、
前記コンピュータに、
親コードとしての複数の第１光学式認識コード及び子コードとしての複数の第２光学式認識コードを含む画像を取得するステップと、
前記取得された画像に含まれる複数の第１光学式認識コード及び複数の第２光学式認識コードを読み取ることによって、当該画像中における複数の親コードの位置及び複数の子コードの位置を特定するステップと、
前記特定された複数の親コードの位置及び複数の子コードの位置に基づいて、当該複数の子コードの各々に対して、少なくとも１つの親コードが対応づけられた管理情報を生成するステップと、
前記生成された管理情報を出力するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光学式認識コード読取装置、方法及びプログラムに関する。
【背景技術】
【０００２】
一般的に、物品に付される情報処理用の光学式認識コード（光学式シンボル）として種々のものが利用されている。光学式認識コードは光学的に読み取られるコードであり、このような光学式認識コードとしては例えば一次元方向の黒及び白のパターンで情報を記録するバーコード等が広く実用化されている。
【０００３】
更に、近年では、例えば赤色、緑色及び青色のような３色の色彩のうちの１の色彩が付されたセルが所定の順番で複数配列されてなる光学式認識コード（以下、カラービットコードと表記）が開発されている（例えば、特許文献１を参照）。
【０００４】
このカラービットコードによれば、当該カラービットコードの構成色である例えば３色の色彩の遷移（配列）によって特定のデータを表すことができるため、カラービットコードにおける各色彩の占める領域の大きさ及び形状の制限は緩く、当該カラービットコードが例えば凹凸のある表面や柔軟性のある素材上に付された場合であっても、バーコード等と比較して、高い読み取り精度を実現することができる。
【０００５】
ところで、上記したカラービットコードは、例えば物品管理のための識別コードとして物品に付して利用される場合が多い。
【０００６】
これに関連して、例えば２つの親コード（親タグ）を利用し、当該親コードの間に挟まれるように配置された子コード（子タグ）を読み取ることによって、物品を管理するシステムが開発されている（例えば、非特許文献１を参照）。しかしながら、このようなシステムでは、雑多に配置された物品を正確に把握することが困難であり、ユーザにとって利便性が低い場合がある。
【０００７】
更に、上記したシステムにおいては例えばスマートデバイス等に搭載されているカメラを用いたパノラマ撮影によって２つの親コード間に配置された子コードを読み取る場合があるが、このような読み取り作業は非常に煩雑である。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−０２７０２９号公報
【非特許文献】
【０００９】
【非特許文献１】ビーコア株式会社、“ラックシステム”、［online］、［平成３１年４月１日検索］、インターネット＜ＵＲＬ：http://www.colorbit.jp/new/?page _id=40＞
【発明の概要】
【発明が解決しようとする課題】
【００１０】
そこで、本発明の目的は、ユーザの利便性を向上させることが可能な光学式認識コード読取装置、方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の１つの態様によれば、親コードとしての複数の第１光学式認識コード及び子コードとしての複数の第２光学式認識コードを含む画像を取得する取得手段と、前記取得された画像に含まれる複数の第１光学式認識コード及び複数の第２光学式認識コードを読み取ることによって、当該画像中における複数の親コードの位置及び複数の子コードの位置を特定する特定手段と、前記特定された複数の親コードの位置及び複数の子コードの位置に基づいて、当該複数の子コードの各々に対して１つの親コードが対応づけられた管理情報を生成する生成手段と、前記生成された管理情報を出力する出力手段とを具備する光学式認識コード読取装置が提供される。
【発明の効果】
【００１２】
本発明は、ユーザの利便性を向上させることを可能とする。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態に係る光学式認識コード読取装置を含む情報管理システムの構成の一例を示す図。
【図２】光学式認識コード読取装置のハードウェア構成の一例を示す図。
【図３】情報管理装置のハードウェア構成の一例を示す図。
【図４】カラービットコードについて説明するための図。
【図５】光学式認識コード読取装置の機能構成の一例を示すブロック図。
【図６】情報管理装置の機能構成の一例を示すブロック図。
【図７】光学式認識コード読取装置の処理手順の一例を示すフローチャート。
【図８】対象画像の一例を示す図。
【図９】管理情報確認画面の一例を示す図。
【図１０】管理情報の保存処理が完了した旨をユーザに対して通知する画面の一例を示す図。
【図１１】管理情報一覧画面の一例を示す図。
【図１２】管理情報の送信処理が完了した旨をユーザに対して通知する画面の一例を示す図。
【図１３】情報管理装置の処理手順の一例を示すフローチャート。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明の実施形態について説明する。  
図１は、本実施形態に係る光学式認識コード読取装置を含む情報管理システム（ネットワークシステム）の構成の一例を示す。図１に示すように、情報管理システムは、光学式認識コード読取装置１０及び情報管理装置２０を含む。光学式認識コード読取装置１０及び情報管理装置２０は、例えばインターネットのようなネットワーク３０を介して互いに通信可能に接続されている。
【００１５】
光学式認識コード読取装置１０は、例えばスマートフォンまたはタブレット端末等のスマートデバイスであるが、他の情報処理装置であってもよい。光学式認識コード読取装置１０は、カメラを備え、後述する光学式認識コードを読み取る（認識する）機能を有する。
【００１６】
情報管理装置２０は、光学式認識コード読取装置１０による光学式認識コードの読み取り結果を管理する機能を有するサーバ装置である。なお、情報管理装置２０は、各種クラウドコンピューティングサービスを提供するサーバ装置であってもよい。
【００１７】
図２は、図１に示す光学式認識コード読取装置１０のハードウェア構成の一例を示す。ここでは、光学式認識コード読取装置１０が例えばスマートフォンであるものとして説明する。
【００１８】
図２に示すように、光学式認識コード読取装置１０は、バス１１に接続された、不揮発性メモリ１２、ＣＰＵ１３、メインメモリ１４、無線通信デバイス１５、ディスプレイ１６、タッチパネル１７及びカメラ１８等を備える。
【００１９】
不揮発性メモリ１２は、各種プログラムを格納する。不揮発性メモリ１２に格納されている各種プログラムには、例えばオペレーティングシステム（ＯＳ）及び光学式認識コード読取装置１０上で起動される各種アプリケーションプログラム等が含まれる。
【００２０】
ＣＰＵ１３は、例えば不揮発性メモリ１２に格納されている各種プログラムを実行する。なお、ＣＰＵ１３は、光学式認識コード読取装置１０全体の制御を司るものである。
【００２１】
メインメモリ１４は、例えばＣＰＵ１３が各種プログラムを実行する際に必要とされるワークエリア等として使用される。
【００２２】
無線通信デバイス１５は、外部のサーバ装置（例えば、情報管理装置２０）等との通信を制御する機能を有する。
【００２３】
ディスプレイ１６は、例えば表示パネル及び表示制御を行う駆動回路を備えることにより、各種データ等を表示する機能を有する。なお、カメラ１８によって撮像された画像は、このディスプレイ１６に表示することができる。
【００２４】
タッチパネル１７は、ディスプレイ１６の前面に重畳して配置され、例えばユーザの指先等で指定（タッチ）された画面上の位置を検出する機能を有する。これにより、タッチパネル１７は、光学式認識コード読取装置１０に対するユーザの各種操作を検知することができる。
【００２５】
カメラ１８は、各種画像を撮像する機能を有する撮像装置（撮像デバイス）である。光学式認識コード読取装置１０がスマートフォンである場合、カメラ１８は、例えば当該光学式認識コード読取装置１０本体の背面（ディスプレイ１６及びタッチパネル１７が配置されている面の反対の面）に設けられる。
【００２６】
図３は、図１に示す情報管理装置２０のハードウェア構成の一例を示す。図３に示すように、情報管理装置２０は、バス２１に接続された、不揮発性メモリ２２、ＣＰＵ２３、メインメモリ２４及び無線通信デバイス２５等を備える。
【００２７】
不揮発性メモリ２２は、各種プログラムを格納する。不揮発性メモリ２２に格納されている各種プログラムには、例えばオペレーティングシステム（ＯＳ）及び情報管理装置２０上で起動されるサーバプログラム等が含まれる。
【００２８】
ＣＰＵ２３は、例えば不揮発性メモリ２２に格納されている各種プログラムを実行する。なお、ＣＰＵ２３は、情報管理装置２０全体の制御を司るものである。
【００２９】
メインメモリ２４は、例えばＣＰＵ２３が各種プログラムを実行する際に必要とされるワークエリア等として使用される。
【００３０】
無線通信デバイス２５は、例えば光学式認識コード読取装置１０等との通信を制御する機能を有する。
【００３１】
なお、図３においては不揮発性メモリ２２及びメインメモリ２４のみが示されているが、情報管理装置２０は、ＨＤＤ（Hard Disk Drive）及びＳＳＤ（Solid State Drive）等の他の記憶装置を備えていてもよい。
【００３２】
ここで、本実施形態に係る光学式認識コード読取装置１０は上記したように光学式認識コードを読み取ることが可能であるが、本実施形態における光学式認識コードは、例えば複数のエレメントが線状（棒状）に形成されたコード（以下、カラービットコードと表記）を含む。このカラービットコードは、例えば３以上の色彩のうちの１の色彩が付されたセル（エレメント）が複数配列された構成を有する。このカラービットコードによれば、複数配列された各セルに付されている色彩の遷移によって識別情報（例えば、ＩＤ等）のような特定のデータを表すことができる。
【００３３】
以下の説明においては、本実施形態に係る光学式認識コード読取装置１０によって読み取られる光学式認識コードはカラービットコードであるものとして説明する。
【００３４】
図４を参照して、カラービットコードについて詳細に説明する。なお、図４においては、便宜的にカラービットコードの一部分のみが示されている。
【００３５】
図４に示すように、カラービットコードは、例えば赤色、緑色及び青色のうちの１の色彩が付されたセル５０が複数配列されて構成されている。図４において、赤色はＲ、緑色はＧ、青色はＢとして示されている。なお、図４においては、説明の便宜上、カラービットコードに３色の色彩（赤色、緑色及び青色）が用いられている例が示されているが、各セルに付されている色彩の遷移を識別することができるのであれば、４色以上の色彩を用いてカラービットコードが作成されていてもよい。
【００３６】
カラービットコードを構成するセル５０は、１つの色彩が付される範囲または領域であり、種々の形状を有することができる。図４に示す例では、複数のセル５０の各々は四角形状であるが、例えば丸形状または三角形状等であっても構わない。このような複数のセル５０を線状（直線状または曲線状）に配列することによってカラービットコードは作成される。
【００３７】
なお、カラービットコードは上記したように色彩の遷移によって特定のデータを表すものであるから、当該カラービットコードにおいて、隣接するセル５０同士には同色は付されず、異なる色彩が付される。カラービットコードはこのような条件等に基づいて作成される。
【００３８】
また、カラービットコードを構成する複数のセル５０には、端点セルが含まれる。端点セルは、線状に連なったセル群から構成されるカラービットコードの端点（両端）に位置するセルである。カラービットコード内にあるセルは、２つのセルと隣接するが、端点セルは１つのセルとしか隣接しない。このような端点セルは必ずカラービットコード内に２つある。また、このような２つの端点セルに付される色彩は必ず異なるものとする。これにより、端点セルの各々に付されている色彩によって、当該端点セルが始点となるセル（以下、始点セルと表記）であるか終点となるセル（以下、終点セルと表記）であるかを判定することが可能である。
【００３９】
上記したようなカラービットコードによれば例えば３色の色彩の遷移（配列）によって特定のデータを表すことができるため、当該カラービットコードにおける各色彩の占める領域の大きさ及び形状の制限は緩く、当該カラービットコードが例えば凹凸のある表面や柔軟性のある素材上に付されている場合やデジタルサイネージ等の表示装置に表示されている場合であっても、高い読み取り精度を実現することができる。
【００４０】
ここで、本実施形態に係る光学式認識コード読取装置１０及び情報管理装置２０（を含む情報管理システム）は、例えば物品を管理するために用いられる。この場合、親コードとして用いられるカラービットコード（第１光学式認識コード）及び子コードとして用いられるカラービットコード（第２光学式認識コード）を用意するものとする。
【００４１】
親コードとして用いられるカラービットコード（以下、単に親コードと表記）は、親コードであることを識別可能な識別情報を表すコードであり、例えば管理対象の物品が配置される棚等（以下、物品棚と表記）に付される。すなわち、親コードは、後述する物品棚において形成される空間を識別するために用いられる。
【００４２】
一方、子コードとして用いられるカラービットコード（以下、単に子コードと表記）は、子コードであることを識別可能な識別情報を表すコードであり、例えば親コードが付された物品棚に配置される物品に付される。すなわち、子コードは、物品棚に配置される物品を識別する（管理する）ために用いられる。
【００４３】
なお、親コード及び子コードは、それぞれ複数用意されている。複数の親コードは、１つの物品棚に付されてもよいし、複数の物品棚に付されてもよい。複数の子コードの各々は、それぞれ１つの物品に付される（すなわち、１つの物品に対して１つの子コードが付される）。また、複数の親コード及び複数の子コードは、それぞれが表す識別情報は異なるが、後述する補正処理のために当該コードを構成するセルサイズは同一であることが望ましい。なお、複数の親コード及び複数の子コード（カラービットコード）の各々を構成するセルの数は同一である。
【００４４】
また、親コード及び子コードは、単一のコードで一つの情報を構成する必要はなく、複数のコードで一つの情報を構成するものであってもよい。
【００４５】
以下、本実施形態における情報管理システムの機能構成について説明する。まず、図５は、光学式認識コード読取装置１０の機能構成の一例を示すブロック図である。
【００４６】
図５に示すように、光学式認識コード読取装置１０は、画像取得部１０１、デコード処理部１０２、距離算出部１０３、管理情報生成部１０４、格納部１０５及び管理情報出力部１０６を含む。
【００４７】
本実施形態において、画像取得部１０１、デコード処理部１０２、距離算出部１０３、管理情報生成部１０４及び管理情報出力部１０６は、例えば図２に示すＣＰＵ１３（つまり、光学式認識コード読取装置１０のコンピュータ）が不揮発性メモリ１２に格納されている所定のアプリケーションプログラム（以下、物品管理アプリケーションと表記）を実行すること、つまり、ソフトウェアによって実現されるものとする。なお、この物品管理アプリケーションは、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、この物品管理アプリケーションは、例えばネットワーク３０を介して光学式認識コード読取装置１０にダウンロードされても構わない。また、本実施形態において、格納部１０５は、例えば図２に示す不揮発性メモリ１２等によって実現される。
【００４８】
画像取得部１０１は、光学式認識コード読取装置１０に備えられているカメラ１８によって撮像された画像を取得する。画像取得部１０１によって取得された画像は、色情報の最小単位である複数の画素（ピクセル）から構成される。
【００４９】
なお、本実施形態において、画像取得部１０１によって取得される画像には、上記した物品棚及び当該物品棚に配置されている複数の物品等が含まれる。なお、画像に含まれる物品棚には複数の親コードが付されており、当該画像に含まれる複数の物品の各々にはそれぞれ子コードが付されている。
【００５０】
デコード処理部１０２は、画像取得部１０１によって取得された画像に含まれる複数の親コード及び複数の子コードを読み取る（デコードする）処理を実行する。なお、画像に含まれる複数の親コード及び複数の子コードの各々は上記したカラービットコードであり、デコード処理部１０２によるデコードは、当該カラービットコードにおける色彩の遷移（つまり、当該カラービットコードを構成する複数のセルの各々に付されている色彩の遷移）に基づいて行われる。これにより、デコード処理部１０２は、画像に含まれるカラービットコード（複数の親コード及び複数の子コードの各々）によって表される識別情報を取得することができる。
【００５１】
本実施形態においては、上記したデコード処理部１０２によって取得される識別情報に基づいて、画像に含まれる複数のカラービットコードの各々が親コードであるか子コードであるかを判別することができる。なお、各識別情報を表すカラービットコードが親コードであるか子コードであるか（つまり、識別情報とカラービットコードの種類との対応関係）は予め定められており、当該対応関係を示す情報（以下、対応関係情報と表記）は例えば格納部１０５等に予め格納されているものとする。
【００５２】
ここで、本実施形態においては、画像中の親コードの位置と子コードの位置との間の距離を物品管理に利用する。このため、距離算出部１０３は、デコード処理部１０２によって識別情報が取得された親コード及び子コードの画像中の位置に基づいて、当該親コード及び子コード間の距離を算出する。なお、親コード及び子コード間の距離は、例えば画像取得部１０１によって取得された画像における座標値等を用いて表すことができる。
【００５３】
管理情報生成部１０４は、距離算出部１０３によって算出された親コード及び子コード間の距離に基づいて、当該親コード及び子コードを紐づける。これにより、管理情報生成部１０４は、親コード及び子コードが紐づけられたことを示す管理情報（つまり、子コードに対して親コードが対応づけられた管理情報）を生成する。なお、管理情報生成部１０４によって生成される管理情報においては、複数の子コードの各々に対して、１つの親コードが対応づけられる（紐づけられる）。すなわち、紐づけられる親コード及び子コードの関係は、１対多の関係となる。なお、本実施形態においては、親コード及び子コードが１対多の関係で紐づけられるものとして説明するが、当該親コード及び子コードの関係は多対多とすることも可能である。管理情報生成部１０４によって生成された管理情報は、格納部１０５に格納される。
【００５４】
管理情報出力部１０６は、格納部１０５に格納された管理情報を情報管理装置２０に出力（送信）する。なお、管理情報出力部１０６は、管理情報をディスプレイ１６に出力（表示）することも可能である。
【００５５】
図６は、情報管理装置２０の機能構成の一例を示すブロック図である。図６に示すように、情報管理装置２０は、受信部２０１、格納部２０２、差分算出部２０３、送信部２０４を含む。本実施形態において、受信部２０１、差分算出部２０３及び送信部２０４は、例えば図３に示すＣＰＵ２３（つまり、情報管理装置２０のコンピュータ）が不揮発性メモリ２２に格納されているサーバプログラムを実行すること、つまり、ソフトウェアによって実現されるものとする。なお、このサーバプログラムは、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このサーバプログラムは、例えばネットワーク３０を介して情報管理装置２０にダウンロードされても構わない。また、本実施形態において、格納部２０２は、例えば図３に示す不揮発性メモリ２２または他の記憶装置等によって実現される。
【００５６】
受信部２０１は、上記した光学式認識コード読取装置１０（管理情報出力部１０６）から送信された管理情報を受信する。
【００５７】
ここで、格納部２０２には、例えば過去に光学式認識コード読取装置１０において生成された管理情報が蓄積されているものとする。
【００５８】
差分算出部２０３は、受信部２０１によって受信された管理情報と格納部２０２に格納されている過去の管理情報との差分を算出する。
【００５９】
送信部２０４は、差分算出部２０３によって算出された差分を示す差分情報を光学式認識コード読取装置１０に送信する。
【００６０】
送信部２０４によって送信された差分情報は、光学式認識コード読取装置１０において受信され、例えばディスプレイ１６に表示される。
【００６１】
なお、受信部２０１によって受信された管理情報は、例えば当該管理情報が受信された日時等に対応づけて格納部２０２に格納（蓄積）される。上記した過去の管理情報についても同様に、当該管理情報が受信された日時に対応づけて格納部２０２に格納されているものとする。
【００６２】
次に、図７のフローチャートを参照して、光学式認識コード読取装置１０の処理手順の一例について説明する。
【００６３】
まず、物品棚に配置されている物品を管理する場合、光学式認識コード読取装置１０（情報管理システム）のユーザは、当該光学式認識コード読取装置１０を操作することによって上記した物品管理アプリケーションを起動する。この場合、物品棚には複数の親コードが付されており、当該物品棚に配置されている複数の物品の各々には子コードが付されているものとする。
【００６４】
物品管理アプリケーションが起動されると、光学式認識コード読取装置１０に備えられているカメラ１８が起動され、ユーザは、少なくとも１つの物品棚（親コード）と、当該物品棚に配置されている複数の物品（子コード）を含む画像を撮影することができる。
【００６５】
これにより、画像取得部１０１は、カメラ１８を用いてユーザによって撮影された物品棚及び複数の物品を含む画像を取得する（ステップＳ１）。以下、ステップＳ１において取得された画像を、便宜的に、対象画像と称する。
【００６６】
図８は、対象画像の一例を示す。図８に示すように、対象画像３００には、物品棚３０１及び物品３０２を含む複数の物品が含まれている。
【００６７】
物品棚３０１には、例えば親コード３１１が付されている。なお、親コード３１１は、物品棚３０１に複数の物品３０２が配置された状態の画像が撮像された際に、親コード３１１全体が当該画像に含まれる位置に付されている。
【００６８】
ここで、図８に示す対象画像３００に含まれる物品棚３０１は、物品３０２を含む複数の物品を収納する複数の空間を形成するように構成されている。図８に示す例では、このような物品棚３０１に対して、当該物品棚３０１において形成されている空間毎に複数の親コードが付されている。
【００６９】
また、物品３０２には、子コード３１２が付されている。なお、子コード３１２は、親コード３１１と同様に、物品棚３０１に物品３０２が配置された状態の画像が撮像された際に、子コード３１２全体が当該画像に含まれる位置に付されている。なお、図８に示す物品３０２以外の物品にも同様に、子コードが付されている。
【００７０】
再び図７に戻ると、デコード処理部１０２は、対象画像に対する画像解析処理を実行する（ステップＳ２）。ここで、上記した対象画像に含まれる親コード及び子コードは全てカラービットコードである。このため、ステップＳ２においては、対象画像に含まれるカラービットコードに対するデコード処理（読み取り処理）が実行される。以下、このデコード処理について具体的に説明する。
【００７１】
まず、デコード処理部１０２は、対象画像を各色領域に区分けする処理（以下、色領域区分け処理と表記）を実行する。ここで、一般的に対象画像は背景を含めて様々な色彩（を表示する画素）で構成されており、それらのパターンも様々である。このため、色領域区分け処理においては、この対象画像中の色彩を色空間の中で赤色、緑色、青色及び無彩色に区分けし、各画素の色彩をいずれかの領域に当てはめる処理（均色化処理）が行われる。すなわち、色領域区分け処理においては、対象画像中の各画素に対するラベリング処理が実行される。
【００７２】
なお、上記した赤色、緑色及び青色はカラービットコードを構成する各セルに付される色彩として定義された色彩（以下、構成色と表記）であるが、色領域区分け処理においては、例えば照明、彩色、退色等を考慮して色空間上でこれらの構成色と認定することができる一定の範囲に包含される色彩であれば、当該色彩（の画素）を構成色として区分けするものとする。すなわち、例えば赤色の領域を区分けする場合には、当該赤色を中心とする一定の範囲の色彩を表示する画素の全てを赤色の領域として認定する。緑色及び青色の領域を区分けする場合についても同様である。
【００７３】
また、無彩色とは、色領域区分け処理において赤色、緑色及び青色として認定される色彩以外の色彩である。
【００７４】
また、上記したように対象画像に対しては均色化処理が行われるが、一般的に当該対象画像にはノイズ成分が混入している場合が多い。このノイズに相当する微小部位の色彩異変に対しては例えばその周囲の色彩に合わせる、または、平均化する等のノイズ除去処理を行うことによって、当該ノイズを除去することが好ましい。
【００７５】
次に、デコード処理部１０２は、色領域区分け処理によって区分けされた各色領域に基づいて複数の構成色（赤色、緑色及び青色）の領域が配列されてなるカラービットコードの領域（以下、コード領域と表記）を切り出す処理（以下、コード切り出し処理と表記）を実行する。このコード切り出し処理においては、各色領域の周囲の色彩（例えば、他の構成色の領域及び無彩色の領域の配置等）やカラービットコードを構成するセルの数等に基づいてコード領域が切り出される。コード切り出し処理によって切り出されるコード領域は、例えば画像上における座標値（ＸＹ座標値）によって表される。
【００７６】
なお、上記した色領域区分け処理及びコード切り出し処理については、例えば特開２００８−２８７４１４号公報等に開示されているため、ここではその詳細な説明については省略する。
【００７７】
次に、デコード処理部１０２は、コード切り出し処理によって対象画像から切り出されたコード領域において配列されている複数の色領域における色彩の遷移（つまり、当該複数の色領域の順番）に基づいてカラービットコードをデコードする。これによれば、カラービットコードにおける例えば始点セル（カラービットコードの開始を表す端点セル）から終点セル（カラービットコードの終了を表す端点セル）までの色彩の遷移によって表される識別情報が取得される。
【００７８】
なお、上記したデコード処理は、対象画像に含まれるカラービットコードの各々に対して実行される。
【００７９】
ステップＳ２の処理が実行されると、デコード処理部１０２は、当該ステップＳ２の処理において取得された識別情報の各々に基づいて、対象画像に含まれる各カラービットコードの種類及び位置を特定する（ステップＳ３）。
【００８０】
なお、本実施形態におけるカラービットコード（の種類）には親コード及び子コードが含まれるが、識別情報とカラービットコードの種類との対応関係は上記した対応関係情報において予め定められている。このため、デコード処理部１０２は、デコード処理部１０２によって取得された識別情報及び対応関係情報から、当該識別情報を表すカラービットコードが親コードであるか子コードであるか（つまり、カラービットコードの種類）を特定することができる。
【００８１】
また、カラービットコードの位置は、上記したコード切り出し処理によって切り出されたコード領域（の座標値）に基づいて特定される。具体的には、デコード処理部１０２は、当該デコード処理部１０２によって取得された識別情報を表すカラービットコードのコード領域の中心点の座標値を、当該カラービットコードの位置として特定する。ここでは、コード領域の中心点の座標値をカラービットコードの位置とするものとして説明したが、例えばコード領域に含まれるカラービットコードにおける始点セルまたは終点セルの位置（座標値）等の他の位置を当該カラービットコードの位置としてもよい。
【００８２】
ステップＳ３においては、上記した処理がデコード処理部１０２によって取得された識別情報（つまり、当該識別情報を表すカラービットコード）毎に実行されることによって、対象画像に含まれる全てのカラービットコードについて親コードであるか子コードであるかを特定するとともに、当該特定された親コード及び子コードの各々の位置を特定することができる。なお、ステップＳ１において上記した図８に示す対象画像が取得されている場合、ステップＳ３においては、親コード３１１を含む複数の親コード及び子コード３１２を含む複数の子コードの位置が特定される。
【００８３】
ここで、対象画像における横方向をＸ軸方向、縦方向をＹ軸方向とすると、特定の物品が他の物品と比較してＺ方向（つまり、奥行き方向）にずれた位置に配置されていた場合には、当該物品に付されている子コード（のコード領域）に基づいて特定された位置は他のコードの位置に対して正確な位置であるとはいえず、後述する親コードとの適切な距離を算出することができない可能性がある。
【００８４】
このため、上記したステップＳ３において子コードの位置を特定する際には、当該子コードのコード領域の座標値を補正することが好ましい。
【００８５】
以下、コード領域の座標値を補正する子コードを補正対象コードとして当該補正処理について説明する。
【００８６】
本実施形態においては親コード及び子コードを構成するセルの形状及びサイズが同一であるため、例えば対象画像に含まれる補正対象コードのコード領域において隣接するセル間距離（当該対象子コードを構成する各セルの座標値）と他のコードのコード領域において隣接するセル間距離（当該他のコードを構成する各セルの座標値）から当該補正対象コードと他のコードとの大小関係（遠近）を判別することができる。
【００８７】
これにより、補正対象コードが他のコードよりも小さいと判別された場合には、当該補正対象コードが他のコードよりも奥行き方向にずれた位置に配置されている（つまり、補正対象コードの位置にＺ軸方向の差異がある）と推定して、他のコードのコード領域の座標値（サイズ）に基づいて当該補正対象コードのコード領域の座標値（サイズ）を補正する。具体的には、補正対象コード（のコード領域）のサイズが他のコードと同程度になるように、当該補正対象コードのコード領域の座標値が補正される。
【００８８】
これによれば、補正対象コードが他のコードと同一面に配置されているものとして扱うことができる。補正対象コードの位置は、このように補正された当該補正対象コードのコード領域の座標値に基づいて特定される。
【００８９】
ここでは、補正対象コードが子コードであるものとして説明したが、物品棚の形状等によっては、当該物品棚に付された親コードを補正対象コードとしてもよい。
【００９０】
次に、対象画像に含まれる複数の子コード（つまり、デコード処理部１０２によって取得された識別情報を表すカラービットコードのうちの子コード）の各々について、以下のステップＳ４及びＳ５の処理が実行される。ここでは、このステップＳ４及びＳ５の処理が実行される子コードを対象子コードと称する。
【００９１】
まず、距離算出部１０３は、ステップＳ３において特定された複数の親コードの各々の位置と対象子コードの位置とに基づいて、当該対象子コードから当該複数の親コードの各々までの距離を算出する（ステップＳ４）。
【００９２】
次に、管理情報生成部１０４は、ステップＳ４において算出された対象子コードから複数の親コードの各々までの距離に基づいて、当該複数の親コードの中から当該距離が最も近い（短い）親コードを特定し、対象子コードと当該特定された親コードとを紐づける（ステップＳ５）。
【００９３】
なお、このステップＳ５においては、親コードの認識（子コードとの紐づけ）に対する信頼性及び正確性を向上させるための親コード認識判定処理が実行されるものとする。例えば図８に示す対象画像３００に含まれている物品棚３０１は上記したように物品３０２を含む複数の物品を収納する複数の空間を形成するように構成されたものであるが、単に対象子コードと最も近い親コードを当該対象子コードと紐づけた場合には、同一の空間内に配置されている対象子コードと他の子コードとが異なる親コードと紐づけられる場合があり、物品管理の観点からは好ましくない。更に、例えば物品棚３０１が他の物品棚と並べて配置されているような場合において、物品棚３０１に配置されている物品３０２が当該他の物品棚に付されている親コードと紐づけられることも避ける必要がある。
【００９４】
このため、例えば対象子コードと紐づける親コードは、例えば対象画像（画面）中の特定の領域に含まれる（配置されている）必要があるものとする。なお、特定の領域としては、例えば対象画像中の中央に位置する領域、左側に位置する領域、右側に位置する領域、上側に位置する領域、下側に位置する領域等が予め設定されていればよい。なお、図８に示す対象画像３００においては、例えば対象画像３００中の中央に位置する領域が特定の領域として予め設定されているものとする。
【００９５】
上記した特定の領域の幅は、例えば対象画像（画面）の１／４または１／２等によって設定可能としてもよい。
【００９６】
更に、上記したカラービットコードを構成する複数のセルは、始点セル及び終点セルを含む。上記したステップＳ２における画像解析処理（デコード処理）においては親コードを構成する始点セル及び終点セル（つまり、親コードの向き）を認識することができるため、当該親コードと紐づけ可能な子コードの位置を当該親コードの向きに基づいて限定するようにしてもよい。
【００９７】
具体的には、例えば対象画像に含まれる親コードが当該対象画像におけるＸ軸方向（横方向）に沿うように配置されており、当該親コードを構成する始点セルが左側、終点セルが右側に位置する場合には、この親コードは、対象画像において当該親コードの上側（の領域）に配置されている子コードのみと紐づけられるようにすることができる。なお、この親コードの下側の領域に配置されている子コードは、当該親コードとの距離が他の親コードよりも近い場合であっても、当該親コードと紐づけられることはない。
【００９８】
一方、親コードを構成する始点セルが右側、終点セルが左側に位置する場合には、対象画像において当該親コードの下側（の領域）に配置されている子コードのみと紐づけられるようにすることが可能である。
【００９９】
更に、例えば対象画像に含まれる親コードが当該対象画像におけるＹ軸方向（縦方向）に沿うように配置されている場合には、当該親コードの向き（始点セル及び終点セルの位置）に基づいて、当該親コードの右側または左側に位置する子コードとのみ紐づけられるようにすることも可能である。
【０１００】
なお、上記した親コード認識判定処理により、対象子コードと紐づけられる親コードが存在しない場合には、当該対象コードはいずれの親コードとも紐づけられない。
【０１０１】
本実施形態においては、このような親コード認識判定処理が実行されることによって適切であると認識された親コードに対して対象子コードを紐づける（つまり、適切でない親コードを除外する）ことが可能となる。
【０１０２】
ステップＳ５の処理が実行されると、対象画像に含まれる全ての子コードに対してステップＳ４及びＳ５の処理が実行されたか否かが判定される（ステップＳ６）。
【０１０３】
全ての子コードに対して処理が実行されていないと判定された場合（ステップＳ６のＮＯ）、上記したステップＳ４に戻って処理が繰り返される。この場合、ステップＳ４及びＳ５の処理が実行されていない子コードを対象子コードとして当該処理が実行される。
【０１０４】
一方、全てのコードに対して処理が実行されたと判定された場合（ステップＳ６のＹＥＳ）、管理情報生成部１０４は、上記した対象画像に含まれる複数の子コードの各々に対して１つの親コードが対応づけられた（紐づけられた）管理情報を生成する（ステップＳ７）。なお、管理情報は、例えば複数の子コード（カラービットコード）の各々によって表される識別情報と当該子コードと紐づけられた親コード（カラービットコード）によって表される識別情報とを対応づけて含むようなデータ構造を有するものであればよいが、互いに紐づけられた当該子コードと当該親コードとの対応関係を示すものであればよい。
【０１０５】
ステップＳ７の処理が実行されると、管理情報出力部１０６は、当該ステップＳ７において生成された管理情報（つまり、複数の子コードの各々に対して１つの親コードが対応づけられた管理情報）をディスプレイ１６に出力する。これによれば、ディスプレイ１６に管理情報が表示される（ステップＳ８）。
【０１０６】
なお、本実施形態において、上記したステップＳ１〜Ｓ８の処理はリアルタイムで実行されるものとする。
【０１０７】
ここで、図９は、管理情報が表示された光学式認識コード読取装置１０（ディスプレイ１６）の画面（以下、管理情報確認画面と表記）の一例を示す。ここでは、対象画像が図８に示す対象画像３００である場合を想定している。
【０１０８】
上記したように管理情報は複数の子コードの各々が１つの親コードに対応づけられた情報であるところ、当該親コードと当該子コードとは、１対多の関係にある。
【０１０９】
このため、図９に示す管理情報確認画面４００では、対象画像３００に含まれる１つの親コード及び当該親コードと対応づけられている（紐づけられている）複数の子コードに同一の色彩が付されて表示されている。なお、親コード（及び当該親コードと対応づけられている複数の子コード）毎に、異なる色彩が付されている。
【０１１０】
これによれば、ユーザは、例えば子コード３１２が付されている物品３０２が親コード３１１の上側に位置する空間に配置されて管理されていることを容易に把握することができる。物品３０２以外の物品についても同様である。
【０１１１】
なお、上記したように親コードと紐づけられていない子コードが存在する場合、当該子コードには例えば黒色が付される（つまり、当該子コードは黒表示される）ものとする。
【０１１２】
更に、管理情報確認画面４００においては、対象画像３００に含まれる親コード３１１と重畳する位置に、当該親コード３１１と対応づけられている子コードの数が表示されている。図９に示す例では、親コード３１１と対応づけられている子コードの数として９が表示されている。
【０１１３】
これによれば、ユーザは、例えば親コード３１１の上側に位置する空間に配置（管理）されている物品の数が９であることを容易に把握することができる。親コード３１１以外の親コード（つまり、親コード３１１の上側に位置する空間以外の空間）についても同様である。
【０１１４】
なお、図９に示す管理情報確認画面４００のような管理情報の表示は例えば例えばＡＲ（Augmented Reality）技術を利用して実現可能であるが、このような管理情報の表示態様は一例であり、当該管理情報は他の態様で表示されても構わない。図９においては対象画像３００上に管理情報を表示する例を示しているが、当該管理情報は、例えば親コードと子コードとの対応関係を表す表形式として表示されてもよい。また、例えば子コードによって表される識別情報に基づいて特定される当該子コードが付されている物品の物品名等を表示するように、管理情報を適宜加工して表示しても構わない。
【０１１５】
ここで、管理情報確認画面４００には、保存ボタン４０１が設けられている。ユーザは、管理情報確認画面４００に表示されている管理情報（つまり、親コードと子コードとの対応関係）を確認し、当該対応関係（紐づけ結果）に誤りがないと判断した場合には、管理情報確認画面４００に対して保存ボタン４０１を押下する操作を行うことができる。
【０１１６】
再び図７に戻ると、ユーザからの管理情報の保存指示があるか否かが判定される（ステップＳ９）。ステップＳ９においては、上記した図９に示す管理情報確認画面４００に対して保存ボタン４０１を押下する操作がユーザによって行われた場合に、ユーザからの管理情報の保存指示があると判定される。一方、管理情報確認画面４００に対して保存ボタン４０１を押下する操作がユーザによって行われていない場合には、ユーザからの管理情報の保存指示がないと判定される。
【０１１７】
ユーザからの管理情報の保存指示がないと判定された場合（ステップＳ９のＮＯ）、ユーザは、管理情報確認画面４００に表示されている管理情報に誤りがあると判断していることになる。この場合、ユーザは、例えば光学式認識コード読取装置１０に備えられるカメラ１８の角度を変えるまたは物品棚に配置されている物品の位置を変える等によって、再度物品棚及び物品を撮影するものとする。この場合には、上記したステップＳ１に戻って処理が繰り返される。
【０１１８】
一方、ユーザからの管理情報の保存指示があると判定された場合（ステップＳ９のＹＥＳ）、管理情報生成部１０４は、ステップＳ７において生成された管理情報（つまり、ステップＳ８において表示された管理情報）を格納部１０５に保存（格納）する（ステップＳ１０）。なお、ステップＳ１０の処理が実行された場合、図１０に示す画面が光学式認識コード読取装置１０（ディスプレイ１６）に表示され、管理情報の保存処理が完了した旨がユーザに対して通知される。
【０１１９】
ここで、上記したように管理情報が格納部１０５に保存されると、例えばユーザの操作に応じて、格納部１０５に保存されている管理情報の一覧画面（以下、管理情報一覧画面と表記）を光学式認識コード読取装置１０（のディスプレイ１６）に表示することができる。
【０１２０】
図１１は、管理情報一覧画面の一例を示す。図１１に示す管理情報一覧画面５００には、上記したようにステップＳ９において格納部１０５に保存された管理情報が表示されている。
【０１２１】
図１１に示すように、管理情報一覧画面５００には、例えば管理情報が生成（保存）された日時及び当該管理情報を生成するために対象画像から読み取られたカラービットコードの数（読み取りコード総数）が表示されている。
【０１２２】
なお、読み取りコード総数は例えば対象画像から読み取られた子コードの総数であるが、管理情報一覧画面５００には、例えば親コード及び子コードの総数が表示されてもよいし、親コードの数及び子コードの数がそれぞれ別個に表示されてもよい。
【０１２３】
また、管理情報一覧画面５００には、一括送信ボタン５０１及び一括削除ボタン５０２が設けられている。一括送信ボタン５０１は、管理情報一覧画面５００に表示されている管理情報を一括して情報管理装置２０に送信する（つまり、アップロードする）ためのボタンである。すなわち、管理情報一覧画面５００に表示される管理情報は例えば情報管理装置２０に送信されていない管理情報であり、情報管理装置２０に送信されていない管理情報が格納部１０５に複数保存されている場合には、管理情報一覧画面５００には複数の管理情報が表示される。
【０１２４】
一括削除ボタン５０２は、管理情報一覧画面５００に表示されている管理情報を一括して格納部１０５から削除するためのボタンである。なお、一括削除ボタン５０２が押下された場合には、例えば格納部１０５に保存されている管理情報（管理情報一覧画面５００に表示されている管理情報）が当該格納部１０５から削除される。
【０１２５】
なお、図１１に示す例では、一括送信ボタン５０１及び一括削除ボタン５０２が設けられているものとして説明したが、管理情報を個別に送信するための個別送信ボタンや当該管理情報を個別に削除するための個別削除ボタン等が設けられていてもよい。なお、一括送信ボタン５０１及び一括削除ボタン５０２と、個別送信ボタン及び個別削除ボタンとは、例えば光学式認識コード読取装置１０の画面をスライドさせることによって切り替えることができるようにしてもよい。
【０１２６】
再び図７に戻ると、ユーザからの管理情報の送信指示があるか否かが判定される（ステップＳ１１）。ステップＳ１１においては、上記した図１１に示す管理情報一覧画面５００に対して一括送信ボタン５０１を押下する操作がユーザによって行われた場合に、ユーザからの管理情報の送信指示があると判定される。一方、管理情報一覧画面５００に対して一括送信ボタン５０１を押下する操作がユーザによって行われていない場合には、ユーザからの管理情報の保存指示がないと判定される。
【０１２７】
ユーザからの管理情報の送信指示があると判定された場合（ステップＳ１１のＹＥＳ）、管理情報出力部１０６は、当該管理情報（管理情報一覧画面５００に表示されている管理情報）を格納部１０５から取得し、当該取得された管理情報を無線通信デバイス１５を介して情報管理装置２０に送信する（ステップＳ１２）。なお、ステップＳ１２の処理が実行された場合、図１２に示す画面が光学式認識コード読取装置１０（ディスプレイ１６）に表示され、管理情報の送信処理（一括送信）が完了した旨がユーザに対して通知される。
【０１２８】
一方、ユーザからの管理情報の送信指示がないと判定された場合（ステップＳ１２のＮＯ）、ステップＳ１２の処理は実行されず、図７に示す処理は終了される。
【０１２９】
なお、図７に示す処理においてはユーザからの管理情報の送信指示に基づいて管理情報を情報管理装置２０に送信するものとして説明したが、ステップＳ１２の処理（つまり、当該管理情報の送信処理）は、例えばステップＳ９においてユーザからの管理情報の保存指示があると判定された場合に自動的に実行されてもよい。この場合、ステップＳ１１の処理は省略されるが、ステップＳ１０の処理は、実行されてもよいし、実行されなくてもよい。
【０１３０】
更に、図７に示す処理においてはステップＳ５において１つの親コードが特定されるものとして説明したが、上記した親コード及び子コードの関係を複数の同一の親コード対複数の子コード（つまり、多対多）とする場合であっても、当該ステップＳ５において、対象子コードと複数の親コードの各々までの距離が近い親コードが特定され、更に親コード認識判定処理等に基づいて各子コードに対する親コードが特定されればよい。
【０１３１】
ここで、本実施形態において、情報管理装置２０は、上記したように光学式認識コード読取装置１０から送信された管理情報を管理する機能を有するが、当該管理情報を利用して各種処理を実行することも可能である。
【０１３２】
以下、図１３のフローチャートを参照して、情報管理装置２０の処理手順の一例について説明する。
【０１３３】
上記した図７に示す処理が実行され、光学式認識コード読取装置１０から管理情報が送信された場合、受信部２０１は、当該管理情報を受信する（ステップＳ２１）。
【０１３４】
ステップＳ２１において受信された管理情報は、格納部２０２に格納される（ステップＳ２２）。この場合、管理情報は、例えば当該管理情報が生成された日時に対応づけて格納部２０２に格納される。なお、管理情報に対応づけて格納部２０２に格納される日時は、例えば管理情報が受信部２０１によって受信された日時等であってもよい。以下の説明では、ステップＳ２２において格納部２０２に格納された管理情報を、便宜的に、現在の管理情報と称する。
【０１３５】
ここで、格納部２０２には、過去に図７に示す処理が実行されることによって光学式認識コード読取装置１０から送信された管理情報（以下、過去の管理情報と表記）も蓄積されているものとする。なお、本実施形態における過去の管理情報とは、上記した物品棚（親コード）と物品（子コード）との過去の対応関係（紐づけの結果）を示す管理情報をいう。
【０１３６】
この場合、差分算出部２０３は、格納部２０２に格納されている過去の管理情報を取得する（ステップＳ２３）。なお、格納部２０２に複数の過去の管理情報が蓄積されている場合、ステップＳ２３において取得される過去の管理情報は、例えば上記したステップＳ２２において格納部２０２に格納された管理情報（つまり、現在の管理情報）に対応づけられている日時と最も近い日時に対応づけて当該格納部２０２に格納されている管理情報であるものとする。
【０１３７】
ここでは、過去の管理情報が日時に基づいて取得されるものとして説明したが、差分算出部２０３は、日時以外の他の観点に基づいて過去の管理情報を取得してもよい。具体的には、格納部２０２に蓄積されている過去の管理情報の一覧を光学式認識コード読取装置１０を介してユーザに提示し、当該ユーザによって指定された過去の管理情報がステップＳ２３において取得されるようにしてもよい。
【０１３８】
ステップＳ２３の処理が実行されると、差分算出部２０３は、上記した現在の管理情報と過去の管理情報との差分を算出する（ステップＳ２４）。
【０１３９】
ステップＳ２４の処理が実行されると、送信部２０４は、当該ステップＳ２４において算出された差分を示す情報（以下、差分情報と表記）を無線通信デバイス２５を介して光学式認識コード読取装置１０に送信する（ステップＳ２５）。
【０１４０】
上記したステップＳ２５において送信された差分情報は、光学式認識コード読取装置１０において受信され、ディスプレイ１６に表示することができる。
【０１４１】
ここで、上記したように管理情報は複数の子コードの各々に対して１つの親コードを対応づけた情報であるところ、当該管理情報は、当該親コードが付された物品棚において子コードが付された物品が配置されている位置（当該物品が物品棚において形成されているいずれの空間に配置されているか）を示す情報であるといえる。このため、上記した差分情報（現在の管理情報と過去の管理情報との差分）が光学式認識コード読取装置１０に表示された場合、当該光学式認識コード読取装置１０のユーザは、当該差分情報を確認することによって、物品棚に配置されていた物品が持ち出されたことや当該物品棚において物品が移動されたこと等（つまり、過去の管理情報の時点から現在の管理情報の時点までの間に変化のあった物品）を把握することができる。
【０１４２】
なお、本実施形態において、差分情報は上記した過去の管理情報の時点から現在の管理情報の時点までの間に変化のあった物品をユーザが把握することができる態様で表示されればよい。具体的には、例えば物品棚及び当該物品棚に配置されている物品を含む画像（つまり、過去または現在の対象画像）上で変化のあった物品に色彩を付して表示するようにしてもよいし、当該変化のあった物品に付されている子コードによって表される識別情報（または当該物品の物品名）等の一覧を表示するようなことも可能である。
【０１４３】
また、図１３に示す情報管理装置２０の処理は一例であり、情報管理装置２０は、差分を算出する処理に代えて、他の予め定められたデータ処理を実行するようにしてもよいし、例えば他のサーバ装置等と連携した処理を実行するようにしてもよい。
【０１４４】
上記したように本実施形態においては、親コードとしての複数のカラービットコード（第１光学式認識コード）及び子コードとしての複数のカラービットコード（第２光学式認識コード）を含む画像を取得し、当該取得された画像に含まれる複数のカラービットコードを読み取ることによって、当該画像中における複数の親コードの位置及び複数の子コードの位置を特定する。また、本実施形態においては、特定された複数の親コードの位置及び複数の子コードの位置に基づいて、当該複数の子コードの各々に対して１つの親コードが対応づけられた管理情報を生成し、当該生成された管理情報を出力する。
【０１４５】
ここで、例えば２つの親コードの間に挟まれるように配置された子コードを読み取ることによって物品を管理するようなシステム（以下、本実施形態の比較例と表記）があるが、このような本実施形態の比較例においては、一方向（例えば、Ｘ軸方向）の認識であるため、各コードを面で捉えることができず、全てのコードを高速に認識することが困難である。更に、本実施形態の比較例においては、読み取り作業としてパノラマ撮影等が必要な場合があるが、このような該読み取り作業は非常に煩雑である。
【０１４６】
これに対して、本実施形態においては、親コードと子コードとの関係をＸＹ平面（つまり、二次元領域）で放射線状に紐づけることによって例えば子コードが付された物品が雑多かつランダムに配置されている場合であっても、画像に含まれる全ての子コードを瞬時に認識する（親コードと紐づけて管理する）ことができる。更に、本実施形態においては、ユーザは親コード及び子コードを含む画像を撮影するのみでよく、読み取り作業が非常に簡単であることも利点である。
【０１４７】
また、本実施形態においては、上記した本実施形態の比較例と比較して、論理的に広範囲のコード（親コード及び子コード）の位置を正確かつ高精度で認識することができる。
【０１４８】
更に、本実施形態においては、例えばＡＲ技術等を利用して管理情報（子コードの数等）を光学式認識コード読取装置１０に表示する構成により、ユーザの目視による管理が容易となり、ヒューマンエラーの低減にも寄与する。
【０１４９】
また、本実施形態においては親コード認識判定処理が実行されることによって、親コードの認識（親コード及び子コードのの紐づけ）に対する信頼性及び正確性を向上させることが可能である。なお、この親コード認識判定処理においては親コードの向きを用いるため、例えば縦向きの画像が撮像された場合及び横向きの画像が撮像された場合（つまり、画面の向き）等に影響されることなく、適切な親コード及び子コードの紐づけを実現することができる。
【０１５０】
一般的に、雑多に配置される物品の在庫管理や入出庫管理の自動化は非常に困難であり、ユーザ（例えば、管理者）による目視と手作業によって管理される場合が多いが、本実施形態によれば、これらの管理を自動化することによって当該管理における正確性及び速度を改善することができるため、結果としてユーザの利便性を向上させることが可能となる。
【０１５１】
なお、本実施形態においては親コードと子コードとが紐づけられるが、例えば１つの子コードに対して複数種類の情報（定義）を埋め込み、当該情報毎に親コードを紐づけるような構成としてもよい。このような構成によれば、個々の子コードを複数の親コードに紐づけることが可能となる。
【０１５２】
なお、本実施形態においては、親コードが物品棚に付され、子コードが物品に付されるものとして説明したが、親コード及び子コードは、例えばシール等として物品棚及び物品に貼り付けられていてもよいし、当該物品棚及び物品に直接印刷等されていてもよい。
【０１５３】
また、本実施形態は物品管理に用いられるものとして説明したが、上記したように画像中における親コードの位置及び子コードの位置（親コード及び子コード間の距離）に基づいて親コード及び子コードを対応づけて（紐づけて）管理するものであれば、他の用途に用いられるものであってもよい。
【０１５４】
具体的には、本実施形態は、例えば工具箱に親コードを付し、当該工具箱に収納される工具の各々に子コードを付すことによって、当該工具箱内の工具の管理（部品管理）に用いることも可能である。更に、本実施形態は、例えば人物の状況を表すホワイトボードの各領域に対応する位置に親コードを付し、ホワイトボードに張り付け可能な人物の名札に子コードを付すことによって、各人物の状況管理に用いることも可能である。なお、この人物の状況管理の例としては、例えば老人ホーム等における入居者の所在管理や工事現場等における現場作業員の作業状況の管理等が考えられる。
【０１５５】
また、子コードは、静止物だけでなく、動体に付されても構わない。この場合には、動体に付された子コードを特定の親コードに紐づけて管理することができる。具体的には、例えば本実施形態に係る光学式認識コード読取装置１０（に備えられるカメラ１８）を固定し、当該固定されたカメラ１８で部屋の画像を撮像する場合を想定する。これによれば、特定の部屋に親コードを割り当て、カメラ１８で当該部屋にいる人物に付された子コードを認識する（つまり、親コードと子コードとを紐づける）ことによって、部屋（親コード）内の人物（子コード）の動きや性質等の情報を管理するようなことを実現することも可能である。
【０１５６】
更に、本実施形態においては親コード及び子コードとしてカラービットコードが用いられるものとして説明したが、当該親コード及び子コードとしては、例えばバーコード等の他の光学式認識コード（自動認識技術）が用いられても構わない。
【０１５７】
なお、上記した実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０１５８】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であってもよい。
【０１５９】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が本実施形態を実現するための各処理の一部を実行してもよい。
【０１６０】
更に、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０１６１】
また、記憶媒体は１つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であってもよい。
【０１６２】
なお、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
【０１６３】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０１６４】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。  
【符号の説明】
【０１６５】
１０…光学式認識コード読取装置、２０…情報管理装置、３０…ネットワーク、１０１…画像取得部、１０２…デコード処理部、１０３…距離算出部、１０４…管理情報生成部、１０５…格納部、１０６…管理情報出力部、２０１…受信部、２０２…格納部、２０３…差分算出部、２０４…送信部。
【図１】
2020173526.tif 000003
【図２】
2020173526.tif 000004
【図３】
2020173526.tif 000005
【図４】
2020173526.tif 000006
【図５】
2020173526.tif 000007
【図６】
2020173526.tif 000008
【図７】
2020173526.tif 000009
【図８】
2020173526.tif 000010
【図９】
2020173526.tif 000011
【図１０】
2020173526.tif 000012
【図１１】
2020173526.tif 000013
【図１２】
2020173526.tif 000014
【図１３】
2020173526.tif 000015