段恩澤 方 鵬 王紅英 金 楠
(中國農業大學工學院, 北京 100083)
在養殖福利化和精細農業的背景下,規范化養殖成為提高養殖效率的重要保證[1]。減少人力勞動對養殖過程的直接干涉、使用智能機械進行標準化生產管理是目前養殖業的主要發展趨勢。在肉兔養殖過程中,掌握種兔生長過程中的體質量變化趨勢有利于在生產中及時淘汰產肉低的肉兔,從而提高育種過程中的選種效率[2]。肉兔養殖規模較大,傳統稱量方式主要依靠電子秤進行人工稱量,不僅費時、費力,還容易使肉兔應激,造成流產、發病等不良影響[3]。
國內外研究表明,動物體質量不僅與表面積有關,還與體積和投影面積有較大的相關性,利用圖像信息估算動物體質量具有可行性[4-6]。目前,利用圖像技術對養殖動物進行無損檢測的研究主要集中于豬、雞等養殖動物,有關肉兔的圖像識別檢測技術未見報道。
勞鳳丹等[7]利用傳統的圖像分割與濾波處理得到蛋雞特征圖像輪廓,計算相關系數,并探究蛋雞行為對相關系數的影響,從而對蛋雞的6種形態狀況進行分析。畢敏娜等[8]以雞舍散養黃羽肉雞為分割目標,利用色差信息實現了快速分割,其正確率達到了86.3%,優于傳統的色彩聚類模型。張弛等[9]采集了豬分娩的視頻信息,在提取豬分娩連續的圖像信息后,利用團序列檢測算法識別大豬和仔豬,實現了仔豬的識別。上述研究基于圖像顏色、圖像特征對目標進行識別,具有較高的分割精確度,但對所采集的圖像質量要求較高,并依賴人工對圖像進行后處理,在實際應用中,分割粘連目標和多數量目標時的適用性較差。
隨著人工神經網絡研究的不斷深入,基于卷積神經網絡圖像識別技術的精確性和檢測速度也不斷提高。沈明霞等[10]采用YOLO v3網絡模型,通過卷積算法以整幅圖像為興趣域,利用特征金字塔網絡算法定位識別仔豬目標。高云等[11]建立了PigNet網絡模型,通過神經網絡訓練,實現了粘連群豬的圖像分割。卷積神經網絡快速、準確地進行目標識別的優勢為大規模識別和讀取個體養殖動物信息提供了可能性。
目前,關于肉兔圖像識別和圖像信息處理的研究鮮見報道。為了快速準確估算肉兔體質量信息,并降低肉兔的應激反應,本文以兔舍內不同年齡段的肉兔為研究對象,提出一種基于深層卷積神經網絡算法的肉兔體質量估測方法。該方法不用約束肉兔的姿態,僅依賴于2D圖像特征和養殖參數即可對肉兔體質量進行估測。基于Mask R-CNN圖像識別技術構建肉兔體尺特征提取模型,得到3種基于圖像的特征參數,隨后構建4輸入、1輸出的BP神經網絡,并進行訓練,從而實現對目標體質量的估測。
于2019年12月20—25日對河南省濟源市陽光兔業科技有限公司的祖代母兔進行體質量和圖像采集。肉兔品種為伊普呂兔,按日齡和批次分別飼養在不同階梯式兔舍中。將不同日齡組的肉兔利用電子秤依次進行稱量,并記錄體質量數據,隨后將肉兔放置在寬40 cm、長80 cm的標準周轉箱中,使用三腳架和攝像頭采集肉兔的俯視圖,每拍攝一次后等待10~30 s,在肉兔自然變換姿勢后再次采集圖像,每只肉兔共采集3幅不同姿勢的圖像。其中,15日齡的肉兔共30只,30日齡的肉兔共35只,60日齡的肉兔共35只,90日齡的肉兔共35只,180日齡的肉兔共35只,300日齡的肉兔共33只,360日齡的肉兔共30只。采樣攝像頭為海康威視MV-CA020-10GC型,分辨率為1 624像素×1 240像素,俯測高度為150 cm,圖像尺寸為1 920像素×1 200像素,存儲為JPG格式。
相比于利用顏色空間差異[7]和傳統機器學習算法進行圖像識別和目標分割,卷積神經網絡由數據本身特征驅動,能夠簡化訓練流程、提高識別速度與精度。在已有的卷積神經網絡研究的基礎上[12-13],Mask R-CNN在BBOX識別分支上增加了并行全卷積網絡(Fully convolutional network, FCN)層,在FCN層內引入了用于預測目標掩膜(Object mask)的分支,實現高質量的語義分割和實例分割[14]。本研究基于Mask R-CNN,設計了依據面積與體質量之間關系估測肉兔體質量的預測模型。
基于Mask R-CNN的肉兔圖像分割模型包括特征提取網絡、特征組合網絡、區域提取網絡、RoIAlign和功能性網絡5部分,如圖1所示。
特征金字塔網絡(Feature pyramid network, FPN)將不同深度的特征圖重新組合[15],使新的特征圖包含不同深度的特征信息。本文使用ResNet101[16]作為骨架網絡,根據特征圖的尺寸分為5個階段。取后4個階段的最后一層輸出4個特征圖,分別記為C2、C3、C4、C5。FPN的橫向連接將這4個特征圖組合成新特征圖P2、P3、P4、P5、P6,其中P6由P5通過池化得到。特征組合處理過程為
(1)
式中 conv——卷積函數
sum——逐元素對位求和函數
upsample——特征圖長寬乘2的上采樣函數
pooling——步長為2的池化函數
Ci——每個階段輸出的第i幅特征圖
Pi——第i幅新特征圖
P′i——橫向連接組合特征圖
Ui——上采樣結果特征圖
P5——第5幅新特征圖
P6——第6幅新特征圖
區域提取網絡(Region proposal network, RPN)利用FPN得到的特征圖表達分割物體位置的候選框。通過回歸計算,將特征圖P2、P3、P4、P5、P6中的每個特征向量計算得出一個5n維的向量,以描述n個錨的修正值。每個錨的修正值為Δx、Δy、Δh、Δw、p。p為前后景置信度。對于特征圖P2、P3、P4、P5、P6中的每個點,均預設了不同寬、高的錨,然后利用RPN網絡回歸得到的修正值修正每個錨的中心坐標值、寬和高。RPN的作用是幫助更快地選出感興趣區域(RoI)。
Mask R-CNN使用RoIAlign算法對RoI進行分割。相比于RoIPooling算法[17],RoIAlign算法取消了整數化操作,利用雙線性插值法獲得坐標為浮點數的像素點上的像素值,然后對每個單元格內的采樣點進行maxpooling操作,從而得到最終的RoIAlign結果,解決了RoIPooling兩次量化造成的區域不匹配問題,提高了檢測模型的準確性。
該兔體分割網絡的多任務損失值主要包括3部分,計算公式為
L=Lcls+Lbox+Lmask
(2)
(3)
(4)
(5)
式中L——損失值
Lcls——分類損失值
Lbox——回歸損失值
Lmask——分割損失值
Ncls——訓練RPN中選擇錨的數量
pi——錨預測為目標的概率
λ——權重平衡參數
Nreg——參與回歸的正負樣本總數
ti——錨在RPN訓練階段的預測偏移量
Sm——掩膜尺寸
Mask R-CNN中的class分支、box分支和mask分支共同參與卷積計算得到RoI,其中,分類損失值Lcls預測目標的類別,如檢測出RoI為定義的肉兔類,則在分割RoI類時只使用肉兔類的交叉熵損失值作為誤差進行計算,其他類別的交叉熵損失值不參與該RoI的損失計算,從而避免了類別間的競爭。
回歸損失值Lbox控制目標的回歸框的位置信息,用于返回預測錨的偏移量與實際錨的偏移量之間的關系。
分割損失值Lmask對每個RoI的目標進行分割,并生成對應的掩膜。
對于每個RoI,mask分支對K個類別中每個類別都生成一個m×m尺寸的掩膜。在得到預測掩膜后,對掩膜上的每個像素點求Sigmoid函數值,得到的結果作為Lmask的輸入之一。
本文建立的肉兔圖像分割模型通過卷積計算得到包含兔體的感興趣區域,Lcls通過對圖像的卷積計算將RoI的類別定義為肉兔,Lbox計算得肉兔區域的回歸框的位置坐標,Lmask計算得平均二值交叉熵損失值,通過對掩膜中每個像素點求Sigmoid函數值來對回歸框進行掩膜預測,將預測出的掩膜輪廓信息存儲在不同層深度,組合后使用顏色填充來表示預測出的肉兔類目標。
2.1.1圖像預處理
預處理主要包括圖像的剪裁、數據增廣和降噪。將原圖剪裁至512像素×512 像素以簡化運算量,采用旋轉90°、180°和鏡像等方式,將采集到的700幅肉兔圖像擴增至1 400幅,作為肉兔圖像分割網絡的數據集,并利用高斯模糊對全部圖像進行降噪處理。將肉兔圖像分割網絡數據集的70%作為訓練集,30%作為驗證集,驗證集用于檢驗訓練出的網絡精度。
2.1.2兔體分割網絡權重文件訓練
將預處理后的肉兔圖像導入開源標注軟件Labelme中制作訓練集。標注肉兔的輪廓為獨立連通域,標簽命名為rabbit。解析標注好的.json文件,獲得深度為8的圖像文件,由此得到肉兔圖像分割網絡的訓練集。
使用COCO數據集(Common objects in context)上已經訓練好的Mask R-CNN模型權重對肉兔圖像分割網絡進行遷移學習。COCO數據集是微軟提供的開源、大型、豐富的物體檢測、分割和字幕數據集,其中包含了大象、貓、狗、馬等動物的大量常見特征,在此基礎上對肉兔的特征進行遷移訓練,能夠減少訓練時間,并提高訓練效果,使訓練效率大大提升。最后得到包含肉兔圖像特征參數的兔體預測權重文件。
2.1.3兔體輪廓提取
使用2.1.2節得到的權重文件對驗證集進行實例分割。采用準確率和精確率指標評價該模型的分割結果,并根據結果調整RPN的錨尺寸和學習率等參數重新訓練,直到分割網絡性能達理想程度。
得到理想準確率和精確率模型后,對1 400幅肉兔圖像分割網絡數據集進行旋轉和鏡像,得到與該數據集不同的新數據集共1 400幅圖像。新數據集用于獲取基于肉兔圖像分割網絡的圖像特征,為下一步體質量估測提供數據支撐。對新數據集進行實例分割,分割出的文件包含了背景、兔體信息、識別框體和準確率等信息,去除上述信息后,將背景和掩膜輪廓填充為不同顏色,提取到單只肉兔的掩膜圖像,并以此處得到的掩膜圖像作為后續處理對象。兔體掩膜提取過程如圖2所示。
2.2.1投影面積提取
圖像中的肉兔在耳朵、腿和尾巴等部位具有不同的姿態,在2維層面上產生的形狀對投影面積的影響很大,例如收起耳朵和展開耳朵得到的投影面積完全不同。而尾巴、耳朵和兔腿的體質量遠小于身體和頭部的體質量,因此在提取肉兔投影面積時必須去除耳朵、腿和尾巴的干擾。
開運算能夠去除圖像的突起部分,使用尺寸為s×s的圓形核(Kernel)對肉兔掩膜圖像中凸出的腿、耳朵、尾巴等部位進行去除,s值越大,去除掉的突出區域的像素就越多。圓形核如圖3所示。
需要分割的兔體具有不同的形狀和尺寸,難以選擇出適用于所有情況的s值。因此針對不同尺寸的肉兔,應當選擇不同大小的核。由于腿、耳朵和尾巴的大小與肉兔整體的大小有關,可以將s與兔體原輪廓的像素值相關聯。首先設定s的初始值以去除干擾,再根據產生的結果調整初始值。結果表明,當s為兔體面積的1/350時,使用核對不同形狀、不同尺寸的肉兔輪廓進行開運算均能產生良好的去除干擾。圖4b、4c為利用核去除肉兔輪廓中耳朵、腿和尾巴的過程。
去除干擾后的特征圖中,非零像素表示肉兔的相對面積[18-19]。圖像采集條件相同時,由于周轉箱的尺寸和像素點數已知,通過參考周轉箱可以計算肉兔特征圖的實際面積為
(6)
式中SR——肉兔特征圖實際面積
NR——肉兔特征圖像素點數量
SB——周轉箱實際面積
NB——周轉箱像素點數量
2.2.2彎曲度計算
在去除干擾的肉兔掩膜基礎上,提取兔體彎曲度C,作為反映肉兔頭部與身體彎曲或扭曲程度的指標。本文采集的肉兔姿勢為趴臥或四肢著地行走,頭部幾乎不會上下擺動。彎曲度計算過程如下:
(1)通過連續多次開運算不斷縮小輪廓突起部分,根據返回結果調整開運算的核,最終在不明顯改變面積的同時平滑兔體輪廓曲線,減少后續提取骨架的分支干擾。
(2)提取所得輪廓的生態骨架(Morphological skeleton),骨架能夠表示這個形狀的結構,刪除多余的像素點[20],兔體骨架能直接反映兔體的彎曲程度。
(3)計算骨架的凸包,凸包是包含骨架圖散點的最小凸邊形[20],凸包的面積記為Sc。凸包求取過程如圖4c~4f所示,其中骨架圖是寬度為1像素的曲線,為便于展示進行了膨脹處理。
求取凸包的過程表明,骨架的彎曲程度能夠表示兔體的彎曲程度,由骨架得到的凸包面積能夠反映骨架的彎曲程度。不同姿態下的肉兔,身體扭曲程度越大,骨架越彎,形成的凸包面積越大。
同等彎曲程度的肉兔,體型越大,得到的凸包面積越大。為平衡體型差異,將肉兔投影面積記為S,則Sc與S的比值C可以認為與兔體彎曲程度線性相關。C越小,則肉兔彎曲度越小。
2.2.3體長計算
在去除干擾的兔體基礎上,提取肉兔體長Lr表示肉兔的長度。由于同一只肉兔的不同姿勢會造成投影面積的像素值有差異,因此計算體長Lr和彎曲度C能夠幫助后續體質量預測時修正投影面積,提高體質量估測的精度。
兔體可以近似看成一個矩形,矩形長邊的長度可以用來表示體長。在去除耳朵、兔腿和尾巴等干擾因素后,將特征圖進行二值化并繪制最小外接矩形,則最小外接矩形的長邊邊長即兔體體長,如圖5所示。
2.3.1BPNN學習方法和網絡結構
反向傳播神經網絡(Back-propagation neural network, BPNN)的傳播過程主要分為輸入信號的正向傳播和誤差信號的反向傳播[21]。BPNN的運行核心為將期望輸出與網絡輸出進行對比,以對比結果即誤差為依據,按梯度下降算法迭代更新網絡,其網絡結構主要包括輸入層、隱含層和輸出層[22]。本文為探究肉兔投影面積與體質量之間的關系,構建了以直接投影面積S、彎曲度C、體長Lr、日齡M為輸入,對應體質量W為輸出的BP神經網絡。
模型訓練前對輸入輸出指標的數量級進行調整。由于本模型主要利用投影面積S與體質量W的相關性進行體質量預測,而彎曲度C和體長Lr用于調整同一只肉兔姿態不同所造成的像素差異,日齡M用于消除日齡組內的體質量特異性差異,因此投影面積與體質量的直接關聯性強,彎曲度、體長和日齡與體質量的直接關聯性較弱。因此通過單位換算將面積S、體質量W的數量級維持在1~10,彎曲度C、體長Lr和日齡M的數量級維持在0~1,由此建立了輸入輸出指標。
該模型的輸入層節點數為4,輸出層節點數為1。根據Kolmogorov定理[23],隱含層神經元數量l應為
(7)
式中x——輸入層神經元數量
y——輸出層神經元數量
a——1~10之間的常數
因此BPNN的隱含層神經元數量為3~12。本文構建的BPNN拓撲結構示意圖如圖6所示。圖中,φ(·)、τ(·)表示隱含層、輸出層的激活函數,ωij、ωjk及θj、θk分別表示各層權值、閾值。
2.3.2BPNN模型建立
基于Matlab R2016a中的Neural Network Toolbox工具箱構建BPNN。將全部樣本集進行分組,設置訓練集、驗證集和測試集的數據比例分別為8∶1∶1、7∶1.5∶1.5、6∶2∶2。隱含層神經元的數量會直接影響神經網絡對復雜系統的映射能力,目前對于神經網絡隱含層神經元的確定主要根據經驗公式通過試湊法[24]確定,本文選定隱含層神經元參數為4、5、6。訓練算法分別選擇了列文伯格-馬夸爾特法、貝葉斯正則化法和量化共軛梯度法。其余參數設置根據文獻經驗值參考,設置最大迭代次數為200次,學習率為0.1,目標誤差為0.001[25]。
2.3.3模型評價
采用均方誤差(Mean squared error, MSE)和相關系數(R)評價建立的模型性能。
本文處理平臺為便攜式計算機,處理器為Intel Core i5-8300H,主頻為2.3 GHz,8 GB內存,1 TB硬盤,顯卡型號為NVIDA GeForce GTX1060,6 GB顯存。編寫環境為Windows 10 家庭版64位系統,編程語言為Python,采用 TensorFlow 深度學習開源框架。BP神經網絡的編程平臺為Matlab R2016a。
3.1.1肉兔圖像分割網絡性能評價方法
評價肉兔圖像分割網絡性能,主要考察圖像分割準確率、圖像分割完整性和算法運行速度。分割準確率考察模型分類的準確度,分割完整性考察模型分割的實例與實際目標的匹配程度,算法運行速度考察預測速度。
采用平均查準率(Average precision, AP)評價圖像分類準確度。P為查準率,表示分類為正樣本的數量中分類正確的比例。
采用平均像素精度(Mean pixel accuracy, MPA) 評價圖像分割完整性。MPA是圖像分割評估中常用的測量指標,反映正確分割的像素數量在圖像像素數量中的占比。
3.1.2對驗證集的分割性能
計算驗證集的平均查準率和平均像素精度,結果表明,當交并比(IoU)為0.5∶0.95時,平均查準率為94.5%,這表明,兔體分割網絡對圖像目標檢測分類的準確度較高。計算得到的平均像素精度為95.1%,這表明對于分割出的目標,掩膜與實際目標的像素點對應程度較高,即分割出的肉兔目標能夠代表實際肉兔。
3.1.3對不同日齡肉兔的分割性能
日齡影響肉兔的體型和生理性狀,為探究分割模型對不同日齡肉兔的分割性能,將驗證集按日齡分為7組。分別計算不同日齡肉兔的平均查準率和平均像素精度,結果如表1所示。

