Detection of Gait Abnormalities caused by Neurological Disorders
1.研究背景
帕金森症,双侧瘫( Diplegia),偏瘫(Hemiplegia),舞蹈症( Huntington’s Chorea)这类神经系统引起的运动型疾病有着明显的临床表现。每种症状的步态特征都不一样。帕金森症患者身体前倾,行动缓慢;偏瘫患者腿做环形运动;双侧瘫患者两腿均做环形运动;舞蹈症患者无意识且不平衡的行走。
关于视觉步态识别检测疾病的研究非常少,大多数研究都是基于运动传感器。基于视觉的检测有着速度传感器无可比拟的优势。
- 设备更加便宜。
- 非侵入式,被检测者不用刻意地穿戴某些设备或做某个动作,更容易在日常生活中检测。
关于神经系统患者的数据难以取得,目前没有公共的数据集,研究者们便让志愿者模仿上述症状患者的步态组成一个数据集。并为这些数据设计了一些全新的特征。
2.数据提取
先利用姿态估计算法AlphaPose绑定人体landmark,获得14个坐标点,这14个坐标点组成一个序列
P
=
{
P
i
∣
i
=
1
,
.
.
.
,
∣
P
∣
}
P=\{P_i|i=1,...,|P|\}
P={Pi?∣i=1,...,∣P∣},坐标点表达的具体landmark如表:
3.特征设计
3.1肢体直度(Limb Straightness)
正常人走路四肢仅有小幅度弯曲,而帕金森患者行走时手臂呈“V”字型弯曲。
躯体直度由以下公式计算
m
(
S
l
,
W
l
)
=
S
l
(
y
)
?
W
l
(
y
)
S
l
(
x
)
?
W
l
(
x
)
c
(
S
l
,
W
l
)
=
W
l
(
y
)
S
l
(
x
)
?
W
l
(
x
)
S
l
(
y
)
S
l
(
x
)
?
W
l
(
x
)
L
S
(
S
l
,
E
l
,
W
l
)
=
∣
m
(
S
l
,
W
l
)
E
l
(
x
)
+
c
(
S
l
,
W
l
)
?
E
l
(
y
)
∣
(
m
(
S
l
,
W
l
)
2
+
1
\begin{aligned} m\left(S_{l}, W_{l}\right) &=\frac{S_{l}(y)-W_{l}(y)}{S_{l}(x)-W_{l}(x)} \\ c\left(S_{l}, W_{l}\right) &=\frac{W_{l}(y) S_{l}(x)-W_{l}(x) S_{l}(y)}{S_{l}(x)-W_{l}(x)} \\ L S\left(S_{l}, E_{l}, W_{l}\right) &=\frac{\left|m\left(S_{l}, W_{l}\right) E_{l}(x)+c\left(S_{l}, W_{l}\right)-E_{l}(y)\right|}{\sqrt{\left(m\left(S_{l}, W_{l}\right)^{2}+1\right.}} \end{aligned}
m(Sl?,Wl?)c(Sl?,Wl?)LS(Sl?,El?,Wl?)?=Sl?(x)?Wl?(x)Sl?(y)?Wl?(y)?=Sl?(x)?Wl?(x)Wl?(y)Sl?(x)?Wl?(x)Sl?(y)?=(m(Sl?,Wl?)2+1
?∣m(Sl?,Wl?)El?(x)+c(Sl?,Wl?)?El?(y)∣?? 其中
-
m
(
S
l
,
W
l
)
m\left(S_{l}, W_{l}\right)
m(Sl?,Wl?)表示左手手腕和左肩所在直线的斜率
-
c
(
S
l
,
W
l
)
c\left(S_{l}, W_{l}\right)
c(Sl?,Wl?)表示左手手腕和左肩所在直线的y轴截距
-
L
S
(
S
l
,
E
l
,
W
l
)
L S\left(S_{l}, E_{l}, W_{l}\right)
LS(Sl?,El?,Wl?)表示左手肢体直度
3.2手腿协调性(Hand-leg Coordination)
正常人走路时左腿和右手(或右腿和左手)两条直线几乎平行,偏瘫和舞蹈症患者行走时明显不平行。
手腿协调性由以下公式计算(论文中的原公式是错的)
H
L
(
S
l
,
W
l
,
H
r
,
A
r
)
=
∣
tan
?
?
1
(
m
(
H
r
,
A
r
)
)
?
tan
?
?
1
(
m
(
S
l
,
W
l
)
)
∣
H L\left(S_{l}, W_{l}, H_{r}, A_{r}\right)=\left|\tan ^{-1}\left(m\left(H_{r}, A_{r}\right)\right)-\tan ^{-1}\left(m\left(S_{l}, W_{l}\right)\right)\right|
HL(Sl?,Wl?,Hr?,Ar?)=∣∣?tan?1(m(Hr?,Ar?))?tan?1(m(Sl?,Wl?))∣∣?
3.3上肢直度( Upper Body Straightness)
上肢直度的异常在所有四种疾病中均有不同程度的体现。
上肢直度由以下公式计算
U
S
=
0.5
∣
R
l
(
y
)
+
R
r
(
y
)
?
H
l
(
y
)
?
H
r
(
y
)
R
l
(
x
)
+
R
r
(
x
)
?
H
l
(
x
)
?
H
r
(
x
)
(
S
l
(
x
)
+
S
r
(
x
)
)
1
+
(
R
l
(
y
)
+
R
r
(
y
)
?
H
l
(
y
)
?
H
r
(
y
)
R
l
(
x
)
+
R
r
(
x
)
?
H
l
(
x
)
?
H
r
(
x
)
)
2
+
(
R
l
(
x
)
+
R
r
(
x
)
)
(
H
l
(
y
)
+
H
r
(
y
)
)
?
(
H
l
(
x
)
+
H
r
(
x
)
)
(
R
l
(
y
)
+
R
r
(
y
)
)
(
R
l
(
x
)
+
R
r
(
x
)
?
H
l
(
x
)
?
H
r
(
x
)
)
1
+
(
R
l
(
y
)
+
R
r
(
y
)
?
H
l
(
y
)
?
H
r
(
y
)
R
l
(
x
)
+
R
r
(
x
)
?
H
l
(
x
)
?
H
r
(
x
)
)
2
?
(
S
l
(
y
)
+
S
r
(
y
)
)
1
+
(
R
l
(
y
)
+
R
r
(
y
)
?
H
l
(
y
)
?
H
r
(
y
)
R
l
(
x
)
+
R
r
(
x
)
?
H
l
(
x
)
?
H
r
(
x
)
)
2
∣
\begin{array}{l} U S=0.5 \mid \frac{\frac{R_{l}(y)+R_{r}(y)-H_{l}(y)-H_{r}(y)}{R_{l}(x)+R_{r}(x)-H_{l}(x)-H_{r}(x)}\left(S_{l}(x)+S_{r}(x)\right)}{\sqrt{1+\left(\frac{R_{l}(y)+R_{r}(y)-H_{l}(y)-H_{r}(y)}{R_{l}(x)+R_{r}(x)-H_{l}(x)-H_{r}(x)}\right)^{2}}} +\frac{\left(R_{l}(x)+R_{r}(x)\right)\left(H_{l}(y)+H_{r}(y)\right)-\left(H_{l}(x)+H_{r}(x)\right)\left(R_{l}(y)+R_{r}(y)\right)}{\left(R_{l}(x)+R_{r}(x)-H_{l}(x)-H_{r}(x)\right) \sqrt{1+\left(\frac{R_{l}(y)+R_{r}(y)-H_{l}(y)-H_{r}(y)}{R_{l}(x)+R_{r}(x)-H_{l}(x)-H_{r}(x)}\right)^{2}}} -\frac{\left(S_{l}(y)+S_{r}(y)\right)}{\sqrt{1+\left(\frac{R_{l}(y)+R_{r}(y)-H_{l}(y)-H_{r}(y)}{R_{l}(x)+R_{r}(x)-H_{l}(x)-H_{r}(x)}\right)^{2}}} \mid \end{array}
US=0.5∣1+(Rl?(x)+Rr?(x)?Hl?(x)?Hr?(x)Rl?(y)+Rr?(y)?Hl?(y)?Hr?(y)?)2
?Rl?(x)+Rr?(x)?Hl?(x)?Hr?(x)Rl?(y)+Rr?(y)?Hl?(y)?Hr?(y)?(Sl?(x)+Sr?(x))?+(Rl?(x)+Rr?(x)?Hl?(x)?Hr?(x))1+(Rl?(x)+Rr?(x)?Hl?(x)?Hr?(x)Rl?(y)+Rr?(y)?Hl?(y)?Hr?(y)?)2
?(Rl?(x)+Rr?(x))(Hl?(y)+Hr?(y))?(Hl?(x)+Hr?(x))(Rl?(y)+Rr?(y))??1+(Rl?(x)+Rr?(x)?Hl?(x)?Hr?(x)Rl?(y)+Rr?(y)?Hl?(y)?Hr?(y)?)2
?(Sl?(y)+Sr?(y))?∣?
3.4躯体直度(Body Straightness)
躯体直度用来测量整个身体的直线度,四种患者整个躯体均有不同方式的弯曲。
躯体直度由以下公式计算
B
S
=
0.5
∣
S
l
(
y
)
+
S
r
(
y
)
?
A
l
(
y
)
?
A
r
(
y
)
S
l
(
x
)
+
S
r
(
x
)
?
A
l
(
x
)
?
A
r
(
x
)
(
H
l
(
x
)
+
H
r
(
x
)
)
1
+
(
S
l
(
y
)
+
S
r
(
y
)
?
A
l
(
y
)
?
A
r
(
y
)
S
l
(
x
)
+
S
r
(
x
)
?
A
l
(
x
)
?
A
r
(
x
)
)
2
+
(
S
l
(
x
)
+
S
r
(
x
)
)
(
A
l
(
y
)
+
A
r
(
y
)
)
?
(
A
l
(
x
)
+
A
r
(
x
)
)
(
S
l
(
y
)
+
S
r
(
y
)
)
(
S
l
(
x
)
+
S
r
(
x
)
?
A
l
(
x
)
?
A
r
(
x
)
)
1
+
(
S
l
(
y
)
+
S
r
(
y
)
?
A
l
(
y
)
?
A
r
(
y
)
S
l
(
x
)
+
S
r
(
x
)
?
A
l
(
x
)
?
A
r
(
x
)
)
2
?
(
H
l
(
y
)
+
H
r
(
y
)
)
1
+
(
S
l
(
y
)
+
S
r
(
y
)
?
A
l
(
y
)
?
A
r
(
y
)
S
l
(
x
)
+
S
r
(
x
)
?
A
l
(
x
)
?
A
r
(
x
)
)
2
∣
.
\begin{array}{l} B S=0.5 \mid \frac{\frac{S_{l}(y)+S_{r}(y)-A_{l}(y)-A_{r}(y)}{S_{l}(x)+S_{r}(x)-A_{l}(x)-A_{r}(x)}\left(H_{l}(x)+H_{r}(x)\right)}{\sqrt{1+\left(\frac{S_{l}(y)+S_{r}(y)-A_{l}(y)-A_{r}(y)}{S_{l}(x)+S_{r}(x)-A_{l}(x)-A_{r}(x)}\right)^{2}}} +\frac{\left(S_{l}(x)+S_{r}(x)\right)\left(A_{l}(y)+A_{r}(y)\right)-\left(A_{l}(x)+A_{r}(x)\right)\left(S_{l}(y)+S_{r}(y)\right)}{\left(S_{l}(x)+S_{r}(x)-A_{l}(x)-A_{r}(x)\right) \sqrt{1+\left(\frac{S_{l}(y)+S_{r}(y)-A_{l}(y)-A_{r}(y)}{S_{l}(x)+S_{r}(x)-A_{l}(x)-A_{r}(x)}\right)^{2}}} -\frac{\left(H_{l}(y)+H_{r}(y)\right)}{\sqrt{1+\left(\frac{S_{l}(y)+S_{r}(y)-A_{l}(y)-A_{r}(y)}{S_{l}(x)+S_{r}(x)-A_{l}(x)-A_{r}(x)}\right)^{2}}} \mid . \end{array}
BS=0.5∣1+(Sl?(x)+Sr?(x)?Al?(x)?Ar?(x)Sl?(y)+Sr?(y)?Al?(y)?Ar?(y)?)2
?Sl?(x)+Sr?(x)?Al?(x)?Ar?(x)Sl?(y)+Sr?(y)?Al?(y)?Ar?(y)?(Hl?(x)+Hr?(x))?+(Sl?(x)+Sr?(x)?Al?(x)?Ar?(x))1+(Sl?(x)+Sr?(x)?Al?(x)?Ar?(x)Sl?(y)+Sr?(y)?Al?(y)?Ar?(y)?)2
?(Sl?(x)+Sr?(x))(Al?(y)+Ar?(y))?(Al?(x)+Ar?(x))(Sl?(y)+Sr?(y))??1+(Sl?(x)+Sr?(x)?Al?(x)?Ar?(x)Sl?(y)+Sr?(y)?Al?(y)?Ar?(y)?)2
?(Hl?(y)+Hr?(y))?∣.?
3.5中心距离(Central Distances)与相互距离(Mutual Distances)
中心距离指人体landmark坐标(Key-point)与人体质心(文中称Effective Key-point)之间的距离,由于视屏中人物大小不统一,所以要除以这些距离中的最大值来归一化。相互距离是每个点与其他点之间的距离,同样需要归一化。
3.6视频级特征(Video-level Features)
以上特征都是在一帧中计算出来的,数据维数细节如表,
将视频所有帧的特征值计算方差和标准差,作为机器学习训练的最终数据。经过处理,以上每个特征维数都会翻倍。
4.实验
作者通过AlphaPose,3D-CNN,AlphaPose+3D-CNN提取特征和自己设计的特征作比较,后面接不同的分类器(SVM,朴素贝叶斯等)进行试验,均得到了不错的结果。
5.总结与思考
- 作者本质上是通过手工设计特征,取得了超过深度学习提取特征的效果
- 作者的数据库由于是使用志愿者模仿患者得到的数据,并非真实患者的数据,手工设计特征可能会有优势。但是这个数据库我认为价值不大
- 作者设计的数据特征已经剔除掉了视频中大量无用的信息,我认为可以将这些特征利用transformer来训练一下
- 我认为作者处理视频级特征的手段太过粗糙,直接求平均数和方差会损失大量的信息
- 作者设计的数据特征已经剔除掉了视频中大量无用的信息,我认为可以将这些特征利用transformer来训练一下
- 我认为作者处理视频级特征的手段太过粗糙,直接求平均数和方差会损失大量的信息
- 本文研究对象都是运动特征明显的疾病,而像阿尔茨海默症这样运动特征不明显的疾病能否有效需要实验验证
|