---
tags: openpose
---
# 使用 posenet 呈現 5 種計算方式
## 2021/6/28
### 5 種計算方式

:::success
1. 原計算:單一關節之所有幀數(frame)數據(x,y)當作分母
2. 原計算 + 改變排序 + 多維dtw(dtw_ndim)
3. 新計算:當前幀數(frame)的所有關節數據(x,y)當作分母
4. 新計算 + 改變排序 + 多維dtw(dtw_ndim)
5. 新計算 + 改變排序 + 多維dtw(dtw_ndim),所有幀數比較
6.
:::
### Human-Pose-Compare 的 score.py 探討
score.py 的內容分成三部分: L2 , 資料排序 , DTW
以下是 原計算 跟 新計算 在上述部份的差別:

---
> python start_here.py --activity "punch - side" --video "true.mp4" --lookup "false.pickle"
### 1.原計算 解釋

```
資料排序-> [[x,y,x,y]]
```
:::info
這邊的 dtw 用一維跟多維,不會改變 dtw
:::
### 2. 原計算 + 改變排序 + 多維dtw(dtw_ndim)

```
改變排序 -> 維持 [[x,y],[x1,y1]]
```
:::info
=> 第二點比第一點分數高,是因為改變資料排序,以二維去進行dtw
:::
### 3. 新計算:當前幀數(frame)的所有關節數據(x,y)當作分母


紅色框框 : 以當前幀數(frame)的所有關節數據(x,y)當作分母
:::info
=> 新計算方式比原計算方式分數低的原因?
L2 被打亂,進入for i in range(0,17)迴圈進行dtw時失去L2原有特性(進入迴圈資料特性不是1)
:::
### 4. 新計算 + 改變排序 + 多維dtw(dtw_ndim)

### 5. 新計算 + 改變排序 + 多維dtw(dtw_ndim),所有幀數比較


:::info
得到-180 這個分數,是因為ip:201,model=212,會有201個1跟212個1進行dtw
:::
### 6.


:::info
第5點改變L2以所有資料比較,為什麼得到分數高?
因為資料特性為1
:::
----
### 6種計算方式架構圖 :




----
### 問題
:::warning
1.會影響結果的不是DTW,而是套DTW前的資料「L2方式、date.shape(資料排序)」,最佳的資料排序為何?
2.目前比對結果尚無判斷何時「開始比對、結束比對」,這可能影響結果
3.openpose做點位移,捨棄現在的norm(改變長度)?
4.openpose是否也做resize?
:::