表1 肉兔圖像分割網絡對不同日齡肉兔分割性能
由表1可知,肉兔分割網絡對于兔體實例分割的平均速度為1.53 s/f,原因主要是硬件配置低,以及采用的ResNet101網絡結構較為復雜。由表1可知,7個日齡組的平均查準率均不小于96%,表明肉兔圖像分割網絡能準確識別不同體型的肉兔。
平均像素精度隨日齡增長而增長,在15日齡時最低,為91.4%,而60日齡之后肉兔的平均像素精度穩定在94.9%~96.1%之間。原因是15日齡的肉兔體型過小,相同相機視距下,15日齡肉兔圖像更為模糊難以分割。但總體來看,肉兔圖像分割網絡對不同日齡肉兔均有較好的分割效果。
3.1.4不同姿態肉兔的分割性能
本文提出的肉兔圖像分割算法對肉兔的姿態不限制,在采樣圖像中表現為肉兔的彎曲度和身體姿態各不相同。圖7為肉兔不同姿態分類。圖7a~7d分別為姿態組A~D。
分別計算4個姿態組的肉兔圖像平均查準率和平均像素精度,結果如表2所示。

表2 肉兔圖像分割網絡對不同姿態肉兔的分割性能
由表2可知,隨著彎曲程度變大,干擾部分越多,AP和MPA有所降低,D組姿態的MPA最低,為93.5%,這是因為形狀過于不規則,輪廓難以精確描述目標。但從整體來看,4個姿態組的分割性能相差較小,均能保持良好的分割效果,因此,兔體分割網絡在分割實例時受姿態的影響較小,對不同姿態的肉兔均有良好的適應性。
3.2.1BP神經網絡預測結果
分析BP神經網絡對圖像提取的特征參數和體質量之間的擬合性能,主要參考神經網絡的均方誤差。將訓練集、驗證集和測試集的數據比例設為8∶1∶1、7∶1.5∶1.5、6∶2∶2,隱含層神經元的數量設定為4、5、6,訓練算法設為列文伯格-馬夸爾特法、貝葉斯正則化法和量化共軛梯度法,使用肉兔圖像分割網絡的980個訓練集的樣本數據對BP神經網絡進行訓練,結果表明,當數據集比例為7∶1.5∶1.5時效果最佳。在7∶1.5∶1.5的數據集比例下,使用不同隱含層神經元數量和不同算法的最終預測結果如表3所示。

