JP2006512095A - 動物の特性を動的に記録および分析するための方法およびシステム - Google Patents

動物の特性を動的に記録および分析するための方法およびシステム Download PDF

Info

Publication number
JP2006512095A
JP2006512095A JP2005510038A JP2005510038A JP2006512095A JP 2006512095 A JP2006512095 A JP 2006512095A JP 2005510038 A JP2005510038 A JP 2005510038A JP 2005510038 A JP2005510038 A JP 2005510038A JP 2006512095 A JP2006512095 A JP 2006512095A
Authority
JP
Japan
Prior art keywords
limb
examined
limbs
time
ground reaction
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.)
Granted
Application number
JP2005510038A
Other languages
English (en)
Other versions
JP4579828B2 (ja
JP2006512095A5 (ja
Inventor
タスチ,ウリ
ラージコンダワール,パリマル・ジィ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Maryland at Baltimore County UMBC
Original Assignee
University of Maryland at Baltimore County UMBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Maryland at Baltimore County UMBC filed Critical University of Maryland at Baltimore County UMBC
Publication of JP2006512095A publication Critical patent/JP2006512095A/ja
Publication of JP2006512095A5 publication Critical patent/JP2006512095A5/ja
Application granted granted Critical
Publication of JP4579828B2 publication Critical patent/JP4579828B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01KANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
    • A01K29/00Other apparatus for animal husbandry
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01LSHOEING OF ANIMALS
    • A01L15/00Apparatus or use of substances for the care of hoofs
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/1036Measuring load distribution, e.g. podologic studies
    • A61B5/1038Measuring plantar pressure during gait
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L5/00Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes
    • G01L5/22Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes for measuring the force applied to control members, e.g. control members of vehicles, triggers
    • G01L5/225Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes for measuring the force applied to control members, e.g. control members of vehicles, triggers to foot actuated controls, e.g. brake pedals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • G06V40/25Recognition of walking or running movements, e.g. gait recognition
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2503/00Evaluating a particular growth phase or type of persons or animals
    • A61B2503/40Animals

Landscapes

  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Environmental Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Zoology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Wood Science & Technology (AREA)
  • Biomedical Technology (AREA)
  • Pathology (AREA)
  • Biophysics (AREA)
  • Dentistry (AREA)
  • Animal Husbandry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Psychiatry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するために、コンピュータ読取可能な媒体に記憶された命令セットおよび方法を提供する。この方法および命令セットは、(a)機器を備え付けた力検知用床部を横切る動物についての位置データおよび地面反力データを含むデータファイルを得るステップと、(b)位置データを、各々が開始時刻および終了時刻を有する複数の時間帯に分割するステップと、(c)該時間帯の各々が、1本の肢または複数の肢のいずれについての位置データおよび地面反力データを示しているかを判定するステップと、(d)複数の肢の時間帯を複数の別個の1本の肢の時間帯に個別化するステップと、(e)各時間帯内の各肢を、前肢または後肢、および左肢または右肢として識別するステップと、(f)識別した前肢および後肢の各々を、動物のそれぞれ1頭に関連付けるステップとを含む。

Description

関連出願
この出願は、2003年5月29日に出願された米国仮出願第60/473,886号と、2002年12月23日に出願された米国仮出願第60/435,320号との優先権を主張する。
この出願は一般に、この明細書において引用により援用される米国特許出願連続番号第09/827,311号に関連するが、その優先権は主張しない。
背景情報
この開示は、動物の特性を動的に記録および分析するための新規の方法およびシステムに関し、動物の特性には、以下のものに限定されないが、直接的にまたは導出により測定データから、およびその分析から得られる動物の重量または動物の生体力学的もしくは生物測定学的データ(たとえば、1つ以上の活動(直立、歩行、トロット等)中における肢の偏位、速度、加速度および/または力)が含まれる。動的な記録および分析により、動物、特に、以下のものに限定されないが、乳用牛、非乳用牛、豚、および羊等の家畜を含む四足動物について問題となる特性を求めることができる。
米国において酪農は重要な産業であり、全世界の多数の国では農業の主部門となっている。牛の、蹄および下肢の疾患により生じる跛行は、酪農家にとって費用のかさむ問題である。跛行により、医療の必要性、牛乳生産量の低下、結果として体調の低下、および繁殖性能の低下を生じ、動物の社会的状況に悪影響を及ぼす。跛行は、乳用家畜にとって、乳腺炎および低受胎に続き、経済的な観点から最も費用のかさむ問題の第3位であることが報告されている。跛行にかかる平均的な費用は、1件につき412ドルであると報告されており、米国国内における年間発生率は15%である。したがって、跛行による年間の経済損失は、米国の900万頭を超える牛に対して5億7千万ドルを上回る。これらの損失は、酪農に著しく損害を与え、牛産業全体に著しい悪影響を及ぼす。したがって、乳用家畜における跛行は、全世界の酪農産業にとって決定的な経済的要素であり、かつ、動物福祉上の極めて重要な問題である。
栄養状態、細菌性および真菌性感染症、細菌内毒素、環境状態、住居、床面、給餌の管理、ならびに牛の行動を含む病因論的要因が、跛行の一因である。この発明およびその他の発明により、米国特許出願連続番号第09/827,311号「重量および歩様を分析するための方法および装置(Method and Device for Analyzing Weight and Walking Gait)」に開示され、現在、ウィスコンシン州マディソン(Madison)のボーマチック社(Bou-Matic, LLC)が販売する有望な反力検出(Reaction Force Detection(RFD))が開発されるまで、蹄および下肢の疾患の早期検出は、大部分が、重篤な段階または後期の跛行を農業従事者が目視観測することによるものであった。このような後期になってからでは、効果の得られる介入であっても、対処により多くの費用がかかり、牛またはその他の家畜を速やかに日常生活に戻すことは不可能であるため、農業従事者には費用が倍増する。したがって、当該技術では、蹄および下肢の問題の早期検出を可能にし、かつ、獣医師による迅速な医療介助により経済的損失を減らし、動物が受ける苦痛を減らし、動物の回復過程を速めることのできる方法および装置が必要とされる。また、乳用家畜における跛行の発生率を下げるように設計された管理プログラムの科学的検査を可能にする早期検出システムもまた必要とされる。
しかしながら、上述の反力検出(RFD)、および米国特許出願(連続番号第09/827,311号)「重量および歩様を分析するための方法および装置」における関連の開示により著しい進歩が得られたにもかかわらず、以下のものに限定されないがたとえば、直接的にまたは導出により測定データから得られる肢の偏位、速度、加速度および/または力(生体力学的データ等)を含む動物の特性の抽出、ならびにその分析には、依然として改良が必要とされる。
体重は、酪農産業にとって効果的な管理パラメータとなる、もう1つの動物の特徴であり(マルツ(Maltz)他、1997年)、中規模および大規模農場では通り抜け式の計量装置(パイパー(Peiper)他、1993年)の使用が増えている。定置された計量装置を乳用家畜が歩いて通過する際に、家畜を操作して個別化し、一頭毎の動物の重量が記録されるようにしなければならない。牛は家畜型の動物であるため、この個別化は、操作上の課題を提起する。この課題は、市販されていることにより入手可能な2つの解決策、すなわち、(i)空気圧で作動する入口および出口ゲート、ならびに(ii)イスラエル(Israel)のS.A.E.アフィキム(Afikim)(www.afimilk.co.il等を参照)により製造されたもの等の、動物自体が作動させる受動型S字ゲートにより、現在対処されている。
しかしながら、計量システムおよびRFDシステムがいずれも、動物を個別化するための手段を使用することから、動物の通行の流れを中断して減速させ、動物の管理者に対してさらなる作業を課す。したがって、重量または力の検出等のために、現行のシステムが現在行なうほど動物の通行の流れを妨げずに動物を個別化することのできる手段が必要とされる。
開示の概要
この開示は、以下のものに限定されないが、直接的または導出により測定データから、およびその分析から得られた動物の重量または動物の生体力学的もしくは生物測定学的データ(1つ以上の活動(直立、歩行、トロット等)中における肢の偏位、速度、加速度および/または力)を含む動物の特性の動的な記録および分析を行なうための新規の方法およびシステムに関する。
一局面において、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するために、方法およびコンピュータ読取可能な命令セットが提供される。この局面において、この方法および命令セットは、(a)機器を備え付けた力検知用床部を横切る動物についての位置データおよび地面反力データを含むデータファイルを得るステップと、(b)位置データを、各々が開始時刻および終了時刻を有する複数の時間帯に分割するステップと、(c)該時間帯の各々が、1本の肢または複数の肢のいずれについての位置データまたは地面反力データを示しているかを判定するステップと、(d)帰納法等により、複数の肢の時間帯を複数の別個の1本の肢の時間帯に個別化するステップと、(e)各時間帯内の各肢を、前肢または後肢、および左肢または右肢として識別するステップと、(f)識別した前肢および後肢の各々を、動物のそれぞれ1頭に関連付けるステップとを含む。
これに従い、動物の通行の流れを物理的に妨げるのではなくソフトウェアを介して動物を個別化することのできるコンピュータベースの手段が、この明細書で提示される。一局面において、個別化は帰納法により実施される。すなわち、一度に1頭の牛がn頭の牛からなる群から分離されて、1頭の牛と、結果的に得られる新規の群内の(n-1)頭の牛とが得られる。これは、j回繰返される反復プロセスであり、そのたびごとに1頭の牛と(n-j)頭の牛からなる群とが得られる。このプロセスは、(n-j)=1まで繰返される。帰納法によ
る個別化により、検出プレートシステムまたは検出現場を一斉に横切って進み得るどのような数の牛をも分離することができ、この分離は、ハードウェアの制約(すなわちメモリおよびCPUの制約)によってのみ制約を受ける。
開示されたこの個別化技術により、たとえばRFDを一斉に通行するn頭の牛の一群に関する肢の動作の変数(LMV)は、N個のファイルに記録される。これらのファイルの各々は、1頭の動物のLMVを含む。開示されたこの個別化技術は、従来の物理的な個別化技術とは異なって障壁を用いない。この障壁は、測定領域を一度に1頭の動物にのみ制限して、所定の牛(nx)のデータが、このような牛に対応するデータファイルに直接割当てられるようにする。その代わりに、開示されたこの個別化技術は、ソフトウェアベースの演算に依存して、n頭の動物のうちの1頭以上が測定領域内に同時に存在しているか否かを判定し、データファイル(この例では、動物の数nよりも少ない数のデータファイルを含むファイルのサブセット)のうちの1つに存在するLMVを、測定領域内に同時に存在する検出動物(nx, ny等)に対応する多数の別個のファイルに抽出する。
この発明のさらに別の利点および他の特徴の或る部分は以下の説明に明示され、或る部分は、当業者が以下の説明を吟味することにより明らかになるか、またはこの発明を実施することにより認識され得る。この発明の利点は、前掲の請求項に具体的に指摘されるように実現かつ獲得され得る。
詳細な説明
この発明の概念に従った使用に有利にも適合される反力装置(Reaction Force Device)(RFD)100が、図1(a)〜図1(c)に示される。このRFDは、動物の歩様に関する重量および力を含む変数を測定するように構成される。以下に論じるように、および、この明細書においてその全体が引用により援用される、テイシュ(Tasch)他への上述の米国特許出願連続番号第09/827,311号「重量および歩様を分析するための方法および装置」に論じられるように、動物がRFDシステムを通過して、機器を備え付けたプレート上に踏み出すと、動物の肢の反力、重量、肢の反力の左右対称性、および他の要素を求めることができる。
複数の動物の移動を容易にするために、ここに開示する概念では、動物の移動に対する妨害(物理的な個別化等)は有利にも行なわれない。側壁(115等)が動物の横方向の動きを制約し、それによって動物にプレートおよび間仕切り125上を歩かせ、高さに応じて左脚を左プレート130上に、右脚を右プレート120上に置くように促すか、または強制する。このことは、ここに開示する概念と組合せて用いられる装置にとって、より有利である。
一局面において、RFDの床部は、図1(a)〜図1(c)に示すように、平行な左右の部分またはプレート130および120を含み得、これらのプレートは任意に、左プレートと右プレートとの間の位置から上方に突出する間仕切りまたは仕切り125により隔てられる。構成により、動物がRFDを1回通過する間に動物の肢の4本すべてについて地面反力(GRF)を測定することができる限り、プレートのサイズおよび数を変化させてよい。
図1(c)の例に示すように、各プレート130および120は、それぞれのプレート130および120の4つの角部に隣接して配置された4つのロードセル150のアレイにより支持されている。RFDは、プレート130および120の上、下、または隣接してさまざまな位置および配列で配置された、それよりも多くのまたはそれよりも少ないロードセル150を含んでよい。ロードセル150は、動物が各プレート上に踏み出すのに
伴って生じるGRFを測定する。RFDシステム100は、これらのGRFを測定し、それぞれの床部のプレート130および120上に加えられた重量の位置を計算する。図1(c)に示すように、プレート130および120の各々は、(XL, YL)および(XR, YR)により規定される別個の座標系を含む。ここで、(XL,R, YL,R)=(0 cm, 0 cm)は、プレート130および120の各々の最も内側の角部に任意に位置付けられる。使用する軸の好ましい配向において、Xは、プレートの外側に向かう方向が正であり、Yは、プレートの後ろまたは後部の方向が正であり、Zは、上方向が正である。
したがって、プレート130および120に印加される力の位置は、図1(a)〜図1(c)に示す左右の座標系(XL, YLおよびXR, YR)により規定される。1本の肢(すなわち蹄または脚)がプレート130および120上にあるとき、RFDシステム100は、その肢の位置を計算する。2本以上の脚が床部のプレート130および120に接触しているとき、RFDシステム100は、以下に論じるように、等価の力または結果的に得られる力の位置を計算する。牛を含む適用例に関し、上述の米国特許出願連続番号第09/827,311号「重量および歩様を分析するための方法および装置」のテイシュ他は、GRFが実質的に垂直方向のものであり、これらの垂直方向のGRFの差に基づいて、跛行または跛行の発症によるGRFの変動の測定が可能になることを明らかにした。
ロードセル150の出力は、たとえば以下のものに限定されないが、外部の8チャネル歪みゲージモジュール(アイオテック社(Iotech)のDBK43A等)から信号を受信するA/Dボード(アイオテック社のDaqBookモデル200等)などの従来の任意のデータ収集装置に出力され、このデータ収集装置により分析され得る。これらの8つのチャネルは読出され、必要であれば処理され(たとえば増幅され)、サンプリングされたデータは、従来の形態の従来のコンピュータ読取可能な記憶装置に記憶される。サンプリングおよび/または記憶されたデータは、任意に、通信インターフェイスまたはネットワークリンクを介して、たとえばこれらのものに限定されないが、遠隔のコンピュータ、遠隔の記憶装置のローカルネットワーク、ホスト、ISP、またはサーバ等の外部のシステムに出力され得る。サンプリングレートは自由に変化させることができるが、当業者に公知であるように、ナイキスト(Nyquist)速度よりも高い速度に維持されるべきである。
耳のタグまたは首輪に組込まれたもの等の、動物に取付けられたトランスポンダ装置(無線周波識別装置(RFID)等)を用いて、動物の速度を計算することができる。当業者に公知であるように、トランスポンダは、トランスポンダから何らかのデータ、たとえば識別コードもしくは測定値を返すか、または実質的に時間遅延のない状態で質問器から受信した信号の本来の特性を返すことにより、質問器から受信した問合せ要求に応答することでその機能を果たし、それにより、飛行時間に基づいた測距を可能にする。たとえば、ベースユニットまたは質問器は、指定された周波数(22Hz等)でエネルギパルス(高強度赤外線パルス等)を問合せ要求として放射することができ、これによりトランスポンダは、データを運ぶ搬送波(超音波パルス等)をベースユニットに放射して返す。ベースユニットは次に、公知の態様で出力パルス(赤外線パルス等)の放射と入来パルス(超音波パルス等)の到着との時間差を測定することができる。基準フレームを規定するための複数のベース(定置センサ)および全地球位置測定システムを含むより高度なシステムもまた、有利にも使用することができる。
便宜上、ここに開示する、動物の特性を動的に記録および分析するための方法およびシステムは、この明細書において、略記「Softseparator」の使用と称される、このような概念の一局面を特に強調して説明する。「Softseparator」は、さらなる処理のために動物のデータを個別化するように適合された、コンピュータ実行可能なコードまたは命令セットを表わす。
一局面において、Softseparatorは、RFDシステムが生成した2つの入力データファイル、すなわち、識別ファイル(YYMMDDxxx.ID)およびアナログファイル(YYMMDDxxx.ANA)を用いる。YYMMDDxxx.IDファイルは、データが記録された時刻と、日付および稼動中のファイル番号(xxx)と、牛のトランスポンダの番号と、対応する牛の番号とを記録する(表1参照)。繰返される稼動中のファイル数(YYMMDDxxx)を数えることにより、各ファイル内の牛の記録数(n)を得ることができる。図2(表1)に挙げるサンプルについて、ファイル020527020は、2頭の牛199および1027(n=2)の記録を含み、ファイル020527021は、4頭の牛961、217、980、および1026(n=4)の記録を含み、ファイル020527022は、3頭の牛991、213、および885(n=3)の記録を含む。各アナログファイルの記録数(n)が一旦求められると、Softseparatorは、帰納法により、対応するYYMMDDxxx.ANAファイルをn個のアナログファイルに変換する。変換されたファイルの各々は、以下の章で論じるように、1頭の動物のLMVを含む。
YYMMDDxxx.ANAに記録されたLMVに基づき、米国特許出願連続番号第09/827,311号「重量および歩様を分析するための方法および装置」のテイシュ他において論じられた手順に従い、Yの位置、地面反力(GRF)、および体重のプロットが生成される。図3は、ファイル020527020.ANAに記録されたデータに関して生成されたプロットを示す。TimeZones関数により、各蹄/床部の接触の開始時刻(TStart)および終了時刻(TEnd)が求められる。図4は、右プレートの蹄/床部の接触に関して記録されたTimeZones1、2、および3を示す(図3参照)。これらの3つのTimeZonesの開始時刻および終了時刻はそれぞれ、TSTART=1.81(TimeZone_1)、2.85(TimeZone_2)、および4.76(TimeZone_3)と、TEND=2.74(TimeZone_1)、4.65(TimeZone_2)、および7.57(TimeZone_3)とである。
個々のTimeZonesを識別した後に、LimbZoneStatistics関数が呼出され、図5(表2)に規定される13個の統計学的パラメータが各LimbZoneに関して評価される。列挙したパラメータから明らかなように、7個のパラメータがYの位置の統計値を評価し、5個のパラメータがGRFの統計値を評価する。これらの12個の(Yの位置およびGRFの)パラメータに基づき、Softseparatorは、各別個のLimbZoneにおける肢の数(J_Limb)を求める。図4に示す3つのLimbZonesの統計学的パラメータを図6(表3)に挙げる。TimeZone_1は1本の肢を反映し、TimeZone_2およびTimeZone_3は2本および3本の肢をそれぞれ反映する。
成体の乳用牛に関し、現行の寸法のRFDは、1列に歩く2頭の牛に満たない長さに対応する。このことは、左または右のRFDの床部に同時に接触する肢の最大数を3に制限する。したがって、任意の所定のLimbZoneにおける1、2、および3本の肢の接触に対応することにより、考え得る限りの妥当な、交差しないすべての歩行に対処することができる。交差する歩行は現時点で考慮されない。しかしながら、この明細書に開示する原理をこの開示に従って適宜拡大縮小および/または変更して、1列に歩く3頭以上の牛または他の動物を許容する寸法を有するRFDに対応することができる。
任意の所定のLimbZone(J_Limb)において床部に接触する肢の数は、以下の事例の1つが選択されることを規定する。
事例1:J_Limb=1である場合、SoftSeparator(登録商標)は、LimbSequence関数を呼出し、所定のLimbZoneが1本の前肢(F)または後肢(H)のいずれに関連しているかを判定する。
事例2:J_Limb=2である場合、SoftSeparator(登録商標)は、TwoLimbSeparation関数を呼出し、このLimbZoneは2つの分離された1本の肢の領域に分割される。次に、LimbSe
quence関数を用いて、分離した肢の領域を前肢(F)または後肢(H)のいずれかに関連付ける。
事例3:J_Limb=3である場合、ThreeLimbSeparation関数を作動させ、このLimbZoneを3つの1本の肢の領域に分離する。この後、前肢および後肢をそれぞれFおよびHと指定するLimbSequence呼出が続く。
図6(表3)において、TimeZone_1は、1本の肢の領域であると識別され、LimbSequence関数は、それを前肢(F)と指定する。第2のTimeZoneは2本の肢の領域(J_Limb=2)であるため、TwoLimbSeparation関数は、それを2つの1本の肢の領域に変換する(図7(c)参照)。図7(a)〜(c)は、分離前のTimeZone_2(図4参照)のYの位置およびGRFのプロットが、参照番号(a)および(b)によりそれぞれ表わされていることを示す。TwoLimbSeparation関数は、2本の肢の領域を2つの1本の肢の領域に分離する。別個の領域についてのGRFのプロットを図7(c)に示す。2つの分離された時間帯(TimeZone_21およびTimeZone_22)のLimbZoneStatisticsが評価され、LimbSequence関数は、TimeZone_21およびTimeZone_22において床部に接触する肢がそれぞれ、後肢(H)および前肢(F)であると判定する(図8(表4)参照)。
肢の順序がF、H、およびFであることを識別した後に(図8(表4)参照)、NewCowCheckを作動させて、この肢の順序が1頭の牛または2頭の牛のいずれのものであるかを判定する。動物は逆行して歩かないという前提が存在するため、後肢(H)の後ろに前肢(F)が続く場合、この前肢(F)は、新規の異なる動物のものであると仮定される。
したがって、TimeZone_1および_21は第1の動物(この場合では牛199)のものであり、LimbZones_22および_3は、他の(n-1)頭の牛のものである。この場合n=2であることから、後者の2本の肢は、歩行する第2の牛(牛1027、図8(表4)参照)のものである。
この反復的アルゴリズムを左右両方の床部に適用し、その結果、図3に示すLMVの記録は、2つの個々のファイルに分離され得る。そのYの位置、GRF、および体重を図9(a)および図9(b)に示す。図9(a)および図9(b)がそれぞれ、牛199および1027の2つの分離されたLMVの記録におけるYの位置、GRF、および体重のプロットを示すことに注目されたい。体重のプロットが、分離が成功したことを反映する2本、4本、および2本の肢の重量を反映することに注目されたい。牛の分離が成功したことにより、図9(a)および図9(b)に示すように、2本の(前)肢、4本の(前および後)肢、および2本の(後)肢の計量の順序を反映する体重のプロットが生じる。
所定のLimbZoneのJ_Limbが3である場合、ThreeLimbSeparation関数を作動させ、図10(c)に示すように、LMVの記録を3つの1本の肢の領域に分離する。TwoLimbSeparationの手順と同様に、この場合のSoftSeparatorは、肢の領域の統計値を計算し、肢の順序を求め、新規の牛の記録を識別する。
さらに、上述の内容に加え、SoftSeparatorを3頭および4頭の牛からなる2つの群に適用した。3頭の牛の群の記録およびそれを個々のファイルに分離したものを図11(a)〜図11(d)に示す。4頭の牛の群の記録を図12(a)〜図12(e)に示す。これらの3頭の牛および4頭の牛の群における体重のプロットは、2本、4本、および2本の肢の重量を反映し、動物の分離が成功したことを示す。
したがって、SoftSeparatorは、いくつかの群となって反力検出システムを通行する動物のLMVの記録を、個々の動物の複数の記録に分離する。このようなアルゴリズムまたは実行可能な符号化により、動物の通行の速度を遅らせるゲートまたは他の物理的な障壁
が必要ではなくなる。上述の例示的な事例研究は、SoftSeparatorが2、3、および4頭の牛からなる群に対して作動することと、帰納法により、この明細書における概念を拡張して、どのような大きさの動物の群にも対応できることとを示す。
一局面において、このシステムは、時間に対してYの位置、GRF、および体重をプロットする。体重のプロットは、動物の記録の分離が成功したことの測定単位として用いられ得る。1頭の分離された動物の体重のプロットは、2本、4本、および2本の肢の重量の順序を反映する。このパターンからの逸脱はいずれも、2頭以上の動物のLMVの記録、または換言すると、動物の分離が成功しなかったことに関連する。
以下の開示内容では、MATLAB(登録商標)を前提とした例示的な符号化およびコマンドの特定の要素を広範囲に参照する。MATLAB(登録商標)は、効率のよいデータの収集および分析、ならびに数学的な計算と視覚化との統合を可能にし、かつ、機器、ファイル、外部のデータベースおよびプログラム(C,C++、Fortran、およびJava(登録商標)で記述された外部ルーチン等)からデータへの高速アクセスおよびデータの導入を可能にする工学用途および科学用途向けの従来の環境である。以下に明示する例ではMATLAB(登録商標)が使用されているが、開示された概念に従い、従来の他の符号化言語もまた、有利にも使用することができる。
図13は、この明細書に開示する概念のSoftseparatorの実施例に従った論理演算(すなわちフローチャート)の非限定的な例である。ファイル名および変数名はいずれも任意であり、当業者に公知の態様で自由に変化させることができる。さらに、さまざまなサブルーチン、呼出、およびシーケンスの実行の順序は、当業者の知識に整合する態様で、この発明の概念に従って種々に変化させることができる。
以下の開示を容易にするために、次に、さまざまなSoftSeparatorのサブルーチンの短い概要を提示する。Softseparatorのメインプログラムまたはサブルーチンは、未処理のデータファイルを開き、他の関数を呼出す。xygrfplot.m関数は、肢の配置のXおよびYの位置と、それに関連する地面反力を計算し、それらを時間の関数としてプロットする。TimeZones_LEFTRRIGHT.m関数は、各時間帯の開始時刻および終了時刻を計算する。LimbZoneStatistics.m関数は、各時間帯についてのさまざまなlimbzoneの統計値を計算する。TwoLimbSeparation.m関数は、所定の時間帯に2本の肢が存在する場合、この2本の肢の領域を、各々が1本の肢を有する2つの領域に分離する。LimbZoneStatisticsfortwolimb.m関数は、2本の肢の領域の分離後に、2つの1本の肢の時間帯に関するさまざまな脚の領域の統計値を計算する。ThreeLimbSeparation.m関数は、1つの時間帯に3本の肢が存在する場合、この3本の肢の領域を、1本の肢からなる3つの領域に分離する。LimbSequence_LEFTRIGHT_Check.m関数は、1本脚の領域を前脚または後脚と指定する。NewCow_LEFTRIGHT_Check.m関数は、このデータが同一の牛または異なる新規の牛のいずれのものであるかを検査する。Cows_separation.m関数は、データベースから新規の牛についての未処理のデータを分離する。
I.メインプログラム
図13に示すメインプログラムでは、_.IDファイルを開き、これらのファイルの各々に存在する牛の数nを導出する。サブルーチンは、たとえばMATLAB(登録商標)のtextreadコマンドを用いて_.IDファイルからデータを読出し、そのデータを、charコマンドを用いて文字フォーマットで記憶する。_.IDファイル内の牛の総数は、D_indexという名の変数に格納される。1で始まりD_indexまで進むループが開始され、各ファイルに記録された牛の数が求められる。この牛の数は、_.ID記録に所定のファイル番号が現われる回数を求めることによって得られる。ファイル番号は、一局面において、_.IDファイルの行における3番目の文字である。各ロードセルファイル内の牛の数は、行列「dc」に書き込まれる
次に、p=1から長さ(dc)までのループが開始される。このループでは、ロードセルの記録(filename.ANA)およびフォトセルのデータ(filename.DIG)が開かれる。動物の識別番号が、datetimeという名の変数に記録されたdate_strおよびtime_strとともに読出される。較正要素もまた読出され(0、傾き、およびupdated_zero)、cal_factorsという名の24項目の行列に加え、caliber.DATという名のファイルに記録される。変数char_raw_dataに書き込まれる文字の総数は、lengthコマンドを用いて計算され、このファイルの長さは、変数last_indexに記録される。ファイルloadcell.datが開かれて、i=29から(last_index-3)までのループが開始される。このループでは、未処理のロードセルのデータの文字フォーマットが、8つの列に書き込まれた数字のフォーマットに変換される。この8つの列のデータファイルはloadcell.datと名付けられ、閉じられる。これらのファイルCalibr.datおよびloadcell.datは、コードを実行する1台のプロセッサまたは複数のプロセッサのRAMにロードされ、ロードセルの未処理のデータ値は、以下の関係を用いる適切な重量単位(lb単位等)に変換される。
LCi=ロードセル*傾き+0 (1)
LCiは、第1列に時間記録(秒単位)を、第2〜第9列にロードセルの値(lb)記録する行列である。
メインプログラムは、関数cows_separationを呼出す。この関数への入力が複数の牛のデータである場合、この関数は、cowseparation変数が1頭の動物のデータしか含まなくなるまで第1の牛を分離することにより、残りの牛のロードセルの未処理の値を別個のcowseparation変数に返す。cowseparationが1頭の動物のデータしか含まなくなると、メインプログラムのループは終了する。
II. TimeZones_LEFTRIGHT
以下の変数、すなわち、Yの位置(LEFTRIGHT_Y)および対応するGRFの値(LEFTRIGHT_GRF)は、関数TimeZones_LEFTRIGHTに渡される。
MATLABのfind関数は、右肢または左肢のいずれかのYの位置が0よりも大きい指数(LR_Y)のベクトルを返す。LR_Yベクトルの最小値および最大値は、識別されてそれぞれLR_tSおよびLR_tEに記憶される。
Yの位置がゼロよりも大きな指数のベクトル間の差が計算されて、diff_LR_Yに記憶される(たとえばLR_Y=find(LEFTRIGHT_Y>0)に関して、LR_tS=min(LR_Y)およびLR_tE=max(LR_Y)。差のベクトルが1よりも大きく、かつ、diff_LRYという名の変数に記憶される(たとえば(diff_LRY=find(diff_LR_Y>1))指数を識別するために、find関数をここでもまた用いる。次にサブルーチンは、1本の肢のみが右側または左側に存在する第1の事例(事例1)と、3本以上の肢が右側または左側に存在する第2の事例(事例2)と、2本の肢が右側または左側に存在する第3の事例(事例3)を含むループを実行する。
事例1に関して、ベクトルdiff_LR_Yの長さがゼロ(たとえば、If(length(diff_LR_Y)==0))である場合、検査されたYの位置は継続される。LR_tSがLRt(1)に記憶され、LR_tEがLRt(2)に記憶される。LRt(x)は、肢の領域内の肢を表わすベクトル変数である。この場合、LRt(1)およびLRt(2)は、左側または右側のいずれかにある1本の肢のみを反映する。
事例2の場合、「elseif」ループが実行される。diff_LRYの長さが1よりも大きい場合、i=0から(length(diff_LRY)-2)までのループが開始される。LRt(1)はLR_tSに等しいと
定義され、LRt(2)は、LR_Yの最小値にdiff_LRY((1)-1)を加えたものに等しい。LRY(1)は、LRYベクトルの最初の数字である。LRt(2*i+3)は、LRt(2*i+2)に(diff_LR_Y(diff_LRY(i+1)を加えたものに等しいと定義される。また、LRt(2*i+4)は、LRt(2*i+3)に(diff_LRY(i+2)-diff_LRY(i+1))-1)を加えたものに等しいと定義され、この時点においてループは終了し、このループの指数iが1だけインクリメントされる(i=i+1)。次に、LRt(2*i+3)は、LRt(2*i+2)にdiff_LR_Y(diff_LRY(i+1))を加えたものに等しいと定義され、LRt(2*i+4)は、LR_tEに等しくなるようセットされる。
事例3に関し、elseループが実行される。LRt(1)がmin(LR_Y)に等しいと定義された場合、LRt(2)は(min(LR_Y)+diff_LRY(1)-1)に等しいと定義され、LRt(3)は(LRt(2)+diff_LR_Y(diff_LRY(1)))に等しいと定義され、LRt(4)はLR_tEに等しいと定義される。
上述のサブルーチンの一例として、2つの肢の領域が存在しかつその中に3本以上の肢が示されている場合、計算は、少なくとも1つの共通解を有する処理を有するループ内にとどまる。この例において、第1の肢の領域は指数5に始まり10で終了し、第2の肢の領域は指数15に始まり20で終了する。LR_Yベクトル(Y>0の場合)は、5 6 7 8 9 10 15 16 17 18 19 20 25 26 27 28 29 30として規定される。このサンプルのベクトルから、LR_tS=5(min(LR_Y))およびLR_tE=30(max(LR_Y))である。Diff_LR_Y、すなわち指数の差(Y>0の場合)は、1 1 1 1 1 5 1 1 1 1 1 5を生じる。次に、Diff_LRY(diff_LR_Y>1の指数)は、6 12を生じる。異なる時間帯に対する時間の割当については、LRt(1)=LR_tSおよびLRt(2)=LR_tS+diff_LRY((1)-1)であり、これは、(5+6-1)すなわち10である。上述のように、LRt(2*i+3)=LRt(2*i+2)+(diff_LR_Y(diff_LRY(i+1)))である。また、LRt(2*i+4)=LRt(2*i+3)+(diff_LRY(i+2)-(diff_LRY(i+1))-1)である。i=0である場合、LRt(3)は、LRt(2)+(diff_LR_Y(diff_LRY(1)))=10+(diff_LR_Y(6))=10+5=15に等しい。LRt(4)=LRt(3)+(diff_LRY(2)-diff_LRY(1))-1)=15+(12-6-1)=20である。ループは、(n-2)個の時間帯にわたって継続する。最後の2つの時間帯には、i=i+1を用いて時間が割当てられ、ここでは、LRt(2*i+3)=LRt(2*i+2)+(diff_LR_Y(diff_LRY(i+1))およびLRt(2*i+4)=LR_tEである。
上述のループが終了した後、別のiiループが開始される。このループに関し、iは0で始まり、length(LRt)/2-1)まで進む。time11はLRt(2*i+1)に等しいと定義され、time22は、LRt(2*i+2)に等しいと定義される。(time22-time11)が10よりも大きい場合、LimbZoneStatisticsが呼出され、結果的に得られる値がLimbZoneStatsに記憶される。LimbZoneStatsは、LimbZoneStatistics(LEFTRIGHT_Y,LEFTRIGHT_GRF,time11,time22)にセットされる。この時点で、ifおよびforループが終了し、limbZoneの開始時刻および終了時刻がTimeZonesLEFTRIGHTに記憶される。
III. Cows_Separation.m サブルーチン
cows_Separationサブルーチンでは、ミリ秒を単位とした時間の値(time_ms)、左右の肢のXおよびY座標(X_LEFT,Y_LEFT,X_RIGHT,およびY_RIGHT)、左右のプレートに関する、Y軸についてのモーメントの値(ADD_LEFT,ADD_RIGHT)、左右のプレートに関する地面反力(GRF)(GRF_LEFT,GRF_RIGHT)、時間に対する重量の関数(WEIGHT)、ならびに記録された重量の最大値(max_weight)が記録される。これらの値はすべて、XYGRFPlotという名の関数により計算され、それらの値は、変数XYGRF_LEFT_RIGHTに記録される。ファイルY_POS.datが開かれ、記憶されたデータが変数Y_POSに読出される。Y_POSは、5個の列を有する行列であり、割当てられた値は以下の通りである。すなわち、(1列目で始まり5列目まで)time_ms、LEFT_Y、LEFT_GRF、RIGHT_Y、およびRIGHT_GRFである。
次に、関数TimeZones_LEFTRIGHTが、LEFT_YおよびLEFT_GRFの値により呼出される。この関数は、左プレートの検査された時間帯の開始時刻および終了時刻(それぞれL_tS、およびL_tEと記す)の値を返す。
LEFTRIGHT_LIMB_STATS.datという名のデータファイルに記録されたデータは、L_Limbsという名の変数としてロードされ記憶される。カウンタを有し、yyという名のループは、1で始まって、左プレート上を通った肢の総数の合計(L_Limbs(12,;)の累積総計(cumsum))まで進む。NewCow_TimeOnLeft>0である場合、yyループは終了する。
次のいくつかの「ifステートメント」は、プログラムがこのコードを通過するのが始めてであるかどうかを確認する。初回の確認は、それ以外の確認とは異なる。プログラムは、検査された時間帯が1本の肢のデータを含む(L_Limbs(12,:)==1)かどうか、およびFHL_Limb==0)を通過するのが始めてであるか否かを確認する。これらの2つの条件が満たされた場合、検査した肢は前肢であり、FHL_Limbは1にセットされる。
検査された時間帯が2本の肢のデータを含み(L_Limb(12,;)==2)、(FHL_Limb==0)を初めて通過する場合、関数TwoLimbSeparationを作動させて、2本の肢のGRFの軌跡(signature)を1本の肢の2つのGRFの軌跡に分解する。これらの軌跡は、L_Limbs変数に書き込まれる。この時点で、関数LimbSequence_LEFTRIGHT_Checkを作動させ、この関数がTRUE(10の値)を返した場合、ループは終了する。そうでない場合、LimbSequence_LEFTRIGHTから返された値が変数LimbSequenceCheckおよびFHL_Limbに記録される。
検査された時間帯が3本の肢のデータを含み(L_limb(12,;)==3)、(FHL_Limb==0)を初めて通過し、Yの位置の最大の傾きの時間が、Yの位置の最小の傾きが生じた時間よりも小さい(L_Limbs(5,;)<L_Limbs(7,;))場合、関数ThreeLimbSeparationCase1を作動させ、3本の肢のGRFの軌跡を1本の肢の3つのGRFの軌跡に分解する。これらの軌跡は、L_Limbs変数に書き込まれる。この時点で関数LimbSequence_LEFTRIGHT_Checkを作動させ、この関数がTRUE(10の値)を返す場合、このループは終了する。そうでない場合、LimbSequence_LEFTRIGHTから返された値は、変数LimbSequenceCheckおよびFHL_Limbに記録される。
検査された時間帯が3本の肢のデータを含み(L_Limb(12,;)==3)、(FHL_Limb==0)を初めて通過し、Yの位置の最大の傾きの時間が、Yの位置の最小の傾きが生じた時間よりも大きい(L_Limbs(5,;)>L_Limbs(7,:))場合、関数ThreeLimbSeparationCase2を作動させ、3本の肢のGRFの軌跡を1本の肢の3つのGRFの軌跡に分解する。これらの軌跡は、L_Limbs変数に書き込まれる。この時点で関数LimbSequence_LEFTRIGHT_Checkを作動させ、この関数がTRUE(10の値)を返す場合、このループは終了する。そうでない場合、LimbSequence_LEFTRIGHTから返された値は、変数LimbSequenceCheckおよびFHL_Limbに記録される。
そうでない場合、LimbSequence_LEFTRIGHT_Checkを作動させ、LimbSequenceCheckの値が検査されてTRUEであることが分かる(LimbSequenceCheck==10)。ここで、検査した領域は、1本の肢のデータのデータを含み(L_Limbs(12,;)==1)、このプログラムを初めて通過するのではない(FHL_Limb is not 0)が実行される。返されたTRUE値(LimbSequenceCheck=10)はループを終了し、そうでない場合、FHL_Limbが更新されてLimbSequenceCheckの値となる。
或る時間帯のデータが2本の肢を含み(L_Limbs(12,;)==2)、コードを初めて通過するのではない場合(FHL_Limb is not 0)、TwoLimbSeparationを作動させ、2本の肢のGRFの軌跡を1本の肢の2つの軌跡として分解する(L_Limbs=Two_Limb_Separation)。
検査された時間帯が3本の肢のデータを含み(L_Limb(12,;)==3)、Yの位置の最大の傾きの時間が、Yの位置の最小の傾きが生じた時間よりも小さい(L_Limbs(5,;)<L_Limb
s(7,;))場合、ThreeLimbSeparationCase1を作動させ、3本の肢のGRFの軌跡を1本の肢の3つのGRFの軌跡に分解する。これらの軌跡はL_Limbs変数に書き込まれる。
検査された時間帯が3本の肢のデータを含み(L_Limbs(12,;)==3)、Yの位置の最大の傾きの時間が、Yの位置の最小の傾きが生じた時間よりも大きい(L_Limbs(5,;)>L_Limbs(7,;))場合、ThreeLimbSeparationCase2を作動させ、3本の肢のGRFの軌跡を1本の肢の3つのGRFの軌跡に分解する。これらの軌跡はL_Limbs変数に書き込まれる。
関数NewCow_TimeOnLEFTRIGHTを作動させ、左プレート上で新規の牛が識別された時刻がNewCowTimeOnLeftとして記録される。上に列挙したプロセス全体が右のプレートに対して繰返され、新規の牛の記録が右プレート上で識別された時刻が、NewCowTimeOnRightとして記録される。
NewCowTimeOnLeftおよびNewCowTimeOnRightとの間の最大値が識別されて、変数nとして記録される。次に、1頭の牛の左右の側の記録がマージされる。一局面において、最初のn個の記録の、対応するロードセルのデータは、変数名firstcow_rawdataに記憶され、この記録の末尾に20個のゼロのマージンが任意で追加される。newcow_timeOnLeft<newcowtimeOnRightである場合、エントリnewcow_timeOnLEFT+1からnewcow_timeOnRIGHTまで、行列firstcow_rawdataの第1〜第4列(左プレートのロードセル)にゼロが挿入される。newcow_timeOnLeft>newcowtimeOnRightである場合、エントリnewcow_timeOnRIGHT+1からnewcow_timeOnLEFTまで、行列firstcow_rawdataの第5〜第8列(右プレートのロードセル)にゼロが挿入される。この行列newcowloadcellは別個のファイルとして記録され、firstcow_rawdataと名付けられる。記録された変数は、関数XYGRFPlotを用いてモニタにプロットされる。
NewCowTimeOnLeftまたはNewCowTimeOnRightがゼロである場合、変数nextcow_timeonRIGHTおよびnextcow_timeonLEFTがゼロにセットされる。そうでない場合、nextcow_timeonLEFT=NewCowTimeOnLEFT+10である。newcowTimeonLEFTまたはnewcowTimeonRIGHTがゼロである場合、変数nextcow_timeonRIGHTおよびnextcow_timenonLEFTはゼロにセットされる。そうでない場合、nextcow_timeonRIGHT=NewCowTimeOnRight+10である。(nextcow_timeonLEFT<nextcow_timeonRIGHT)である場合、ロードセルの行列は、エントリnextcow_timeonLEFTからエントリnextcow_timeonRIGHT+10まで、第5〜第8列(右プレート)がゼロで埋められる。
(nextcow_timeonLEFT>nextcow_timeonRIGHT)である場合、ロードセルの行列は、エントリnextcow_timeonRIGHTからエントリnextcow_timeonLEFTまで、第1〜第4列がゼロのエントリで埋められる。
newcow_timeonLEFTおよびnewcow_timeonRIGHTがいずれもゼロよりも大きい場合、newcowloadcellという名の行列が、残りの動物のロードセル値(すなわち、エントリn-20で始まる行列ロードセルの8列すべての値)を得る。このnewcowloadcellは、lbに変換されてプロットされる。この時点でcowseparation関数を作動させ、newcowloadcellが1頭の牛のデータしか含まなくなるまでこのプロセスが続く。
IV. TwoLimbSeparation.m サブルーチン
以下の変数、すなわち、肢の統計値(LR_Limbs)、Yの位置(LEFTRIGHT_Y)、GRF(GRF_LEFTRIGHT)、Y軸についてのモーメント(ADD_LEFTRIGHT)、検査した領域のうちのどれが2本の肢の領域であるかを示す整数(kr)、および動物の最大重量(max_weight)が、TwoLimbSeparation関数に渡される。肢の統計値の行および列の数は、LR_Limbs上にMatlabのsize関数を呼出すことにより得られ、それぞれxおよびyに記憶される。
検査した肢の領域の開始時刻にしきい値10を加えたもの((LR_Limbs(10,;)+10)に始まり、この肢の領域の終了時刻からしきい値10を引いたもの((LR_Limbs(11,;)-10)に至るyy1ループが開始される。このループでは、5ユニット幅の稼動中のウインドウとYの位置のベクトルとの差が評価され、この差が3以上である場合にループは崩壊し、ループが最初に生じたときのyy1の値が記録される。
検査した肢の領域の終了時刻からしきい値10を引いたもの((LR_Limbs(11,;)-10)に始まり、この肢の領域の開始時刻にしきい値10を加えたもの((LR_Limbs(10,;)+10)に戻るyy2ループが開始される。このループでは、5ユニット幅の稼動中のウインドウとYの位置のベクトルとの差が評価され、この差の絶対値が3以上である場合にループは崩壊し、ループが最初に生じたときのyy2の値が記録される。
力の境界を求めるために、Ym1には、検査した肢の領域の開始時刻にしきい値10を加えたもの(LR_Limbs(10,;)+10)に始まってyy1に至るYの位置のベクトルの平均値が割当てられる。Ym2には、検査した肢の領域の終了時刻からしきい値10を引いたもの(LR_Limbs(11,;)-10)に始まってyy2に至るYの位置のベクトルの平均値が割当てられる。
検査した肢の領域の開始時刻(LR_Limbs(10,;)から終了時刻(LR_Limbs(11,;)まで、mmループが開始される。2つの平衡連立方程式を解くためにクラマース(Kramer's)の規則が用いられ、2本の肢のGRFの軌跡(GRF_LEFTRIGHT)から、2本の個別化された肢の2つの別個のGRFの軌跡が評価される(GRF_LRFTRIGHT_yy1およびGRF_LRFTRIGHT_yy2)。このような符号化の一例は以下のものを有する。すなわち、LR_Limbs(10,kr):LR_Limbs(11,kr)に等しいmmの場合、D1(mm)はdet([GRF_LEFTRIGHT(mm)1;ADD_LEFTRIGHT(mm)Ym2])に等しく、D2(mm)はdet([1 GRF_LEFTRIGHT(mm);Ym1 ADD_LEFTRIGHT(mm)])に等しく、ここで、Ym1はmean(LEFTRIGHT_Y((LR_Limbs(10,kr)+10):yy1))に等しく、Ym2はmean(LEFTRIGHT_Y((LR_Limbs(11,kr)-10):-1:yy2))に等しい。行列Dはdet([11;Ym1 Ym2])に等しい。これに対応して、分解されたGRF_LEFTRIGHT_yy1はD1./Dに等しく、GRF_LEFTRIGHT_yy2はD2./Dに等しい。
GRF_LEFTRIGHT_yy1が最大であって100よりも大きいときの時間が、LEFTRIGHT_yy1_t1に記録される。GRF_LEFTRIGHT_yy2が最小であって100よりも大きいときの時間が、LEFTRIGHT_yy2_t2に記録される。
肢の領域の統計値をシフトする際に、反転したkkループは、肢の領域の統計値の最大値(y)の列の数で始まり、検査した肢の領域の現時点での指数(kr)において終了する。肢の統計値の行列においてkk番目の検査された列(LR_Limbs(;,kk))は、(kk+1)番目の列にコピーされる。第2の(分離された)肢の開始時刻および終了時刻は、それぞれtime11およびtime22として記録される。分離された第2の肢の領域の肢の統計値が計算されて、LR_Limbs行列における(kr+1)番目の列においてLimbZoneStats変数に記憶される。第1の(分離された)肢の開始時刻および終了時刻は、それぞれtime11およびtime22として記録される。分離された第1の肢の領域の肢の統計値が計算されて、LR_Limbs行列における(kr)番目の列においてLimbZoneStats変数に記憶される。
行列Two_Limb_Separationは更新される。
V. ThreeLimbSeparationCase1.m サブルーチン
以下の変数、すなわち、肢の統計値(LR_Limbs)、Yの位置(LEFTRIGHT_Y)、GRFの行のロードセル値(LEFTRIGHT_GRF)、正規化されたGRF(GRF_LEFTRIGHT)、Y軸についてのモーメント(ADD_LEFTRIGHT)、検査した領域のうちのどれが3本の肢の領域で
あるかを示す整数(kr)、および動物の最大重量(max_weight)が、ThreeLimbSeprationCase1関数に渡される。肢の統計値の行および列の数は、LR_Limbs上にMatlabのsize関数を呼出すことにより得られ、それぞれxおよびyに記憶される。
検査した肢の領域の開始時刻に2のしきい値を加えたもの((LR_Limbs(10,;)+2)において始まり、検査した肢の領域内で最小のyの位置の傾きが生じた時刻から2のしきい値を引いたもの(LR_Limbs(7,;)-2)に至るyy1ループが開始される。このループでは、2ユニット幅の稼動中のウインドウとYの位置のベクトルとの差の絶対値が評価され、この差が2未満である場合にループは崩壊し、ループが最初に生じたときのyy1の値が記録される。
検査した肢の領域内で最小のyの位置の傾きが生じた時刻から2ユニットのしきい値を引いたもの((LR_Limbs(7,;)-2)において始まり、肢の領域の開始時刻に2のしきい値を加えたもの((LR_Limbs(10,;)+2)まで戻るyy2ループが開始される。このループでは、2ユニット幅の稼動中のウインドウとYの位置のベクトルとの差の絶対値が評価され、この絶対値が2未満である場合にループが崩壊し、ループが最初に生じたときのyy2の値が記録される。
力の境界を求めるために、Ym1およびYm2には、時刻yy1およびyy2のそれぞれにおけるYの位置の値が割当てられる。検査した肢の領域の開始時刻(LR_Limbs(10,;)から終了時刻(LR_Limbs(11,;)までmmループが開始される。2つの平衡連立方程式を解くためにクラマースの規則が用いられ、2本の肢のGRFの軌跡(GRF_LEFTRIGHT)から、個別化された2本の肢の2つの別個のGRFの軌跡が評価される(GRF_LRFTRIGHT_yy1およびGRF_LRFTRIGHT_yy2)。GRF_LEFTRIGHT_yy1が最大であり100よりも大きいときの時間がLEFTRIGHT_yy1_t1に記録される。GRF_LEFTRIGHT_yy2が最小であり100よりも大きいときの時間がLEFTRIGHT_yy2_t2に記録される。
肢の領域の統計値をシフトする際に、反転したkkループは、肢の領域の統計値の行列における列の数(y)で始まり、検査した肢の領域の現在の指数(kr)において終了する。肢の統計値の行列においてkk番目の検査された列(LR_Limbs(;,kk))は二度コピーされ、すなわち、一度目は(kk+1)番目の列に、二度目は(kk+2)番目の列にコピーされる。
3本の肢の位置の第1の部分についての肢の領域の統計値を再計算する際に、第1の肢の開始時刻および終了時刻がそれぞれtime11およびtime22として記録される。分離された第1の肢の領域の肢の統計値が計算されて、LR_Limbs行列の(kr)番目の列においてLimbZoneStats変数に記憶される。第3の肢の開始時刻および終了時刻はそれぞれ、time11およびtime22として記録される。3本の肢の位置の第2の部分についての肢の領域の統計値を再計算する際に、3本の肢のこの記録における第2の肢の開始時刻および終了時刻はそれぞれ、time11およびtime22である。分離された第2の肢の領域の肢の統計値が計算されて、LR_Limbs行列の(kr+1)番目の列においてLimbZoneStats変数に記憶される。3本の肢の位置の第1の部分についての肢の領域の統計値を再計算する際に、分離された第3の肢の領域の肢の統計値が計算されて、LR_Limbs行列の(kr+2)番目の列においてLimbZoneStats変数に記憶される。
行列Three_Limb_Separationは更新される。
VI. ThreeLimbSeparationCase2.mサブルーチン
以下の変数、すなわち、肢の統計値(LR_Limbs)、Yの位置(LEFTRIGHT_Y)、GRFの行のロードセル値(LEFTRIGHT_GRF)、正規化されたGRF(GRF_LEFTRIGHT)、Y軸についてのモーメント(ADD_LEFTRIGHT)、検査した領域のうちのどれが3本の肢の領域で
あるかを示す整数(kr)、および動物の最大重量(max_weight)がThreeLimbSeprationCase2関数に渡される。肢の統計値の行および列の数は、LR_Limbs上にMatlabのsize関数を呼出すことにより得られ、それらの数はそれぞれxおよびyに記憶される。
最小のyの位置の傾きが生じる時刻に2のしきい値を加えたもの((LR_Limbs(7,;)+2)に始まり、肢の領域の終了時刻から2のしきい値を引いたもの(LR_Limbs(11,;)-2)に至る、検査した肢の領域において開始する、yy1ループが開始される。このループでは、2ユニット幅の稼動中のウインドウとYの位置のベクトルとの差の絶対値が評価され、この絶対値が2未満である場合にループが崩壊し、ループが最初に生じたときのyy1の値が記録される。
検査した肢の領域の終了時刻から2ユニットのしきい値を引いたもの((LR_Limbs(11,;)-2)に始まり、最小のyの位置の傾きが生じた時刻に2のしきい値を加えたもの((LR_Limbs(7,;)+2)に戻るyy2ループが開始される。このループでは、2ユニット幅の稼動中のウインドウとYの位置のベクトルとの差の絶対値が評価され、この値が2未満である場合にこのループが崩壊し、このループが最初に生じたときのyy2の値が記録される。
力の境界を求めるために、Ym1およびYm2には、それぞれ時刻yy1およびyy2におけるYの位置の値が割当てられる。検査した肢の領域の開始時刻(LR_Limbs(10,;)から終了時刻(LR_Limbs(11,;)までmmループが開始される。2つの平衡連立方程式を解くためにクラマースの規則が用いられ、2本の肢のGRFの軌跡(GRF_LEFTRIGHT)から、個別化された2本の肢の2つの別個のGRFの軌跡が評価される(GRF_LRFTRIGHT_yy1およびGRF_LRFTRIGHT_yy2)。GRF_LEFTRIGHT_yy1が最大であり100よりも大きいときの時間がLEFTRIGHT_yy1_t1に記録される。GRF_LEFTRIGHT_yy2が最小であり100よりも大きいときの時間がLEFTRIGHT_yy2_t2に記録される。
肢の領域の統計値をシフトする際に、反転したkkループは、肢の領域の統計値の行列の列の数(y)において始まり、検査した肢の領域の現在の指数(kr)において終了する。肢の統計値の行列においてkk番目の検査された列(LR_Limbs(;,kk))が二度コピーされ、すなわち、一度は(kk+1)番目の列に、二度目は(kk+2)番目の列にコピーされる。3本の肢のこの記録における第2の肢の開始時刻および終了時刻はそれぞれ、time11およびtime22である。
分離された第1の肢の領域の肢の統計値が計算され、LR_Limbs行列の(kr)番目の列においてLimbZoneStats変数に記憶される。第1の肢の開始時刻および終了時刻はそれぞれ、time11およびtime22として記録される。分離された第3の肢の領域の肢の統計値が計算され、LR_Limbs行列の(kr+2)番目の列においてLimbZoneStats変数に記憶される。第3肢の開始時刻および終了時刻はそれぞれ、time11およびtime22として記録される。分離された第2の肢の領域の肢の統計値が計算されて、LR_Limbs行列の(kr+1)番目の列においてLimbZoneStats変数に記憶される。
行列Three_Limb_Separationは更新される。
VII. LimbZoneStatistics.mサブルーチン
以下の変数、すなわち、Y_positionのベクトル(LIMB_Y1)、検査した肢についてのGRFベクトル(LIMB_GRF1)、検査した肢の領域の開始時刻および終了時刻(それぞれtime1およびtime2)が、関数LimbZoneStatisticsに渡される。
次に、この関数の内部にある変数が初期化される。これらの変数は、max_Rt_slope=-1000000、min_Rt_slope=1000000、pos_delta_slope_counter=0、neg_delta_slope_counter=
0、delta_grfslope_counter=0、time_min_slope=1000000、およびtime_max_slope=-1000000を含む。(time2-time1)>30である場合、平均のYの位置の値(Y_mean)、最大のYの位置の値(Y_max)、および最小のYの位置の値(Y_min)が計算される。これらの計算では、Yの位置のベクトルのマージンしきい値が10にセットされる。
次に、(time1+10)および(time2-10)との間における地面反力(GRF)の最大値またはピークおよび平均値が求められ、それぞれRGRF_maxおよびR_AGRFに記憶される。R_AGRFはまず、RCUMGRF=(cumsum(LIMB_GRF1((time1+10):(time2-10))))を規定することによって求められ、ここでは、R_IMPULSE=maxRCUMGRF)*0.01およびR_stancetime=(abs((time1+10)-(time2-10)))*0.01である。次に、R_AGRFが(R_IMPULSE)/(R_STANCETIME)の比にセットされる。
最大および最小の傾きならびにそれぞれの時刻を計算するために、(time1+10)から稼動して(time2-20)に至るループjを開始し、Yの位置の値の、10の幅を有する稼動中のウインドウの傾き(Rt_slope)を計算する。傾きの最小値および最大値ならびにこれらの最小値および最大値が生じる時刻(それぞれmin_Rt_slope、time_min_slope、max_Rt_slope、およびtime_max_slope)が計算される。
(Rt_slope>2)である場合、pos_delta_slope_counterは1ユニットだけインクリメントされる。(Rt_slope<-2)である場合、neg_delta_slope_counterは1ユニットだけインクリメントされる。
time1に始まり(time2-2)に至るjjjjループを開始する。このループでは、2ユニット幅の稼動中のウインドウについてGRFの傾きが計算される。連続する2つのGRFの傾きの値の積が負である場合、delta_grfslope_counterの値は1だけインクリメントされる。
time2およびtime1との差が30未満である場合、平均のYの位置の値(Y_mean)、最大のYの位置の値(Y_max)、および最小のYの位置の値(Y_min)が、5のマージンしきい値で計算される。たとえば、Y_meanは、abs(mean(LIMB_Y1(((time1+5):(time2-5))))として計算される。
肢の領域についてのGRFの最大値またはピークおよび平均が次に、(time1+5)と(time2-5)との間で計算され、それぞれRGRF_maxおよびR_AGRFに記憶される。R_AGRFの計算は、上述の計算と同様である。
次に、最大および最小の傾きならびにそれぞれの時刻を求める。(time1+5)から(time2-10)に至るjループは、Yの位置の値の、5の幅を有する稼動中のウインドウの傾き(Rt_slope)を計算する。傾きの最小値および最大値ならびにこれらの最小値および最大値が生じる時刻(それぞれmin_Rt_slope、time_min_slope、max_Rt_slope、およびtime_max_slope)が計算される。
(Rt_slope>2)である場合、pos_delta_slope_counterが1ユニットだけインクリメントされる。(Rt_slope<-2)である場合、neg_delta_slope_counterは1ユニットだけインクリメントされる。
time1に始まり(time2-2)に至るjjjjループが開始される。このループでは、GRFの傾きが、2ユニット幅を有する稼動中のウインドウについて計算される。たとえば、Rt_GRFslope(jjjj)=(((LIMB_GRF1(jjjj+2)−LIMB_GRF1(jjjj))))である。連続する2つのGRFの傾きの値の積が負である場合、delta_grfslope_counterの値は1だけインクリメントされる。
以下の「if-else」ステートメントでは、検査したlimbzoneが1つ、2つ、または3つのlimbzoneのいずれであるかをコードが判定する。
以下の条件セットのいずれかが満たされた場合、その領域内の肢の数は1である。この条件セットは、(IRt_Limb=1):((Y_max-Y_min)<6かつ(Y_mean-Y_min)<6かつmax_Rt_slope<5かつmin_Rt_slope>-5))、((delta_grfslope_counter=1)かつmax_Rt_slope<5)かつ(min_Rt_slope>-5))、((delta_grfslope_counter=1)かつ(max_Rt_slope>=5)かつ((time_max_slope-time1)<20)かつ(min_Rt_slope>-5))、((delta_grfslope_counter=1)かつ(max_Rt_slope>=5)かつ((time2-time_max_slope)<20)かつ(min_Rt_slope>-5))、((delta_grfslope_counter=1)かつ(min_Rt_slope<=-5)かつ((time2-time_min_slope<20)かつ(max_Rt_slope<5))、((delta_grfslope_counter=1)かつ(min_Rt_slope<=-5)および((time_min_slope-time1)<20)かつ(max_Rt_slope<5)))である。
((Y_max-Y_mean<6)かつ(Y_mean-Y_min<6)かつ(pos_delta_slope_counter<0.09*(time2-time1))かつ(neg_delta_slope_counter<0.09*(time2-time1)))の場合、この領域内の肢の数は1である(IRt_Limb=1)。
((Y_max-Y_mean>6)かつ(Y_mean-Y_min>6)かつ(max_Rt_slope>5)かつ(min_Rt_slope<-5)かつ(pos_delta_slope_counter>0.09*(time2-time1))かつ(neg_delta_slope_counter>0.09*(time2-time1)))の場合、この領域内の肢の数は3である(IRt_Limb=3)。
それ以外の場合、肢の数は2である(IRt_Limb=2)。
LimbZoneStatsベクトルは、Y_mean、Y_max、Y_min、abs(max_Rt_slope)、time_max_slope、min_Rt_slope、time_min_slope、RGRF_max、R_AGRF、time1、time2、IRt_Limb、pos_delta_slope_counter、neg_delta_slope_counter、IRt_Limb、およびdelta_grfslope_counterの計算された値により更新される。
VIII. LimbZoneStatisticsfortwolimb1.mサブルーチン
Y_positionのベクトル(Limb_Y1)、検査した肢についてのGRFのベクトル(LIMB_GRF1)、2本の肢の場合に分離された肢についてのY_position(Ym)、検査した肢の領域の開始時刻および終了時刻(それぞれtime1およびtime2)の変数が関数LimbZoneStatisticsfortwolimb1に渡される。この関数の内部の変数は初期化される。
(time1+10)と(time2-10)との間のGRFのピークおよび平均が計算されて、それぞれRGRF_maxおよびR_AGRFに記憶される。
(time1+10)から稼動して(time2-20)に至るループjが開始され、Yの位置の値の、10の幅を有する稼動中のウインドウの傾き(Rt_slope)が計算される。傾きの最小値および最大値ならびにこれらの最小値および最大値が生じる時刻(それぞれ、min_Rt_slope、time_min_slope、max_Rt_slope、およびtime_max_slope)が計算される。
(Rt_slope>2)である場合、pos_delta_slope_counterは1ユニットだけインクリメントされる。(Rt_slope<-2)である場合、neg_delta_slope_counterは1ユニットだけインクリメントされる。
time1に始まり(time2-2)に至るjjjjループが開始される。このループでは、GRFの傾きが、2ユニット幅を有する稼動中のウインドウについて計算される。連続する2つのGRFの傾きの値の積が負である場合、delta_grfslope_counterの値は1だけインクリメン
トされる。
time2とtime1との差が30未満である場合、平均のYの位置の値(Y_mean)、最大のYの位置の値(Y_max)、および最小のYの位置の値(Y_min)が5のマージンしきい値で計算される。
(time1+5)と(time2-5)との間の地面反力(GRF)のピークおよび平均が計算され、それぞれRGRF_maxおよびR_AGRFに記憶される。
(time1+5)から稼動して(time2-10)に至るループjが開始され、Yの位置の値の、5の幅を有する稼動中のウインドウの傾き(Rt_slope)が計算される。傾きの最小値および最大値ならびにこれらの最小値および最大値が生じる時刻(それぞれmin_Rt_slope、time_min_slope、max_Rt_slope、およびtime_max_slope)が計算される。
(Rt_slope>2)である場合、pos_delta_slope_counterが1ユニットだけインクリメントされる。(Rt_slope<-2)である場合、neg_delta_slope_counterは1ユニットだけインクリメントされる。
time1に始まり(time2-2)に至るjjjjループが開始される。このループでは、2ユニット幅を有する稼動中のウインドウについてのGRFの傾きが計算され、連続する2つのGRFの傾きの値の積が負である場合、delta_grfslope_counterの値は1だけインクリメントされる。
ルーチンの最後に肢が分離され、検査した肢の領域が1本の肢の領域であることと、変数IRt_Limbに値1が割当てられること(IRt_Limb=1)とが確実となる。
LimbZoneStatsベクトルは、Y_mean、Y_max、Y_min、abs(max_Rt_slope)、time_max_slope、min_Rt_slope、time_min_slope、RGRF_max、R_AGRF、time1、time2、IRt_Limb、pos_delta_slope_counter、neg_delta_slope_counter、IRt_TwoLlimb、およびdelte_grfslope_counterの計算された値で更新される。
IX. NewCow_LEFTRIGHT_Check.mサブルーチン
以下の変数、すなわち、前/後肢の順序(FHLR_Limb(前肢に対して1、後肢に対して−1、肢がプレートの前端部(前端部から5インチ以内)にある場合は100、肢がプレートの後端部(端部から5インチ以内)にある場合は−100)、および肢の領域の統計値の行列(LR_Limbs)が、関数NewCow_LEFTRIGHT_Checkに渡される。このサブルーチンの内部の変数は初期化される。
1から(行列FHLR_Limbの長さ-1)までループiiが開始される。
以下の条件セットのいずれか1つが満たされる場合、検査した肢の領域は新規の牛に属する(New_Cow_LEFTRIGHT=1)。すなわち、(1)現在の肢の1つ前の肢が後肢であり(FHLR_Limb(ii)=-1)、現在の肢が前肢であり(FHLR_Limb(ii+1)=1)、現在の肢の前の肢の平均のY_positionが、現在の肢の平均のYの位置よりも大きい(LR_Limbs(1,ii)>LR_Limbs(1,(ii+1)))、(2)現在の肢の前の肢が後肢であり(FHLR_Limb(ii)=-1)、現在の肢が前肢であり(FHLR_Limb(ii+1)=1)、現在の肢の開始時刻と現在の肢の1つ前の肢の終了時刻との差が0.5秒よりも大きい(LR_Limbs(10,(ii+1))-LR_Limbs(11,(ii))>50)、(3)検査した領域内の肢の数が1であり(LR_Limbs(12,(ii+1))=1)、現在の肢の前の肢がプレートの開始部分から5インチ以内にあり(FHLR_Limb(ii)=100)、現在の肢の前の肢の平均のY_Positionと現在の肢の平均のYの位置との差が15よりも大きい(
LR_Limbs(1,(ii)))-(LR_Limbs(1,(ii+1))))>15)、(4)現在の肢の前の肢が後肢であり(FHLR_Limb(ii)=-1)、現在の肢がプレートの前端部から1インチ以内にあり(FHLR_Limb(ii+1)=-100)、現在の肢の前の肢の平均のY_positionが、現在の肢の平均のY_Positionよりも大きい(LR_Limbs(1,ii)>LR_Limbs(1,(ii+1))場合である。
新規の牛の開始時刻がNewCow_TimeOnLEFTRIGHTに記録される。
X. LimbSequence_LEFTRIGHT_Check.mサブルーチン
関数LimbSequence_LEFTRIGHT_Checkに渡される変数は、前/後肢の順序(FHLR_Limb(前肢に対して1、後肢に対して−1、肢がプレートの前端部(前端部から1インチ以内)にある場合は−100、肢がプレートの後端部(端部から6インチ以内)にある場合は100)、肢の領域の統計値の行列(LR_Limbs)、および検査した肢の領域の稼動中の指数(kkr)を含む。このサブルーチンの内部の変数は初期化される。
このサブルーチンは、以下に述べるように、検査したlimbzoneが前肢のものであるか後肢のものであるかを識別し、4つの異なる事例のいずれが適用可能であるかを判定する。
「Case 0」と記されたサブルーチンでは、以下の条件が評価される。検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、それがこのシーケンス内で検査された最初の肢である(FHLR_Limb=0)場合、この肢は前肢であり、FHLR_Limb(kkr)には1の値が割当てられる。検査した肢の領域が1本の肢のものであり(LR_Limbs(12,kkr)=1)、平均のY_positionがプレートの端部から72インチを上回る(LR_Limbs(1,kkr)>72)場合、FHLR_Limb(kkr)には100の値が割当てられる(FHLR_Limb(kkr)=100)。検査した肢の領域が1本の肢のものであり((LR_Limbs(12,kkr)=1)、平均のY_positionがプレートの前端部から1インチ未満である(LR_Limbs(1,kkr)<1)場合、FHLRには−100の値が割当てられる(FHLR_Limb(kkr)=-100)。
「Case 1」と記されたサブルーチンでは、以下のさらなる条件が評価される。(1)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が前肢であり(FHLR_Limb(kkr-1)=1)、検査した肢の前の肢がプレートの端部上に存在せず(FHLR_Limb(kkr-1)〜=100)、検査した肢の前の肢がプレートの開始部分に存在せず(FHLR_Limb(kkr-1)〜=(-100))、前の肢のAGRFが、検査した肢のAGRF*1.04以上であり(LR_Limbs(9,(kkr-1))>=(LR_Limbs(9,(kkr))*1.04))、以前の肢の領域と現在の肢の領域との平均のY_positionの差が5未満である((LR_Limbs(1,kkr)-LR_Limbs(1,(kkr-1)))<5))、(2)検査したlimbzoneが1本の肢の領域であり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が前肢であり(FHLR_Limb(kkr-1)=1)、以前の肢の領域と現在の肢の領域との平均のY_Positionの差が10未満である((LR_Limbs(1,kkr)-LR_Limbs(1,(kkr-1)))<10))、(3)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が前肢であり(FHLR_Limb(kkr-1)=1)、以前の肢のPGRFが現在の肢のPGRF*1.15よりも大きい(LR_Limbs(8,(kkr-1))-LR_Limbs(8,(kkr)))>0.15*(LR_Limbs(8,(kkr))、(4)検査したlimbzoneが1本の肢の領域であり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が前肢であり(FHLR_Limb(kkr-1)=1)、現在の領域のGRFの傾きのカウンタが3よりも大きい(LR_Limbs(16,kkr)>=3)場合、検査した肢は後肢である(FHLR_Limb(kkr)=-1)。
「Case 2」と記されたサブルーチンでは、以下のさらなる条件が評価される。検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が前肢であり(FHLR_Limb(kkr-1)=1)、検査した肢の前の肢がプレートの端部上に存在せず(FHLR_Limb(kkr-1)〜=100)、検査した肢の前の肢がプレートの開始部分上に存在せず(FHLR_Limb(kkr-1)〜=(-100))、以前の肢の領域と現在の肢の領域との平均のY_Positionの差が
5以上である((LR_Limbs(1,kkr)-LR_Limbs(1,(kkr-1)))>=5))場合、検査したlimbzoneは前肢である。
「Case 3」と記されたサブルーチンでは、以下のさらなる条件が評価される。(1)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が後肢であり(FHLR_Limb(kkr-1)=0)、検査した肢の前の肢がプレートの端部上に存在せず(FHLR_Limb(kkr-1)〜=100)、検査した肢の前の肢がプレートの開始部分上に存在せず(FHLR_Limb(kkr-1)〜=(-100))、以前の肢のAGRFが、検査した肢のAGRF*1.05よりも大きく(LR_Limbs(9,(kkr-1))>(LR_Limbs(9,(kkr))*1.05))、以前の肢の領域と現在の肢の領域との平均のY_Positionの差が0以下である((LR_Limbs(1,kkr)-LR_Limbs(1,(kkr-1)))=<0))、(2)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が後肢であり(FHLR_Limb(kkr-1)=0)、以前の肢のAGRFが、現在の肢のAGRF*1.02よりも大きく(LR_Limbs(9,(kkr-1))>(LR_Limbs(9,(kkr))*1.02))、現在の肢と以前の肢との平均のY_positionの差が−15以下である(LR_Limbs(1,kkr)-LR_Limbs(1,kkr-1)<=-15)、(3)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が後肢であり(FHLR_Limb(kkr-1)=0)、以前の肢のAGRFが、現在の肢のAGRF*1.1よりも大きい(LR_Limbs(9,(kkr-1))>(LR_Limbs(9,(kkr))*1.1))、(4)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が後肢であり(FHLR_Limb(kkr-1)=0)、以前の肢のPGRFが、現在の肢のPGRF*1.1よりも大きい(LR_Limbs(8,(kkr-1))>(LR_Limbs(8,(kkr))*1.1))場合、検査した肢の領域は前肢である(FHLR_Limb(kkr)=1)。
「Case 4」と記されたサブルーチンでは、以下のさらなる条件が評価される。(1)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が後肢であり(FHLR_Limb(kkr-1)=0)、検査した肢の前の肢がプレートの端部上に存在せず(FHLR_Limb(kkr-1)〜=100)、検査した肢の前の肢がプレートの開始部分上に存在せず(FHLR_Limb(kkr-1)〜=(-100))、以前の肢のAGRFが、検査した肢のAGRF*1.05以下であり(LR_Limbs(9,(kkr-1))<=(LR_Limbs(9,(kkr))*1.05))、以前の肢の領域と現在の肢の領域との平均のY_Positionの差が0よりも大きい((LR_Limbs(1,kkr)-LR_Limbs(1,(kkr-1)))>0))、(2)検査したlimbzoneが1本の肢のものであり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が後肢であり(FHLR_Limb(kkr-1)=0)、以前の肢のAGRFが、現在の肢のAGRF*1.05以上であり(LR_Limbs(9,(kkr-1))>=(LR_Limbs(9,(kkr))*1.05))、現在の肢と以前の肢との平均のY_positionの差が40以上である(LR_Limbs(1,kkr)-LR_Limbs(1,kkr-1)>=-40)、(3)検査したlimbzoneが1本の肢の領域であり(LR_Limbs(12,kkr)=1)、検査した肢の前の肢が後肢であり(FHLR_Limb(kkr-1)=0)、現在の肢と以前の肢との平均のY_Positionの差が40以上である(LR_Limbs(1,kkr)-LR_Limbs(1,kkr-1)>=40)場合、検査した肢は後肢である(FHLR_Limb(kkr)=-1)。
この肢の順序は、NewCow_LEFTRIGHT_Check関数に渡される。この関数は、この順序が2頭の牛または1頭の牛のいずれに属するかを確認する。1頭の牛である場合には何も行なわれず、そうでない場合、変数LimbSequenceCheckには10の値が割当てられ、ループは終了する。
XI. XYGRFPlot.mサブルーチン
任意の作図用サブルーチンでは、以下の変数、すなわち、時刻(time_ms)、lbを単位とするロードセルのデータ(LC1,LC2,…,LC8)、牛の数(cow_num_str)、日付(date_str)、時刻(time_str)が、関数XYGRFPlotに渡される。
動物の重量は、8個のロードセルを合計し、重量ベクトルの最大値を取ることによって計算される。時間に対する重量がプロットされる。ここで、時間ベクトルの大きさは、le
ngthコマンドを用いて求められる。
右プレートに関し、Y軸についてのモーメントが計算されてADD_RIGHTとして記憶される。右プレート上の力の合計は、GRF_RIGHTとして記憶される。
1から時間ベクトルの長さまでのループiが開始される。GRF_RIGHT>30である場合、Xの位置が計算され、X_RIGHT1として記憶される。そうでない場合、X_RIGHT1=0である。
右プレートに関してX軸についてのモーメントが計算され、ADD_RIGHTとして記憶される。右プレート上の力の合計はGRF_RIGHTとして記憶される。
1から時間ベクトルの長さまでのループiが開始される。GRF_RIGHT>30である場合、Yの位置が計算され、Y_RIGHT1として記憶される。そうでない場合、Y_RIGHT1=0である。
右プレートに対する力の合計が計算され、重量ベクトルの最大重量により除算される。この変数は、NGRF_RIGHTとして記憶される。
1から時間ベクトルの長さまでのループiが開始される。NGRF_RIGHT<0である場合、NGRF_RIGHT=0である。
右プレート上の肢に関するX_Position、Y_Position、および正規化されたGRFを計算するための上述の手順は、左プレートに対しても繰返される。
これらの計算された変数は、subplotコマンドを用いて時間の関数としてプロットされ、XYGRF_LEFTRIGHT行列に記憶される。
上に開示した概念は、たとえば、情報を通信するためのバスまたは他の通信機構、バスに結合されて情報を処理するための1台または複数のプロセッサ、および、バスに結合されてプロセッサにより実行されるべき命令および情報を記憶するためのメインメモリ、たとえばランダムアクセスメモリ(RAM)または他の動的記憶装置を含む任意の従来のコンピュータシステムと組合せて用いることができる。メインメモリは、1台または複数のプロセッサにより実行されるべき命令が実行されている間に、一時的数値変数または他の中間情報を記憶するために用いられ得る。このようなコンピュータシステムはさらに、バスに結合されて1台または複数のプロセッサに対する命令および静的情報を格納する読出専用メモリ(ROM)または他の静的記憶装置を含み得る。磁気ディスクまたは光学ディスク等の記憶装置を設けてバスに結合し、情報および命令を記憶することができる。
コンピュータシステムは、コンピュータのユーザに情報を表示するための表示装置にバスを介して結合され得る。1つ以上の入力装置(キーボード、タッチスクリーン、カーソル制御、マウス、トラックボール、カーソル方向キー、マイクロフォン等)をバスに結合し、情報およびコマンド選択を1台または複数のプロセッサに通信することができる。
コンピュータシステムは、さまざまなデータ入力手段により得られたデータを処理する。関連するプログラムおよび実行可能なコードまたは命令セットが好ましくはメインメモリに含まれ、1台または複数のプロセッサに応答して選択的にアクセスおよび実行される。1台または複数のプロセッサは、メインメモリに含まれる1つ以上の命令の1つ以上のシーケンスを実行する。このような命令は、記憶装置等の別のコンピュータ読取可能な媒体からメインメモリに読出され得る。多重処理の構成に置かれた1台以上のプロセッサを用いて、メインメモリ内に含まれる命令のシーケンスを実行することもできる。
これらの命令は、任意の数の形態で、たとえばソースコード、アセンブリコード、オブジェクトコード、機械言語、上述のコードの圧縮バージョンまたは暗号化バージョン、およびそれらのあらゆる等価物の形で提供され得る。「コンピュータ読取可能な媒体」は、1台または複数のプロセッサに命令を提供して実行することに関与する任意の媒体を指し、「プログラムプロダクト」は、コンピュータ実行可能なプログラムを有するこのようなコンピュータ読取可能な媒体を指す。コンピュータ使用可能な媒体は、命令を「有する」ものと呼ぶことができ、命令は、命令がコンピュータ使用可能な媒体に関連付けられるすべての態様を包含する。
コンピュータ読取可能な媒体は、以下のものに限定されないが、不揮発性媒体、揮発性媒体、および伝送媒体を含む。不揮発性媒体には、たとえば、光学ディスクまたは磁気ディスク、たとえば記憶装置が含まれる。揮発性媒体には、メインメモリ等の動的メモリが含まれる。伝送媒体には、同軸ケーブル、銅線、および光ファイバが含まれ、バスを含むワイヤが含まれる。伝送媒体は、音波または光波、たとえば電波(RF)および赤外線(IR)データ通信中に生成されるものを含み得る。コンピュータ読取可能な媒体の一般的な形態には、たとえば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、他の任意の磁気媒体、CD−ROM、DVD、他の任意の光学媒体、パンチカード、紙テープ、孔のパターンを有する他の任意の物理的媒体、RAM、PROM、EPROM、FLASH−EPROM、他の任意のメモリチップもしくはカートリッジ、後述する搬送波、またはコンピュータが読出すことのできる他の任意の媒体が含まれる。
さまざまな形態のコンピュータ読取可能な媒体は、1つ以上の命令の1つ以上のシーケンスをプロセッサに搬送して実行することに関与し得る。たとえば、命令はまず、遠隔のコンピュータの磁気ディスク上で保持され得る。遠隔のコンピュータは、その動的メモリにこれらの命令をロードして、モデムを用いる電話回線経由で送信することができる。コンピュータシステムにローカルなモデムは、電話回線上のデータを受信して、赤外線送信機を用いてそのデータを赤外線信号に変換することができる。バスに結合された赤外線検出器は赤外線信号で運ばれるデータを受信して、そのデータをバス上に出力することができる。バスはこのデータをメインメモリに運び、このメインメモリから、プロセッサが命令を取出して実行する。メインメモリが受信した命令は、プロセッサによる実行の前または後のいずれかに記憶装置に任意に記憶され得る。
コンピュータシステムはまた、バスに結合されて、ローカルネットワークに接続されたネットワークリンクへの双方向データ通信結合を提供する通信インターフェイスも含み得る。たとえば、通信インターフェイスは、対応する種類の電話回線にデータ通信接続を提供するための統合サービスデジタル網(ISDN)カードまたはモデムであり得る。別の例として、通信インターフェイスは、互換性を有するLANにデータ通信接続を提供するためのローカルエリアネットワーク(LAN)カードであり得る。また、無線リンクも実現することができる。このようなあらゆる実現例において、通信インターフェイスは、さまざまな種類の情報を表わすデジタルデータストリームを運ぶ電気信号、電磁信号、または光学信号を送受信する。
ネットワークリンクは一般に、1つ以上のネットワーク経由で他のデータ装置にデータ通信を提供する。たとえば、ネットワークリンクは、ローカルネットワークを介した接続を、ホストコンピュータに提供するか、またはインターネットサービスプロバイダ(Internet Service Provider)(ISP)が作動させるデータ装置に提供することができる。それにより、ISPは、ワールドワイドパケットデータ通信ネットワーク、現在では「インターネット(Internet)」と一般に呼ばれるものを介してデータ通信サービスを提供する。ローカルネットワークおよびインターネットはいずれも、デジタルデータストリーム
を運ぶ電気信号、電磁信号、または光学信号を用いる。さまざまなネットワークを経由する信号、ネットワークリンク上の信号、および通信インターフェイスを経由する信号は、コンピュータシステムとの間でデジタルデータをやり取りするものであり、情報を運ぶ搬送波の例示的な形態である。したがって、この明細書において例示として記載される発明の方法が必要とする処理は、記憶装置を用いるローカルコンピュータ上で実施され得、または、たとえばLANもしくはインターネットを介して実施され得る。
コンピュータシステムは、1つまたは複数のネットワーク、ネットワークリンク、および通信インターフェイス経由でメッセージを送信し、プログラムコードを含むデータを受信することができる。インターネットの例において、サーバは、インターネット、ISP、ローカルネットワーク、および通信インターフェイス経由でアプリケーションプログラム用に要求されたコードを送信することができる。受信されたコードはそのまま1台または複数のプロセッサにより実行されてよく、および/または後の実行に備えて記憶装置、または他の不揮発性記憶装置に記憶されてよい。この態様で、コンピュータシステムは、搬送波の形のアプリケーションコードを得ることができる。
この開示は好ましい実際の実施例の説明を明示しているが、この発明が開示された実施例に限定されず、その反対に、前掲の請求項の精神および範囲内に含まれるさまざまな変形例および等価の構成を包含するように意図されることを理解されたい。命令セットは、任意のコンピュータ読取可能な媒体に書込まれ得、該コンピュータ読取可能な媒体を読出すように適合された任意のプロセッサにおいて実行され得る。さらに、上述の命令セットは、例示された牛の例に特に関連するさまざまな物理的変数を考慮する。対象動物(牛等)の物理的な属性および動的な特性は、たとえば前肢と後肢とを区別するためにこの発明に従って用いられ得る一意の情報を提供する。たとえば、前のGRFのピークと後のGRFのピークとの差は約10〜15%であり、後肢のピークは前肢のピークよりも低い。また、後肢の力の軌跡は、2個または3個の谷またはピークを有し、曲線内に2個または3個の変曲点を有するが、その一方で、前肢は一般に1つのピークしか有さない。上述の命令に含まれるこれらのおよび他の要素は、未知の変数の数を減らし、かつ、力の軌跡およびその解釈において表わされる事象の識別を可能にする手段を提供する。他の種類の動物には、同様のまたは異なる要素が固有であることが考えられ、これらの要素をこの発明に従って同じ目的で用いることができる。
したがって、その一例のみがこの明細書に提示されているこの発明は、他の異なる実施例が可能であり、そのいくつかの詳細は、すべてがこの明細書に開示された概念から逸脱することなく種々の明らかな点で変更可能であることを理解されるべきである。添付の図面および説明は本質的に例示と考えられるべきであり、限定と考えられるべきではない。
この明細書に開示する概念と組み合わせて用いることのできる反力検出(RFD)システムの等角図である。 この明細書に開示する概念と組み合わせて用いることのできる反力検出(RFD)システムの側面図である。 この明細書に開示する概念と組み合わせて用いることのできる反力検出(RFD)システムの上面図である。 ここに開示する概念に従った、有用なサンプルの情報ファイルを示す表である。 図2に示す情報ファイルの1つに記録された牛199および1027のYの位置、地面反力(GRF)、および重量のプロットを示す図である。 ここに開示する概念に従った、牛199および1027についての右プレートのYの位置およびGRFに加え、異なるTimeZonesに対するTSTARTおよびTENDの時刻の識別を示す図である。 この概念に従った、Yの位置およびGRFの値に基づいて各TimeZoneに関して評価される統計学的パラメータの定義を有する表である。 図4のデータのプロットについてのLimbZoneStatisticsの数値を示す表であり、ここでは、この概念に従い、TimeZone_1が1本の肢を反映し、TimeZone_2が2本の肢を反映し、TimeZone_3が3本の肢を反映する。 (a)はこの概念に従った、図6の2本肢のTimeZone_2の個別化と、Yの位置のプロットとを示す図であり、(b)はこの概念に従った、図6の2本肢のTimeZone_2の個別化と、GRFのプロットとを示す図であり、(c)はこの概念に従ったTwoLimbSeparation関数を用いた個別化の後の、(b)のGRFのプロットを示す図である。 この概念に従い、TimeZone_2が2本の肢の領域である図6(表3)の例について、TwoLimbSeparation関数を適用してTimeZone_2を2つの別個の時間帯であるTimeZone_21およびTimeZone_22に変換することと、分離した時間帯に関して肢の領域の統計値を計算することと、LimbSequenceを割当てることとを示す図である。 この概念に従った、上述の牛199についての分離された記録または個別化された記録に対し、Yの位置、GRF、および体重のプロットを示す図である。 この概念に従った、上述の牛1027についての分離された記録または個別化された記録に対し、Yの位置、GRF、および体重のプロットを示す図である。 ThreeLimbSeparation関数による分離前の、図4に示すTimeZone_3のYの位置を示す図である。 ThreeLimbSeparation関数による分離前の、図4に示すTimeZone_3のGRFのプロットを示す図である。 この概念に従ったThreeLimbSeparation関数による分離後の、3つの一本の肢の領域についてのGRFのプロットを示す図である。 3頭の牛(991,213,885)の記録を、各々が1頭の牛を有する3つの記録に分離することを示す図であり、3頭の牛の記録を示す図である。 3頭の牛(991,213,885)の記録を、各々が1頭の牛を有する3つの記録に分離することを示す図であり、牛991のYの位置、GRF、および重量のプロットを示す図である。 3頭の牛(991,213,885)の記録を、各々が1頭の牛を有する3つの記録に分離することを示す図であり、牛213のYの位置、GRF、および重量のプロットを示す図である。 3頭の牛(991,213,885)の記録を、各々が1頭の牛を有する3つの記録に分離することを示す図であり、牛885のYの位置、GRF、および重量のプロットを示す図である。 4頭の牛(961,217,980,1026)の記録を、各々が1頭の牛を有する4つの記録に分離することを示す図であり、4頭の牛の記録を示す図である。 4頭の牛(961,217,980,1026)の記録を、各々が1頭の牛を有する4つの記録に分離することを示す図であり、牛961のYの位置、GRF、および重量のプロットを示す図である。 4頭の牛(961,217,980,1026)の記録を、各々が1頭の牛を有する4つの記録に分離することを示す図であり、牛217のYの位置、GRF、および重量のプロットを示す図である。 4頭の牛(961,217,980,1026)の記録を、各々が1頭の牛を有する4つの記録に分離することを示す図であり、牛980のYの位置、GRF、および重量のプロットを示す図である。 4頭の牛(961,217,980,1026)の記録を、各々が1頭の牛を有する4つの記録に分離することを示す図であり、牛1026のYの位置、GRF、および重量のプロットを示す図である。 ここに開示する概念に従った論理的な演算の一例についてのフロー図である。

Claims (60)

  1. 機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体であって、前記命令は、実行されると1つ以上のプロセッサに、
    (a) 機器を備え付けた力検知用床部を横切る前記複数の動物についての位置データおよび地面反力データを含むデータファイルを得るステップと、
    (b) 前記位置データを、各々が開始時刻および終了時刻を有する複数の時間帯に分割するステップと、
    (c) 前記時間帯の各々が、1本の肢または複数の肢のいずれについての位置データおよび地面反力データを表わすかを判定するステップと、
    (d) 複数の肢の時間帯を複数の別個の1本の肢の時間帯に個別化するステップと、
    (e) 各時間帯内の各肢を、前肢または後肢、および左肢または右肢として識別するステップと、
    (f) 識別した各前肢および後肢を、前記複数の動物のそれぞれ1頭に関連付けるステップとを実行させるように構成される、コンピュータ読取可能な媒体。
  2. ステップ(d)は、帰納法により、複数の肢の時間帯を複数の別個の1本の肢の時間帯に個別化するステップを含む、請求項1に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  3. 実行されると1つ以上のプロセッサにステップ(a)を実行させるように構成される前記命令はさらに、データの記録に関する時間データ、ファイル番号、動物のタグ番号、および動物の識別番号の少なくとも1つを含む識別データを得るように構成される1つ以上の命令を含み、
    実行されると1つ以上のプロセッサにステップ(a)を実行させるように構成される前記命令はさらに、各ファイルに記録された動物の数を計算するように構成される1つ以上の命令を含む、請求項2に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  4. 実行されると1つ以上のプロセッサにステップ(b)を実行させるように構成される前記命令はさらに、右肢または左肢のYの位置がゼロよりも大きい指数の第1のベクトルと、右肢または左肢のYの位置が1よりも大きい指数の第2のベクトルとを見つけて、前記指数の第1のベクトルおよび前記指数の第2のベクトルの少なくとも1つを用いて前記複数の時間帯を求めるように構成される1つ以上の命令を含む、請求項3に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  5. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、検査した肢の時間帯の開始時刻と検査した肢の時間帯の終了時刻との差が約30秒よりも大きい場合に、前記開始時刻と前記終了時刻との間における最大地面反力および平均地面反力を求め、前記最大地面反力および前記平均地面反力を記憶するように構成される1つ以上の命令を含む、請求項4に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  6. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、impulse変数とstancetime変数との比を計算することによって前記平均地面反力を求めるように構成される1つ以上の命令を含み、前記impulse変数は、検査した肢の時間帯の前記開始時刻と検査した肢の時間帯の前記終了時刻との間で規定された地面反力の曲線領域に乗数を適用することによって計算され、前記stancetime変数は、検査
    した肢の時間帯の前記開始時刻と検査した肢の時間帯の前記終了時刻との時間差として計算される、請求項5に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  7. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、Yの位置の値の稼動中のウィンドウの傾きを計算し、そして前記Yの位置の値の最大の傾き、最小の傾き、およびそれぞれの時刻を計算するように構成される1つ以上の命令を含む、請求項6に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  8. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、Yの位置の値の前記稼動中のウィンドウの前記傾きが、約2よりも大きいか、または約−2未満の場合に、カウンタをインクリメントするように構成される1つ以上の命令を含む、請求項7に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  9. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、前記稼動中のウィンドウ内の傾きが予め定められた最小変化率を超えた場合に負の傾きのカウンタをインクリメントするか、または、正の傾きのカウンタを1だけインクリメントするように構成される1つ以上の命令を含む、請求項8に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  10. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、ループを実行するように構成される1つ以上の命令を含み、地面反力の傾きは、前記稼動中のウィンドウの幅よりも小さな幅を有する第2の稼動中のウィンドウについて計算され、地面反力の傾きのカウンタは、連続する2つの地面反力の傾きの値の積が負である場合に1だけインクリメントされる、請求項9に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  11. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、前記開始時刻と前記終了時刻との差が約30秒よりも大きい場合に、平均のYの位置、最大のYの位置の値、最小のYの位置の値、最大地面反力、および平均地面反力を計算するように構成される1つ以上の命令を含む、請求項10に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  12. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、稼動中のウィンドウ内の最大の傾きおよび最小の傾きを計算し、そして前記最大の傾きおよび前記最小の傾きを、前記最大の傾きおよび前記最小の傾きの各々のそれぞれの出現時刻とともに記憶するように構成される1つ以上の命令を含む、請求項11に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  13. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、(1)Yの位置の最大値と最小値との差が6未満であり、Yの位置の平均値とYの位置の最小値との差が6未満であり、前記最大の傾きが5未満であり、前記最小の傾きが−5よりも大きく、前記地面反力の傾きのカウンタが1であること、(2)前記地面反力の傾きのカウンタが1であり、前記最大の傾きが5以上であり、前記最大の
    傾きと前記開始時刻との時間差が20秒未満であり、前記最小の傾きが−5よりも大きいこと、(3)前記地面反力の傾きのカウンタが1であり、前記最大の傾きが5以上であり、前記終了時刻と前記最大の傾きの前記時刻との時間差が20秒未満であり、前記最小の傾きが5よりも大きいこと、(4)前記地面反力の傾きのカウンタが1であり、前記最小の傾きが−5以下であり、前記終了時刻と前記最小の傾きの前記時刻との時間差が20秒未満であり、前記最大の傾きが5未満であること、(5)前記地面反力の傾きのカウンタが1であり、前記最小の傾きが−5以下であり、前記終了時刻と前記最小の傾きの前記時刻との時間差が20秒未満であり、前記最小の傾きが5よりも大きく、前記最大の傾きが5未満であること、(6)前記地面反力の傾きのカウンタが1であり、前記最小の傾きが−5以下であり、前記最小の傾きの前記時刻と前記開始時刻との時間差が20秒未満であり、前記最大の傾きが5未満であること、および(7)Yの位置の最大値とYの位置の平均値との差が6未満であり、Yの位置の平均値とYの位置の最小値との差が6未満であり、前記正の傾きのカウンタが、前記開始時刻と前記終了時刻との差の0.09倍未満であり、前記負の傾きのカウンタが、前記開始時刻と前記終了時刻との差の0.09倍未満であることを含む条件セットの少なくとも1つが満たされた場合に、時間帯内の肢の数を1と指定するように構成される1つ以上の命令を含む、請求項12に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  14. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、Yの位置の最大値とYの位置の平均値との差が6よりも大きく、Yの位置の平均値とYの位置の最小値との差が6よりも大きく、前記最大の傾きが5よりも大きく、前記最小の傾きが−5未満であり、前記正の傾きのカウンタが、前記開始時刻と前記終了時刻との差の0.09倍よりも大きく、前記負の傾きのカウンタが、前記開始時刻と前記終了時刻との差の0.09倍よりも大きいことを含む条件セットが満たされた場合に、時間帯内の肢の数を3と指定するように構成される1つ以上の命令を含む、請求項13に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  15. 実行されると1つ以上のプロセッサにステップ(c)を実行させるように構成される前記命令はさらに、請求項13または請求項14に明示した条件セットがいずれも満たされない場合に、時間帯内の肢の数を2と指定するように構成される1つ以上の命令を含む、請求項14に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  16. 実行されると1つ以上のプロセッサにステップ(d)を実行させるように構成される前記命令はさらに、2本の肢についての1つの地面反力の軌跡を、1本の肢についての2つの地面反力の軌跡に個別化するように構成される1つ以上の命令を含む、請求項15に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  17. 前記個別化のステップはさらに、実行されると1つ以上のプロセッサに対し、稼動中のウィンドウが検査した肢の領域の開始時刻に始まって前記肢の領域の終了時刻に向けて移動する第1のループを実行させて、前記稼動中のウィンドウの一方端におけるYの位置と前記稼動中のウィンドウの別の端部におけるYの位置との差が予め定められたしきい値よりも大きいかどうかを判定させて前記第1のループが終了する時点におけるyの値を記録させ、稼動中のウィンドウが前記検査した肢の領域の終了時刻に始まって前記肢の領域の開始時刻に向けて移動する第2のループを実行させて、前記稼動中のウィンドウの一方端におけるYの位置と前記稼動中のウィンドウの別の端部におけるYの位置との差が予め定められたしきい値よりも大きいかどうかを判定させて前記第2のループが終了する時点に
    おけるyの値を記録させるように構成される命令を含む、請求項16に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  18. 前記稼動中のウィンドウは5ユニット幅である、請求項17に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  19. 前記個別化のステップはさらに、2本の肢についての前記1つの地面反力の軌跡に関し、2つの平衡連立方程式を解いて2つの個別化された肢についての2つの別個の地面反力の軌跡を生じるように構成される命令を含む、請求項18に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  20. 実行されると1つ以上のプロセッサにステップ(d)を実行させるように構成される前記命令はさらに、3本の肢についての1つの地面反力の軌跡を、1本の肢についての3つの地面反力の軌跡に個別化するように構成される1つ以上の命令を含む、請求項15に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  21. 前記個別化のステップはさらに、実行されると1つ以上のプロセッサに対し、個別化のための命令が初めて実行されると、第1のループを開始させるように構成される命令を含み、前記第1のループにおいて、稼動中のウィンドウは、検査した肢の領域の開始時刻に2のしきい値を加えたものにおいて始まり、最小のYの位置の傾きが前記検査した肢の領域内で生じた時刻から2のしきい値を引いたものまで移動し、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値が評価され、前記差が2未満の場合に前記ループは崩壊し、前記第1のループの終了時点におけるyの値が記憶され、前記個別化のステップはさらに、第2のループを実行する命令を含み、前記第2のループにおいて、稼動中のウィンドウは、最小のYの位置の傾きが前記検査した肢の領域内で生じた時刻から2のしきい値を引いたものにおいて始まり、前記肢の領域の開始時刻に2のしきい値を加えたものまで戻り、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値が評価され、前記差が2未満の場合に前記ループは終了し、前記第2のループの終了時点におけるyの値が記憶される、請求項20に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  22. 前記個別化のステップはさらに、実行されると1つ以上のプロセッサに第1のループを開始させるように構成される命令を含み、前記第1のループにおいて、稼動中のウィンドウは、最小のYの位置の傾きが前記検査した肢の領域内で生じた時刻に2のしきい値を加えたものにおいて始まり、前記肢の領域の終了時刻から2のしきい値を引いたものまで進み、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値が評価され、前記差が2未満の場合に前記ループは終了し、前記第1のループの終了時点におけるyの値が記憶され、前記個別化のステップはさらに、実行されると1つ以上のプロセッサに第2のループを開始させるように構成される命令を含み、前記第2のループにおいて、稼動中のウィンドウは、前記検査した肢の領域の終了時刻から2ユニットのしきい値を引いたものにおいて始まり、最小のYの位置の傾きが前記検査した肢の領域内で生じた時刻から2ユニットのしきい値を引いたものまで戻り、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値が評価され、前記差が2未満の場合に前記ループは崩壊し、前記第2のループの終了時点におけるyの値が記憶される、請求項20に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を
    有するコンピュータ読取可能な媒体。
  23. 前記個別化のステップはさらに、3本の肢についての前記1つの地面反力の軌跡に関し、2つの平衡連立方程式を解いて2本の個別化された肢についての2つの別個の地面反力の軌跡を生じるように構成される命令を含む、請求項21または22に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  24. 前記個別化のステップはさらに、3本の肢についての前記1つの地面反力の軌跡に関し、少なくとも複数の平衡連立方程式を解いて、個別化された肢についての、対応する複数の別個の地面反力の軌跡を生じるように構成される命令を含む、請求項23に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  25. 実行されると1つ以上のプロセッサにステップ(e)を実行するように構成される前記命令はさらに、検査した肢の領域が1本の肢のものであり、かつ、データのシーケンスにおいて検査された最初の肢である場合に、検査した肢を前肢と指定し、そして、前記検査した肢の領域が1本の肢を有しており、かつ、平均のYの位置がプレートの端部から72インチよりも離れている場合、または、前記検査した肢の領域が1本の肢を有しており、かつ、平均のYの位置が前記プレートの前端部から1インチ未満である場合に、肢のデータを不定であると指定するように構成される1つ以上の命令を含む、請求項1に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  26. 実行されると1つ以上のプロセッサにステップ(e)を実行させるように構成される前記命令はさらに、(1)検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の平均地面反力が、検査した肢の平均地面反力の1.04倍以上であり、以前の肢の領域と現在の肢の領域との平均のYの位置の差が5未満であること、(2)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、以前の肢の領域と現在の肢の領域との平均のYの位置の差が10未満であること、(3)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、以前の肢の地面反力のピークが現在の肢の地面反力のピークの1.15倍よりも大きいこと、および(4)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、現在の領域の地面反力の傾きのカウンタが3よりも大きいこと、の条件セットのいずれか1つが満たされた場合に、検査した肢を後肢と明確に示すように構成される1つ以上の命令を含む、請求項25に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  27. 実行されると1つ以上のプロセッサにステップ(e)を実行するように構成される前記命令はさらに、検査した肢の領域が1本の肢のものであり、前記検査した肢の前の肢が前肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の領域と現在の肢の領域との平均のYの位置の差が5以上である場合に、肢のデータを前肢のものと指定するように構成される1つ以上の命令を含む、請求項26に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  28. 実行されると1つ以上のプロセッサにステップ(e)を実行させるように構成される前記命令はさらに、(1)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢
    の前の肢が後肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の平均地面反力が、前記検査した肢の平均地面反力の1.05倍よりも大きく、以前の肢の領域と現在の肢の領域との平均のYの位置の差がゼロ以下であること、(2)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、前記以前の肢の平均地面反力が、現在の肢の平均地面反力の1.02倍よりも大きく、現在の肢と以前の肢との平均のYの位置の差が−15以下であること、(3)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、以前の肢の平均地面反力が、現在の肢の平均地面反力の1.1倍よりも大きいこと、および(4)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、前記以前の肢の地面反力のピークが、現在の肢の地面反力のピークの1.1倍よりも大きいこと、の条件セットのいずれか1つが満たされた場合に、検査した肢を前肢と指定するように構成される1つ以上の命令を含む、請求項26に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  29. 実行されると1つ以上のプロセッサにステップ(e)を実行させるように構成される前記命令はさらに、(1)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の平均地面反力が、前記検査した肢の平均地面反力の1.05倍以下であり、以前の肢の領域と現在の肢の領域との平均のYの位置の差がゼロよりも大きいこと、(2)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、以前の肢の平均地面反力が、現在の肢の平均地面反力の1.05倍以上であり、現在の肢と以前の肢との平均のYの位置の差が40以上であること、および(3)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、現在の肢と以前の肢との平均のYの位置の差が40以上であること、の条件セットのいずれか1つが満たされた場合に、前記検査した肢を後肢と指定するように構成される1つ以上の命令を含む、請求項26に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  30. 実行されると1つ以上のプロセッサにステップ(f)を実行させるように構成される前記命令はさらに、(1)現在の肢の1つ前の肢が後肢であり、現在の肢が前肢であり、現在の肢の前の肢の平均のYの位置が、現在の肢の平均のYの位置よりも大きいこと、(2)現在の肢の前の肢が後肢であり、現在の肢が前肢であり、現在の肢の開始時刻と現在の肢の前の肢の終了時刻との差が0.5秒よりも大きいこと、(3)検査した領域内の肢の数が1であり、現在の肢の前の肢が前記プレートの開始部分から5インチ以内にあり、現在の肢の前の肢の平均のYの位置と現在の肢の平均のYの位置との差が15よりも大きいこと、および(4)現在の肢の前の肢が後肢であり、現在の肢が前記プレートの前端部から約1インチ以内にあり、現在の肢の前の肢の平均のYの位置が、現在の肢の平均のYの位置よりも大きいこと、の条件セットのいずれか1つが満たされた場合に、検査した肢の領域を新規の牛のものであると指定するように構成される1つ以上の命令を含む、請求項25に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための命令を有するコンピュータ読取可能な媒体。
  31. 機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法であって、
    (a) 機器を備え付けた力検知用床部を横切る前記複数の動物についての位置データおよび地面反力データを含むデータファイルを得るステップと、
    (b) 前記位置データを、各々が開始時刻および終了時刻を有する複数の時間帯に分割するステップと、
    (c) 前記時間帯の各々が、1本の肢または複数の肢のいずれについての位置データおよび地面反力データを表わすかを判定するステップと、
    (d) 複数の肢の時間帯を複数の別個の1本の肢の時間帯に個別化するステップと、
    (e) 各時間帯内の各肢を、前肢または後肢および左肢または右肢として識別するステップと、
    (f) 識別した前肢および後肢の各々を、前記複数の動物のそれぞれ1頭に関連付けるステップとを含む、方法。
  32. ステップ(d)は、帰納法により、複数の肢の時間帯を複数の別個の1本の肢の時間帯に個別化するステップを含む、請求項32に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  33. ステップ(a)はさらに、データの記録に関する時間データ、ファイル番号、動物のタグ番号、および動物の識別番号の少なくとも1つを含む識別データを得るステップを含む、請求項32に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  34. ステップ(a)はさらに、各ファイルに記録された動物の数を計算するステップを含み、
    ステップ(b)はさらに、右肢または左肢のYの位置がゼロよりも大きい指数の第1のベクトルを見つけるステップと、右肢または左肢のYの位置が1よりも大きい指数の第2のベクトルを見つけるステップと、前記指数の第1のベクトルおよび前記指数の第2のベクトルの少なくとも1つを用いて前記複数の時間帯を求めるステップとを含む、請求項33に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  35. ステップ(c)はさらに、検査した肢の時間帯の開始時刻と検査した肢の時間帯の終了時刻との差が約30秒よりも大きい場合に、前記開始時刻と前記終了時刻との間における最大地面反力および平均地面反力を求めるステップと、前記最大地面反力および前記平均地面反力を記憶するステップとを含む、請求項34に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  36. ステップ(c)はさらに、impulse変数とstancetime変数との比を計算することによって前記平均地面反力を求めるステップを含み、前記impulse変数は、検査した肢の時間帯の前記開始時刻と検査した肢の時間帯の前記終了時刻との間で規定された地面反力の曲線領域に乗数を適用することによって計算され、前記stancetime変数は、検査した肢の時間帯の前記開始時刻と検査した肢の時間帯の前記終了時刻との時間差として計算される、請求項35に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  37. ステップ(c)はさらに、Yの位置の値の稼動中のウィンドウの傾きを計算するステップと、前記Yの位置の値の最大の傾き、最小の傾き、およびそれぞれの時刻を計算するステップとを含む、請求項36に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  38. ステップ(c)はさらに、Yの位置の値の前記稼動中のウィンドウの前記傾きが、約2よりも大きいか、または約−2未満の場合に、カウンタをインクリメントするステップを含む、請求項37に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  39. ステップ(c)はさらに、前記稼動中のウィンドウ内の傾きが予め定められた最小変化率を超えた場合に負の傾きのカウンタをインクリメントするか、または正の傾きのカウンタを1だけインクリメントするステップを含む、請求項38に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  40. ステップ(c)はさらに、前記稼動中のウィンドウの幅よりも小さな幅を有する第2の稼動中のウィンドウについての地面反力の傾きを繰り返し計算するステップと、連続する2つの地面反力の傾きの値の積が負である場合に、地面反力の傾きのカウンタを1だけインクリメントするステップとを含む、請求項39に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  41. ステップ(c)はさらに、前記開始時刻と前記終了時刻との差が約30秒よりも大きい場合に、平均のYの位置、最大のYの位置の値、最小のYの位置の値、最大地面反力、および平均地面反力を計算するステップを含む、請求項40に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  42. ステップ(c)はさらに、稼動中のウィンドウ内の最大の傾きおよび最小の傾きを計算するステップと、前記最大の傾きおよび前記最小の傾きを、前記最大の傾きおよび前記最小の傾きの各々のそれぞれの出現時刻とともに記憶するステップとを含む、請求項41に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  43. ステップ(c)はさらに、(1)Yの位置の最大値と最小値との差が6未満であり、Yの位置の平均値とYの位置の最小値との差が6未満であり、前記最大の傾きが5未満であり、前記最小の傾きが−5よりも大きく、前記地面反力の傾きのカウンタが1であること、(2)前記地面反力の傾きのカウンタが1であり、前記最大の傾きが5以上であり、前記最大の傾きと前記開始時刻との時間差が20秒未満であり、前記最小の傾きが−5よりも大きいこと、(3)前記地面反力の傾きのカウンタが1であり、前記最大の傾きが5以上であり、前記終了時刻と前記最大の傾きの前記時刻との時間差が20秒未満であり、前記最小の傾きが5よりも大きいこと、(4)前記地面反力の傾きのカウンタが1であり、前記最小の傾きが−5以下であり、前記終了時刻と前記最小の傾きの前記時刻との時間差が20秒未満であり、前記最大の傾きが5未満であること、(5)前記地面反力の傾きのカウンタが1であり、前記最小の傾きが−5以下であり、前記終了時刻と前記最小の傾きの前記時刻との時間差が20秒未満であり、前記最小の傾きが5よりも大きく、前記最大の傾きが5未満であること、(6)前記地面反力の傾きのカウンタが1であり、前記最小の傾きが−5以下であり、前記最小の傾きの前記時刻と前記開始時刻との時間差が20秒未満であり、前記最大の傾きが5未満であること、および(7)Yの位置の最大値とYの位置の平均値との差が6未満であり、Yの位置の平均値とYの位置の最小値との差が6未満であり、前記正の傾きのカウンタが、前記開始時刻と前記終了時刻との差の0.09倍未満であり、前記負の傾きのカウンタが、前記開始時刻と前記終了時刻との差の0.09倍未満であること、の条件セットの少なくとも1つが満たされた場合に、時間帯内の肢の数を1と指定するステップを含む、請求項42に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  44. ステップ(c)はさらに、Yの位置の最大値とYの位置の平均値との差が6よりも大きく、Yの位置の平均値とYの位置の最小値との差が6よりも大きく、前記最大の傾きが5よりも大きく、前記最小の傾きが−5未満であり、前記正の傾きのカウンタが、前記開始時刻と前記終了時刻との差の0.09倍よりも大きく、前記負の傾きのカウンタが、前記開始時刻と前記終了時刻との間の差の0.09倍よりも大きい場合に、時間帯内の肢の数を3と指定するステップを含む、請求項43に記載の、機器を備え付けた力検知用床部を
    横切る複数の動物の肢を個別化するための方法。
  45. ステップ(c)はさらに、請求項43または請求項44に明示した条件セットがいずれも満たされない場合に、時間帯内の肢の数を2と指定するステップを含む、請求項44に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  46. ステップ(d)はさらに、2本の肢についての1つの地面反力の軌跡を、1本の肢についての2つの地面反力の軌跡に個別化するステップを含む、請求項45に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  47. 前記個別化のステップはさらに、検査した肢の領域の開始時刻に始まって前記肢の領域の終了時刻に向けて移動する稼動中のウィンドウを用いて第1の反復計算を実施して、前記稼動中のウィンドウの一方端におけるYの位置と前記稼動中のウィンドウの別の端部におけるYの位置との差が予め定められたしきい値よりも大きいかどうかを判定して、前記第1の反復計算が終了する時点におけるyの値を記録するステップと、検査した肢の領域の終了時刻に始まって前記肢の領域の開始時刻に向けて移動する稼動中のウィンドウを用いて第2の反復計算を実施して、前記稼動中のウィンドウの一方端におけるYの位置と前記稼動中のウィンドウの別の端部におけるYの位置との差が予め定められたしきい値よりも大きいかどうかを判定して、前記第2の反復計算が終了する時点におけるyの値を記録するステップとを含む、請求項46に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  48. 前記稼動中のウィンドウは5ユニット幅である、請求項46に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  49. 前記個別化のステップはさらに、2本の肢についての前記1つの地面反力の軌跡に関し、2つの平衡連立方程式を解いて2本の個別化された肢についての2つの別個の地面反力の軌跡を生じるステップを含む、請求項47に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  50. ステップ(d)はさらに、3本の肢についての1つの地面反力の軌跡を、1本の肢についての3つの地面反力の軌跡に個別化するステップを含む、請求項49に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  51. 前記個別化のステップはさらに、個別化の最初の場合において、検査した肢の領域の開始時刻に2のしきい値を超えたものにおいて始まり、前記検査した肢の領域内で最小のYの位置の傾きが生じた時刻から2のしきい値を引いたものまで移動する稼動中のウィンドウを用いて第1の反復計算を実施するステップと、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値を計算するステップと、前記差が2未満の場合に前記反復計算を終了するステップと、前記反復計算の終了時点におけるyの値を記憶するステップと、前記検査した肢の領域内で最小のYの位置の傾きが生じた時刻から2のしきい値を引いたものにおいて始まり、前記肢の領域の開始時刻に2のしきい値を加えたものまで戻る稼動中のウィンドウを用いて第2の反復計算を実施するステップと、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値を計算するステップと、前記差が2未満の場合に前記第2の反復を終了するステップと、前記第2の反復計算が終了した時点におけるyの値を記憶するステップとを含む、請求項50に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  52. 前記個別化のステップはさらに、前記検査した肢の領域内で最小のYの位置の傾きが生
    じた時刻に2のしきい値を加えたものにおいて始まり、前記肢の領域の終了時刻から2のしきい値を引いたものに至る稼動中のウィンドウを用いて第1の反復計算を開始するステップと、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値を計算するステップと、前記差が2未満の場合に前記第1の反復計算を終了するステップと、前記第1の反復計算の終了時点におけるyの値を記憶するステップと、前記検査した肢の領域の終了時刻から2ユニットのしきい値を引いたものにおいて始まり、検査した肢の領域内で最小のYの位置の傾きが生じた時刻から2ユニットのしきい値を引いたものまで戻る稼動中のウィンドウを用いて第2の反復計算を開始するステップと、2ユニット幅の前記稼動中のウィンドウとYの位置のベクトルとの差の絶対値を計算するステップと、前記差が2未満の場合に前記第2の反復計算を終了するステップと、前記第2の反復計算の終了時点におけるyの値を記憶するステップとを含む、請求項50に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  53. 前記個別化のステップはさらに、3本の肢についての前記1つの地面反力の軌跡に関し、2つの平衡連立方程式を解いて2本の個別化された肢についての2つの別個の地面反力の軌跡を生じるステップを含む、請求項51または52に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  54. 前記個別化のステップはさらに、3本の肢についての前記1つの地面反力の軌跡に関し、少なくとも複数の平衡連立方程式を解いて、個別化された肢についての、対応する複数の別個の地面反力の軌跡を生じるステップを含む、請求項53に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  55. ステップ(e)はさらに、検査した肢の領域が1本の肢のものであり、かつ、データのシーケンスにおいて検査された最初の肢である場合に、検査した肢を前肢と指定するステップと、前記検査した肢の領域が1本の肢を有しており、かつ、平均のYの位置が前記プレートの端部から72インチよりも離れている場合、または、前記検査した肢の領域が1本の肢を有しており、かつ、平均のYの位置が前記プレートの前端部から1インチ未満にある場合に、肢のデータを不定と指定するステップを含む、請求項31に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  56. ステップ(e)はさらに、(1)検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の平均地面反力が、検査した肢の平均地面反力の1.04倍以上であり、以前の肢の領域と現在の肢の領域との平均のYの位置の差が5未満であること、(2)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、以前の肢の領域と現在の肢の領域との平均のYの位置の差が10未満であること、(3)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、以前の肢の地面反力のピークが現在の肢の地面反力のピークの1.15倍よりも大きいこと、および(4)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が前肢であり、現在の領域の地面反力の傾きのカウンタが3よりも大きいこと、の条件セットのいずれか1つが満たされた場合に、検査した肢を後肢と明確に指定するステップを含む、請求項55に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  57. ステップ(e)はさらに、検査した肢の領域が1本の肢のものであり、前記検査した肢の前の肢が前肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の領域と現在の肢の領域との平均のYの位置の差が5以上である場合に、肢のデータを前肢のものと指定するステップを含む、請求項56に記載の、機器を備え付けた力検知用床部を横切る複数の動
    物の肢を個別化するための方法。
  58. ステップ(e)はさらに、(1)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の平均地面反力が、前記検査した肢の平均地面反力の1.05倍よりも大きく、以前の肢の領域と現在の肢の領域との平均のYの位置の差がゼロ以下であること、(2)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、以前の肢の平均地面反力が、現在の肢の平均地面反力の1.02倍よりも大きく、現在の肢と以前の肢との平均のYの位置の差が−15以下であること、(3)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、以前の肢の平均地面反力が、現在の肢の平均地面反力の1.1倍よりも大きいこと、および(4)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、以前の肢の地面反力のピークが現在の肢の地面反力のピークの1.1倍よりも大きいこと、の条件セットのいずれか1つが満たされた場合に、検査した肢を前肢と指定するステップを含む、請求項56に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  59. ステップ(e)はさらに、(1)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、前記検査した肢の前の肢が前記プレートの端部に隣接せず、前記検査した肢の前の肢が前記プレートの開始部分に隣接せず、以前の肢の平均地面反力が、前記検査した肢の平均地面反力の1.05倍以下であり、以前の肢の領域と現在の肢の領域との平均のYの位置の差がゼロよりも大きいこと、(2)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、以前の肢の平均地面反力が、現在の肢の平均地面反力の1.05倍以上であり、現在の肢と以前の肢との平均のYの位置の差が40以上であること、および(3)前記検査したlimbzoneが1本の肢を有しており、前記検査した肢の前の肢が後肢であり、現在の肢と以前の肢との平均のYの位置の差が40以上であること、の条件セットのいずれか1つが満たされた場合に、前記検査した肢を後肢と指定するステップを含む、請求項56に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
  60. ステップ(f)はさらに、(1)現在の肢の1つ前の肢が後肢であり、現在の肢が前肢であり、現在の肢の前の肢の平均のYの位置が、現在の肢の平均のYの位置よりも大きいこと、(2)現在の肢の前の肢が後肢であり、現在の肢が前肢であり、現在の肢の開始時刻と現在の肢の前の肢の終了時刻との差が0.5秒よりも大きいこと、(3)検査した領域内の肢の数が1であり、現在の肢の前の肢が前記プレートの開始部分から5インチ以内にあり、現在の肢の前の肢の平均のYの位置と現在の肢の平均のYの位置との差が15よりも大きいこと、および(4)現在の肢の前の肢が後肢であり、前記現在の肢が前記プレートの前端部から約1インチ以内にあり、現在の肢の前の肢の平均のYの位置が、現在の肢の平均のYの位置よりも大きいこと、の条件セットのいずれか1つが満たされた場合に、検査した肢の領域を新規の牛のものと指定するステップを含む、請求項55に記載の、機器を備え付けた力検知用床部を横切る複数の動物の肢を個別化するための方法。
JP2005510038A 2002-12-23 2003-12-23 動物の特性を動的に記録および分析するための方法およびシステム Expired - Fee Related JP4579828B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US43532002P 2002-12-23 2002-12-23
US47388603P 2003-05-29 2003-05-29
PCT/US2003/040833 WO2004059620A2 (en) 2002-12-23 2003-12-23 Method and system for dynamic recordation and analysis of animal characteristics

Publications (3)

Publication Number Publication Date
JP2006512095A true JP2006512095A (ja) 2006-04-13
JP2006512095A5 JP2006512095A5 (ja) 2007-02-15
JP4579828B2 JP4579828B2 (ja) 2010-11-10

Family

ID=32685384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005510038A Expired - Fee Related JP4579828B2 (ja) 2002-12-23 2003-12-23 動物の特性を動的に記録および分析するための方法およびシステム

Country Status (8)

Country Link
US (1) US6916295B2 (ja)
EP (1) EP1593118B1 (ja)
JP (1) JP4579828B2 (ja)
AU (1) AU2003303441B2 (ja)
CA (1) CA2511427C (ja)
MX (1) MXPA05006829A (ja)
NZ (1) NZ540829A (ja)
WO (1) WO2004059620A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008188092A (ja) * 2007-02-01 2008-08-21 Mitsubishi Chemicals Corp データ処理方法,データ処理装置及びデータ処理プログラム

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7311675B2 (en) * 2003-12-10 2007-12-25 Georgia Tech Research Corporation Systems and methods for mobile activity monitoring
US7619522B2 (en) 2004-11-17 2009-11-17 Destron Fearing Corporation Radio frequency animal tracking system
US20070103314A1 (en) * 2004-11-17 2007-05-10 Geissler Randolph K Radio frequency animal tracking system
JP4774483B2 (ja) * 2005-02-10 2011-09-14 バイセン株式会社 脚状態診断システムとその診断方法
CA2675983C (en) * 2007-01-21 2015-06-23 Gt Acquisition Sub, Inc. Animal management system including radio animal tag and additional transceiver(s)
US7978079B2 (en) * 2007-10-12 2011-07-12 Destron Fearing Corporation Electronic tag
GB0813778D0 (en) * 2008-07-28 2008-09-03 Delaval Holding Ab Monitoring animal condition
US9636046B2 (en) * 2009-02-24 2017-05-02 Step Analysis Llc Diagnosis system and method
US9186091B2 (en) 2011-07-11 2015-11-17 Litecure, Llc Systems and methods of analyzing stance of animals
AU2012319199B2 (en) 2011-10-06 2017-06-01 Delaval Holding Ab Method and apparatus for detecting lameness in livestock
US8363891B1 (en) * 2012-03-26 2013-01-29 Southern Methodist University System and method for predicting a force applied to a surface by a body during a movement
WO2014153650A1 (en) * 2013-03-28 2014-10-02 Polyvalor, Limited Partnership Method and system for decomposing superimposed ground reaction forces into individual force profiles
US10304342B2 (en) * 2016-11-08 2019-05-28 Ge Aviation Systems Llc Ground-based data acquisition system
CA3059873A1 (en) * 2017-04-20 2018-10-25 Step Analysis Llc Multidimensional acceleration and/or force gait analysis system for diagnosis
JP7104563B2 (ja) * 2018-06-08 2022-07-21 シャープ株式会社 動物識別装置、動物識別装置の制御方法およびプログラム
CN110987264A (zh) * 2019-12-07 2020-04-10 吉林大学 一种简易山羊蹄足接触测试装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5299454A (en) * 1992-12-10 1994-04-05 K.K. Holding Ag Continuous foot-strike measuring system and method
US20020055691A1 (en) * 2000-05-30 2002-05-09 Uri Tasch Method and apparatus for detecting lameness in animals

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4195643A (en) * 1976-12-27 1980-04-01 Massachusetts Institute Of Technology Diagnostic force analysis system
AU612488B2 (en) * 1988-05-19 1991-07-11 Standard St Sensortechnik Ag Process for studying the mode of locomotion of a living organism
GB9403158D0 (en) * 1994-02-18 1994-04-06 Draper Edward R C Medical apparatus
US6183425B1 (en) * 1995-10-13 2001-02-06 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Method and apparatus for monitoring of daily activity in terms of ground reaction forces

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5299454A (en) * 1992-12-10 1994-04-05 K.K. Holding Ag Continuous foot-strike measuring system and method
US20020055691A1 (en) * 2000-05-30 2002-05-09 Uri Tasch Method and apparatus for detecting lameness in animals
JP2004513613A (ja) * 2000-05-30 2004-05-13 ユニバーシティ オブ メリーランド,ボルチモア カウンティ 動物の歩行障害を発見するための方法及び装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008188092A (ja) * 2007-02-01 2008-08-21 Mitsubishi Chemicals Corp データ処理方法,データ処理装置及びデータ処理プログラム

Also Published As

Publication number Publication date
CA2511427A1 (en) 2004-07-15
JP4579828B2 (ja) 2010-11-10
AU2003303441A1 (en) 2004-07-22
EP1593118A4 (en) 2009-05-13
CA2511427C (en) 2012-03-13
US20040199089A1 (en) 2004-10-07
AU2003303441B2 (en) 2008-08-28
MXPA05006829A (es) 2005-12-05
EP1593118A2 (en) 2005-11-09
US6916295B2 (en) 2005-07-12
WO2004059620A3 (en) 2004-11-04
NZ540829A (en) 2007-01-26
WO2004059620A2 (en) 2004-07-15
EP1593118B1 (en) 2013-03-06

Similar Documents

Publication Publication Date Title
JP4579828B2 (ja) 動物の特性を動的に記録および分析するための方法およびシステム
US20220125322A1 (en) Methods and Systems for Determining Abnormal Cardiac Activity
CN107153871B (zh) 基于卷积神经网络和手机传感器数据的跌倒检测方法
US20200034739A1 (en) Method and device for estimating user's physical condition
JP2004513613A (ja) 動物の歩行障害を発見するための方法及び装置
KR102045741B1 (ko) 반려동물 건강관리데이터 제공장치, 방법 및 프로그램
CN107669278B (zh) 运动状态识别方法和系统、动物行为识别系统
Nóbrega et al. Assessing sheep behavior through low-power microcontrollers in smart agriculture scenarios
CN107403188A (zh) 一种水质评价方法及装置
KR102265809B1 (ko) 가속도센서를 이용한 가축 행동패턴 검출 방법 및 장치
Wang et al. Identification and classification for sheep foraging behavior based on acoustic signal and deep learning
CN109982088B (zh) 图像处理方法及装置
CN111276133B (zh) 音频识别方法、系统、移动终端及存储介质
CN106021857A (zh) 一种健康诊断系统及方法
Achour et al. Classification of dairy cows’ behavior by energy-efficient sensor
Godfrey et al. Trypanosome co-infections increase in a declining marsupial population
CN116630602A (zh) 一种基于改进YOLOv5算法的机械臂抓取目标物体检测方法
KR20170048108A (ko) 객체 및 상황 인지 방법 및 시스템
CN114492657A (zh) 植物疾病分类方法、装置、电子设备及存储介质
Naeini et al. Action Recognition of Insects Using Spectral Clustering.
CN114491410A (zh) 运动模式的识别方法、系统、智能穿戴设备及存储介质
CN110517783B (zh) 模型训练方法、装置以及心脏疾病诊断装置、设备、介质
Kora et al. Detection of bundle branch block using bat algorithm and Levenberg Marquardt neural network
Yang et al. Recognizing the rooting action of prepartum sow in free-farrowing pen using computer vision
Zhao et al. Improved Sensor-Based Animal Behavior Classification Performance through Conditional Generative Adversarial Network

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061222

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100308

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100803

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100826

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees