JP2023015924A - 生産管理システム、生産管理方法及びプログラム - Google Patents
生産管理システム、生産管理方法及びプログラム Download PDFInfo
- Publication number
- JP2023015924A JP2023015924A JP2021120010A JP2021120010A JP2023015924A JP 2023015924 A JP2023015924 A JP 2023015924A JP 2021120010 A JP2021120010 A JP 2021120010A JP 2021120010 A JP2021120010 A JP 2021120010A JP 2023015924 A JP2023015924 A JP 2023015924A
- Authority
- JP
- Japan
- Prior art keywords
- livestock
- weight
- estimated
- pig
- pigs
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】人の手を介することなく、手軽にかつ精度良く1頭以上の家畜の体重を推定することにより、効率よく家畜の生産管理を行うことができる生産管理システムを提供する。【解決手段】生産管理システム100は、複数頭の家畜の体重の代表値を推定し、推定された代表値に基づいて、複数頭の家畜の出荷時期を推定する推定部24bと、推定された出荷時期を出力する出力部24fと、を備える。【選択図】図1
Description
本発明は、生産管理システム、生産管理方法及びプログラムに関する。
豚などの家畜の生産管理を支援するための様々な技術が提案されている。家畜の生産管理には、家畜の体重管理が必要である。例えば、体重計による豚の体重の測定に代わる方法として、特許文献1には、撮影エリアに位置する豚の画像に基づいて体重を推定する体重出力システムが開示されている。
一般に、食肉用の豚の販売においては、出荷時の体重が軽すぎても重すぎても価格が下がる。このため、出荷時の価格が最大となるように豚の体重を管理することにより、家畜の出荷管理及び在庫管理を行う仕組みが求められる。特許文献1に記載の方法で豚の体重を管理する場合、常に動く豚に対して、当該豚を所定の場所に位置させて画像を撮影する必要があるため、豚の体重を管理するのに手間がかかる。そのため、特許文献1に記載の方法により家畜の体重管理を行っても、家畜の生産管理を効率よく行えるとは言い難い。
本発明は、人の手を介することなく、手軽にかつ精度良く1頭以上の家畜の体重を推定することにより、効率よく家畜の生産管理を行うことができる生産管理システム、及び、生産管理方法及びプログラムを提供する。
本発明の一態様に係る生産管理システムは、複数頭の家畜の体重の代表値を推定し、推定された前記代表値に基づいて、前記複数頭の家畜の出荷時期を推定する推定部と、推定された前記出荷時期を出力する出力部と、を備える。
本発明の一態様に係る生産管理方法は、複数頭の家畜の体重の代表値を推定し、推定された前記代表値に基づいて、前記複数頭の家畜の出荷時期を推定する推定ステップと、推定された前記出荷時期を出力する出力ステップと、を含む。
本発明の一態様に係るプログラムは、前記生産管理方法をコンピュータに実行させるためのプログラムである。
本発明の生産管理システム、生産管理方法及びプログラムは、人の手を介することなく、手軽にかつ精度良く1頭以上の家畜の体重を推定することにより、効率よく家畜の生産管理を行うことができる。
以下、実施の形態について、図面を参照しながら説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
なお、各図は模式図であり、必ずしも厳密に図示されたものではない。また、各図において、実質的に同一の構成に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。
(実施の形態)
[構成]
以下、実施の形態に係る生産管理システムについて図面を参照しながら説明する。図1は、実施の形態に係る生産管理システムの機能構成の一例を示すブロック図である。図2は、畜舎の一例を示す図である。本実施の形態では、家畜が豚80であり、飼育エリアが畜舎内(具体的には、図2の豚舎75)の豚房70である例を説明する。図2に示されるように、豚房70は、畜舎の中に構成される複数の区画された領域であり、数十頭単位で豚を飼育するための飼育エリアである。豚80は、豚房70ごとに異なる日令の豚80が飼育されてもよく、グループごとに異なる日令の豚80が飼育されてもよい。
[構成]
以下、実施の形態に係る生産管理システムについて図面を参照しながら説明する。図1は、実施の形態に係る生産管理システムの機能構成の一例を示すブロック図である。図2は、畜舎の一例を示す図である。本実施の形態では、家畜が豚80であり、飼育エリアが畜舎内(具体的には、図2の豚舎75)の豚房70である例を説明する。図2に示されるように、豚房70は、畜舎の中に構成される複数の区画された領域であり、数十頭単位で豚を飼育するための飼育エリアである。豚80は、豚房70ごとに異なる日令の豚80が飼育されてもよく、グループごとに異なる日令の豚80が飼育されてもよい。
本開示に係る生産管理システムは、複数頭の家畜の体重の代表値を推定し、推定された代表値に基づいて、複数頭の家畜の出荷時期を推定し、推定された出荷時期を出力する。家畜は、例えば、豚、牛、羊、馬などの有諦類であるが、鶏などの家禽であってもよい。代表値は、例えば、平均値又は中央値である。
本実施の形態では、図1に示されるように、生産管理システム100は、例えば、撮影装置10によって撮影される豚房70内の画像に基づいて、豚房70内に位置する複数頭の豚80の体重の代表値を推定する。より具体的には、例えば、生産管理システム100は、豚房70内に位置する複数頭の豚80のうち画像処理により識別された1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重に基づいて、豚房70内に位置する複数頭の豚80の体重の代表値を推定する。豚80の飼育者等は、生産管理システム100を利用することで豚房70内の豚80の体重(例えば、平均体重)だけでなく、豚80の出荷予定日を容易に把握することができる。
続いて、生産管理システム100の構成について説明する。生産管理システム100は、例えば、複数の撮影装置10と、情報処理装置20とを備える。図1に示されるように、生産管理システム100は、さらに、サーバ装置30と、携帯端末40とを備えてもよい。
撮影装置10は、例えば、豚房70の天井に取り付けられ、豚房70内の少なくとも一部を上方から撮影するカメラである。図1の例では、撮影装置10は、複数の豚房70のそれぞれに1つずつ設けられているが、1つの豚房70に対して少なくとも1つ設けられていればよく、1つの豚房70に2つ以上設けられてもよい。撮影装置10は、例えば、レンズ、及び、イメージセンサなどによって実現される。撮影装置10は、具体的には、監視などの用途に用いられる一般的なカメラであるが、魚眼カメラなどであってもよい。
情報処理装置20は、例えば、撮影装置10によって撮影された画像に映る複数頭の豚80のうち画像処理によって識別された1頭以上の豚80の推定体重から複数頭の豚80の体重の代表値を推定し、推定された代表値に基づいて複数頭の豚80の出荷時期を推定する。情報処理装置20は、例えば、パーソナルコンピュータなどの据え置き型の情報端末である。情報処理装置20は、操作受付部21と、表示部22と、第一通信部23と、情報処理部24と、第二通信部25と、記憶部26とを備える。
操作受付部21は、飼育者等(言い換えれば、ユーザ)の操作を受け付ける。操作受付部21は、例えば、キーボード又はマウスなどの入力デバイスによって実現されるが、タッチパネルなどによって実現されてもよい。
表示部22は、例えば、体重の推定結果(推定情報)又は出荷予定日に関する通知情報を示す画像などを表示する。表示部22は、液晶パネル又は有機EL(Electro Luminescence)パネルなどの表示パネルによって実現される。
第一通信部23は、情報処理装置20が局所通信ネットワークを介して複数の撮影装置10と通信を行うための通信回路(通信モジュール)である。第一通信部23は、例えば、撮影装置10によって撮影された画像(言い換えれば、画像データ又は画像情報)を取得し、取得した画像を情報処理部24に出力する。第一通信部23によって行われる通信は、有線通信であってもよいし、無線通信であってもよい。第一通信部23によって行われる通信の通信規格についても特に限定されない。
情報処理部24は、複数頭の豚80の生産管理に関する各種情報処理を行う。情報処理部24は、例えば、マイクロコンピュータによって実現されるが、プロセッサによって実現されてもよい。情報処理部24は、機能的な構成要素として、取得部24aと、推定部24bと、通知部24cと、判定部24dと、出力部24fとを備える。これらの構成要素の機能は、例えば、情報処理部24を構成するマイクロコンピュータ又はプロセッサ等が記憶部26に記憶されたコンピュータプログラムを実行することによって実現される。
取得部24aは、例えば、複数の豚房70内に設置された撮影装置10のそれぞれから、当該撮影装置10によって撮影された複数の画像(より詳細には、画像データ又は画像情報)を取得する。画像データには、当該画像を撮影した撮影装置10の識別情報と、当該画像が撮影された日時を示す時間情報とが含まれてもよい。取得部24aは、取得した画像を推定部24bに出力する。
推定部24bは、複数頭の豚80の体重の代表値を推定し、推定された代表値に基づいて、複数頭の豚80の出荷時期を推定する。例えば、推定部24bが画像処理により豚80を識別する場合、推定部24bは、取得部24aによって取得された複数の画像から豚80が映る画像を体重推定用の画像(以下、推定用画像ともいう)として抽出してもよい。推定部24bは、推定用画像に映る複数頭の豚80の輪郭形状のうち所定の輪郭形状との一致度が第1閾値以上である1つ以上の輪郭形状を特定し、特定された1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定する。推定部24bは、このように推定された1頭以上の豚80の体重に基づいて各豚房70における複数頭の豚80の体重の代表値を推定する。
また、推定部24bは、撮影装置10によって撮影された日付が異なる複数の画像のそれぞれから1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重と、豚房70の識別情報とが対応付けられた推定情報に、日付を対応付けて記憶部26に格納させてもよい。
さらに、推定部24bは、記憶部26に似付けと対応付けて格納された推定情報に含まれる1頭以上の豚80の体重によって定まる、複数頭の豚80の体重の代表値の時間推移に基づいて、豚房70内の複数頭の豚80の出荷予定日を推定してもよい。より具体的には、例えば、推定部24bは、代表値が平均値又は中央値である場合、代表値の時間推移に基づいて、代表値が第2閾値に達する日付を推定し、推定された日付を出荷予定日として推定してもよい。また、例えば、推定部24bは、代表値が平均値である場合、代表値の時間推移に基づいて、代表値+n×σ(n:自然数、σ:標準偏差)の値が第2閾値に達する日付を推定し、推定された日付を出荷予定日として推定してもよい。
推定部24bは、例えば、情報処理装置20が豚80の輪郭形状と豚80の実測体重とが紐づけられえて格納されたデータベース(不図示)を備える場合、データベースに基づいて、1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重に基づいて、複数頭の豚80の体重の代表値を推定してもよい。
また、推定部24bは、例えば、情報処理装置20が学習済みの機械学習モデル(言い換えると、学習済みモデル)(不図示)を備える場合、学習済みモデルにより抽出された複数頭の豚80の輪郭に基づいて、複数頭の豚80の輪郭形状のうち所定の輪郭形状との一致度が第1閾値以上である1つ以上の輪郭形状を特定し、特定された1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重に基づいて、複数頭の豚80の体重の代表値を推定してもよい。なお、豚80の体重推定方法及び代表値の推定方法の詳細については、後述する。
通知部24cは、例えば、ユーザに通知情報を通知する。より詳細には、通知部24cは、例えば、ユーザに通知する通知情報を生成し、生成された通知情報を表示部22又は携帯端末40へ出力することにより、ユーザに通知情報を通知する。例えば、通知情報は、複数頭の豚80の出荷予定日と豚房70の識別情報とが対応付けられた情報であってもよい。
判定部24dは、例えば、複数の豚房70に対応する複数の1頭以上の豚80の体重を比較することにより、複数の豚房70のそれぞれにおける豚80の成育状態を判定する。
出力部24fは、例えば、推定部24bによる推定結果及び判定部24dによる判定結果を、表示部22又は第二通信部25を介してサーバ装置30もしくは携帯端末40に出力する。より具体的には、例えば、出力部24fは、推定部24bによって推定された出荷時期(例えば、出荷予定日)を出力する。また、例えば、出力部24fは、推定部24bによって推定され、かつ、記憶部26に日付と対応付けて格納された推定情報を出力してもよい。また、例えば、出力部24fは、判定部24dによって判定された豚80の成育状態を示す成育情報を出力してもよい。
第二通信部25は、情報処理装置20がインターネットなどの広域通信ネットワーク50を通じて他の装置と通信を行うための通信回路(通信モジュール)である。第二通信部25は、例えば、情報処理部24の推定部24bによって記憶部26に日付と対応付けて格納された推定情報、及び、通知部24cによって出力された出荷予定日と豚房70の識別情報とが対応付けられた通知情報などをサーバ装置30又は携帯端末40に送信する。飼育者等(いわゆる、ユーザ)が所有する携帯端末40にこのような推定情報及び通知情報が送信されれば、飼育者等は、各豚房70内の豚80の推定体重、推定体重の代表値の時間推移及び出荷予定日に関する情報を確認することができる。なお、第二通信部25から送信される通知情報などの情報は、サーバ装置30経由で携帯端末40に送信されてもよい。第二通信部25によって行われる通信は、有線通信であってもよいし、無線通信であってもよい。第二通信部25によって行われる通信の通信規格についても特に限定されない。
記憶部26は、情報処理部24が情報処理を行うために実行するプログラム、及び、情報処理に用いられる各種情報が記憶される記憶装置である。記憶部26は、具体的には、半導体メモリによって実現される。
記憶部26には、例えば、豚80の輪郭形状と豚80の実測体重とが紐づけられて格納されたデータベース(不図示)が格納されてもよい。また、記憶部26には、学習済みモデル(不図示)が格納されてもよい。学習済みモデルは、画像における複数頭の豚80を検出し、検出された複数頭の豚80の輪郭を抽出する。学習済みモデルは、例えば、サーバ装置30で学習されてもよく、情報処理装置20で学習されてもよい。いずれの場合でも、記憶部26は、学習済みモデルを格納し、格納された学習済みモデルを、新たに学習された学習済みモデルに更新してもよい。学習の方法については、特に限定されないが、例えば、教師あり学習であってもよい。
サーバ装置30は、生産管理システム100が情報処理装置20をクライアントとしたクライアントサーバシステムとして実現される場合に利用されるサーバ(クラウドサーバ)である。
携帯端末40は、飼育者等によって操作される、スマートフォン又はタブレット端末などの携帯型の情報端末である。携帯端末40は、飼育者等が、豚80の推定体重及び出荷予定日に関連する通知を受けるために使用される。
[動作]
続いて、実施の形態に係る生産管理システム100の動作について図面を参照しながら説明する。以下では、飼育エリアを豚房70、及び、家畜を豚80と読み替えて説明する。また、図1の例のように、生産管理システム100は、複数の豚房70のそれぞれで飼育されている1頭以上の豚80の体重を推定するが、以下では、説明の便宜上、1つの豚房70で飼育されている1頭以上の豚80の体重を推定する動作について説明する。
続いて、実施の形態に係る生産管理システム100の動作について図面を参照しながら説明する。以下では、飼育エリアを豚房70、及び、家畜を豚80と読み替えて説明する。また、図1の例のように、生産管理システム100は、複数の豚房70のそれぞれで飼育されている1頭以上の豚80の体重を推定するが、以下では、説明の便宜上、1つの豚房70で飼育されている1頭以上の豚80の体重を推定する動作について説明する。
[動作例1:出荷時期の出力]
図3は、実施の形態に係る生産管理システム100の動作例1を示すフローチャートである。動作例1では、生産管理システム100が豚房70内に位置する複数頭の豚80の体重の代表値に基づいて、複数頭の豚80の出荷時期を推定し、推定された出荷時期を出力する動作について説明する。
図3は、実施の形態に係る生産管理システム100の動作例1を示すフローチャートである。動作例1では、生産管理システム100が豚房70内に位置する複数頭の豚80の体重の代表値に基づいて、複数頭の豚80の出荷時期を推定し、推定された出荷時期を出力する動作について説明する。
図3に示されるように、まず、情報処理装置20の推定部24bは、複数頭の豚80の体重の代表値を推定する(S101)。ステップS101の処理の詳細については、後述する。
次いで、推定部24bは、ステップS101で推定された複数頭の豚80の体重の代表値に基づいて、複数頭の豚80の出荷時期を推定する(S102)。出荷時期は、例えば、家畜が成熟体重(例えば、豚の場合は、110kg以上120kg以下の範囲)に達する時期(日付など)である。成熟体重の家畜は、取引価格が最大となり、出荷に適した体重と言える。出荷時期は、成熟体重の家畜(ここでは、豚80)の割合がなるべく多い時期がよい。例えば、出荷時期は、複数頭の豚80の体重の代表値(例えば、平均値又は中央値)が豚80の取引価格が最大となる体重(いわゆる、成熟体重)に到達する日付であってもよいし、代表値(例えば、平均値)±n×σ(n:自然数、σ:標準偏差)が豚80の取引価格が最大となる体重に到達する日付であってもよい。第2閾値は、例えば、成熟体重であってもよい。出荷時期は、日付のように日単位で予測された時期であってもよく、週の後半、又は、月の第何週目などの数日単位又は週単位で予測された時期であってもよい。
次いで、出力部24fは、ステップS102で推定部24bによって推定された出荷時期を出力する(S103)。出力部24fにより出力された出荷時期(言い換えると、出荷時期を示す情報)は、例えば、表示部22で表示されてもよいし、第二通信部25を介して、サーバ装置30又は携帯端末40に出力されてもよい。
以下、ステップS101の処理について、より具体的に説明する。図4は、図3のステップS101の詳細なフローの一例を示すフローチャートである。ステップS101では、取得部24aは、撮影装置10によって撮影された、豚房70内に位置する複数頭の豚80が映る画像を取得する(S111)。例えば、取得部24aは、第一通信部23を介して豚房70に設置された撮影装置10から当該撮影装置10によって撮影された画像(いわゆる、画像データ又は画像情報)を取得する。なお、撮影装置10は、常時画像を撮影してもよいし、情報処理装置20からの指令に基づいて画像の撮影を開始してもよいし、所定時間内に一定時間間隔で複数の画像を撮影してもよい。また、各画像には、どの豚房70内の画像であるかを示す識別情報が付与されている。例えば、撮影装置10のMAC(Media Access Control)アドレスなどが豚房70の識別情報として使用されてもよい。以下のステップS112及びステップS113では、説明の便宜上、1つの画像を処理対象として説明が行われるが、実際には、ステップS111で取得された複数の画像のそれぞれに対して行われる。
次いで、推定部24bは、画像に映る複数頭の豚80の輪郭形状のうち所定の輪郭形状と一致度が第1閾値以上である1つ以上の輪郭形状を特定する(S112)。例えば、生産管理システム100が豚80の輪郭形状と豚80の実測体重とが紐づけられて格納されたデータベース(不図示)を備える場合、推定部24bは、データベースに格納された実測データを参照して、画像内で抽出された複数の輪郭形状のうち、所定の輪郭形状と一致度が高い輪郭形状を特定してもよい。また、例えば、生産管理システム100が学習済みモデル(不図示)を備える場合、学習済みモデルは、入力された画像に映る複数の豚80を検出し、検出された複数の豚80の輪郭を抽出して出力してもよい。推定部24bは、学習済みモデルにより抽出された複数の豚80の輪郭に基づいて、複数の豚80の輪郭形状のうち所定の輪郭形状との一致度が閾値以上である1つ以上の輪郭形状を特定する。このとき、推定部24bは、上記のデータベースを参照して、所定の輪郭形状と一致度が高い輪郭形状を特定してもよい。
以下、ステップS112の具体的な処理について、図5を参照しながら説明する。図5は、画像に映る複数頭の豚80の抽出から1頭以上の豚80の大きさの算出までの動作を説明するための図である。
ステップS112では、推定部24bは、ステップS111で取得部24aによって取得された画像(例えば、図5の(a))内の複数の豚80の個体を検出する。このとき、推定部24bは、例えば、Mask-RCNNなどの深層学習による物体検知技術を利用して、取得部24aにより取得された画像に映る全ての豚80の画像領域を抽出する。そして、推定部24bは、豚80の体の全体(頭からお尻まで)が含まれる画像領域をフィルタリング処理により抽出する。このとき、豚80の体の一部のみしか映っていない画像領域は除外される。例えば、図5の(a)には、画像に7頭の豚80が映っているが、このうちの4頭は、体の一部のみしか映っていない。この場合、図5の(b)に示されるように、推定部24bは、豚80の体の全体が映っており、かつ、豚80の1頭分に相当する画像領域を抽出し、豚80の体の一部のみが映っている画像領域を抽出しない。画像に映る豚80の検出方法及び検出された豚80の輪郭の抽出方法の詳細については、後述する。
なお、図5には示されていないが、ステップS112では、2頭以上の豚80が重なって1つの領域であるように認識されるような場合、このような領域も抽出されない。具体的には、画像領域の大きさに上限値を設けることで、2頭以上の豚が重なった1つの領域を対象領域から除外することができる。
次いで、図5の(c)に示されるように、推定部24bは、抽出された複数の画像領域のそれぞれに含まれる豚80の輪郭を抽出する。輪郭の抽出方法の詳細については、後述する。推定部24bは、抽出された複数頭の豚80の輪郭のうち、例えば、実測データにおける豚80の輪郭と比較し、マッチングレベル(言い換えると、一致度)の高い輪郭を選択する。例えば、図5の(d)に示されるように、図5の(c)で抽出された3頭の豚80のうち、お腹の部分が他の豚80と重なって隠れている豚80の輪郭が除外され、残りの2頭の豚80の輪郭が選択される。このように、推定部24bは、画像に映る複数頭の豚80の輪郭形状から所定の輪郭形状との一致度が第1閾値以上である1つ以上の輪郭形状を特定する。なお、実測データは、豚80の輪郭形状と当該輪郭形状を有する豚80の実測体重とが対応付けられたデータであり、データベース(不図示)に格納されている。データベースは、推定部24bが備えてもよく、記憶部26が備えてもよい。
再び図4を参照する。推定部24bは、ステップS112で特定された1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定する(S113)。例えば、推定部24bは、ステップS112で特定された1つ以上の輪郭形状に対応する1頭以上の豚80のそれぞれについて、輪郭形状の重心の座標、並びに、重心を通る長軸及び短軸の長さを含むパラメータ(例えば、Huモーメント)を算出し、算出されたパラメータを用いて1頭以上の豚80の体重を推定する。より具体的には、推定部24bは、ステップS112で特定された1つ以上の輪郭形状からパラメータを算出する。Huモーメントは、画像を演算することで得られる平行移動、スケール、及び、回転に対して不変な量であり、形状のみによる量であるため、形状の類似度の判定に用いられる。より具体的には、図5の(d)に示されるように、推定部24bは、1頭以上の豚80の輪郭形状から重心の座標(言い換えると、画像における重心の位置)を算出し、重心を通り交差する長軸(主軸ともいう)の長さL及び短軸(副軸ともいう)の長さDを算出する。ここで、長軸及び短軸の長さは、画像上のピクセル単位で表される長さであるが、画像上の特定の長さ(例えば、給餌器、または、スノコ床などの既知の寸法)を基準にして、相対的な大きさで表されてもよい。
また、推定部24bは、上述のデータベースに基づいて、複数の豚房70のそれぞれについて、豚房70内に位置する複数の豚80の体重を推定するための補正係数kを導出し、パラメータと、補正係数kとを用いて、1頭以上の豚80の体重を推定する。補正係数kは、体積と、体重の実測値との関係を示す実測データなどに基づいて、経験的又は実験的に定められる。体重の推定方法の詳細については、後述する。
再び図4を参照する。推定部24bは、ステップS113で推定された1頭以上の豚80の体重に基づいて、豚房70内に位置する複数頭の豚80の体重の代表値を推定する(S114)。代表値は、例えば、平均値又は中央値である。例えば、推定部24bは、1頭以上の豚80の体重の平均値を、豚房70内に位置する複数頭の豚80の体重の平均値と推定してもよい。
このように、生産管理システム100は、豚房70内を撮影した画像に映る複数頭の豚80の輪郭形状のうち所定の輪郭形状との一致度が閾値以上である1つ以上の輪郭形状を特定し、特定された1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定することができる。生産管理システム100は、豚房70内に位置する複数頭の豚80を所定の場所に集めて画像を撮影する必要がなく、耳刻又は識別タグなどによって豚80の個体を識別することはしない。したがって、生産管理システム100は、人の手を介することなく、比較的容易に、かつ、精度良く1頭以上の豚80の体重を推定することができるため、効率よく豚80の生産管理を行うことができる。そのため、生産管理システム100は、豚80を一斉に豚房70に入れて飼育した後、一斉に出荷する、オールインオールアウトの飼育方式に相性がよいといえる。
なお、動作例1では、出荷時期の出力に加え、例えば、推定情報が出力されてもよい。例えば、ステップS113では、推定部24bは、推定された1頭以上の豚80の体重と、豚房70の識別情報とが対応付けられた推定情報に、日付(より詳細には、画像が撮影された日付)を対応付けて記憶部26に格納させてもよい。この場合、出力部24fは、ステップS113で推定部24bによって記憶部26に日付と対応付けて格納された推定情報を出力してもよい。
また、例えば、ステップS114では、推定部24bは、推定された複数頭の豚80の代表値と、豚房70の識別情報とを対応付けた情報を推定情報とし、当該情報に日付を対応付けて記憶部26に格納させてもよい。この場合、出力部24fは、ステップS114で推定部24bによって記憶部26に日付と対応付けて格納された推定情報を出力してもよい。なお、推定情報の出力の詳細については、動作例2で説明する。
なお、推定部24bは、推定情報に、撮影装置10によって撮影された日時(少なくとも日付)を対応付けて記憶部26に格納してもよい。上述したように、豚房70の識別情報はステップS111で取得される画像に付与されている撮影装置10の識別情報であってもよい。推定情報が日付と対応付けて格納されるため、記憶部26は、複数の豚房70のそれぞれにおける推定体重の時間推移を管理していると言える。
[豚の検出方法、及び、検出された豚の輪郭の抽出方法]
続いて、画像に映る豚80の検出方法、及び、検出された豚80の輪郭の抽出方法について、図6及び図7を参照しながら説明する。図6は、画像に映る豚80の個体検知、及び、検知された豚80の輪郭抽出の例を示す図である。図7は、推定用画像の抽出の例を示す図である。
続いて、画像に映る豚80の検出方法、及び、検出された豚80の輪郭の抽出方法について、図6及び図7を参照しながら説明する。図6は、画像に映る豚80の個体検知、及び、検知された豚80の輪郭抽出の例を示す図である。図7は、推定用画像の抽出の例を示す図である。
(1)豚の検出方法
まず、画像に映る豚80の検出方法について図6を参照しながら説明する。推定部24bは、例えば、上述のMask-RCNNなどの深層学習による物体検知技術を利用して、取得部24aにより取得された複数の画像のそれぞれについて、画像に映る全ての豚80を検出し、検出された全ての豚80の中から豚80の体の全体を含む画像領域を抽出する。例えば、推定部24bは、図6の(a)に示される画像、及び、図6の(b)に示される画像に映る全ての豚80の画像領域を抽出し、豚80の体の全体(頭からお尻まで)が含まれる画像領域をフィルタリング処理により抽出する。そして、推定部24bは、抽出された画像領域に含まれる豚80の検出レベル(より詳細には、検出された物体が豚である尤度)を算出する。
まず、画像に映る豚80の検出方法について図6を参照しながら説明する。推定部24bは、例えば、上述のMask-RCNNなどの深層学習による物体検知技術を利用して、取得部24aにより取得された複数の画像のそれぞれについて、画像に映る全ての豚80を検出し、検出された全ての豚80の中から豚80の体の全体を含む画像領域を抽出する。例えば、推定部24bは、図6の(a)に示される画像、及び、図6の(b)に示される画像に映る全ての豚80の画像領域を抽出し、豚80の体の全体(頭からお尻まで)が含まれる画像領域をフィルタリング処理により抽出する。そして、推定部24bは、抽出された画像領域に含まれる豚80の検出レベル(より詳細には、検出された物体が豚である尤度)を算出する。
(2)検出された豚の輪郭の抽出方法
続いて、画像内で検出された豚80の輪郭の抽出方法について図6及び図7を参照しながら説明する。
続いて、画像内で検出された豚80の輪郭の抽出方法について図6及び図7を参照しながら説明する。
まず、推定部24bは、画像領域に依存した豚80の輪郭(以下、領域依存の輪郭ともいう)を抽出する。より具体的には、図6の(b)及び図6の(c)に示されるように、推定部24bは、画像内で検出された豚80(検出レベル:0.969)の領域依存の輪郭(図中の網掛け領域の外周)を抽出する。
続いて、推定部24bは、領域依存の輪郭を豚本来の形状に沿った輪郭に補正する。例えば、図6の(c)に示されるように、推定部24bは、領域依存の輪郭を複数の矢印の方向にそれぞれ広げることにより、豚本来の形状に沿った輪郭(図中の太い実線)に補正する。また、例えば、図6の(d)に示されるように、推定部24bは、画像内で検出された豚80(検出レベル:0.910)の領域依存の輪郭(図中の網掛け領域の外周)を抽出し、領域依存の輪郭を複数の矢印方向にそれぞれ広げることにより、豚本来の形状に沿った輪郭(図中の太い実線)に補正する。これを補正後の輪郭ともいう。
続いて、図7の(a)及び図7の(b)に示されるように、推定部24bは、画像領域に含まれる豚80の輪郭として、補正後の輪郭を抽出した後、豚80の検出レベルを再び算出する。そして、推定部24bは、所定の条件でフィルタリングすることにより、実測データと輪郭形状を比較する豚80の輪郭(より詳細には、実測データにおける豚80の輪郭形状との一致度を測る豚80の輪郭であり、マッチング対象輪郭ともいう)を抽出する。所定の条件は、例えば、(i)再び算出された豚80の検出レベルが所定の値(例えば、0.970)よりも大きく、かつ、(ii)補正後の豚80の輪郭の形状が楕円形である、である。
[体重の推定方法]
続いて、豚80の体重の推定方法について、図8を参照しながら説明する。図8は、豚80の体重の推定の例を示す図である。
続いて、豚80の体重の推定方法について、図8を参照しながら説明する。図8は、豚80の体重の推定の例を示す図である。
推定部24bは、画像に映る複数頭の豚80の輪郭形状から上記抽出方法によりマッチング対象輪郭を抽出し、抽出されたマッチング対象輪郭のうち所定の輪郭形状との一致度が第1閾値以上である1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定する。体重の推定では、まず、各豚房70における補正係数kを算出する。例えば、図8に示されるように、推定部24bは、第1の豚から第Nの豚までのN頭の豚80について豚80の大きさと豚80の実測体重とが対応付けられた実測データから補正係数kを算出し、算出した補正係数kと、パラメータとを用いて、1頭以上の豚80の体重を推定する。補正係数kは、豚80の体積(例えば、ピクセル数で表される)を体重に変換する係数である。パラメータは、重心を通る短軸D及び長軸Lの長さである。具体的には、推定部24bは、画像領域の数n(nは自然数)を豚80の数とみなし、補正係数kを用いて、第1の豚から第Nの豚までのN頭の豚80のそれぞれについて、豚80の1頭あたりの推定体重Wを、計算式W=k×D2×Lにしたがって算出する。上述したように、補正係数kは、体積と、体重の実測値との関係を示す実測データなどに基づいて、経験的又は実験的に定められる。推定部24bは、1頭以上の豚80の体重を推定し、推定された1頭以上の体重の代表値を豚房70内の複数の豚80のそれぞれの体重と推定してもよい。言い換えると、推定部24bは、1頭以上の豚の体重の代表値を豚房70内の複数頭の豚80の体重の代表値と推定してもよい。
[動作例2:推定情報の出力]
図9は、実施の形態に係る生産管理システム100の動作例2を示すフローチャートである。動作例2では、生産管理システム100は、撮影装置10によって撮影された日付が異なる複数の画像のそれぞれから1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重と、豚房70の識別情報とを対応付けた推定情報を出力する。これにより、生産管理システム100は、豚房70ごとの豚80の推定体重の時間推移を飼育者等(ユーザ)に提示することができる。
図9は、実施の形態に係る生産管理システム100の動作例2を示すフローチャートである。動作例2では、生産管理システム100は、撮影装置10によって撮影された日付が異なる複数の画像のそれぞれから1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重と、豚房70の識別情報とを対応付けた推定情報を出力する。これにより、生産管理システム100は、豚房70ごとの豚80の推定体重の時間推移を飼育者等(ユーザ)に提示することができる。
図示していないが、取得部24aは、撮影装置10によって撮影された日付が異なる複数の画像を取得し、推定部24bに出力する。次いで、推定部24bは、撮影の日付が異なる複数の画像のそれぞれから1頭以上の豚80の体重を推定する(S201)。体重推定方法については上述したため、ここでの説明を省略する。なお、ステップS201の処理では、1頭以上の豚80の体重を推定するが、例えば、ステップS101の処理と同様に、1頭以上の豚80の推定体重に基づいて、複数頭の豚80の体重の代表値を推定してもよい。
次いで、推定部24bは、推定された1頭以上の豚80の体重(いわゆる、推定体重)と、豚房70の識別情報とが対応付けられた推定情報に、日付を対応付けて記憶部26に格納する(S202)。図10は、記憶部26に日付を対応付けて格納された識別情報の一例を示す図である。図10に示されるように、記憶部26には、日付と対応付けられた識別情報が格納されている。識別情報は、豚房70の識別情報と、豚房70内に位置する1頭以上の豚80の推定体重とが対応付けられている。図10の例では、日付は、画像が撮影された日時である。なお、豚房70の識別情報は、例えば、豚房70内に設置された撮影装置10の識別情報(例えば、MACアドレス)に対応付けられて記憶部26に格納されてもよく、この場合、推定部24bは、画像に付与された撮影装置10の識別情報から撮影装置10が設置された豚房70の識別情報を取得してもよい。なお、ステップS202の処理では、識別情報は、1頭以上の豚80の体重と豚房70の識別情報とが対応付けられているが、複数頭の豚80の体重の代表値と豚房70の識別情報とが対応付けられてもよい。
図示していないが、操作受付部21が飼育者等(いわゆる、ユーザ)の所定の操作を受け付けると、出力部24fは、受け付けられた操作に応じて、推定情報と日付とが対応付けられた情報を表示部22に出力してもよい。例えば、出力部24fは、豚房70ごとの豚80の推定体重の時間推移を示す情報を出力し、表示部22に豚房70ごとの豚80の体重(いわゆる、推定体重)の推移を示す画像を表示させてもよい。具体的には、取得部24aは、操作受付部21から日付と対応付けられた推定情報を表示部22に表示させるユーザの指示を示す信号を取得すると、記憶部26から日付と対応付けて格納された推定情報を読み出し、読み出された推定情報(より詳細には、日付と対応付けられた推定情報)を出力部24fに出力させる(S203)。なお、推定情報は、豚房70ごとの豚80の推定体重を示す情報である例を説明したが、これに限られない。例えば、推定情報は、複数の豚房70から構成されるグループ(図2参照)ごとの豚80の推定体重を示す情報であってもよいし、豚舎75ごとの豚80の推定体重を示す情報であってもよい。
表示部22は、ステップS203で出力部24fから出力された推定情報(つまり、日付と対応付けられた推定情報)に基づいて、例えば、特定の豚房70における1頭以上の豚80の推定体重の時間推移を表によって示す画像を表示する。図11は、特定の豚房70における推定体重の時間推移を表で示す画像の一例を示す図である。なお、1日に複数回推定体重が算出される場合、その1日の推定体重は、例えば、複数回算出された推定体重の代表値(例えば、平均値又は中央値など)である。
また、表示部22は、複数の豚房70における豚80の推定体重の時間推移をグラフによって示す画像を表示してもよい。図12は、複数の豚房70における豚80の推定体重の時間推移をグラフで示す画像の一例を示す図である。
このように、生産管理システム100は、豚80の推定体重の時間推移を飼育者等(ユーザ)に提示することができる。飼育者等は、豚房70ごとの豚80の推定体重の時間推移を把握することで、各豚房70内の豚80の出荷のタイミングを予想したり、餌の量をコントロールしたりすることができる。したがって、生産管理システム100は、飼育者等の豚80の生産管理を支援することができる。
[動作例3:出荷予定日の通知]
図13は、実施の形態に係る生産管理システム100の動作例3を示すフローチャートである。動作例3では、生産管理システム100が豚房70内に位置する複数頭の豚80の体重の代表値に基づいて、豚房70内の複数頭の豚80の出荷予定日を推定し、推定された出荷予定日と豚房70の識別情報とが対応付けられた通知情報を飼育者等(ユーザ)に通知する動作について説明する。なお、出荷予定日は、出荷時期の一例であり、豚80が出荷に適した体重になる予定の日付である。これにより、生産管理システム100は、豚80の出荷予定日を事前に飼育者等に通知することができる。
図13は、実施の形態に係る生産管理システム100の動作例3を示すフローチャートである。動作例3では、生産管理システム100が豚房70内に位置する複数頭の豚80の体重の代表値に基づいて、豚房70内の複数頭の豚80の出荷予定日を推定し、推定された出荷予定日と豚房70の識別情報とが対応付けられた通知情報を飼育者等(ユーザ)に通知する動作について説明する。なお、出荷予定日は、出荷時期の一例であり、豚80が出荷に適した体重になる予定の日付である。これにより、生産管理システム100は、豚80の出荷予定日を事前に飼育者等に通知することができる。
図示してないが、推定部24bは、記憶部26に日付と対応付けて格納された推定情報を参照し、1頭以上の豚80の体重によって定まる、複数頭の豚80の体重の代表値の時間推移(言い換えると、豚80の肥育の日令ごとの体重推移)に基づいて、複数の豚房70のそれぞれについて、豚80の出荷予定日(言い換えれば、推定体重が所定範囲内に到達する日付)を推定する(S301)。例えば、推定部24bは、参照した推定情報によって定まる、豚房70ごとの複数頭の豚80の推定体重の代表値の時間推移データを用いて、当該データの近似曲線又は近似直線を算出することにより、豚房70ごとの豚80の出荷予定日を推定してもよい。なお、所定範囲は、家畜が豚80の場合、例えば、110kg以上120kg以下の範囲などであるが、特に限定されない。
次いで、通知部24cは、ステップS301で推定された豚80の出荷予定日と、豚房70の識別情報とが対応付けられた通知情報を飼育者等(ユーザ)に通知する(S302)。具体的には、通知部24cは、豚房70ごとの豚80の出荷予定日を飼育者等に通知するための通知情報を、第二通信部25を介して携帯端末40又はサーバ装置30に送信する。上述したように、携帯端末40は、サーバ装置30から通知情報を取得してもよいし、情報処理装置20から通知情報を取得してもよい。この結果、携帯端末40には、図14のような通知画面が表示される。図14は、出荷予定日の通知画面の一例を示す図である。なお、豚の80の出荷予定日は、プッシュ通知されてもよい。また、豚80の出荷予定日は、飼育者等の操作に基づいて、情報処理装置20の表示部22に表示されてもよい。
以下、ステップS301の処理について、より具体的に説明する。図15は、図13のステップS301の詳細なフローの一例を示すフローチャートである。図16は、図13のステップS301の詳細なフローの他の例を示すフローチャートである。図17、図18及び図19は、それぞれ、出荷予定日の推定結果の一例を示す図である。
まず、ステップS301の詳細なフローの一例について説明する。図15に示されるように、ステップS301では、推定部24bは、例えば、複数頭の豚80の体重の代表値の時間推移に基づいて、代表値が第2閾値に達する日付を推定する(S311)。第2閾値は、豚80の成熟体重であり、取引価格が最大となる体重である。第2閾値は、例えば、110kgであってもよいし、110kg以上120kg以下の範囲であってもよい。例えば、図17~図19に示されるように、代表値は平均値であってもよい。図17の例では、1つの豚房70(例えば、図2のA-1の豚房)について、複数頭の豚80の推定体重の平均値(平均体重といもいう)の時間推移に基づいて、平均体重が第2閾値(ここでは、体重110kg)に達する成育日数(日令)から日付を推定している。また、図18の例では、日令が同じグループ(例えば、図2のグループ1)内の複数の豚房70(例えば、図2のA-1~A-10の豚房70)について、各豚房70における複数頭の豚80の推定体重の平均値(平均体重)の時間推移に基づいて、平均体重が第2閾値に達する成育日数(日令)から日付を推定している。図18では、図の見やすさの観点から、グループ1内の一部の豚房70における平均体重の時間推移のみ表示している。また、図19の例では、日令が異なるグループ(図2のグループ1~3)のそれぞれについて、複数頭の豚80の推定体重の平均値(平均体重)の時間推移に基づいて、平均体重が第2閾値に達する日付を推定している。
次いで、推定部24bは、ステップS311で推定された日付を豚房70に位置する複数頭の豚80の出荷予定日として推定してもよい(S312)。例えば、図18の例では、グループ1において、A-3の豚房70内の複数頭の豚80出荷予定日が早く、次に、A-1の豚房70内の複数頭の豚80の出荷予定日が早く、次に、A-2の豚房70内の複数頭の豚80の出荷予定日が早いと推定される。また、例えば、図19の例では、グループ1内の豚80の出荷の次に、グループ2内の豚80の出荷があり、最後に、グループ3内の豚80の出荷があり、それらの出荷予定日がそれぞれ推定される。
続いて、ステップS301の詳細なフローの他の例について説明する。図16に示されるように、ステップS301では、推定部24bは、例えば、複数頭の豚80の体重の平均値の時間推移に基づいて、平均値+n×σ(n:自然数、σ:平均偏差)の値が第2閾値に達する日付を推定する(S321)。例えば、図17の吹き出し欄に示されるように、推定部24bは、豚房70内の1頭以上の豚80の推定体重に基づいて、複数頭の豚80の推定体重の分布を推定する。そして、推定部24bは、例えば、推定された推定体重の分布において平均値+n×σ(例えば、n=1又は2、σ:標準偏差)が第2閾値に到達する日付を推定してもよい。なお、推定部24bは、推定体重の平均値-n×σ(例えば、n=1又は2、σ:標準偏差)が第2閾値に到達する日付を推定してもよい。なお、推定部24bは、例えば、推定体重の分布の上位30%が第2閾値を超える日付を推定してもよいし、上位70%が第2閾値を超える日付を推定してもよい。これらのパーセンテージは、飼育者等(ユーザ)により適宜設定されてもよい。
なお、推定部24bは、豚房70単位に限られず、グループ単位、又は、豚舎75単位で、飼育されている複数頭の豚80の推定体重の代表値に基づいて、出荷予定日を推定してもよい。
このように、生産管理システム100は、複数の豚房70のそれぞれにおける複数頭の豚80の推定体重の代表値の時間推移に基づいて、豚80の出荷予定日を豚房70ごとに通知することができる。
[動作例4:豚の成育状態の判定]
図20は、実施の形態に係る生産管理システム100の動作例4を示すフローチャートである。動作例4では、生産管理システム100は、複数の豚房70における豚80の成育状態を判定し、判定された成育状態を示す成育情報を出力する動作について説明する。
図20は、実施の形態に係る生産管理システム100の動作例4を示すフローチャートである。動作例4では、生産管理システム100は、複数の豚房70における豚80の成育状態を判定し、判定された成育状態を示す成育情報を出力する動作について説明する。
まず、判定部24dは、記憶部26に記憶された推定情報を参照し(不図示)、複数の豚房70に対応する複数の1頭以上の豚80の推定体重を相互に比較することにより(S401)、複数の豚房70のそれぞれにおける豚80の成育状態を判定する(S402)。例えば、判定部24dは、各豚房70における1頭以上の豚80の推定体重の代わりに、各豚房70における1頭以上の豚80の推定体重の代表値を相互に比較してもよい。また、例えば、判定部24dは、複数の豚房70における豚80の推定体重の代表値(例えば、複数の豚房70全体の豚80の平均体重)と、複数の豚房70それぞれにおける1頭以上の豚80の推定体重の代表値(例えば、各豚房における豚80の平均体重)とを比較し、各豚房70について、全体の豚80の平均体重よりも所定値以上推定体重が少ない豚房70を豚80の成育状態が悪い豚房70であると判定してもよい。
次に、出力部24fは、成育状態を示す成育情報(言い換えると、ステップS402の判定結果)を出力する(S403)。具体的には、出力部24fは、ステップS402で判定部24dによって豚80の成育状態が悪いと判定された豚房70を飼育者等に通知するための通知情報(ここでは、成育情報)を、第二通信部25を介してサーバ装置30又は携帯端末40に出力する。この結果、携帯端末40には、図21のような通知画面が表示される。図21は、豚80の成育状態の判定結果の通知画面の一例を示す図である。なお、成育状態の判定結果(いわゆる、成育情報)は、プッシュ通知されてもよい。また、成育状態の判定結果は、飼育者等の操作に基づいて、情報処理装置20の表示部22に表示されてもよい。
このように、生産管理システム100は、豚80の成育状態が悪いと判定された豚房70を飼育者等に通知することができる。飼育者等は、当該豚房70において豚80の成育状態が悪い原因を追究し、当該豚房70における豚80の成育状態の改善を図ることができる。
なお、ステップS402では、豚80の成育状態が悪い豚房70に代えて、又は、豚80の成育状態が悪い豚房70に加えて、豚80の成育状態が良い豚房70が判定されてもよい。例えば、判定部24dは、複数の豚房70全体の豚80の推定体重の平均値と、複数の豚房70のそれぞれにおける1頭以上の豚80の推定体重とを比較し、各豚房70について、全体の豚80の平均値よりも所定値以上推定体重が大きい豚房70を豚80の成育状態が良い豚房70であると判定することができる。
豚80の成育状態が良いと判定された豚房70が飼育者等に通知されれば、飼育者等は、成育状態が良い原因を追究し、豚80の成育状態が良い豚房70にならって他の豚房70における豚80の成育状態の改善を図ることができる。
[変形例1]
生産管理システム100は、クライアントサーバシステムとして実現されてもよい。この場合、上記実施の形態において情報処理装置20によって行われると説明された処理の一部又は全部がサーバ装置30によって行われてもよい。
生産管理システム100は、クライアントサーバシステムとして実現されてもよい。この場合、上記実施の形態において情報処理装置20によって行われると説明された処理の一部又は全部がサーバ装置30によって行われてもよい。
[効果等]
以上説明したように、生産管理システム100は、複数頭の豚80の体重の代表値を推定し、推定された代表値に基づいて、複数頭の豚80の出荷時期を推定する推定部24bと、推定された出荷時期を出力する出力部24fと、を備える。豚80は、家畜の一例である。
以上説明したように、生産管理システム100は、複数頭の豚80の体重の代表値を推定し、推定された代表値に基づいて、複数頭の豚80の出荷時期を推定する推定部24bと、推定された出荷時期を出力する出力部24fと、を備える。豚80は、家畜の一例である。
このような生産管理システム100は、画像に映る複数頭の豚80の輪郭形状のうち所定の輪郭形状との一致度の高い1つ以上の輪郭形状を特定し、特定した1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定することができる。したがって、生産管理システム100は、人の手を介することなく、手軽にかつ精度良く1頭以上の家畜の体重を推定することにより、効率よく家畜の生産管理を行うことができる。
また、例えば、生産管理システム100は、さらに、撮影装置10によって撮影された、豚房70内に位置する複数頭の豚80が映る画像を取得する取得部24aを備え、推定部24bは、画像に映る複数頭の豚80の輪郭形状のうち所定の輪郭形状と一致度が第1閾値以上である1つ以上の輪郭形状を特定し、特定された1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重に基づいて、複数頭の豚80の体重の代表値を推定する。豚房70は、飼育エリアの一例である。
このような生産管理システム100は、1頭以上の豚80の体重に基づいて豚房70内に位置する複数頭の豚80の体重の代表値を推定することができる。
また、例えば、推定部24bは、特定された1つ以上の輪郭形状に対応する1頭以上の豚80のそれぞれについて、当該豚80の輪郭形状の重心の座標、並びに、重心を通る長軸及び短軸の長さを含むパラメータを算出し、算出されたパラメータを用いて1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重に基づいて、複数頭の豚80の体重の代表値を推定する。
このような生産管理システム100は、算出されたパラメータに基づいて1頭以上の豚80の体重を推定することができる。
また、例えば、生産管理システム100は、さらに、豚80の輪郭形状と豚80の実測体重とが紐づけられて格納されたデータベース(不図示)を備え、推定部24bは、データベースに基づいて、1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重に基づいて、複数頭の豚80の体重の代表値を推定する。
このような生産管理システム100は、データベースに格納された豚80の輪郭形状と豚80の実測体重とが紐付けられた実測データと、画像に映る複数頭の豚80の輪郭形状とをそれぞれ比較して、実測データと一致度の高い1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定することができる。
また、例えば、推定部24bは、データベース(不図示)に基づいて、複数の豚房70のそれぞれについて、豚房70内に位置する複数頭の豚80の体重を推定するための補正係数kを導出し、パラメータと、補正係数kとを用いて、1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重に基づいて、複数頭の豚80の体重の代表値を推定する。
このような生産管理システム100は、補正係数k及びパラメータ(例えば、画像(推定用画像)における豚80の輪郭の重心を通る長軸及び短軸の長さ)を用いて、1頭以上の豚80の体重を推定することができる。
また、例えば、生産管理システム100は、さらに、学習済みモデル(不図示)を備え、学習済みモデルは、画像における複数頭の豚80を検出し、検出された複数頭の豚80の輪郭を抽出し、推定部24bは、学習済みモデルにより抽出された複数頭の豚80の輪郭に基づいて、複数頭の豚80の輪郭形状のうち所定の輪郭形状との一致度が第1閾値以上である1つ以上の輪郭形状を特定する。
このような生産管理システム100は、学習済みモデルを用いることにより、画像に映る複数の豚80から効率的に所定の輪郭形状と一致度が高い1つ以上の輪郭形状の豚80を抽出することができるため、1頭以上の豚80の体重を推定することができる。
また、例えば、推定部24bは、撮影装置10によって撮影された日付が異なる複数の画像のそれぞれから1頭以上の豚80の体重を推定し、推定された1頭以上の豚80の体重と、豚房70の識別情報とが対応付けられた推定情報に、日付を対応付けて記憶部26に格納させ、出力部24fは、日付と対応付けて格納された推定情報を出力する。
このような生産管理システム100は、1頭以上の豚80の推定体重の推移を豚房70ごとに管理することができる。
また、例えば、生産管理システム100は、さらに、ユーザに通知情報を通知する通知部24cを備え、推定部24bは、記憶部26に日付と対応付けて格納された推定情報に含まれる1頭以上の豚80の体重によって定まる、複数頭の豚80の体重の代表値の時間推移に基づいて、豚房70内の複数の豚80の出荷予定日を推定し、通知部24cは、推定された複数の豚80の出荷予定日と豚房70の識別情報とが対応付けられた通知情報をユーザに通知する。
このような生産管理システム100は、複数の豚80の出荷予定日を豚房70ごとに通知することができる。
また、例えば、代表値は、平均値又は中央値であり、推定部24bは、代表値の時間推移に基づいて、代表値が第2閾値に達する日付を推定し、推定された日付を出荷予定日として推定する。例えば、第2閾値は、豚80の出荷に適した体重(いわゆる、成熟体重)であってもよい。
このような生産管理システム100は、豚房70内に位置する複数頭の豚80の半数が第2閾値に達する日付を豚房70内の豚80の出荷予定日とすることにより、出荷に適した体重の範囲内に少なくとも複数頭の豚80の8割が該当するため、豚80の出荷を適切に管理することができる。
また、例えば、代表値は、平均値であり、推定部24bは、代表値の時間推移に基づいて、代表値+n×σ(n:自然数、σ:標準偏差)の値が第2閾値に達する日付を推定し、推定された日付を出荷予定日として推定する。
このような生産管理システム100は、出荷に適した体重を超えて成育しすぎる豚80の数を低減することができるため、豚80の出荷を適切に管理することができる。
また、例えば、生産管理システム100は、さらに、複数の豚房70に対応する複数の1頭以上の豚80の体重を比較することにより、複数の豚房70のそれぞれにおける豚80の成育状態を判定する判定部24dを備え、出力部24fは、判定部24dにより判定された成育状態を示す成育情報を出力する。
このような生産管理システム100は、複数の豚房70に対応する複数の、1頭以上の豚80の推定体重の相対的な関係に基づいて豚80の成育状態を判定することができる。
また、生産管理システム100などのコンピュータによって実行される生産管理方法は、複数頭の豚80の体重の代表値を推定し、推定された代表値に基づいて、複数頭の豚80の出荷時期を推定する推定ステップ(ステップS101)と、推定された出荷時期を出力する出力ステップ(ステップS102)と、を含む。
このような生産管理方法は、画像に映る複数頭の豚80の輪郭形状のうち所定の輪郭形状との一致度の高い1つ以上の輪郭形状を特定し、特定した1つ以上の輪郭形状に対応する1頭以上の豚80の体重を推定することができる。したがって、生産管理方法は、人の手を介することなく、手軽にかつ精度良く1頭以上の家畜の体重を推定することにより、効率よく家畜の生産管理を行うことができる。
(その他の実施の形態)
以上、実施の形態について説明したが、本発明は、上記実施の形態に限定されるものではない。
以上、実施の形態について説明したが、本発明は、上記実施の形態に限定されるものではない。
例えば、上記実施の形態では、生産管理システムは、飼育エリア内に位置する複数頭の家畜の体重の代表値が第2閾値に達する日付を出荷予定日と推定したが、代表値は平均値又は中央値に限られない。例えば、代表値は、飼育者等(ユーザ)により予め設定された所定の値であってもよい。
また、例えば、上記実施の形態では、生産管理システムは、出荷予定日と飼育エリアの識別情報とが対応付けられた通知情報、日付と対応付けて記憶部に格納された推定情報、及び、飼育エリアにおける家畜の成育状態を示す成育情報を出力するが、例えば、飼育者等により予め設定された所定の値が第2閾値に達した場合に、その旨を通知する通知情報を出力してもよい。
また、上記実施の形態において、特定の処理部が実行する処理を別の処理部が実行してもよい。また、複数の処理の順序が変更されてもよいし、複数の処理が並行して実行されてもよい。
また、上記実施の形態において、各構成要素は、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPU又はプロセッサなどのプログラム実行部が、ハードディスク又は半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
また、各構成要素は、ハードウェアによって実現されてもよい。例えば、制御部などの構成要素は、回路(又は集積回路)でもよい。これらの回路は、全体として1つの回路を構成してもよいし、それぞれ別々の回路でもよい。また、これらの回路は、それぞれ、汎用的な回路でもよいし、専用の回路でもよい。
また、本発明の全般的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよい。また、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
例えば、本発明は、生産管理システムなどのコンピュータによって実行される生産管理方法として実現されてもよいし、生産管理方法をコンピュータに実行させるためのプログラムとして実現されてもよいし、このようなプログラムが記録されたコンピュータ読み取り可能な非一時的な記録媒体として実現されてもよい。
また、上記実施の形態では、生産管理システムは、複数の装置によって実現されたが、単一の装置として実現されてもよい。生産管理システムが複数の装置によって実現される場合、上記実施の形態で説明された生産管理システムが備える構成要素は、複数の装置にどのように振り分けられてもよい。
その他、各実施の形態に対して当業者が思いつく各種変形を施して得られる形態、又は、本発明の趣旨を逸脱しない範囲で各実施の形態における構成要素及び機能を任意に組み合わせることで実現される形態も本発明に含まれる。
24a 取得部
24b 推定部
24c 通知部
24d 判定部
24f 出力部
70 豚房
80 豚
100 生産管理システム
24b 推定部
24c 通知部
24d 判定部
24f 出力部
70 豚房
80 豚
100 生産管理システム
Claims (13)
- 複数頭の家畜の体重の代表値を推定し、推定された前記代表値に基づいて、前記複数頭の家畜の出荷時期を推定する推定部と、
推定された前記出荷時期を出力する出力部と、
を備える、
生産管理システム。 - さらに、
撮影装置によって撮影された、飼育エリア内に位置する前記複数頭の家畜が映る画像を取得する取得部を備え、
前記推定部は、
前記画像に映る前記複数頭の家畜の輪郭形状のうち所定の輪郭形状と一致度が第1閾値以上である1以上の輪郭形状を特定し、
特定された前記1以上の輪郭形状に対応する1頭以上の家畜の体重を推定し、
推定された前記1頭以上の家畜の体重に基づいて、前記複数頭の家畜の体重の前記代表値を推定する、
請求項1に記載の生産管理システム。 - 前記推定部は、
特定された前記1以上の輪郭形状に対応する前記1頭以上の家畜のそれぞれについて、当該家畜の輪郭形状の重心の座標、並びに、前記重心を通る長軸及び短軸の長さを含むパラメータを算出し、
算出された前記パラメータを用いて前記1頭以上の家畜の体重を推定し、
推定された前記1頭以上の家畜の体重に基づいて、前記複数頭の家畜の体重の前記代表値を推定する、
請求項2に記載の生産管理システム。 - さらに、家畜の輪郭形状と前記家畜の実測体重とが紐づけられて格納されたデータベースを備え、
前記推定部は、前記データベースに基づいて、前記1頭以上の家畜の体重を推定し、
推定された前記1頭以上の家畜の体重に基づいて、前記複数頭の家畜の体重の前記代表値を推定する、
請求項3に記載の生産管理システム。 - 前記推定部は、
前記データベースに基づいて、複数の前記飼育エリアのそれぞれについて、前記飼育エリア内に位置する前記複数頭の家畜の体重を推定するための補正係数を導出し、
前記パラメータと、前記補正係数とを用いて、前記1頭以上の家畜の体重を推定し、
推定された前記1頭以上の家畜の体重に基づいて、前記複数頭の家畜の体重の前記代表値を推定する、
請求項4に記載の生産管理システム。 - さらに、学習済みモデルを備え、
前記学習済みモデルは、
前記画像における前記複数頭の家畜を検出し、
検出された前記複数頭の家畜の輪郭を抽出し、
前記推定部は、
前記学習済みモデルにより抽出された前記複数頭の家畜の輪郭に基づいて、前記複数頭の家畜の輪郭形状のうち前記所定の輪郭形状との一致度が前記第1閾値以上である前記1以上の輪郭形状を特定する、
請求項2~5のいずれか1項に記載の生産管理システム。 - 前記推定部は、
前記撮影装置によって撮影された日付が異なる複数の前記画像のそれぞれから前記1頭以上の家畜の体重を推定し、
推定された前記1頭以上の家畜の体重と、前記飼育エリアの識別情報とが対応付けられた推定情報に、日付を対応付けて記憶部に格納させ、
前記出力部は、日付と対応付けて格納された前記推定情報を出力する、
請求項2~6のいずれか1項に記載の生産管理システム。 - さらに、ユーザに通知情報を通知する通知部を備え、
前記推定部は、前記記憶部に前記日付と対応付けて格納された前記推定情報に含まれる前記1頭以上の家畜の体重によって定まる、前記複数頭の家畜の体重の前記代表値の時間推移に基づいて、前記飼育エリア内の前記複数頭の家畜の出荷予定日を推定し、
前記通知部は、推定された前記複数頭の家畜の出荷予定日と前記飼育エリアの識別情報とが対応付けられた通知情報を前記ユーザに通知する、
請求項7に記載の生産管理システム。 - 前記代表値は、平均値又は中央値であり、
前記推定部は、前記代表値の時間推移に基づいて、前記代表値が第2閾値に達する日付を推定し、
推定された前記日付を前記出荷予定日として推定する、
請求項8に記載の生産管理システム。 - 前記代表値は、平均値であり、
前記推定部は、前記代表値の時間推移に基づいて、前記代表値+n×σ(n:自然数、σ:標準偏差)の値が第2閾値に達する日付を推定し、
推定された前記日付を前記出荷予定日として推定する、
請求項8に記載の生産管理システム。 - さらに、複数の前記飼育エリアに対応する複数の前記1頭以上の家畜の体重を比較することにより、複数の前記飼育エリアのそれぞれにおける家畜の成育状態を判定する判定部を備え、
前記出力部は、前記判定部により判定された前記成育状態を示す成育情報を出力する、
請求項2~10のいずれか1項に記載の生産管理システム。 - 複数頭の家畜の体重の代表値を推定し、推定された前記代表値に基づいて、前記複数頭の家畜の出荷時期を推定する推定ステップと、
推定された前記出荷時期を出力する出力ステップと、
を含む、
生産管理方法。 - 請求項12に記載の生産管理方法をコンピュータに実行させるための、
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021120010A JP2023015924A (ja) | 2021-07-20 | 2021-07-20 | 生産管理システム、生産管理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021120010A JP2023015924A (ja) | 2021-07-20 | 2021-07-20 | 生産管理システム、生産管理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023015924A true JP2023015924A (ja) | 2023-02-01 |
Family
ID=85131154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021120010A Pending JP2023015924A (ja) | 2021-07-20 | 2021-07-20 | 生産管理システム、生産管理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023015924A (ja) |
-
2021
- 2021-07-20 JP JP2021120010A patent/JP2023015924A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wurtz et al. | Recording behaviour of indoor-housed farm animals automatically using machine vision technology: A systematic review | |
Wang et al. | ASAS-NANP SYMPOSIUM: Applications of machine learning for livestock body weight prediction from digital images | |
US20180260976A1 (en) | Method, information processing apparatus and non-transitory computer-readable storage medium | |
EP4102441A1 (en) | Livestock raising information management system, livestock raising information management server, livestock raising information management method, and livestock raising information management program | |
JP2023015316A (ja) | 家畜の出荷判定表示装置、出荷判定表示方法、プログラム、および記録媒体 | |
WO2021014906A1 (ja) | 体重推定システム、体重推定方法、及び、プログラム | |
CN107680080B (zh) | 牲畜的样本库建立方法和清点方法、存储介质和电子设备 | |
US11910784B2 (en) | Animal visual identification, tracking, monitoring and assessment systems and methods thereof | |
JP7108941B2 (ja) | 動物情報管理システム、及び、動物情報管理方法 | |
CN110547210A (zh) | 饲料供给方法及系统、计算机系统、存储介质 | |
JP7108886B2 (ja) | 養鶏システム、養鶏方法、及び、プログラム | |
WO2023041904A1 (en) | Systems and methods for the automated monitoring of animal physiological conditions and for the prediction of animal phenotypes and health outcomes | |
CN109086696B (zh) | 一种异常行为检测方法、装置、电子设备及存储介质 | |
Ding et al. | Activity detection of suckling piglets based on motion area analysis using frame differences in combination with convolution neural network | |
JP7092624B2 (ja) | 行動特定装置、行動特定方法及びプログラム | |
JP2020156393A (ja) | 行動検出プログラム、行動検出方法及び行動検出システム | |
Doornweerd et al. | Passive radio frequency identification and video tracking for the determination of location and movement of broilers | |
JP7129675B2 (ja) | 養鶏システム、養鶏方法、及び、プログラム | |
WO2022181131A1 (ja) | 体重推定システム、及び、体重推定方法 | |
JP2023015924A (ja) | 生産管理システム、生産管理方法及びプログラム | |
CN113516139A (zh) | 数据处理方法、装置、设备和存储介质 | |
WO2022181132A1 (ja) | 体重推定システム、及び、体重推定方法 | |
US20220354091A1 (en) | Animal information management system and animal information management method | |
WO2021241085A1 (ja) | 家畜管理システム、及び、家畜管理方法 | |
Yuan et al. | Stress-free detection technologies for pig growth based on welfare farming: A review |