表3 不同神經元數量和算法配置的BPNN預測性能
由表3可知,在測試集中,當隱含層神經元數量為6個,訓練算法為列文伯格-馬夸爾特法時,BPNN對數據的擬合程度最高,相關系數R為0.993 91,這表明預測數據與實際數據接近。因此該BPNN能夠正確反映圖像所提取的特征參數與體質量之間的關系。在該BPNN下,驗證集的均方誤差為0.033 6。
保存BPNN模型,使用驗證集數據預測體質量,圖8為本文模型預測值與真實值之間的關系。
由圖8可知,本文模型可以較為準確地預測肉兔體質量,實際體質量與預測體質量的擬合直線的R2為0.985 3,直線斜率為1.004 9,表明本文模型預測的肉兔體質量接近實際值。驗證集中預測體質量與實際體質量平均相差123 g。
3.2.2不同日齡肉兔體質量估測結果
由3.2.1節可知,網絡預測肉兔體質量時,肉兔實際體質量越小,數據點越密集,這表明該網絡的估測精度受肉兔體質量的影響較大。因此,將肉兔按日齡分組,本文模型對不同日齡肉兔的體質量預測結果如表4所示。

表4 不同日齡肉兔的體質量預測結果
其中,平均相對誤差為每個樣本預測體質量和實際體質量之差的絕對值與實際體質量比值的均值,平均相對誤差反映了該日齡組內,體質量預測的誤差。
由表4可知,在不同日齡組內,平均實際體質量和平均預測體質量較為接近,表明本文模型預測體質量的整體效果良好。而日齡越大,平均相對誤差越小,表明本文模型預測成年兔體質量的效果優于幼兔。分析原因,一方面是幼兔體質量增長速度快導致個體之間的差異明顯,而成年兔個體之間的體質量差異小,造成預測不準確。另一方面是由于相同視距下,幼兔圖像的分割效果低于成年兔圖像的分割效果。此外,增加訓練集的樣本數量能夠減小估測誤差。
3.2.3不同姿態肉兔體質量估測結果
為探究不同姿態對體質量預測效果的影響,將肉兔按3.1.4節所述方法分為4個姿態組。本文模型對不同姿態肉兔的體質量預測結果如表5所示。

