(57)【要約】【課題】家畜の管理をより効率化する。【解決手段】家畜の状態を示す状態情報の表示を制御する表示制御部と、前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得する取得部と、前記作業情報が示す前記作業を指示するための指示情報を出力する出力部と、を備える情報処理装置を提供する。【選択図】図３
2017141521.tif 000002
【特許請求の範囲】
【請求項１】
家畜の状態を示す状態情報の表示を制御する表示制御部と、
前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得する取得部と、
前記作業情報が示す前記作業を指示するための指示情報を出力する出力部と、
を備える情報処理装置。
【請求項２】
前記表示制御部は、実空間における前記家畜の位置と仮想空間における前記家畜の位置とを対応付けて、前記仮想空間を表示させる、請求項１に記載の情報処理装置。
【請求項３】
前記表示制御部は、複数の時刻の各々に対応する前記仮想空間を切り替えて表示させる、請求項２に記載の情報処理装置。
【請求項４】
前記表示制御部は、上空から見た前記仮想空間を表示させる、請求項２に記載の情報処理装置。
【請求項５】
前記表示制御部は、地上から見た前記仮想空間を表示させる、請求項２に記載の情報処理装置。
【請求項６】
前記表示制御部は、前記状態情報に基づいて生成された前記家畜に関連する前記作業の複数の候補を表示させる、請求項１に記載の情報処理装置。
【請求項７】
前記出力部は、前記指示情報をユーザが用いる通信装置へ出力することにより、前記指示情報を前記ユーザへ通知する、請求項１に記載の情報処理装置。
【請求項８】
前記通信装置は、前記ユーザの視界の少なくとも一部に前記指示情報を重畳させて表示する、請求項７に記載の情報処理装置。
【請求項９】
前記出力部は、前記指示情報を外部の装置へ出力することにより、前記外部の装置による前記作業の実行を制御する、請求項１に記載の情報処理装置。
【請求項１０】
前記外部の装置は、移動体を含む、請求項９に記載の情報処理装置。
【請求項１１】
前記外部の装置は、センサを含む、請求項９に記載の情報処理装置。
【請求項１２】
前記状態情報に基づいて、前記作業情報を生成する作業情報生成部をさらに備える、請求項１に記載の情報処理装置。
【請求項１３】
前記状態情報に含まれる第１の状態情報に基づいて、前記第１の状態情報に対応する状態と異なる状態を示す前記状態情報である第２の状態情報を生成する状態情報生成部をさらに備える、請求項１に記載の情報処理装置。
【請求項１４】
前記状態情報が取得された時刻と前記状態情報とが紐付けられた状態データベース及び前記指示情報が出力された時刻と前記指示情報とが紐付けられた指示データベースを更新するデータベース操作部をさらに備える、請求項１に記載の情報処理装置。
【請求項１５】
家畜の状態を示す状態情報の表示を、情報処理装置によって、制御することと、
前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得することと、
前記作業情報が示す前記作業を指示するための指示情報を出力することと、
を含む情報処理方法。
【請求項１６】
コンピュータを、
家畜の状態を示す状態情報の表示を制御する表示制御部と、
前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得する取得部と、
前記作業情報が示す前記作業を指示するための指示情報を出力する出力部と、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、家畜を管理するための技術が提案されている。例えば、特許文献１では、人的負荷を低減するために、家畜の位置情報を含む家畜小屋のマップを生成する技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１４／０４２５１９号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、家畜の管理に関する分野において、家畜の管理をより効率化することが望ましいと考えられる。例えば、家畜の管理のための作業を行う作業者は、実際の家畜の状態に応じて、実行する作業を適宜判断する必要がある。実行する作業についての作業者による上記判断は、家畜の管理における人的負担の増大の要因となり得る。【０００５】
そこで、本開示では、家畜の管理をより効率化することが可能な、新規かつ改良された情報処理装置、情報処理方法及びプログラムを提案する。
【課題を解決するための手段】
【０００６】
本開示によれば、家畜の状態を示す状態情報の表示を制御する表示制御部と、前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得する取得部と、前記作業情報が示す前記作業を指示するための指示情報を出力する出力部と、を備える情報処理装置が提供される。【０００７】
また、本開示によれば、家畜の状態を示す状態情報の表示を、情報処理装置によって、制御することと、前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得することと、前記作業情報が示す前記作業を指示するための指示情報を出力することと、を含む情報処理方法が提供される。【０００８】
また、本開示によれば、コンピュータを、家畜の状態を示す状態情報の表示を制御する表示制御部と、前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得する取得部と、前記作業情報が示す前記作業を指示するための指示情報を出力する出力部と、として機能させるためのプログラムが提供される。
【発明の効果】
【０００９】
以上説明したように本開示によれば、家畜の管理をより効率化することが可能である。【００１０】
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、又は上記の効果に代えて、本明細書に示されたいずれかの効果又は本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１１】
【図１】本開示の実施形態に係る牧場管理システムのシステム構成の一例を示す説明図である。
【図２】同実施形態に係る牧場管理システムの機能構成を説明するための概念図である。
【図３】同実施形態に係る情報処理装置の機能構成の一例を示す説明図である。
【図４】状態データベースのデータテーブルの一例を示す説明図である。
【図５】管理者端末に表示される俯瞰視点画面の一例を示す説明図である。
【図６】管理者端末に表示される一人称視点画面の一例を示す説明図である。
【図７】指示データベースのデータテーブルの一例を示す説明図である。
【図８】作業者端末に表示される重畳画面の一例を示す説明図である。
【図９】同実施形態に係る情報処理装置が行う指示情報の取得処理の流れの一例を示すフローチャートである。
【図１０】同実施形態に係る情報処理装置が行う指示情報の出力処理の流れの一例を示すフローチャートである。
【図１１】同実施形態に係る牧場管理システムが行う牧場管理処理の流れの一例を示すフローチャートである。
【図１２】本開示に係る情報処理装置のハードウェア構成の一例を示す説明図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。また、本明細書及び図面において、実質的に同一の機能構成を有する複数の構成要素を、同一の符号の後に異なるアルファベットを付して区別する場合もある。ただし、実質的に同一の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。
【００１３】
なお、説明は以下の順序で行うものとする。
１．牧場管理システム
２．情報処理装置の機能構成
２−１．通信部
２−２．記憶部
２−３．制御部
３．動作
３−１．指示情報の取得処理
３−２．指示情報の出力処理
３−３．牧場管理処理
４．ハードウェア構成
５．まとめ
【００１４】
＜１．牧草管理システム＞
まず、図１及び図２を参照して本開示の実施形態に係る牧場管理システム１のシステム構成について説明する。本実施形態に係る牧場管理システム１は、牛Ｂ３０が飼育される牧場を管理するためのシステムの一例である。牛Ｂ３０は、本開示に係る情報処理装置を含む牧場管理システムにおける家畜の一例に過ぎず、家畜として、豚、馬、又は鳥等が適用されてもよい。
【００１５】
図１は、本実施形態に係る牧場管理システム１のシステム構成の一例を示す説明図である。図１に示したように、牧場管理システム１は、情報処理装置１０と、ドローン２０と、センサ３０と、作業者端末４０と、管理者端末５０と、を含む。ドローン２０、センサ３０、作業者端末４０、及び管理者端末５０の各々は、有線又は無線の情報ネットワークを介して、情報処理装置１０と通信する。
【００１６】
なお、図１では、１つの情報処理装置１０に対して１つのドローン２０、３つのセンサ３０、３つの作業者端末４０、及び１つの管理者端末５０が示されているが、１つの情報処理装置１０と通信するドローン２０、センサ３０、作業者端末４０、及び管理者端末５０の各々の数は、図１に示した数と異なる数であってもよい。また、牛Ｂ３０、作業者Ｂ４０、及び管理者Ｂ５０の各々の数は、図１に示した数と異なる数であってもよい。
【００１７】
ドローン２０は、移動体の一例である。ドローン２０は、指定された飛行経路に基づいて自動飛行することが出来るよう構成された無人飛行体である。ドローン２０は、例えば、情報処理装置１０からの動作指令に基づいて、動作する。具体的には、ドローン２０は、情報処理装置１０からドローン２０へ指示情報が出力された場合、当該指示情報に基づいて、動作する。当該指示情報は、牛Ｂ３０に関連する作業を指示するための情報である。
【００１８】
ドローン２０は、例えば４つのロータにより飛行することが可能であり、各ロータの回転を制御することで、上昇、下降、又は水平移動しつつ飛行することが出来る。もちろんロータの数は係る例に限定されるものではない。ドローン２０に設定される飛行開始位置から飛行終了位置までの飛行経路は、例えば、ＧＮＳＳ（Ｇｌｏｂａｌ  Ｎａｖｉｇａｔｉｏｎ  Ｓａｔｅｌｌｉｔｅ  Ｓｙｓｔｅｍ）衛星からのＧＮＳＳ信号（例えば、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）衛星からのＧＰＳ信号）が示す位置情報として設定される。従って、ドローン２０には、具体的には、ＧＰＳ衛星からの電波を受信して現在位置を算出するＧＰＳ受信機が組み込まれ得る。
【００１９】
また、ドローン２０は、情報処理装置１０へ各種情報を送信してもよい。例えば、ドローン２０は、レンズやＣＣＤイメージセンサ、ＣＭＯＳイメージセンサ等の撮像素子、フラッシュ等で構成される撮像装置を備えてもよく、当該撮像装置による撮像処理によって得られた画像を情報処理装置１０へ送信してもよい。
【００２０】
例えば、ドローン２０は、牛Ｂ３０を撮像することにより得られる牛Ｂ３０の全体が映る画像を情報処理装置１０へ送信してもよい。また、ドローン２０は、牛Ｂ３０の部位を撮像することによって得られる当該部位が映る画像を情報処理装置１０へ送信してもよい。ドローン２０から送信された画像は、情報処理装置１０による牧場の管理のための処理に用いられる。当該画像は、牛Ｂ３０の状態を示す状態情報に該当する。
【００２１】
なお、ドローン２０は、撮像により得られた画像に画像処理を行うことによって、各種情報を生成し、生成された情報を情報処理装置１０へ送信してもよい。画像処理により生成された当該情報もまた、牛Ｂ３０の状態を示す状態情報に該当する。
【００２２】
センサ３０は、牛Ｂ３０の各々について設けられ、対応する牛Ｂ３０に関する種々の物理量を検出し、検出結果を送信する。センサ３０は、予め設定された時刻に物理量の検出及び検出結果の送信を行ってもよい。また、センサ３０は、情報処理装置１０からセンサ３０へ指示情報が出力された場合、当該指示情報に基づいて、動作してもよい。
【００２３】
センサ３０は、例えば、対応する牛Ｂ３０に装着されてもよい。センサ３０から送信される検出結果は、情報処理装置１０によって受信され、情報処理装置１０による牧場の管理のための処理に用いられる。当該検出結果は、牛Ｂ３０の状態を示す状態情報に該当する。なお、センサ３０は、ドローン２０に搭載されてもよく、その場合、ドローン２０は、センサ３０による検出により得られた検出結果を情報処理装置１０へ送信し得る。
【００２４】
センサ３０から検出結果として送信される情報は、例えば、牛Ｂ３０の体調に関連する体調情報を含む。体調情報は、例えば、牛Ｂ３０の脈拍数、発汗量、体温、体重、体積、血圧、又は皮膚状態を示す情報を含む。牛Ｂ３０の脈拍数、発汗量、体温、体重、体積、血圧、及び皮膚状態は、例えば、センサ３０として、それぞれ脈拍数、発汗量、体温、体重、体積、血圧、及び皮膚状態を検出可能なセンサを適用することによって検出され得る。
【００２５】
センサ３０から検出結果として送信される情報は、牛Ｂ３０の行動に関連する行動情報を含んでもよい。行動情報は、牛Ｂ３０がいずれの行動を行っているかを示す情報を含んでもよい。センサ３０によって検出され得る牛Ｂ３０の行動は、例えば、咀嚼、発声、移動、排泄、又は睡眠を含む。牛Ｂ３０が行う行動は、例えば、センサ３０として、音声を検出可能な音センサ、匂いを検出可能な匂いセンサ、牛Ｂ３０の位置を検出可能なＧＰＳ受信機、並びに牛Ｂ３０の動きを検出可能な加速度センサ、ジャイロセンサ、及び地磁気センサのうちの一部又は全部を利用することによって検出され得る。また、行動情報は、牛Ｂ３０が行っている行動として検出された行動についての詳細な情報を含んでもよい。センサ３０は、当該詳細な情報として、例えば、咀嚼の速度、発声された音声の内容、移動速度、排泄の頻度、又は睡眠の頻度を取得し得る。また、当該詳細な情報は、センサ３０として、上述したセンサを利用することによって検出され得る。
【００２６】
なお、ドローン２０によって、撮像及び得られた画像の画像処理が行われることにより、行動情報が生成されてもよく、その場合には、ドローン２０から情報処理装置１０へ生成された行動情報が送信され得る。例えば、ドローン２０によって、牛Ｂ３０の全体の撮像及び得られた画像の画像処理が行われることにより、牛Ｂ３０がいずれの行動を行っているかを示す情報が生成され得る。また、ドローン２０によって、牛Ｂ３０の口の撮像及び得られた画像の画像処理が行われることにより、咀嚼又は発声についての詳細な情報が生成され得る。また、ドローン２０によって、牛Ｂ３０の足の撮像及び得られた画像の画像処理が行われることにより、牛Ｂ３０の移動についての詳細な情報が生成され得る。
【００２７】
センサ３０から検出結果として送信される情報は、牛Ｂ３０の位置を示す位置情報を含んでもよい。牛Ｂ３０の位置は、例えば、センサ３０として、ＧＰＳ受信機を適用することによって検出され得る。なお、位置情報は、牛Ｂ３０が所定時間内において移動した範囲を示す情報を含んでもよい。当該情報は、牛Ｂ３０の移動履歴から算出され得る。
【００２８】
なお、ドローン２０によって、牛Ｂ３０の全体の撮像及び得られた画像の画像処理が行われることにより、位置情報が生成されてもよく、その場合には、ドローン２０から情報処理装置１０へ生成された位置情報が送信され得る。
【００２９】
また、センサ３０は、検出された物理量を検出結果として情報処理装置１０へ直接的に送信してもよく、検出された物理量に演算処理を施して得られる情報を検出結果として情報処理装置１０へ送信してもよい。
【００３０】
作業者端末４０は、主として、情報処理装置１０から出力される指示情報をユーザである牧場の作業者Ｂ４０へ通知するために、作業者Ｂ４０によって用いられる通信装置の一例である。作業者端末４０は、例えば、外部の装置と通信する機能、画面を表示する機能、音声を出力する機能、及び作業者Ｂ４０の入力を受け付ける機能を有する。作業者端末４０の上記機能は、各種機器により実現されてもよい。例えば、図１では、作業者端末４０ａ、４０ｂ、４０ｃとして、それぞれパーソナルコンピュータ、スマートフォン、ヘッドマウントディスプレイが適用された例を示している。
【００３１】
作業者端末４０は、例えば、受信した指示情報を表示することによって、指示情報を作業者Ｂ４０へ通知する。ここで、ヘッドマウントディスプレイである作業者端末４０ｃは、作業者Ｂ４０の頭部に装着された状態で利用される。作業者端末４０ｃは、作業者Ｂ４０の視界の少なくとも一部に画面を重畳させて表示し得る。作業者端末４０ｃは、例えば、作業者Ｂ４０の視界の少なくとも一部に受信した指示情報を重畳させて表示してもよい。
【００３２】
なお、作業者端末４０による、指示情報の作業者Ｂ４０への通知は、画面の表示以外の方法によって実現されてもよい。例えば、作業者端末４０は、受信した指示情報を音声として出力することによって、指示情報を作業者Ｂ４０へ通知してもよい。
【００３３】
また、作業者端末４０は、作業者Ｂ４０により入力された情報を情報処理装置１０へ送信してもよい。作業者端末４０は、作業者Ｂ４０の入力を受け付ける入力装置として、例えば、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチ及びレバーのうち少なくとも１つを含んでもよい。また、作業者端末４０は、作業者Ｂ４０のジェスチャを入力として受け付けるために、作業者Ｂ４０のジェスチャを判別可能な装置を含んでもよい。例えば、作業者端末４０は、作業者Ｂ４０により入力された牛Ｂ３０の体調情報等の状態情報を情報処理装置１０へ送信してもよい。作業者端末４０から送信された情報は、情報処理装置１０による牧場の管理のための処理に用いられる。
【００３４】
管理者端末５０は、主として、ドローン２０等の装置又は作業者端末４０へ指示される作業を示す作業情報を入力するために、牧場の管理者Ｂ５０によって用いられる。管理者端末５０は、例えば、外部の装置と通信する機能、画面を表示する機能、音声を出力する機能、及び管理者Ｂ５０の入力を受け付ける機能を有する。管理者端末５０の上記機能は、例えば、パーソナルコンピュータ、スマートフォン、又はヘッドマウントディスプレイにより実現され得る。
【００３５】
管理者端末５０は、作業情報の入力を受け付けるための入力画面を表示してもよい。管理者端末５０は、例えば、当該入力画面において、情報処理装置１０から受信した牛Ｂ３０の状態を示す状態情報を表示する。それにより、管理者Ｂ５０は、実際の牛Ｂ３０の状態に応じて、適切な作業を決定することができる。管理者Ｂ５０は、状態情報に基づいて作業情報を入力する。そして、管理者端末５０は、状態情報に基づいて入力された作業情報を情報処理装置１０へ送信する。当該作業情報は、情報処理装置１０による牧場の管理のための処理に用いられる。
【００３６】
管理者端末５０は、例えば、実空間における牛Ｂ３０の位置と仮想空間における牛Ｂ３０の位置とを対応付けて、当該仮想空間を表示してもよい。それにより、管理者Ｂ５０は、より直感的な操作によって、作業を決定することができる。また、管理者Ｂ５０は、牛Ｂ３０の位置情報に基づいて、より適切な作業を決定することができる。
【００３７】
なお、管理者Ｂ５０による、作業情報の管理者端末５０への入力は、上記入力画面を介した操作によって実現されてもよく、他の方法によって実現されてもよい。また、管理者端末５０は、管理者Ｂ５０の入力を受け付ける入力装置として、例えば、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチ及びレバーのうち少なくとも１つを含んでもよい。また、管理者端末５０は、管理者Ｂ５０のジェスチャを入力として受け付けるために、管理者Ｂ５０のジェスチャを判別可能な装置を含んでもよい。
【００３８】
情報処理装置１０は、牧場の管理のための各種処理を行う。情報処理装置１０は、具体的には、牧場の管理のために、ドローン２０及びセンサ３０等の外部の装置の動作、並びに作業者端末４０及び管理者端末５０による画面の表示を制御する。例えば、情報処理装置１０は、ドローン２０、センサ３０又は作業者端末４０から受信した状態情報を管理者端末５０へ表示させる。また、情報処理装置１０は、当該状態情報に基づいて管理者Ｂ５０により入力される作業情報を管理者端末５０から取得する。また、情報処理装置１０は、当該作業情報が示す作業を指示するための指示情報を、ドローン２０、センサ３０又は作業者端末４０へ出力する。それにより、牛Ｂ３０に関連する作業が、ドローン２０、センサ３０又は作業者Ｂ４０により実行される。
【００３９】
本実施形態に係る情報処理装置１０は、牛Ｂ３０の状態を示す状態情報の表示を制御し、当該状態情報に基づいて入力される牛Ｂ３０に関連する作業を示す作業情報を取得し、当該作業情報が示す作業を指示するための指示情報を出力する。それにより、実際の牛Ｂ３０の状態に応じた適切な作業の実行を、人的負担を低減しつつ、実現することができる。ゆえに、本実施形態に係る情報処理装置１０によれば、牛Ｂ３０の管理をより効率化することが可能である。なお、情報処理装置１０の詳細については、後述する。
【００４０】
図２は、本実施形態に係る牧場管理システム１の機能構成を説明するための概念図である。図２に示したように、牧場管理システム１の機能は、実空間作業部９１０と、仮想空間操作部９２０と、システム制御部９３０と、記憶部９４０と、により実現され得る。
【００４１】
実空間作業部９１０は、牧場の実空間において、牛Ｂ３０に関連する作業を実行する機能を有する。実空間作業部９１０の上記機能は、例えば、図１に示したドローン２０、センサ３０、作業者端末４０、及び作業者Ｂ４０により実現される。
【００４２】
仮想空間操作部９２０は、牧場の実空間と対応する仮想空間を利用して、実空間作業部９１０へ実行させる作業を決定する機能を有する。仮想空間操作部９２０の上記機能は、例えば、図１に示した管理者端末５０、及び管理者Ｂ５０により実現される。
【００４３】
システム制御部９３０は、実空間作業部９１０及び仮想空間操作部９２０を制御する。具体的には、システム制御部９３０は、実空間作業部９１０における作業の実行及び仮想空間操作部９２０における画面の表示を制御する。記憶部９４０は、システム制御部９３０における各種処理のために参照されるデータを記憶する。また、記憶部９４０により記憶されるデータは、システム制御部９３０により書き換え可能となっている。システム制御部９３０及び記憶部９４０の上記機能は、例えば、図１に示した情報処理装置１０により実現される。なお、システム制御部９３０及び記憶部９４０の機能は、複数の装置により実現されてもよい。なお、情報処理装置１０の詳細については、後述する。
【００４４】
システム制御部９３０は、実空間作業部９１０の制御において、拡張現実ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を利用してもよい。当該拡張現実ＧＵＩは、現実世界が拡張された感覚を作業者Ｂ４０へ呈示するためのＧＵＩである。具体的には、実空間作業部９１０の機能がヘッドマウントディスプレイである作業者端末４０ｃ及び作業者Ｂ４０により実現される場合に、拡張現実ＧＵＩが利用される。作業者端末４０ｃは、情報処理装置１０からの動作指令に基づいて、作業者Ｂ４０の視界の少なくとも一部に、指示情報を含む拡張現実ＧＵＩを重畳させて表示してもよい。それにより、作業者Ｂ４０に対して当該拡張現実ＧＵＩにより指示情報が通知され、当該指示情報に対応する作業を作業者Ｂ４０に実行させることができる。なお、作業者端末４０ｃが表示する画面の詳細については、後述する。
【００４５】
また、システム制御部９３０は、仮想空間操作部９２０の制御において、仮想空間ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を利用してもよい。当該仮想空間ＧＵＩは、現実感を伴う仮想的な世界を管理者Ｂ５０へ呈示し、及び管理者Ｂ５０による操作を受け付けるためのＧＵＩである。具体的には、管理者端末５０は、牛Ｂ３０の状態を示す状態情報を含む仮想空間ＧＵＩを表示してもよい。それにより、管理者Ｂ５０は、より直感的な操作により、実空間作業部９１０へ実行させる作業を決定することができる。なお、管理者端末５０が表示する画面の詳細については、後述する。
【００４６】
＜２．情報処理装置の機能構成＞
続いて、図３〜図８を参照して、本実施形態に係る情報処理装置１０の機能構成について説明する。図３は、本実施形態に係る情報処理装置１０の機能構成の一例を示す説明図である。図３に示したように、情報処理装置１０は、通信部２００と、記憶部４００と、制御部６００と、を備える。
【００４７】
［２−１．通信部］
通信部２００は、情報処理装置１０の外部の装置と通信する。具体的には、通信部２００は、ドローン２０、センサ３０、作業者端末４０、及び管理者端末５０から送信された各種情報を受信し、記憶部４００及び制御部６００へ出力する。より具体的には、通信部２００は、ドローン２０から牛Ｂ３０の状態を示す状態情報として、撮像された画像又は当該画像に画像処理を行うことによって生成された情報を受信する。また、通信部２００は、センサ３０から状態情報として、検出結果を受信する。また、通信部２００は、作業者端末４０から作業者Ｂ４０により入力された体調情報等の状態情報を受信する。また、通信部２００は、状態情報に基づいて入力される牛Ｂ３０に関連する作業を示す作業情報を、管理者端末５０から受信する。以上のように、通信部２００は、状態情報に基づいて入力される牛Ｂ３０に関連する作業を示す作業情報を取得する本開示に係る取得部に相当する。
【００４８】
また、通信部２００は、制御部６００からの動作指令に基づいて、ドローン２０、センサ３０、作業者端末４０、及び管理者端末５０等の外部の装置へ各種情報を送信する。それにより、ドローン２０及びセンサ３０等の外部の装置の動作並びに作業者端末４０及び管理者端末５０による画面の表示が制御される。
【００４９】
［２−２．記憶部］
記憶部４００は、情報処理装置１０における各種処理のために参照されるデータを記憶する。具体的には、記憶部４００は、制御部６００が行う作業者端末４０及び管理者端末５０による画像の表示の制御に用いられる画像データ、制御部６００が行う予測処理に用いられる予測モデル、及び通信部２００から入力された各種情報を記憶する。また、記憶部４００は、状態ＤＢ（データベース）４１０及び指示ＤＢ（データベース）４２０を記憶する。状態ＤＢ４１０では、状態情報が取得された時刻と当該状態情報とが紐付けられている。また、指示ＤＢ４２０では、指示情報が出力された時刻と当該指示情報とが紐付けられている。なお、状態ＤＢ４１０及び指示ＤＢ４２０の詳細については、後述する。
【００５０】
［２−３．制御部］
制御部６００は、ＤＢ（データベース）操作部６１０と、状態情報生成部６２０と、仮想空間ＧＵＩ生成部６３０と、管理者端末表示制御部６４０と、作業情報生成部６５０と、指示情報生成部６６０と、拡張現実ＧＵＩ生成部６７０と、作業者端末表示制御部６８０と、駆動制御部６９０と、を含む。
【００５１】
（ＤＢ操作部）
ＤＢ操作部６１０は、記憶部４００に記憶される状態ＤＢ４１０及び指示ＤＢ４２０からのデータの読み出し及び状態ＤＢ４１０及び指示ＤＢ４２０へのデータの登録を行う。ＤＢ操作部６１０は、読み出したデータを、状態情報生成部６２０、仮想空間ＧＵＩ生成部６３０、作業情報生成部６５０、指示情報生成部６６０、拡張現実ＧＵＩ生成部６７０、及び駆動制御部６９０へ出力する。また、ＤＢ操作部６１０は、取得した状態情報及び指示情報をそれぞれ状態ＤＢ４１０及び指示ＤＢ４２０へ登録することにより、状態ＤＢ４１０及び指示ＤＢ４２０を更新する。それにより、牛Ｂ３０の状態の履歴、及び当該牛Ｂ３０について指示された作業の履歴を記録として蓄積することができる。ゆえに、牛Ｂ３０の状態と、当該牛Ｂ３０について指示された作業の関連性を調査することができるので、牧場における業務の効率化等の改善活動を実施することができる。
【００５２】
（状態情報生成部）
状態情報生成部６２０は、状態情報に含まれる第１の状態情報に基づいて、当該第１の状態情報と対応する状態と異なる状態を示す状態情報である第２の状態情報を生成する。ここで、ドローン２０、センサ３０、又は作業者端末４０から送信された検出結果等の状態情報は、通信部２００により取得された後、記憶部４００へ入力され、状態ＤＢ４１０へ登録される。状態情報生成部６２０は、例えば、第１の状態情報に相当する状態ＤＢ４１０へ登録された当該状態情報に基づいて、第２の状態情報を生成する。そして、状態情報生成部６２０は、生成された第２の状態情報をＤＢ操作部６１０へ出力することにより、状態ＤＢ４１０への第２の状態情報の登録をＤＢ操作部６１０に行わせてもよい。以上のように、状態情報生成部６２０により第２の状態情報が生成されることによっても、情報処理装置１０は、状態情報を取得することができる。
【００５３】
なお、状態情報生成部６２０による第２の状態情報の生成は、通信部２００から記憶部４００へ入力された第１の状態情報が状態ＤＢ４１０へ登録されたことをトリガとして、行われてもよい。また、状態情報生成部６２０による第２の状態情報の生成は、所定時間が経過したことをトリガとして、行われてもよい。
【００５４】
状態情報生成部６２０は、例えば、第１の状態情報に相当する牛Ｂ３０の発声に関する情報に基づいて、第２の状態情報として、牛Ｂ３０が発情しているか否かを示す情報を生成してもよい。また、状態情報生成部６２０は、第１の状態情報に相当する牛Ｂ３０の咀嚼に関する情報及び体温を示す情報に基づいて、第２の状態情報として、牛Ｂ３０が病気を患っている可能性があるか否かを示す情報を生成してもよい。このように、取得された第１の状態情報に基づいて、第２の状態情報を生成することによって、牛Ｂ３０のより多様な状態についての状態情報を取得することが可能となる。それにより、牛Ｂ３０のより多様な状態についての状態情報を管理者Ｂ５０へ呈示することができる。
【００５５】
状態情報生成部６２０は、例えば、事前に学習される予測モデルを用いて第１の状態情報から第２の状態情報を予測することによって、第２の状態情報を生成してもよい。事前の学習処理では、第２の状態情報と当該第２の状態情報に対応する第１の状態情報とのペアが多数用意される。ここで用意される第２の状態情報及び第１の状態情報は、教師あり学習における教師情報及び生徒情報にそれぞれ相当する。そして、例えばブースティング又はサポートベクタマシンといった既存のアルゴリズムに従って、第１の状態情報から第２の状態情報を予測するための予測モデルが構築される。当該予測モデルは、記憶部４００に記憶される。状態情報生成部６２０は、当該予測モデルを用いた予測を行うことによって、第１の状態情報に基づいて、第２の状態情報を特定してもよい。
【００５６】
ここで、上述した状態ＤＢ４１０について、より詳細に説明する。状態ＤＢ４１０は、例えば、データテーブル形式であってもよい。図４は、状態ＤＢ４１０のデータテーブルＤ１０の一例を示す説明図である。データテーブルＤ１０には、ＤＢ操作部６１０によって、各種データが登録され得る。
【００５７】
図４に示したように、データテーブルＤ１０では、各行において、状態情報が取得された時刻、当該状態情報、及び他の各種情報が紐付けられている。データテーブルＤ１０において、「開始時刻」及び「終了時刻」は、状態情報の取得が開始され、及び終了した時刻をそれぞれ示す。ここで、状態情報の取得は、ドローン２０、センサ３０、若しくは作業者端末４０による状態情報の取得、又は状態情報生成部６２０が行う第２の状態情報の生成による状態情報の取得を意味する。また、「取得場所」は、ドローン２０、センサ３０、又は作業者端末４０により取得された検出結果等の状態情報についての、当該状態情報が取得された場所を示す。また、「牛ＩＤ」は、状態情報に対応する牛Ｂ３０のＩＤを示す。また、「取得手段」は、状態情報の取得において利用された手段を示す。また、「手段詳細」は、取得手段のより詳細な情報を示す。また、「状態詳細」は、状態情報のより詳細な情報を示す。
【００５８】
例えば、図４に示したように、データテーブルＤ１０において、領域Ｇ１０に対応する行には、牛ＩＤ「０２６３」の牛Ｂ３０について、「やや高熱」という状態を示す状態情報が示されている。また、当該状態情報は、図１におけるドローン２０に相当するドローンＡによって、赤外線カメラを用いて取得されたことが示されている。また、当該状態情報のより詳細な情報として、検出された温度に関する情報である温度ファイルが示されている。また、当該状態情報は、２０１５年１２月１４日１６時２９分から２０１５年１２月１４日１７時５２分までの間にドローンＡにより取得されたことが示されている。また、当該状態情報が取得された場所に対応するアドレス番号が「３５．６３１１６６，１３９．７４３６１２」であることが示されている。
【００５９】
なお、第２の状態情報の生成は、獣医等の専門家によって行われてもよい。例えば、獣医等は、情報処理装置１０と通信可能な端末を利用することによって、状態ＤＢ４１０に登録された第１の状態情報を参照して、第２の状態情報を当該端末に入力することができる。そして、入力された第２の状態情報は、当該端末から情報処理装置１０へ送信され、情報処理装置１０によって取得され得る。獣医等の専門家によって入力される第２の状態情報は、例えば、病気の可能性があることを示す情報であってもよい。なお、獣医等の専門家による第２の状態情報の生成が必要であると判断される場合には、獣医等に第２の状態情報の生成を要求する必要がある旨を示す情報が、情報処理装置１０のオペレータに通知されるように構成されてもよい。
【００６０】
（仮想空間ＧＵＩ生成部）
仮想空間ＧＵＩ生成部６３０は、管理者端末５０に表示させるための情報として、仮想空間ＧＵＩを生成し、管理者端末表示制御部６４０へ出力する。生成された仮想空間ＧＵＩは、管理者端末表示制御部６４０が管理者端末５０による画面の表示を制御することによって、管理者端末５０に表示される。それにより、現実感を伴う仮想的な世界を管理者Ｂ５０へ呈示することができる。
【００６１】
仮想空間ＧＵＩ生成部６３０は、記憶部４００に記憶される情報に基づいて、仮想空間ＧＵＩを生成する。具体的には、仮想空間ＧＵＩ生成部６３０は、状態ＤＢ４１０に基づいて、牛Ｂ３０の状態を示す状態情報を含む仮想空間ＧＵＩを生成する。また、仮想空間ＧＵＩ生成部６３０は、牛Ｂ３０の位置を示す位置情報に基づいて、実空間における牛Ｂ３０の位置と仮想空間ＧＵＩにおける牛Ｂ３０の位置とを対応付けて、仮想空間ＧＵＩを生成してもよい。また、仮想空間ＧＵＩ生成部６３０は、管理者Ｂ５０により選択された時刻に対応する仮想空間ＧＵＩを生成し、管理者端末表示制御部６４０へ出力してもよい。
【００６２】
仮想空間ＧＵＩ生成部６３０は、管理者端末表示制御部６４０からの動作指令をトリガとして、仮想空間ＧＵＩを生成してもよい。また、仮想空間ＧＵＩ生成部６３０は、ＤＢ操作部６１０により状態ＤＢ４１０が更新されたことをトリガとして、仮想空間ＧＵＩを生成してもよい。また、仮想空間ＧＵＩ生成部６３０は、所定時間が経過したことをトリガとして、仮想空間ＧＵＩを生成してもよい。なお、仮想空間ＧＵＩ生成部６３０により生成され、管理者端末５０に表示される仮想空間ＧＵＩの詳細については、後述する。
【００６３】
（管理者端末表示制御部）
管理者端末表示制御部６４０は、管理者端末５０による画面の表示を制御する。具体的には、管理者端末表示制御部６４０は、各種画面を管理者端末５０に表示させるための情報の管理者端末５０への送信を通信部２００に行わせることによって、管理者端末５０による画面の表示を制御する。管理者端末表示制御部６４０は、例えば、仮想空間ＧＵＩ生成部６３０により生成された仮想空間ＧＵＩを管理者端末５０に表示させる。また、管理者端末表示制御部６４０は、管理者Ｂ５０からの操作入力に応じて、管理者端末５０による画面の表示を制御してもよい。
【００６４】
本実施形態に係る管理者端末表示制御部６４０は、牛Ｂ３０の状態を示す状態情報を管理者端末５０に表示させる。具体的には、管理者端末表示制御部６４０は、仮想空間ＧＵＩ生成部６３０により生成された仮想空間ＧＵＩを管理者端末５０に表示させる。ここで、管理者端末５０に表示される仮想空間ＧＵＩは、牛Ｂ３０の状態を示す状態情報を含む。以上のように、管理者端末表示制御部６４０は、家畜の状態を示す状態情報の表示を制御する表示制御部に相当する。
【００６５】
また、管理者端末表示制御部６４０は、実空間における牛Ｂ３０の位置と仮想空間における牛Ｂ３０の位置とを対応付けて、当該仮想空間を管理者端末５０に表示させてもよい。具体的には、管理者端末表示制御部６４０は、仮想空間ＧＵＩ生成部６３０により実空間における牛Ｂ３０の位置と仮想空間ＧＵＩにおける牛Ｂ３０の位置とを対応付けて生成された仮想空間ＧＵＩを管理者端末５０に表示させてもよい。それにより、管理者Ｂ５０は、より直感的な操作によって、ドローン２０等の装置又は作業者Ｂ４０へ指示される作業を決定することができる。また、管理者Ｂ５０は、牛Ｂ３０の位置情報に基づいて、より適切な作業を決定することができる。以下、管理者端末５０によって表示される画面の例について説明する。
【００６６】
図５は、管理者端末５０に表示される俯瞰視点画面Ｅ１２の一例を示す説明図である。俯瞰視点画面Ｅ１２は、牧場を上空から見た仮想空間を示す仮想空間ＧＵＩである。このように、管理者端末表示制御部６４０は、上空から見た仮想空間を管理者端末５０に表示させてもよい。俯瞰視点画面Ｅ１２では、牧場における牛Ｂ３０の状態情報及び位置情報が主に表示される。
【００６７】
図５に示したように、俯瞰視点画面Ｅ１２では、例えば、牛Ｂ３０の位置を示す牛画像Ｆ１７が、牧場の外観を示す牧場画像Ｆ２０に重畳して表示される。牧場画像Ｆ２０は、例えば、建物、草木及び道等の牧場内において土地に対して固定されている物体を示す画像を含んでもよい。また、俯瞰視点画面Ｅ１２において、ドローン２０及び作業者Ｂ４０の位置を示す画像が表示されてもよい。なお、俯瞰視点画面Ｅ１２において、ドローン２０及び作業者Ｂ４０の稼働状況を示す情報として、牛Ｂ３０に関連する作業を実行することができるか否かを示す情報が表示されてもよい。
【００６８】
また、俯瞰視点画面Ｅ１２では、牛Ｂ３０の状態を示す状態情報が表示される。例えば、俯瞰視点画面Ｅ１２では、図５に示したように、牛Ｂ３０の状態を示す牛状態アイコンＦ１８が、対応する牛Ｂ３０の牛画像Ｆ１７の近傍に表示される。例えば、管理者端末表示制御部６４０は、俯瞰視点画面Ｅ１２において表示される牛状態アイコンＦ１８の種類を、牛Ｂ３０の状態に応じて異ならせることによって、管理者Ｂ５０へ牛Ｂ３０の各々の状態を呈示してもよい。
【００６９】
具体的には、管理者端末表示制御部６４０は、表示される牛状態アイコンＦ１８の色を、牛Ｂ３０の状態に応じて異ならせてもよい。また、管理者端末表示制御部６４０は、表示される牛状態アイコンＦ１８の形状を、牛Ｂ３０の状態に応じて異ならせてもよい。俯瞰視点画面Ｅ１２では、例えば、図５に示したように、牛状態アイコンＦ１８の種類と牛Ｂ３０の状態との対応関係を示す状態アイコン種類エリアＦ１６が中央右側に設けられてもよい。なお、図５において、牛状態アイコンＦ１８におけるハッチングの濃淡の差異は、牛Ｂ３０の状態の差異を示す。
【００７０】
また、俯瞰視点画面Ｅ１２では、例えば、図５に示したように、牛Ｂ３０の最新の状態を管理者端末５０に表示させるための最新状態取得ボタンＦ１４が右上部に表示されてもよい。例えば、管理者Ｂ５０により最新状態取得ボタンＦ１４が選択された場合、管理者端末表示制御部６４０は、仮想空間ＧＵＩ生成部６３０によって直近に生成された仮想空間ＧＵＩを管理者端末５０に表示させる。それにより、牛Ｂ３０の最新の状態を示す状態情報を管理者Ｂ５０へ呈示することができる。また、牛Ｂ３０の最新の位置を示す位置情報を管理者Ｂ５０へ呈示することができる。
【００７１】
また、俯瞰視点画面Ｅ１２では、例えば、図５に示したように、管理者端末５０に表示させる仮想空間ＧＵＩに対応する時刻を選択するためのスライダである時刻スライダＦ１２が上部に表示されてもよい。例えば、現在表示されている仮想空間ＧＵＩに対応する時刻と異なる時刻が、管理者Ｂ５０により時刻スライダＦ１２を用いて選択された場合、管理者端末表示制御部６４０は、管理者Ｂ５０により選択された時刻に対応する仮想空間ＧＵＩを管理者端末５０に表示させる。具体的には、管理者端末表示制御部６４０は、選択された時刻に対応する仮想空間ＧＵＩの生成を、仮想空間ＧＵＩ生成部６３０に指示する。そして、管理者端末表示制御部６４０は、仮想空間ＧＵＩ生成部６３０により生成された仮想空間ＧＵＩを取得し、管理者端末５０に表示させる。
【００７２】
管理者Ｂ５０は、時刻スライダＦ１２を用いて、過去又は未来の時刻を選択可能であってもよい。管理者Ｂ５０により過去の時刻が選択された場合、仮想空間ＧＵＩ生成部６３０は、例えば、状態ＤＢ４１０における、選択された時刻に対応する情報を利用して、選択された時刻に対応する仮想空間ＧＵＩを生成してもよい。一方、管理者Ｂ５０により未来の時刻が選択された場合、仮想空間ＧＵＩ生成部６３０は、例えば、事前に学習される予測モデルを用いて、選択された時刻に対応する仮想空間ＧＵＩを生成してもよい。以上のように、管理者端末表示制御部６４０は、複数の時刻の各々に対応する仮想空間を切り替えて管理者端末５０に表示させてもよい。それにより、管理者Ｂ５０は、牛Ｂ３０の状態の履歴に基づいて、ドローン２０等の装置又は作業者Ｂ４０へ指示される作業を決定することができる。
【００７３】
なお、過去の時刻が選択された場合に、状態ＤＢ４１０において、選択された時刻に対応する情報が存在しない又は不足しているときには、仮想空間ＧＵＩ生成部６３０は、状態ＤＢ４１０における、選択された時刻と異なる時刻に対応する情報を利用して、仮想空間ＧＵＩを生成してもよい。具体的には、仮想空間ＧＵＩ生成部６３０は、状態ＤＢ４１０に含まれる情報のうち、選択された時刻の直前及び直後の時刻に対応する情報を線形補間することによって、仮想空間ＧＵＩを生成してもよい。また、仮想空間ＧＵＩ生成部６３０は、状態ＤＢ４１０に含まれる情報のうち、選択された時刻の直前の時刻に対応する情報に基づいて、仮想空間ＧＵＩを生成してもよい。
【００７４】
また、俯瞰視点画面Ｅ１２では、例えば、図５に示したように、後述する一人称視点画面における視点を示す視点アイコンＦ２２及び視界を示す視界アイコンＦ２３が表示されてもよい。管理者端末表示制御部６４０は、管理者Ｂ５０からの操作入力に応じて、視点アイコンＦ２２及び視界アイコンＦ２３の表示を制御してもよい。管理者Ｂ５０は、俯瞰視点画面Ｅ１２において、視点アイコンＦ２２の位置を調整することによって、後述する一人称視点画面における視点を設定可能である。そして、管理者Ｂ５０は、俯瞰視点画面Ｅ１２において視点アイコンＦ２２の向きを調整することにより、後述する一人称視点画面における視線方向を調整することによって、視界を設定可能である。
【００７５】
管理者端末表示制御部６４０は、管理者Ｂ５０からの操作入力に応じて、図５に示した牧場を上空から見た仮想空間を示す俯瞰視点画面Ｅ１２の表示と、図６に示した牧場を地上から見た仮想空間を示す一人称視点画面Ｅ１４の表示とを切り替え可能であってもよい。俯瞰視点画面Ｅ１２によれば、一人称視点画面Ｅ１４と比較して、牧場における広域にわたる牛Ｂ３０の状態を確認することができる。一方、一人称視点画面Ｅ１４によれば、俯瞰視点画面Ｅ１２と比較して、各牛Ｂ３０についてのより詳細な情報の確認及び作業情報の入力を行うことができる。以下、このような一人称視点画面Ｅ１４の詳細について説明する。
【００７６】
図６は、管理者端末５０に表示される一人称視点画面Ｅ１４の一例を示す説明図である。一人称視点画面Ｅ１４は、牧場を地上から見た仮想空間を示す仮想空間ＧＵＩである。このように、管理者端末表示制御部６４０は、地上から見た仮想空間を管理者端末５０に表示させてもよい。一人称視点画面Ｅ１４では、俯瞰視点画面Ｅ１２において視界アイコンＦ２３により示された視界に映る牛Ｂ３０の状態情報及び位置情報が主に表示される。
【００７７】
図６に示したように、一人称視点画面Ｅ１４では、例えば、俯瞰視点画面Ｅ１２と同様に、牛Ｂ３０の位置を示す牛画像Ｆ１７が、牧場の外観を示す牧場画像Ｆ２０に重畳して表示される。また、一人称視点画面Ｅ１４において、ドローン２０及び作業者Ｂ４０の位置を示す画像が表示されてもよい。一人称視点画面Ｅ１４では、視点が地上に位置するので、俯瞰視点画面Ｅ１２と比較して、作業者Ｂ４０の視界に映る光景により近い画像を管理者Ｂ５０へ呈示することができる。
【００７８】
また、一人称視点画面Ｅ１４では、図６に示したように、牛状態アイコンＦ１８が示す状態に関連するメッセージＦ２８が当該牛状態アイコンＦ１８の近傍に表示されてもよい。例えば、メッセージＦ２８は、牛状態アイコンＦ１８が示す状態のより詳細な情報であってもよい。また、メッセージＦ２８は、牛状態アイコンＦ１８に相当する状態情報を生成するために用いられた情報であってもよい。具体的には、状態情報生成部６２０により、牛Ｂ３０の体温が高熱である旨、咳をしている旨、及び鼻汁が出ている旨を示す第１の状態情報に基づいて、牛Ｂ３０が病気を患っている可能性がある旨を示す第２の状態情報が生成された場合において、当該第１の状態情報が図６に示したようにメッセージＦ２８として表示されてもよい。
【００７９】
また、一人称視点画面Ｅ１４では、図６に示したように、牛状態アイコンＦ１８及び当該牛状態アイコンＦ１８に対応するメッセージＦ２８は、牛画像Ｆ１７において当該メッセージＦ２８に対応する部位の近傍に表示されてもよい。具体的には、図６に示したように、病気を患っている可能性がある旨を示す牛状態アイコンＦ１８並びに咳をしている旨及び鼻汁が出ている旨を示すメッセージＦ２８は、牛画像Ｆ１７における鼻の近傍に表示されてもよい。
【００８０】
また、一人称視点画面Ｅ１４は、ドローン２０等の装置又は作業者端末４０へ指示される作業を示す作業情報についての管理者Ｂ５０による入力を受け付けるための入力画面に相当し得る。一人称視点画面Ｅ１４の入力画面としての機能は、例えば、作業選択ウィンドウＦ２６によって、実現される。一人称視点画面Ｅ１４において、作業選択ウィンドウＦ２６は、ドローン２０等の装置又は作業者Ｂ４０へ指示される作業を示す作業情報を管理者Ｂ５０が入力するために、例えば、当該作業に対応する牛Ｂ３０を示す牛画像Ｆ１７の近傍に設けられる。
【００８１】
作業選択ウィンドウＦ２６では、状態情報に基づいて生成された牛Ｂ３０に関連する作業の複数の候補が表示されてもよい。例えば、作業選択ウィンドウＦ２６では、図６に示したように、「牛舎へ移動させる」、「ビタミン剤の投与」、及び「人工授精」が作業の候補として表示される。また、作業選択ウィンドウＦ２６では、作業の候補の各々について当該作業に要する推定時間が表示されてもよい。なお、作業選択ウィンドウＦ２６では、牛Ｂ３０の属性、牧場における設備の状況等に起因して、実行することができない作業の候補を示す領域は、グレーアウトされてもよい。作業選択ウィンドウＦ２６に表示された作業の候補において、管理者Ｂ５０により選択された作業を示す作業情報が、状態情報に基づいて入力された作業情報として、管理者端末５０から情報処理装置１０へ送信される。
【００８２】
牛Ｂ３０に関連する作業の複数の候補は、例えば、管理者端末表示制御部６４０によって、状態情報に基づいて生成される。以上のように、管理者端末表示制御部６４０は、状態情報に基づいて生成された牛Ｂ３０に関連する作業の複数の候補を、管理者端末５０に表示させてもよい。それにより、管理者Ｂ５０は、ドローン２０等の装置又は作業者Ｂ４０へ指示される作業を、より容易に決定することができる。
【００８３】
なお、一人称視点画面Ｅ１４において、管理者Ｂ５０により牛Ｂ３０が選択されたことをトリガとして、選択された牛Ｂ３０に対応する作業選択ウィンドウＦ２６が表示されてもよい。また、作業選択ウィンドウＦ２６では、選択された牛Ｂ３０の名称及び生後月数が表示されてもよい。また、作業選択ウィンドウＦ２６は、図６に示したように、選択された牛Ｂ３０を示す吹き出し形状であってもよい。
【００８４】
上記では、管理者Ｂ５０が、表示された作業の候補の中から作業を選択することによって、作業情報を入力する例について説明したが、作業の候補の中からの作業の選択以外の方法によって、管理者Ｂ５０による作業情報の入力が行われてもよい。例えば、管理者Ｂ５０は、表示された牛Ｂ３０の状態情報に基づいて、ドローン２０等の装置又は作業者Ｂ４０へ指示される作業を判断し、当該作業を示す作業情報を入力してもよい。係る場合には、作業選択ウィンドウＦ２６は、表示されなくてもよい。
【００８５】
上記では、管理者Ｂ５０による作業情報の入力が一人称視点画面Ｅ１４において受付可能である例について説明したが、管理者Ｂ５０による作業情報の入力は、俯瞰視点画面Ｅ１２において受付可能であってもよい。例えば、俯瞰視点画面Ｅ１２において作業選択ウィンドウＦ２６が表示されてもよい。
【００８６】
また、俯瞰視点画面Ｅ１２及び一人称視点画面Ｅ１４を利用して、管理者Ｂ５０が作業者Ｂ４０と通話可能に構成されてもよい。例えば、俯瞰視点画面Ｅ１２又は一人称視点画面Ｅ１４において、作業者Ｂ４０を示す画像が表示される場合において、管理者Ｂ５０が当該作業者Ｂ４０を示す画像を選択した場合に、管理者端末５０と作業者端末４０が通信を開始することにより、管理者Ｂ５０と作業者Ｂ４０とが通話可能になってもよい。
【００８７】
また、俯瞰視点画面Ｅ１２及び一人称視点画面Ｅ１４に表示される牧場画像Ｆ２０等の画像は、予め記憶部４００に記憶される三次元モデルを用いて生成されてもよい。また、当該三次元モデルは、ドローン２０により撮像された画像に基づいて生成され又は更新されてもよい。また、俯瞰視点画面Ｅ１２及び一人称視点画面Ｅ１４の一部は、ドローン２０等によって撮像された画像により構成されてもよい。また、上述では、管理者端末表示制御部６４０が牧場における屋外についての画面を管理者端末５０に表示させる例について説明したが、管理者端末表示制御部６４０は、牧場における屋内についての画面を管理者端末５０に表示させてもよい。なお、管理者端末表示制御部６４０は、牧場における屋内及び屋外のいずれか一方又は双方について、管理者端末５０による画面の表示を制御してもよい。
【００８８】
また、管理者端末表示制御部６４０は、管理者Ｂ５０からの操作入力をトリガとして、管理者端末５０への仮想空間ＧＵＩの表示を行ってもよい。その場合、管理者端末表示制御部６４０は、管理者Ｂ５０からの操作入力に応じて、仮想空間ＧＵＩ生成部６３０へ仮想空間ＧＵＩの生成を指示してもよい。また、管理者端末表示制御部６４０は、仮想空間ＧＵＩ生成部６３０により仮想空間ＧＵＩが生成されたことをトリガとして、管理者端末５０へ表示させる仮想空間ＧＵＩを更新してもよい。また、管理者端末表示制御部６４０は、所定時間が経過したことをトリガとして、管理者端末５０へ表示させる仮想空間ＧＵＩを更新してもよい。
【００８９】
（作業情報生成部）
作業情報生成部６５０は、状態情報に基づいて、作業情報を生成し、指示情報生成部６６０へ出力する。作業情報生成部６５０は、例えば、ＤＢ操作部６１０を介して状態ＤＢ４１０に含まれる状態情報を取得してもよい。
【００９０】
本実施形態に係る牧場管理システム１では、作業情報の入力が管理者Ｂ５０により管理者端末５０を用いて行われる手動モードと、作業情報の入力が管理者Ｂ５０の操作によらず情報処理装置１０によって行われる自動モードとを切り替え可能に構成されてもよい。手動モードと自動モードの切り替えは、例えば、管理者端末５０への管理者Ｂ５０からの操作入力に応じて、行われてもよい。モード切り替えが行われたことを示す情報は、管理者端末５０から情報処理装置１０へ送信される。作業情報生成部６５０による作業情報の生成は、具体的には、作業情報の入力が自動モードである場合に行われる。
【００９１】
手動モードである場合には、上述したように、一人称視点画面Ｅ１４において、管理者Ｂ５０による作業情報の入力が受け付けられ、当該作業情報は管理者端末５０から情報処理装置１０へ送信される。この場合、情報処理装置１０は、管理者端末５０から送信された当該作業情報が示す作業を指示するための指示情報を出力する。一方、自動モードである場合には、情報処理装置１０における作業情報生成部６５０が、状態情報に基づいて、作業情報を生成する。この場合、情報処理装置１０は、作業情報生成部６５０により生成された当該作業情報が示す作業を指示するための指示情報を出力する。なお、指示情報の出力に関する処理の詳細については、後述する。
【００９２】
このように、作業情報生成部６５０により、状態情報に基づいて、作業情報が生成されることによって、管理者Ｂ５０による作業情報の入力の負担を省略することができる。それにより、牛Ｂ３０の管理における人的負担を軽減することができる。
【００９３】
作業情報生成部６５０は、例えば、事前に学習される予測モデルを用いて状態情報から作業情報を予測することによって、作業情報を生成してもよい。事前の学習処理では、管理者Ｂ５０により入力された作業情報と当該作業情報に対応する状態情報とのペアが多数用意される。ここで用意される作業情報及び状態情報は、教師あり学習における教師情報及び生徒情報にそれぞれ相当する。そして、例えばブースティング又はサポートベクタマシンといった既存のアルゴリズムに従って、状態情報から作業情報を予測するための予測モデルが構築される。当該予測モデルは、記憶部４００に記憶される。作業情報生成部６５０は、当該予測モデルを用いた予測を行うことによって、状態情報に基づいて、作業情報を特定してもよい。
【００９４】
なお、作業情報生成部６５０による作業情報の生成は、ＤＢ操作部６１０により状態ＤＢ４１０が更新されたことをトリガとして、行われてもよい。また、作業情報生成部６５０による作業情報の生成は、所定時間が経過したことをトリガとして、行われてもよい。
【００９５】
（指示情報生成部）
指示情報生成部６６０は、ドローン２０等の外部の装置及び作業者Ｂ４０に対して作業を指示するための指示情報を生成する。例えば、指示情報生成部６６０は、牛Ｂ３０に関連する作業を示す作業情報に基づいて、当該作業情報が示す作業を指示するための指示情報を生成する。指示情報生成部６６０は、管理者Ｂ５０により入力された作業情報を情報処理装置１０が受信したことをトリガとして、当該作業情報が示す作業を指示するための指示情報を生成してもよい。なお、作業情報生成部６５０によって作業情報が生成される場合において、指示情報生成部６６０は、作業情報が生成されたことをトリガとして、当該作業情報が示す作業を指示するための指示情報を生成してもよい。
【００９６】
また、指示情報生成部６６０は、生成された指示情報をＤＢ操作部６１０へ出力することにより、指示ＤＢ４２０への指示情報の登録をＤＢ操作部６１０に行わせてもよい。指示情報生成部６６０は、作業が指示される対象である指示対象を決定し、決定された当該指示対象を示す情報をＤＢ操作部６１０へ出力することにより、指示ＤＢ４２０への当該指示対象を示す情報の登録をＤＢ操作部６１０に行わせてもよい。それにより、指示情報と、当該指示対象を示す情報と、が紐付けられる。
【００９７】
指示情報生成部６６０は、例えば、作業者Ｂ４０及び外部の装置の各々と作業情報に対応する牛Ｂ３０との距離に基づいて、作業が指示される対象である指示対象を決定してもよい。具体的には、図６に示した作業選択ウィンドウＦ２６において、管理者Ｂ５０により、牛Ｂ３０に関連する作業として、「牛舎へ移動させる」が選択された場合、指示情報生成部６６０は、当該牛Ｂ３０から最も近い位置に位置する作業者Ｂ４０を指示対象として決定してもよい。その場合、当該牛Ｂ３０を牛舎へ移動させる作業を指示するための指示情報と、指示対象が当該作業者Ｂ４０である旨を示す情報と、が紐付けられる。
【００９８】
また、指示情報生成部６６０は、作業者Ｂ４０及び外部の装置の各々の稼働状況に基づいて、指示対象を決定してもよい。具体的には、管理者Ｂ５０により、牛Ｂ３０に関連する作業として、「牛舎へ移動させる」が選択された場合、当該牛Ｂ３０から所定の距離以下の範囲において、作業を実行することが可能な作業者Ｂ４０が存在しないとき、ドローン２０を指示対象として決定してもよい。その場合、当該牛Ｂ３０を牛舎へ移動させる作業を指示するための指示情報と、指示対象がドローン２０である旨を示す情報と、が紐付けられる。
【００９９】
ここで、上述した指示ＤＢ４２０について、より詳細に説明する。指示ＤＢ４２０は、例えば、データテーブル形式であってもよい。図７は、指示ＤＢ４２０のデータテーブルＤ２０の一例を示す説明図である。データテーブルＤ２０には、ＤＢ操作部６１０によって、各種データが登録され得る。
【０１００】
図７に示したように、データテーブルＤ２０では、各行において、指示情報が出力された時刻、当該指示情報、及び他の各種情報が紐付けられている。データテーブルＤ２０において、「指示開始時刻」及び「作業完了時刻」は、指示情報の出力が開始された時刻、及び指示情報に対応する作業が完了した時刻をそれぞれ示す。なお、情報処理装置１０は、指示情報に対応する作業が完了した旨を示す情報を受信した場合に、指示情報の出力を終了してもよい。この場合、「作業完了時刻」は、指示情報の出力が終了した時刻を示す。また、「ステータス」は、指示される作業の進行状態を示す。また、「指示主体」は、指示される作業を示す作業情報を入力した主体を示す。なお、指示情報生成部６６０により指示情報が生成された場合、指示情報生成部６６０が指示主体に相当する。また、「指示対象」は、作業が指示される対象を示す。ここで、指示情報は、例えば、「作業対象」、「作業種別」、及び「作業詳細」を含む。「作業対象」は、指示される作業に対応する牛Ｂ３０を示す。また、「作業種別」は、指示される作業の種別を示す。また、「作業詳細」は、指示される作業の詳細情報を示す。
【０１０１】
例えば、図７に示したように、データテーブルＤ２０において、領域Ｇ２０に対応する行には、牛ＩＤ「０１３４」の牛Ｂ３０を牛舎へ移動させる作業を指示するための指示情報が示されている。また、当該作業が指示される対象である指示対象が図１における作業者Ｂ４０に相当する農場労働者Ａであることが示されている。ゆえに、当該指示情報の出力先は、農場労働者Ａが用いる作業者端末４０である。また、指示主体が図１における管理者Ｂ５０に相当する農場管理者Ａであることが示されている。また、２０１５年１２月１４日１５時３５分に当該指示情報の出力が開始されており、当該指示情報に対応する作業は完了しておらず、未処理の状態であることが示されている。
【０１０２】
なお、指示情報生成部６６０は、管理者Ｂ５０により入力された作業情報を情報処理装置１０が受信したこと、及び作業情報生成部６５０により作業情報が生成されたことによらず、指示情報を生成してもよい。例えば、指示情報生成部６６０は、所定時間が経過したことをトリガとして、予め設定された作業を指示させるための指示情報を生成してもよい。具体的には、指示情報生成部６６０は、１０分おきに、物理量の検出をセンサ３０に対して指示するための指示情報を生成してもよい。また、指示情報生成部６６０は、１時間おきに、所定の場所の撮像をドローン２０に対して指示するための指示情報を生成してもよい。また、指示情報生成部６６０は、ドローン２０等の外部の装置と作業者Ｂ４０とが互いに協調して実行する作業を、当該外部の装置及び作業者Ｂ４０に対して指示するための指示情報を生成してもよい。
【０１０３】
（拡張現実ＧＵＩ生成部）
拡張現実ＧＵＩ生成部６７０は、作業者端末４０に表示させるための情報として、拡張現実ＧＵＩを生成し、作業者端末表示制御部６８０へ出力する。生成された拡張現実ＧＵＩは、作業者端末表示制御部６８０がヘッドマウントディスプレイである作業者端末４０ｃによる画面の表示を制御することによって、作業者端末４０ｃに表示される。それにより、現実世界が拡張された感覚を作業者Ｂ４０へ呈示することができる。
【０１０４】
拡張現実ＧＵＩ生成部６７０は、記憶部４００に記憶される情報に基づいて、拡張現実ＧＵＩを生成する。具体的には、拡張現実ＧＵＩ生成部６７０は、指示ＤＢ４２０に基づいて、作業を指示するための指示情報を含む拡張現実ＧＵＩを生成する。また、拡張現実ＧＵＩ生成部６７０は、指示情報の出力先がヘッドマウントディスプレイである作業者端末４０ｃである場合に、拡張現実ＧＵＩを生成する。拡張現実ＧＵＩ生成部６７０は、例えば、ＤＢ操作部６１０により指示ＤＢ４２０が更新されたことをトリガとして、拡張現実ＧＵＩを生成する。また、拡張現実ＧＵＩ生成部６７０により生成され、作業者端末４０ｃに表示される拡張現実ＧＵＩの詳細については、後述する。
【０１０５】
（作業者端末表示制御部）
作業者端末表示制御部６８０は、作業者端末４０による画面の表示を制御する。具体的には、作業者端末表示制御部６８０は、各種画面を作業者端末４０に表示させるための情報の作業者端末４０への送信を通信部２００に行わせることによって、作業者端末４０による画面の表示を制御する。また、作業者端末表示制御部６８０は、作業者Ｂ４０からの操作入力に応じて、作業者端末４０による画面の表示を制御してもよい。
【０１０６】
作業者端末表示制御部６８０は、指示情報を作業者Ｂ４０が用いる作業者端末４０へ出力することにより、指示情報を作業者Ｂ４０へ通知する。指示情報を受信した作業者端末４０には、当該指示情報が表示される。それにより、作業者Ｂ４０への指示情報の通知が実現される。ゆえに、作業者Ｂ４０は、実際の牛Ｂ３０の状態に応じて、実行する作業を適宜判断することなく、状態情報に基づいて判断された作業を実行することができる。よって、作業者Ｂ４０による実際の牛Ｂ３０の状態の確認や、牧場全体の状況の確認等における人的負担を軽減しつつ、牛Ｂ３０を適切に管理することができる。従って、牛Ｂ３０の管理をより効率化することが可能である。
【０１０７】
以上のように、作業者端末表示制御部６８０は、指示情報を出力する本開示に係る出力部に相当する。作業者端末表示制御部６８０は、例えば、ＤＢ操作部６１０により指示ＤＢ４２０が更新されたことをトリガとして、指示情報を出力する。なお、作業者Ｂ４０への指示情報の通知は、当該指示情報の表示により実現される例に限定されず、例えば、当該指示情報の音声出力により実現されてもよい。具体的には、制御部６００は、作業者端末４０による音声出力を制御する音声出力制御部を含んでもよい。その場合には、当該音声出力制御部が、指示情報を作業者端末４０へ出力することにより、指示情報を作業者Ｂ４０へ通知する出力部に相当し得る。
【０１０８】
また、作業者端末表示制御部６８０は、拡張現実ＧＵＩ生成部６７０により生成された拡張現実ＧＵＩをヘッドマウントディスプレイである作業者端末４０ｃに表示させてもよい。それにより、作業者Ｂ４０の視界の少なくとも一部に指示情報を含む拡張現実ＧＵＩが重畳して表示される。以下、作業者端末４０ｃによって表示される画面の例について説明する。
【０１０９】
図８は、作業者端末４０に表示される重畳画面Ｅ２０の一例を示す説明図である。重畳画面Ｅ２０は、牧場を地上から見た作業者Ｂ４０の視界の少なくとも一部に重畳して表示される拡張現実ＧＵＩである。重畳画面Ｅ２０では、作業者Ｂ４０の視界に映る実空間における牛Ｂ３０に対応する指示情報が主に表示される。
【０１１０】
図８では、作業者Ｂ４０の視界に映る実空間における牛Ｂ３０、牧場Ｂ３２、及び牧場Ｂ３２の背景の一例である山Ｂ３４が示されている。ここで、図８では、重畳画面Ｅ２０において、牛Ｂ３０を牛舎へ移動させる作業を指示するための指示情報が表示される例が示されている。例えば、重畳画面Ｅ２０では、図８に示したように、当該指示情報として、メッセージＦ３０、オブジェクトＦ３２、及び矢印Ｆ３４が示されている。メッセージＦ３０は、当該指示情報に対応する作業の詳細を示す。また、メッセージＦ３０は、当該指示情報に対応する牛Ｂ３０を示す吹き出し形状であってもよい。オブジェクトＦ３２は、当該指示情報に対応する牛Ｂ３０を示すために、当該牛Ｂ３０の近傍に表示される。矢印Ｆ３４は、当該牛Ｂ３０に対する牛舎の方向を示す。換言すると、矢印Ｆ３４は、指示情報に対応する作業において、牛Ｂ３０を移動させる方向を示す。
【０１１１】
作業者Ｂ４０の視界の少なくとも一部に指示情報を含む拡張現実ＧＵＩが重畳して表示されることにより、作業者Ｂ４０は、指示された作業に対応する実空間における牛Ｂ３０が視界に映った状態で、指示情報を確認することができる。それにより、作業者Ｂ４０は、牛Ｂ３０に関連する作業を、より円滑に実行することができる。
【０１１２】
上記では、作業者端末表示制御部６８０が、拡張現実ＧＵＩを利用して、ヘッドマウントディスプレイである作業者端末４０ｃによる画面の表示を制御する例について主に説明したが、作業者端末表示制御部６８０は、他の種類の作業者端末４０による画面の表示を制御してもよい。例えば、作業者端末表示制御部６８０は、パーソナルコンピュータである作業者端末４０ａ又はスマートフォンである作業者端末４０ｂによる画面の表示を制御してもよい。その場合には、作業者端末表示制御部６８０は、例えば、ＤＢ操作部６１０を介して指示ＤＢ４２０から指示情報を取得し、当該指示情報を作業者端末４０へ出力してもよい。
【０１１３】
なお、作業者端末表示制御部６８０により出力された指示情報に対応する作業が完了した場合、作業者Ｂ４０は、作業者端末４０へ当該作業が完了した旨を示す情報を入力する。それにより、作業者端末４０から情報処理装置１０へ当該情報が送信される。作業者端末表示制御部６８０は、情報処理装置１０により当該情報が受信されたことをトリガとして、指示情報の出力を終了する。また、ＤＢ操作部６１０は、当該指示情報に対応する作業が完了した旨を示す情報を指示ＤＢ４２０へ登録する。
【０１１４】
（駆動制御部）
駆動制御部６９０は、ドローン２０又はセンサ３０等の外部の装置の動作を制御する。具体的には、駆動制御部６９０は、外部の装置の動作を制御するための動作指令の当該外部の装置への送信を通信部２００に行わせることによって、当該外部の装置の動作を制御する。また、駆動制御部６９０は、指示情報を外部の装置へ出力することにより、当該外部の装置による作業の実行を制御する出力部に相当する。駆動制御部６９０は、例えば、ＤＢ操作部６１０により指示ＤＢ４２０が更新されたことをトリガとして、指示情報を出力する。
【０１１５】
駆動制御部６９０により作業の実行が制御される外部の装置は、ドローン２０を含んでもよい。換言すると、駆動制御部６９０は、指示情報をドローン２０へ出力することにより、ドローン２０による作業の実行を制御してもよい。それにより、状態情報に基づいて判断された作業の実行が、ドローン２０によって、実現される。例えば、ドローン２０は、指示情報に基づいて、牛Ｂ３０の誘導、ドローン２０に搭載されたセンサ３０による物理量の検出、又はドローン２０に搭載された撮像装置による撮像等の作業を実行し得る。よって、作業者Ｂ４０による実際の牛Ｂ３０の状態の確認や、牧場全体の状況の確認に加えて、牛Ｂ３０に関連する作業における人的負担を軽減しつつ、牛Ｂ３０を適切に管理することができる。従って、牛Ｂ３０の管理をさらに効率化することが可能である。
【０１１６】
また、駆動制御部６９０により作業の実行が制御される外部の装置は、センサ３０を含んでもよい。換言すると、駆動制御部６９０は、指示情報をセンサ３０へ出力することにより、センサ３０による作業の実行を制御する出力部に相当する。それにより、状態情報に基づいて判断された作業の実行が、センサ３０によって、実現される。例えば、センサ３０は、指示情報に基づいて、物理量の検出の作業を実行し得る。また、センサ３０は、指示情報に基づいて、検出された物理量に対してさらに演算処理を施してもよい。よって、作業者Ｂ４０による実際の牛Ｂ３０の状態の確認や、牧場全体の状況の確認に加えて、牛Ｂ３０に関連する作業における人的負担を軽減しつつ、牛Ｂ３０を適切に管理することができる。従って、牛Ｂ３０の管理をさらに効率化することが可能である。
【０１１７】
なお、駆動制御部６９０により作業の実行が制御される外部の装置は、ドローン２０及びセンサ３０以外の装置を含んでもよい。例えば、当該外部の装置として、自動走行車両等の移動体が適用されてもよい。この場合には、駆動制御部６９０は、指示情報を当該自動走行車両等へ出力することにより、当該自動走行車両等による作業の実行を制御し得る。
【０１１８】
また、駆動制御部６９０により出力された指示情報に対応する作業が完了した場合、ドローン２０又はセンサ３０等の外部の装置は、情報処理装置１０へ当該作業が完了した旨を示す情報を送信する。駆動制御部６９０は、情報処理装置１０により当該情報が受信されたことをトリガとして、指示情報の出力を終了する。また、ＤＢ操作部６１０は、当該指示情報に対応する作業が完了した旨を示す情報を指示ＤＢ４２０へ登録する。
【０１１９】
＜３．動作＞
続いて、本実施形態に係る牧場管理システム１が行う各種処理の流れについて説明する。
【０１２０】
［３−１．指示情報の取得処理］
まず、図９を参照して、本実施形態に係る情報処理装置１０が行う指示情報の取得処理の流れについて説明する。図９は、本実施形態に係る情報処理装置１０が行う指示情報の取得処理の流れの一例を示すフローチャートである。なお、図９では、状態情報の取得、及び状態ＤＢ４１０への登録が行われた後における処理の流れを示す。
【０１２１】
指示情報の取得処理では、図９に示したように、まず、情報処理装置１０は、作業情報の入力が自動モードであるか否かを判定する（ステップＳ５０２）。作業情報の入力が自動モードであると判定された場合（ステップＳ５０２／ＹＥＳ）、ステップＳ５０８の処理へ進む。一方、作業情報の入力が自動モードでないと判定された場合（ステップＳ５０２／ＮＯ）、仮想空間ＧＵＩ生成部６３０は、状態ＤＢ４１０に基づいて、牛Ｂ３０の状態を示す状態情報を含む仮想空間ＧＵＩを生成し（ステップＳ５０４）、管理者端末表示制御部６４０へ出力する。次に、管理者端末表示制御部６４０は、仮想空間ＧＵＩ生成部６３０により生成された仮想空間ＧＵＩを管理者端末５０に表示させる（ステップＳ５０６）。
【０１２２】
そして、作業情報が、管理者Ｂ５０により管理者端末５０へ状態情報に基づいて入力され、管理者端末５０から情報処理装置１０へ送信される。通信部２００は、当該作業情報を取得する（ステップＳ５０８）。なお、作業情報の入力が自動モードであると判定された場合（ステップＳ５０２／ＹＥＳ）、作業情報は、作業情報生成部６５０により状態情報に基づいて生成されることによって、情報処理装置１０により取得される（ステップＳ５０８）。次に、指示情報生成部６６０は、牛Ｂ３０に関連する作業を示す作業情報に基づいて、当該作業情報が示す作業を指示するための指示情報を生成する（ステップＳ５１０）。そして、ＤＢ操作部６１０は、指示情報生成部６６０から入力された指示情報を指示ＤＢ４２０に登録し（ステップＳ５１２）、図９に示した処理は終了する。
【０１２３】
［３−２．指示情報の出力処理］
次に、図１０を参照して、本実施形態に係る情報処理装置１０が行う指示情報の出力処理の流れについて説明する。図１０は、本実施形態に係る情報処理装置１０が行う指示情報の出力処理の流れの一例を示すフローチャートである。なお、図１０では、ＤＢ操作部６１０による指示ＤＢ４２０への指示情報の登録が行われた後における処理の流れを示す。
【０１２４】
指示情報の出力処理では、図１０に示したように、まず、情報処理装置１０は、指示ＤＢ４２０において未処理の指示情報があるか否かを判定する（ステップＳ６０２）。指示ＤＢ４２０において未処理の指示情報がないと判定された場合（ステップＳ６０２／ＮＯ）、図１０に示した処理は終了する。一方、指示ＤＢ４２０において未処理の指示情報があると判定された場合（ステップＳ６０２／ＹＥＳ）、情報処理装置１０は、指示情報の出力先が作業者端末４０であるか否かを判定する（ステップＳ６０４）。
【０１２５】
指示情報の出力先が作業者端末４０であると判定された場合（ステップＳ６０４／ＹＥＳ）、拡張現実ＧＵＩ生成部６７０は、指示ＤＢ４２０に基づいて、作業を指示するための指示情報を含む拡張現実ＧＵＩを生成し（ステップＳ６０６）、作業者端末表示制御部６８０へ出力する。そして、作業者端末表示制御部６８０は、拡張現実ＧＵＩ生成部６７０により生成された拡張現実ＧＵＩをヘッドマウントディスプレイである作業者端末４０ｃに表示させる（ステップＳ６０８）。それにより、作業者Ｂ４０への指示情報の通知が実現される。なお、指示情報の出力先の作業者端末４０が、パーソナルコンピュータである作業者端末４０ａ又はスマートフォンである作業者端末４０ｂである場合には、作業者端末表示制御部６８０は、例えば、ＤＢ操作部６１０を介して指示ＤＢ４２０から指示情報を取得し、当該指示情報を作業者端末４０へ出力してもよい。情報処理装置１０が行う処理は、ステップＳ６０８の処理の後、ステップＳ６１２の処理へ進む。
【０１２６】
一方、ステップＳ６０４の判定処理において、指示情報の出力先が作業者端末４０でないと判定された場合（ステップＳ６０４／ＮＯ）、駆動制御部６９０は、指示情報をドローン２０又はセンサ３０等の外部の装置へ出力する（ステップＳ６１０）。それにより、当該外部の装置による作業の実行が実現される。
【０１２７】
ステップＳ６０８又はステップＳ６１０の処理の後、通信部２００は、指示情報の出力先である作業者端末４０又はドローン２０等の外部の装置から作業が完了した旨の情報を受信する。そして、ＤＢ操作部６１０は、当該情報を指示ＤＢ４２０へ登録することによって、指示ＤＢ４２０を更新し（ステップＳ６１２）、ステップＳ６０２の処理へ戻る。
【０１２８】
［３−３．牧場管理処理］
続いて、本実施形態に係る牧場管理システム１がシステム全体として行う処理の流れに対する理解を容易にするために、図１１を参照して、牧場管理システム１が行う牧場を管理するための牧場管理処理の流れについて説明する。図１１は、本実施形態に係る牧場管理システム１が行う牧場管理処理の流れの一例を示すフローチャートである。図１１では、作業情報の入力が手動モードであり、指示情報の出力先がヘッドマウントディスプレイに相当する作業者端末４０ｃである場合における牧場管理処理の流れの一例が示されている。
【０１２９】
牧場管理処理では、図１１に示したように、まず、情報処理装置１０が、牛Ｂ３０の状態を示す状態情報を含む仮想空間ＧＵＩを生成する（ステップＳ７０２）。そして、情報処理装置１０は、生成された仮想空間ＧＵＩを管理者端末５０に表示させる（ステップＳ７０４）。次に、管理者端末５０が、管理者Ｂ５０による操作入力によって、作業情報を取得する（ステップＳ７０６）。そして、管理者端末５０は、作業情報を情報処理装置１０へ送信する（ステップＳ７０８）。
【０１３０】
次に、情報処理装置１０が、取得した作業情報に基づいて、当該作業情報が示す作業を指示するための指示情報を生成する（ステップＳ７１０）。そして、情報処理装置１０は、指示情報を含む拡張現実ＧＵＩを生成する（ステップＳ７１２）。そして、情報処理装置１０は、拡張現実ＧＵＩを作業者端末４０ｃに表示させる（ステップＳ７１４）。次に、作業者端末４０が、拡張現実ＧＵＩを作業者Ｂ４０の視界の少なくとも一部に重畳させて表示することによって、作業者Ｂ４０へ指示情報を通知する（ステップＳ７１６）。作業が完了した後、作業者端末４０は、作業者Ｂ４０による操作入力によって、作業が完了した旨の情報を取得し、情報処理装置１０へ送信する（ステップＳ７１７）。次に、情報処理装置１０が、当該情報を指示ＤＢ４２０へ登録することによって、指示ＤＢ４２０を更新し（ステップＳ７１８）、ステップＳ７０２の処理へ戻る。
【０１３１】
＜４．ハードウェア構成＞
以上、本開示の実施形態を説明した。上述した情報処理装置１０の処理は、ソフトウェアと、以下に説明する情報処理装置１０のハードウェアとの協働により実現される。
【０１３２】
図１２は、本開示に係る情報処理装置１０のハードウェア構成の一例を示す説明図である。図１２に示したように、情報処理装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１４２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１４４と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１４６と、ブリッジ１４８と、バス１５０と、インタフェース１５２と、入力装置１５４と、出力装置１５６と、ストレージ装置１５８と、ドライブ１６０と、接続ポート１６２と、通信装置１６４とを備える。
【０１３３】
ＣＰＵ１４２は、演算処理装置および制御装置として機能し、各種プログラムと協働して情報処理装置１０内の各機能構成の動作を実現する。また、ＣＰＵ１４２は、マイクロプロセッサであってもよい。ＲＯＭ１４４は、ＣＰＵ１４２が使用するプログラムまたは演算パラメータ等を記憶する。ＲＡＭ１４６は、ＣＰＵ１４２の実行において使用するプログラムまたは実行において適宜変化するパラメータ等を一時記憶する。ＣＰＵ１４２、ＲＯＭ１４４およびＲＡＭ１４６は、ＣＰＵバスなどから構成される内部バスにより相互に接続されている。
【０１３４】
入力装置１５４は、例えば、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチおよびレバーなどオペレータが情報を入力するための入力手段であり、オペレータによる入力に基づいて入力信号を生成し、ＣＰＵ１４２に出力する入力制御回路などから構成されている。情報処理装置１０のオペレータは、入力装置１５４を操作することにより、情報処理装置１０に対して各種のデータを入力したり処理動作を指示したりすることができる。
【０１３５】
出力装置１５６は、例えば、液晶ディスプレイ（ＬＣＤ）装置、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）装置、ランプなどの装置への出力を行う。さらに、出力装置１５６は、スピーカおよびヘッドフォンなどの音声出力を行ってもよい。
【０１３６】
ストレージ装置１５８は、データ格納用の装置である。ストレージ装置１５８は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置等を含んでもよい。ストレージ装置１５８は、ＣＰＵ１４２が実行するプログラムや各種データを格納する。
【０１３７】
ドライブ１６０は、記憶媒体用リーダライタであり、情報処理装置１０に内蔵、あるいは外付けされる。ドライブ１６０は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に記録されている情報を読み出して、ＲＡＭ１４４に出力する。また、ドライブ１６０は、リムーバブル記憶媒体に情報を書込むこともできる。
【０１３８】
接続ポート１６２は、例えば、情報処理装置１０の外部の情報処理装置または周辺機器と接続するためのバスである。また、接続ポート１６２は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）であってもよい。
【０１３９】
通信装置１６４は、例えば、ネットワークに接続するための通信デバイスで構成された通信インタフェースである。また、通信装置１６４は、赤外線通信対応装置であっても、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）対応通信装置であっても、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）対応通信装置であっても、有線による通信を行うワイヤー通信装置であってもよい。
【０１４０】
なお、上述のような本実施形態に係る情報処理装置１０の各機能を実現するためのコンピュータプログラムを作製し、ＰＣ等に実装することが可能である。本実施形態に係る情報処理装置１０は、本開示に係るコンピュータに相当し得る。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。また、本実施形態に係る情報処理装置１０の各機能は複数のコンピュータにより分割されてもよく、その場合、当該複数のコンピュータが有する各機能は、上記のコンピュータプログラムにより実現され得る。
【０１４１】
＜５．まとめ＞
以上説明したように、本開示の実施形態によれば、情報処理装置１０は、牛Ｂ３０の状態を示す状態情報の表示を制御し、当該状態情報に基づいて入力される牛Ｂ３０に関連する作業を示す作業情報を取得し、当該作業情報が示す作業を指示するための指示情報を出力する。それにより、実際の牛Ｂ３０の状態に応じた適切な作業の実行を、人的負担を低減しつつ、実現することができる。ゆえに、本実施形態に係る情報処理装置１０によれば、牛Ｂ３０の管理をより効率化することが可能である。
【０１４２】
上記では、管理者端末５０に表示される仮想空間ＧＵＩを利用した、牛Ｂ３０の状態の閲覧及び牛Ｂ３０に関連する作業を示す作業情報の入力についての操作が、牧場の管理者Ｂ５０によって行われる例について説明したが、当該仮想空間ＧＵＩを利用した当該操作は、他のユーザによって行われてもよい。情報処理装置１０は、例えば、当該仮想空間ＧＵＩを他のユーザが用いる端末へ表示させてもよい。それにより、当該仮想空間ＧＵＩを利用した他のユーザによる当該操作を、オンラインでのゲーム、教育、又は観光として、活用することができる。それにより、仮想的な観光体験、家畜管理における非熟練者の訓練等を実現することができる。また、当該仮想空間ＧＵＩを利用した当該操作は、牧場に対して遠隔の地に位置する獣医、家畜に関する専門家、家畜のオーナー、又は一般労働者等のユーザによって行われてもよい。
【０１４３】
また、上記では、ドローン２０が撮像により得られた画像に画像処理を行うことによって、得られる情報を情報処理装置１０へ送信してもよい点について説明した。また、センサ３０が、検出された物理量に演算処理を施して得られる情報を検出結果として情報処理装置１０へ送信してもよい点について説明した。このような、ドローン２０による上記画像処理及びセンサ３０による上記演算処理は、情報処理装置１０側で行われてもよい。
【０１４４】
また、上記では、情報処理装置１０が、作業者端末４０及び管理者端末５０と異なる装置である例について説明したが、本開示の技術的範囲は係る例に限定されない。例えば、情報処理装置１０が有する機能は、作業者端末４０によって実現されてもよく、管理者端末５０によって実現されてもよい。
【０１４５】
なお、本明細書において説明した各装置による一連の制御処理は、ソフトウェア、ハードウェア、及びソフトウェアとハードウェアとの組合せのいずれを用いて実現されてもよい。ソフトウェアを構成するプログラムは、例えば、各装置の内部又は外部に設けられる記憶媒体（非一時的な媒体：non-transitory  media）に予め格納される。そして、各プログラムは、例えば、実行時にＲＡＭに読み込まれ、ＣＰＵなどのプロセッサにより実行される。各プログラムを実行するプロセッサは、単数であっても複数であってもよい。
【０１４６】
また、本明細書においてフローチャートを用いて説明した処理は、必ずしもフローチャートに示された順序で実行されなくてもよい。いくつかの処理ステップは、並列的に実行されてもよい。また、追加的な処理ステップが採用されてもよく、一部の処理ステップが省略されてもよい。
【０１４７】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲は係る例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１４８】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【０１４９】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
家畜の状態を示す状態情報の表示を制御する表示制御部と、
前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得する取得部と、
前記作業情報が示す前記作業を指示するための指示情報を出力する出力部と、
を備える情報処理装置。
（２）
前記表示制御部は、実空間における前記家畜の位置と仮想空間における前記家畜の位置とを対応付けて、前記仮想空間を表示させる、前記（１）に記載の情報処理装置。
（３）
前記表示制御部は、複数の時刻の各々に対応する前記仮想空間を切り替えて表示させる、前記（２）に記載の情報処理装置。
（４）
前記表示制御部は、上空から見た前記仮想空間を表示させる、前記（２）又は（３）に記載の情報処理装置。
（５）
前記表示制御部は、地上から見た前記仮想空間を表示させる、前記（２）から（４）のいずれか一項に記載の情報処理装置。
（６）
前記表示制御部は、前記状態情報に基づいて生成された前記家畜に関連する前記作業の複数の候補を表示させる、前記（１）から（５）のいずれか一項に記載の情報処理装置。
（７）
前記出力部は、前記指示情報をユーザが用いる通信装置へ出力することにより、前記指示情報を前記ユーザへ通知する、前記（１）から（６）のいずれか一項に記載の情報処理装置。
（８）
前記通信装置は、前記ユーザの視界の少なくとも一部に前記指示情報を重畳させて表示する、前記（７）に記載の情報処理装置。
（９）
前記出力部は、前記指示情報を外部の装置へ出力することにより、前記外部の装置による前記作業の実行を制御する、前記（１）から（８）のいずれか一項に記載の情報処理装置。
（１０）
前記外部の装置は、移動体を含む、前記（９）に記載の情報処理装置。
（１１）
前記外部の装置は、センサを含む、前記（９）又は（１０）に記載の情報処理装置。
（１２）
前記状態情報に基づいて、前記作業情報を生成する作業情報生成部をさらに備える、前記（１）から（１１）のいずれか一項に記載の情報処理装置。
（１３）
前記状態情報に含まれる第１の状態情報に基づいて、前記第１の状態情報に対応する状態と異なる状態を示す前記状態情報である第２の状態情報を生成する状態情報生成部をさらに備える、前記（１）から（１２）のいずれか一項に記載の情報処理装置。
（１４）
前記状態情報が取得された時刻と前記状態情報とが紐付けられた状態データベース及び前記指示情報が出力された時刻と前記指示情報とが紐付けられた指示データベースを更新するデータベース操作部をさらに備える、前記（１）から（１３）のいずれか一項に記載の情報処理装置。
（１５）
家畜の状態を示す状態情報の表示を、情報処理装置によって、制御することと、
前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得することと、
前記作業情報が示す前記作業を指示するための指示情報を出力することと、
を含む情報処理方法。
（１６）
コンピュータを、
家畜の状態を示す状態情報の表示を制御する表示制御部と、
前記状態情報に基づいて入力される前記家畜に関連する作業を示す作業情報を取得する取得部と、
前記作業情報が示す前記作業を指示するための指示情報を出力する出力部と、
として機能させるためのプログラム。
【符号の説明】
【０１５０】
１  牧場管理システム
１０  情報処理装置
２０  ドローン
３０  センサ
４０、４０ａ、４０ｂ、４０ｃ  作業者端末
５０  管理者端末
１４２  ＣＰＵ
１４４  ＲＯＭ
１４６  ＲＡＭ
１４８  ブリッジ
１５０  バス
１５２  インタフェース
１５４  入力装置
１５６  出力装置
１５８  ストレージ装置
１６０  ドライブ
１６２  接続ポート
１６４  通信装置
２００  通信部
４００  記憶部
４１０  状態ＤＢ
４２０  指示ＤＢ
６００  制御部
６１０  ＤＢ操作部
６２０  状態情報生成部
６３０  仮想空間ＧＵＩ生成部
６４０  管理者端末表示制御部
６５０  作業情報生成部
６６０  指示情報生成部
６７０  拡張現実ＧＵＩ生成部
６８０  作業者端末表示制御部
６９０  駆動制御部
９１０  実空間作業部
９２０  仮想空間操作部
９３０  システム制御部
９４０  記憶部
【図１】
2017141521.tif 000003
【図２】
2017141521.tif 000004
【図３】
2017141521.tif 000005
【図４】
2017141521.tif 000006
【図５】
2017141521.tif 000007
【図６】
2017141521.tif 000008
【図７】
2017141521.tif 000009
【図８】
2017141521.tif 000010
【図９】
2017141521.tif 000011
【図１０】
2017141521.tif 000012
【図１１】
2017141521.tif 000013
【図１２】
2017141521.tif 000014
【国際調査報告】
2017141521.tif 000015
2017141521.tif 000016
2017141521.tif 000017
2017141521.tif 000018