運動表現 軟體系統設計方案

2022-08-22 21:36:11 字數 2821 閱讀 7943

該專案基於深度網路、機器視覺對人物運動的分析。比如,在足球比賽中,運動員奔跑時重心高度的變化。以及對戰術的分析(控球球員可以傳球的範圍、應該選擇傳球還是繼續帶球等)和技術分析(傳球的距離和落點)。

意義:運動員在比賽過程中經常會受傷,除去因碰撞和意外的受傷之外,長期的過度運動也會導致骨骼和肌肉的損傷。在長時間的比賽中,因為疲勞而導致的動作變形也會增大骨骼和肌肉的損傷,甚至是由於動作變形導致摔傷或扭傷。該專案就是通過機器視覺,分析人物關節點,再對關節點的位置分析出人物的重心位置變化。針對分析出的問題進行訓練,降低損傷,增加運動壽命。

alphapose總體網路結構如下圖:

yolo網路結構如下圖:

deepsort流程圖如下:

nms:非極大值抑制,圖中可能包含多個同型別的物體,同乙個物體可能會被多個檢測框檢測到。檢測到同乙個物體的框只保留得分最高的,並且不影響同型別的其他的物體檢測框。

卡爾曼濾波:deepsort中使用卡爾曼濾波對人物運動進行**,然後結合匈牙利演算法匹配前後幀的人物位置,從而實現對人的追蹤。卡爾曼濾波的本質屬於"估計"範疇.先介紹下估計,所謂「估計」問題,就是對受到隨機干擾和隨機測量誤差作用的物理系統,按照某種效能指標為最優的原則,從具有隨機誤差的測量資料中提取資訊,估計出系統的某些引數狀態變數。最早的估計方法是大名鼎鼎的數學家高斯於2023年發明的最小二乘法(

,)。最小二乘法計算簡單,易於應用,但沒有考慮被估引數和觀察資料的統計特性,因次該方法不是最優估計。之後,2023年,英國統計學家費爾希提出最大似然法,從概率密度角度來考慮估計問題。對於隨機過程的估計,2023年,控制論的創始人維納根據火力控制系統上的需要提出一種在頻域中設計統計最有濾波器的方法,該方法被稱為wiener濾波。同時期,蘇聯數學家柯爾莫戈洛夫提出並初次解決廣義離散平穩隨機序列的**和外推問題。由於維納濾波採用頻域設計法,運算複雜,解析困難等問題,促使科學家尋求在時域直接設計最優濾波器的方法,於是,卡爾曼濾波應運而生!

匈牙利演算法:匈牙利演算法用於解決二分圖匹配問題。在目標追蹤中的乙個解決方案是,根據前後幀物體位置的距離,判斷是否是同乙個物體。假設第一幀有10個物體,第二幀也有10個物體,等同於在這20個物體間進行匹配,由於同一幀的物體不可能是同一物體,所以這可以抽象成乙個二分圖。

imageloader類,繼承dataloder類,載入資料。

detectionloader類,載入yolo模型,呼叫dataloder子類物件。

detectionprocessor類,呼叫detectionloader類物件,**人物框。

stn:空間變換網路,對於不準確的輸入,得到準確的人的框。輸入候選區域,用於獲取高質量的候選區域。

sppe:得到估計的姿態。

sdtn:空間逆變換網路,將估計的姿態對映回原始的影象座標。

pose-nms:消除額外的估計到的姿態。

parallel sppe:訓練階段作為額外的正則項,避免陷入區域性最優,並進一步提公升sstn的效果。包含相同的stn及sppe(所有引數均被凍結)。

pgpg(pose-guided proposals generator):通過pgpg網路得到訓練影象,用來訓練sstn+sppe。

檔案目錄:

doc:存放文件。

examples:存放執行樣例和結果檔案

models:存放sppe、ssd和yolo的權重檔案。

sppe:sppe模組,用於得到估計的姿態。

train_sppe:用於訓練sppe模組的網路。

yolo:存放yolo的網路模型。

torch==0.4.0

torchvision==0.2.0

visdom

nibabel

pandas

tqdm

matplotlib

opencv-python

ntpath

重心分析部分:根據兩個結果檔案,得到每幀人物框的資訊和關節點資訊。通過手動標出球場的四個點,使用opencv的投影變換功能,將影象中梯形的球場對映成真實的矩形球場,這裡只要拿到對映關係的矩陣即可。在人物是與球場垂直的前提下,通過對映矩陣可以算出人物框底邊中心畫素代表的實際長度,根據此長度乘以重心的到底邊的畫素個數,可以得到人物重心的高度。由此,得到人物每幀的重心高度,進而分析重心高度的變化是否由超過身高的8%。

戰術分析部分:使用opencv得到對映矩陣。識別球員隊服顏色,分出兩隊成員。調整yolo的網路引數,重新訓練用來專門識別足球。假設人與球的距離小於1.5公尺且保持2秒,就認為當前球員正在控球。然後,計算出20公尺內的所有球員(對手和隊友),根據不同的距離,得到隊友的接球範圍和對手的防守範圍的大小(近似看成乙個圓形)。用控球球員的位置和防守範圍做切線,得到不可以傳球的範圍。在剩下可選的範圍裡,找到乙個最優的隊友,選擇傳球(先考慮進攻,再考慮防守)。

[1][2]

[3]

工程實踐的軟體系統設計方案

一 專案介紹 題目 文字行檢測系統。內容 檢測出文件影象以及複雜場景中的所有文字行。即可以作為文字行識別任務的前端,也可以作為乙個單獨的服務提供給使用者使用。模型選擇 cvpr2019中的文章 character region awareness for text detection 二 執行環境與...

系統許可權設計方案

2008 06 04 b size large 系統許可權設計方案 size b b size large size b 關鍵字 設計思想 系統設計許可權管理分為 人員管理 角色管理 模組管理 其實有這樣一些概念 主體 使用者和角色可以稱為主體。資源 就是可以進行crud的物件。許可權 就是對資源的...

使用者許可權系統設計方案

鍾峰 2004年10月 版本 1.0.0 本文介紹乙個應用於 企業應用通用的使用者許可權系統的設計框架,其設計思想與主要文件 自 sunwu software studio 的 isecuritymanager 產品。本指南適用於體系結構設計人員和開發人員。安全始終是可信賴的企業應用的基石。在企業應...