以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
図1は、本実施の形態における情報処理装置1のブロック図である。
情報処理装置1は、撮影部101、表示部102、文字列格納部103、文字列受付部104、取得部105、位置指定情報受付部106、撮影画像受付部107、画像格納部108、識別子受付部109、出力部110を備える。
情報処理装置1は、例えば、専用の装置や、携帯型のコンピュータや、タブレット型端末、いわゆるスマートフォン等の多機能携帯電話端末、携帯情報端末により実現される。
撮影部101は、被写体を撮影して撮影画像を取得する。撮影画像とは、撮影された画像である。被写体は、撮影される対象である。被写体は、撮影対象となる一以上の物体やその一部等であってもよく、撮影対処となる領域や、撮影範囲等と考えてもよい。撮影部101が撮影する被写体は問わない。被写体は、例えば、現場であってもよい。現場とは、一以上の物事や、作業等が行なわれている場所である。現場は、例えば、建築現場や工事現場である。被写体は、建築現場の一部であってもよい。例えば、被写体は、一のフロアを有する平屋や、二以上のフロアを有する高層建築物等の建築物の建築現場の一のフロアであってもよい。また、被写体は、例えば、一のフロアの一部の領域であってもよい。この場合の領域は、区画と考えてもよい。一のフロアの一部分の領域は、例えば、一の部屋や廊下等であってもよい。
撮影部101は、例えば、撮影時に、撮影候補の画像である撮影候補画像を撮影により取得するようにしても良い。撮影時とは、例えば、撮影画像の撮影が可能な時間である。撮影時は、例えば、撮影を行なう時点(例えば、シャッターを切る時点)と、撮影を行なう時点の前や後の時間とで構成される期間である。撮影を行なう時点の前や後の時間は、例えば、撮影部101が撮影可能な状態となってからの、撮影を行なう時点の前や後の時間と考えてもよい。撮影時は、撮影が行なわれる撮影期間等と考えてもよい。例えば、撮影部101は、ユーザ等の指示に応じて撮影画像を撮影可能な状態となった場合に、撮影候補画像の撮影を開始する。また、例えば、撮影部101は、ユーザ等の指示に応じて撮影画像を撮影できない状態となった場合に、撮影候補画像の撮影を終了する。撮影候補画像は、被写体や、被写体の撮影する範囲を決定するための候補として用いられる画像である。撮影候補画像は、例えば、撮影範囲をモニタリングするために撮影された画像であるモニタ用画像である。また、撮影候補画像は、例えば、撮影範囲や撮影のアングル等を確認したり決定したりするために表示される画像と考えてもよい。撮影候補画像は、通常は動画像であるが、静止画像であってもよい。例えば、予め決められた一定または不定のタイミングで連続して撮影される複数の静止画像であっても良い。
撮影部101は、例えば、撮影を行なう指示等を、図示しない操作受付部等から受け付けた場合に、撮影を行なって撮影画像を取得する。撮影部101が一の撮影画像を取得する処理は、例えば、蓄積される撮影画像のデータを取得する処理と考えてもよい。撮影部101は、撮影候補画像の一つを撮影画像として取得してもよく、撮影候補画像とは別に撮影を行なって撮影画像を取得してもよい。撮影画像は、通常、撮影候補画像以上の画素数を有する画像である。通常、一の撮影候補画像が表示されている際に、撮影を行なって取得された撮影画像と、この一の撮影候補画像とは、同じ撮影範囲を撮影した画像となる。ただし、撮影のタイムラグ等で、同じ撮影範囲を撮影した画像とならない場合がある。なお、撮影部101が撮影画像と、撮影候補画像とを撮影により取得する構成は、例えば、通常のデジタルスチルカメラ等のいわゆるライブビューや、電子ビューファインダー等の技術として公知の技術であるため、ここでは詳細な説明は省略する。
撮影部101は、例えば、CCDやCMOS等の撮像素子を備えたデジタルスチルカメラや、ビデオカメラ等のカメラや、カメラモジュールで実現可能である。
撮影画像のファイル形式等は問わない。撮影画像は、通常、静止画像であるが、動画像であってもよい。撮影画像は、モノクローム画像であってもよく、カラー画像であってもよい。撮影画像の画素数や解像度等は問わない。
撮影部101は、撮影画像を撮影した時刻の情報を、図示しない時計や、NTP(ネットワーク・タイム・プロトコル)サーバ(図示せず)等から取得しても良い。
表示部102は、撮影部101が撮影した撮影候補画像を表示する。表示部102は、例えば、図示しないモニタ等に撮影候補画像を表示する。表示部102は、例えば、撮影部101による撮影画像の撮影時に、撮影候補画像を表示する。例えば、表示部102は、撮影画像を撮影する前や、撮影直後等に、撮影候補画像を表示する。表示部102は、例えば、撮影のモニタリングのために撮影候補画像を表示する。
また、表示部102は、撮影候補画像を表示する代わりに、あるいは、撮影候補画像の表示に加えて、撮影部101が撮影した撮影画像を、撮影した後(例えば、直後)に図示しないモニタ等に表示するようにしてもよい。撮影した後に表示部102が表示する撮影画像は、いわゆるプレビュー画像と考えてもよい。
表示部102は、例えば、文字列格納部103に格納されている複数の文字列を、撮影画像に対応付ける文字列の候補として表示してもよい。例えば、表示部102は、文字列格納部103に格納されている複数の文字列を選択するためのリストメニュー等を表示してもよい。例えば、表示部102は、文字列格納部103に格納されている複数の文字列を配置した複数のリスト項目を有するリストメニュー等を表示してもよい。また、表示部102は、撮影候補画像を表示している間や、撮影画像を表示している間に、このような文字列の候補を表示してもよい。表示部102は、例えば、複数の文字列、例えば、リストメニュー等を、撮影候補画像上(あるいは、撮影画像上)に重ねて表示してもよい。重ねる際には、画像の透過度が0%以外となるよう合成してもよい。表示部102は、例えば、このような文字列の候補、例えば、文字列を選択するためのリストメニューを、図示しない操作受付部等が受け付けたユーザの指示に応じて表示してもよい。
コードとは、例えば、バーコード等の一次元コードや、QRコード(登録商標)等の二次元コードや、カラーコード等である。カラーコードとは、例えば、複数の色の配列が任意の情報と対応づけられたコードである。カラーコードは、例えば、カラーバーコードやカメレオンコード等とも呼ばれる場合がある。本実施の形態のコードは、例えば、コードの画像を意味すると考えてもよい。コードは、例えば、情報を表現するパターン画像と考えてもよい。コードからは、コードに対応付けられた情報が読み取り可能である。コードと対応づけられた情報は、例えば、コード識別子である。コード識別子は、コードに埋め込まれた情報と考えてもよい。コード識別子は、例えば、予め決められた処理等を行なうことでコードから読み取られる。コード識別子は、例えば、一以上の文字で構成される。コード識別子は、例えば、一以上の文字で表される略号や記号である。ここでの文字は、数字等も含むと考えてもよい。なお、カラーコードについては、公知技術であるため、ここでは詳細な説明は省略する。カラーコードについては、例えば、以下の特許文献2を参照されたい。特許文献2:特開2010−033034号公報(第1頁、第1図等)。
表示部102は、例えば、後述する取得部105が取得した文字列やコードを配置した撮影画像を、撮影画像の撮影時に表示してもよい。例えば、表示部102は、後述する取得部105が取得した文字列やコードを、デフォルトで指定された位置に配置した撮影候補画像を表示する。例えば、表示部102は、後述する取得部105が取得した文字列やコード、具体的には文字列やコードの画像を、後述する位置指定情報受付部106が受け付けた位置指定情報が示す位置に配置した撮影候補画像を表示する。また、表示部102は、上記と同様に、文字列格納部103に格納されている複数の文字列を撮影画像上に表示したり、取得部105が取得した文字列やコードを配置した撮影画像を、位置指定情報が示す位置やデフォルトで指定された位置等に、表示するようにしてもよい。
なお、既に、文字列やコードが撮影候補画像や、撮影画像に配置されている場合において、後述するする位置指定情報受付部106が、この文字列及びコードの少なくとも一方に対して位置指定情報を受け付けた場合、表示部102は、位置指定情報を受け付けた文字列またはコードの少なくとも一方を、この位置指定情報が示す位置に配置した撮影候補画像を表示するようにしてもよい。このようにして、表示部102は、文字列やコードの配置の変更をおこなってもよい。
なお、表示部102は、撮影候補画像を表示する代わりに、あるいは、撮影候補画像の表示に加えて、撮影部101が撮影した撮影画像を撮影した直後に表示するようにしてもよい。例えば、表示部102は、図示しないモニタ等に撮影画像を表示する。
表示部102は、ディスプレイデバイスを含むと考えても含まないと考えても良い。表示部102は、ディスプレイデバイスのドライバーソフトまたは、ディスプレイデバイスのドライバーソフトとディスプレイデバイス等で実現され得る。
文字列格納部103には、複数の文字列が格納される。例えば、文字列格納部103には、撮影画像に対応付けられる文字列の候補となる複数の文字列が格納される。例えば、文字列格納部103には、撮影画像の被写体に関する文字列の候補となる複数の文字列が格納される。例えば、文字列格納部103には、撮影画像の被写体を示す文字列の候補となる複数の文字列が格納される。
文字列格納部103には、撮影部101により撮影される被写体に対応づけられる文字列の候補となる複数の文字列が格納される。例えば、撮影部101が撮影する被写体が建築現場である場合、文字列格納部103に格納される複数の文字列は、例えば、撮影部101が撮影する建築現場の場所を特定する文字列の複数の候補であってもよい。建築現場の場所を特定する文字列は、例えば、建築現場内の領域等を特定する情報と考えてもよい。建築現場の場所を特定する文字列は、例えば、場所を、記号等ではなく、ユーザが読むことで場所を理解可能な自然言語等で記述された文字列の情報であることが好ましい。文字列格納部103に格納される文字列は、例えば、ユーザ等により、予め蓄積された文字列である。
文字列格納部103に格納される文字列は、例えば、図示しない受信部等が、図示しないサーバ等からネットワーク等を介してダウンロードして蓄積した文字列であっても良い。また、ユーザが、後述する文字列受付部104等から入力した文字列であってもよい。
文字列格納部103は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
文字列受付部104は、撮影部101を用いた撮影時に、文字列を受け付ける。撮影時に受け付けるということは、例えば、表示部102が撮影候補画像を表示している間や、撮影直後に、撮影画像を表示している間に、文字列を受け付けることと考えてもよい。
文字列受付部104が受け付ける文字列は、例えば、撮影部101が撮影する撮影画像について受け付ける文字列である。例えば、文字列受付部104が受け付ける文字列は、文字列の受け付け後に撮影部101が撮影する撮影画像について受け付けた文字列であってもよく、文字列を受け付ける直前に撮影部101が撮影した撮影画像について受け付けた文字列であってもよい。撮影画像について受け付けた文字列は、撮影画像に対応付けられる文字列や、撮影画像に関連する文字列と考えてもよい。撮影画像について受け付けた文字列は、例えば、撮影画像のタイトルであってもよく、撮影画像に対するコメント等であってもよい。撮影画像について受け付けた文字列は、例えば、撮影画像に撮影された被写体に対応する文字列(例えば、被写体に関連する文字列)であってもよい。撮影画像に撮影された被写体に対応する文字列とは、例えば、被写体の名称を示す文字列や、被写体に対するコメントである。撮影画像が、例えば、一の場所を撮影した撮影画像である場合、文字列受付部104が受け付ける文字列は、例えば、撮影画像の撮影場所や、被写体となる場所を示す文字列、例えば、場所を示す文字列や、場所を示す略号等の記号であってもよい。
文字列受付部104が、文字列をどのように受け付けるかは問わない。例えば、文字列受付部104は図示しないキーボードやマイクロフォン等の入力デバイスを介して入力された文字列を受け付けても良い。マイクロフォンを介して入力された文字列とは、例えば、マイクロフォンと関して入力された音声から音声認識により取得された文字列である。
文字列受付部104は、例えば、文字列格納部103に格納された複数の文字列のうちの、ユーザにより選択された一以上の文字列を受け付けても良い。例えば、文字列受付部104は、文字列格納部103に格納されている撮影画像に対応付けられる文字列の候補となる複数の文字列のうちの、ユーザにより選択された一以上の文字列を受け付けても良い。例えば、上述したような、表示部102が文字列の候補として表示している文字列格納部103に格納されている複数の文字列のうちの一以上の文字列を選択する操作を受け付けた場合に、この選択された文字列を受け付けるようにしてもよい。例えば、表示部102が、上述したように、文字列格納部103に格納されている複数の文字列を選択するためのリストメニュー等を表示している場合において、図示しない操作受付部等が、ユーザが表示しているリストメニューの一以上のリスト項目を選択する操作(例えば、リスト項目をクリックしたり、タップしたりする操作等)を受け付けた場合に、文字列受付部104は、この選択されたリスト項目に対応する文字列を受け付けるようにしてもよい。なお、複数の文字列を配置したリストメニューを表示する構成や、リストメニューの一以上のリスト項目を選択する操作を受け付ける構成等については、公知技術であるため、詳細な説明は省略する。
ここでの文字列の受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け等である。文字列の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。文字列受付部104は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
取得部105は、撮影画像受付部107が受け付けた撮影画像について、文字列を取得する。取得部105が撮影画像について取得する文字列とは、例えば、撮影画像を識別する文字列や、撮影画像を示す文字列や、撮影画像に対応する文字列である。取得部105は、例えば、撮影部101を用いた撮影時に文字列受付部104が受け付けた文字列を、この撮影時に撮影部101により撮影されて撮影画像受付部107が受け付けた撮影画像について取得する。
また、取得部105は、撮影画像受付部107が受け付けた撮影画像について、コードの識別子であるコード識別子を取得する。取得部105が取得するコード識別子は、例えば、取得部105が上記で取得した文字列について取得したコード識別子である。取得部105が上記で取得した文字列とは、例えば、撮影画像受付部107が受け付けた文字列である。取得部105が文字列について取得するコード識別子は、例えば、文字列を用いて取得されるコード識別子や、文字列に対応するコード識別子である。取得部105は、例えば、文字列格納部103や図示しない格納部に予め格納されている文字列と、コード識別子との複数の組から、上記で取得した文字列に対応するコード識別子を取得しても良い。ここでの予め格納されている文字列は、例えば、文字列格納部103に格納されている文字列である。例えば、文字列格納部103に、上述した複数の文字列のそれぞれに対応付けられたコード識別子を更に格納しておくようにし、上述したようなユーザの選択に応じてこの複数の文字列のうちの一以上の文字列を文字列受付部104が受け付けた場合に、この一以上の文字列に対応するコード識別子を、取得部105が文字列格納部103から取得するようにしても良い。また、例えば、取得部105は、上記で取得した文字列から、予め決められたアルゴリズム等を利用して、文字列に対応するコード識別子を取得してもよい。予め決められたアルゴリズムは、例えば、ハッシュ関数である。また、文字列を識別子を構成する記号に変換するための予め用意された変換テーブル等を用いた文字列の変換による取得であってもよい。
例えば、撮影画像受付部107が受け付けた撮影画像が建築現場等の現場を撮影した画像である場合や、撮影画像から取得される文字列が建築現場の場所を示す文字列である場合等において、取得部105が取得するコード識別子は、建築現場の識別子(以下、現場識別子と称す)であってもよい。
現場識別子は、例えば、一以上の建築現場を特定可能な識別子である。例えば、現場識別子は、建築現場の名称や、建築現場の住所等を有する情報や、建築現場に対して割り当てられた文字列である。この文字列は、数字や記号等を含んでいてもよい。
現場識別子は、例えば、一の建築現場の複数の場所を個別に特定することが可能な識別子である。例えば、現場識別子は、一の建築現場の複数の場所の名称や、複数の場所に対してそれぞれ割り当てられた文字列である。
現場識別子は、例えば、一の建築現場を特定するグループ識別子と、一の建築現場が有する複数のフロアをそれぞれ特定するフロア識別子とを有する識別子であってもよい。グループ識別子は、例えば、上述したような建築物を特定可能な識別子である。例えば、グループ識別子は、建築現場の名称や、建築現場に割り当てられた記号等の文字列である。建築現場の名称は、例えば、マンション名や、ビルディング名等の建築物の名称である。また、建築現場の名称は、建築現場の住所等であってもよい。また、フロア識別子は、フロアの名称(例えば、一階、二階等)や、フロアに対して割り当てられた記号等の文字列である。この文字列は、数字や記号等を含んでいてもよい。例えば、現場識別子は、先頭のp文字(pは1以上の整数)が、個々の現場を表す文字列(例えば記号)であり、次のq文字(qは1以上の整数)が、個々のフロアを表す文字列(例えば記号)である全文字数が、p+q文字以上の識別子である。
また、現場識別子は、例えば、一の建築現場を特定するグループ識別子と、一の建築現場が有する複数のフロアをそれぞれ特定するフロア識別子と、一の建築現場が有する複数のフロア内の複数の領域をそれぞれ特定する領域識別子と、を有する識別子であってもよい。領域識別子は、例えば、領域の名称(例えば、103号室、居間、第一会議室等)やや、領域に割り当てられた記号等の文字列である。この文字列は、数字や記号等を含んでいてもよい。例えば、現場識別子は、先頭のp文字(pは1以上の整数)が、個々の現場を表す文字列(例えば記号)であり、次のq文字(qは1以上の整数)が、個々のフロアを表す文字列(例えば記号)であり、次のr文字(rは1以上の整数)が、個々の領域を示す文字列(例えば記号)である全文字数が、p+q+r文字以上の識別子である。
なお、取得部105が取得するコード識別子が、図示しないコード識別子と現場識別子との複数の組を有する情報等によって、現場識別子と対応付けられたコード識別子であってもよく、このような場合、実質的に取得部105が取得するコード識別子が、現場識別子であると考えてもよい。
また、ここでは、コード識別子が現場識別子である場合について説明したが、撮影画像が、例えば、建築現場を撮影した撮影画像である場合、文字列受付部104が受け付ける文字列が、現場識別子であってもよい。つまり、現場識別子を、撮影画像に対応する文字列として取得してもよい。
取得部105が取得するコード識別子は、ランダムに生成、あるいは、図示しない格納部に格納されている二以上のコード識別子等の中からランダムに取得されたコード識別子であってもよい。
また、取得部105が取得するコード識別子は、ユーザ等により図示しない操作受付部等を介して入力されたコード識別子であってもよい。
また、取得部105は、上記で取得したコード識別子に対応するコードを更に取得しても良い。ここで取得するコードは、コードの画像と考えてもよい。例えば、取得部105は、予め図示しない格納部に予め格納されているコード識別子とコードとの一以上の組から、上記で取得したコード識別子に対応するコードを取得しても良い。また、取得部105は、上述した文字列格納部103に、文字列と、コード識別子と、このコード識別子に対応するコードとの一以上の組を有する情報を予め格納しておくようにして、この情報から上記で取得した文字列に対応するコード識別子を取得する際に、更に、取得した文字列いに対応するコードを取得するようにしても良い。また、取得部105は、上記で取得したコード識別子に対応するコードを生成することでコードを取得してもよい。また、取得部105は、例えば、予め図示しない格納部に予め格納されているコード識別子とコードを生成するためのパラメータ(例えば、コードがカラーコードの場合、コードの配色を示す情報等)との一以上の組から、上記で取得したコード識別子に対応するコードを生成するためのパラメータを取得して、このパラメータを用いてコードを生成することで、コードを取得しても良い。なお、コード識別子から、一次元コードや二次元コードやカラーコード等のコードを取得する構成は、公知技術であるため、ここでは省略する。
なお、取得部105は、図示しない格納部に文字列と対応付けて予め格納されている一以上のコード(例えば、コードの画像)から、取得部105が取得した文字列に対応する一のコードを取得した後に、このコードを読み出すことで取得したコード識別子を、上記の撮影画像についてのコード識別子として取得しても良い。
なお、取得部105が、文字列やコードを取得した場合に、表示部102は、この文字列やコードを配置した撮影候補画像(または撮影画像)を、デフォルトで指定された位置や、後述する位置指定情報が示す位置等に、表示するようにしてもよい。
また、後述する出力部110が、撮影画像にコードを配置して出力しない場合等においては、取得部105は、コードを取得しなくても良い。
位置指定情報受付部106は、位置指定情報を受け付ける。位置指定情報受付部106は、例えば、ユーザから、図示しない入力デバイス等を介して位置指定情報を受け付ける。位置指定情報は、取得部105が取得した文字列及びコードの少なくとも一方の、撮影画像内における位置を指定する情報である。位置指定情報は、例えば、撮影画像内における座標を指定、あるいは座標を特定する情報である。また、位置指定情報は、取得部105が取得した文字列及びコードの少なくとも一方の、撮影画像内のエリアを指定する情報であってもよい。例えば、エリアを指定する情報は、例えば、撮影画像の四辺のいずれか一つ(例えば、下辺、右辺等)や、四隅のいずれか一つ(右上隅、左下隅等)を指定する情報であってもよい。例えば、位置指定情報受付部106は、文字列及びコードのそれぞれについて個別に位置指定情報を受け付けても良く、文字列及びコードの組について位置指定情報を受け付けても良い。
位置指定情報受付部106は、文字列やコードに対して、位置指定情報を受け付ける。一の文字列やコードに対して、位置指定情報を受け付けるということは、例えば、一の文字列やコードの配置する位置を指定する位置指定情報を受け付けることや、一の文字列やコードの移動先を指定する位置指定情報を受け付けることであると考えてもよい。位置指定情報を受け付けた文字列やコードは、例えば、位置指定情報が示す位置に配置される対象となる文字列やコード、あるいは、位置指定情報が示す位置に移動される文字列やコードである。位置指定情報受付部106は、既に、配置される位置が決まっている文字列やコードに対して、位置指定情報を受け付けても良く、位置が指定されていない文字列やコードに対して、位置指定情報を受け付けても良い。例えば、位置指定情報受付部106は、表示部102が表示する撮影候補画像(あるいは撮影画像)上に既に配置されている文字列やコードに対して位置指定情報を受け付けても良く、表示部102が表示する撮影候補画像(あるいは撮影画像)上に配置しようとする文字列やコードに対して位置指定情報を受け付けても良い。配置しようとする文字列やコードは、例えば、文字列受付部104が受け付ける文字列や、取得部105が取得する文字列やコードである。
位置指定情報受付部106は、例えば、表示部102が表示する撮影候補画像上の位置を指定する操作を受け付けた場合に、この位置に対応した撮影画像上の位置を示す位置指定情報を受け付ける。位置を指定する操作とは、例えば、位置を指定する対象となる文字列またはコードを選択する操作と、表示部102が表示する撮影候補画像上の一箇所をクリックする操作(表示部102が、タッチパネルを有している場合においては例えば、ドラッグする操作)との組合せや、既に撮影候補画像上に配置されている文字列または候補を、指定する位置までドラッグする操作である。かかることは、撮影候補画像の代わりに表示部102に撮影画像を表示されている場合においても同様である。
例えば、位置指定情報受付部106は、表示部102が表示する撮影候補画像上の位置を指定する操作を受け付けた場合に、この撮影候補画像の表示の前後に撮影された撮影画像について、この撮影画像と位置指定情報が示す位置との位置関係が、撮影候補画像と、位置を指定する操作により指定された位置との位置関係とが同じ位置関係となるような位置指定情報を受け付ける。例えば、位置指定情報受付部106は、ユーザが操作により指定した撮影候補画像上の座標に対応する撮影画像上の座標を指定する座標指定情報を受け付ける。対応する座標は、例えば、画像間のサイズ比等を補正した座標である。なお、位置指定情報受付部106が、撮影候補画像上のユーザにより指定された位置を示す情報を位置指定情報として受け付け、後述する出力部110等が、撮影候補画像に対応する撮影画像上の、この位置指定情報に対応する位置を示す情報を、この位置指定情報を用いて取得するようにしても良い。なお、かかることは、撮影候補画像を、撮影画像に置き換えて考えた場合においても同様である。
また、例えば、位置指定情報受付部106は、表示部102が表示する撮影画像上の位置を指定する操作を受け付けた場合に、この撮影画像上の指定された位置を示す位置指定情報(例えば、座標等)を受け付ける。
また、位置指定情報受付部106は、メニュー等から、位置指定情報を受け付けても良い。また、位置指定情報受付部106は、位置指定情報である座標を示す数値等を、入力デバイス等を介して受け付けても良い。
位置指定情報の入力手段は、キーボードやマウスやタッチパネル、メニュー画面によるもの等、何でも良い。位置指定情報受付部106は、キーボードやタッチパネル等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
なお、位置指定情報受付部106が、文字列及びコードの少なくとも一方に対して、位置指定情報を受け付けた場合に、表示部102は、位置指定情報を受け付けた文字列及びコードの少なくとも一方を、この位置指定情報が示す位置に配置した撮影候補画像(または撮影画像)を表示するようにしてもよい。例えば、既に文字列及びコードの少なくとも一方が配置された撮影候補画像(または撮影画像)が表示部102により図示しないモニタ等に表示されている場合において、文字列及びコードの少なくとも一方に対して位置指定情報受付部106が位置指定情報を受け付けた場合、表示部102は、受け付けた位置指定情報が示す位置に、文字列及びコードの少なくとも一方を移動させて配置した撮影候補画像(または撮影画像)を表示するようにしても良い。
撮影画像受付部107は、撮影画像を受け付ける。撮影画像受付部107は、例えば、撮影部101が取得した撮影画像を受け付ける。撮影画像受付部107は、例えば、撮影画像を受け付けるインターフェースや、コネクタ等であってもよい。また、例えば、撮影部101がいわゆる撮影モジュール等である場合、撮影画像受付部107は、この撮影モジュールから出力される撮影画像を受け付ける処理を行なう処理部等と考えてもよい。
撮影画像受付部107は、受け付けた撮影画像を、図示しない格納部等に蓄積してもよい。また、撮影画像受付部107は、撮影部101から受け付けた撮影画像に関する時刻の情報を更に取得しても良い。撮影画像に関する時刻の情報をここでは時刻情報と呼ぶ。ここでの時刻は、年や日付等の情報を有していても良い。時刻情報は、例えば、撮影が行なわれた時刻や、撮影画像を受け付けた時刻である。時刻情報は、撮影時刻の情報と考えてもよい。例えば、撮影画像受付部107は、撮影画像を受け付ける際に、撮影部101から受け付けた時刻の情報を、時刻情報として、図示しない時計やNTPサーバ等から取得しても良い。また、撮影画像受付部107は、撮影部101が撮影画像を取得した際に図示しない時計等から取得した時刻の情報を、時刻情報として撮影画像とともに受け付けるようにしてもよい。
なお、本実施の形態においては、情報処理装置1が撮影部101を有している場合について説明したが、本発明においては、情報処理装置1が撮影部101を有しておらず、外部の撮影部101に相当する撮影部が取得した撮影画像を、撮影画像受付部107が受け付けるようにしてもよい。この場合の受け付けは、受信も含む概念である。また、この場合、外部の撮影部101に相当する撮影部(図示せず)が取得した撮影候補画像を図示しない操作受付部等が受け付けるようにしてもよい。
画像格納部108には、一または二以上の撮影画像が格納される。例えば、画像格納部108には、撮影画像受付部107が受け付けた撮影画像が格納される。例えば、画像格納部108には、後述する出力部110が出力する撮影画像が格納される。出力部110が出力する撮影画像は、例えば、撮影画像受付部107が受け付けた撮影画像に対して、この撮影画像について上述した取得部105が取得したコード及び文字列の少なくとも一方が配置された撮影画像である。出力部110が出力する撮影画像については、後述する。
画像格納部108には、一または二以上の撮影画像が、この撮影画像について取得部105が取得したコード識別子と文字列とが対応付けて格納される。例えば、画像格納部108には、撮影画像と、この撮影画像について取得部105が取得したコード識別子と、この撮影画像について取得部105が取得した文字列との組を有する一以上の情報が格納される。撮影画像について取得したコード識別子と文字列とは、例えば、撮影画像の撮影時に文字列受付部104が受け付けて取得部105が取得した文字列と、取得部105が取得したコード識別子である。
また、画像格納部108には、一又は二以上の撮影画像が、更に、時刻情報と対応付けて格納されてもよい。時刻情報は、例えば、撮影画像が撮影された時刻を示す情報である。時刻情報は、例えば、撮影部101が撮影画像の撮影時に図示しない時計等から取得した時刻の情報である。また、時刻情報は、例えば、撮影画像受付部107が撮影画像を受け付けた時刻の情報であってもよい。また、時刻情報は、画像格納部108に撮影画像が蓄積される際に、出力部110等が図示しない時計等を用いて取得した時刻の情報であってもよい。
なお、出力部110が、撮影画像等を画像格納部108に蓄積しない場合、この画像格納部108は省略してもよい。
識別子受付部109は、一以上のコード識別子または文字列を指定するための情報を受け付ける。コード識別子または文字列は、例えば、撮影画像について取得されたコード識別子または文字列である。コード識別子または文字列が現場識別子である場合、コード識別子または文字列を指定するための情報は、例えば、現場識別子を指定するための情報であってもよい。コード識別子または文字列を指定するための情報は、例えば、一以上のコード識別子自身や文字列自身である。コード識別子または文字列を指定するための情報は、例えば、グループ識別子、フロア識別子及び領域識別子のうちの少なくとも一以上の組である。例えば、識別子受付部109は、コード識別子または文字列を指定するための情報として、一のグループ識別子を受け付けるようにしてもよい。また、識別子受付部109は、コード識別子または文字列を指定するための情報として、例えば、識別子受付部109は、一のグループ識別子と、一のフロア識別子との一以上の組を受け付けるようにしても良い。また、識別子受付部109は、コード識別子または文字列を指定するための情報として、例えば、一のグループ識別子と、一のフロア識別子と、一の領域識別子との一以上の組を受け付けるようにしても良い。
識別子受付部109は、例えば、現場識別子と対応付けられた一のコードを読み取ることで、このコードに対応付けられた現場識別子を受け付けても良い。
一以上のコード識別子または文字列を指定するための情報、例えば、グループ識別子やフロア識別子や領域識別子等の入力手段は、キーボードやマウスやタッチパネルやメニュー画面によるもの等、何でも良い。識別子受付部109は、キーボードやタッチパネル等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
出力部110は、撮影画像を出力する。例えば、出力部110は、撮影画像受付部107が受け付けた撮影画像を出力する。例えば、出力部110は、撮影画像受付部107が受け付けた撮影画像と、取得部105がこの撮影画像について取得したコード識別子及び文字列と、を対応付けて出力してもよい。
出力部110は、例えば、撮影画像受付部107が受け付けた撮影画像と、この撮影画像に関する時刻の情報と、取得部105がこの撮影画像について取得したコード識別子及び文字列と、を対応付けて出力してもよい。例えば、出力部110は、時刻情報と、撮影画像と、コード識別子と、文字列と、を対応付けて画像格納部108に蓄積してもよい。出力部110は、例えば、撮影画像に関する時刻の情報である時刻情報を取得し、この時刻情報と、撮影画像と、取得部105がこの撮影画像について取得したコード識別子及び文字列と、を対応付けて出力してもよい。出力部110は、例えば、上述したような撮影画像受付部107が撮影画像とともに撮影部101から受け付けた時刻情報や、撮影画像を受け付けた際に撮影画像受付部107が取得した時刻情報を、撮影画像受付部107等から取得して出力する。また、出力部110は、撮影画像受付部107から撮影画像を取得した時刻や、後述するようなコードや文字列を配置した撮影画像を取得した時刻等を示す時刻情報を、図示しない時計等から取得して、この時刻情報を出力してもよい。
出力部110は、例えば、上記の撮影画像受付部107が受け付けた撮影画像の出力の代わりに、撮影画像受付部107が受け付けた撮影画像に対して、この撮影画像について取得部105が取得したコード及び文字列の少なくとも一方を配置した撮影画像を出力してもよい。例えば、出力部110は、コード及び文字列の少なくとも一方を配置した撮影画像を取得して(例えば、作成して)出力してもよい。コード及び文字列の少なくとも一方が配置された撮影画像とは、例えば、コードの画像及び文字列の画像の少なくとも一方が配置された撮影画像である。コードの画像及び文字列の画像の少なくとも一方が配置された撮影画像とは、撮影画像にコードの画像及び文字列の画像の少なくとも一方が合成された撮影画像である。この合成時に適用される合成モード(乗算モード、オーバーレイモード)等や、透過度等は問わない。
例えば、出力部110は、位置指定情報が示す位置に、文字列とコードとの少なくとも一方を配置した撮影画像を出力する。また、例えば、出力部110は、デフォルト等で決められた位置に、文字列とコードとの少なくとも一方を配置した撮影画像を出力してもよい。例えば、出力部110は、撮影画像受付部107が受け付けた撮影画像に対して、この撮影画像について取得部105が取得したコード及び文字列の少なくとも一方を、位置指定情報受付部106が受け付けた位置指定情報が示す位置、あるいはデフォルト等で決められた位置に配置した撮影画像を作成して出力してもよい。
出力部110が、取得部105が取得したコード及び文字列のいずれを配置するかは問わない。例えば、いずれを配置するかは、例えば、予め決められていてもよい。例えば、いずれを配置するかは、ユーザにより予め指定されていてもよい。
なお、このような撮影画像受付部107が受け付けた撮影画像にコードや文字列を配置して作成した撮影画像は、撮影画像受付部107が受け付けた撮影画像の一態様であるとと考えられることから、このようなコードや文字列を配置した撮影画像も、撮影画像受付部107が受け付けた撮影画像と考えてもよい。
なお、上記の出力は、通常、画像格納部108への蓄積であるが、外部の装置や、外部の記憶媒体等への送信であってもよい。例えば、画像格納部108と同様の格納部の備えた外部のサーバ装置(図示せず)に、上記のような撮影画像、コード識別子、及び文字列等を有する情報を送信して、この情報を受信したサーバ装置が、受信した情報を格納部等に蓄積するようにしてもよい。
出力部110は、例えば、撮影画像を、撮影画像に対応付けられた現場識別子毎に、撮影画像に対応付けられた時刻情報を用いて時系列に配列して出力(例えば、表示)するようにしてもよい。時系列には配列して出力するということは、例えば、撮影画像を、対応付けられた時刻情報の昇順や降順等に配列(例えば、予め決められた方向や経路に沿って配列)して出力することである。かかることは、以下においても同様である。このような出力は、例えば、撮影画像が、現場識別子と対応付けて画像格納部108等に格納される場合に実行可能である。
出力部110は、例えば、識別子受付部109が一以上のコード識別子を指定するための情報を受け付けた場合に、この情報により指定されるコード識別子と対応付けられた撮影画像を、時系列に配列して出力(例えば、表示)してもよい。コード識別子を指定するための情報は、例えば、上述したように、一以上のコード識別子自身である。撮影画像と対応付けられたコード識別子が現場識別子である場合、コード識別子を指定するための情報は、例えば、現場識別子を指定するための情報であってもよい。
例えば、コード識別子が現場識別子である場合において、出力部110は、識別子受付部109がグループ識別子を受け付けた場合に、識別子受付部109が受け付けたグループ識別子を有する現場識別子と対応付けられた撮影画像を、時系列に配列して出力(例えば、表示)してもよい。
また、出力部110は、例えば、識別子受付部109がグループ識別子とフロア識別子識別子との組を受け付けた場合、受け付けた組のグループ識別子とフロア識別子識別子とを有する現場識別子が対応付けられた撮影画像を、時系列に配列して出力(例えば、表示)してもよい。
また、出力部110は、例えば、識別子受付部109がグループ識別子とフロア識別子と領域識別子との組を受け付けた場合、受け付けた組が有するグループ識別子とフロア識別子識別子と領域識別子とを有する現場識別子が対応付けられた撮影画像を、時系列に配列して出力(例えば、表示)してもよい。
なお、かかることは、例えば、識別子受付部109が、撮影画像と対応付けられた一以上の文字列を指定するための情報を受け付けた場合や、撮影画像と対応付けられた文字列が現場識別子である場合等においても同様である。
なお、上記で出力部110が出力する撮影画像は、撮影画像受付部107が受け付けた撮影画像であってもよく、上述したように出力部110が、撮影画像受付部107が受け付けた撮影画像に対して、コード及び文字列の少なくとも一方を配置した撮影画像であってもよい。また、出力部110が上記で出力する撮影画像は、例えば、画像格納部108に格納されている撮影画像であってもよい。例えば、出力部110が上記で出力する撮影画像は、例えば、出力部110が撮影画像受付部107が受け付けた撮影画像に対して、コード及び文字列の少なくとも一方を配置して画像格納部108に蓄積した撮影画像であってもよい。
なお、上記の出力は、通常、図示しないモニタ等を用いた表示や、印刷であるが、他の装置への送信や、図示しない格納部への蓄積や、外部の格納部への蓄積等であってもよい。
出力部110は、図示しない蓄積手段やモニタやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。出力部110は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、情報処理装置1の動作の一例について図2のフローチャートを用いて説明する。
(ステップS101)撮影部101は撮影候補画像の撮影を開始するか否かを判断する。例えば、図示しない操作受付部等が、撮影部101を撮影可能な状態とする指示等を受け付けた場合や、情報処理装置1の起動時等に、撮影を開始することを判断してもよい。撮影を開始する場合、ステップS102に進み、撮影を開始しない場合、ステップS115に進む。
(ステップS102)表示部102は、撮影部101が撮影する撮影候補画像を、順次、図示しないモニタ等に表示する。
(ステップS103)図示しない操作受付部等が、文字列を表示する操作を受け付けたか否かを判断する。受け付けた場合、ステップS104に進み、受け付けていない場合、ステップS114に進む。受け付けた場合、文字列格納部103に格納されている一以上の文字列、例えば、一以上の文字列のリストメニュー等(例えばドロップダウンメニュー等)を、撮影候補画像上に表示する。
(ステップS104)文字列受付部104は、ステップS103で表示された一以上の文字列の中から一の文字列を有す選択する操作を受け付けたか否かを判断する。例えば、一以上の文字列のリストメニューから、一の文字列が配置されたリスト項目を選択する操作を受け付けた場合、文字列受付部104は、このリスト項目に配置された文字列を選択する操作を受け付けたと判断する。一の文字列が選択されるということは、この文字列を、文字列受付部104が受け付けたことと考えてもよい。文字列を選択する操作を受け付けた場合、ステップS105に進み、受け付けていない場合、ステップS104に戻る。
(ステップS105)取得部105は、ステップS104で選択された文字列、つまり、文字列受付部104が受け付けた文字列を取得する。
(ステップS106)取得部105は、ステップS105で選択された文字列に対応付けられて文字列格納部103に格納されているコード識別子とコードとを取得する。例えば、取得部105は、コード識別子とコードとを読み出す。
(ステップS107)表示部102は、撮影部101が順次撮影する撮影候補画像であって、ステップS105で取得した文字列と、ステップS106で取得したコードとのそれぞれを、デフォルトで予め決められた場所に配置した撮影候補画像を、図示しないモニタ等に表示する。
(ステップS108)位置指定情報受付部106は、位置指定情報を受け付けたか否かを判断する。受け付けた場合、ステップS109に進み、受け付けていない場合、ステップS110に進む。
(ステップS109)表示部102は、ステップS108で受け付けた位置指定情報に応じて、ステップS107で表示した文字列及びコードの少なくとも一方を、表示位置を変更して表示する。
(ステップS110)撮影部101は、撮影を行なうか否かを判断する。例えば、撮影部101は、図示しない操作受付部等が、撮影画像を撮影する指示を受け付けたか否かを判断する。受け付けた場合、ステップS111に進み、受け付けていない場合、ステップS108に戻る。
(ステップS111)撮影部101は、撮影を行なって撮影画像を取得する。また、ここでは、撮影部101は、撮影時の時刻情報を図示しない時計等から取得する。
(ステップS112)撮影画像受付部107が、ステップS111において撮影部101が撮影した撮影画像と、この撮影画像に関する時刻情報とを受け付け、出力部110は、撮影画像受付部107が受け付けた撮影画像に、ステップS107で取得した文字列とコードとを配置した撮影画像を取得、例えば生成する。例えば、撮影画像に文字列とコードとの画像を合成する。文字列とコードとを配置する際には、例えば、デフォルトで決められた位置、あるいはステップS108で位置指定情報を受け付けている場合においてはこの位置指定情報が示す位置に、文字列とコードとを配置する。なお、文字列とコードとを撮影画像に配置しない場合、文字列とコードとを配置する処理は省略してもよい。また、文字列とコードとのいずれか一方のみを配置するようにしてもよい。また、出力部110は、ステップS112で撮影画像受付部107が受け受けた時刻情報も取得する。
(ステップS113)出力部110は、ステップS112で取得した撮影画像(ステップS112を省略した場合は、ステップS111で取得した撮影画像)と、この撮影画像に関する時刻情報と、ステップS105で取得した文字列と、ステップS106で取得したコード識別子とを出力する。例えば、出力部110は、これらの情報を対応付けて、画像格納部108に蓄積する。
(ステップS114)撮影部101は、撮影候補画像の撮影を終了するか否かを判断する。例えば、図示しない操作受付部等が撮影を終了する操作を受け付けた場合に、撮影候補画像の撮影を終了することを決定する。終了する場合、ステップS115に進み、終了しない場合、ステップS102に戻る。
(ステップS115)識別子受付部109は、一以上のコード識別子を指定する情報を受け付けたか否かを判断する。例えば、一のグループ識別子を受け付けたか否かを判断する。受け付けた場合、ステップS116に進み、受け付けていない場合、ステップS101に戻る。なお、
(ステップS116)出力部110は、ステップS115で受け付けたコード識別子を指定する情報に対応するコード識別子と対応付けられた撮影画像を、画像格納部108等から検出し、検出した撮影画像を、時系列に沿って配列して出力(例えば、表示)する。そして、ステップS101に戻る。なお、ステップS115及びステップS116においては、一以上のコード識別子を指定する情報を受け付けたか否かを判断して、撮影画像を出力する場合について説明したが、コード識別子の代わりに、文字列を指定する情報を受け付けたか否かを判断して、指定された文字列に対応する撮影画像を出力するようにしてもよい。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置1の具体的な動作について説明する。なお、ここでは、情報処理装置1が、撮影部101であるカメラモジュールを備えたいわゆるタブレット型端末である場合について説明する。
図3は、文字列格納部103に格納されている文字列等を管理する文字列管理表である。文字列管理表は、「文字列」、「コードID」、「コード」という属性を有している。「文字列」は、文字列であり、ここでは、建築現場の一の領域を示す文字列であるとする。「コードID」は、コード識別子である。コード識別子は、ここでは現場識別子であるとする。ここでは、コード識別子の先頭の三文字が、建築現場を示すグループ識別子であり、次の二文字が、フロアを示すフロア識別子であり、次の三文字が、領域識別子であるとする。「コード」は、コードであり、ここでは、文字列格納部103に格納されているコードの画像ファイルのファイル名を示しているものとする。図3の文字列管理表の「コード」の属性値が示すコードは、ここでは、カラーコードであるとする。文字列格納部103に格納されている文字列は、例えば、ユーザが撮影を予定している建築現場の場所を示す文字列であるとする。
ユーザが、例えば、一の建築現場において、情報処理装置1を起動させると、カメラモジュールである撮影部101は、撮影候補画像の撮影を開始し、表示部102は撮影した画像を図示しないモニタ等に表示する。ここでは一例として、撮影部101が撮影候補画像として動画像を撮影し、表示部102は撮影した動画像を構成するフレーム画像を順次更新しながら図示しないモニタ等に表示する。
図4は、表示部102が、情報処理装置1が有するモニタ40に撮影候補画像を表示している状態の一例を示す図である。なお、ここでは、モニタ40はその表面にタッチパネル(図示せず)を備えているものとする。また、撮影部101であるカメラモジュールのレンズ(図示せず)は、モニタ40が設けられている面の反対の面に設置されているものとする。
ここで、ユーザが、タッチパネル等を操作して、文字列を入力するためのリストメニューを表示するための予め決められた操作(例えば、リストメニューを表示するためのメニューを選択する操作等)を行なったとする。
表示部102は、この操作に応じて、図3に示したような文字列管理表の「文字列」の二以上の属性値を配置したメニュー項目を有するリストメニューを構成し、構成したリストメニューの画像を、撮影候補画像に重ねて表示する。
図5は、文字列を配置したメニュー項目を有するリストメニュー50の表示例を示す図である。なお、ここでは、リストメニュー50はいわゆるスクロールを行なうことによって、図3の文字列管理表の全ての「文字列」の属性値が表示可能なものであるとする。なお、文字列管理表の「文字列」の属性値等のデータが階層構造を有するものとし、表示部102が表示するリストメニュー50を、この階層構造に合わせた階層メニューとしてもよい。
ユーザが、図5に示したリストメニュー50において、被写体となる場所を示す文字列を有するリスト項目を選択したとする。例えば、リストメニュー50において、「ABCビル一階エントランス」という文字列が配置されたメニュー項目51を選択したとする。例えば、ユーザがこのメニュー項目51上を指でタッチ(例えば、タップ)したとする。
文字列受付部104は、ユーザによりタッチされたメニュー項目に配置されている文字列「ABCビル一階エントランス」を受け付ける。ここでの受付けは文字列の入力の受付けと考えてもよい。
取得部105は、この文字列受付部104が受け付けた文字列「ABCビル一階エントランス」を取得する。また、図3に示した文字列管理表から、この文字列「ABCビル一階エントランス」と対応付けられた「コードID」の属性値であるコード識別子「ABC1F001」と、「ABCビル一階エントランス」と対応付けられた「コード」の属性値と一致するファイル名のコード(ここでは、コードの画像)である「P0001.png」を取得する。
表示部102は、取得部105が取得した文字列「ABC1F001」と、ファイル名が「P0001.png」であるコードの画像を、順次表示している撮影候補画像上の予め決められた位置にそれぞれ表示する。
図6は、取得部105が取得した文字列61とコード62とを配置した撮影候補画像の表示例を示す図(図6(a))、及び撮影候補画像に配置されるコードであるカラーコード62の一例を示す図(図6(b))である。文字列61及びコード62が配置される場所を示す情報は、例えば、文字列61やコード62の一点の座標、例えば、左上隅上等の座標や、文字列61やコード62の中心の座標等である。
この具体例においては、例えば、図6(b)に示すようなカラーコード62が用いられる。このカラーコード62は、複数の色が、マトリクス上に配列されたコードである。例えば、このカラーコード62は、カメレオンコードとも呼ばれる。ここでは、カラーコード62から読み出される情報は、カラーコード62の識別子(以下、コード識別子と称す)であるとする。ここでは、一例として、文字列格納部103に格納されている異なる文字列それぞれ貼付されているカラーコード301は、色の配列等が異なるカラーコードであり、互いに異なるコード識別子が対応付けられているものとする。
図7は、カラーコード62の位置を変更させるための操作を行なっている状態を示す図(図7(a))、及び操作を終了した直後の状態を示す図(図7(b))である。
ここで、例えば、ユーザがデフォルトの位置に表示されたカラーコード62の表示位置が好ましくないと考え、図7(a)に示すように、例えば、モニタ40に表示されているカラーコード62を指先等で押さえて、撮影候補画像上の任意の位置にドラッグすることで、カラーコード62を移動させたとする。モニタ40上に配置された図示しないタッチパネルは、指で押さえられた位置の情報、例えば座標を取得し、位置指定情報受付部106は、この座標が、カラーコード62が表示されている領域内の座標であることから、位置を変更する対象が、カラーコード62であると判断する。そして、カラーコード62上から指を離したとすると、モニタ40上に配置された図示しないタッチパネルは、指が離された位置の情報、例えば座標を取得し、位置指定情報受付部106は、この位置の情報(例えば、座標)を有する位置指定情報であって、移動対象が、カラーコード62が位置を変更する対象であることを示す位置指定情報を取得する。
そして、表示部102は、図7(b)に示すように、この位置指定情報が示す位置に、カラーコード62を配置して表示する。
また、仮に、モニタ40に表示されている文字列61をドラッグする操作が行なわれると、カラーコード62の場合と同様に、位置指定情報受付部106は、文字列61について、位置指定情報を受け付け、表示部102は、この位置指定情報が示す位置に文字列を配置して表示する。ただし、ここでは、文字列61の移動が行なわれなかったとする。
ユーザが、撮影部101を用いた撮影を行なうために、図示しない操作受付部等に対して予め決められた操作を行なうと、撮影部101は、撮影を行なって、撮影画像を取得する。取得した撮影画像はここでは静止画像であるとする。また、撮影部101は、撮影画像を撮影した時刻を示す時刻情報を、図示しない時計等から取得する。取得した時刻情報は、「2015/12/08 14:05」であるとする。
撮影画像受付部107は、撮影部101が取得した撮影画像を受け付ける。また、撮影画像受付部107は、撮影画像とともに、時刻情報、ここでは、撮影された時刻を示す時刻情報を、撮影部101から受け付ける。
出力部110は、撮影画像受付部107が取得した撮影画像に、上記で取得部105が取得した文字列61及びコード62を配置して合成した撮影画像を取得する。例えば、表示部102が表示している撮影候補画像における文字列61及びコード62がそれぞれ配置されている位置を示す座標を取得し、取得した座標を、それぞれ、撮影画像上の座標に換算し、換算して得られた座標に上記で取得した文字列61及びコード62を配置した撮影画像を取得する。座標の換算は、例えば、撮影候補画像の画素数と、撮影画像の画素数との比や、撮影候補画像と撮影画像との縦横比の違い等に応じて行なわれる。これにより、文字列61が、撮影画像上のデフォルトで指定された位置に配置され、コード62が、位置指定情報が示す位置に配置された撮影画像が、取得部105により取得される。なお、表示部102が表示している画像が、撮影画像である場合、上記の座標の換算等は行なわなくても良い。
図8は、出力部110が取得した撮影画像を示す図である。なお、ここでは、出力部110が、撮影画像に文字列61及びコード62を配置した撮影画像を取得する場合について説明したが、出力部110が、撮影画像に文字列61及びコード62のいずれか一方だけを配置した撮影画像を取得するようにしてもよい。また、出力部110は、撮影画像に文字列61とコード62とのいずれも配置しないようにしてもよい。
また、出力部110は、撮影画像受付部107が撮影画像とともに受け付けた時刻情報を取得する。
出力部110は、上記で取得した文字列61及びコード62を配置した撮影画像と、この撮影画像について撮影画像受付部107から取得した時刻情報と、取得部105が取得した文字列「ABCビル一階エントランス」とコード識別子「ABC1F001」とを出力する。ここでは、これらの情報を対応付けて、画像格納部108に蓄積する。
図9は、画像格納部108に格納された撮影画像と文字列とコード識別子とを管理する画像管理表である。画像管理表は、「画像」、「文字列」、「コードID」、「時刻」という属性を有している。「画像」は、文字列とコードとが配置された撮影画像である。ここでは、撮影画像のファイル名を示している。ファイル名は、例えば、予め決められたルール(例えば、連番を付与するルール)等にしたがって付与されたものであるとする。「文字列」は、撮影画像について取得部105が取得した文字列である。「コードID」は、撮影画像について取得部105が取得したコード識別子である。「時刻」は、撮影画像に関する時刻情報である。ここでは、「時刻」の属性値の降順に、各行(レコード)がソートされているものとする。ここでは、1行目のレコード(行)が、図8に示した撮影画像を有する新たに蓄積されたレコードであるとする。
ここで、ユーザが撮影候補画像の撮影を終了し、撮影済の撮影画像を表示するために、図示しない操作受付部等に対して操作を行なって、例えば、図10に示すような入力画面70を表示させ、この入力画面70から、「グループ識別子」の入力フィールド71に「ABC」、「フロア識別子」の入力フィールド72に「1F」を入力したとする。そして、表示ボタン74を押したとすると、識別子受付部109は、入力フィールド71及び入力フィールド72に入力されたグループ識別子「ABC」及びフロア識別子「1F」を受け付ける。
出力部110は、識別子受付部109が受け付けたグループ識別子「ABC」と、フロア識別子「1F」とを結合した検索キー「ABC1F」を作成し、図9に示した画像管理表において、「コードID」の属性値の先頭の五文字が、この検索キー「ABC1F」と一致するレコード(行)を検出し、検出したレコードの「画像」の属性値が示すファイル名の撮影画像を画像格納部108から読み出し、読み出した撮影画像を、対応するレコードの「時刻」の属性値を用いて、時系列に配列して出力する。ここでは、例えば、読み出した撮影画像を、対応するレコードの「時刻」の属性値の降順に配列して、モニタ40に表示する。ここでは、撮影画像の下に、対応するレコードの「時刻」の属性値、及び「文字列」の属性値も表示する。
図11は、出力部110による時系列に配列した撮影画像80の表示例を示す。
なお、ここでは、検出されたレコードの撮影画像を同じ列に配列したが、検出されたレコードの撮影画像を、「コードID」の属性値毎に異なる列となるよう時系列に配列して表示してもよい。
また、ユーザが、仮に、図10に示した入力画面70を表示させ、この入力画面70から、「グループ識別子」の入力フィールド71に「ABC」、「フロア識別子」の入力フィールド72に「1F」、「領域識別子」の入力フィールド73に「001」を入力したとする。そして、表示ボタン74を押したとすると、識別子受付部109は、入力フィールド71、入力フィールド72及び入力フィールド73に入力されたグループ識別子「ABC」、フロア識別子「1F」及び領域識別子「001」とを受け付ける。
出力部110は、識別子受付部109が受け付けたグループ識別子「ABC」と、フロア識別子「1F」と領域識別子「001」とを結合した検索キー「ABC1F001」を作成し、図9に示した画像管理表において、「コードID」の属性値の先頭の八文字が、この検索キー「ABC1F001」と一致するレコード(行)を検出し、検出したレコードの「画像」の属性値が示すファイル名の撮影画像を画像格納部108から読み出し、読み出した撮影画像を、対応するレコードの「時刻」の属性値を用いて、時系列に配列して出力する。ここでは、例えば、読み出した撮影画像を、対応するレコードの「時刻」の属性値の降順に配列して、モニタ40に表示する。ここでは、撮影画像の下に、対応するレコードの「時刻」の属性値、及び「文字列」の属性値も表示する。
図12は、出力部110による時系列に配列した撮影画像80の表示例を示す。
以上、本実施の形態によれば、撮影時に被写体等についての文字列を受け付けることで、撮影した画像と、文字列と、コード識別子と、を容易に対応付けることができる。
また、本実施の形態によれば、例えば、撮影した画像に対応付けられた文字列と、コード識別子が示すコードとを配置した撮影画像を取得することができる。
(実施の形態2)
本実施の形態は、撮影画像内から、撮影画像についての文字列と、コード識別子とを取得して、これらを撮影画像と対応付けるようにしたものである。
図13は、本実施の形態における情報処理装置2のブロック図である。
情報処理装置2は、撮影部201、撮影画像受付部202、取得部203、画像格納部204、識別子受付部205、及び出力部206を備える。
情報処理装置2は、例えば、専用の装置や、サーバ装置、携帯型のコンピュータや、タブレット型端末、いわゆるスマートフォン等の多機能携帯電話端末、携帯情報端末により実現される。
撮影部201は、被写体を撮影して撮影画像を取得する。撮影部201としては、例えば、上記実施の形態の撮影部101と同様のものが用いられる。ここでの被写体や、撮影画像については、上記実施の形態と同様である。
撮影部201は、例えば、一以上の文字列と、一以上のコードとの少なくとも一方が配置された被写体を撮影する。ここでの被写体は、例えば、上記実施の形態1の被写体と同様の、物体や、撮影対象となる領域や撮影範囲等である。被写体に配置された文字列は、例えば、被写体についての文字列である。被写体に配置されたコードは、例えば、被写体についてのコードや、被写体についてのコード識別子と対応付けられたコードである。ここでのコードとしては、例えば、上記実施の形態1のコードと同様のコードが用いられる。
被写体にコードが配置されるということは、例えば、コードが、被写体や、被写体となる領域に配置された物体等に貼付されることや、印刷、あるいは描画されていることである。例えば、コードが被写体や物体に貼付されるということは、例えば、コードが印刷されたシールやシートが、被写体や物体に貼付されることであっても良い。コードが配置された被写体は、例えば、コードが配置された看板やシートやプレート等の表示物が配置された撮影対象となる領域や、コードが配置された建築物である。コードが被写体や物体に配置されるということは、被写体である撮影の対象となる領域に、コードが印刷、貼付、または記載された表示物が架けられていることであってもよい。また、コードが配置されるということは、例えば、一のユーザが手で保持しているコードが貼付あるいは印刷された表示物が、被写体となる建築現場等の現場に存在していることであってもよい。かかることは、被写体に配置された文字列についても同様である。
例えば、撮影部101は、被写体として一以上の文字列と一以上のコードとの少なくとも一方が配置された建築現場を撮影してもよい。例えば、撮影部101は、一以上の文字列と一以上のコードとが配置された看板やパネル等が配置された建築現場を撮影してもよい。この場合の文字列またはコードに対応するコード識別子は、現場識別子であってもよい。
なお、後述する撮影画像受付部202が、撮影部201以外の装置等で撮影された撮影画像を受け付ける場合、撮影部201は省略してもよい。例えば、情報処理装置2がサーバ装置である場合、外部の撮影装置等において撮影されて送信された撮影画像を、撮影画像受付部202が、ネットワークや専用通信回線等を介して受信してもよい。
また、撮影部201は、上述した撮影部101と同様に、撮影画像を撮影した時刻等を示す時刻情報を、更に取得するようにしてもよい。
撮影画像受付部202は、撮影画像を受け付ける。撮影画像受付部202は、例えば、一または二以上の文字列の画像を有する撮影画像を受け付ける。文字列の画像を有する撮影画像とは、例えば、文字列を撮影されている撮影画像である。また、撮影画像受付部202は、例えば、一または二以上のコードの画像を有する撮影画像を受け付けてもよい。コードの画像を有する撮影画像は、コードが撮影されている撮影画像である。撮影画像受付部202は、例えば、一以上の文字列の画像と、一以上のコードの画像とを有する撮影画像を受け付けることが好ましい。
撮影画像受付部202は、例えば、撮影部201が撮影した撮影画像を受け付ける。撮影画像受付部202は、撮影部201と同様の機能や構成等を有する外部の撮影装置(図示せず)が取得した撮影画像を受け付けるようにしても良い。
なお、撮影画像受付部202は、撮影部201から撮影画像を受け付けるとともに、この撮影画像の撮影時刻等を示す時刻情報等を取得しても良い。また、撮影画像受付部202は、撮影部201から撮影画像を受け付けた時刻を示す時刻情報を、図示しない時計等から取得しても良い。この時刻情報は、撮影画像を撮影した時刻を示す情報と考えてもよい。
取得部203は、撮影画像受付部202が受け付けた撮影画像について、文字列と、コードの識別子であるコード識別子とを取得する。取得部203は、例えば、ユーザ等から文字列の入力やコード識別子等の入力を受け付けることなく、撮影画像受付部202が受け付けた撮影画像撮影画像から自動的に、この撮影画像についての文字列やコード識別子を取得する。
例えば、取得部203は、撮影画像受付部202が受け付けた撮影画像が有する文字列の画像に対応する文字列を取得する。例えば、撮影画像受付部202が受け付けた撮影画像が一以上の文字列の画像を有する画像である場合、取得部203は、撮影画像受付部202が受け付けた撮影画像内の文字列の画像に対して文字認識処理を行なうことで、文字列を取得する。文字列を取得するということは、例えば、テキストデータを取得することや、文字列を構成する文字の文字コードを取得することである。取得部203は、例えば、撮影画像受付部202が受け付けた撮影画像内において、OCR等の文字認識処理を用いて、文字列の画像を検出して、検出した文字列の画像に対応する文字列を取得する。なお、撮影画像から文字認識処理を行なうことで撮影画像が有する文字列の画像に対応する文字列を取得する文字認識処理等は、例えば、OCR等の技術として公知であるため、ここでは詳細な説明は省略する。撮影画像が有する文字列の画像が現場識別子を示す文字列の画像である場合、取得部203はこの文字列の画像から現場識別子を取得する。
なお、取得部203は、撮影画像内の予め決められた条件を満たす位置に存在する文字列の画像についてのみ文字認識処理を行なって、文字列を取得するようにしてもよい。例えば、取得部203は、撮影画像内のコードの画像が配置されている領域と同じ区切られた領域や、撮影画像内のコードが配置されている物体と同じ物体等に配置されている文字列の画像に対してからのみ、文字列を取得するようにしても良い。また、取得部203は、撮影画像内の予め指定された背景色の領域から文字列を取得しても良い。物体は、例えば、領域を検出したり、パターンマッチングや特徴量の検出等を行なうことで検出可能である。また、例えば、取得部203は、撮影画像内のコードの画像が配置されている領域との距離が予め決められた距離以下である文字列の画像や、予め決められた方向に位置する文字列の画像からのみ、文字列を取得するようにしても良い。
また、取得部105は、撮影画像受付部107が受け付けた撮影画像内のコードの画像を認識して、認識したコードに対応するコード識別子を取得する。例えば、撮影画像受付部202が受け付けた撮影画像が、一以上のコードの画像を有する撮影画像である場合、取得部203は、撮影画像受付部202が受け付けた撮影画像内のコードの画像を認識して、コードに対応するコード識別子を取得する。撮影画像においてコードの画像を認識して、検出したコードに対応付けられたコード識別子を取得する処理は、静止画像や動画像から一次元コードや二次元コードやカラーコード等を検出し、検出したコードに対応付けられた識別子等の情報を取得する処理等として公知であるため、ここでは詳細な説明は省略する。また、撮影画像内に、複数のコードの画像が含まれている場合においては、それぞれのコードの画像を検出して、検出した各コードに対応するコード識別子を取得するようにすればよい。例えば、一の画像から複数のカラーコードを検出して対応する情報を取得する処理は公知の技術であるため、この技術を利用して複数のカラーコードにそれぞれ対応するコード識別子を取得することが可能である。撮影画像が有するコードの画像が現場識別子を示すコード識別子と対応付けられたコードの画像である場合、取得部203はこの文字列の画像から現場識別子を取得する。
なお、取得部203は、撮影画像が有する文字列の画像から取得した文字列に対応付けられたコード識別子を、上記実施の形態1の取得部105が、文字列受付部104が受け付けた文字列を取得して、この文字列に対応するコード識別子を取得する場合と同様の処理を行なうことで取得するようにしてもよい。
取得部203は、撮影画像から、コード識別子と文字列とを取得する場合、いずれを先に取得するかは問わない。
画像格納部204には、一または二以上の撮影画像が格納される。例えば、画像格納部204には、撮影画像受付部202が受け付けた撮影画像が格納される。例えば、画像格納部204には、後述する出力部206が出力する撮影画像が格納される。
画像格納部204には、一または二以上の撮影画像が、この撮影画像について取得部203が取得したコード識別子と文字列とが対応付けて格納される。例えば、画像格納部204には、撮影画像と、この撮影画像について取得部203が取得したコード識別子と、この撮影画像について取得部203が取得した文字列との組を有する一以上の情報が格納される。
また、画像格納部204には、一又は二以上の撮影画像が、時刻情報と対応付けて格納されてもよい。時刻情報は、例えば、撮影画像が撮影された時刻を示す情報である。時刻情報は、例えば、撮影部201が撮影画像の撮影時に図示しない時計等から取得した時刻の情報である。また、時刻情報は、例えば、撮影画像受付部202が撮影画像を受け付けた時刻の情報であってもよい。また、時刻情報は、画像格納部204に撮影画像が蓄積される際に、出力部206等が図示しない時計等を用いて取得した時刻の情報であってもよい。
なお、出力部206が、撮影画像等を画像格納部204に蓄積しない場合、この画像格納部204は省略してもよい。
識別子受付部205は、一以上のコード識別子または文字列を指定するための情報を受け付ける。識別子受付部205の構成や、識別子受付部205が実行する処理等については、識別子受付部109と同様であるため、ここでは詳細な説明は省略する。
出力部206は、撮影画像を出力する。例えば、出力部206は、撮影画像受付部202が受け付けた撮影画像を出力する。出力部206は、例えば、撮影画像受付部202が受け付けた撮影画像と、取得部203が取得したコード識別子及び文字列と、を対応付けて出力してもよい。
出力部206は、例えば、撮影画像に関する時刻の情報である時刻情報を取得し、この時刻情報と、撮影画像受付部202が受け付けた撮影画像と、この撮影画像に関する時刻の情報である時刻情報と、取得部203がこの撮影画像について取得したコード識別子及び文字列と、を対応付けて出力してもよい。例えば、出力部206は、撮影画像に関する時刻の情報である時刻情報を取得し、この時刻情報と、撮影画像と、コード識別子及び文字列と、を対応付けて出力する。撮影画像に関する時刻の情報とは、上述した出力部110の撮影画像に関する時刻の情報と同様であるため、ここでは詳細な説明は省略する。
また、出力部206は、例えば、撮影画像が現場識別子であるコードまたは文字列と対応付けられて出力される場合、上記実施の形態1の出力部110と同様に、撮影画像を、撮影画像に対応付けられた現場識別子毎に、撮影画像に対応付けられた時刻情報を用いて時系列に配列して出力してもよい。このような出力は、例えば、撮影画像が、現場識別子と対応付けて画像格納部108等に格納される場合に実行可能である。
出力部206は、例えば、出力部110と同様に、識別子受付部205が一以上のコード識別子を指定するための情報(例えば、現場識別子や、グループ識別子や、フロア識別子や領域識別子等)を受け付けた場合に、この情報により指定されるコード識別子と対応付けられた撮影画像を、時系列に配列して出力(例えば、表示)してもよい。かかることは文字列でも同様である。なお、かかる処理は、出力部110が行なう処理と同様の処理であるため、ここでは、詳細な説明は省略する。
出力部206の構成は、出力部110と同様であるため、ここでは詳細な説明は省略する。
次に、情報処理装置2の動作の一例について図14のフローチャートを用いて説明する。
(ステップS201)撮影部201は撮影画像の撮影を行なうか否かを判断する。例えば、図示しない操作受付部等が撮影を行なう指示(例えば、シャッターを切る指示等)を受け付けた場合等に、撮影を行なうことを判断してもよい。撮影を行なう場合、ステップS102に進み、撮影を行なわない場合、ステップS207に進む。
(ステップS202)撮影部201は、撮影を行なって撮影画像を取得する。また、ここでは、例えば、撮影を行なった時刻を示す時刻情報を、図示しない時計等から取得する。
(ステップS203)撮影画像受付部202は、ステップS202で撮影部201が取得した撮影画像と時刻情報とを受け付ける。
(ステップS204)取得部203は、ステップS203で撮影画像受付部202が受け付けた撮影画像に対して文字認識処理を行なって一以上の文字列を取得する。
(ステップS205)取得部203は、ステップS203で撮影画像受付部202が受け付けた撮影画像に対してコードを認識する処理を行なって、一以上のコード識別子を取得する。
(ステップS206)出力部206は、ステップS203で撮影画像受付部202が受け付けた撮影画像と時刻情報と、ステップS204で取得した文字列と、ステップS205で取得したコード識別子とを対応付けて出力する。例えば、出力部206は、これらを対応付けて画像格納部204に蓄積する。
(ステップS207)識別子受付部205は、一以上のコード識別子を指定する情報を受け付けたか否かを判断する。例えば、一のグループ識別子を受け付けたか否かを判断する。受け付けた場合、ステップS208に進み、受け付けていない場合、ステップS201に戻る。
(ステップS208)出力部206は、ステップS115で受け付けたコード識別子を指定する情報に対応するコード識別子と対応付けられた撮影画像を、画像格納部108等から検出し、検出した撮影画像を、時系列に沿って配列して出力(例えば、表示)する。そして、ステップS201に戻る。
なお、図14のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態における情報処理装置2の具体的な動作について説明する。なお、ここでは、情報処理装置1が撮影部101であるカメラモジュールを備えたいわゆるタブレット型端末である場合について説明する。
ユーザが一の建築現場の一の領域を、情報処理装置2の撮影部101を用いて撮影して、一の撮影画像を取得したとする。なお、この建築現場内の各領域には、建築現場の各領域を示す文字列と、各領域に対応する現場識別子であるコード識別子が対応付けられたコードが配置されたプレートを有する看板が設置されているものとする。ここでのコードはカラーコードであるとする。そして、ユーザは、建築現場の一の領域に設置されたこのような看板が写り込むよう、一の領域を情報処理装置2の撮影部101を用いて撮影したとする。また、撮影部101は、図示しない時計等から、撮影時刻を示す時刻情報を取得したとする。取得した時刻情報は、「2015/12/08 14:05」であるとする。
図15は、撮影部101が撮影した撮影画像150を示す図(図15(a))及び、撮影画像において認識された文字列の画像151aと、認識されたコードの画像152aとを示すための図(図15(b))である。撮影画像150には、図15に示すように、文字列151と、コード152とが配置されたプレート153を有するスタンド154が写っているものとする。
撮影画像受付部202は、撮影部201が取得した図15(a)に示した撮影画像と、時刻情報とを受け付ける。
取得部203は、図15(a)に示した撮影画像受付部202が受け付けた撮影画像において、OCR等の文字認識処理を行なって、図15(b)に示すように文字列の画像151aを検出して、この文字列の画像151aに対応する文字列である「ABCビル1Fエントランス」を取得する。
また、取得部203は、図15(a)に示した撮影画像受付部202が受け付けた撮影画像において、カラーコードを認識する処理を行なって、図15(b)に示すようにカラーコードの画像152aを検出して、このコードの画像152aに対応するコード識別子である「ABC1F001」を取得する。このコード識別子は、ここでは例えば、現場識別子であるとする。
出力部206は、撮影画像受付部202が受け付けた撮影画像及び時刻情報「2015/12/08 14:05」と、取得部203がこの撮影画像について取得した文字列「ABCビル1Fエントランス」及びコード識別子「ABC1F001」とを出力する。例えば、これらの情報を対応づけて画像格納部204に蓄積する。蓄積された情報は、例えば、上記実施の形態1の具体例において説明した図9と同様のものとなる。
なお、識別子受付部205が、一以上のコード識別子を指定する情報、例えば、現場識別子を指定する情報を受け付けた場合に、指定されたコード識別子に対応する撮影画像を表示する処理については、上記実施の形態1の具体例と同様であるため、ここでは説明を省略する。
以上、本実施の形態によれば、撮影画像から、この撮影画像についての文字列とコード識別子とを取得することができ、本実施の形態によれば、撮影時に被写体等についての文字列を受け付けることで、撮影した画像と、文字列と、コード識別子と、を容易に対応付けることができる。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(情報送信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりする情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、撮影画像を受け付ける撮影画像受付部と、撮影画像受付部が受け付けた撮影画像について、文字列と、コードの識別子であるコード識別子とを取得する取得部と、撮影画像と、取得部が取得したコード識別子及び文字列と、を対応付けて出力する出力部と、して機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図16は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータシステム900の一例を示す図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。なお、上記実施の形態による情報処理装置は、例えば、図5等に示す外観を有していてもよい。
図16において、コンピュータシステム900は、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムや、アプリケーションプログラム、システムプログラム、及びデータが記憶されるフラッシュメモリ等のROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、タッチパネル914と、無線通信モジュール915と、MPU911、ROM912等を相互に接続するバス916とを備える。なお、無線通信モジュール915に代えて、有線通信モジュールを備えていてもよい。また、タッチパネル914に代えて、ディスプレイと、マウスやキーボード等の入力デバイスとを備えていてもよい。また、本実施の形態においては、情報処理装置は、図示しないカメラ、あるいはカメラモジュールを有していても良い。
コンピュータシステム900に、上記実施の形態による情報処理装置の機能を実行させるプログラムは、無線通信モジュール915を介してROM912に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、ネットワークから直接、ロードされてもよい。
プログラムは、コンピュータシステム900に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。