表5 不同姿態肉兔的體質量預測結果
由表5可知,肉兔的姿態越規則、干擾因素越少,體質量預測的精度越高,而姿態組D的平均誤差最大,一方面原因是姿態組D的肉兔圖像分割性能最差,另一方面,由于姿態組D干擾因素多,所獲得的BP神經網絡輸入值與真實值之間有所差異,降低了預測準確度。但從最終結果看,各姿態組的預測體質量和真實體質量相差較小,能夠在實際養殖中為體質量估測提供幫助。
(1)通過構建面向實際的輸入輸出指標,建立了一種基于Mask R-CNN的肉兔圖像分割方法,并以BPNN算法為預測手段構建了肉兔體質量估測模型。
(2)構建了基于Mask R-CNN的肉兔圖像分割網絡,并對網絡進行了訓練和測試。測試結果表明,當交并比為0.5∶0.95時,肉兔圖像分割網絡對肉兔目標分類準確率為94.5%,對像素分割的精確率為95.1%。對不同日齡肉兔,網絡的分類準確率不小于96%,對像素的分割精確度不小于91.4%。對不同姿態的肉兔,網絡的分類準確率不小于96%,對像素分割的精確率不小于93.5%。網絡對不同日齡和不同姿態的肉兔均具有良好的分割性能。
(3)以肉兔圖像分割網絡的預測結果和采集的對應體質量為數據集,構建了基于BP神經網絡的肉兔體質量估測模型,并對模型進行訓練和測試。結果表明,肉兔體質量估測模型的預測值與真實值具有顯著相關性,擬合相關系數R為0.993 91,均方誤差為0.033 6,預測體質量與實際體質量平均相差123 g。對于不同日齡的肉兔,網絡預測成年兔體質量的效果優于幼兔,平均相對誤差最小為4.29%。對于不同姿態的肉兔,網絡對姿態規則、干擾因素少的肉兔體質量估測效果最佳,平均相對誤差最小為3.37%。本文構建的體質量估測模型對實際生產具有指導意義。