(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0016】
以下、カラーコード処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【0017】
(実施の形態)
図1は、本実施の形態におけるカラーコード処理装置1のブロック図である。
【0018】
カラーコード処理装置1は、受付部101、撮影部102、対応格納部103、取得部104、出力部105、読取情報格納部106を備える。
【0019】
受付部101は、撮影画像を受け付ける。撮影画像は、二以上の第一の取得対象と、二以上の第一の取得対象のうちのいずれかに対応する位置にそれぞれ配置された二以上のカラーコードと、が撮影された画像である。撮影画像に撮影された二以上の第一の取得対象は、第一の方向に配列された二以上の取得対象であり、異なる属性値と対応付けられた取得対象である。
【0020】
二以上の第一の取得対象は、互いに異なる取得対象である。取得対象は、例えば、この取得対象に対応付けられた属性値を、この取得対象を撮影した画像から後述する取得部104が取得可能な表示物である。表示物は、例えば、文字列、図、およびしるし等のうちの一以上で構成される。この表示物は、例えば、後述する取得部104が、この取得対象を撮影した撮影画像において、この取得対象が撮影されている領域を検出可能なものである。取得対象は標示物であっても良い。取得対象は、通常、平面上に配置されるが、曲面等の、平面以外の面上に配置されても良い。取得対象は、例えば、物体の表面等に、配置される。ここでの配置とは、表記されていることや、印刷されていること、貼付されていること、載置されていること、吸着されていること等も含む概念である。物体とは、例えば、紙やフイルム等のシート状の部材や、板状部材等である。板状部材は、例えば、いわゆるホワイトボードや、黒板、コルクボード等である。板状部材は、取得対象が表面に配置された磁性体を有するプレートやシートを、磁力によって吸着可能な板状部材であっても良い。物体がどこに、どのように配置されているかは問わない。例えば、取得対象は、壁面に取り付けられたホワイトボード(図示せず)上に、インク等で描かれた文字や図である。また、取得対象は、壁面に取り付けられたホワイトボード上に貼付されたシール(図示せず)やプレート等に印刷された、あるいは描かれた文字や図である。なお、かかることは、後述する第二の取得対象についても同様である。
【0021】
第一の方向は、どのような方向であっても良い。第一の方向は、通常、水平方向や、垂直方向であるが、他の方向であってもよい。二以上の第一の取得対象は、等間隔で配置されていても良く、等間隔で配置されていなくても良い。二以上の第一の取得対象は、必ずしも同一直線上に配列されていなくても良く、第一の方向に伸びる平行な二以上の異なる直線上に、二以上の第一の取得対象が、個別に配置されていても良い。
【0022】
二以上の第一の取得対象が対応付けられている属性値(以下、第一属性値と称す)は、通常、互いに異なる属性値である。二以上の第一の取得対象が対応付けられている第一属性値はどのような属性値であっても良い。二以上の第一属性値は、例えば、同じ属性に属する異なる属性値である。第一属性値は、二以上の階層で階層化された属性値であっても良い。属性値が階層化されている場合、最も下位の階層の属性値が異なる場合は、異なる属性値と考えてよい。第一属性値は、例えば、日時である。つまり、第一属性値は、日時の属性についての属性値であってもよい。ここでの日時は、日付だけであっても良く、時刻だけであっても良く、日付と時刻との組合わせであっても良い。また、ここでの日時は、例えば、9時から12時、1ってもよい。時は、時間帯等刻だけであっても良く、日付と日値の午前、午後等の、時間帯や期間であっても良い。かかることは、後述するように撮影画像が、第一の取得対象と第二の取得対象とを撮影した画像である場合においても同様である。
【0023】
なお、第一の取得対象が文字列である場合、第一の取得対象が、この第一の取得対象に対応する第一属性値を示す文字列であってもよい。かかることは、後述する第二の取得対象についても同様である。
【0024】
カラーコードとは、例えば、複数の色の配列が任意の情報と対応づけられたコードである。カラーコードは、例えば、カラーバーコードとも呼ばれる場合がある。例えば、カラーコードは、複数の色が、マトリクス上に配列されたコードである。また、カラーコードは、複数の色が円環上に配列されたコードであってもよい。例えば、このカラーコードは、カメレオンコードとも呼ばれる。カラーコードの複数の色の配列と対応付けられた情報は、通常、カラーコードを読み取ることで取得される情報である。以下、カラーコードの複数の色の配列と対応付けられた情報を、説明の便宜上、カラーコード情報と呼ぶ。カラーコード情報は、例えば、カラーコードに割り当てられた識別子等の文字列である。カラーコードや、カラーコードからカラーコードに割り当てられた文字列等のカラーコード情報を取得する処理については、特許第5695821号公報(特許文献2)や、特開2003−178277号公報(特許文献3)等に記載されているように、公知技術であるため、ここでは詳細な説明は省略する。
【0025】
撮影画像に配置された二以上のカラーコードは、全てが異なるカラーコードであっても良く、少なくとも一部が同じカラーコードであっても良い。同じカラーコードとは、例えば、色の配列等が同じであるカラーコードである。
【0026】
カラーコード情報は、他の情報と対応付けられていても良い。カラーコード情報と対応付けられた情報は、例えば、対応格納部103に格納されている。ここでは、カラーコード情報をカラーコードに対応付けられた情報と考えても良く、カラーコード情報と対応付けられた情報をカラーコードに対応付けられた情報と考えても良い。後述する取得部104は、例えば、一のカラーコードを読み取ることでカラーコード情報であるカラーコードに対応付けられた情報を取得してもよい。ここでの読み取りは、例えば、カラーコードの画像から、カラーコード情報を取得することである。例えば、カラーコードの読み取りは、カラーコードの色の配列等に対応するカラーコード情報を取得することである。また、取得部104は、一のカラーコードを読み取ることでカラーコード情報を取得し、取得したカラーコード情報に対応付けられた情報を、対応格納部103から読み出すことで、カラーコードと対応付けられた情報を取得するようにしてもよい。なお、以下においては、カラーコード情報がカラーコードの識別子であり、対応格納部103に格納されているカラーコード情報に対応付けられた情報が、カラーコードと対応付けられた情報である場合を例に挙げて説明する。ただし、カラーコード情報がカラーコードと対応付けられた情報であってもよい。例えば、カラーコード情報である文字列が、カラーコードと対応付けられた情報であってもよい。
【0027】
カラーコードに対応付けられた情報は、例えば、ユーザ識別子である。ここでのユーザとは、例えば、第一属性値や、後述する第二属性値との対応付けの対象となる二以上のユーザである。ユーザ識別子は、ユーザの名前であってもよく、ユーザに割り当てられたコードであっても良く、ユーザのメールアドレスや、電話番号であってもよい。また、ユーザ識別子は、ユーザの会員番号や、社員番号等であっても良い。この場合、例えば、カラーコード情報と、ユーザ識別子とが対応付けられて対応格納部103に格納されている。
【0028】
また、カラーコードに対応付けられた情報は、例えば、ユーザの行動を示す行動情報である。行動情報は、例えば、ユーザの行動を表す文字列等の情報である。例えば、行動情報は、ユーザが出勤していることを示す「出勤」等の情報や、ユーザが休んでいることを示す「休み」等の情報や、ユーザが出張していることを示す「出張」等の情報や、これらの情報に対応するコード等である。また、行動情報は、ユーザが会議に参加していることを示す「会議中」等の情報であっても良い。この場合、例えば、カラーコード情報と、行動情報とが対応付けられて対応格納部103に格納されている。
【0029】
撮影画像に撮影されるカラーコードは、例えば、第一の取得対象は配置される面と同じ面(例えば、平面)に配置される。撮影されるカラーコードは、例えば、第一の取得対象が配置される面と同一の面に直接印刷、あるいは描画されていても良い。また、カラーコードが配置された部材(図示せず)、具体的には印刷または描画された部材、例えば、プレートやシートやシール等が、カラーコードが配置される面上(例えば、第一の取得対象が配置される面と同じ面上)に配置されることで、撮影されるカラーコードが、カラーコードが配置される面上に配置されていても良い。カラーコードが配置された部材は、例えば、プレートやシートやシール等の平面部材である。撮影画像には、例えば、カラーコードが配置された部材が着脱可能となるよう取り付けられた面を撮影したものである。例えば、撮影されるカラーコードは、カラーコードが配置される面上(例えば、第一の取得対象が配置される面と同じ面上)に着脱可能となるよう取り付け可能な平面部材の表面に配置されたカラーコードである。着脱可能となるよう取り付け可能な平面部材とは、例えば、カラーコードが配置される面上に吸着可能な平面部材である。例えば、カラーコードが配置される面上が、磁石を吸着可能な面である場合、磁石を有する平面部材である。また、着脱可能となるよう取り付け可能な平面部材は、裏面側に吸盤等を有する平面部材や、カラーコードが配置される面上に密着させることが可能な平面部材である。また、カラーコードが配置された平面部材が配置される面を備えた部材(例えば、後述する板状部材等)が、平面部材が配置されうる位置に、平面部材の下辺や側辺等を嵌め込み可能なガイド部材(図示せず)を備えていてもよい。
【0030】
なお、カラーコードの近傍、例えばカラーコードの上部や下部、あるいは、カラーコードの背景部分等に、カラーコードに対応付けられた情報を示す文字列または画像が配置されていても良い。カラーコードが配置された平面部材の、カラーコードが配置されている部分以外の余白等に、カラーコードに対応付けられた情報を示す文字列または画像が配置されていても良い。カラーコードに対応付けられた情報を示す文字列または画像は、例えば、カラーコードに対応付けられた情報であってもよく、カラーコードに対応付けられた情報である文字列や画像の一部や、カラーコードに対応付けられた情報をユーザが認識可能な文字列や画像であっても良い。また、カラーコードが配置された平面部材の裏面に、カラーコードに対応付けられた情報を示す文字列または画像が配置されていても良い。この文字列や画像によって、ユーザが配置するカラーコードが、どのようなカラーコードであるかをユーザが認識可能である。
【0031】
撮影画像において、カラーコードが第一の取得対象と対応付けて配置されているということは、例えば、撮影画像において、一のカラーコードがこのカラーコードに対応付けられた第一の取得対象が特定可能となるよう配置されていることである。一のカラーコードが、第一の取得対象と対応付けて配置されているということは、例えば、一の第一の取得対象からみて、第一の方向とは異なる特定の方向や、第一の方向とは異なる方向に位置する特定の領域に、一のカラーコードが配置されていることである。例えば、一の第一の取得対象からみて、上下左右のいずれかの方向、あるいは、左斜め上、右斜め上、左斜め下、および右斜め下のいずれかの方向に一のカラーコードが配置されていることである。ここでは、取得対象から見た方向で説明しているが、カラーコードから見た方向で考えて場合においても同様である。また、一のカラーコードが、第一の取得対象と対応付けて配置されているということは、例えば、第一の取得対象に対して、特定の位置関係にある特定の大きさおよび形状を有する領域に一のカラーコードが配置されていること等であっても良い。
【0032】
例えば、複数の第一の取得対象が、表を構成する複数の行または列の項目として配置されている場合、一の第一の取得対象と対応付けられて配置されたカラーコードは、この一の取得対象が項目として配置された行または列に配置されたカラーコードであってもよい。具体的には、一のカラーコードに対応する第一の取得対象は、このカラーコードが配置された列の項目として配置された文字列や画像であっても良い。ここでの表の項目は、例えば、見出し項目や、項目名等を含むと考えてもよい。なお、ここでの表は、罫線等を有していても良く、有していなくても良い。
【0033】
また、表の代わりに、二以上の第一の取得対象が、第一の軸の項目として配置された座標系等を考えてもよい。この場合、第一の軸の値が、一の項目となるよう配置されたカラーコードは、この一の項目である第一の取得対象と対応付けられた位置に配置されたカラーコードと考えてもよい。
【0034】
受付部101は、上述した二以上の第一の取得対象と、二以上の第二の取得対象と、二以上の第一の取得対象のいずれかと二以上の第二の取得対象のうちのいずれかとに対応する位置にそれぞれ配置されている二以上のカラーコードと、が撮影された撮影画像を受け付けてもよい。二以上の第二の取得対象は、互いに異なる取得対象である。二以上の第二の取得対象は、上述した第一の方向とは異なる第二の方向に配列された二以上の取得対象であって、異なる属性値と対応付けられた取得対象である。ここでのいずれかとは、例えば、いずれか一つを意味すると考えてよい。第二の取得対象は、例えば、第一の取得対象と同一の面(例えば、平面)に配置される。
【0035】
第二の方向は、例えば、第一の方向に対して、視覚によって明確に識別可能な方向であることが好ましい。第二の方向は、例えば、カラーコードと第一の取得対象との対応関係、およびカラーコードと第二の取得対象との対応関係を、後述する取得部104が検出可能な方向であることが好ましい。第二の方向は、例えば、第一の方向に対して略垂直となる方向や、第一の方向とのなす角度が、40〜90度の範囲内の値となる方向あることが好ましい。二以上の第二の取得対象が配置される位置は、二以上の第一の取得対象を第二の方向に移動させた場合に、いずれの第一の取得対象とも重ならない位置であることが好ましい。
【0036】
二以上の第二の取得対象と対応付けられた属性値(以下、第二属性値と称す)は、例えば、第一属性値とは、異なる属性値である。異なる属性値とは、例えば、属性が異なる属性値である。例えば、第一属性値が日時の属性についての属性値である場合、場所の属性についての属性値である第二属性値は、第一属性値とは属性が異なる属性値である。第二属性値は、第一属性値と異なる属性値であればどのような属性値であっても良い。例えば、第一属性値が日時である場合、即ち日時の属性についての属性値である場合、第二の取得対象と対応付けられた属性値は、上述したようなユーザ識別子であってもよい。また、この場合、カラーコードと対応付けられた情報は上述したようなユーザの行動を示す行動情報であっても良い。
【0037】
撮影画像において、カラーコードが第二の取得対象と対応付けて配置されているということは、取得対象が異なる点を除けば、上述したように、カラーコードが第一の取得対象と対応付けて配置されていることと同様である。撮影画像において、一のカラーコードが、二以上の第一の取得対象のいずれかと二以上の第二の取得対象のうちのいずれかとに対応する位置に配置されているということは、例えば、撮影画像において、一のカラーコードが、このカラーコードと対応付けられた一の第一の取得対象と、一の第二の取得対象と、をそれぞれ特定可能となるよう配置されていることである。一のカラーコードが、第一の取得対象と第二の取得対象とに対応付けて配置されているということは、例えば、一のカラーコードが、一の第一の取得対象からみて、第一の方向とは異なる特定の方向に配置されており、かつ、このカラーコードが、一の第二の取得対象からみて、第二の方向とは異なる特定の方向に配置されていることである。
【0038】
例えば、複数の第一の取得対象が、一の表を構成する複数の行の項目として配置されており、複数の第二の取得対象が、同じ表を構成する複数の列の項目として配置されている場合において、一の第一の取得対象と、一の第二の取得対象とに対応する位置にそれぞれ配置されている一のカラーコードは、例えば、この一の表の、一の第一の取得対象が項目として配置された行の、一の第二の取得対象が項目として配置された列に配置されたカラーコードである。
【0039】
また、表の代わりに、二以上の第一の取得対象が、第一の軸の項目として配置され、二以上の第二の取得対象が、第二の軸の項目として配置された座標系等を考えてもよい。この場合、第一の軸の値が一の項目である第一の取得対象となるよう配置され、第二の軸の値が一の項目である第二の取得対象となるよう配置されたカラーコードは、第一の軸の値である第一の取得対象と、第二の軸の値である第二の取得対象とに対応付けられた位置に配置されたカラーコードと考えてもよい。
【0040】
撮影画像は、一以上の静止画像であっても、動画像であっても良い。撮影画像は、一定または一定ではない時間間隔を隔てて撮影された複数の静止画像であってもよく、動画像から一定または一定ではない時間間隔を隔てて抽出された複数のフレーム画像であっても良い。撮影画像は、カラー画像であってもモノクロームの画像であっても良い。また、撮影画像の階調数等は問わない。
【0041】
受付部101がどのように撮影画像を受け付けるかは問わない。例えば、受付部101は、カラーコード処理装置1が有する撮影部102が撮影した撮影画像を受け付けても良く、カラーコード処理装置1の外部等に別途設けられた撮影部が撮影した撮影画像や、撮影して図示しない記録媒体等に蓄積された撮影画像を受け付けても良い。外部等に設けられた撮影部から撮影画像を受け付ける場合、カラーコード処理装置1は、撮影部102を有していなくても良い。なお、以下、本実施の形態においては、一例として、カラーコード処理装置1が撮影部102を備えている場合について説明する。
【0042】
ここでの受け付けとは、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。受付部101は、撮影画像を受け付けるためのインターフェース等と考えてもよい。受付部101は、例えば、撮影画像を受信したり読み出したりするためのデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【0043】
撮影部102は、二以上の第一の取得対象と、二以上の第一の取得対象のうちのいずれかに対応する位置にそれぞれ配置された二以上のカラーコードと、を撮影して、撮影画像を取得する。例えば、二以上の第一の取得対象と、二以上のカラーコードが配置されたシート状部材や板状部材を撮影して撮影画像を取得する。撮影部102が撮影する画像は、静止画像であっても良く、動画像であっても良い。また、撮影する画像の画素数等は問わない。また、撮影部102が撮影する画像のファイル形式等は問わない。また、撮影部102が撮影する画像は、カラー画像であっても良く、モノクローム画像であってもよい。
【0044】
撮影部102は、通常、デジタルカメラや、光学式スキャナや、ラインセンサ等で実現される。
【0045】
対応格納部103には、二以上のカラーコード情報と、各カラーコード情報に対応付けられた情報とが格納されている。対応格納部103には、例えば、カラーコード情報と、このカラーコード情報と対応付けられた情報とを有する二以上のコード対応情報が格納されている。カラーコード情報と対応付けられた情報は、例えば、ユーザ識別子や、行動情報である。
【0046】
対応格納部103は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部においても同様である。
【0047】
取得部104は、受付部101が受け付けた撮影画像から、カラーコードと、このカラーコードに対応する位置に配置された第一の取得対象との複数の組を検出する。取得部104は、検出した各組について、それぞれ、読取情報を取得する。読取情報は、検出した各組のカラーコードに対応する情報と、第一の取得対象に対応する属性値と、を有する情報である。
【0048】
取得部104は、受付部101が受け付けた撮影画像から、カラーコードと、このカラーコードに対応する位置に配置された第一の取得対象と、このカラーコードに対応する位置に配置された第二の取得対象との複数の組を検出し、検出した各組について、それぞれ、読取情報を取得するようにしてもよい。ここでの読取情報は、カラーコードに対応する情報と、第一の取得対象に対応する属性値と、第二の取得対象に対応する属性値とを有する情報である。ここでの読取情報は、例えば、上述した読取情報において、更に第二の取得対象に対応する属性値を加えたものと考えてもよい。
【0049】
以下、撮影画像から、カラーコードと第一の取得対象との複数の組を検出し、検出した各組について読取情報を取得する第一の処理と、カラーコードと第一の取得対象と第二の取得対象との複数の組を検出し、検出した各組について読取情報を取得する第二の処理と、について、それぞれ説明する。
【0050】
(1)第一の処理
(a)複数の組の検出
例えば、取得部104は、撮影画像において検出したカラーコードと取得対象とを検出し、検出したカラーコードと取得対象とを用いて、カラーコードと、カラーコードに対応する位置に配置された第一の取得対象との複数の組を検出する。また、撮影画像において二以上のカラーコードを検出し、検出した各カラーコードに対応する位置(例えば、方向や、列や、行等)において第一の取得対象を検出することで、各カラーコードと第一の取得対象との組を検出しても良い。また、撮影画像において二以上の取得対象を検出し、検出した取得対象に対応するカラーコードが配置される位置(例えば、方向や、列や、行等)においてカラーコードを検出することで、各カラーコードと第一の取得対象との組を検出しても良い。
【0051】
撮影画像からカラーコードを検出するということは、例えば、撮影画像からカラーコードが配置されている領域を検出することや、検出した領域の情報(例えば、領域の輪郭等を定義する座標等の情報等)を取得することや、検出したカラーコードの画像を取得することである。かかることは第一の取得対象や、第二の取得対象等の取得対象の検出についても同様である。
【0052】
取得部104は、例えば、撮影画像において、カラーコードが配置されている領域を検出して、それぞれの領域の情報を取得する。あるいは、検出した領域内の画像を取得する。領域の情報は、例えば、領域の輪郭を示す座標の情報等である。撮影画像からカラーコードが配置されている領域を検出する処理は、カラーコードを用いた技術として上述した特許文献2や特許文献3等に示されているように公知の技術であるため、ここでは詳細な説明は省略する。
【0053】
また、取得部104は、例えば、撮影画像において、取得対象が配置されている領域をそれぞれ検出し、それぞれの領域の情報を取得する。あるいは、検出した領域内の画像を取得する。撮影画像から取得対象が配置されている領域を検出する処理は、OCR(optical character recognition)等の文字認識処理や、画像認識処理等において公知の技術であるため、ここでは詳細な説明は省略する。
【0054】
なお、取得部104は、撮影画像から取得対象を検出する際に、第一の取得対象だけを、適宜、他の取得対象等と区別して選択的に検出しても良く、区別せずに検出しても良い。例えば、カラーコードに対応付けられた第一の取得対象は、それぞれ、カラーコードに対して、特定の方向に配置されるため、第一の取得対象を他の取得対象と区別して検出しなくても、カラーコードと、取得対象との位置関係から、カラーコードに対応する第一の取得対象を、他の取得対象から区別することが可能である。ただし、区別して検出しても良い。区別して検出する処理については後述する。また、予め指定されたルール等を満たす取得対象は取得しないようにしてもよい。予め指定されたルールを満たす取得対象とは、例えば、特定の色の取得対象や、閾値以上や、閾値以下の大きさの取得対象や、予め指定された領域に配置されている取得対象等である。
【0055】
なお、撮影画像からカラーコードや取得対象を検出する際には、撮影画像に対して、適宜、傾き補正等を行なっても良い。また、この傾き補正は、撮影画像を複数のブロックに分割してブロックごとに行なっても良い。なお、カラーコードや取得対象を検出する際に、傾き補正等を行なう技術については公知技術であるため、ここでは詳細な説明は省略する。
【0056】
なお、取得部104が検出するカラーコードが配置されている領域や、取得対象が配置されている領域は、例えばカラーコードや、取得対象が含まれる最小矩形の領域であってもよく、カラーコードや、取得対象の輪郭で表される領域であっても良い。また、取得部104がこれらの領域を検出する際、罫線等は検出対象から除外するようにしても良い。
【0057】
以下、取得部104が、撮影画像においてカラーコードと取得対象とを検出し、検出したカラーコードと取得対象とを用いて、カラーコードと、カラーコードに対応する位置に配置された第一の取得対象との複数の組を検出する場合の例について説明する。
【0058】
まず、取得部104は、撮影画像において、カラーコードと取得対象とをそれぞれ検出する。ここで検出する取得対象は、第一の取得対象のみであっても良く、第一の取得対象と、第一の取得対象以外の取得対象とを含む取得対象であってもよい。
【0059】
次に、取得部104は、例えば、上記で検出した各カラーコードに対応する位置に配置された第一の取得対象を検出する。例えば、撮影画像内において、一の第一の取得対象からみて、第一の方向とは異なる特定の方向に一のカラーコードが配置されているものとした場合においては、上記のように撮影画像において検出した一のカラーコードが配置されている領域に対して、上記の特定の方向とは正反対の方向に配置されている第一の取得対象を、検出した取得対象の中から検出する。例えば、上記で検出した二以上の取得対象のうちの、一のカラーコードが配置されている領域内の代表点、例えば、中心点や重心から、上記の特定の方向とは逆の方向に伸ばした半直線との距離が閾値以下となる取得対象を、一のカラーコードに対応する位置にある取得対象が配置されている領域として検出する。半直線との距離とは、例えば、半直線と、取得対象の代表点、例えば、中心点や重心との距離である。この閾値は、例えば、隣り合う第一の取得対象の距離の半分よりも短い距離であることが好ましい。あるいは、一のカラーコードと同じサイズの領域を、上記の特定の方向とは逆の方向に平行移動させた場合に、この移動させた領域と重なる取得対象を、一のカラーコードに対応する位置に配置された第一の取得対象として検出してもよい。このようにして各カラーコードについて検出された第一の取得対象と、対応する各カラーコードとの組が、取得部104が検出したカラーコードと第一の取得対象との複数の組である。
【0060】
なお、撮影画像内の第一の取得対象が、一の表を構成する複数の行(または列)の項目であって、カラーコードが、この表の行(または列)に配置されている場合、一のカラーコードに対して上方(または左方向)に位置する取得対象を、一のカラーコードに対応する位置に配置されている第一の取得対象として検出してもよい。また、取得部104が、撮影画像内の罫線等を検出して、表を構成する行や列を検出することができる場合、一のカラーコードと同じ行(または列)に配置されている取得対象を、一のカラーコードに対応する位置に配置された第一の取得対象として検出するようにしてもよい。
【0061】
次に、取得部104が、撮影画像においてカラーコードを検出し、撮影画像内の検出したカラーコードに対応する第一の取得対象が配置される位置(例えば方向)において、カラーコードに対応する取得対象を検出することによって、カラーコードと、カラーコードに対応する位置に配置された第一の取得対象との複数の組を検出する場合の例について説明する。
【0062】
まず、取得部104は、撮影画像において、カラーコードを検出する。次に、取得部104は、例えば、撮影画像内の上記で検出した各カラーコードに対応する位置(例えば、方向や領域)において、取得対象を検出する。例えば、撮影画像内において、一の第一の取得対象からみて、第一の方向とは異なる特定の方向に一のカラーコードが配置されているものとした場合においては、撮影画像の、一のカラーコードが配置されている領域に対して、上記の特定の方向とは正反対の方向において、取得対象の検出を行なって、第一の取得対象を検出しても良い。例えば、一のカラーコードが配置されている領域内の代表点、例えば、中心点や重心から、上記の特定の方向とは逆の方向に伸ばした半直線を含む領域において取得対象の検出を行なう。一のカラーコードに対応する位置にある取得対象が配置されている領域として検出する。あるいは、一のカラーコードと同じサイズの領域を、上記の特定の方向とは逆の方向に平行移動させた領域と重なる取得対象の検出を行なう。これにより、各カラーコードについて検出された第一の取得対象と、各カラーコードとの組が、取得部104が検出したカラーコードと第一の取得対象との複数の組である。
【0063】
なお、撮影画像内の第一の取得対象が、一の表を構成する複数の行(または列)の項目であって、カラーコードが、この表の行(または列)に配置されている場合、一のカラーコードに対して上方(または左方向)の領域で検出される取得対象を、一のカラーコードに対応する位置に配置されている第一の取得対象としてもよい。また、取得部104が、撮影画像内の罫線等を検出して、表を構成する行や列を検出することができる場合、一のカラーコードと同じ行(または列)において検出された取得対象を、一のカラーコードに対応する位置に配置された第一の取得対象として検出するようにしてもよい。
【0064】
なお、撮影画像において、第一の取得対象等の取得対象を検出し、検出された各取得対象に対応する位置においてカラーコードを検出することで、カラーコードと、カラーコードに対応する位置に配置された第一の取得対象との複数の組を検出する処理については、上記のカラーコードと、取得対象とを置き換えた場合の処理と同様のものとなるため、ここでは詳細な説明は省略する。
【0065】
なお、取得部104が、撮影画像から、カラーコードと、このカラーコードに対応する位置に配置された第一の取得対象との複数の組をどのように検出するかは問わない。
【0066】
(b)読取情報の取得
以下、上記のように検出したカラーコードと第一の取得対象との複数の組のそれぞれについて、取得部104が読取情報を取得する処理について説明する。例えば、取得部104は、カラーコードと、各カラーコードに対応する位置に配置されている第一の取得対象との組を検出した後、検出した各組のカラーコードについて色の配列等を検出して、この配列等に対応するカラーコード情報を取得する。具体的には、各組のカラーコードの画像から色の配列等を検出してカラーコード情報を取得する。カラーコードについて色の配列等を検出する処理は、カラーコードを読み取る処理と考えてもよい。カラーコードから、色の配列等を検出して、カラーコード情報を取得する処理は、カラーコードを用いた技術として上述した特許文献2や特許文献3等に示されているように公知の技術であるため、ここでは詳細な説明は省略する。取得部104が、カラーコードに対応する情報としてカラーコード情報を取得する場合、このようにして取得したカラーコード情報が、カラーコードに対応する情報である。また、取得部104が、カラーコードに対応する情報として、カラーコード情報に対応付けられた情報を取得する場合、上記のように取得したカラーコード情報と対応付けられた情報を、対応格納部103において検索し、検出した情報を、カラーコードに対応する情報として取得する。
【0067】
また、取得部104は、カラーコードと、各カラーコードに対応する位置に配置されている第一の取得対象との組を検出した後、検出した組の第一の取得対象が配置されている領域の第一の取得対象の画像を用いて、OCR等の文字認識処理や、画像のパターンマッチング等を行なうことにより、第一の取得対象の属性値である第一属性値を取得する。例えば、第一の取得対象が、この第一の取得対象に対応する第一属性値の文字列で有る場合、OCR等の文字認識処理で取得した文字列が、第一の取得対象の属性値である。また、このOCR等の文字認識処理で取得した文字列が、第一属性値に対応付けられた文字列である場合、図示しない格納部等に予め格納されている二以上の第一の取得対象が示す文字列と、この各文字列に対応する第一属性値とを有する複数の情報から、OCR等の文字認識処理で取得した文字列に対応する第一属性値を検索等により取得する。また、例えば、第一の取得対象が第一属性値に対応付けられた画像、例えばマーク等で有る場合、取得部104は、パターンマッチングによりこの第一の取得対象である画像に合致すると判断されたパターンに予め対応付けられた第一属性値を取得してもよい。パターンマッチングに用いられるパターンと、第一属性値とを対応付けた情報は、例えば、予め図示しない格納部等に蓄積しておくようにすればよい。かかることは、後述する第二属性値を取得する場合においても同様である。OCR等の文字認識処理については、公知技術であるため、ここでは詳細な説明は省略する。また、パターンマッチングについては、公知技術であるため、ここでは詳細な説明は省略する。パターンマッチングで用いられるパターンは、例えば、パターンマッチングにおいて利用される画像についての一以上の特徴量と考えてもよい。
【0068】
このようにして、撮影画像内のカラーコードと、そのカラーコードに対応する位置に配置された第一の取得対象との一の組について取得されたカラーコードに対応する情報と、第一の取得対象に対応する属性値との組が、一の読取情報である。
【0069】
なお、取得部104は、撮影画像において、カラーコードを検出した際に、検出したカラーコードについて、色の配列等を検出して、この色の配列等に対応するカラーコード情報や、このカラーコード情報に対応付けられた情報を予め取得して、各カラーコードと対応付けて図示しない格納部等に蓄積しておくようにし、カラーコードと第一の取得対象との複数の組をそれぞれ構成するカラーコードに対応する情報を取得する際には、上記のように予め取得されて蓄積されたカラーコード情報や、このカラーコード情報に対応付けられた情報の中から、複数の組を構成する各カラーコードに対応するカラーコード情報や、このカラーコード情報に対応付けられた情報を検索等により取得することで、複数の組をそれぞれ構成するカラーコードに対応する情報を取得するようにしてもよい。カラーコードの検出時に予め取得されたカラーコード情報が、最終的に取得しようとする読取情報を構成するカラーコードに対応する情報でない場合、各組についてカラーコード情報を取得した後、このカラーコード情報に対応した情報を、カラーコードに対応する情報として取得するようにすればよい。
【0070】
また、取得部104は、撮影画像において、第一の取得対象等の取得対象を検出した際に、検出した取得対象について、OCR等の文字認識処理やパターンマッチング等を行なって、取得対象に対応する属性値を予め取得して、各取得対象と対応付けて図示しない格納部等に蓄積しておくようにし、カラーコードと第一の取得対象との複数の組をそれぞれ構成するカラーコードに対応する情報を取得する際には、上記のように予め取得されて蓄積された属性値の中から、複数の組を構成する各第一の取得対象に対応付けられた属性値を検索等により取得することで、複数の組をそれぞれ構成する第一の取得対象に対応する属性値を取得するようにしてもよい。
【0071】
なお、取得部104は、一の組を検出する毎に、検出した組について読取情報を取得しても良く、複数の組を検出した後に、各組について読取情報を取得しても良い。
【0072】
なお、取得部104が、上記で取得したカラーコードと第一の取得対象との複数の組のそれぞれについて、どのように読取情報を取得するかは問わない。
【0073】
(2)第二の処理
(a)複数の組の検出
以下、取得部104が第二の処理を行なう場合について説明する。取得部104は、例えば、上記のように、撮影画像から、カラーコードと、取得対象とを検出し、各カラーコードが配置されている各領域に対応する位置に配置された第一の取得対象を上記と同様に検出し、各カラーコードが配置されている各領域に対応する位置に配置された第二の取得対象を検出する。これにより、カラーコードと、このカラーコードに対応する位置に配置された第一の取得対象と、このカラーコードに対応する位置に配置された第二の取得対象と、の複数の組を検出することができる。なお、第二の取得対象が配置されている領域を検出する処理は、カラーコードと対応付けられた第一の取得対象が配置される位置(例えば方向や領域や行や列)と、カラーコードと対応付けられた第二の取得対象が配置される位置(例えば方向や領域や行や列)とが異なる点を除けば、第一の取得対象を検出する処理と同様であるため、ここでは、詳細な説明は省略する。
【0074】
また、取得部104は、撮影画像から、二以上のカラーコードを検出し、撮影画像内の各カラーコードに対応する第一の取得対象が配置される位置(例えば方向や領域や行や列)において第一の取得対象を検出し、撮影画像内の各カラーコードに対応する第二の取得対象が配置される位置(例えば方向や領域や行や列)において第一の取得対象を検出することにより、カラーコードと、このカラーコードに対応する位置に配置された第一の取得対象と、このカラーコードに対応する位置に配置された第二の取得対象と、の複数の組を検出してもよい。
【0075】
また、取得部104は、撮影画像において、取得対象を検出し、撮影画像内の各取得対象について、第一の取得対象に対応するカラーコードが配置される位置においてカラーコードを検出して、第一の取得対象とカラーコードとの組を検出する。また、同様に、各取得対象について、第二の取得対象に対応するカラーコードが配置される位置においてカラーコードを検出して、第二の取得対象とカラーコードとの組を検出する。そして、検出した第一の取得対象とカラーコードとの組と、第二の取得対象とカラーコードとの組において、同じカラーコードと対応付けられた複数の組に含まれる、第一の取得対象と、第二の取得対象と、カラーコードとの組を、カラーコードと、このカラーコードに対応する位置に配置された第一の取得対象と、このカラーコードに対応する位置に配置された第二の取得対象と、の組として検出するようにしても良い。
【0076】
なお、取得部104は、撮影画像から取得対象を検出する際に、第一の取得対象と第二の取得対象とを区別して検出しても良く、区別せずに検出しても良い。例えば、通常、カラーコードに対応付けられた第一の取得対象と、第二の取得対象とは、それぞれ、カラーコードに対して、異なる特定の方向に配置されるため、第一の取得対象と第二の取得対象とを区別して検出しなくても、カラーコードに対応する第一の取得対象と、第二の取得対象とを区別して検出することが可能である。ただし、区別して検出しても良い。区別して検出する場合、検出した取得対象のうちの、第一の取得対象の配列方向に沿って配列される複数の取得対象を、第一の取得対象と判断し、第二の取得対象の配列方向に沿って配列される複数の取得対象を、第二の取得対象と判断するようにしても良い。あるいは、取得対象を撮影画像から検出した際に、この取得対象についてOCR等の文字認識処理等を行なって、取得対象についての情報、例えば取得対象を示す文字列を取得し、取得した情報から、第一の取得対象であるか第二の取得対象であるかを判断してもよい。例えば、予め指定された第一の取得対象を特定する文字列が含まれる場合、第一の取得対象と判断し、この文字列が含まれない場合や、予め指定された第二の取得対象を特定する文字列が含まれる場合に、第二の取得対象と判断してもよい。かかることは、第一の取得対象と第二の取得対象とが逆の場合も同様である。また、例えば、予め用意された複数の第一の取得対象のいずれかと一致する場合、第一の取得対象と判断し、一致しない場合や、予め指定された複数の第二の取得対象のいずれかと一致する場合に、第二の取得対象と判断してもよい。かかることは、第一の取得対象と第二の取得対象とが逆の場合も同様である。
【0077】
(b)読取情報の取得
以下、上記のように検出した、検出したカラーコードと第一の取得対象と第二の取得対象との複数の組のそれぞれについて、取得部104が読取情報を取得する処理について説明する。取得部104は、例えば、上記のように検出した各組について、上記の第一の処理の場合と同様に、カラーコードに対応する情報と、第一の取得対象に対応する第一属性値と、第二の取得対象に対応する第二属性値とを有する読取情報を取得する。なお、第二の取得対象に対応する第二属性値を取得する処理は、上述した第一の処理における第一の取得対象に対応する第一属性値を取得する処理と、取得対象が異なる点を除けば同様であるため、ここでは、詳細な説明は省略する。なお、上述したように、取得部104は、複数の組を検出した後に、各組のカラーコードについて、色の配列等を検出して、この配列等に対応するカラーコード情報を取得し、各組の第一の取得対象および第二の取得対象についてOCR等の文字認識処理やパターンマッチング等を行なって属性値を取得してもよく、撮影画像から、カラーコードを検出した際に、色の配列等を検出して、この配列等に対応するカラーコード情報等を取得し、撮影画像から取得対象を検出した際に、OCR等の文字認識処理やパターンマッチング等を行なって属性値を取得し、このようにして予め取得したカラーコード情報や、属性値の中から、複数の組を検出した後に、各組のカラーコードや、第一の取得情報や、第二の取得情報に対応するカラーコード情報や属性値等を取得するようにしても良い。
【0078】
なお、取得部104は、カラーコードと第一の取得対象と第二の取得対象との一の組を検出する毎に、検出した組について読取情報を取得しても良く、複数の組を検出した後に、各組について読取情報を取得しても良い。
【0079】
取得部104は、例えば、撮影画像が、動画像である場合、動画像を構成するフレーム画像を再生順番に、あるいは、一定または不定のフレーム画像を隔てて順次取出し、取り出したフレーム画像について、上述したカラーコードの検出や、取得対象の検出等を行なうようにし、検出が行えなかった場合は、次に取得されたフレーム画像に対して、検出を行なうようにすればよい。
【0080】
なお、以下、本実施の形態においては、一例として、第一の取得対象が、この第一の取得対象に対応する第一属性値の文字列であり、第二の取得対象が、この第二の取得対象に対応する第二属性値の文字列である場合を例に挙げて説明する。
【0081】
なお、取得部104がカラーコードが配置されている領域等の領域を検出する処理を行なう際には、適宜、撮影画像を複製したり、撮影画像に対して二値化等の画像処理を行なうようにしてもよい。
【0082】
取得部104は、通常、MPUやメモリ等から実現され得る。取得部104の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0083】
出力部105は、取得部104が取得した読取情報を出力する。取得部104が取得した読取情報は、カラーコードに対応する情報と、第一属性値とを対応付けて有する情報、あるいは、カラーコードに対応する情報と、第一属性値と、第二属性値とを対応付けて有する情報と考えてもよい。
【0084】
ここでの出力とは、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。なお、ここでの出力は、例えば、送信したり蓄積したりする読取情報の確認のための表示等を更に含んでいると考えてもよい。例えば、本実施の形態においては、一例として、出力部105は、取得した読取情報を、読取情報格納部106に蓄積する。
【0085】
出力部105は、蓄積手段や、送信手段等の出力デバイスを含むと考えても含まないと考えても良い。出力部105は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【0086】
読取情報格納部106には、取得部104が取得した読取情報が格納される。
【0087】
次に、カラーコード処理装置1の動作の一例について
図2のフローチャートを用いて説明する。ここでは、撮影部102が、二以上の第一の取得対象と、二以上の第二の取得対象と、前記二以上の第一の取得対象のいずれかと、当該二以上の第二の取得対象のうちのいずれかとに対応する位置にそれぞれ配置されている二以上のカラーコードと、を撮影する場合を例に挙げて説明する。
【0088】
(ステップS101)撮影部102は、二以上の第一の取得対象と、二以上の第二の取得対象と、前記二以上の第一の取得対象のいずれかと、当該二以上の第二の取得対象のうちのいずれかとに対応する位置にそれぞれ配置されている二以上のカラーコードと、を撮影する。
【0089】
(ステップS102)受付部101は、ステップS101で撮影された撮影画像を受け付ける。
【0090】
(ステップS103)取得部104は、ステップS102で受け付けた撮影画像において、複数のカラーコードを検出する。
【0091】
(ステップS104)取得部104は、ステップS102で受け付けた撮影画像において、複数の取得対象を検出する。
【0092】
(ステップS105)取得部104は、カウンターmの値として1を代入する。
【0093】
(ステップS106)取得部104は、ステップS103で検出したカラーコードの中に、1番目のカラーコードが有るか否かを判断する。有る場合、ステップS106に進み、ない場合、処理を終了する。
【0094】
(ステップS107)取得部104は、m番目のカラーコードに対応する位置に配置された第一の取得対象を検出する。
【0095】
(ステップS108)取得部104は、m番目のカラーコードに対応する位置に配置された第二の取得対象を検出する。
【0096】
(ステップS109)取得部104は、m番目のカラーコードに対応する情報を取得する。例えば、取得部104は、m番目のカラーコードについてカラーコード情報を取得し、このカラーコード情報と対応付けられた情報を、対応格納部103に格納された情報を用いて取得する。
【0097】
(ステップS110)取得部104は、ステップS107で取得した第一の認証対象に対応する第一属性値を取得する。
【0098】
(ステップS111)取得部104は、ステップS107で取得した第二の認証対象に対応する第二属性値を取得する。
【0099】
(ステップS112)取得部104は、ステップS109からステップS111で取得したカラーコードに対応する情報、第一属性値、および第二属性値を有する一の対応情報を、読取情報格納部106に蓄積する。ここでの蓄積は、例えば追記である。
【0100】
(ステップS113)取得部104はカウンターmの値を1インクリメントする。そして、ステップS105に戻る。
【0101】
なお、
図2のフローチャートにおいては、一のカラーコードと第一の認証対象と第二認証対象の組を検出する毎に、この組について読取情報を取得する場合について説明したが、本発明においては、撮影画像において検出された全てのカラーコードについて、各カラーコードと第一の認証対象と第二認証対象の組を検出した後に、各組について読取情報を取得するようにしても良い。
【0102】
なお、
図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0103】
以下、本実施の形態におけるカラーコード処理装置1の具体的な動作について説明する。
【0104】
図3は、撮影部102による撮影対象となる壁に架けられたホワイトボード3の表面を示す図(
図3(a))、およびボード3に配置されたカラーコードの一例を示す図(
図3(b))である。ボード3は、磁石付のプレート(図示せず)等が吸着可能なボードであるとする。ボード3の表面には、企業内の社員の出勤状況を管理する管理表300が描かれているものとする。管理表300において、上部に横方向に配列されている複数の列のそれぞれの項目は、出勤日を示す日時、ここでは特に日付を示している。また、管理表300において、左側に縦方向に配列されている複数の行のそれぞれの項目は、管理対象となるユーザのユーザ識別子である社員名(ここでは、社員の姓)を示している。ここではこの日付を示す文字列が、第一の取得対象であり、社員名を示す文字列が第二の取得対象であるとする。また、カラーコード5は、ユーザである社員の行動情報と対応付けられたものであり、管理表300の、一の行と、一の列とが交わる領域(例えばセル)内に、例えばユーザ等により配置される。例えば、対応格納部103に予め格納されている、カラーコード情報である識別子と、行動情報との対応関係を管理する対応管理表により、カラーコード5から色の配列等により読み出される識別子であるカラーコード情報が、行動情報と対応付けられていることで、結果的に、カラーコード5が、ユーザの行動情報と対応付けられている。行動情報は、例えば、ユーザが休みを取っているか、半休みを取っているか、出張しているかを示す文字列の情報であるとする。
【0105】
カラーコード5は、
図3(b)に示すように、図示しないフイルム等に印刷されて、磁石付のプレート50上に貼付されている。ここでは、説明の便宜上、フィルム等に印刷されてプレート50に貼付された状態のカラーコード5を、単にカラーコード5と呼ぶ。ここでは、カラーコードが、一例として、矩形の黒い背景に、水色・紫・黄・緑・赤・青・オレンジ等の最大8色の色を有する矩形の図柄を、3行9列となるよう2次元に配列した構成を有しているカラーバーコードである場合について説明する。カラーコード5は、プレート50に貼付されているため、ボード3の管理表300上の任意の位置にプレート50を吸着させることで配置可能である。ここでは、既に3つの異なるカラーコード5が、表300に複数配置されているものとする。なお、管理表300上には、同じカラーコード5が複数配置されていても良く、ここでは、3つの異なるカラーコード5のうちの一のカラーコードが2つ配置されているものとする。なお、各カラーコード5が貼付されたプレート50の余白や、プレート50の裏面には、各カラーコードに対応付けられた情報、例えば、後述する行動情報である「休み」、「半休」等の文字列、が配置されていても良い。
【0106】
カラーコード5から、色の配列等によって読み取られるカラーコード情報は、カラーコードに割り当てられた識別子であるカラーコード識別子であるとする。
【0107】
図4は、カラーコード情報であるカラーコード識別子と、行動情報との対応関係を管理する対応管理表である。対応管理表は、カラーコード識別子である「コードID」と、行動情報を示す「行動情報」という項目を有している。一のレコード(行)に含まれるカラーコード識別子は、同じレコードの行動情報と対応付けられたカラーコード識別子である。
【0108】
まず、一のユーザが、カラーコード処理装置1が有する撮影部102を用いて、
図3(a)に示したボード3を撮影したとする。撮影部102が撮影して取得した撮影画像は、ここでは、静止画像であるとする。
【0109】
受付部101は、撮影部102が取得した撮影画像を受け付ける。なお、撮影部102が撮影した撮影画像が動画像である場合、撮影画像の一のフレーム画像を取得しても良い。
【0110】
取得部104は、受付部101が受け付けた撮影画像において、複数のカラーコード5を検出する。具体的には、撮影画像において、複数のカラーコード5をそれぞれ検出し、検出したカラーコード5が配置されている領域の情報、例えば、カラーコード5が配置されている領域の頂点を示す4つの座標を取得する。取得した領域の情報は、例えば、図示しない格納部等に一時記憶する。カラーコード5の領域を検出する処理は公知であるため、詳細な説明は省略する。
【0111】
また、取得部104は、受付部101が受け付けた撮影画像において、複数の取得対象を検出する。ここでは、取得対象は文字列である。取得部104は、例えば、撮影画像において、複数の文字列のかたまりを検出し、文字列の固まり毎に、その固まりが配置されている領域の情報、例えば、文字列の固まりを囲む最小矩形の領域の頂点を示す4つの座標を取得する。取得した領域の情報を、取得対象の領域の情報として、それぞれ、図示しない格納部等に一時記憶する。
【0112】
なお、カラーコード5や取得対象を検出する際には、撮影画像に対して傾き補正等を行なうことが好ましい。
【0113】
図5は、撮影画像4において検出されたカラーコード5と、取得対象31〜37とを説明するための図である。ここでは、説明のため、撮影画像4に検出された4つのカラーコードを、カラーコード51〜54として示している。
【0114】
取得部104は、検出されたカラーコード51〜54のうちの一のカラーコード、例えば、カラーコード51が配置されている領域の情報を、図示しない格納部から読み出し、この領域に対応する第一の取得対象が配置されている方向に位置する取得対象の領域を、上記で取得して図示しない格納部に蓄積した取得対象の領域の中から検出する。第一の取得対象が配置されている方向は、ここでは上方向であるとする。取得部104は、例えば、カラーコード51が配置されている領域の横方向(例えば、x軸方向)の座標の範囲と、上記で蓄積した複数の取得対象がそれぞれ配置されている領域の横方向の座標の範囲とを用いて、横方向の座標の範囲が、カラーコード51が配置されている領域の横方向の座標の範囲と重なる取得対象を検出する。ここでは、
図5の取得対象32が、配置されている領域の横方向の範囲が重なる取得対象として検出されたとする。このため、取得部104は、この取得対象32を、カラーコード51に対応する位置に配置された第一の取得対象として検出する。
【0115】
また、取得部104は、同様に、カラーコード51が配置されている領域に対応する第二の取得対象が配置されている方向に位置する取得対象の領域を、上記で取得して図示しない格納部に蓄積した取得対象の領域の中から検出する。第二の取得対象が配置されている方向は、ここでは左方向であるとする。取得部104は、例えば、カラーコード51が配置されている領域の縦方向(例えば、y軸方向)の座標の範囲と、上記で蓄積した複数の取得対象がそれぞれ配置されている領域の縦方向の座標の範囲とを用いて、縦方向の座標の範囲が、カラーコード51が配置されている領域の横方向の座標の範囲と重なる取得対象を検出する。ここでは、
図5の取得対象35が、配置されている領域の縦方向の範囲が重なる取得対象として検出されたとする。このため、取得部104は、この取得対象35を、カラーコード51に対応する位置に配置された第二の取得対象として検出する。
【0116】
次に、取得部104は、上記で検出した一のカラーコード51の画像を用いて、色の配列等を検出して、カラーコード情報であるカラーコード識別子を取得する。この処理は、カラーコードを読み取る処理として公知の技術である。取得したカラーコード情報は、「A1001」であったとする。取得部104は、項目「コードID」の値が、取得したカラーコード情報「A1001」と一致するレコード(行)を、
図4に示した対応管理表において検出し、検出したレコードの項目「行動情報」の値である「休み」を取得する。
【0117】
また、取得部104は、上記で検出した第一の取得対象である取得対象32の画像に対して、OCR等の文字認識処理を行なって、文字列「7/7」を取得する。ここでは、第一の取得対象が、第一属性値を示す文字列であるとすると、ここで取得した文字列「7/7」が、第一の取得対象である取得対象32に対応する第一属性値である。
【0118】
また、取得部104は、上記で検出した第二の取得対象である取得対象35の画像に対して、OCR等の文字認識処理を行なって、文字列「7/7」を取得する。ここでは、第二の取得対象が、第二属性値を示す文字列であるとすると、ここで取得した文字列「木村」が、第二の取得対象である取得対象35に対応する第二属性値である。
【0119】
出力部105は、取得部104が一のカラーコード51について取得したカラーコード51に対応する行動情報である「休み」と、第一属性値である「7/7」と、第二属性値である「木村」とを有する読取情報を、読取情報格納部106に蓄積する。
【0120】
図6は、読取情報格納部106に格納された読取情報を管理する読取情報管理表である。読取情報管理表は、行動情報である「行動情報」と、行動情報が示す行動が行なわれる日付である「日付」と、行動情報が示す行動を行なうユーザ名である「ユーザ」という項目を有している。読取情報管理表の各レコード(行)は、一の読取情報を示す。出力部105が一の読取情報を新たに蓄積する際には、例えば、新たなレコードが追加され、この読取情報の行動情報は、「行動情報」という項目の値として蓄積され、第一属性値は、「日付」という項目の値として蓄積され、第二属性値は、「ユーザ」という項目の値として蓄積されることが予め設定されているものとする。ここでは、
図6の上から1番目のレコードが、新たに蓄積されたカラーコード51について取得された読取情報のレコードである。なお、ここでは、既に、他の読取情報が蓄積されていたものとする。
【0121】
同様に、取得部104は、撮影画像4から検出された他のカラーコード52〜54についても同様の処理を行なって、読取情報を取得する。そして、出力部105は、取得された読取情報を読取情報格納部106に蓄積する。
【0122】
図7は、カラーコード52〜54について取得した読取情報を蓄積した時点での読取情報管理表である。上から1〜3番目のレコードが、カラーコード52〜54に対応する読取情報のレコードである。
【0123】
このようにして、ボード3に配置されたカラーコードを含む情報を、電子データとして取得して、読取情報格納部106に蓄積することができる。
【0124】
なお、上記の具体例においては、撮影画像内のカラーコードについて、第一の取得対象と、第二の取得対象とを検出する場合について説明したが、カラーコードに対応する位置に配置された第一の取得対象のみを検出して、第一属性値を取得するようにしても良い。例えば、撮影画像内に取得対象として第一の取得対象しか配置されていない場合、カラーコードに対応する位置に配置された第一の取得対象のみを取得しても良い。また、例えば、撮影画像内に取得対象として第一の取得対象と第二の取得対象とが配置されている場合であっても、カラーコードに対応する位置に配置された第一の取得対象のみを取得して、第一属性値を取得するようにしても良い。
【0125】
以上、本実施の形態によれば、配置されている情報を容易にかつ適切に電子データ化することができる。
【0126】
また、カラーコードは、通常のバーコードや、QRコード(登録商標)等の二次元バーコード等とは異なり、一の撮影画像内、例えば、一の静止画像や、一のフレーム画像内において、同時に複数のカラーコードを検出して、カラーコードに対応する情報を取得することが可能であるため、一の撮影画像から、複数の読取情報を取得することが可能であり、カラーコードを検出するために複数回の撮影等を行なう必要がなく、撮影等を行なうユーザの操作を簡略化することができる。
【0127】
また、カラーコードを利用するとともに、カラーコードの近傍に、カラーコードに対応付けられた情報を示す文字列または画像を配置しないようにした場合、各ユーザがどのような情報を配置したか等を、他のユーザに容易に知られることがない。例えば、日付を示す第一の取得対象が配置された表の日付と対応付けられた部分に、休暇を取るユーザが、自分のユーザ識別子と対応付けられたカラーコードを配置することで、ユーザの勤怠等を管理する場合等において、他のユーザは、表を見ただけでは、誰が休むかを容易にすることができなくなる。この結果、ユーザのプライバシーを保護することができるという効果がある。
【0128】
なお、上記実施の形態において、第一の取得対象や、第二の取得対象として、上述したようなカラーコードを用いるようにしてもよい。この場合、取得部104は、撮影画像においてカラーコードである第一の取得対象やカラーコードである第二の取得対象に対応する属性値等を取得する処理として、カラーコードに対応する情報を取得する処理と同様の処理を行なうようにすればよい。なお、この場合、取得部104は、第一の取得対象や第二の取得対象であるカラーコードと、これらと対応付けて配置されるカラーコードとを、カラーコードから読み取れる情報や、カラーコードが配置される領域等を利用して、区別して検出することが好ましい。
【0129】
なお、上記実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【0130】
また、上記実施の形態では、カラーコード処理装置がスタンドアロンである場合について説明したが、カラーコード処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
【0131】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
【0132】
なお、上記実施の形態におけるカラーコード処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、第一の方向に配列された二以上の取得対象であって、異なる属性値と対応付けられた取得対象である二以上の第一の取得対象と、二以上の第一の取得対象のうちのいずれかに対応する位置にそれぞれ配置された二以上のカラーコードと、が撮影された撮影画像を受け付ける受付部と、受付部が受け付けた撮影画像から、カラーコードと、カラーコードに対応する位置に配置された第一の取得対象との複数の組を検出し、検出した各組について、それぞれ、カラーコードに対応する情報と、第一の取得対象に対応する属性値と、を有する情報である読取情報を取得する取得部と、取得部が取得した読取情報を出力する出力部として機能させるためのプログラムである。
【0133】
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
【0134】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【0135】
図8は、上記プログラムを実行して、上記実施の形態によるカラーコード処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
【0136】
図8において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
【0137】
図9は、コンピュータシステム900の内部構成を示す図である。
図9において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
【0138】
コンピュータシステム900に、上記実施の形態によるカラーコード処理装置等の機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。
【0139】
プログラムは、コンピュータ901に、上記実施の形態によるカラーコード処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
【0140】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。