内容の概要:養豚産業にとって、雌豚の分娩は重要なステップです。そのため、子豚の生存率の向上と分娩時の母豚の安全性の確保が重要な課題となっています。既存の AI モニタリング手法には、高額な機器コストや不安定な情報伝達などの問題がありましたが、南京農業大学の研究者は、軽量のディープラーニング手法を使用して、雌豚の分娩プロセスの早期警告と効果的なモニタリングを実現し、コストを削減しながらモニタリングの精度も向上させました。
キーワード:組み込み開発ボード軽量ディープラーニング
この記事は、HyperAI Super Neural WeChat パブリック プラットフォームで初めて公開されました~
私の国の養豚産業は規模では世界第一位ですが、業界全体としては依然として劣悪な飼育基準の問題に直面しています。多くの大規模養豚場にとって、最も重要なことは、子豚の生存率を高めながらコストを削減することです。手作業で監視する従来の方法は難しく、非常に主観的です。母豚の出産時に難産や子豚の窒息などの一連の問題に直面しており、タイムリーかつ効果的な方法でそれらに対処することは困難です。
近年、AI監視はこの問題を解決する重要な手段となっています。その原則のほとんどは、監視のためにクラウド コンピューティングに基づく深層学習に依存しています。ただし、この方法は大量の機器とネットワーク帯域幅を必要とし、制限が厳しく不安定です。
中国養豚網によると、雌豚は分娩前の12~24時間以内にオキシトシンやプロラクチンの影響で営巣行動を示し、姿勢変化の頻度が増加することが多いという。これに基づいて、実験チームは YOLOv5 アルゴリズムを使用して雌豚の姿勢と子豚の誕生を監視するモデルを設計し、NVIDIA Jetson Nano 開発ボードに展開しました。したがって、プロセスは複雑なシナリオで監視および分析でき、低コスト、低遅延、高効率、簡単な実装という特徴があります。
現在の結果は、「埋め込みボード実装に対する雌豚の分娩早期警告と監視」というタイトルで、2023 年 1 月にジャーナル「Sensors」に掲載されました。
用紙のアドレス:
ビデオ データは、江蘇省宿遷市と京江市にある 2 つの繁殖農場から取得したものです。35 頭の周産期雌豚からビデオ データが収集されました。このうち、京江養豚場の11頭の雌豚のデータは2017年4月27日から5月13日まで記録され、宿遷養豚場の24頭の雌豚のデータは2020年6月9日から15日まで記録された。雌豚を特定サイズ(2.2m×1.8m)の分娩台にランダムに配置し、カメラで24時間連続してビデオデータを記録しました。
プロセスは次のとおりです。
次に、データを前処理します。実験チームはまず雌豚の出産前後の1日に撮影した動画を選別し、PythonとOpenCVを使って画像データに加工した。ラベル付けソフトウェアを使用して、12,450 枚の画像内の雌豚の姿勢と生まれたばかりの子豚のデータを手動でラベル付けし、強化しました。, 32,541 枚の画像データを取得してデータセットを作成しました。
データ増強 (データ拡張): ここでは、トリミング、移動、回転、ミラーリング、明るさの変更、ノイズの追加、シャーリングを指します)
このデータセットは、雌豚の 4 つの姿勢 (側臥位、胸骨、立位、座位) と子豚の 5 つのカテゴリに分類されています。トレーニング セット、検証セット、テスト セットの比率は 7:1:2 です。
入力:画像入力
バックボーン:雌豚と子豚の画像特徴の抽出
ネック:画像の特徴の融合
予測:予測 (雌豚と子豚ではサイズが大きく異なるため、この部分では 3 つの異なる特徴マップを使用して大、中、小のターゲット オブジェクトを検出します)
答え:CBSモジュールの詳細
b:Resユニットモジュールの詳細
c:CSP1_X および CSP2_X モジュール構造の詳細
d:SPPFモジュールの詳細構造
実験チームは、NVIDIA が発売した Jetson Nano シリーズ組み込み AI コンピューティング プラットフォームにアルゴリズムを展開し、TensorRT を使用してモデルを最適化しました。これにより、ネットワーク送信中のデータ漏洩の可能性を回避しながら、組み込み開発ボードでの後続の操作のスループットを高め、遅延を低くすることができます。
具体的なパラメータは次のとおりです。
モデルトレーニング環境:Ubuntu 18.04 オペレーティング システム、Intel(R) Xeon(R) Gold 5118 @ 2.30 GHz CPU、NVIDIA Quadro P4000 GPU、8 GB VRAM、64 GB RAM、2 TB ハード ドライブ、PyTorch 1.7.1 および Torchvision 0.8.2 ディープ ラーニングフレームワーク、CUDA バージョン 10.1。
モデル展開環境:ARM に適合した Ubuntu 16.04 オペレーティング システム、4 コア ARM A57 @ 1.43 GHz CPU、128 コア Maxwell アーキテクチャ GPU、4 GB メモリ、JetPack 4.5、Cuda10.2.89、Python 3.6、TensorRT 7.1、Opencv 4.1.1、CMake 3.21。 2 ディープラーニング環境。
モデルパラメータ:(1) YOLOv5 トレーニングの場合、エポック 300、learning_rate 0.0001、batch_size 16 を設定します。(2) TensorRT 最適化ネットワークの場合、batch_size は 1、精度 fp16 です。
最後に、実験チームは精度、再現率、検出速度などの指標を使用して、さまざまなアルゴリズムのパフォーマンスを評価しました。
で、精度と再現率を使用して、すべてのカテゴリのデータを検出するアルゴリズムの能力を測定できます。、雌豚の 4 つの姿勢 (側臥位、胸骨臥位、立位、座位) と生まれたばかりの子豚を含みます。モデルのサイズと検出速度は、アルゴリズムが組み込みデバイスへの展開に適しているかどうかを測定するために使用されます。
計算式は次のとおりです。
TP:陽性サンプルの正しい予測の数
FP:陽性サンプルに対する誤った予測の数
フネ:負のサンプルに対する誤った予測の数
実験チームは、モデル トレーニングの 300 エポックで、反復サイクルが増加するにつれて、精度と再現率は一般に上昇傾向を示します。同時に、次のこともわかります。データ拡張後の YOLOv5s モデルの精度と再現率は常に高くなります。
答え:精度
b:想起
オレンジ色の線:データ強化後の YOLOv5s モデルの精度/再現率
青線:データ拡張なしの YOLOv5s モデルの精度/再現率
実験では、すべてのカテゴリを検出するアルゴリズムの能力を評価するために平均精度 (mAP) が使用されました。YOLOv5s アルゴリズムを評価する際、実験チームは 2 つのアルゴリズム YOLOX-nano と NanoDet-m のパフォーマンスも比較しました。その結果、YOLOX-nano と NanoDet-m の検出速度は YOLOv5s よりわずかに速いことがわかりました。子豚の見逃しと誤った検出。 YOLOv5s アルゴリズムは、さまざまなサイズのターゲットに対して良好な検出結果をもたらします。画像、ローカル ビデオ、カメラにおけるモデルの平均検出速度は、他の 2 つと同等です。さらに、データ拡張された YOLOv5s モデルは、精度と再現率が最も高く、それぞれ 0.982 と 0.937 でした。
モデルの汎化能力と抗干渉能力をテストするために、実験チームはモデルをトレーニングする際に雌豚のうちの 1 頭を「新しいサンプル」として保持し、モデルをテストするためにさまざまな複雑なシーンを含む 410 枚の画像を選択しました。結果は次のようになります。母豚の姿勢の見逃しと誤検出は、主に照明の変化によって影響されます。つまり、強い光の下での子豚の誕生時間と検出は困難です。異なる色のヒートランプシーンにおけるモデルの機能 影響は小さいです。
左から 2 番目の列:複雑な照明条件下では雌豚の姿勢の見逃し率が最も高くなります
左から 3 つの列:複雑な照明条件下や夜間に加熱ランプが点灯している場合、雌豚の姿勢の誤検出率が高くなります。
左側の 4 列目:複雑な照明条件下や夜間に加熱ランプが点灯している場合、誤って検出される子豚の数が増加します。
左から 5 番目の列:夜間に暖房ランプが点灯しているときは、見逃される子豚の数が多くなります
答え:複雑な照明の下で
b:最初の子豚が生まれます
c:さまざまな色のヒートランプの下で
d:夜間は暖房ランプが点灯します
実験チームがこのモデルを NVIDIA Jetson Nano に展開したところ、雌豚と子豚の姿勢を正確に検出することができました。テスト結果を比較した結果、次のことがわかりました。このモデルは、NVIDIA Jetson Nano に展開された後、精度がわずかに低下しましたが、速度は 8 倍以上向上しました。
左の列:モデル形式
左から 2 番目の列:モデル展開プラットフォームの Quadro P4000 は、比較テストに使用されるプラットフォームです。
組み込み開発ボードでの GPU の使用率により、このモデルの実際のアプリケーション機能が制限されます。以下の図は、組み込み開発ボード上で画像およびビデオ ターゲットを検出するときのモデルの GPU 使用率を示しています。ビデオ ストリームをデコードする必要があるため、ビデオ検出時の GPU 使用率は画像検出時よりも高くなりますが、これはモデルのパフォーマンスには影響しません。テスト結果は、研究中のモデルがさまざまな生産シナリオに適用できることを示しています。
(a) 画像検出における GPU の使用率
(b) ビデオ検出における GPU 使用率
実験チームは22頭の雌豚のデータをテストし、分析しました。分娩前48時間から分娩後24時間までの雌豚の平均姿勢切り替え頻度を求めた。変更の頻度 (下図を参照) に基づいて、チームはモデルの早期警告戦略を次のように要約しました。
1. 姿勢変換回数が上限値(17.5回/時間)を超え、下限値(10回/時間)を下回った場合にアラームを発します。
2. 母豚の日常活動による早期警戒への影響を軽減するため、上限または下限は 5 時間を超える必要があります。
サンプルのテストにより、分娩開始の5時間前に警報を発することができ、警報時刻と実際の分娩時間との誤差は1.02時間です。
(a) 平均ポーズ変換率の範囲
(b) ポーズ遷移の平均頻度
お届けの48時間前から24時間前まで、この期間中、雌豚の活動は通常通りです
お届けの24時間前から1時間前まで、姿勢遷移の頻度は徐々に増加し、その後減少します
配達後1時間から24時間後、姿勢遷移頻度は0に近く、その後わずかに増加します
最初の生まれたばかりの子豚が検出されると、分娩アラームが作動し、「分娩開始! 開始時刻: XXX」と表示されます。さらに、LED ライトの点滅は、ブリーダーが出産中の雌豚を素早く見つけ、手動介入が必要かどうかを判断するのにも役立ちます。
しかし、検出速度が速すぎると、子豚が誤って検出されることがよくあります。したがって、リアルタイムの検出を実現し、誤報を減らすために、実験チームは 「3連続検出方式」。生まれたばかりの子豚が 3 回連続で検出された場合にのみ、子豚であると判断されます。この方法の誤警報の数は 1.59 回で、従来の単一検出方法の場合は 9.55 回です。誤報の数は大幅に減少し、全体の平均精度は 92.9% になりました。
世界の主要な養豚国である我が国の2015年から2018年の年間養豚生産量は約7億頭でした。しかし、近年は豚コレラなどの影響もあり、豚の入荷頭数やと畜頭数は大きく変動し続けています。公表された業界調査データによると、近年、豚の単独飼育戸数は減少し、大規模化が進んでおり、養豚業界ではより効率的かつ集約的な飼育技術の導入が求められています。
この国では、AI養豚はすでに信頼できる製品を持っています。 Alibaba Cloud は、Aibo Machinery および Qishuo Technology と協力して、複数のシナリオのニーズを満たす AI 養豚ソリューションを開始しました。 JD.com の農業および畜産向けインテリジェント農業ソリューションは、AI、モノのインターネット、その他のテクノロジーに基づいており、「豚の顔認識とフルチェーンのトレーサビリティ」を実現しています。 AI によってもたらされる、よりスマートで洗練された農業モデルが徐々に推進されています。
しかし、現在推進されているAI養豚には、コストの高さや操作の煩雑さなど、解決すべき課題が残されている。より多くの養豚場に手を広げてAIを受け入れてもらうにはどうすればよいか、残念ながら、道のりはまだ長いと思います。
この記事は、HyperAI Super Neural WeChat パブリック プラットフォームで初めて公開されました~
参考リンク:
[1]https://www.163.com/dy/article/HCSQN810055360T7.html
[2]https://xueshu.baidu.com/usercenter/paper/show
[3]https://www.aliyun.com/solution/govcloud/ai-pig
[4]http://www.dekanggroup.com/index/news/detail/id/182.html
[5]https://www.thepaper.cn/newsDetail_forward_3695180
[7] Ding Qian、Liu Longshen、Chen Jia、Tai Meng、Shen Mingxia、Jetson Nano に基づく授乳中の子豚のターゲット検出 [J/OL]。