하지 도심 변화량을 이용한 보행의도 추정
Copyright © The Korean Society for Precision Engineering
This is an Open-Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/3.0) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
Abstract
A depth image camera is used for efficient estimation of walking intention of a pedestrian. Three-Dimensional image coordinates of the pedestrian’s joints are obtained from the image data that includes depth information and are converted into the absolute coordinate values. The absolute coordinate data are classified and matched with all 20 joints of a pedestrian and the 9 joints that are corresponding the lower limbs are finally selected. After calculating each three-dimensional area of a triangle that was formed with the adjacent 3 joints of the 9 lower limb joints, the centroid of all triangles along time is obtained. The walking intention, that includes the direction and the speed of walking, can be estimated with the change rate of this centroid. It is experimentally verified by comparing the distance that is measured with inertia moment unit and the distance that the calculated centroid is moving.
Keywords:
Depth image, Lower body area, 3D joint data, Centroid, Walking intention키워드:
깊이영상, 하지면적, 3차원 관절데이터, 도심, 보행의도1. 서론
급속한 고령화로 인하여 보행 보조기기나 근력보조기기에 대한 관심이 커지고 있다. 최근에는 단순 보행 보조기기보다는 스마트한 제어기술을 활용하여 사용자의 의도에 따라 보행능력을 재활시키면서 보행을 보조하는 방향으로 지능형 기술개발이 진행되고 있다.
노약자를 위한 단순 보행보조기는 크게 족형과 바퀴형 보행기의 형태가 있다. 일반적인 단순 보행기는 사용자의 움직임에 대한 대응 메커니즘이 없기 때문에 바퀴의 구름에 따라서 넘어질 수 있다. 그리고 양팔이 자유롭지 않기 때문에 환경에 따른 급변적인 위험에 그대로 노출되어 보행 안전성에 한계가 있다. 따라서 최근 바퀴형 보행기에 주변 장애물을 탐지할 수 있는 각종 센서를 부착하여 장애물 회피능력을 추가한 연구가 수행되기도 했다.3
Trinity College에서 개발한 PAM-AID는 자전거 핸들형의 손잡이를 통해 로봇을 제어한다. PAM-AID는 손잡이에 부착된 힘센서를 통해 양 손의 힘의 크기에 비례하여 구동부를 제어한다.4 Carnegie Mellon의 Robotic Walker는 보행기의 손잡이 부분에 햅틱 장치를 적용하여 사용자의 보행의도를 판단하고, 2D LRF (Laser Range Finder)를 이용해서 주변환경을 탐색한다.5 하지만 이 같은 연구들은 사용자 별로 기준이 되는 힘의 정도가 불분명 하기 때문에 보행기에 전적으로 의지하여 보행하는 노약자가 사용하기에는 어려움이 있다. 또한 고가의 LRF 사용으로 현실적인 활용성이 떨어진다고 할 수 있다.
보행의도 파악을 위한 국내 연구로는 보행보조기의 구동 바퀴 모터에 인가되는 입력전압 및 바퀴의 회전속도를 통해서 바퀴에 인가되는 외력을 추정하는 방법을 제시하기도 하였다.6 이 경우 외력을 추정하기 위한 모터의 역기전력 측정 센서의 잡음과 보행 의지력이 커지거나, 경사로를 주행시 보행보조기의 전류 측정이 어렵다는 단점이 있다. 이 같은 단점을 보완하기 위해 외부의 센서를 활용해서 보행자의 보행의도를 판단하는 연구가 수행되었다. 보행보조기에 초음파 센서와 LRF센서를 활용해서 사용자의 골반 움직임을 추정하고 그 틀어지는 각의 변화량으로 보행의도를 판단하였다.1
본 연구에서는 기존의 FSR (Force Sensing Resistor),7 기울기센서와8 토크 센서값에9 의한 방법보다 효율적인 보행자의 보행 의도의 판정을 위해서 깊이 카메라를 사용한다. 깊이 값을 포함한 영상 데이터로부터 사용자의 관절 위치를 3차원 좌표데이터를 획득하고 이를 통하여 보행의도 판단변수를 생성한다. 장치에 탑재 되거나 사람의 이동과 함께 이동하면서 사용될 영상센서의 활용을 고려하여 이미지 프레임의 좌표계 데이터를 절대 좌표계로 변환한다. 변환된 좌표데이터는 사용자의 전신 관절을 20개 점으로 분류하여 이중 하지 관절에 해당하는 9개 점을 활용한다.2 각 점을 연결하는 다각형의 3차원 면적을 계산하여 시간에 따른 면적의 도심을 계산한다. 도심의 변화량을 통해서 보행자의 보행 속도와 방향성을 추정한다. 이를 서로 다른 보행방향에 대해 실험군마다 보행의도를 방향각에 따른 변화량으로 보여주고 검증한다.
2. 보행의도 판단 변수 생성
2.1 3차원 관절데이터 기준 좌표계 설정
Depth 데이터를 포함하는 영상센서인 Microsoft사의 Kinect 센서를 활용해서 보행자의 골격 데이터를 획득한다. Kinect로 획득한 골격 데이터는 보행자 전신을 20개의 데이터로 표현한다.2
20개의 골격 데이터는 3차원 데이터로 구성이 되어있는데, 카메라 중심 좌표계로 전방이 y축, 좌우측 방향이 x축으로 구성이된다. 카메라의 Pan각을 p, Tilt각을 t라고 하면 카메라 좌표계에서 절대 좌표계로 변환하는 회전변환 행렬 R은 식(1)과 같이 주어진다.
(1) |
(2) |
계산된 회전행렬을 통해 Kinect로부터 획득한 3축 관절데이터(x, y, z)T를 식(2)와 같이 월드 좌표계 데이터(xc, yc, zc)T로 변환한다.
2.2 하지 면적과 도심 계산
20개의 골격 데이터에서 하반신 관절 데이터에 해당하는 9개의 데이터를 시간에 따른 정보로 획득한다. 몸의 중심점에 해당하는 1번 데이터와 하반신에 해당하는 13 - 20번 데이터를 조합하여 하반신 면적을 계산할 수 있다.
(3) |
(4) |
이 경우 13번 관절, 14번 관절 그리고 17번 관절로 이루어지는 3차원 면적을 A1은 다음 식으로 주어진다.
(5) |
하반신 관절 3개의 세트에 대해 총 6개의 삼각형이 발생하며 각각의 면적들은 전술한 바와 같이 동일한 방법으로 가로 및 세로 방향 벡터에 의한 식(5)와 같은 계산식으로 구한다. 이같이 근사적으로 구한 6개의 3차원 삼각형이 근사적인 하반신의 3차원 면적으로 볼 수 있고 이 면적의 좌표 가중치를 도심으로 정의하면 다음과 같이 구해진다.
(6) |
구해진 도심 좌표값 는 보행자의 몸에서 하반신의 움직임을 나타낸 하나의 판단변수가 된다. 그래서 시간에 따른 도심의 궤적 변화는 보행의 속도와 방향성을 판단 가능하게 한다.
3. 보행의도 판단 알고리즘
3.1 하지 면적 변화량을 통한 보행 추측
오른발과 왼발이 각각 향하고자 하는 방향으로 최대로 내딛는 상태가 “뒤꿈치가 닫는(Heel Strike)” 상태이다. 이 상태가 되면 하지 면적이 최대가 되고, 이러한 면적 변화량을 가지고 보행자의 보행속도를 추정할 수 있다. 또한 보행자의 보행진행 상황 또한 예측할 수 있다. Fig. 3은 양발의 보행주기에 따른 움직임에 의해서 면적이 변화하는 정도를 나타낸다. 사람이 보행을 시작하는 발을 먼저 내딛는 “뒤꿈치가 닫는”상태로 시작 하고, 내딛는 발을 지면에 최대로 닿게 하는 “Foot Flat” 이후에 최대로 닿은 발로 무게 중심점을 이동시켜 반대 발을 보행의도에 따른 보행의 방향으로 진행하게 된다. 다음에는 양 발이 서로 교차하는 지점을 지나게 되는 “Mid-Stance”로 나타낸다. 이 시점에서는 보행자의 하지 면적이 최소값으로 된다. 보행자의 보행패턴에 따른 하지 면적은 그림에서와 같이 첫번째 면적의 최대값과 세번째 면적의 최대 값의 시간 차이에 의해서 보행자의 보행속도를 추종할 수 있다.
3.2 도심의 이동량에 따른 보행의도 방향성 판단
보행자의 보행시 발생하는 하지 면적의 변화량을 통해 보행주기를 예측하고 보행유무를 판단할 수 있으나 변화량 자체는 보행 방향성에 무관하여 보행 방향을 예측할 수가 없다. 그러나 하지 면적의 도심을 이용하면 보행 방향을 예측할 수가 있다.
기존의 연구에서는 골반의 움직임에 따라서 몸 전체에 대한 무게 중심점을 통해서 보행 패턴을 연구하였다. 몸 전체에 대한 무게중심점 연구는 보행자의 신체상태에 따른 몸의 중심점 가중치 차이가 있기 때문에 대상자마다의 보정이 필요하다. 하지 면적에 따른 도심의 이동량은 몸의 무게중심과는 방향이 다르다. Fig. 4와 같이 보행시의 중심점은 하지 면적의 최대 꼭지점 위치에 대한 도심으로 결정된다. 이는 카메라를 중심으로 생성되는 관절의 좌표계이므로 정면에서 촬영되는 Kinect 좌표계의 3차원 면적이 두 발의 보행궤적을 평행선으로 하여, 서로 교차하면서 면적이 계산된다. 그 결과 도심의 궤적은 S자로 생성되어 시작점이 끝점으로 향하게 된다.
Fig. 5에서와 같이 왼쪽 혹은 오른쪽 방향으로 보행을 진행시 양발의 보행궤적에 의한 면적 도심 변화량으로 인해서 보행 방향성이 보행의도에 따라 나타나게 된다.
4. 실험 및 결과
4.1 실험 환경 구성
보행자의 보행의도 실험은 Microsoft사의 Kinect SDK v1.0을 사용하였다. 실험장소는 실내환경에서 평지를 기반으로 보행속도를 3가지로 분류하여 각각 직선, 우측, 좌측보행으로 실험을 진행하였다. 실험환경은 Fig. 7과 같이 구성을 하였으며, Kinect센서의 세부적인 사양에 따라 C++ 기반으로 골격 데이터 추출을 진행하였다.
Kinect의 데이터 주기는 30 Hz이며, 데이터당 0.03초 주기이므로 보행자의 보행에 따른 면적변화량에 따른 보행속도를 추종할 수 있다. 또한 실험을 위해서 보행 실험군의 직선, 우측, 좌측보행을 시행하였으며, 느린걸음, 보통걸음, 빠른걸음의 3가지로 분류하여 보행속도 추종에 대한 실험 또한 진행하였다. 실험환경은 Fig. 6과 같이 총 4걸음으로 Kinect와 실험군과의 거리는 3.7 m이고, Kinect가 실험군의 하반신 데이터를 추출할 수 있는 최소 유효거리인 1.5 m를 종료지점으로 하였다. 그래서 실험은 총 2.2 m보행실험으로 진행하였다.
4.2 실험 결과
전술한 바처럼 시간에 따른 하지 면적을 통해서 보행자의 보행속도를 계산할 수 있다. 성인노인 평균 보행속도 0.6 m/s를 기준으로 하여,10 3종의 보행속도에 대해 실험을 수행하였다.
Fig. 7은 평균 보행속도로 직선보행을 한 경우의 실험결과를 보여준다. 보행에 따른 하반신 면적의 변화는 Fig. 3에 나타낸 주기처럼 면적의 최대치와 최소값이 교대로 나타났으며 이에 근거하여 보행속도를 계산하였다. 2회의 실험을 반복하였으며 각각의 경우 보행 시작 후 처음 뒤꿈치 닫는 순간과 한 보행주기 완료시의 뒤꿈치 닫는 순간의 데이터 샘플링 시점을 그래프 상단에 숫자로 나타냈다. 그림에서 실선으로 나타낸 실험의 경우, 두 순간이 각각 36번 샘플링 시점과 72번 샘플링 시점이고 샘플링 시간이 0.03초이므로 1.02 m/s라는 보행속도를 추정할 수 있다.
동일한 보행경로에 대해 빠른 보행속도로 진행한 2회의 보행실험은 Fig. 8에 나타내었으며, 동일한 방법으로 1.67 m/s의 보행속도를 계산할 수 있다. 실험결과에서 보행속도에 따른 면적변화율은 실험군마다 비슷한 경향을 보인다.
2.2 m를 보행하는 동안의 실제 시간 측정을 통해 계산된 보행속도와 보행자의 하반신 면적 변화율을 통한 추정된 보행속도를 Table 1에 나타냈다. 이 두 보행속도 간의 차이가 상당히 적은 것을 확인할 수 있다. 또한 면적 데이터는 보행자의 보행 패턴과 주기를 판단할 수 있었다.
면적 변화량은 3차원 도형의 벡터 외적공식으로 면적이 계산되지만 두 다리 사이의 가상으로 나타낸 3차원 평면계의 크기만으로 표현되기 때문에 보행의도에 필요한 방향성이 나타나지 않는다. 따라서 6개의 3차원 도형의 중심점을 계산하여, 계산된 도심을 가지고, 사용자의 하반신 전체에 대한 도심을 구할 수 있다. 도심은 3차원 좌표계로 표현되며, Z축은 사용자의 높이, Y축은 진행방향, X축은 좌우측 진행방향을 보여준다. 이렇게 계산된 3차원 도심 좌표계는 좌, 우, 직진보행 3가지 방법으로 표현되는데, Kinect로 실험 시작시 촬영된 출발 영점과 도착 영점을 실험시 획득한 보행 데이터와 비교함으로써 도심의 직선방향 보행특성과 좌, 우측 보행의 방향 특성을 찾아낼 수 있다.
Fig. 10은 보행의 경우 도심궤적을 나타낸 그림이다. Figs. 10 및 11에서 궤적의 모양이 S자 보행특성을 보이게 되는데 이는 3.2절에서 언급한 내용과 같이 직선 보행시 두 다리의 교차 진행으로 인한 S자형의 특성을 보여 주는 것이다.
Fig. 10에서 보이는 직선 보행에서 대한 특성 특성을 실험시 정의한 시작점과 도착점의 가상의 직선에 대해서 직선보행 데이터와의 상대거리 오차를 Fig. 12에 표현하였다. 카메라와의 거리가 점점 가까워져서 값이 점점 증가하는 특성이 보이지만 직선보행의 S자 도심 변화량에 의해서 상대차이 역시 굴곡이 나타나는 경향을 보인다. 이에 직선보행의 상대차이는 보행주기마다 1 cm정도의 자이로 좌우측 변화량이 보였다. 또한 면적 변화량과 같이 보행주기에 따른 특성은 확연하게 보인다.
Figs. 12와 14의 경우 우측과 좌측으로 도심의 이동량은 직선보행에 비해서 확연하게 의도하는 방향으로 보행패턴이 보이는 것을 확인할 수 있다. 또한 Figs. 13과 15에서와 같이 시작점과 도착점에 대한 기준궤적에 비해서 의도하고자 하는 방향으로 보행시 일정한 상승곡선은 그리면서 기준 궤적과 멀어지는 것을 확인할 수 있었다. 특히 좌, 우측 보행으로 진행시 가상으로 설정한 기준궤적에 비해서 보행 방향각이 20 - 30도 틀어지는 것을 확인 할 수 있었다.
Fig. 16은 발끝에 부착한 관성센서(X-IMU)를 이용해서 보행에 따른 3차원 보행궤적을 생성하였다.11 도출된 관성센서의 궤적데이터와 도심으로 계산된 시간에 따른 데이터간의 차이를 Fig. 16에서 보여준다. 직선보행의 경우에는 두 발 사이에서는 얻어지는 데이터와 데이터간의 좌표상 거리차이가 0.5 cm정도로 일정한 차이값을 보여준다, 그리고 왼쪽으로 보행을 했을시에 보여주는 결과는 최대오차 0.8 cm로 보행패턴에 따른 차이만 보였다. 하지만 오른쪽으로 보행을 진행했을 경우에는 보행패턴에 따른 최대오차가 2.3 cm정도로 보였다. 이는 오른쪽으로 보행을 했을 때 측정되는 관성센서의 외부 왜란이나 영상센서를 통해서 생기는 외부적인 오차값이 반영되었다고 판단한다. 그래서 반복적인 실험을 통해서 이 오차는 충분히 줄일 수 있다.
5. 결론
다수의 센서를 사용하여 보행패턴 및 의도를 연구한 기존 연구에 비해 본 연구에서는 깊이 영상센서 하나만을 사용하여 하반신 면적을 계산하여 나오는 데이터를 이용해서 보행의 속도를 추정하고 면적의 도심을 계산해서 시간에 따른 도심의 변화량과 방향 각으로 보행의도를 판단하였다.
이를 도착점과 시작점을 가상의 직선으로 연결해서 보행시 생성되는 도심데이터와의 상대적인 거리차를 이용해서 보행패턴과 방향을 판단했으며, 가상의 직선으로부터 가상의 영역을 설정하여, 보행궤적과의 방향각을 계산하였다. 계산된 방향각으로 좌우측보행판단이 가능하였다. 추후에는 실험군을 다양하게 나누어서, 평지뿐만 아니라 다양한 환경으로 보행의도판단 연구의 고도화를 수행한다면 지능형 보행보조기기에 활용할 수 있을 것으로 기대한다.
Acknowledgments
본 연구는 보건복지부의 “100세 사회 대응 고령 친화 제품 연구개발사업”(HI15C1027)과 LIG넥스원의 “착용형 로봇을 위한 회전형 Magneto-Rheological 브레이크 설계 및 개발”(Y15-012호)의 연구비지원에 의해 수행되었습니다.
REFERENCES
- Weon, I. S., Lee, S. G., and Moon, S. C., “Development of an Intelligent Rollator that Maneuvers itself according to User’s Intention,” Proc. of the KSPE Autumn Conference, pp. 49-50, 2015.
- Won, I. S., Lee, S. G., Moon, S. C., Lim, C. S., Kim, S. H., et al., “A Study of a Walking Intention Based on the 3D Area and Centroid of Lower Body Using RGB-D,” Proc. of KSPE Spring Conference, pp. 262-263, 2016.
- Jung, J.-Y., Park, H.-S., Lee, D.-Y., Jang, I.-H., Lee, D.-W., et al., “Organization of Sensor System and User's Intent Detection Algorithm for Rehabilitation Robot,” Journal of Institute of Control, Robotics and Systems, Vol. 16, No. 10, pp. 933-938, 2010. [https://doi.org/10.5302/J.ICROS.2010.16.10.933]
- Reinkensmeyer, D. J., Aoyagi, D., Emken, J. L., and Galvez, J. A., “Tools for Understanding and Optimizing Robotic Gait Training,” Journal of Rehabilitation Research and Development, Vol. 43, No. 5, pp. 657-670, 2006. [https://doi.org/10.1682/JRRD.2005.04.0073]
- Morris, A., Donamukkala, R., Kapuria, A., Steinfeld, A., Matthews, J. T., et al., “A Robotic Walker that Provides Guidance,” Proc. of the IEEE International Conference on Robotics and Automation, pp. 25-30, 2003.
- Kong, J.-S., Lee, B.-H., Lee, E.-H., and Choi, H.-H., “A Study on the Control Algorithm for Active Walking Aids by Using Torque Estimation,” Journal of Korean Institute of Intelligent Systems, Vol. 20, No. 2, pp. 181-188, 2010. [https://doi.org/10.5391/JKIIS.2010.20.2.181]
- Egawa, S., Nemoto, Y., Fujie, M., Koseki, A., Hattori, S., et al., “Power-Assisted Walking Support System with Imbalance Compensation Control for Hemiplegics,” Proc. of the First Joint, BMES/EMBS Conference, p. 635, 1999.
- Hirata, Y., Baba, T., and Kosuge, K., “Motion Control of Omni-Directional Type Walking Support System Walking Helper,” Proc. of the 12th IEEE International Workshop on Robot and Human Interactive Communication, pp. 85-90, 2003.
- Lim, S.-H., Kim, T.-K., Kim, D. Y., Hwang, J.-H., Kim, B.-S., et al., “Development of In-Wheel Actuator for Active Walking Aids Equipped with Torque Sensor for User Intention Recognition,” J. Korean Soc. Precis. Eng., Vol. 31, No. 12, pp. 1141-1146, 2014. [https://doi.org/10.7736/KSPE.2014.31.12.1141]
- Yoo, H., Kim, E., Lee, J., Kim, S., and Lee, P., “A Study on Walking Velocity of Old Men in Korean,” Proc. of the Conference on Korean Institute of Fire Science and Engineering, pp. 407-417, 2003.
- Weon, I. S., Lee, S. G., Jeong, J. Y., and Moon, K. C., “A Study of Gait Intension by the IMU Based on Pedestrian Yaw Characteristic,” Proc. of the KSPE Autumn Conference, pp. 89-90, 2010.