本發(fā)明屬于計算機(jī)視覺領(lǐng)域、深度學(xué)習(xí)、分布式計算,具體涉及一種基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法及系統(tǒng)。
背景技術(shù):
1、公開號為cn101266689a,主題名稱為一種運(yùn)動目標(biāo)檢測方法及裝置,其ipc分類號為g06t7/20、g06k9/00,其技術(shù)方案公開了:
2、1.概率密度值計算:利用當(dāng)前輸入圖像的前若干幀圖像中的像素點(diǎn)的像素值,計算當(dāng)前輸入圖像的像素點(diǎn)的概率密度值。
3、2.閾值比較:將計算出的概率密度值與預(yù)先設(shè)定的閾值進(jìn)行比較,以確定當(dāng)前輸入圖像上的運(yùn)動目標(biāo)圖像。
4、3.差分檢測:包括時間差分檢測和/或背景差分檢測,以提高運(yùn)動目標(biāo)檢測的準(zhǔn)確性。
5、以上發(fā)明專利申請公開的技術(shù)方案為例,隨著深度學(xué)習(xí)技術(shù)的發(fā)展,計算機(jī)視覺已經(jīng)在各個領(lǐng)域得以廣泛應(yīng)用。在區(qū)域生物健康監(jiān)控檢測領(lǐng)域,對于豬只健康狀態(tài)的全時域監(jiān)測和管理,可實現(xiàn)豬只養(yǎng)殖智能化,降低養(yǎng)殖經(jīng)濟(jì)成本和人力管理成本。
6、目前,傳統(tǒng)方法由于設(shè)備算力有限,存在耗時長以及計算資源消耗過大等缺陷,造成監(jiān)控視頻流卡頓等問題。此外,傳統(tǒng)方法還存在模型推理速度過慢、豬只檢測準(zhǔn)確率低等問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明針對現(xiàn)有技術(shù)的狀況,克服以上缺陷,提供一種基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法及系統(tǒng)。
2、本發(fā)明專利申請公開的基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法及系統(tǒng),主要目的在于,致力于解決豬只健康狀態(tài)檢測視頻流輸出不流暢、模型推理速度過慢以及檢測準(zhǔn)確率低等問題。
3、本發(fā)明專利申請公開的基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法及系統(tǒng),另一目的在于,采用基于rk3588芯片的邊緣端計算設(shè)備,搭載npu,可滿足視頻流穩(wěn)定傳輸、ai模型推理加速等需求。
4、本發(fā)明專利申請公開的基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法及系統(tǒng),另一目的在于,設(shè)計視頻流讀取及圖像處理方法,提升視頻流輸出的分辨率及幀率。
5、本發(fā)明專利申請公開的基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法及系統(tǒng),另一目的在于,針對豬只健康狀態(tài),設(shè)計相應(yīng)目標(biāo)檢測算法,并部署在邊緣端計算設(shè)備,以便進(jìn)行推理。
6、本發(fā)明采用以下技術(shù)方案,基于onvif標(biāo)準(zhǔn)的邊緣端檢測系統(tǒng),包括onvif接口模塊、實時視頻傳輸模塊、圖像處理模塊和ai模型推理模塊,其中:
7、onvif接口模塊,利用gsoap工具解析onvif標(biāo)準(zhǔn)的wsdl文檔,以生成代碼庫和服務(wù)接口框架,onvif接口模塊包括設(shè)備發(fā)現(xiàn)接口、設(shè)備管理接口和媒體服務(wù)接口,onvif接口模塊在同一網(wǎng)段內(nèi)進(jìn)行設(shè)備ip搜索、設(shè)備信息管理和視頻流地址配置與獲?。?/p>
8、實時視頻傳輸模塊,通過rtp協(xié)議封裝從攝像頭獲取到的h.264格式的視頻流,通過rtcp協(xié)議和rtsp協(xié)議控制視頻流及其附帶信息的實時傳輸;使用onvif標(biāo)準(zhǔn)封裝視頻流和相關(guān)控制信息;
9、圖像處理模塊,利用ffmpeg工具根據(jù)對應(yīng)的攝像頭rtsp地址獲取視頻流;初始化rmpp參數(shù),設(shè)置視頻流緩沖區(qū)并初始化解碼器參數(shù),將所獲取到的h.264原始視頻碼流進(jìn)行解碼;解碼完成回調(diào),為解碼處理后的數(shù)據(jù)分配空間輸出保存為yuv格式的解碼數(shù)據(jù);通過opencv對圖像進(jìn)行裁剪;
10、ai模型推理模塊,預(yù)處理采集到的豬只數(shù)據(jù);將上述豬只數(shù)據(jù)分別制作成數(shù)據(jù)集,并且將數(shù)據(jù)集分別加載到各個yolov5網(wǎng)絡(luò)中進(jìn)行訓(xùn)練;將訓(xùn)練得到的pt模型轉(zhuǎn)換為onnx模型,再通過rknn-toolkit2工具轉(zhuǎn)換為rknn模型,便于后續(xù)的推理;在邊緣端計算設(shè)備部署rknn模型進(jìn)行推理:采用rknn庫,初始化推理上下文以及rknn模型;調(diào)用rknn模型進(jìn)行推理,疊加圖像框,推理完成后釋放內(nèi)存;在系統(tǒng)調(diào)度設(shè)計上,采用多線程推理方式。
11、作為以上技術(shù)方案的優(yōu)選技術(shù)方案,豬只數(shù)據(jù)包括用于反映豬日?;顒訝顟B(tài)的臉部和體態(tài)數(shù)據(jù)、用于判斷豬是否健康的體溫數(shù)據(jù)以及用于量化豬預(yù)出欄日期的體重數(shù)據(jù)。
12、作為以上技術(shù)方案的優(yōu)選技術(shù)方案,“在系統(tǒng)調(diào)度設(shè)計上,采用多線程推理方式”具體實施為以下步驟;開啟多個線程調(diào)用npu進(jìn)行模型初始化,并開啟多個線程獲取攝像頭視頻流;通過消息隊列在npu的各個子模塊實現(xiàn)視頻流數(shù)據(jù)和推理結(jié)果的高效傳輸,從而使視頻流在1080p分辨率、60fps下保持高準(zhǔn)確度的推理和輸出。
13、本發(fā)明采用以下技術(shù)方案,基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法,包括以下步驟:
14、步驟s1:利用gsoap工具解析onvif標(biāo)準(zhǔn)的wsdl文檔,以生成代碼庫和服務(wù)接口框架,onvif接口模塊包括設(shè)備發(fā)現(xiàn)接口、設(shè)備管理接口和媒體服務(wù)接口,onvif接口模塊在同一網(wǎng)段內(nèi)進(jìn)行設(shè)備ip搜索、設(shè)備信息管理和視頻流地址配置與獲??;
15、步驟s2:通過rtp協(xié)議封裝從攝像頭獲取到的h.264格式的視頻流,通過rtcp協(xié)議和rtsp協(xié)議控制視頻流及其附帶信息的實時傳輸;使用onvif標(biāo)準(zhǔn)封裝視頻流和相關(guān)控制信息;
16、步驟s3:利用ffmpeg工具根據(jù)對應(yīng)的攝像頭rtsp地址獲取視頻流;初始化rmpp參數(shù),設(shè)置視頻流緩沖區(qū)并初始化解碼器參數(shù),將所獲取到的h.264原始視頻碼流進(jìn)行解碼;解碼完成回調(diào),為解碼處理后的數(shù)據(jù)分配空間輸出保存為yuv格式的解碼數(shù)據(jù);通過opencv對圖像進(jìn)行裁剪;
17、步驟s4:預(yù)處理采集到的豬只數(shù)據(jù);將上述豬只數(shù)據(jù)分別制作成數(shù)據(jù)集,并且將數(shù)據(jù)集分別加載到各個yolov5網(wǎng)絡(luò)中進(jìn)行訓(xùn)練;將訓(xùn)練得到的pt模型轉(zhuǎn)換為onnx模型,再通過rknn-toolkit2工具轉(zhuǎn)換為rknn模型,便于后續(xù)的推理;在邊緣端計算設(shè)備部署rknn模型進(jìn)行推理:采用rknn庫,初始化推理上下文以及rknn模型;調(diào)用rknn模型進(jìn)行推理,疊加圖像框,推理完成后釋放內(nèi)存;在系統(tǒng)調(diào)度設(shè)計上,采用多線程推理方式。
18、作為以上技術(shù)方案的優(yōu)選技術(shù)方案,步驟s4中,豬只數(shù)據(jù)包括用于反映豬日?;顒訝顟B(tài)的臉部和體態(tài)數(shù)據(jù)、用于判斷豬是否健康的體溫數(shù)據(jù)以及用于量化豬預(yù)出欄日期的體重數(shù)據(jù)。
19、作為以上技術(shù)方案的優(yōu)選技術(shù)方案,步驟s4中,“在系統(tǒng)調(diào)度設(shè)計上,采用多線程推理方式”具體實施為以下步驟;開啟多個線程調(diào)用npu進(jìn)行模型初始化,并開啟多個線程獲取攝像頭視頻流;通過消息隊列在npu的各個子模塊實現(xiàn)視頻流數(shù)據(jù)和推理結(jié)果的高效傳輸,從而使視頻流在1080p分辨率、60fps下保持高準(zhǔn)確度的推理和輸出。
20、本發(fā)明公開的基于onvif標(biāo)準(zhǔn)的邊緣端檢測方法及系統(tǒng),其有益效果在于:
21、1.采用基于onvif標(biāo)準(zhǔn)的攝像頭視頻流傳輸方法,可實現(xiàn)邊緣端設(shè)備對多攝像頭的高效管理和視頻流獲取,提高了設(shè)備兼容性和數(shù)據(jù)傳輸?shù)膶崟r性。
22、2.邊緣端計算設(shè)備的圖像處理方法,利用ffmpeg和opencv對獲取的原始視頻碼流進(jìn)行處理,可提高視頻流編解碼的速度和后續(xù)對于視頻流的推理速度。
23、3.通過將豬的日?;顒訑?shù)據(jù)、健康狀態(tài)以及預(yù)計出欄日期等數(shù)據(jù)融合,形成標(biāo)準(zhǔn)化的豬只管理系統(tǒng),可實現(xiàn)養(yǎng)殖智能化,降低養(yǎng)殖成本和管理成本。
24、4.在邊緣端計算設(shè)備上,采用多線程方式,通過消息隊列在npu的各個子模塊上進(jìn)行視頻數(shù)據(jù)和推理結(jié)果的傳輸,可實現(xiàn)高效的數(shù)據(jù)傳輸和同步,使多個視頻流保持高準(zhǔn)確度的推理和輸出。