一種基於FPGA的母豬分娩智能檢測系統以及方法與流程
2023-05-29 01:57:41 2

本發明涉及畜禽設施福利養殖、無線網絡通信技術、FPGA技術及機器視覺技術領域,具體地講是一種基於FPGA的母豬分娩檢測系統。
背景技術:
隨著越來越多的發達國家將動物福利與國際貿易緊密掛鈎,運用動物福利法對國際貿易施加影響,動物福利壁壘已經成為繼綠色壁壘之後嚴重影響我國畜禽產品出口的一道新的壁壘。畜禽的福利養殖除了為畜禽提供良好的養殖環境外,還要及時獲取畜禽的行為並進行分析,一旦發現異常情況及時採取措施,以免造成更大的經濟損失,同時減少畜禽因生病等異常情況所帶來的痛苦或死亡是實現畜禽福利養殖的基本要求。
目前無線網絡通信、視頻監控等技術已經在設施養殖領域有所應用,但國內目前尚未有利用FPGA和機器視覺技術進行母豬分娩檢測的研究報導,傳統養殖方式中容易出現因疏忽而造成仔豬死亡的現象,使得精細養殖和設施福利養殖還沒有顯現出巨大的經濟效益。因此,對於母豬分娩準確、實時地檢測,以及仔豬的出生預警和實時傳輸成為當下發展的解決問題。
技術實現要素:
本發明的目的是針對母豬分娩時的智能檢測問題,提出一種基於FPGA的母豬分娩智能檢測系統。
本發明的技術方案是:
一種基於FPGA的母豬分娩智能檢測系統,它包括:視頻圖像採集模塊、視頻圖像處理模塊、無線通信模塊以及後臺伺服器;
所述的視頻圖像採集模塊由攝像頭和視頻編碼晶片組成,用於採集母豬的視頻圖像數據;
所述的視頻圖像處理模塊基於FPGA構成,對前述視頻圖像數據進行處理,進行母豬與仔豬的目標分割,識別母豬的分娩狀況;
所述的無線通信模塊採用3G模塊,用於將視頻圖像處理模塊的處理結果傳輸到後臺伺服器進行存儲,同時把識別結果發送到飼養員的手機上,通知飼養員進行處理。
一種基於FPGA的母豬分娩智能檢測方法,應用基於FPGA的母豬分娩智能檢測系統,它包括以下步驟:
S1、採用視頻圖像採集模塊,獲取母豬的視頻圖像信息,並且發送至視頻圖像處理模塊;
S2、在視頻圖像處理模塊中,對視頻圖像信息進行預處理,然後對母豬與仔豬的進行目標分割;對首頭仔豬的出生進行目標識別,從而獲取母豬的分娩狀況;
S3、視頻圖像處理模塊通過無線通信模塊將母豬的分娩狀況傳輸到後臺伺服器進行存儲,同時把母豬的分娩狀況發送到飼養員的手機上,通知飼養員進行處理。
本發明的步驟S2具體包括以下步驟:
S2-1、對視頻圖像數據進行預處理,包括邊緣檢測處理、二值化、濾波與消噪處理,得到預處理的圖像;
S2-2、對預處理的圖像中具有相同像素值且位置相鄰的前景像素點組成的圖像區域進行標記,得到若干個大小不同的連通區域,對各連通區域的面積進行排序,獲取最大連通區域;
採用團序列檢測方法,分割出母豬與新生仔豬的目標區域,獲取母豬的分娩狀況。
本發明的步驟S2-2中,團序列檢測方法具體為:
對於最大連通區域進行逐行掃描,將每一行中連續的白色像素組成的序列作為一個團序列,標記團序列的起點、終點及其所在行數;記團序列的起點為Ts,團序列的終點為Te,對每行中的各團序列進行拼接,則每行的總團序列長度為ΔTi:
其中:i表示行號,n表示總行數,繪製ΔTi曲線,將ΔTi的長度突變的點作為拐點位置,前述拐點位置的橫坐標為分割行,將前部分總團序列長度大於前述分割行總團序列長度的部分進行區域分割,保留行號大於前述分割行行號的剩餘部分作為仔豬待檢測圖像;
採用前述團序列檢測方法對母豬目標分割後的仔豬待檢測圖像進行處理,得到每行的總團序列長度為ΔTj,j表示仔豬待檢測圖像的行號,計算仔豬待檢測圖像各行的團序列長度的總和∑Tj;將前述總和∑Tj與設定的閾值進行比較,如果總和∑Tj大於設定的閾值,則判斷有仔豬存在,否則,無仔豬存在。
本發明的有益效果:
本發明能夠對母豬進行視頻圖像檢測,無需人工值守觀看視頻,分析記錄母豬的行為,能夠及時發現分娩等突發情況並通知飼養員採取相應措施,減少養殖廠因突發情況處理不當造成的損失,有效提高了養殖人員的工作效率,降低勞動強度。
本發明的圖像採集與無線傳輸系統的設計有效利用了FPGA和3G無線通信技術的特性,實現了快速採集圖像的功能,並通過3G無線網絡傳輸到遠程伺服器。系統能夠穩定可靠地運行,無丟幀現象,傳輸速率滿足數據上傳的實時性要求。
本發明的系統採用無線通信網絡,避免了傳統布線帶來的成本和穩定性上的不足,高度的魯棒性能夠保證本系統長期穩定工作。此外,無線通信網絡具有高度的實時性,方便數據的實時採集,保證系統的工作效率。
本發明結合FPGA、CMOS攝像頭和3G無線通信模塊所設計的母豬分娩圖像採集、處理與無線傳輸系統具備功耗低、成本小、速度快的圖像採集、處理和傳輸的優點。
附圖說明
圖1是本發明的流程圖。
圖2是本發明的電路圖。
具體實施方式
下面結合附圖和實施例對本發明作進一步的說明。
如圖1所示,一種基於FPGA的母豬分娩智能檢測系統,它包括:視頻圖像採集模塊、視頻圖像處理模塊、無線通信模塊以及後臺伺服器;
所述的視頻圖像採集模塊由攝像頭和視頻編碼晶片組成,用於採集母豬的視頻圖像數據;
所述的視頻圖像處理模塊基於FPGA構成,對前述視頻圖像數據進行處理,進行母豬與仔豬的目標分割,識別母豬的分娩狀況;
所述的無線通信模塊採用3G模塊,用於將視頻圖像處理模塊的處理結果傳輸到後臺伺服器進行存儲,同時把識別結果發送到飼養員的手機上,通知飼養員進行處理。
一種基於FPGA的母豬分娩智能檢測方法,應用基於FPGA的母豬分娩智能檢測系統,它包括以下步驟:
S1、採用視頻圖像採集模塊,獲取母豬的視頻圖像信息,並且發送至視頻圖像處理模塊;
S2、在視頻圖像處理模塊中,對視頻圖像信息進行預處理,然後對母豬與仔豬的進行目標分割;對首頭仔豬的出生進行目標識別,從而獲取母豬的分娩狀況;
S3、視頻圖像處理模塊通過無線通信模塊將母豬的分娩狀況傳輸到後臺伺服器進行存儲,同時把母豬的分娩狀況發送到飼養員的手機上,通知飼養員進行處理。
本發明的步驟S2具體包括以下步驟:
S2-1、對視頻圖像數據進行預處理,包括邊緣檢測處理、二值化、濾波與消噪處理,得到預處理的圖像;
S2-2、對預處理的圖像中具有相同像素值且位置相鄰的前景像素點組成的圖像區域進行標記,得到若干個大小不同的連通區域,對各連通區域的面積進行排序,獲取最大連通區域;
採用團序列檢測方法,分割出母豬與新生仔豬的目標區域,獲取母豬的分娩狀況。
本發明的步驟S2-2中,團序列檢測方法具體為:
對於最大連通區域進行逐行掃描,將每一行中連續的白色像素組成的序列作為一個團序列,標記團序列的起點、終點及其所在行數;記團序列的起點為Ts,團序列的終點為Te,對每行中的各團序列進行拼接,則每行的總團序列長度為ΔTi:
其中:i表示行號,n表示總行數,繪製ΔTi曲線,將ΔTi的長度突變的點作為拐點位置,前述拐點位置的橫坐標為分割行,將前部分總團序列長度大於前述分割行總團序列長度的部分進行區域分割,保留行號大於前述分割行行號的剩餘部分作為仔豬待檢測圖像;
採用前述團序列檢測方法對母豬目標分割後的仔豬待檢測圖像進行處理,得到每行的總團序列長度為ΔTj,j表示仔豬待檢測圖像的行號,計算仔豬待檢測圖像各行的團序列長度的總和∑Tj;將前述總和∑Tj與設定的閾值進行比較,如果總和∑Tj大於設定的閾值,則判斷有仔豬存在,否則,無仔豬存在。
分娩檢測系統由圖像採集終端和遠程伺服器組成,伺服器與圖像檢測終端通過3G無線網絡進行圖像傳輸。
圖像檢測終端主要有CMOS攝像頭、FPGA和3G模塊組成,實現圖像採集、彩色恢復、圖像分割、運動檢測、圖像壓縮和3G無線發送。FPGA按功能劃分為OV控制模塊、SDRAM控制模塊、彩色恢復模塊、圖像分割模塊、運動檢測模塊、圖像壓縮模塊和3G模塊控制模塊。遠程伺服器通過接入Internet實現圖像的接收、資料庫管理和網絡發布。
各個單元型號功能說明
系統功能說明:
養殖對象視頻採集與仔豬識別報警;
遠程伺服器通過網口對FPGA設置IP,然後可以對不同IP的監測點發送開始監測命令,然後等待接收視頻數據;FPGA接收到命令後,對命令進行解析,控制視頻編碼器CMOS進行視頻採集;CMOS把模擬視頻信號轉化為數字視頻信號,儲存在SDRAM中,然後傳輸給FPGA對視頻圖像進行去噪、濾波、形態學運算等處理和仔豬目標識別分析;FPGA通過3G控制模塊把處理後的視頻圖像信號傳輸給WCDMA模塊,把分析得到的分娩信息傳輸給UART;WCDMA模塊通過3G傳輸給遠程伺服器。
遠程伺服器
遠程伺服器將控制人員操作軟體獲取的控制指令通過socket通信技術發送至網絡中轉站,接收到網絡中轉站發回的數據以後,提供對數據的預處理、存儲、報警等功能。同時遠程伺服器還提供對數據的網絡發布功能,採用B/S架構將數據以網頁的形式對外發布,用戶可以在Internet中的任何一臺計算機或者PDA上訪問伺服器查看數據。
具體實施時:
系統概要設計(總體設計):根據系統的性能要求初步提出系統的總體架構,從功能對系統進行模塊劃分。本系統中主要分為四個模塊,分別為視頻採集模塊、視頻圖像處理模塊、網絡通信模塊和遠程伺服器;之後再對每個模塊進行軟硬體設計。
硬體詳細設計:根據系統概要設計的要求初步繪製出系統所涉硬體的整體框圖,然後再依據各個模塊劃分為各個子框圖,對每個子框圖進行功能和需求分析以及接口設計,分別對每個子框圖進行硬體選型,而後分別繪製各個子框圖的電路原理圖,再根據原理圖繪製PCB圖,這就完成了系統硬體的初步設計。
硬體生產和焊接:根據電路PCB圖生產出電路PCB板,然後再對PCB板進行焊接,焊接過程要做到模塊化、邊焊邊測等,儘量避免短路、虛焊和漏焊等錯誤,提高系統的調試效率。
硬體測試:PCB板焊接完畢,要對其進行調試,先依據電路原理圖和PCB圖,用萬用表等儀器對電路連接進行測試,保證各器件之間連接正確,然後,編寫測試程序測試硬體是否工作正常,根據結果,局部調整硬體設計,以使硬體處於最佳工作狀態,為後面的軟體功能實現提供保證。
本發明未涉及部分均與現有技術相同或可採用現有技術加以實現。