IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ NKワークス株式会社の特許一覧

特開2024-54982画像解析システム、画像解析方法及びプログラム
<>
  • 特開-画像解析システム、画像解析方法及びプログラム 図1
  • 特開-画像解析システム、画像解析方法及びプログラム 図2
  • 特開-画像解析システム、画像解析方法及びプログラム 図3
  • 特開-画像解析システム、画像解析方法及びプログラム 図4
  • 特開-画像解析システム、画像解析方法及びプログラム 図5
  • 特開-画像解析システム、画像解析方法及びプログラム 図6
  • 特開-画像解析システム、画像解析方法及びプログラム 図7
  • 特開-画像解析システム、画像解析方法及びプログラム 図8
  • 特開-画像解析システム、画像解析方法及びプログラム 図9
  • 特開-画像解析システム、画像解析方法及びプログラム 図10
  • 特開-画像解析システム、画像解析方法及びプログラム 図11
  • 特開-画像解析システム、画像解析方法及びプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024054982
(43)【公開日】2024-04-18
(54)【発明の名称】画像解析システム、画像解析方法及びプログラム
(51)【国際特許分類】
   A01K 29/00 20060101AFI20240411BHJP
【FI】
A01K29/00 A
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022161491
(22)【出願日】2022-10-06
(71)【出願人】
【識別番号】311001347
【氏名又は名称】ノーリツプレシジョン株式会社
(74)【代理人】
【識別番号】100150072
【弁理士】
【氏名又は名称】藤原 賢司
(74)【代理人】
【識別番号】100185719
【弁理士】
【氏名又は名称】北原 悠樹
(74)【代理人】
【識別番号】100179213
【弁理士】
【氏名又は名称】山下 未知子
(72)【発明者】
【氏名】北 耕次
(72)【発明者】
【氏名】島本 久嗣
(57)【要約】
【課題】家畜に負担を与えることなく、精度よく家畜の行動量を算出可能な画像解析システム、画像解析方法及びプログラムを提供する。
【解決手段】画像解析システムは、家畜の前方上方に設置され、家畜の少なくとも尻を写す角度で動画を撮影するカメラと、カメラに接続され、カメラから動画を取得するコンピュータとを備える。コンピュータは、動画に含まれる複数のフレーム画像の各々について、家畜に対応する家畜領域を抽出し、家畜領域の頂部を、家畜の尾根部に対応する目標位置として検出し、家畜の行動量として、目標位置の移動量を算出する。
【選択図】図1

