以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における運搬システムのブロック図である。運搬システム1は、2台の無人飛行体10aおよび10bと、情報処理装置20と、3台の撮影装置30a~30cとを備えている。情報処理装置20と、撮影装置30a~30cとは、無線や有線のネットワーク等を介して情報を通信可能となるよう接続されている。なお、無人飛行体10の数は、2台に限定されるものではなく、1または2台以上であればよい。また、撮影装置30の数は、2台に限定されるものではなく、1または2台以上であればよい。なお、2台の無人飛行体10aおよび10bを区別しない場合は、それぞれを単に無人飛行体10と呼ぶ場合がある。同様に、3台の撮影装置30a~30cを区別しない場合は、それぞれを単に無人飛行体10と呼ぶ場合がある。
情報処理装置20は、受信部201と、飛行体識別子取得部202と、荷物識別子取得部203と、構成部204と、蓄積部205と、格納部206と、処理部207と、出力部208とを備えている。
撮影装置30は、カメラ301と、送信部302とを備えている。
図2は、本実施の形態の無人飛行体10の正面図(図2(a))、および飛行体コード101等のコードとして利用可能なカラーコードの一例を示す図(図2(b))である。である。図2においては、無人飛行体10が、1つの荷物40を保持している状態を示している。
無人飛行体10は、無人で飛行する飛行体である。無人飛行体10は、例えば、1以上の回転翼を有しており、この回転翼の回転によって飛行する飛行体である。ただし、無人飛行体10の構成等はこの構成に限定されるものではない。無人飛行体10としては、例えば、いわゆるドローンと呼ばれる無人飛行体が利用可能である。無人飛行体10の動力源は、通常、電気であるが、それ以外のものであっても良い。無人飛行体10は、例えば、指定された出発地から、指定された目的地まで自律飛行する無人飛行体である。無人飛行体10の飛行経路等は指定されていても良く、指定されていなくても良い。無人飛行体10は、無線操縦されるものであっても良く、無線操縦できないものであっても良い。無人飛行体10については、公知技術であるため、ここでは詳細な説明は省略する。
無人飛行体10は、荷物40を保持して運搬する。無人飛行体10が運搬する荷物40はどのような荷物40であっても良い。1台の無人飛行体10が運搬する荷物の数は、1つであっても良く、2以上であっても良い。無人飛行体10がどのように荷物40を保持するかは問わない。例えば、無人飛行体10が把持部(図示せず)を有するようにし、この把持部で運搬する荷物を把持しても良い。また、無人飛行体10がフック(図示せず)を有するようにし、このフックで運搬する荷物をつり下げるようにしても良い。ここでは、無人飛行体10aが保持する荷物40を荷物40a、無人飛行体10bが保持する荷物40を荷物40bとしている。ただし、荷物40aおよび40bを区別しない場合は、それぞれを単に荷物40と呼ぶ場合がある。
無人飛行体10の表面には、飛行体コード101が配置されている。飛行体コード101は、飛行体識別子と対応付けられたコードである。飛行体コード101に対応付けられた飛行体識別子とは、例えば、飛行体コード101から読み取り可能な飛行体識別子である。飛行体識別子は、無人飛行体10を識別する識別子である。飛行体識別子は、無人飛行体10を識別可能な情報であれば、どのような情報であっても良く、例えば、無人飛行体10の製造番号であっても良く、無人飛行体10に割り当てられた管理用の文字列や数字列等であっても良い。例えば、飛行体識別子は、産業用ドローン機体認識番号等の、公的機関に登録した無人飛行体の識別子であっても良い。無人飛行体10の表面に配置された飛行体コードは、この無人飛行体10を識別する飛行体識別子と対応付けられたコードである。なお、プレート等に配置された飛行体コード101が無人飛行体10につり下げられていたり、ポール等で無人飛行体10に取付けられていてもよい。
ここでのコードとは、例えば、図や、図形、図柄によって情報を表すものである。コードにより表される情報が、コードに対応付けられた情報である。コードにより表される情報は、例えば、文字列等の情報である。ここでの文字列は、識別子も含むと考えてもよい。ここでの文字列は、数字等も含む概念である。かかることは、以下においても同様である。コードにより表される情報は、例えば、コードから読取られる情報である。コードは、例えば、光学的に読取り可能なコードである。光学的に読取り可能なコードとは、例えば、カメラ等の撮影装置や、コードリーダ等を用いて読み取ることが可能なコードである。コードは、例えば、バーコード、二次元バーコード、QRコード(登録商標)、カラーコード等である。図2(b)は、カラーコード100の一例を示している。図2(b)においては、黒色の背景に、黒以外の複数の色を有する領域がマトリクス状に配列されたカラーコードを示している。カラーコード100とは、例えば、色の配列で情報を表すコードである。カラーコード100は、例えば、カラーバーコードやカメレオンコードと呼ばれることもある。かかることは、後述する荷物コード401についても同様である。
飛行体コード101は、どのように無人飛行体10の表面に配置されていても良い。例えば、飛行体コード101が、無人飛行体10の表面に印刷されたり転写されていても良い。また、飛行体コード101が印刷されたシートやシール等が、無人飛行体10の表面に接着されていても良く、飛行体コード101が印刷されたプレート等が無人飛行体10の表面に取付けられていてもよい。
飛行体コード101は、無人飛行体10の表面のどの位置に配置されていても良いが、飛行中、あるいは着陸した状態で、地上や建築物等から視認しやすい位置に配置されていることが好ましい。例えば、飛行体コード101は、無人飛行体10の上面や底面に配置されていないことが好ましい。また、ローターや羽根等の後ろに隠れない位置に配置されていることが好ましい。なお、一の無人飛行体10には、飛行体コード101が一つ配置されていても良く、同じ飛行体識別子と対応付けられた飛行体コード101が複数配置されていてもよい。
無人飛行体10が保持して運搬する荷物40の表面には、荷物コード401が配置されている。荷物コード401は、荷物識別子と対応付けられたコードである。荷物コードに対応付けられた荷物識別子とは、例えば、荷物コード401から読み取り可能な荷物識別子である。荷物識別子は、荷物40を識別する識別子である。荷物識別子は、荷物40を識別可能な情報であれば、どのような情報であっても良く、例えば、荷物40の商品番号等であっても良く、荷物40の管理用の文字列や数字列等であっても良い。また、荷物識別子は、荷物40の発送番号や、受注番号等であっても良い。ここでの番号は、文字列等を含んでいても良い。また、ここでの荷物識別子は、無人飛行体10が運搬する複数の荷物40で構成される荷物群に対して割当てられた発送番号等の識別子であってもよい。荷物コード401に対応する荷物識別子は、対応する荷物40の配送伝票や荷札情報等と対応付けられた識別子であっても良い。荷物40の表面に配置された荷物コードは、この荷物40や、この荷物40を含む荷物群を識別する荷物識別子と対応付けられたコードである。荷物コード401としては、例えば、上述した飛行体コード101と同様のコードが利用可能である。なお、飛行体コード101と荷物コード401とは、同じ規格のコードであっても良く、異なる規格のコードであっても良い。
荷物コード401は、どのように荷物40の表面に配置されていても良い。例えば、荷物コード401が、荷物40の表面に印刷されたり転写されていても良い。また、荷物コード401が印刷されたシートやシール等が、荷物40の表面に接着されていても良い。
荷物コード401は、荷物40の表面のどの位置に配置されていても良いが、飛行中、あるいは着地した状態で、地上から視認しやすい位置に配置されていることが好ましい。例えば、荷物コード401は、荷物の上面や底面に配置されていないことが好ましい。荷物40を運搬する無人飛行体10で隠れない位置に配置されていることが好ましい。一の荷物40には、荷物コード401が一つ配置されていても良く、同じ荷物識別子と対応付けられた荷物コード401が複数配置されていてもよい。なお、無人飛行体10に配置された一の飛行体コード101と、この無人飛行体10が運搬する1以上の荷物40に配置された荷物コード401とは、一の地点から同時に撮影可能な位置にそれぞれ配置されているようにすることが好ましい。
なお、ここで用いられる飛行体コード101および荷物コード401としては、一の画像内において、複数のコードが配置された領域が同時に検出可能な仕様を有しているコードを用いることが好ましい。
受信部201は、飛行体コード101と、1または2以上の荷物コード401とを含む領域を撮影した画像を受信する。受信部201は、例えば、無人飛行体10が荷物40を運搬している状況において撮影された1以上の画像を受信する。運搬している状況とは、運搬の出発時や、運搬の到着時の状況も含む概念である。例えば、受信部201は、無人飛行体10による荷物40の運搬の出発時の画像を受信する。運搬の出発時の画像は、例えば、運搬の出発時に撮影された画像である。以下、運搬の出発時の画像を、第一の画像と称す。また、受信部201は、無人飛行体10による荷物40の運搬の到着時の画像を受信してもよい。運搬の到着時の画像は、例えば、運搬の到着時に撮影された画像である。以下、運搬の到着時の画像を、第二の画像と称す。また、受信部201は、無人飛行体10の荷物40の運搬の途中の画像を受信してもよい。以下、運搬の途中の画像を第三の画像と呼ぶ。運搬の途中の画像は、例えば、運搬の途中において撮影された画像である。例えば、無人飛行体10の経由地において、荷物40を保持した無人飛行体10が撮影された画像を、運搬の途中において撮影された画像と考えてもよい。受信部201が受信する第三の画像は1以上であれば良く、複数であっても良い。例えば、受信部201は、例えば、運搬の途中の異なる位置で撮影された異なる複数の第三の画像を受信しても良い。受信部201は、撮影装置30が撮影した画像を、撮影した直後に受信することが好ましい。ただし、受信部201が、画像を受信するタイミングは問わない。
受信部201が受信する画像は、例えば、第一~第三の画像のうちの、いずれの画像であるかを識別可能な情報(例えば、識別子)が対応付けられた画像、または、第一~第三の画像のうちの、いずれの画像を撮影する撮影装置30等の装置が撮影した画像であるかを識別可能な情報(例えば、識別子)が対応付けられた画像であることが好ましい。識別可能な情報が対応付けられた画像は、例えば、識別可能な情報が付与された画像である。なお、第一の画像は、出発地で撮影された画像であって、後述する飛行体識別子取得部202および荷物識別子取得部203により、飛行体コード101と荷物コード401とが読み取られた画像と考えてもよい。同様に、第二の画像は、到着地で撮影された画像であって、飛行体コード101と荷物コード401とが読み取られた画像と考えてもよい。同様に、第三の画像は、運搬の途中で撮影された画像(例えば、経由地で撮影された画像)であって、飛行体コード101と荷物コード401とが読み取られた画像と考えてもよい。
第一~第三の画像を識別可能な情報は、例えば、画像を撮影した場所を識別する情報であってもよい。例えば、第一の画像を識別可能な情報は、撮影場所が運搬の出発地であることを識別する情報であっても良い。また、例えば、第二の画像を識別可能な情報は、撮影場所が運搬の到着地であることを識別する情報であっても良い。また、例えば、第一の画像を識別可能な情報は、撮影場所が運搬の途中の場所(例えば、経由地等)であることを識別するする情報であっても良い。
受信する画像が、第一~第三の画像のうちの、いずれの画像を撮影する撮影装置30等の装置が撮影した画像であるかを識別可能な情報は、画像を撮影した撮影装置30等の装置の識別子であっても良い。この場合、例えば、撮影装置30の識別子と、撮影装置30が運搬の出発時、運搬の到着時、および運搬の途中のいずれの時点の無人飛行体10を撮影する装置であるかを示す情報とを対応付けて有する複数の情報を用意しておくことで、この情報を用いて、受信した画像に対応付けられた撮影装置30の識別子から、受信した画像が、いずれの時の無人飛行体10を撮影する撮影装置30が撮影した画像であるかを特定でき、この画像が、第一~第三の画像のいずれの画像となるか判断することが可能となる。
このような画像に対応付けられた情報を用いることで、後述する構成部204等が、運搬の出発時の管理情報と、運搬の到着時の管理情報と、運搬の途中の管理情報とを区別して構成したりすることができる。
なお、このような第一~第三の画像を識別可能な情報は、例えば、撮影装置30が撮影した画像に付与して送信するようにすればよい。第一~第三の画像を識別可能な情報は、画像に埋め込まれていても良く、画像のファイル名等の情報として付加されていてもよい。
受信部201が受信する各画像は、動画像であっても良く、1以上の静止画像であっても良い。例えば、受信部201が受信する画像は、連続して撮影された複数の静止画像であってもよい。受信部201が受信する画像は、飛行体コード等が色を有するカラーコードである場合、カラー画像であることが好ましいが、他の場合は、モノクロームの画像であっても良い。受信部201が受信する画像のフォーマットや解像度等は問わない。
飛行体識別子取得部202は、受信部201が受信した画像内の飛行体コードの領域から、無人飛行体を識別する飛行体識別子を取得する。ここでの画像は、例えば、上述した第一~第三の画像の1以上である。例えば、飛行体識別子取得部202は、受信部201が受信した画像において、飛行体コードの領域を検出し、検出した飛行体コードの領域から、飛行体コードを読み取って、飛行体コードに対応する飛行体識別子を取得する。飛行体コードの領域とは、例えば、飛行体コードが写っている領域や、飛行体コードの画像の領域である。なお、飛行体識別子取得部202は、結果的に、画像内の飛行体コードの領域から、無人飛行体を識別する飛行体識別子を取得できればよい。例えば、飛行体識別子取得部202は、画像内において飛行体コードの領域だけを画像内から検出する必要はない。例えば、飛行体識別子取得部202は、画像から読み取り可能な1以上のコードの領域を検出し、検出した各領域からコードを読み取って、読み取った情報が飛行体識別子であった場合にこの飛行体識別子を取得しても良く、このような場合も、画像内の飛行体コードの領域から、飛行体識別子を取得したと考えてもよい。読み取った情報が飛行体識別子であるか否かはどのように判断してもよく、例えば、読み取った情報の少なくとも一部に飛行体識別子であることを示す文字列が含まれる場合に、読み取った情報が飛行体識別子であると考えてもよく、読み取った情報が、図示しない格納部等に格納された飛行体識別子管理表等が有する予め用意された1以上の飛行体識別子のいずれかと一致、あるいは対応する場合に、読み取った情報が飛行体識別子であると考えてもよい。
なお、画像内において飛行体コード等のコードの領域を検出する処理(例えば、コードの輪郭を検出する処理)は、公知技術であるため、ここでは詳細な説明は省略する。また、飛行体コード等のコードの領域から、コードを読み取って、コードに対応する情報を取得する処理は、公知技術であるため、ここでは詳細な説明は省略する。かかることは、後述する荷物コードの領域を検出する処理や、これらのコードの領域からコードを読み取る処理等に関しても同様である。なお、飛行体コードから読み取られる情報が飛行体コード識別子であってもよく、飛行体コードから読み取られる情報に、予め用意された対応表等を用いて対応付けられた情報が飛行体コード識別子であってもよい。かかることは、後述する荷物コードと荷物識別子との関係についても同様である。
荷物識別子取得部203は、受信部201が受信した画像内の荷物コードの領域から、荷物を識別する荷物識別子を取得する。ここでの画像は、例えば、上述した第一~第三の画像の1以上である。例えば、荷物識別子取得部203は、受信部201が受信した画像において、荷物コードの領域を検出し、検出した荷物コードの領域から、荷物コードを読み取って、荷物コードに対応する荷物識別子を取得する。荷物コードの領域とは、例えば、荷物コードが写っている領域や、荷物コードの画像の領域である。なお、荷物識別子取得部203は、結果的に、画像内の荷物コードの領域から、荷物を識別する荷物識別子を取得できればよい。例えば、荷物識別子取得部203は、画像内において荷物コードの領域だけを画像内から検出する必要はない。例えば、荷物識別子取得部203は、画像から読み取り可能な1以上のコードの領域を検出し、検出した各領域からコードを読み取って、読み取って得られた情報が荷物識別子であった場合にこの荷物識別子を取得しても良く、このような場合も、画像内の荷物コードの領域から、荷物識別子を取得したと考えてもよい。荷物識別子取得部203は、読み取った情報が荷物識別子であるか否かはどのように判断してもよく、例えば、読み取った情報の少なくとも一部に荷物識別子であることを示す文字列が含まれる場合に、読み取った情報が荷物識別子であると考えてもよく、読み取った情報が、図示しない格納部等に格納された荷物識別子管理表等が有する予め用意された1以上の荷物識別子のいずれかと一致、あるいは対応する場合に、読み取った情報が荷物識別子であると考えてもよい。荷物識別子取得部203は、一の画像内の複数の荷物コードの領域から、それぞれ、荷物識別子を取得してもよい。
なお、飛行体コード101と、荷物コード401とが同じ種類や同じ規格のコード(例えば、カラーコード等)である場合、飛行体識別子取得部202が、画像から読み取り可能な1以上のコードの領域を検出し、検出した各領域からコードを読み取って、読み取って得られた情報が飛行体識別子であった場合にこの飛行体識別子を取得し、荷物識別子取得部203が、画像から読み取り可能な1以上のコードの領域を検出し、検出した領域からコードを読み取って、読み取って得られた情報が飛行体識別子であった場合にこの飛行体識別子を取得する場合、飛行体識別子取得部202が画像から一以上のコードの領域を検出する処理と、荷物識別子取得部203が画像から一以上のコードの領域を検出する処理とを一の処理で実現しても良い。この場合、この処理を、飛行体識別子取得部202と荷物識別子取得部203とのいずれが行なうかは問わない。例えば、飛行体識別子取得部202が画像から検出した一以上のコードの領域を、荷物識別子取得部203が画像から検出した一以上のコードの領域としても用いてもよい。また、飛行体識別子取得部202が画像から検出した一以上のコードの領域から識別子を取得する処理と、荷物識別子取得部203が画像から検出した一以上のコードの領域から識別子を取得する処理とを一の処理で実現しても良い。例えば、飛行体識別子取得部202が画像から検出した一以上のコードの領域のコードを読み取って取得した識別子を、荷物識別子取得部203が画像から検出した一以上のコードの領域のコードを読み取って取得した識別子としても用いてもよい。
構成部204は、飛行体識別子と、1以上の荷物識別子との対応に関する管理情報を構成する。例えば、構成部204は、受信部201が受信した一の画像について、飛行体識別子取得部202が取得した飛行体識別子と、荷物識別子取得部203が取得した1以上の荷物識別子との対応に関する管理情報を構成する。この管理情報は、例えば、一の画像について取得された飛行体識別子と、1以上の荷物識別子と、を有する情報である。ここでの受信部201が受信した一の画像は、例えば、受信部201が受信した一の画像であってもよく、受信部201が受信した動画像のうちの一のフレーム画像または予め決められた長さの期間内に含まれる複数のフレーム画像であってもよい。
構成部204は、例えば、第一の画像から取得された飛行体識別子と、一以上の荷物識別子と、の対応に関する管理情報を構成する。この管理情報を、以下、出発時の管理情報と称す。また、構成部204は、例えば、第二の画像から取得された飛行体識別子と、1以上の荷物識別子と、の対応に関する管理情報を構成する。この管理情報を、以下、到着時の管理情報と称す。また、構成部204は、例えば、第三の画像から取得された飛行体識別子と、一以上の荷物識別子と、の対応に関する管理情報をさらに構成してもよい。この管理情報を、以下、運搬の途中の管理情報と称す。例えば、構成部204は、上述したような受信部201が受信した画像に付与された識別子等を用いることで、後述する構成部204は、構成する管理情報が、出発時の管理情報であるか、到着時の管理情報であるか、運搬の途中の管理情報であるかを判断することができる。
なお、構成部204は、構成した管理情報が、出発時の管理情報であるか、到着時の管理情報であるか、運搬の途中の管理情報であるかを識別しても良いが、識別しなくても良い。この場合、例えば、管理情報の蓄積順で、蓄積された管理情報が、出発時の管理情報であるか、到着時の管理情報であるか、運搬の途中の管理情報であるかを識別してもよい。
構成部204は、例えば、飛行体識別子取得部202、および荷物識別子取得部203が、それぞれ、受信部201が受信した画像について、飛行体識別子と、1以上の荷物識別子とを取得する毎に、取得した飛行体識別子と、1以上の荷物識別子と、場所識別子とを対応付ける管理情報を構成する。ただし、構成部204が管理情報を構成するトリガーやタイミング等はこれに限定されるものではない。構成部204は、飛行体識別子や、荷物識別子が取得された時刻を有する管理情報を構成しても良く、構成部204が管理情報を構成した時刻を有する管理情報を構成しても良い。
蓄積部205は、構成部204が取得した管理情報を蓄積する。例えば、蓄積部205は、管理情報を格納部206に蓄積する。ただし、蓄積部205の蓄積先は格納部206に限定されるものではない。蓄積部205は、例えば、出発時の管理情報と、到着時の管理情報とを対応付けて蓄積する。蓄積部205は、例えば、同じ飛行体識別子を有する出発時の管理情報と、到着時の管理情報と、を対応付けて蓄積してもよい。あるいは、蓄積部205は、例えば、飛行体識別子と1以上の荷物識別子との組が一致する出発時の管理情報と、到着時の管理情報と、を対応付けて蓄積してもよい。出発時の管理情報と、到着時の管理情報とを対応付けて蓄積する、ということは、例えば、出発時の管理情報と、到着時の管理情報とをデータベース等の一のレコードの異なる属性の情報として蓄積することである。また、構成部204や蓄積部205等が、1または2以上の出発時の管理情報と、1または2以上の到着時の管理情報とのそれぞれに、管理情報を識別するための識別子を付与するようにし、蓄積部205が、この識別子が付与された出発時の管理情報と到着時の管理情報とをそれぞれ蓄積するとともに、対応付けの対象となる出発時の管理情報と到着時の管理情報とにそれぞれ付与された識別子の組を有する対応関係を管理する情報を、蓄積部205がさらに蓄積することであっても良い。
蓄積部205は、さらに、運搬の途中の管理情報を、前記出発時の管理情報と、到着時の管理情報とに対応付けて蓄積してもよい。蓄積部205は、例えば、同じ飛行体識別子を有する出発時の管理情報、到着時の管理情報、および運搬の途中の管理情報を対応付けて蓄積してもよい。あるいは、蓄積部205は、例えば、飛行体識別子と1以上の荷物識別子との組が一致する出発時の管理情報、到着時の管理情報、および運搬の途中の管理情報を対応付けて蓄積してもよい。出発時の管理情報と、到着時の管理情報と、運搬の途中の管理情報とを対応付けて蓄積する、ということは、例えば、出発時の管理情報と、到着時の管理情報と、運搬の途中の管理情報とをデータベース等の1のレコードの異なる属性の情報として蓄積することである。また、構成部204や蓄積部205等が、1または2以上の出発時の管理情報と、1または2以上の到着時の管理情報と、1または2以上の運搬の途中の管理情報とのそれぞれに、管理情報を識別するための識別子を付与するようにし、蓄積部205が、この識別子が付与された出発時の管理情報と到着時の管理情報と運搬の途中の管理情報とをそれぞれ蓄積するとともに、蓄積部205が、対応付けの対象となる出発時の管理情報と到着時の管理情報と運搬の途中の管理情報とにそれぞれ付与された識別子の組を有する対応関係を管理する情報を、さらに蓄積することであっても良い。
なお、蓄積部205は、出発時の管理情報と、到着時の管理情報と、運搬の途中の管理情報とを区別したうえで、それぞれを対応付けて蓄積しても良く、区別せずに、例えば取得順に蓄積(追記)していくようにしても良い。例えば、一の画像から取得された飛行体識別子および荷物識別子を有する管理情報のうちの、同じ飛行体識別子と荷物識別子とを有する管理情報を、取得順に対応付けて蓄積してもよい。この場合、対応付けて蓄積された管理情報のうちの、最初に蓄積された管理情報を、出発時の管理情報、最後に蓄積された管理情報を最後の管理情報、最初と最後との間に蓄積された管理情報を、運搬の途中の管理情報と考えるようにしても良い。
格納部206には、構成部204が取得した管理情報が格納される。この管理情報は、蓄積部205により蓄積される。例えば、格納部206には、出発時の管理情報と、到着時の管理情報とが対応付けて格納される。格納部206には、同じ飛行体識別子を有する出発時の管理情報と、到着時の管理情報と、が対応付けて蓄積されてもよく、飛行体識別子と1以上の荷物識別子との組が一致する出発時の管理情報と、到着時の管理情報と、が対応付けて蓄積されてもよい。
格納部206には、例えば、出発時の管理情報と、到着時の管理情報と、運搬の途中の管理情報とが対応付けて格納されてもよい。格納部206には、例えば、同じ飛行体識別子を有する出発時の管理情報、到着時の管理情報、および運搬の途中の管理情報を対応付けて格納されても良く、飛行体識別子と1以上の荷物識別子との組が一致する出発時の管理情報、到着時の管理情報、および運搬の途中の管理情報が対応付けて格納されても良い。
格納部206は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
処理部207は、蓄積部205により蓄積された管理情報を用いて、予め決められた処理を行なう。例えば、予め決められた処理は、無人飛行体10の提供者に対する無人飛行体10の利用料の支払に関する処理である。例えば、処理部207は、飛行体識別子と1以上の荷物識別子との組が一致する出発時の管理情報と、到着時の管理情報とが、蓄積部205によって格納部206に蓄積された場合に、この飛行体識別子に対応する無人飛行体10の利用料を、この無人飛行体10の提供者に支払う処理である。この支払いの処理は、料金を無人飛行体10の提供者に支払うための情報を図示しない格納部に蓄積したり、料金の支払等を管理する図示しないサーバ装置等に送信する処理であってもよい。
なお、予め決められた処理は、支払いを行なう処理に限定されるものではない。例えば、予め決められた処理は、図示しない受付部等が受け付けた無人飛行体10の状況を問合せる要求に応じて、問合せを受けた無人飛行体10の最新の状況を示す情報を取得して取得する処理であっても良い。無人飛行体10の状況とは、例えば、無人飛行体10の飛行状況や、無人飛行体10による荷物40の運搬状況である。飛行状況を示す情報は、例えば、問合せを受けた無人飛行体10の飛行体識別子を有する最新の管理情報に対応する飛行状況を示す情報や、最新の管理情報に対応する場所を示す情報である。最新の管理情報に対応する飛行状況を示す情報は、最新の管理情報が、出発時の管理情報、到着時の管理情報、および運搬の途中の管理情報のうちのいずれであるかに応じて取得される情報である。例えば、最新の管理情報が出発時の管理情報である場合、処理部207は、最新の管理情報に対応する飛行状況を示す情報として、無人飛行体10が運搬に出発したことを示す情報を取得してもよい。また、例えば、最新の管理情報が運搬の途中の管理情報である場合、処理部207は、最新の管理情報に対応する飛行状況を示す情報として、無人飛行体10が運搬の途中であることや、経由地を通過したことを示す情報を取得してもよい。また、例えば、最新の管理情報が到着時の管理情報である場合、処理部207は、最新の管理情報に対応する飛行状況を示す情報として、無人飛行体10が、運搬先に到着したことを示す情報を取得してもよい。また、場所を示す情報は、例えば、最新の管理情報に含まれる飛行体識別子および荷物識別子を取得する際に用いられた画像を撮影した撮影装置30を識別する情報であってもよく、この撮影装置30が設置されている場所を示す情報(例えば、座標や住所等)であってもよい。ここでの要求は、例えば、問合せ対象となる無人飛行体10の飛行体識別子を有する情報である。なお、処理部207は、無人飛行体10による1以上の荷物40の運搬状況を問合せる要求として、飛行体識別子と、1以上の荷物識別子とを有する情報を受け付け、この飛行体識別子と、1以上の荷物識別子と一致する情報を有する管理情報に対応する運搬の状況を示す情報や、対応する場所を示す情報等を取得しても良い。この管理情報に対応する運搬の状況を示す情報や、対応する場所を示す情報は、例えば、上記の管理情報に対応する飛行状況を示す情報や、対応する場所を示す情報と同様の情報である。
出力部208は、蓄積部205により蓄積された管理情報に関連した出力を行なう。管理情報に関連した出力は、例えば、蓄積部205により蓄積された管理情報の少なくとも一部を有する出力である。また、管理情報に関連した出力は、例えば、上述した処理部207による処理結果の出力や、処理部207の指示に応じて行なわれる出力である。例えば、管理情報に関連した出力は、支払を指示する出力であっても良く、無人飛行体10の飛行状況を示す出力であっても良い。また、例えば、出力部208は、上記で処理部207が取得した無人飛行体10の状況を示す情報、例えば、運搬状況や、場所を示す情報を出力しても良い。
ここでの出力は、例えば、モニタへの表示、プロジェクターを用いた投影、プリンタへの印字、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。出力部208は、モニタやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。出力部208は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
カメラ301は、画像を撮影する。カメラ301が撮影する画像は、動画像であっても良く、静止画像であっても良い。カメラ301が撮影する画像は、カラー画像であって良く、グレースケール画像であっても良い。飛行体コード101および荷物コード401がカラーコードである場合、カメラ301としては、カラー画像を撮影する画像を用いる必要がある。
カメラ301は、例えば、飛行体コード101と、1以上の荷物コード401とを含む領域を撮影する。例えば、カメラ301は、飛行体コード101が配置された無人飛行体10と、無人飛行体10が保持する荷物コード401が配置された1以上の荷物40と、を含む領域を撮影する。
なお、各撮影装置30は、例えば、カメラ301が、飛行体コード101と、1以上の荷物コード401とを撮影可能な場所に設置される。なお、各撮影装置30は、ユーザが手で持って撮影を行なうことが可能な装置であってもよい。例えば、撮影装置30は、いわゆるカメラを有するスマートフォンや、タブレット型端末であってもよく、撮影した画像を送信する無線または有線の通信機能付カメラであってもよい。この場合、カメラの画像を撮影する部分が、カメラ301に相当し、通信機能を有する部分が、送信部302に相当すると考えてもよい。
カメラ301が撮影を行なうタイミングやトリガー等は問わない。例えば、カメラ301は、常時、動画像を撮影していても良く、予め決められた時間毎に静止画像や動画像を撮影していても良い。また、カメラ301は、図示しない受付部等が、ユーザ等から画像を撮影する操作を受け付けた場合に画像を撮影しても良い。また、撮影する画像が動画像である場合、図示しない受付部等が、ユーザ等から撮影を終了する操作を受け付けた場合に画像の撮影を中止してもよい。また、カメラ301が撮影可能な予め決められた領域内への無人飛行体10の侵入を検出する赤外線センサ等のセンサ(図示せず)等を設けるようにし、このセンサ等が無人飛行体10の侵入を検出した場合に、カメラ301は、予め決められた領域の撮影を開始しても良い。例えば、運搬の出発地に荷物40を保持した無人飛行体10の侵入を検出した場合に、この無人飛行体10の撮影を開始した場合、撮影される画像を、運搬の出発時の画像と考えてもよい。また、運搬の到着地に荷物40を保持した無人飛行体10の侵入を検出した場合に、この無人飛行体10の撮影を開始した場合、撮影される画像を、運搬の到着時の画像と考えてもよい。また、経由地等の運搬の途中となる場所に荷物40を保持した無人飛行体10の侵入を検出した場合に、この無人飛行体10の撮影を開始した場合、撮影される画像を、運搬の途中の画像と考えてもよい。この場合のカメラ301による撮影は、予め決められた時間が経過した時点で終了するようにしても良い。また、センサが、無人飛行体10が不在となったことを検出した時点で終了しても良い。
なお、カメラ301が撮影する画像が動画像や、連続して撮影される静止画像である場合等においては、上述した情報処理装置20が、画像から飛行体コードや荷物コード等を読み取った場合に、図示しない送信部等から、コードが読み取られたことを示す情報を、画像を送信した撮影装置30に送信するようにし、画像を送信した撮影装置30の図示しない受信部が、この情報を受信した場合に、この撮影装置30のカメラ301が画像を撮影を終了するようにしても良い。
送信部302は、カメラ301が撮影した画像を、情報処理装置20に送信する。送信部302は、カメラ301が撮影した日時を示す情報を、図示しない時計等から取得して、画像と対応付けて情報処理装置20に送信しても良い。カメラ301が撮影する画像が、第一の画像、すなわち運搬の出発時の画像である場合、送信部302は、図示しない格納部等に予め格納されている、送信する画像が第一の画像であることを示す情報(例えば、識別子)を、画像と対応付けて送信しても良い。また、カメラ301が撮影する画像が、第二の画像、すなわち、運搬の到着時の画像である場合、送信部302は、図示しない格納部等に予め格納されている、送信する画像が第二の画像であることを示す情報を、画像と対応付けて送信しても良い。また、カメラ301が撮影する画像が、第三の画像、すなわち、運搬の途中の画像である場合、送信部302は、図示しない格納部等に予め格納されている、送信する画像が第三の画像であることを示す情報を、画像と対応付けて送信しても良い。また、運搬の出発時の画像を撮影する撮影装置30の送信部302は、出発時の画像を撮影する撮影装置30であることを示す情報(例えば、識別子)または第一の画像であることを示す情報(例えば、識別子)を、画像と対応付けて送信し、運搬の到着時の画像を撮影する撮影装置30の送信部302は、到着時の画像を撮影する撮影装置30であることを示す情報または第二の画像であることを示す情報を、画像と対応付けて送信し、運搬の途中の画像を撮影する撮影装置30の送信部302は、途中の画像を撮影する撮影装置30であることを示す情報または第三の画像であることを示す情報を、画像と対応付けて送信しても良い。出発時の画像を撮影する撮影装置30であることを示す情報や、到着時の画像を撮影する撮影装置30であることを示す情報や、運搬の途中の画像を撮影する撮影装置30であることを示す情報は、撮影装置30の識別子であっても良い。
なお、カメラ301が撮影する画像が動画像である場合、送信部302は、カメラ301が撮影した画像を画像処理して移動体を検知する処理を行ない、移動体を検知した場合に、無人飛行体10を検知したと判断して、検知した直後や、直前の動画像や、一のフレーム画像等を、送信するようにしても良い。送信部302は、例えば、無線または有線の通信手段等で実現される。
なお、複数の撮影装置30のうちの一以上は、荷物40の運搬の出発時の無人飛行体10を撮影可能となる位置に配置されていることが好ましい。また、複数の撮影装置30のうちの一以上は、荷物40の運搬の到着時の無人飛行体10を撮影可能となる位置に配置されていることが好ましい。複数の撮影装置30のうちの一以上は、荷物40の運搬の途中の無人飛行体10を撮影可能となる位置に配置されていることが好ましい。
次に、本実施の形態の情報処理装置20の動作の一例について図3のフローチャートを用いて説明する。なお、ここでは、受信部201が撮影する画像が動画像である場合について説明する。
(ステップS101)受信部201は、荷物40の運搬の出発時の画像を撮影する撮影装置30から画像の受信を開始する。また、受信部201は、荷物40の運搬の到着時に撮影する撮影装置30から画像の受信を開始する。また、受信部201は、荷物40の運搬の途中の画像を撮影する撮影装置30から画像の受信を開始する。受信する画像には、例えば、運搬の出発時、運搬の到着時、および運搬の途中のいずれの時点に画像を撮影する撮影装置30が撮影した画像であるかを識別可能な情報が付与されており、この情報により、飛行体識別子取得部202や、荷物識別子取得部203、構成部204が、受信部201が受信する画像が上記のいずれの画像であるかを識別する場合について説明する。
(ステップS102)飛行体識別子取得部202は、受信部201が受信した荷物40の運搬の出発時の画像を撮影する撮影装置30が送信する画像から飛行体識別子が取得できたか否かを判断する。具体的には、出発時の画像を撮影する撮影装置30が送信する画像において、コードの領域を検出する処理を行ない、コードの領域が検出できた場合、検出した領域からコードを読み取って識別子を取得する処理を行う。識別子が取得できた場合、取得した識別子が、図示しない格納部等に予め用意された飛行体識別子のいずれか一つと一致するかを判断する。飛行体識別子と一致する識別子が取得できた場合、飛行体識別子が取得できたと判断して、ステップS103に進む。コードの領域が検出できなかった場合、検出したコードの領域から識別子が取得できなかった場合、または、取得した識別子と一致する飛行体識別子がなかった場合には、飛行体識別子が取得できなかったと判断してステップS106に進む。また、コードの領域が画像内に複数検出できた場合、飛行体識別子が取得できるまで、各領域について、上記の処理を行なう。
(ステップS103)荷物識別子取得部203は、ステップS101で受信した荷物40の運搬の出発時の画像を撮影する撮影装置30が送信する画像から一以上の荷物識別子が取得できたか否かを判断する。具体的には、出発時の画像を撮影する撮影装置30が送信する画像において、コードの領域を検出する処理を行ない、コードの領域が検出できた場合、検出した領域からコードを読み取って識別子を取得する処理を行う。識別子が取得できた場合、取得した識別子が、図示しない格納部等に予め用意された荷物識別子のいずれか一つと一致するかを判断する。荷物識別子と一致する識別子が取得できた場合、荷物識別子が取得できたと判断して、ステップS104に進む。コードの領域が検出できなかった場合、検出したコードの領域から識別子が取得できなかった場合、または、取得した識別子と一致する荷物識別子がなかった場合には、荷物識別子が取得できなかったと判断してステップS106に進む。また、コードの領域が画像内に複数検出された場合、検出された全ての領域について、上記の処理を行ない、画像内の全ての荷物コードに対応する荷物識別子を取得する。なお、ステップS102およびステップS103で飛行体識別子および荷物識別子が取得できた場合、これらを取得した画像が、運搬の出発時の第一の画像に相当すると考えてよい。
(ステップS104)構成部204は、ステップS102およびステップS103で取得した飛行体識別子と一以上の荷物識別子とを有する出発時の管理情報を構成する。
(ステップS105)蓄積部205は、ステップS104で構成した出発時の管理情報を格納部206に蓄積する。そして、ステップS107に進む。
(ステップS106)飛行体識別子取得部202は、受信部201が受信した荷物40の運搬の途中の画像を撮影する撮影装置30が送信する画像から飛行体識別子が取得できたか否かを判断する。この処理は、画像を撮影した撮影装置30が異なる点を除けば、上述したステップS102の処理と同様の処理である。飛行体識別子取得部202は、取得できた場合、ステップS107に進み、取得できなかった場合、ステップS110に進む。
(ステップS107)荷物識別子取得部203は、受信部201が受信した荷物40の運搬の途中の画像を撮影する撮影装置30が送信する画像から1以上の荷物識別子が取得できたか否かを判断する。この処理は、画像を撮影した撮影装置30が異なる点を除けば、上述したステップS103の処理と同様の処理である。荷物識別子取得部203は、取得できた場合、ステップS108に進み、取得できなかった場合、ステップS110に進む。なお、ステップS106およびステップS107で飛行体識別子および荷物識別子が取得できた場合、これらを取得した画像が、運搬の途中の第三の画像に相当すると考えてよい。
(ステップS108)構成部204は、ステップS106およびステップS107で取得した飛行体識別子と一以上の荷物識別子とを有する運搬の途中の管理情報を構成する。
(ステップS109)蓄積部205は、ステップS108で構成した運搬の途中の管理情報を格納部206に蓄積する。そして、ステップS110に進む。
(ステップS110)飛行体識別子取得部202は、受信部201が受信した荷物40の運搬の到着時の画像を撮影する撮影装置30が送信する画像から飛行体識別子が取得できたか否かを判断する。この処理は、画像を撮影した撮影装置30が異なる点を除けば、上述したステップS102の処理と同様の処理である。飛行体識別子取得部202は、取得できた場合、ステップS111に進み、取得できなかった場合、ステップS114に進む。
(ステップS111)荷物識別子取得部203は、受信部201が受信した荷物40の運搬の到着時の画像を撮影する撮影装置30が送信する画像から1以上の荷物識別子が取得できたか否かを判断する。この処理は、画像を撮影した撮影装置30が異なる点を除けば、上述したステップS103の処理と同様の処理である。荷物識別子取得部203は、取得できた場合、ステップS112に進み、取得できなかった場合、ステップS114に進む。なお、ステップS110およびステップS111で飛行体識別子および荷物識別子が取得できた場合、これらを取得した画像が、運搬の到着時の第三の画像に相当すると考えてよい。
(ステップS112)構成部204は、ステップS110およびステップS111で取得した飛行体識別子と一以上の荷物識別子とを有する到着時の管理情報を構成する。
(ステップS113)蓄積部205は、ステップS112で構成した到着時の管理情報を格納部206に蓄積する。そして、ステップS114に進む。
(ステップS114)処理部207は、予め決められた処理を行なうか否かを判断する。例えば、図示しない受付部等が、ユーザ等から予め決められた処理を行なう指示を受け付けた場合に、予め決められた処理を行なうことを決定する。処理を行なう場合、ステップS115に進み、行なわない場合、ステップS116に進む。
(ステップS115)処理部207は、予め決められた処理を行なう。例えば、処理部207は、格納部206に格納された管理情報を用いた予め決められた処理を行なう。この処理は、例えば、検索処理であってもよい。
(ステップS116)出力部208は、格納部206に格納された情報等を出力するか否かを判断する。例えば、図示しない受付部等が、ユーザ等から格納されている管理情報を出力する指示を受け付けた場合に、出力を行なうことを決定する。なお、ステップS115で処理部207が、管理情報を出力する処理結果を得た場合に、出力部208は、この処理結果に対応する出力を行なうことを決定しても良い。出力を行なう場合、ステップS117に進み、行なわない場合、ステップS102に戻る。
(ステップS117)出力部208は、出力を行なう。出力部208は、例えば、格納部206に格納された管理情報の出力を行なう。そして、ステップS102に戻る。
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
撮影装置30の動作の一例について簡単に説明すると、カメラ301は撮影を行なって、動画像等の画像を取得し、送信部302が、カメラ301が撮影した画像を順次情報処理装置20に送信する。送信部302は、例えば、送信する画像が、運搬の出発時の画像を撮影する撮影装置30が撮影した画像、運搬の到着時の画像を撮影する撮影装置30が撮影した画像、および運搬の途中の画像を撮影する撮影装置30が撮影した画像のうちのいずれであるかを識別可能な情報を、画像に対応付けて送信しても良い。
以下、本実施の形態における運搬システムの具体的な動作について説明する。
図4(a)~図4(c)は、本実施の形態における運搬システムを説明するための、無人飛行体10とこれを撮影する撮影装置30とを示す模式図である。
図5は、撮影装置30aが撮影した画像の一例を示す図(図5(a))、撮影装置30bが撮影した画像の一例を示す図(図5(b))、撮影装置30cが撮影した画像の一例を示す図(図5(c))である。
この具体例においては、荷物40を保持した無人飛行体10が、予め決められた出発地に設けられた出発台501から運搬に出発(離陸)して、予め決められた経由地を通って、予め決められた到着地に設けられた着陸台503に到着(着陸)するよう、飛行経路が制御されている場合について説明する。なお、無人飛行体10が予め決められた飛行経路を飛行するようにする制御は、公知技術であるため、ここでは詳細な説明は省略する。
無人飛行体10の正面には、飛行体コード101としてカラーコードが貼付されているものとする。同様に、無人飛行体10が保持する荷物40の正面にも、荷物コード401として、飛行体コード101と同じ規格のカラーコードが貼付されているものとする。
上記の出発地には、出発台501上に載置された状態の無人飛行体10の飛行体コード101および無人飛行体10が保持する荷物40の荷物コード401が撮影可能となるように、撮影装置30aが設置されているものとする。なお、無人飛行体10は、運搬の出発時に、正面が撮影装置30aのカメラ301に対向する位置に向くよう一旦移動するよう制御されるものとする。ここでは、撮影装置30aの送信部302は、カメラ301が撮影した画像に対して、荷物40の運搬の出発時の画像を撮影する撮影装置30aが撮影したことを示す識別子「001」を付与して送信するものとする。なお、この識別子として、撮影装置30aのIPアドレス等のアドレス情報を用いてもよい。
また、上記の経由地には、経由地を通過する荷物40の運搬の途中の無人飛行体10の飛行体コード101および無人飛行体10が保持する荷物40の荷物コード401が撮影可能となるように、撮影装置30bが設置されているものとする。なお、無人飛行体10は、経由地を通過する際に、正面が撮影装置30bのカメラ301に対向する位置に向くように飛行が制御されるものとする。ここでは、撮影装置30bの送信部302は、カメラ301が撮影した画像に対して、荷物40の運搬の途中の画像を撮影する撮影装置30bが撮影したことを示す識別子「002」を付与して送信するものとする。なお、この識別子として、撮影装置30bのIPアドレス等のアドレス情報を用いてもよい。
また、上記の到着地には、到着台503上に着陸した状態の無人飛行体10の飛行体コード101および無人飛行体10が保持する荷物40の荷物コード401が撮影可能となるように、撮影装置30cが設置されているものとする。なお、無人飛行体10は、運搬の到着時に、正面が撮影装置30cのカメラ301に対向する位置に向くよう一旦移動するよう制御されるものとする。ここでは、撮影装置30aの送信部302は、カメラ301が撮影した画像に対して、荷物40の運搬の到着時の画像を撮影する撮影装置30cが撮影したことを示す識別子「003」を付与して送信するものとする。この識別子として、撮影装置30cのIPアドレス等のアドレス情報を用いてもよい。
上述した出発時の画像を撮影する撮影装置30aが撮影したことを示す識別子、運搬の途中の画像を撮影する撮影装置30bが撮影したことを示す識別子、到着時の画像を撮影する撮影装置30cが撮影したことを示す識別子を、以下、撮影識別子と呼ぶ。
この具体例の撮影装置30a~30cが撮影する画像は、動画像であり、カメラ301が常時撮影した画像を、送信部302が順次、情報処理装置20に送信しているものとする。
まず、ユーザが、荷物40aを保持させた無人飛行体10aを出発地の出発台501に載置し、無人飛行体10aに、荷物40aの運搬に出発する指示を与えたとする。
無人飛行体10aは、図4(a)に示すように、一旦、出発台501から少し浮上して、正面が撮影装置30aのカメラ301の方向に向けるよう体勢を移動させた後、上述した予め決められた到着地に向かって飛行を開始する。
撮影装置30aの送信部302は、カメラ301が撮影した画像に、荷物40の運搬の出発時の画像を撮影する撮影装置30aが撮影した画像であることを示す撮影識別子「001」を付与して、順次、情報処理装置20に送信する。
情報処理装置20の受信部201は、撮影装置30aから送信される撮影識別子「001」が付与された画像を順次受信しており、飛行体識別子取得部202は、受信部201が受信した動画像のうちの、撮影識別子「001」が対応付けられている動画像を構成するフレーム画像について、順次、一以上のコードが配置されている領域をそれぞれ検出する処理を、コードが配置された領域が検出されるまで、繰り返し行なう。例えば、ここでは、一以上のカラーコードが配置された領域をそれぞれ検出する処理を繰り返し行なう。ここでは、例えば、撮影装置30aから送信される画像に、図5(a)に示すようなフレーム画像が含まれており、飛行体識別子取得部202が、このフレーム画像において、カラーコードが配置された第一の領域51および第二の領域52をそれぞれ検出したとする。
飛行体識別子取得部202は、第一の領域51内の画像が示すカラーコードを読み取り、カラーコードに対応する識別子「L101」を取得する。
図6は、予め登録されている一以上の無人飛行体10の飛行体識別子を管理する飛行体識別子管理表(図6(a))、および予め登録されている一以上の荷物40の荷物識別子を管理する荷物識別子管理表(図6(b))である。ここでは、飛行体識別子管理表が、予め登録されている複数の無人飛行体10の飛行体識別子を有している場合について説明する。なお、無人飛行体10の飛行体コード101から読み取られる飛行体識別子が、飛行体識別子管理表で管理されている飛行体識別子の一つであるとする。また、ここでは、荷物識別子管理表が、予め登録されている複数の荷物40の荷物識別子を有している場合について説明する。なお、荷物40の荷物コード401から読み取られる荷物識別子が、荷物識別子管理表で管理されている荷物識別子の一つであるとする。
飛行体識別子取得部202は、取得した第一の識別子「L101」が、図6(a)に示した飛行体識別子管理表が有する飛行体識別子のいずれか一つと一致するか否かを判断する。取得した識別子が飛行体識別子である場合、飛行体識別子管理表が有する飛行体識別子のいずれか一つと一致するが、飛行体識別子でない場合、飛行体識別子管理表が有する飛行体識別子と一致しない。ここでは、一致しなかったとすると、飛行体識別子取得部202は、取得した識別子「L101」を飛行体識別子として取得しない。
飛行体識別子取得部202は、第一の領域51内の画像が示すカラーコードから読み取った識別子「L101」が、飛行体識別子でないため、残りの第二の領域52内の画像が示すカラーコードを読み取り、カラーコードに対応する識別子「A101」を取得する。
飛行体識別子取得部202は、次に、取得した第二の識別子「A101」が、図6(a)に示した飛行体識別子管理表が有する飛行体識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するものがあるため、飛行体識別子取得部202は、取得した識別子「A101」を飛行体識別子として取得する。これにより、飛行体コードの領域である第二の領域52から飛行体識別子「A101」を読み取ったこととなる。
次に、荷物識別子取得部203は、上記と同様に、画像からカラーコードの第一の領域51と第二の領域52とを検出し、検出した第一の領域51のコードを読み取って上記と同じ識別子「L101」を取得し、取得した識別子「L101」が、図6(b)に示した荷物識別子管理表が有する荷物識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するものがあるため、荷物識別子取得部203は、取得した識別子「L101」を荷物識別子として取得する。さらに、荷物識別子取得部203は、第二の領域52のコードを読み取って上記のように識別子「A101」を取得し、取得した識別子「A101」が、図6(b)に示した荷物識別子管理表が有する荷物識別子のいずれか一つと一致するか否かを判断する。この識別子「A101」はいずれとも一致しないため、荷物識別子取得部203は、この識別子を荷物識別子として取得しない。なお、さらに。画像内に、コードが配置されている領域であって、飛行体識別子および荷物識別子がまだ取得されていない他の領域が存在する場合、この領域について、荷物識別子取得部203は、上記と同様に荷物識別子を取得する処理を行なっても良い。これにより、無人飛行体10が異なる荷物コード401が配置されている複数の荷物40を保持している場合、各荷物40の荷物識別子を取得することが可能となる。なお、例えば、撮影識別子「001」が付与された画像を構成するフレーム画像のうちの、飛行体識別子と、荷物識別子とが取得できたフレーム画像を、荷物40の運搬の出発時に撮影された第一の画像と考えてもよい。
なお、荷物識別子取得部203は、飛行体識別子取得部202が飛行体識別子として取得しなかった画像内のコードが配置された領域である第一の領域51から取得した識別子「L101」が荷物識別子管理表が有する荷物識別子のいずれか一つと一致するか否かを判断してもよい。このようにして、飛行体識別子取得部202が、画像から検出したコードの領域や、コードの領域から取得した識別子を、荷物識別子取得部203が利用しても良い。あるいは、荷物識別子取得部203が、画像から検出したコードの領域や、コードの領域から取得した識別子を、飛行体識別子取得部202が利用するようにしても良い。
撮影識別子「001」が付与されている画像から、飛行体識別子取得部202が飛行体識別子「A101」を取得し、かつ荷物識別子取得部203が荷物識別子「L101」を取得すると、構成部204は、取得した飛行体識別子「A101」と荷物識別子「L101」との組を有する出発時の管理情報を構成する。そして、蓄積部205は、構成部204が構成した出発時の管理情報を、図示しない時計等から取得した現在の時刻と対応付けて、格納部206に蓄積する。
図7(a)~(c)は、格納部206に格納された管理情報を管理する管理表である。図7(a)~(c)に示した管理表は、「出発時」、「途中」、および「到着時」という属性を有している。「出発時」、「途中」、および「到着時」は、それぞれ、「飛行体ID」、「荷物ID」および「時刻」という属性を有している。「出発時」は出発時の管理情報を示す属性で、「出発時」に属する「飛行体ID」、「荷物ID」および「時刻」は、それぞれ出発時の管理情報の飛行体識別子、荷物識別子、および管理情報の蓄積時刻を示す属性である。「途中」は運搬の途中の管理情報を示す属性で、「途中」に属する「飛行体ID」、「荷物ID」および「時刻」は、それぞれ運搬の途中の管理情報の飛行体識別子、荷物識別子、および管理情報の蓄積時刻を示す属性である。「到着時」は到着時の管理情報を示す属性で、「到着時」に属する「飛行体ID」、「荷物ID」および「時刻」は、それぞれ到着時の管理情報の飛行体識別子、荷物識別子、およびこれらを蓄積した時刻を示す属性である。
蓄積部205は、構成部204が構成した出発時の管理情報を、管理情報を管理する管理表の新たなレコード(行)として蓄積する。具体的には、蓄積部205は、図7に示したような管理表に、構成部204が構成した出発時の管理情報が有する飛行体識別子「A101」、荷物識別子「L101」、および現在の時刻「10時15分」を、「出発時」に属する「飛行体ID」、「荷物ID」および「時刻」という属性の属性値として有するレコードを、新たに追記する。図7(a)は、この出発時の管理情報を蓄積した状態の管理表を示している。
なお、飛行体識別子取得部202および荷物識別子取得部203は、撮影識別子「001」と対応付けられた画像から、飛行体識別子と荷物識別子とを取得した場合、その後の予め決められた時間内に受信部201が受信する撮影識別子「001」と対応付けられた画像については、飛行体識別子を取得する処理および荷物識別子を取得する処理を行なわないようにして、既に飛行体識別子を取得した飛行体コードおよび既に荷物識別子を取得した荷物コードからは、重複して飛行体識別子および荷物識別子を取得しないようにする。そして、予め決められた時間が経過した後、撮影識別子「001」が対応付けられた画像について、上記と同様の出発時の管理情報を取得するための処理を行なう。かかることは、他の撮影識別子と対応付けられた画像において飛行体識別子と荷物識別子とを取得した場合についても同様である。
なお、飛行体識別子取得部202が飛行体識別子を取得できなかった場合や、荷物識別子取得部203が荷物識別子を取得できなかった場合は、受信部201が順次受信する撮影識別子「001」が付与されている画像のフレーム画像について、同様の処理を繰り返す。
無人飛行体10aは、運搬の途中に、予め決められた経由地を通るような経路で飛行する。無人飛行体10aは、図4(b)に示すように、正面を経由地に設けられた撮影装置30bのカメラ301に向けた状態で経由地を通過する。
撮影装置30bの送信部302は、カメラ301が撮影した画像に、荷物40の運搬の途中の画像を撮影する撮影装置30bが撮影した画像であることを示す「002」を付与して順次送信する。
情報処理装置20の受信部201は、撮影装置30bから送信される経由地の画像であることを示す識別子「002」が付与された画像を順次受信しており、飛行体識別子取得部202は、受信部201が受信した動画像であって、撮影識別子「002」が対応付けられている動画像を構成するフレーム画像について、順次、一以上のコードが配置されている領域を検出する処理を、コードが配置された領域が検出されるまで、繰り返し行なう。ここでは、例えば、撮影装置30bから送信される画像に、図5(b)に示すようなフレーム画像が含まれており、飛行体識別子取得部202が、このフレーム画像において、カラーコードが配置された第一の領域61および第二の領域62をそれぞれ検出したとする。
飛行体識別子取得部202は、第一の領域61内の画像が示すカラーコードを読み取り、カラーコードに対応する識別子「A101」を取得する。そして、取得した第一の識別子「A101」が、図6(a)に示した飛行体識別子管理表が有する飛行体識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するため、飛行体識別子取得部202は識別子「A101」を飛行体識別子として取得する。
また、荷物識別子取得部203は、上記と同様に、画像からカラーコードの第一の領域61と第二の領域62とを検出し、検出した第一の領域61のコードを読み取って上記と同じ識別子「A101」を取得し、取得した識別子「A101」が、図6(b)に示した荷物識別子管理表が有する荷物識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するものがないため、荷物識別子取得部203は、さらに、第二の領域62のコードを読み取って識別子「L101」を取得し、取得した識別子「L101」が、図6(b)に示した荷物識別子管理表が有する荷物識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するものがあるため、荷物識別子取得部203は、識別子「L101」を荷物識別子として取得する。なお、例えば、撮影識別子「002」が付与された画像を構成するフレーム画像のうちの、飛行体識別子と、荷物識別子とが取得できたフレーム画像を運搬の途中の第三の画像と考えてもよい。
構成部204は、撮影識別子「002」が付与されている画像から取得した飛行体識別子「A101」と荷物識別子「L101」との組を有する運搬の途中の管理情報を構成する。そして、蓄積部205は、構成部204が構成した運搬の途中の管理情報を、図示しない時計等から取得した現在の時刻と対応付けて、格納部206に蓄積する。
蓄積部205は、構成部204が構成した運搬の途中の管理情報が有する飛行体識別子「A101」、荷物識別子「L101」、および現在の時刻「10時42分」を、図7(a)の「途中」に属する「飛行体ID」、「荷物ID」および「時刻」という属性の属性値として蓄積する。ここでは蓄積部205は、運搬の途中の管理情報と、出発時の管理情報とを対応付けて蓄積する。具体的には、蓄積部205は、図7(a)に示した管理表において、「出発時」の属性の「飛行体ID」および「荷物ID」が、構成部204が構成した運搬の途中の管理情報が有する飛行体識別子「A101」および荷物識別子「L101」と一致するレコード(行)を検出し、検出したレコードの「途中」に属する「飛行体ID」、「荷物ID」および「時刻」の属性値として、構成部204が構成した運搬の途中の管理情報が有する飛行体識別子「A101」、荷物識別子「L101」、および現在の時刻「10時42分」を、それぞれ蓄積する。図7(b)は、この運搬の途中の管理情報を蓄積した状態の管理表を示している。
そして、予め決められた時間が経過した後、撮影識別子「002」が対応付けられた画像について、上記と同様の運搬の途中の管理情報を取得するための処理を繰り返し行なう。
なお、飛行体識別子取得部202が飛行体識別子を取得できなかった場合や、荷物識別子取得部203が荷物識別子を取得できなかった場合は、受信部201が順次受信する撮影識別子「002」が付与されている画像のフレーム画像について、同様の処理を繰り返す。
無人飛行体10aは、到着地に到着すると、図4(c)に示すように、正面を到着地に設けられた撮影装置30cのカメラ301に向けた状態で着陸台503上に着陸する。
撮影装置30cの送信部302は、カメラ301が撮影した画像に、荷物40の運搬の到着時の画像を撮影する撮影装置30cが撮影した画像であることを示す撮影識別子「003」を付与して順次送信する。
情報処理装置20の受信部201は、撮影装置30cから送信される到着地の画像であることを示す識別子「003」が付与された画像を順次受信しており、飛行体識別子取得部202は、受信部201が受信した動画像であって、撮影識別子「003」が対応付けられている動画像を構成するフレーム画像について、順次、一以上のコードが配置されている領域を検出する処理を、コードが配置された領域が検出されるまで、繰り返し行なう。そして、例えば、撮影装置30cから送信される画像に、図5(c)に示すようなフレーム画像が含まれており、飛行体識別子取得部202が、このフレーム画像において、カラーコードが配置された第一の領域71および第二の領域72をそれぞれ検出したとする。
飛行体識別子取得部202は、第一の領域71内の画像が示すカラーコードを読み取り、カラーコードに対応する識別子「A101」を取得する。そして、取得した第一の識別子「A101」が、図6(a)に示した飛行体識別子管理表が有する飛行体識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するため、飛行体識別子取得部202は識別子「A101」を飛行体識別子として取得する。
また、荷物識別子取得部203は、上記と同様に、画像からカラーコードの第一の領域71と第二の領域72とを検出し、検出した第一の領域71のコードを読み取って上記と同じ識別子「A101」を取得し、取得した識別子「A101」が、図6(b)に示した荷物識別子管理表が有する荷物識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するものがないため、荷物識別子取得部203は、さらに、第二の領域72のコードを読み取って識別子「L101」を取得し、取得した識別子「L101」が、図6(b)に示した荷物識別子管理表が有する荷物識別子のいずれか一つと一致するか否かを判断する。ここでは、一致するものがあるため、荷物識別子取得部203は、識別子「L101」を荷物識別子として取得する。なお、例えば、撮影識別子「003」が付与された画像を構成するフレーム画像のうちの、飛行体識別子と、荷物識別子とが取得できたフレーム画像を運搬の到着時の第二の画像と考えてもよい。
構成部204は、撮影識別子「002」が付与されている画像から取得した飛行体識別子「A101」と荷物識別子「L101」との組を有する到着時の管理情報を構成する。そして、蓄積部205は、構成部204が構成した到着時の管理情報を、図示しない時計等から取得した現在の時刻と対応付けて、格納部206に蓄積する。
蓄積部205は、構成部204が構成した運搬の途中の管理情報が有する飛行体識別子「A101」、荷物識別子「L101」、および現在の時刻「11時19分」を、図7(b)に示した「到着時」に属する「飛行体ID」、「荷物ID」および「時刻」という属性の属性値として蓄積する。ここでは蓄積部205は、到着時の管理情報と、出発時の管理情報とを対応付けて蓄積する。具体的には、蓄積部205は、図7(b)に示した管理表において、「出発時」の属性の「飛行体ID」および「荷物ID」が、構成部204が構成した到着時の管理情報が有する飛行体識別子「A101」および荷物識別子「L101」と一致するレコード(行)を検出し、検出したレコードの「到着時」に属する「飛行体ID」、「荷物ID」および「時刻」の属性値として、構成部204が構成した到着時の管理情報が有する飛行体識別子「A101」、荷物識別子「L101」、および現在の時刻「11時19分」を、それぞれ蓄積する。図7(c)は、この到着時の管理情報を蓄積した状態の管理表を示している。
そして、予め決められた時間が経過した後、撮影識別子「003」が対応付けられた画像について、上記と同様の到着時の管理情報を取得するための処理を行なう。
なお、飛行体識別子取得部202が飛行体識別子を取得できなかった場合や、荷物識別子取得部203が荷物識別子を取得できなかった場合は、受信部201が順次受信する撮影識別子「003」が付与されている画像のフレーム画像について、同様の処理を繰り返す。
処理部207は、図7に示す管理表において、「出発時」の属性値と、「途中」の属性値と、「到着時」の属性値との全ての値が蓄積部205によって蓄積されているレコード(行)を検出する。そして、図7(c)のように、全ての値が蓄積されているレコードが検出された場合、このレコードの「出発時」に属する「飛行体ID」の属性値「A101」と、「荷物ID」の属性値「L101」とを取得し、この飛行体識別子が「A101」である無人飛行体のユーザに対し、荷物識別子が「L101」である荷物の運搬に関して、無人飛行体10の利用料金の支払の処理を行なう。例えば、荷物識別子「L101」に対応付けられた荷物40aの運搬に関し、飛行体識別子が「A101」である無人飛行体10の利用料金を、この無人飛行体10のユーザに支払う指示を、図示しない支払等の処理を行なうサーバ装置等に、出力部208等を介して送信する。利用料金は、予め決められた金額であってもよく、荷物40aの運搬費用の一部(例えば、運搬費用のうちの予め決められた比率の金額)であってもよく、上記のレコードの「到着時」に属する「時刻」の属性値から、「出発時」に属する「時刻」の属性値を減算して得られる時間に応じて決定される金額(例えば減算して得られる時間に、予め決められた金額を乗算して得られる金額等)であってもよい。
また、情報処理装置20の図示しない受付部が、ユーザ等から、「L102」という荷物識別子と対応付けられた荷物40の運搬状況を問合せる指示を受け付けると、出力部208は、図7(c)に示した管理表において、「到着時」の「荷物ID」が「102」であるレコードを検索し、レコードが検出された場合、「荷物ID」が「102」である荷物40が到着済であることを示す情報を出力する。ここでの出力は、送信であっても、表示であっても良い。また、レコードが検出されなかった場合、「途中」の「荷物ID」が「102」であるレコードを検索し、レコードが検出された場合、「荷物ID」が「102」である荷物40が運搬の途中であることを示す情報を出力する。また、レコードが検出されなかった場合、「出発時」の「荷物ID」が「102」であるレコードを検索し、レコードが検出された場合、「荷物ID」が「102」である荷物40が出発済であることを示す情報を出力する。そして、レコードが検出されなかった場合、「荷物ID」が「102」である荷物40の運搬がまだ開始されていないことを示す情報を出力する。ここでは、「到着時」の「荷物ID」が「102」であるレコードが検出されず、「途中」の「荷物ID」が「102」であるレコードが検出され、「荷物ID」が「102」である荷物40が運搬の途中であることを示す情報を出力する。
なお、上記具体例においては、無人飛行体10の出発地、経由地、および到着地が、それぞれ一つである場合を例に挙げて説明したが、出発地、経由地等の運搬の途中となる場所、および到着地の少なくとも一以上が複数であってもよい。例えば、この場合、異なる出発地において運搬の出発時の画像を撮影する撮影装置30の送信部302がそれぞれ送信する画像には、出発時の画像を撮影する撮影装置30が撮影したことを示す撮影識別子を付与するようにすることで、受信部201が受信した画像が、出発時の画像を撮影する撮影装置30が送信した画像であることを検出することができる。また、例えば、複数の出発地をそれぞれ撮影する複数の撮影装置30が、それぞれの撮影装置30の識別子を付与した画像を送信するようにし、出発時の画像を撮影する複数の撮影装置30の識別子を、情報処理装置20の図示しない格納部に予め蓄積しておくようにし、受信部201が受信した画像に付与された識別子が、この予め蓄積された複数の撮影装置30の識別子のいずれかと一致する場合に、飛行体識別子取得部202や荷物識別子取得部203等が、この画像を、出発時の画像を撮影する撮影装置が送信する画像と判断するようにしても良い。かかることは、上記の説明の出発地を、経由地等の運搬の途中となる場所や、到着地等に置き換えた場合においても同様である。
以上、本実施の形態によれば、飛行体コードおよび荷物コードを撮影した画像を用いて、飛行体識別子と荷物識別子とを取得することにより、無人飛行体による荷物の運搬の状況を示す情報を取得することができる。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(情報送信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、無人飛行体を識別する飛行体識別子に対応する飛行体コードと、当該無人飛行体が運搬する荷物を識別する荷物識別子に対応する1以上の荷物コードとを含む領域を撮影した画像を受信する受信部と、前記画像内の飛行体コードの領域から、無人飛行体を識別する飛行体識別子を取得する飛行体識別子取得部と、前記画像内の1以上の各荷物コードの領域から、荷物を識別する1以上の荷物識別子を取得する荷物識別子取得部と、前記飛行体識別子と前記1以上の荷物識別子との対応に関する管理情報を構成する構成部と、前記管理情報を蓄積する蓄積部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図8は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図8において、コンピュータシステム900は、CD-ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図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への接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置等の機能を実行させるプログラムは、CD-ROM921に記憶されて、CD-ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD-ROM921、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。