【特許請求の範囲】
【請求項1】
家畜の前方上方に設置され、前記家畜の少なくとも尻を写す角度で動画を撮影するカメラと、
前記カメラに接続され、前記カメラから前記動画を取得するコンピュータと
を備える画像解析システムであって、
前記コンピュータは、
前記動画に含まれる複数のフレーム画像の各々について、前記家畜に対応する家畜領域を抽出し、前記家畜領域の頂部を、前記家畜の尾根部に対応する目標位置として検出し、
前記家畜の行動量として、前記目標位置の移動量を算出する、
画像解析システム。
【請求項2】
家畜の後方に設置され、前記家畜の少なくとも尻を写す角度で動画を撮影するサーモグラフィー式のカメラと、
前記カメラに接続され、前記カメラから前記動画を取得するコンピュータと
を備える画像解析システムであって、
前記コンピュータは、
前記動画に含まれる複数のフレーム画像の各々について、所定の基準よりも高温の領域を、前記家畜の尻付近の部位に対応する目標位置として検出し、
前記家畜の行動量として、前記目標位置の移動量を算出する、
画像解析システム。
【請求項3】
前記カメラは、複数の家畜の複数の尻を写す角度で前記動画を撮影し、
前記コンピュータは、前記家畜ごとに前記目標位置を検出し、前記家畜ごとに前記行動量を算出する、
請求項1又は2に記載の画像解析システム。
【請求項4】
前記コンピュータは、前記複数のフレーム画像の各々について、前記複数の家畜間の境界を推定し、前記境界の情報に基づいて、前記家畜ごとに前記目標位置を検出する、
請求項3に記載の画像解析システム。
【請求項5】
前記複数の家畜は、繋ぎ飼い状態である、
請求項3に記載の画像解析システム。
【請求項6】
前記コンピュータは、前記フレーム画像の縦方向に沿って下限値よりも低い位置にある前記目標位置の前記移動量を前記行動量の算出から除外する、
請求項1又は2に記載の画像解析システム。
【請求項7】
家畜の前方上方に設置されたカメラにより前記家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、前記家畜に対応する家畜領域を抽出し、前記家畜領域の頂部を、前記家畜の尾根部に対応する目標位置として検出するステップと、
前記家畜の行動量として、前記目標位置の移動量を算出するステップと
を含む、
画像解析方法。
【請求項8】
家畜の後方に設置されたサーモグラフィーカメラにより前記家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、所定の基準よりも高温の領域を、前記家畜の尻付近の部位に対応する目標位置として検出するステップと、
前記家畜の行動量として、前記目標位置の移動量を算出するステップと
を含む、画像解析方法。
【請求項9】
家畜の前方上方に設置されたカメラにより前記家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、前記家畜に対応する家畜領域を抽出し、前記家畜領域の頂部を、前記家畜の尾根部に対応する目標位置として検出するステップと、
前記家畜の行動量として、前記目標位置の移動量を算出するステップと
をコンピュータに実行させる、プログラム。
【請求項10】
家畜の後方に設置されたサーモグラフィーカメラにより前記家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、所定の基準よりも高温の領域を、前記家畜の尻付近の部位に対応する目標位置として検出するステップと、
前記家畜の行動量として、前記目標位置の移動量を算出するステップと
をコンピュータに実行させる、プログラム。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像解析システム、画像解析方法及びプログラムに関する。
【背景技術】
【0002】
牛等の家畜の分娩兆候の1つに、陣痛症状に伴う行動量の増加がある。特許文献1及び2は、このような兆候を監視するシステムを開示する。特許文献1は、異なる色の首輪を装着した複数頭の牛をカメラで撮影し、撮影画像から首輪の動きを検出し、各牛の行動量を算出する。特許文献2は、牛の尻尾や足に装着した加速度センサにより、牛の尾上げ行動や歩行等の運動量を計測し、分娩兆候や発情状態を検知する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2018-148843号公報
【特許文献2】特開2011-234668号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
以上の通り、特許文献1及び2の方式によれば、牛の行動量の算出が可能かもしれない。しかしながら、牛に首輪や加速度センサといった装備を装着する必要があり、牛に負担を与える虞がある。なお、同様の問題は、牛に限らず、豚や鶏等のその他の家畜を監視する場合にも生じ得る。また、家畜の行動量を把握することは、上述した分娩兆候や発情状態を検知する例に限らず、家畜のその他の様々な状態を把握するのに役立ち得る。
【0005】
本発明の目的は、家畜に負担を与えることなく、精度よく家畜の行動量を算出可能な画像解析システム、画像解析方法及びプログラムを提供することである。
【課題を解決するための手段】
【0006】
本発明のある局面に従う画像解析システムは、家畜の前方上方に設置され、家畜の少なくとも尻を写す角度で動画を撮影するカメラと、カメラに接続され、カメラから動画を取得するコンピュータとを備える。コンピュータは、動画に含まれる複数のフレーム画像の各々について、家畜に対応する家畜領域を抽出し、家畜領域の頂部を、家畜の尾根部に対応する目標位置として検出する。コンピュータは、家畜の行動量として、目標位置の移動量を算出する。
【0007】
この画像解析システムでは、家畜に特別な装備を装着せずとも、家畜の行動量を算出することができる。また、家畜の前方上方から家畜の少なくとも尻を写すように撮影されたフレーム画像において、家畜領域の頂部が目標位置として検出される。これにより、目標位置として、家畜の尾根部を精度よく検出することができる。そして、そのような目標位置の移動量が、家畜の行動量として算出される。その結果、この画像解析システムにおいては、精度よく家畜の行動量を算出することができる。
【0008】
本発明の別の局面に従う画像解析システムは、家畜の後方に設置され、家畜の少なくとも尻を写す角度で動画を撮影するサーモグラフィー式のカメラと、カメラに接続され、カメラから動画を取得するコンピュータとを備える。コンピュータは、動画に含まれる複数のフレーム画像の各々について、所定の基準よりも高温の領域を、家畜の尻付近の部位に対応する目標位置として検出する。コンピュータは、家畜の行動量として、目標位置の移動量を算出する。
【0009】
この画像解析システムでは、家畜に特別な装備を装着せずとも、家畜の行動量を算出することができる。また、家畜の後方から家畜の少なくとも尻を写すように撮影されたサーモグラフィー画像であるフレーム画像において、所定の基準よりも高温の領域が目標位置として検出される。家畜は、尻付近がその他の部位よりも高温になる傾向にある。従って、目標位置として、家畜の尻付近の部位を精度よく検出することができる。そして、そのような目標位置の移動量が、家畜の行動量として算出される。その結果、この画像解析システムにおいては、精度よく家畜の行動量を算出することができる。
【0010】
上記画像解析システムにおいて、カメラは、複数の家畜の複数の尻を写す角度で動画を撮影してもよく、コンピュータは、家畜ごとに目標位置を検出し、家畜ごとに行動量を算出してもよい。
【0011】
上記画像解析システムにおいて、コンピュータは、複数のフレーム画像の各々について、複数の家畜間の境界を推定してもよく、境界の情報に基づいて、家畜ごとに目標位置を検出してもよい。
【0012】
この場合、フレーム画像において、家畜ごとに精度よく行動量を算出することができる。
【0013】
上記画像解析システムにおいて、複数の家畜は、繋ぎ飼い状態であってもよい。
【0014】
この場合、家畜は、上半身の動きが制限され、下半身の動きが比較的自由になる。従って、家畜の尾根部又は尻付近の部位の移動量に注目する上記の態様によれば、家畜の行動量に基づいて、分娩兆候等の家畜の状態をより適切に判断することができる。
【0015】
上記画像解析システムにおいて、コンピュータは、フレーム画像の縦方向に沿って下限値よりも低い位置にある前記目標位置の前記移動量を前記行動量の算出から除外する。
【0016】
この画像解析システムでは、家畜の尾根部又は尻付近の部位に対応する目標位置が、下限値よりも低い位置にある場合、そのような目標位置の移動量は、家畜の行動量の算出に反映されない。この方式によれば、主に立位の家畜の行動量を計測し、座位の家畜の行動量を無視することができる。その結果、家畜の行動量をより精度よく算出することができる。
【0017】
本発明のさらに別の局面に従う画像解析方法は、家畜の前方上方に設置されたカメラにより家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、家畜に対応する家畜領域を抽出し、家畜領域の頂部を、家畜の尾根部に対応する目標位置として検出するステップと、家畜の行動量として、目標位置の移動量を算出するステップとを含む。
【0018】
本発明のさらに別の局面に従う画像解析方法は、家畜の後方に設置されたサーモグラフィーカメラにより家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、所定の基準よりも高温の領域を、家畜の尻付近の部位に対応する目標位置として検出するステップと、家畜の行動量として、目標位置の移動量を算出するステップとを含む。
【0019】
本発明のさらに別の局面に従うプログラムは、家畜の前方上方に設置されたカメラにより家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、家畜に対応する家畜領域を抽出し、家畜領域の頂部を、家畜の尾根部に対応する目標位置として検出するステップと、家畜の行動量として、目標位置の移動量を算出するステップとをコンピュータに実行させる。
【0020】
本発明のさらに別の局面に従うプログラムは、家畜の後方に設置されたサーモグラフィーカメラにより家畜の少なくとも尻を写す角度で撮影された動画に含まれる複数のフレーム画像の各々について、所定の基準よりも高温の領域を、家畜の尻付近の部位に対応する目標位置として検出するステップと、家畜の行動量として、目標位置の移動量を算出するステップとをコンピュータに実行させる。
【発明の効果】
【0021】
本発明によれば、家畜に負担を与えることなく、精度よく家畜の行動量を算出可能な画像解析システム、画像解析方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0022】
図1】実施の形態1における画像解析システムの構成を模式的に示す図である。
図2】サーバのハードウェア構成の一例を示す図である。
図3】実施の形態1におけるサーモグラフィーカメラによる撮影画像の一例を示す図である。
図4】実施の形態1における牛の行動量を算出する処理の流れを示すフローチャートである。
図5】牛間の境界を推定する処理の流れを示すフローチャートである。
図6】横プロファイルを説明するための図である。
図7】横プロファイルに基づいて牛間の境界を推定する手順を説明するための図である。
図8】実施の形態2における画像解析システムの構成を模式的に示す図である。
図9】実施の形態2におけるサーモグラフィーカメラによる撮影画像の一例を示す図である。
図10】実施の形態2における牛の行動量を算出する処理の流れを示すフローチャートである。
図11】横プロファイルの別の例を説明するための図である。
図12】上側及び下側輪郭線を説明するための図である。
【発明を実施するための形態】
【0023】
以下、本発明の一側面に係る実施の形態(以下、「本実施の形態」とも称する。)について、図面を用いて詳細に説明する。なお、図中同一又は相当部分には同一符号を付してその説明は繰り返さない。また、各図面は、理解の容易のために、適宜対象を省略又は誇張して模式的に描かれている。
【0024】
[1.実施の形態1]
<1-1.構成>
(1-1-1.システム全体の構成)
図1は、本実施の形態1に従う画像解析システム10の構成を模式的に示す図である。図1に示されるように、画像解析システム10は、サーモグラフィーカメラ100と、サーバ200とを含んでいる。
【0025】
サーモグラフィーカメラ100は、牛(家畜の一例)400を収容する牛房300内に設置される。本実施の形態1では、牛房300においては、複数の牛400が繋ぎ飼い状態で飼育される。繋ぎ飼いとは、牛房300において各牛400を固定して飼育する方法のことをいう。牛房300において、各牛400は一列に並んだ状態でロープ等を介して棒等に固定される。繋ぎ飼い状態において、各牛400の並び順は変わらない。本実施の形態1では、各牛400の頭部がロープ等を介して固定される。そのため、各牛400は、頭部を含む上半身の動きが制限されるが、尻を含む下半身の動きは比較的自由な状態にある。本実施の形態1では、サーモグラフィーカメラ100は、牛400の前方(つまり、頭側)上方に設置され、牛400を前方上方から斜め下方に見下ろすような角度で動画撮影を行う。このとき、サーモグラフィーカメラ100は、牛400の少なくとも尻を写す角度で撮影を行う。図3は、このような角度で撮影された画像の一例である。サーモグラフィーカメラ100は、複数の牛400の並び方向と撮影画像の横方向とが対応するような角度に設置される。従って、複数の牛400の複数の尻が横方向に並んだ動画が撮影される。
【0026】
サーモグラフィーカメラ100は、例えば、遠赤外線カメラであり、撮影範囲における温度分布を示すサーモグラフィー画像を生成する。サーモグラフィー画像においては、例えば、高温部分に対応する画素が低温部分に対応する画素よりも明るく示される。従って、サーモグラフィー画像によれば、周囲の明るさに拘わらず(昼夜を問わず)、各牛400の状態を把握することができる。サーモグラフィーカメラ100は、サーモグラフィー画像であるフレーム画像を連続的に生成することにより、撮影範囲における温度分布を示す動画像データを生成する。動画像データは、時系列に沿った多数のフレーム画像の画像データを含む。
【0027】
サーモグラフィーカメラ100は、通信機能を有しており、ネットワークN1に接続されている。ネットワークN1は、インターネットを含んでいてもよい。サーモグラフィーカメラ100によって生成された画像データは、ネットワークN1を通じてサーバ200へ送信される。サーバ200においては、受信された画像データに基づいて、各牛400の行動量が算出され、算出された各牛400の行動量に基づいて、各牛400の状態(例えば、分娩兆候が現れている状態)が判断される。このようなサーバ200の処理については、後程詳しく説明する。
【0028】
(1-1-2.サーバの構成)
図2は、サーバ(コンピュータの一例)200のハードウェア構成の一例を示す図である。図2に示されるように、サーバ200は、制御部210と、記憶部220と、通信モジュール230と、入出力I/F240とを含んでいる。サーバ200に含まれる各構成要素は、バスを通じて電気的に接続されている。
【0029】
制御部210は、CPU(Central Processing Unit)211、RAM(Random Access Memory)212及びROM(Read Only Memory)213を含む。
【0030】
記憶部220は、フラッシュメモリ又はハードディスクドライブ等の補助記憶装置である。記憶部220は、制御プログラム221を記憶する。制御プログラム221は、制御部210によって実行されるサーバ200の制御プログラムである。制御部210が制御プログラム221を実行する場合に、制御プログラム221はRAM212に展開される。そして、制御部210は、RAM212に展開された制御プログラム221をCPU211によって解釈及び実行することにより、各構成要素を制御する。
【0031】
通信モジュール230は、自身が準拠する通信規格のネットワークN1に接続可能であり、ネットワークN1を介して外部機器と通信する。通信モジュール230は、例えば、無線LAN(Local Area Network)モジュール、有線LANモジュール、又は、LTE(Long Term Evolution)規格の通信モジュール等で構成される。サーバ200は、通信モジュール230を介して、同じくネットワークN1に接続されるサーモグラフィーカメラ100及びユーザ端末に接続される。
【0032】
入出力I/F240は、サーバ200における入出力装置である。入出力I/F240は、例えば、キーボード、マウス及びディスプレイで構成される。
【0033】
<1-2.動作>
(1-2-1.牛の行動量の算出処理の流れ)
以下、図4を参照しつつ、本実施の形態1に従う画像解析システム10の動作について説明する。図4は、本実施の形態1に従う牛400の行動量を算出する処理の流れを示すフローチャートである。図4の処理は、サーバ200の制御部210によって実行される。制御部210は、サーモグラフィーカメラ100によって撮影される動画に含まれるフレーム画像を、通信モジュール230を通じてサーモグラフィーカメラ100から順次受信する。制御部210は、このようにして順次取得される複数のフレーム画像の各々について、図4の処理を繰り返し実行する。また、このようにして順次処理されるフレーム画像は、図4の処理と並列して、又はユーザにより指定される任意のタイミングで、入出力I/F240、又はサーバ200に接続されるユーザ端末に順次表示されてもよい。
【0034】
まず、ステップS100では、制御部210は、フレーム画像において複数の牛400間の境界を推定する。図3のフレーム画像IM1には、4頭の牛C1~C4が撮影されており、このうち左側の2頭の牛C1,C2の像が融合しており、右側の2頭の牛C3,C4の像が融合している。この例のように、フレーム画像内では、複数の牛400の像が部分的に重なるように捉えられ、牛400間の境界が不明確となり得る。なお、頭部側が固定される繋ぎ飼いの場合には、牛400の下半身の像が重なり易くなる。しかし、牛400の状態を個別に把握するには、フレーム画像上で牛400を個別に認識した上で、牛400の行動量を個別に算出することが重要となり得る。そのため、ステップS100では、フレーム画像を個々の牛400がそれぞれ存在する複数の領域に分割するための境界線が引かれる。境界線は、フレーム画像上で牛400が並ぶ方向である横方向に交差する方向(例えば、直交する縦方向)に引かれる。従って、フレーム画像は、ここで引かれる境界線により、横方向に並ぶ複数の領域に分割される。図3には、牛C1,C2の間と、牛C2,C3の間と、牛C3,C4の間に、ここで引かれる境界線L1~L3が点線で示されている。牛400間の境界を推定するステップS100の詳細については、後述する。なお、ここで引かれる境界線の位置は、入出力I/F240又はユーザ端末に表示されるフレーム画像上に、線を重畳する等して表示されてもよいし、されなくてもよい。
【0035】
続くステップS110では、制御部210は、フレーム画像から牛400に対応する家畜領域を抽出する。家畜領域は、牛400のシルエットを示す領域である。図3には、牛C1~C4に対応する家畜領域Tが一点鎖線で示されている。なお、サーモグラフィー画像であるフレーム画像においては、高温である牛400の像を示す家畜領域は、他の領域(背景領域)と比較して明るく示される。従って、制御部210は、家畜領域を背景領域から容易に区別することができる。例えば、制御部210は、一定以上の輝度値を有する(すなわち、背景領域よりも明るい)一定以上の大きさの領域を、家畜領域として抽出する。なお、ここで抽出される家畜領域の位置は、入出力I/F240又はユーザ端末に表示されるフレーム画像上に、その輪郭線を重畳する等して表示されてもよいし、されなくてもよい。
【0036】
続くステップS120では、制御部210は、フレーム画像において牛400の目標位置を検出する。目標位置は、牛400の動きを評価するために注目する、牛400の特定の部位の位置である。本実施の形態1では、目標位置は、ステップS110で検出された家畜領域に基づいて、牛400ごとに検出される。目標位置としては、家畜領域の頂部が検出される。例えば、家畜領域の輪郭線の上側部分(上側輪郭線)が極大値をとる点にある画素の座標を、目標位置として特定することができる。上側輪郭線は、例えば、以下のように特定することができる。まず、フレーム画像の横方向に並ぶ、フレーム画像を構成する複数の列(縦長の領域)の各列において、家畜領域と重複する領域の最上部(フレーム画像の縦方向に沿って最も高い位置)の画素を検出する。そして、このような最上部の画素を、フレーム画像の横方向に沿って連結することにより描かれる線を、上側輪郭線とすることができる。図3には、家畜領域Tに含まれる牛C1~C4にそれぞれ対応する目標位置O1~O4が示されている。同図から理解される通り、家畜領域の頂部として検出される目標位置は、サーモグラフィーカメラ100の上述した撮影条件の下では、牛400の尾根部に対応する。なお、ここで検出される目標位置は、入出力I/F240又はユーザ端末に表示されるフレーム画像上に、マークを重畳する等して表示されてもよいし、されなくてもよい。
【0037】
続くステップS125では、制御部210は、ステップS100で推定された牛400間の境界の情報に基づいて、ステップS120で検出された目標位置を検証する。ここで、ステップS100で検出された境界線により分割される各領域には、1頭の牛400が存在するはずである。また、ステップS120で検出された複数の目標位置は、複数の牛400に1対1で対応するはずである。従って、制御部210は、ステップS120で検出された目標位置と、ステップS100で検出された境界線により分割される領域とを照合する。より具体的には、制御部210は、所定の検証条件が満たされるか否かを判定する。所定の検証条件とは、例えば、(i)目標位置の数と、境界線で分割される領域の数とが一致すること、あるいは、(ii)複数の目標位置が、境界線で分割される複数の領域に1つずつ含まれること等である。そして、制御部210は、所定の検証条件が満たされると判定した場合、ステップS120で検出された目標位置を最終的な目標位置として設定する。一方、所定の検証条件が満たされないと判定した場合、ステップS120で検出された目標位置を修正する。
【0038】
目標位置の修正の態様としては、以下の態様が考えられる。例えば、境界線で分割されるある領域内に目標位置が1つも存在しない場合、ステップS120とは別の検出条件を設定し直して、当該領域内において1つの目標位置を新たに設定してもよい。反対に、境界線で分割されるある領域内に目標位置が複数存在する場合、これらの目標位置を代表する1つの目標位置(以下、代表目標位置という)を再設定してもよい。この場合、別の1つの目標位置(例えば、複数の目標位置の重心位置)を代表目標位置に定めてもよいし、複数の目標位置の中から所定のルールに従って1つの代表目標位置を選択してもよい。所定のルールは、ステップS120において目標位置を検出したときの検出強度(例えば、家畜領域の頂部の高さ)を基準とすることができる。そして、例えば、検出強度のより高い目標位置を代表目標位置としてもよい。なお、以上の説明から分かる通り、ステップS120は、仮の目標位置を検出するステップであり、ステップS125は、最終的に設定されるべき目標位置を検出するステップであると言える。
【0039】
続くステップS130では、制御部210は、フレーム画像内の牛400が立位にあるか、座位にあるかを判定する。この判定は、ステップS125で最終的に設定された目標位置ごとに(すなわち、牛400ごとに)行われる。ここで、サーモグラフィーカメラ100の上述した撮影条件の下では、目標位置である牛400の尾根部は、牛400が立位にある場合、フレーム画像内において縦方向に一定以上の高さ位置に存在する可能性が高い。一方、牛400が座位にある場合、牛400の尾根部は、フレーム画像内に写らないか、縦方向に一定以下の高さ位置に存在する可能性が高い。そこで、ステップS130では、制御部210は、目標位置が、フレーム画像の縦方向に沿って下限値以上の高さ位置にあるか否かを判定する。そして、目標位置が下限値以上の高さ位置にある場合、牛400が立位にあると判定し、下限値よりも低い位置にある場合、座位にあると判定する。ここでの判定結果は、入出力I/F240又はユーザ端末に表示されるフレーム画像上に、牛400の像に重ねて又はその近傍に「立位」「座位」の文字を重畳する等して表示されてもよいし、されなくてもよい。
【0040】
なお、立位/座位の判定の精度を高めるために、ステップS130において使用される目標位置の下限値は、過去に検出された多数の目標位置に基づいて、制御部210によって設定されてもよい。例えば、所定の期間に検出された多数の目標位置に基づいて、制御部210によって設定されてもよい。ここでいう所定の期間とは、現在時刻から所定の時間長だけ遡った期間(つまり、所定の時間長の直近の期間)とすることもできるし、図4の処理の開始時から所定の時間長の期間とすることもできるし、1日の中で定められた時間帯とすることもできるし、その他、様々な期間とすることができる。そして、多数の目標位置のデータ群に基づいて、目標位置の分布を特定し、立位の牛400(或いは座位の牛400)の目標位置が取り得る範囲を統計的に推定し、その推定結果から目標位置の下限値を設定することができる。例えば、下限値は、多数の目標位置のデータ群のうちの最大値と最小値の中央値とすることもできるし、そのようなデータ群の中央値又は平均値とすることもできるし、或いはそのような値に所定値を足した値、引いた値又は乗じた値とすることもできる。また、下限値は、牛400ごとに設定されることが好ましい。この場合、サーモグラフィーカメラ100の配置や、牛400ごとに拘束条件が異なる等の理由により、牛400ごとに撮影画像内における基本の高さ位置が相違する場合であっても、そのような相違を吸収してより正確な判定が可能になる。この場合、各牛400の下限値は、その同じ牛400について過去に検出された多数の目標位置のデータ群に基づいて、設定することができる。
【0041】
なお、以上の方法による下限値の設定は、多数の目標位置のデータ群が収集された後(すなわち、多数のフレーム画像に対し、ステップS120又はS125が実行された後)でないと実行することができない。従って、図4には明示されないが、以上の方法による下限値の設定は、上記データ群が収集された後の適当なタイミングで、制御部210によって実行され得る。この場合、繰り返し実行される図4の処理において、以上の方法による下限値の設定が完了するまでは、ステップS130は省略されてもよい。あるいは、以上の方法による下限値の設定が完了するまでは、予め定められた適切な値(フレーム画像の縦方向の最下の座標であってもよい)を仮の下限値として設定しておくこともできる。
【0042】
続くステップS140では、制御部210は、牛400の行動量を算出する。より具体的には、制御部210は、牛400の行動量として、目標位置の移動量を算出する。この行動量は、牛400ごとに算出される。本実施の形態1では、制御部210は、所定の時間長の直近の期間(以下、対象期間という)において、時系列に沿って連続するフレーム画像間での目標位置の移動量(移動距離)を順次特定し、順次特定される移動量を累積する。それにより、制御部210は、対象期間全体にわたる目標位置の移動量(以下、対象期間移動量ということがある)、すなわち牛400の行動量を算出する。ここで算出される各牛400の行動量(対象期間移動量)は、入出力I/F240又はユーザ端末に表示される画面上に、フレーム画像に加えて又は代えて、時系列のグラフ形式等で表示されてもよい。
【0043】
なお、図4の処理が開始してからの経過時間が短い場合には、対象期間移動量の算出に必要な時間分の目標位置のデータが不足し得る。この場合、直近の牛400の行動量を正確に評価し、ひいては後続のステップにおいて牛400の状態を正確に評価することができなくなり得る。従って、このような初期の期間における例外処理として、図4の処理が開始してから十分な時間が経過しておらず、対象期間分の目標位置のデータが蓄積されるまでは、対象期間移動量を一律「0」としてもよいし、「エラー(算出不可)」としてもよい。
【0044】
また、本実施の形態1では、制御部210は、ステップS130で座位にあると判定された時刻の牛400の目標位置の移動量は、その牛400の行動量(対象期間移動量)の算出に含めない。より具体的には、対象期間において、牛400が座位にあると判定された時刻のフレーム画像と、その前後のフレーム画像との間で算出される牛400の目標位置の移動量は、その牛400の行動量の算出に含めない。言い換えると、ステップS130の下限値を下回ると判定された目標位置の移動量は、そもそも算出されないか、一律「0」とされるか、又は算出されたとしても対象期間移動量に加算されず、それにより対象期間移動量の算出から除外される。つまり、牛400の尾根部に対応する目標位置が下限値よりも低い位置にある場合、そのような目標位置の移動量は、牛400の行動量の算出に反映されない。従って、例えば、主に立位の牛400の行動量を計測し、座位の牛400(多くの場合、動いていないと考えられる牛400)の行動量を無視することができる。その結果、後続のステップS150,S160において、ここで算出される牛400の行動量に基づき、牛400の状態をより適切に判断することができる。
【0045】
続くステップS150では、制御部210は、牛400の行動量が所定条件を満たすか否かを判定する。例えば、制御部210は、ステップS140で算出された牛400の行動量が閾値を超えるか否かを判定する。この判定は、牛400ごとに行われる。閾値は、予め設定しておくことができる。そして、フレーム画像の中に、その行動量が所定条件を満たす牛400が一頭も存在しない場合には、処理はリターンへ移行する。一方、フレーム画像の中に、その行動量が所定条件を満たす牛400が一頭でも存在する場合には、処理はステップS160へ進む。ステップS150は、牛400の状態を判断するステップであると言える。つまり、ステップS150は、牛400の行動量が所定条件を満たすことが意味する状態に牛400があることを検出するステップである。
【0046】
ステップS160では、制御部210は、所定の通知をユーザ端末へ送信するように通信モジュール230を制御する。所定の通知とは、牛400の行動量が所定条件を満たすことの意味をユーザに知らせる通知である。例えば、牛400の分娩兆候の1つに、陣痛症状に伴い行動量が増加することがある。そこで、牛400の行動量が閾値を超えるという所定条件が満たされる場合には、そのことが意味する内容、すなわち、牛400に分娩兆候が現れている旨がユーザに通知されてもよい。また、ここでの通知は、その行動量が所定条件を満たす牛400(以下、対象牛という)を特定するような態様で通知されてもよい。例えば、対象牛の識別情報を通知してもよいし、対象牛が対象牛であることが分かるように加工したフレーム画像を送信してもよい。なお、ステップS150での判定に使用される所定条件を適宜に設定することにより、分娩兆候に限らず、牛400が発情状態やその他の様々な状態にあることを判定し、その旨をユーザに通知することができる。
【0047】
なお、図4のフローチャートに従うと、ステップS140~S160は、フレーム画像が取得される度に繰り返される。しかしながら、ステップS140~S160は、多数枚のフレーム画像に対応する一定時間(例えば、上述のステップS140で説明した所定の時間長)ごとに繰り返されてもよい。この場合、牛400の行動量は、一定時間毎にリセットされ、新たな一定時間における目標位置の移動量の累積値として算出され得る。また、一定時間ごとに、牛400の状態が判断されることになる。
【0048】
(1-2-2.牛間の境界の推定処理の詳細)
以下、図5を参照しつつ、上述したステップS100の詳細について説明する。ステップS100は、牛400間の境界を推定する処理であり、図5は、その処理の流れを示すフローチャートである。
【0049】
まず、ステップS101では、サーバ200の制御部210は、フレーム画像に基づいて、横プロファイルを生成する。図6は、横プロファイルP1を説明するための図である。図6には、フレーム画像IM1が模式的に示されており、比較的低温の背景領域がグレーの領域として示され、比較的高温の牛400に対応する領域B1~B3が白色の領域として示されている。領域B1,B2は、それぞれ1頭の牛400に対応しており、領域B3は、2頭の牛400が重なった領域である。図6に示されるように、フレーム画像IM1は、横方向に並ぶ複数の列(縦長の領域)R1を含んでいる。制御部210は、各列R1において縦方向に並ぶ複数の画素の画素値の平均値を算出し、これらの平均値をまとめた集合を横プロファイルP1とする。図6において、横プロファイルP1は、各列R1における縦方向の画素値の平均値を横方向にプロットした波形として示されている。
【0050】
続くステップS102では、制御部210は、横プロファイルP1における谷部分を検出し、各谷部分が牛400間の境界に対応すると推定する。ここで、図7を参照すると、以下のことが理解される。すなわち、牛400間の境界に対応する列R1においては、牛400間の境界に対応する列R1以外の列R1と比較して、低温の背景領域が占める割合が大きいため(高温の牛400に対応する領域B1~B3が占める割合が小さいため)、縦方向に並ぶ複数の画素の画素値の平均値が小さくなる傾向がある。従って、横プロファイルP1の波形における谷部分V1~V3に牛400間の境界が存在すると推定し、ここに境界線を引くことができる。図7では、谷部分V1に境界線L1が引かれ、谷部分V2に境界線L2が引かれ、谷部分V3に境界線L3が引かれている。なお、以上の方法によれば、重なり合った2頭の牛400の間にも、精度よく境界を検出することができる。重なり合った2頭の牛400の間の境界に対応する列R1では、その周辺の列R1に比べて相対的に、縦方向に並ぶ複数の画素の画素値の平均値が小さくなる傾向があるからである。
【0051】
<1-3.特徴>
上述の画像解析システム10では、牛400に首輪や加速度センサ等の特別な装備を装着せずとも、牛400の行動量を算出することができる。また、牛400の前方上方から牛400の少なくとも尻を写すように撮影されたフレーム画像において、家畜領域の頂部が目標位置として検出される。これにより、目標位置として、牛400の尾根部を精度よく検出することができる。そして、そのような目標位置(尾根部)の移動量が、牛400の行動量として算出されるため、精度よく牛400の行動量を算出することができる。
【0052】
また、画像解析システム10では、フレーム画像において複数の牛400間の境界が推定され、そのような境界の情報も利用して、牛400ごとの目標位置がトラッキングされる。従って、牛400ごとに精度よく行動量を算出することができる。
【0053】
また、画像解析システム10では、牛400は、繋ぎ飼い状態にあり、上半身の動きが制限されるものの、下半身の動きが比較的自由である。また、画像解析システム10では、そのように比較的動きの制限されない、牛400の尾根部に対応する目標位置の移動量に基づいて、牛400の行動量が算出される。従って、このような牛400の行動量に基づいて、分娩兆候等の牛400の状態を適切に判断することができる。
【0054】
また、画像解析システム10では、牛400の尾根部に対応する目標位置が、フレーム画像の縦方向に沿って下限値よりも低い位置にある場合、そのような目標位置の移動量は、牛400の行動量の算出に反映されない。よって、主に立位の牛400の行動量を計測し、座位の牛400の行動量を無視することができる。その結果、分娩兆候等の牛400の状態を適切に判断することができる。
【0055】
また、ステップS100に関し、各列R1の画素値と相関を有する横プロファイルP1は、各列R1に占める牛400の領域の大きさと相関を有する。画像解析システム10では、そのような横プロファイルP1に基づいて牛400間の境界が推定されるため、牛400間の境界を精度よく推定することができる。
【0056】
[2.実施の形態2]
図8は、本実施の形態2に従う画像解析システム10Aの構成を模式的に示す図である。図1図8とを比較すれば分かる通り、上記実施の形態1では、サーモグラフィーカメラ100が牛400の前方上方に設置されたが、本実施の形態2では、サーモグラフィーカメラ100Aが牛400の後方に設置される。また、両実施の形態では、このような撮影条件の相違に伴って、サーモグラフィーカメラ100,100Aによる撮影画像の処理方法も異なる。以下においては、主に実施の形態1と異なる点について説明する。
【0057】
<2-1.構成>
図8に示す通り、本実施の形態2に従う画像解析システム10Aも、実施の形態1と同様、サーバ200を含んでいる。サーバ200のハードウェア構成は、実施の形態1と同様である。
【0058】
本実施の形態2のサーモグラフィーカメラ100Aと、実施の形態1のサーモグラフィーカメラ100とは、その設置場所のみが異なり、ハードウェア構成は同じである。サーモグラフィーカメラ100Aも、繋ぎ飼い状態で飼育される複数の牛400を収容する牛房300内に設置される。また、本実施の形態2でも、各牛400は、その頭部がロープ等を介して固定され、上半身の動きが制限されるが、下半身の動きは比較的自由な状態にある。サーモグラフィーカメラ100Aは、本実施の形態2では、牛400の後方(つまり、尻側)に設置され、牛400を後方から動画撮影する。なお、ここでいう後方は、真後ろだけを意味するのではなく、後方上方や後方下方等を含み得る。サーモグラフィーカメラ100Aは、牛400の少なくとも尻を写す角度で撮影を行う。図9は、このような角度で撮影された画像の一例である。本実施の形態2でも、サーモグラフィーカメラ100Aは、複数の牛400の並び方向と撮影画像の横方向とが対応するような角度に設置される。従って、複数の牛400の複数の尻が横方向に並んだ動画が撮影される。また、サーモグラフィーカメラ100Aも、ネットワークN1に接続されており、サーモグラフィーカメラ100Aによって生成された画像データは、ネットワークN1を通じてサーバ200へ送信される。
【0059】
<2-2.動作>
以下、図10を参照しつつ、本実施の形態2に従う画像解析システム10Aの動作について説明する。図10は、本実施の形態2に従う牛400の行動量を算出する処理の流れを示すフローチャートである。図10の処理も、実施の形態1と同様に、サーモグラフィーカメラ100Aから順次取得されるフレーム画像の各々に対し、サーバ200の制御部210によって繰り返し実行される。また、このようにして順次処理されるフレーム画像も、図10の処理と並列して、又はユーザにより指定される任意のタイミングで、入出力I/F240、又はサーバ200に接続されるユーザ端末に順次表示されもよい。
【0060】
図4図10とを比較すれば分かる通り、実施の形態1と2における牛400の行動量を算出する処理の流れは、ステップS110及びS120がステップS220に、ステップS125がステップS225に置き換わる点以外においては、同様である。従って、以下では、主にステップS220及びS225について詳述し、実施の形態1と共通する他のステップについては説明を適宜省略する。
【0061】
まず、実施の形態1と同様のステップS100が実行される。すなわち、制御部210は、フレーム画像において複数の牛400間の境界を推定する。具体的には、フレーム画像を個々の牛400がそれぞれ存在する複数の領域に分割するための境界線が引かれる。図9のフレーム画像IM1には、7頭の牛C1~C7が撮影されており、ここで引かれる境界線L1~L6が点線で示されている。
【0062】
続くステップS220では、制御部210は、フレーム画像において牛400の目標位置を検出する。目標位置は、牛400ごとに検出される。ステップS220は、牛400の目標位置を検出する点では、実施の形態1のステップS110及びS120と同様であるが、検出のアルゴリズムが異なる。具体的には、本実施の形態2では、目標位置として、所定の基準よりも高温の領域、すなわち所定の基準よりも明るい領域が検出される。例えば、制御部210は、所定の閾値よりも大きい輝度値を有する(すなわち、所定の基準よりも明るい)一定以上の大きさの領域を検出する。なお、この領域が1画素以上を含む場合には、平均的な輝度値が所定の閾値よりも大きい連続した領域が検出される。そして、検出された領域を代表する座標(例えば、検出された領域の中心の座標等)を、目標位置の座標として特定することができる。所定の閾値は、予め設定されていてもよいし、フレーム画像に基づいて(すなわち、背景の明るさに対して相対的に)設定されてもよい。図9では、ここで検出される目標位置に、参照符号O1~O7が付されている。同図から理解される通り、所定の基準よりも温度が高い領域として検出される目標位置は、サーモグラフィーカメラ100Aの上述した撮影条件の下では、牛400の尻付近の部位に対応する。牛400は、普段より、尻付近の部位が他の部位よりも高温になる傾向にあるからである。なお、ここで検出される目標位置は、入出力I/F240又はユーザ端末に表示されるフレーム画像上に、マークを重畳する等して表示されてもよいし、されなくてもよい。
【0063】
続くステップS225では、実施の形態1のステップS125と同様に、制御部210は、ステップS100で推定された牛400間の境界の情報に基づいて、ステップS220で検出された目標位置を検証する。ここで、ステップS220で検出された複数の目標位置も、複数の牛400に1対1で対応するはずである。従って、制御部210は、ステップS220で検出された目標位置と、ステップS100で検出された境界線により分割される領域とを照合する。より具体的には、制御部210は、実施の形態1と同様の所定の検証条件が満たされるか否かを判定する。そして、制御部210は、所定の検証条件が満たされると判定した場合、ステップS220で検出された目標位置を最終的な目標位置として設定する。一方、所定の検証条件が満たされないと判定した場合、ステップS220で検出された目標位置を修正する。
【0064】
目標位置の修正の態様としては、ステップS125と同様の態様が考えられる。ただし、ステップS225において、検出強度を基準として1つの代表目標位置を選択する場合、検出強度は、例えば、ステップS220において目標位置を検出したときの、当該目標位置に対応する高温の領域とその周囲との温度差とすることができる。なお、以上の説明から分かる通り、ステップS220も、仮の目標位置を検出するステップであり、ステップS225も、最終的に設定されるべき目標位置を検出するステップであると言える。
【0065】
ステップS225の後、実施の形態1と同様のステップS130~S160が実行される。なお、牛400の尻付近の部位は、牛400が立位にある場合、フレーム画像内において縦方向に一定以上の高さ位置に存在する可能性が高い。一方、牛400が座位にある場合、牛400の尻付近の部位は、フレーム画像内に写らないか、縦方向に一定以下の高さ位置に存在する可能性が高い。このような傾向は、実施の形態1と2とで共通する。従って、本実施の形態2でも、実施の形態1と同様のステップS130により、フレーム画像内の牛400が立位にあるか、座位にあるかを判定することができる。また、実施の形態2でも、ステップS130において使用される目標位置の下限値は、実施の形態1と同様に設定され得る。
【0066】
<2-3.特徴>
上述の画像解析システム10Aでは、牛400に首輪や加速度センサ等の特別な装備を装着せずとも、牛400の行動量を算出することができる。また、牛400の後方から牛400の少なくとも尻を写すように撮影されたフレーム画像において、所定の基準よりも高温の領域が目標位置として検出される。これにより、目標位置として、牛400の尻付近の部位を精度よく検出することができる。そして、そのような目標位置(尻付近の部位)の移動量が、牛400の行動量として算出されるため、精度よく牛400の行動量を算出することができる。
【0067】
また、画像解析システム10Aでは、牛400は、繋ぎ飼い状態にある。また、それにより比較的動きの制限されない、牛400の尻付近の部位に対応する目標位置の移動量に基づいて、牛400の行動量が算出される。従って、このような牛400の行動量に基づいて、分娩兆候等の牛400の状態を適切に判断することができる。
【0068】
また、画像解析システム10Aでは、牛400の尻付近の部位に対応する目標位置が、フレーム画像の縦方向に沿って下限値よりも低い位置にある場合、そのような目標位置の移動量は、牛400の行動量の算出に反映されない。よって、主に立位の牛400の行動量を計測し、座位の牛400の行動量を無視することができる。その結果、分娩兆候等の牛400の状態を適切に判断することができる。
【0069】
[3.他の実施の形態]
上記実施の形態の思想は、以上で説明された実施の形態に限定されない。以下、上記実施の形態の思想を適用できる他の実施の形態の一例について説明する。
【0070】
<3-1>
上記の説明においては、家畜の一例として牛400が挙げられた。しかしながら、上述の技術は、牛400以外の家畜、例えば豚や鶏等の家畜にも適用可能である。
【0071】
<3-2>
上記実施の形態1においては、カメラの一例としてサーモグラフィーカメラ100が用いられた。しかしながら、サーモグラフィーカメラ100の代わりに可視カメラ(可視光カメラ)が用いられてもよい。この場合であっても、例えば、牛400が黒毛牛である場合、フレーム画像上で牛400とその背景を区別することができるため、ステップS110で家畜領域を抽出することができる。また、フレーム画像の階調反転を行う、あるいは横プロファイルの山部分が境界であると判定する等すれば、ステップS100の牛400間の境界の推定も可能である。従って、可視カメラを用いた場合にも、実施の形態1と同様の処理により、牛400の行動量を算出することができる。
【0072】
<3-3>
上記の説明においては、複数の牛400を写す角度で撮影が行われたが、1頭の牛400のみを撮影してもよい。この場合、図4及び図10の動作において、ステップS100,S125,S225を省略し、その他のステップをその1頭の牛400に対し同様に実行することができる。
【0073】
<3-4>
上記実施の形態1,2においては、横プロファイルP1は、複数の列R1の各々における縦方向の画素値の平均値の波形(集合)として算出された。しかしながら、例えば、複数の列R1の各々における縦方向の画素値の合計値の波形(集合)を、横プロファイルP1としてもよい。要するに、横プロファイルP1は、フレーム画像において横方向に並ぶ複数の列の各々における画素値と相関を有していればよい。
【0074】
<3-5>
上記実施の形態1,2においては、横プロファイルP1を生成するに当たり、各列R1がフレーム画像IM1の横方向に対して垂直に延びる列とされた。しかしながら、図11に示すように、列R1は、フレーム画像IM1の横方向に対して垂直に延びる列に対して傾斜した列を含んでいてもよい。図11の例では、フレーム画像IM1の横方向の中央に位置する列R1Xは、フレーム画像IM1の横方向に対して垂直に延びている。一方、列R1X以外の列R1は、列R1Xに対して傾斜している。また、フレーム画像IM1の横方向の中央部分から横方向に遠ざかる程、列R1の傾きは大きくなっている。このように、各列R1を、中央の列R1Xの延長線上に存在する消失点を通る線のように定義してもよい。
【0075】
一般に、撮影画像においては、カメラから近い部分が広く映り、カメラから遠い部分が狭く映るため、像に歪みが生じる。この点、以上のように列R1を定義することにより、横プロファイルP1から、牛400の像の歪みの影響をキャンセルすることができる。すなわち、横プロファイルP1を、各列R1に占める牛400の領域の大きさとより相関の強いパラメータとして定義することができる。
【0076】
<3-6>
上記実施の形態1,2においては、横プロファイルP1に基づいて牛400間の境界が推定された。しかしながら、横プロファイルP1以外の指標に基づいて、牛400間の境界を推定することもできる。例えば、以下のような上側輪郭線P2又は下側輪郭線P3に基づいて、牛400間の境界を推定することもできる。図12は、図3のフレーム画像IM1の一部を抽出した画像に、横プロファイルP1、上側輪郭線P2及び下側輪郭線P3を重畳した画像を示す。上側輪郭線P2は、ステップS120に関連して説明した上側輪郭線と同様に定義してもよい。一方、下側輪郭線P3は、牛400のシルエットを示す家畜領域の輪郭線の下側部分と定義してもよい。従って、下側輪郭線P3は、例えば、以下のように特定することができる。まず、フレーム画像の横方向に並ぶ、フレーム画像を構成する複数の列(縦長の領域)の各列において、家畜領域と重複する領域の最下部(フレーム画像の縦方向に沿って最も低い位置)の画素を検出する。そして、このような最下部の画素を、フレーム画像の横方向に沿って連結することにより描かれる線を、下側輪郭線P3とすることができる。このような上側輪郭線P2及び下側輪郭線P3は、横プロファイルP1と同様に、撮影画像における各牛400の位置、ひいては各列R1に占める牛400の領域の大きさと相関を有し得る。そして、図12から分かるように、上側輪郭線P2の谷部分も、下側輪郭線P3の山部分も、牛400間の境界の位置を表し得る。従って、上側輪郭線P2の谷部分を検出する、又は下側輪郭線P3の山部分を検出することにより、境界の位置を推定してもよい。なお、上側輪郭線P2の谷部分と下側輪郭線P3の山部分とを連結する傾斜した直線を、牛400間の境界線とすることもできる。
【0077】
また、複数種類の指標(上述した横プロファイルP1、上側輪郭線P2、下側輪郭線P3等)に基づいて、牛400間の境界を推定することもできる。この場合、例えば、ある指標に基づいて境界線を引き、別の指標に基づいてその位置を補正する等することにより、境界の位置の推定の精度を高めることができる。
【0078】
<3-7>
上記実施の形態1,2においては、ステップS120,S220で検出された目標位置を修正しない条件として、検証条件(i)又は(ii)を例示した。しかしながら、(i)が満たされず又は(ii)が満たされず、かつ、ステップS120,S220で目標位置を検出したときの検出強度が低い場合に、ステップS120,S220で検出された目標位置を修正するようにしてもよい。
【0079】
<3-8>
上記実施の形態1,2におけるステップS125,S225では、境界線で分割されるある領域内に目標位置が1つも存在しない場合、検出条件を変更して新たに目標位置が検出された。しかしながら、ここで新たな目標位置を検出せず、続くステップS130で、その領域の牛400は座位にあると判定してもよい。
【0080】
<3-9>
上記実施の形態1,2におけるステップS125,S225では、所定の検証条件が満たされない場合に、目標位置が修正された。しかし、これに代えて又は加えて、制御部210は、所定の検証条件が満たされる場合に、信頼性の高い計算ができている判定し、満たされない場合には、信頼性に問題があると判定するようにしてもよい。そして、この信頼性の判定結果は、ステップS160において、ユーザへ通知してもよい。この場合、ユーザは、牛400に分娩兆候が現れている等の牛400の状態を知るとともに、その状態の確度を知ることができる。
【0081】
以上、本発明の実施の形態について例示的に説明した。すなわち、例示的な説明のために、詳細な説明及び添付の図面が開示された。よって、詳細な説明及び添付の図面に記載された構成要素の中には、課題解決のために必須でない構成要素が含まれることがある。したがって、それらの必須でない構成要素が詳細な説明及び添付の図面に記載されているからといって、それらの必須でない構成要素が必須であると直ちに認定されるべきではない。
【0082】
また、上記実施の形態は、あらゆる点において本発明の例示にすぎない。上記実施の形態は、本発明の範囲内において、種々の改良や変更が可能である。すなわち、本発明の実施にあたっては、実施の形態に応じて具体的構成を適宜採用することができる。
【符号の説明】
【0083】
10,10A 画像解析システム、100,100A サーモグラフィーカメラ、200 サーバ、210 制御部、211 CPU、212 RAM、213 ROM、220 記憶部、221 制御プログラム、230 通信モジュール、240 入出力I/F、300 牛房、400 牛、IM1 フレーム画像、C1,C2,・・・ 牛、L1,L2,・・・ 境界線、T・・・家畜領域、O1,O2,・・・ 目標位置、N1 ネットワーク、P1 横プロファイル、P2 上側輪郭線、P3 下側輪郭線、R1 列(R1X 中央の列)、B1,B2,・・・ 領域、V1,V2,・・・ 谷部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12