데이터퓨전 기반의 위험 상황인지 메커니즘 개발
Copyright ⓒ 2019 The Digital Contents Society
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-CommercialLicense(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.
초록
낙상 발생 후 정신을 잃거나 상해로 인해 정상적인 움직임이 불가능한 경우 매우 위험하다. 이러한 위험 상황이 발생했을 경우 주변 사람, 보호자나 의료인의 즉각적인 대응이 필요하다. 이와 같은 복잡한 상황을 인지하기 위해서는 여러 가지 센서 데이터와 관련 정보를 함께 활용하는 데이터 퓨전 기법이 요구된다. 본 논문에서는 실시간 위험 상황인지를 위해 사용자의 다양한 동작 데이터와 이전 상황 데이터를 결합하는 데이터 퓨전 기반의 위험 상황인지 메커니즘을 제안한다. 제안하는 메커니즘은 100ms마다 움직임 데이터를 수집하여 활동, 낙상, 운전, 위험 상태를 분류하고 2차적으로 활동의 세부 상태를 5가지로 구분한다. 실험을 통해 제안하는 메커니즘의 상황인지 성능을 분석하였으며 추후 위험상황 전달 서비스에 활용될 것으로 생각된다.
Abstract
It is very dangerous to lose consciousness or to prevent normal movement due to injury after a fall. In the dangerous situation, immediate response from surrounding people, protector and medical personnel is required. In order to recognize this complex situation, a data-fusion technique that utilizes various sensor data and related information together is required. In this paper, we propose data-fusion based dangerous-situation aware mechanism that combine user's various movement data with previous context data. The proposed mechanism collects data every 100 ms to classify states as activity, falls, driving, and dangerous. Also it classifies activity state into five sub-state. We analyzed the performance of the proposed mechanism through experimentation. The proposed mechanism will be utilized in dangerous situation alert services.
Keywords:
Data-fusion, Dangerous-situation aware, Situation aware, Sensor data키워드:
데이터 퓨전, 위험 상황인지, 상황인지, 센서 데이터Ⅰ. 서 론
사물인터넷의 상황인지 기술은 환경이나 사용자와 관련된 정보(조도, 온도, 습도, 소리, 움직임, 심박 등)를 검출하는 센서 기술, 센싱된 정보를 공유 하는 네트워크 기술, 공유된 정보를 상황 정보로 추론하고 가공하는 지능 기술, 상황 정보에 따라 사용자에게 적절한 서비스를 제공하는 인터페이스 기술로 분류되며 이를 통해 사용자 주변 환경을 인지하고 사용자에게 서비스를 제공한다[1].
이러한 상황인지 기술을 기반으로 인식될 수 있는 상황은 매우 다양하다. 건강, 감정, 위치, 스케줄, 소셜 관계, 활동과 같은 특정 사람의 상황정보, 온도, 습도, 조도, 미세먼지 농도와 같은 특정 장소의 상황정보, 장치나 장소의 사용상태 등 다양한 상황들이 존재하며 타깃 서비스의 종류와 목적에 따라 필요한 상황을 인식하기 위한 처리기술이 요구된다.
하지만 복잡한 상황은 한 가지 정보만으로 인지하기는 매우 어렵고 성능도 좋지 않다. 따라서 사람 또는 사물에 부착된 다양한 센서에서 전송하는 데이터를 지능적으로 융합하는 센서 퓨전 기법이 연구되었다[2]. 최근에는 다수의 센서를 활용하는 센서 퓨전 기법으로 부터 관련 데이터들을 함께 활용하여 더욱 복잡한 상황을 인지하는 데이터 퓨전 기법[3]이 연구되고 있다.
이와 같은 데이터퓨전 기법은 고령자에 대한 위험상황인지 메커니즘에 적용이 가능하다. 고령자의 경우 젊은 연령층에 비해 시각과 균형감각 등의 능력이 떨어지거나 지병으로 인해 운동능력이 저하되는 경우가 있다. 이에 보행 중 장애물을 발견하지 못하거나 보행면의 요철이 심할 경우 낙상이 발생하는 확률이 증가한다. 또한 열사병이나 지병으로 인해 낙상하는 경우도 있다. 낙상이 발생한 후 자발적으로 일어나서 일상적인 움직임이 가능한 경우 크게 문제 될 것이 없지만 낙상이 발생한 후 정신을 잃거나 낙상에 의해 발생한 상해로 인해 정상적인 움직임이 불가능 한 경우 매우 위험할 수 있다[4]. 이러한 경우 주변 혹은 보호자 및 의료인의 적극적이고 즉시적인 대응이 필요하다.
따라서 본 논문은 정확한 위험 상황 및 전후 상황을 인지하기 위해 사용자의 동작 데이터와 이전 상황데이터를 결합하는 데이터 퓨전 기반의 위험 상황 인지 메커니즘을 제안한다. 이는 고령자의 위험상황을 낙상으로 정의하고 낙상이 발생한 전/후 상황정보를 인지하여 이를 보호자, 주변 사람, 의료인 등에게 제공하여 보다 정확하고 신속한 대응을 할 수 있도록 한다.
이를 위해 낙상으로 대표되는 위험상황의 전/후에 발생할 수 있는 다양한 상황(활동 상태)들을 정의하고 가속도 센서가 포함된 안드로이드 기반의 스마트폰을 통해 목표 인식 동작의 센서 데이터를 수집한다. 위험 상황을 인지하기 위해 구간 최댓값으로 정의할 수 있는 LMV (Local Maximum Value)와 속도, 걸음 수 및 이전상황 정보를 활용하는 데이터 퓨전 기법을 사용하며 그 중요 내용은 다음과 같다.
- 인식 목표 상황 특성 분석 : 7가지 목표 상황의 특성을 분석하여 LMV, 속도, 걸음 수의 기준을 정의.
- 상태 전환 모델 : 운전 및 위험상황과 같은 특수 상황의 경우 움직임 데이터와 이전 상황정보의 데이터 퓨전이 필요하며 이를 위해 상태 전환 모델을 제안.
- 활동 구분 메커니즘 : LMV, 걸음 수, 속도를 기반으로 세부적인 동작을 구분.
이를 위해 2장에서 움직임 데이터 분석 기법 및 센서/데이터 퓨전 기법에 대해 소개하고 3장에서 본 논문에서 제안하는 위험상황인지 메커니즘을 설명한다. 4 장에서는 제안하는 메커니즘의 성능분석을 수행하며 마지막으로 5장에서 결론을 맺는다.
Ⅱ. 관련연구
본 장에서는 동작 구분, 걸음 수 검출, 보폭 및 보행속도 분석 등 위험 상황인지를 위한 관련 연구를 분석한다.
2-1 동작 구분 기법 동향
일반적으로 동작 구분을 위해 가속도, 각속도 등 움직임을 측정할 수 있는 센서를 부착하거나 해당 센서가 내장된 휴대폰 등을 활용하여 움직임 데이터를 수집한다. 수집된 움직임 정보는 x, y, z축 성분으로 구성되어 있으나 이는 센서의 부착 위치나 각도, 휴대폰의 휴대 자세에 따라 기준이 바뀐다. 따라서 축의 기준에 상관없이 크기 값을 나타내는 SVM (Signal Vector Magnitude) 방식이 주로 활용되며 다음 식을 통해 계산된다.
(1) |
Yang 등[5]은 스마트폰에 내장되어있는 3축 가속도 센서를 이용하여 실시간 동작 인식 기법을 제안하였다. 이는 인식 목표 동작을 동적 동작(걷기, 뛰기)과 정적 동작(앉기, 서기)으로 구분하여 정의하였으며 제안하는 시스템은 가속도 센서에서 추출된 값의 SVM을 계산하고 이를 통해 속도를 계산한다. 속도와 SVM을 통해 일차적으로 움직임의 정적/동적 특성을 구분한다. 이차적으로 수집된 데이터를 FFT 변환하여 주파수 영역의 분석을 통해 걷기, 뛰기를 구분한다. Yang 등[5]은 가속도의 SVM과 FFT 변환한 진폭값을 활용하여 구분하기 어려운 걷기와 뛰기 동작의 인식률을 80% 이상으로 끌어올렸다.
Lee 등[6]은 스마트폰과 웨어러블 장치에 장착된 가속도 센서를 활용하여 SVM 계산하고 이를 기반으로 서기, 앉기, 눕기, 걷기, 자전거타기 등의 상황을 인지하였다. 실험을 통해 각 동작의 고유 반복 패턴과 크기를 분석하였으며 보다 정확한 인지를 위해 스마트폰과 웨어러블의 데이터를 동시에 활용하였다. 결과적으로 교통수단 탑승을 인지하는 (자전거타기) 선행 연구 기법에 비해 향상된 92.49%의 정확도를 보였으나 눕기, 앉기와 같은 기본적인 동작에서는 상대적으로 낮은 정확도를 보였다.
Nam 등[7]은 이미지 센서와 가속도 센서를 센서 퓨전한 멀티센서를 활용하여 동작을 구분하는 방법을 제안하였다. 먼저 이미지 센서에서 입력된 영상의 픽셀 변화를 통해 이동 방향을 분석하였다. 취득한 이미지는 Burt-Adelson의 가우시안 피라미드(Gaussian Pyramid)[8]가 적용된 Lucas-Kanade 옵티컬 플로우(Optical flow)[9]를 활용하여 특징 점을 추출하는 Feature Point Extraction을 수행한다. 앞으로 걷기와 뒤로 걷기의 경우 그리드 레벨로 영상을 분할하여 각 영역마다 벡터의 방향과 크기를 분석하였으며, 오른쪽 돌기와 왼쪽 돌기는 입력된 전체 영상에서 추출된 특징 점을 평균화하여 벡터의 방향과 크기를 계산하여 동작을 구분한다.
또한 가속도 센서로 동작 데이터를 수집한 뒤 FFT로 변환 하여 특징 데이터를 추출하였다. 가속도의 각 축 데이터를 FFT 변환하여 주파수 단위 별로 에너지 값과 축과 축 사이의 상관관계 데이터를 Support Vector Machine 입력 값으로 활용하였다.
Nam 등[7]의 기법은 앞으로 걷기 동작의 경우 이미지와 가속도 센서 각각 사용했을 때도 93%이상의 높은 인식률을 보였지만 계단 내려가기/올라가기 동작의 경우에 이미지센서만 활용했을 시 5%의 매우 낮은 인식결과를 보였다. 하지만 이미지, 가속도 센서를 동시에 활용한 결과 해당 동작의 인식률이 95%이상으로 매우 향상됨을 보였다. 결과적으로 다양한 정보를 활용하면 인식률 향상에 매우 도움이 된다는 사실을 입증하였다.
2-2 걸음 수 검출 기법 동향
걸음 수 검출은 동작이나 상황인지에 매우 중요한 정보로써 활용될 수 있기 때문에 다양한 검출 기법이 연구되고 있다.
Han [10]은 스마트폰에 내장된 가속도, 중력 센서를 활용하여 걸음 수를 측정한다. 이를 위해 가속도 SVM을 계산하고 걸음수 검출을 위한 High_Th, Low_Th 임계값을 설정한다. High_Th는 걸음 패턴 중 가장 높은 값인 정점을 구하기 위해 사용되며, Low_Th는 패턴 중 가장 낮은 값인 골을 구하기 위해 사용된다. High_Th보다 높은 곳에 정점이 존재하고 Low_Th보다 낮은 곳에 골이 존재하면 올바른 걸음으로 인지하였다. 한번 걸음이 검출 될 때마다 High_Th와 Low_Th는 재계산된다.
메커니즘의 성능 분석을 위해 10명의 실험자가 15m 구간에서 움직임 데이터를 측정하였으며 제안하는 방식과 스마트폰 App에서 제공하는 걸음수와 비교를 수행하였다. 제안하는 알고리즘은 99.1%, App은 98.5%의 성능을 보였다.
Jung 등[11]은 웨어러블 기기에 부착된 가속도 센서를 통해 걷는 동작과 뛰는 동작에서의 걸음 수를 측정하였다. 이 역시 가속도 SVM를 활용하여 회전 성분을 고려하지 않고 신호의 크기만을 활용하였으며 잡음을 제거하기 위해 중심 이동 평균 필터링을 사용하였다. 필터링 된 신호는 한 번에 받을 수 있는 window 구간 내에서 평균을 구하고 기울기의 증감을 통한 window peak detection을 활용하여 걸음수를 검출하였다. 부호가 변할 때를 peak라 할 때 양에서 음으로 가면 max peak, 음에서 양으로 변할 때 min peak라 하며 이 전체 합을 2로 나눈 값이 걸음 수로 인식된다. 제안한 방식은 3~6%의 오류를 보였다.
Hur 등[12]은 스마트폰의 가속도 센서와 근접 센서를 이용하여 다양한 스마트폰 소지 위치에 따라 적용 가능한 보행 수 측정 기법을 제안하였다. 발바닥이 지면에 닿는 순간인 접점에서 가속도는 최댓값이 된다. 따라서 기준점이 되는 임계값을 설정하고 접점에서 급격하게 커진 가속도 값이 임계값을 넘어서면 한 걸음이 이루어졌다고 판단하였으며 이러한 방법을 피크탐지법이라 한다. 스마트폰의 소지위치를 정면주시, 손파지, 통화 중, 상의 주머니, 하의 옆 주머니, 하의 뒷주머니로 분류하고 이를 인지하기 위해 3초 주기로 150개 가속도의 SVM을 계산하였다. 제안한 기법은 삼성 S 헬스 어플에서 제공하는 걸음 수와 정확도를 비교하였으며 7~10% 향상됨을 보였다.
2-3 보행속도 측정 기법 동향
보행 속도 또한 동작이나 상황인지에 매우 중요한 정보로 활용되고 있으며 보행속도를 측정하기 위해 보폭을 계산하는 연구가 활발하게 진행되고 있다.
Park 등[13]은 10대부터 60대 이상 각각 10명씩 대상으로 연령별 보행 속도 및 보폭을 비교하여 관찰하였으며 이는 체중, 신장, 정강뼈, 넙다리뼈, 엉덩뼈 등의 특성과 밀접한 관계가 있음을 보였다. 또한 10~60대 까지 연령별 남/녀 10명을 연구대상으로 선정하고 보폭 및 걸음 속도 데이터를 분석하였다. 분석 결과 30대까지 보행속도가 증가하고 4-50대에 감소하였으며 60대에 소폭 증가함을 보였다. 또한 보행속도가 증가할수록 보폭이 증가하는 결과를 보였다.
사람에 따라 다양한 특성(보행 속력, 골격근의 차이, 성격, 성별, 신장 등)으로 인해 다양한 보행형태가 존재한다[14]. Lim 등[15]은 32명의 실험 대상자의 보행특성을 분석하였다. 이와 같은 분석을 바탕으로 스마트폰의 3축 가속도 센서를 이용하여 개인의 특성을 고려한 보폭측정 알고리즘[16]을 제안하였다. Lee[16]의 메커니즘은 보폭의 최소/최대 임계치를 측정하고 측정된 움직임 데이터의 SVM의 주기적인 패턴을 활용하여 설계된 보폭 주기 측정 상태도를 기반으로 보폭주기를 측정한다. 실험결과 87%의 분류 정확도를 얻었으며 보폭과 보폭 주기를 활용하여 대상의 보행속도를 계산할 수 있다.
Ⅲ. 제안하는 위험 상황인지 메커니즘
3-1 위험 상황인지 메커니즘 개요
본 절에서는 제안 메커니즘이 인지할 대상의 위험 상황을 정의하고 위험 상황인지 모델을 정의한다.
그림 1은 위험 상황인지 모델의 개요를 보여준다. 고령자나 신체 허약자의 경우 건강한 대상에 비해 시각과 균형감각 등의 능력이 떨어지거나 기존의 지병으로 인해 운동능력이 저하될 수 있다. 이에 보행 중 장애물을 발견하지 못하거나 보행 면의 요철이 심할 경우 낙상이 발생하는 확률이 증가한다. 또한, 열사병이나 지병으로 인해 낙상하는 경우도 있다. 낙상이 발생한 경우 보통 자발적으로 일어나서 일상적인 움직임이 가능한 경우 크게 문제 될 것이 없지만 낙상이 발생한 후 정신을 잃거나 낙상으로 발생한 상해로 인해 정상적인 움직임이 불가능한 경우 매우 위험할 수 있다. 이럴 때 주변 혹은 보호자나 의료인의 적극적이고 즉각적인 대응이 필요하다.
따라서 본 논문은 대상의 위험 상황을 낙상 후 움직임이 저하된 경우로 정의하고 이를 인지하기 위해 데이터 퓨전을 통해 사용자의 다양한 움직임 정보(가속도, 걸음 수, 속도) 및 낙상이 발생한 시점의 전/후 상황 정보를 처리한다. 인지된 결과가 보호자, 주변 사람, 의료인 등에게 적절하게 제공된다면 정확하고 신속한 대응을 할 수 있을 것으로 판단된다. 이를 위해서 다음과 같은 동작 인식 상황을 정의하였다.
- 앉기 : 의자나 바닥면에 앉아서 일상적인 업무를 보거나 휴식을 취하는 행위
- 쪼그려 앉기 : 쪼그려 앉아 가끔 이동을 하면서 바닥면에 존재하는 대상의 작업을 하는 경우. 예를 들어 밭이나 논, 화훼 작업 등, 쪼그려 앉아 수행하는 작업을 수행하는 행위
- 느리게 걷기 : 천천히 가볍게 산책하는 상태. 속도 기준으로 1m/sec, 보폭은 분당 65회 정도로 걷는 행위
- 보통 걷기 : 일상적인 걸음걸이로 숨이 차지 않을 정도로 편안하게 걷는 상태. 속도 기준 1.5m/sec, 보폭은 분당 90회 정도로 걷는 행위
- 빠르게 걷기 : 경보와 같이 빠르게 걷는 상태로 숨이 찰 수 있는 정도의 상태. 속도 기준 2m/sec 보폭 기준 분당 120회 정도로 걷는 행위
- 운전 : 차량에 탑승하여 이동하는 행위
- 낙상 : 갑작스럽게 쓰러져 바닥면에 충돌하는 행위
- 위험상황 : 낙상이 발생한 후 일정 시간 동안 움직임이 발생하지 않는 상태. 대상이 쓰러진 후 정신을 잃었거나 정상적인 움직임이 가능하지 않은 상황
3-2 데이터 수집 환경 및 전처리 방법
본 절에서는 위험상황 인지를 위해 대상으로부터 데이터를 수집하는 환경과 인지 메커니즘을 위한 전처리 방법을 설명한다. 본 논문은 안드로이드 스마트폰을 기반으로 대상의 가속도, 걸음 수, 이동속도를 수집한다. 이를 위해 Samsung Galaxy S8 과 HUAWEI Mate 10 pro 두 가지 스마트폰을 활용하였다.
본 논문에서는 각도, 가속도, 속도 등의 다양한 움직임 데이터를 동작 인식 행동에 따라 수집하여 시간에 따른 패턴 분석, FFT 분석, SVM 분석 등 다양한 방법으로 분석을 시도하였으나 모든 목표 움직임 데이터는 특별한 패턴이나 영역을 보이지 않았다. 또한 각도나 가속도는 x, y, z 축으로 수집되는데 이는 측정 자세에 따라서 기준이 되는 축이 변동되는 문제점이 있다. 따라서 본 논문에서는 특정 축을 구분하지 않고 움직임의 크기를 나타내는 SVM을 활용한 LMV 기반 메커니즘을 제안한다.
SVM는 2장 1절에서 소개한 식 (1)과 같이 계산된다. 이와 같은 SVM 은 크기만을 나타내므로 센서의 착용 자세에 영향을 받지 않는다. 스마트 폰의 경우 사용자가 스마트폰을 들고 있는 자세에 따라서 축의 변화가 발생하므로 SVM 값을 활용하여 이와 같은 문제를 해결한다. 하지만 수집된 동작의 SVM 값은 그림 2와 같이 데이터 영역이 서로 겹치고 혼재되어 있다. 이 경우 특정 움직임 데이터를 추출하기란 매우 어렵다.
이와 같은 문제를 해결하기 위해 본 논문에서는 LMV를 활용한다. LMV는 데이터가 증가하다가 감소하는 패턴중 가장 큰 값을 의미한다. 그림 2는 움직임 데이터에서 추출된 LMV를 점으로 표현하였다. LMV는 해당 움직임 데이터가 분포되는 패턴에서 최대값을 추출한 것으로 움직임마다 서로 다른 범위에 LMV가 나타난다. 그림 2를 살펴보면 빠른 걸음은 보통걸음에 비해 높은 영역에 LMV가 분포하며 느린 걸음의 경우 매우 낮은 영역에 LMV가 분포함을 알 수 있다. 결과적으로 제안하는 메커니즘은 위험상황 인지를 위해 수집된 가속도 데이터를 기반으로 SVM를 계산하고 이를 활용하여 LMV를 추출한다.
3-2 위험 상황인지 메커니즘
그림 3은 본 논문에서 제안하는 위험 상황 인지 메커니즘의 개요를 보여준다. 이는 센서 데이터 수집, 기준값(Threshold) 생성, 상황인지, 데이터 저장소 등으로 구성된다. 각 구성별 상세 기능은 아래와 같다.
- 센서 데이터 수집 : 상황인지를 위해 수집되는 데이터는 가속도 x, y, z 값과 걸음 수, 속도를 포함하고 있다. 가속도 값은 100ms마다 한 번씩 수집하며, 걸음 수는 1초에 한 번씩 수집한다. 속도의 경우 GPS 신호가 잡혀 있어야 측정 가능하므로 실외에서만 수집되며 100ms마다 한 번씩 수집한다.
- 기준값 생성 : 사람마다 걷는 속도나 움직임의 크기가 다르므로 수집되는 데이터는 각자 다른 영역에 분포하고 있다. 따라서 대상의 특성을 적용하기 위해 5가지 구분 목표 동작 (앉기, 쪼그려 앉기, 느리게 걷기, 보통 걷기, 빠르게 걷기) 별로 기준값 생성을 위한 데이터를 수집한다. 이를 위해 동작마다 30초 분량의 센서 데이터를 수집하고 이를 이용하여 움직임 기준값을 계산한다. 기준값은 가속도 SVM를 통해 추출된 LMV의 평균으로 계산된다.
- 상황인지 : 기준값이 추출되면 실시간 동작 구분이 가능하다. 상황인지 모듈은 100ms마다 센서 데이터를 수집하고 이를 활용하여 SVM 값을 계산한다. 또한, 계산된 SVM를 통해 LMV 값을 추출하고 이를 기반으로 데이터 퓨전 기반의 상태 분류를 수행한다. 상태 분류는 수집된 가속도, 걸음 수, 속도 데이터에 이전 상태 정보를 결합하여 현재 상태가 운전, 활동, 낙상, 위험 인지 여부를 구분한다. 이는 그림 5의 상태 전환모델과 그림 6의 활동 구분 메커니즘을 이용하여 구분된다.
- 저장소 : 데이터 퓨전을 위해 수집된 센서 데이터와 상태 및 활동 정보를 저장한다.
그림 4는 활동 구분을 위한 데이터 분포 범위를 계산하는 방법이다. 기준 움직임 데이터에서 추출된 기준값은 그 종류에 따라 SitTH(앉아 있는 동작), SqurtTH(쪼그려 앉기 동작), SlowTH(느리게 걷기 동작), NormalTH(보통 걷기 동작), FastTH(빠르게 걷기 동작) 5가지 값이 존재한다. 이 값은 각 동작의 LMV 평균을 통해 계산된 것으로 특정 동작의 LMV가 기준값을 중심으로 위아래 영역에 분포된 것을 의미한다. 따라서 각 동작의 데이터 분포 범위는 아래와 같이 계산될 수 있다. 보통 걸음을 기준으로 설명해 보면 NornalTH를 중심으로 LMV가 분포되어 있으므로 위로는 FastTH와 NormalTH의 중간 지점, 아래로는 NormalTH와 SlowTH의 중간 지점까지 분포한다고 정의할 수 있다. 따라서 동작별 데이터 분포 범위는 그림 4와 같이 (상위 움직임 기준값 – 해당 기준값)을 상위 범위로, (해당 기준값 – 하위 움직임의 기준값)을 하위 범위로 계산한다. 이를 통해 LMV가 어떤 동작인지 구분할 수 있다.
표 1은 인식 목표 상황의 움직임 데이터를 분석하여 범위를 정의한 것이다. 상황인지를 위해 LMV, 속도, 걸음 수를 분석하였으며 1~6까지 단계로 정의하였다. 다만 LMV LV1의 경우 낙상을 판단하기 위해 LMV가 아닌 SVM 값을 활용하였다. 낙상 데이터는 아주 짧은 시간에 발생하기 때문에 LMV가 추출되지 않는 경우가 있기 때문이다. 따라서 낙상은 특별히 SVM 값을 활용하여 100ms마다 낙상 여부를 판단한다. 낙상은 순간적으로 물체가 자유 낙하 하는 것과 같은 특성을 나타내며, 데이터 분석 결과 기본적으로 측정되는 중력 가속도 9.8m/sec2 보다
매우 작은 0.5m/sec2 이하의 SVM 값이 측정되었다. 따라서 LV 1은 SVM 값이 0.5 m/sec2 이하일 경우로 정의한다. 속도는 대상의 보폭을 기준으로 범위를 정의하였다. 보폭은 일반적으로 (자신의 키 – 100)으로 간단히 계산할 수 있다 [17].
걸음 수의 경우 걸음 수가 전혀 인식되지 않는 LV 1, 초당 걸음 수가 한 걸음 인식되는 LV2, 초당 걸음 수가 두 걸음 인식되는 LV3, 그 이상 매우 빠른 걸음인 LV4를 정의하였다.
표 1에서 정의한 것처럼 인식 목표 상황은 저마다 다른 LMV, 속도, 걸음 수를 보인다. 표 2는 다음과 같이 7가지 인식 목표 동작별 움직임 데이터 분석 결과를 나타낸다.
- 앉기 동작 : 가속도의 변화가 거의 없어 중력가속도 9.8 m/sec2에 매우 근접한 LV2 값이 지속적으로 측정되며 속도는 0에 가깝다. 또한 걸음 수가 증가되지 않는다.
- 쪼그려 앉기 동작 : LMV LV은 2-3 정도로 매우 적은 움직임이 측정되고 있으며 속도와 걸음수 역시 가장 낮은 LV1로 정의된다.
- 느린 걸음 : LMV는 LV4로 측정되었으며 속도와 걸음수는 사람에 따라 편차가 커서 동작 구분에 활용하기 어렵다. 따라서 느린 걸음은 걸음수와 속도를 배제하고 LMV만을 이용하여 구분한다.
- 보통 걸음 : LMV LV5로 구분 가능하며 느린 걸음과 동일하게 속도 및 걸음 수를 배제하였다.
- 빠른 걸음 : LMV LV6으로 구분 가능하며 느린, 보통 걸음과 동일하게 속도 및 걸음 수를 배제하였다.
- 운전 동작 : LMV LV이 4-6으로 매우 넓게 분포한다. 운전 상황은 차량이 주행하다가 커브 혹은 정지 신호를 만났을 시 급격하게 운동량이 줄어들거나 앉아 있는 동작과 동일하게 움직임이 거의 측정되지 않는 경우가 자주 발생한다. 이를 위해 본 논문에서는 상태전환 모델을 제안하여 운전 상황를 인식하며 운전의 가장 큰 특징은 LMV와 속도가 매우 큰 반면 걸음 수는 측정되지 않는다.
- 낙상 : SVM 값이 중력 가속도 9.8m/sec2에 비해 매우 낮은 0.5 m/sec2 이하로 측정되어 LV 1의 상태를 갖는다. 걸음 수나 속도 데이터는 인식에 영향을 미치지 않는다.
본 논문의 인식 목표 상황은 일반적인 활동 외에 운전, 낙상, 위험 상황 등 움직임 데이터만으로 구분하기 어려운 상태가 존재한다. 운전의 경우 매우 빠르게 이동할 때도 있지만 좌/우회전을 한다거나 과속방지턱 등이 존재할 경우 속도를 매우 낮추는 경우가 있으며, 신호대기 중인 경우 앉아 있는 동작과 매우 유사한 움직임 데이터가 수집된다. 또한, 위험 상황의 경우 낙상이 발생한 뒤 대상이 정상적인 움직임 데이터가 수집되지 않고 움직임이 없거나 매우 낮은 경우 실신이나 심각한 신체 손상이 있는 것으로 간주하므로 움직임 데이터 뿐 아니라 이전 상태에 따른 현 상태정보의 데이터 퓨전이 필요하다.
이를 위해 본 논문에서는 그림 5와 같은 상태전환 모델을 제안한다. 제안하는 상태 전환 모델은 정상적인 움직임을 나타내는 활동(Activity), 낙상(Fall), 운전(driving), 낙상 후 심각한 위험 상황을 나타내는 위험(Danger)으로 구성된다.
- 활동 : 상황인지 시작 시 기본이 되는 상태로 낙상 / 운전 등의 상태로 전환이 가능한 상태를 의미한다. 현재 상태가 활동 상태인 경우, 그림 6의 활동 구분 메커니즘이 동작하여 5가지 세부 활동을 구분한다.
- 운전 : 운전의 경우 기존 상태가 활동 상태일 때 진입 할 수 있다. 그 조건은 걸음 수가 검출되지 않음에도 불구하고 속도가 LV3 이상이면서 LMV가 LV4 이상일 경우로 정의하였다. 이를 통해 걸음 수가 측정되지 않으면서 속도와 LMV 값이 발생하는 경우 운전 상태로 전환되며 기존 상태가 운전이면서 걸음 수가 발생한 경우 운전 상태에서 활동 상태로 전환하게 한다.
- 낙상 : 낙상의 경우 운전과 마찬가지로 기존 상태가 활동 상태일 때 진입 할 수 있다. 이때, 대상의 LMV가 LV1이면 활동에서 낙상으로 전환되며 기존 상태가 낙상일 때, 정상적인 움직임인 LMV LV3 ~ 6 이 검출될 경우, 활동 상태로 전환한다. 또한, 위험 상태를 검출하기 위해 낙상 후 움직임이 거의 없는 상태를 지속적으로 확인한다.
- 위험 : 위험 상태는 낙상 후 움직임이 없을 때 전환된다. 기존 상태가 낙상인 경우, 위험 상태를 감지하기 위해 지속적으로 LMV 값을 살핀다. 이때 LMV 값이 앉아 있는 동작과 같이 LV2가 유지되는 경우 대상이 움직일 수 없는 상황이라고 간주한다. 본 연구에서는 이를 fallCNT로 정의하고 유지되는 상태가 5 이상일 경우 위험 상황으로 전환된다. 위험 상황으로 전환된 경우 사용자나 보호자가 상황인지 메커니즘을 초기화할 때까지 유지된다.
현재 상태가 활동일 때 전환 될 수 있는 상태는 낙상, 운전이며 활동 상태에서 발생할 수 있는 세부 동작은 앉기, 쪼그려 앉기, 느리게 걷기, 보통 걷기, 빠르게 걷기 5가지이다. 그림 6은 세부적 인지를 위한 활동 구분 메커니즘을 보여준다. 가속도, 걸음 수, 속도 등의 센서 데이터가 수집되면 가속도의 SVM을 계산하고 LMV를 추출한다. 추출된 LMV가 LV1이라면 SVM 값이 0.5 이하인 자유 낙하 상태이므로 낙상으로 구분된다. 만약 LMV 값이 LV2 이상이면 걸음 수를 기반으로 다시 판단한다. 이때, 측정 구간의 걸음 수가 0인 경우, 움직임이 매우 적은 앉기 동작과 움직임은 매우 크지만 걸음 수가 검출되지 않는 운전 상태, 마지막으로 움직임이 간헐적으로 존재하지만 걸음 수가 측정되지 않는 쪼그려 앉기 중 하나로 분류할 수 있다. 걸음 수가 측정되지 않고 속도가 3단계 이상이면 실외에 있는 것으로 볼 수 있으며 동시에 LMV LV4 이상이면 운전 상태로 구분된다. 걸음 수가 측정되지 않으면서 LMV LV2이면 앉아 있는 동작이며, LMV LV 3이면 쪼그려 앉기로 구분한다.
낙상이 아니면서 걸음 수가 측정되면 느리게 걷기, 보통걷기, 빠르게 걷기로 구분 할 수 있다. 이중 느리게 걷기는 LMV LV4, 보통걷기는 LMV LV5, 빠르게 걷기는 LMV LV6이다.
Ⅳ. 성능분석
제안하는 메커니즘의 성능분석을 위해 7명의 대상자에게 움직임 데이터를 수집하였다. 5가지 동작 별로 30초씩 수집하였으며 원활한 실험을 위해 높이 차이가 존재하지 않고 GPS 신호가 잡히는 넓은 운동장에서 측정하였다. 실험자 코드의 첫 글자는 성별을 나타내고 뒤의 번호는 실험자 구분 번호이다.
그림 7은 첫 번째 실험자 M01로 부터 수집된 5가지 동작의 LMV 데이터이다. 해당 실험자의 앉기 동작은 가속도의 변화가 거의 없어 중력가속도와 동일한 9.8m/sec2이 균일하게 수집되는 것을 볼 수 있으며, 쪼그려 앉기 데이터가 약간 높게 측정되었다. 느리게 걷기의 경우 보통걷기와 앉기 동작의 중간 정도에 분포하는 것을 볼 수 있으며, 빠르게 걷기의 경우 편차가 존재하지만 전반적으로 서로 각자의 영역에 분포됨을 볼 수 있다. 따라서 실험자는 빨리 걷기 동작을 제외하고 나머지 4가지 동작에서 258개 샘플 모두 100%의 인식률을 보였다. 빨리 걷기의 경우 131번째 샘플 근처에서 LMV가 급격하게 낮아진 이유로 97.7%의 인식률을 보였으나 전반적인 인식결과는 매우 높게 측정되었다.
그림 8은 두 번째 실험자 M02로 부터 수집된 5가지 동작의 LMV 데이터이다. 해당 실험자의 앉기 동작도 중력가속도와 동일한 9.8m/sec2이 균일하게 수집되는 것을 볼 수 있으며, 나머지 움직임들의 데이터가 층층이 분포함을 확인할 수 있다. 하지만 이 실험자는 동작의 편차가 첫 번째 실험자에 비해 크게 측정되었으며 구간이 겹치는 영역들이 혼재하는 것으로 확인되었다. 따라서 인식 결과는 앉기 100%, 쪼그려 앉기 85.7%, 느린 걸음 94.6%, 보통걸음 96.5%, 빠른 걸음 93.4%로 측정되었다. 해당 실험자는 첫 번째 실험자에 비해 움직임의 편차가 컸음에도 불구하고 쪼그려 앉기를 제외한 나머지 동작의 인식률이 모두 90%이상으로 상당히 높게 측정되었다. 쪼그려 앉기 동작은 앉기 동작와 약간의 움직임이 혼합되어 있는 형태라 다른 동작에 비해 인식률이 낮게 측정된 것으로 생각된다.
그림 9는 세 번째 실험자 M03로부터 수집된 5가지 동작의 LMV 데이터이다. 해당 실험자 역시 앉기 동작의 경우 중력가속도와 동일한 9.8m/sec2이 수집되는 것을 볼 수 있으며, 나머지 움직임들의 데이터가 층층이 분포함을 확인할 수 있다. 이 실험자는 두 번째 실험자에 비해 동작 데이터의 편차가 적게 측정되었다. 따라서 인식 결과는 쪼그려 앉기 (95.3%)를 제외하고 나머지 4가지 동작이 모두 100% 인식됨을 보였다. 이 실험자의 보통걸음은 다른 사용자 보다 낮은 15m/sec2 이하에 분포하여 상대적으로 좁은 영역에 느린 걸음과 쪼그려 앉기 동작 데이터가 분포한다. 하지만 움직임의 편차가 크지 않고 일정한 LMV 값이 유지되어 동작의 영역이 확실히 분리되어 분포하여 인식률이 높게 나온 것으로 판단된다.
그림 10은 네 번째 실험자 W01로 부터 수집된 5가지 목표 동작의 LMV 데이터이다. 해당 실험자의 앉기 동작의 경우 다른 실험자와 동일하게 중력가속도와 동일한 9.8m/sec2이 균일하게 수집되는 것을 볼 수 있으며, 나머지 움직임들의 데이터가 층층이 분포함을 확인할 수 있다. 하지만 이 실험자는 쪼그려 앉기 동작의 데이터가 다른 실험자에 비해 상대적으로 큰 범위에서 측정됨을 확인 할 수 있다. 이는 쪼그려 앉기 동작에서 이리저리 이동하며 작업하는 것과 같은 동작의 움직임 크기가 다른 대상에 비해 매우 큰 것으로 판단된다. 따라서 쪼그려 앉기 동작과 느린 걸음 동작이 혼재되어 나타나는 것을 확인할 수 있다. 따라서 인식 결과는 앉기 100%, 쪼그려 앉기 49.6%, 느린 걸음 99.2%, 보통걸음 100%, 빠른 걸음 100%로 측정되었다.
해당 실험자는 쪼그려 앉기를 제외한 나머지 동작의 인식률이 모두 99%이상으로 상당히 높게 측정되었다. 쪼그려 앉기 동작은 생각보다 LMV가 높고 편차가 크게 측정되어 다른 동작에 비해 인식률이 낮게 나은 것으로 생각된다.
그림 11은 다섯 번째 실험자 W02로부터 수집한 5가지 동작의 LMV 데이터이다. 해당 실험자는 4번째 실험자와 매우 비슷한 인식 결과를 나타냈다. 쪼그려 앉기를 제외한 나머지 4가지 동작 모두 100% 인식률을 보였으며 쪼그려 앉기 동작은 46.9%
의 인식률을 보였다. 하지만 다섯 번째 실험자는 네 번째 실험자와는 다르게 쪼그려 앉기 동작의 LMV가 매우 낮게 측정되어 앉기 동작으로 인식된 것으로 보인다. 또한 해당 실험자는 4번째 실험자 보다 낮은 영역에 빠른 걸음이 분포함을 볼 수 있지만 편차가 매우 낮아 인식률 저하는 발생하지 않았다.
그림 12는 여섯 번째 실험자 W03로 부터 수집된 5가지 동작의 LMV 데이터이다. 해당 실험자는 다섯 번째 실험자보다 낮은 영역에 빠른 걸음 데이터가 분포하였으며 그 결과 매우 촘촘한 영역에 각 운동 데이터가 분포함을 알 수 있다. 이는 해당 실험자의 걸음 특성으로 분석된다. 하지만 인식결과는 쪼그려 앉기를 제외하고 모두 100%로 매우 높은 인식률을 보인다. 이 역시 지속적으로 안정된 데이터가 나온 결과로 생각된다. 쪼그려 앉기 동작의 인식률은 87.2%로 움직임이 매우 적어 앉기 동작으로 인식된 것으로 판단된다.
그림 13은 마지막 실험자 W04로 부터 수집한 5가지 동작의 LMV 데이터이다. 해당 실험자 또한 매우 낮은 영역에 데이터가 분포되어 있다. 인식 결과는 앉기 100%, 쪼그려 앉기 58.9%, 느린 걸음 100%, 보통걸음 97.3%, 빠른 걸음 88.8%이다. 이는 본 실험자의 움직임 편차가 커 다른 데이터의 영역과 혼재되어 타 실험자에 비해 약간 낮은 인식률을 보인 것으로 생각된다.
표 3은 제안하는 방식과 기존 연구들의 인식률을 비교한 것이다. [5]의 앉기 동작은 높은 인식률을 보이지만 걷기동작은 80%대 인식률을 보였다. [6],[7] 의 경우 걷기동작에서 90%이상 높은 인식률을 보였지만 관련 연구 모두 느린걸음, 쪼그려 앉기 등의 세부동작은 인식할 수 없었다. 여름철 열사병에 의한 위험상황은 농촌에서 작업시 쪼그려 앉기 자세에서 발생되어지는 경우가 많아 해당 동작의 인식이 중요하며 제안하는 방식은 앉기 100%, 걷기 동작 97%이상, 쪼그려 앉기 74.8%의 전반적으로 우수한 인식률을 보였다.
Ⅴ. 결 론
고령자나 환자의 경우 운동능력저하나 지병으로 인해 보행 중 장애물을 발견하지 못하거나 보행면의 요철이 심할 경우 낙상이 발생하는 확률이 증가한다. 낙상이 발생한 경우 보통 자발적으로 일어나서 일상적인 움직임이 가능한 경우 크게 문제 될 것이 없지만 낙상이 발생한 후 정신을 잃거나 낙상에 의해 발생한 상해로 인해 정상적인 움직임이 불가능 한 경우 매우 위험할 수 있다. 이러한 경우 주변 혹은 보호자 및 의료인의 적극적이고 즉시적인 대응이 필요하다.
이와 같은 복잡한 상황인지는 한가지 데이터만으로 인지하기 매우 어렵다. 따라서 다양한 센서 데이터를 활용하는 센서퓨전이나 다수의 센서 데이터에 관련 정보를 함께 활용한 데이터 퓨전기법의 연구가 진행되고 있다.
따라서 본 논문은 위험상황 및 전후 상황의 인지를 위해 사용자의 다양한 동작 데이터와 상황데이터를 결합하는 데이터 퓨전 기반의 위험상황 인지 메커니즘을 제안하였다.
제안한 위험상황 인지 메커니즘은 100ms 마다 가속도, 속도 값을 수집하고 가속도 SVM을 계산하여 SVM의 구간 최댓값인 LMV를 추출한다. 추출된 LMV 값은 데이터 특성에 따라 가중치를 달리하여 갱신하며 1차적으로 상태 전환 모델을 활용한 데이터 퓨전 기법으로 활동(Activity), 낙상(Fall), 운전(driving), 위험(Danger) 상태를 구분한다. 현재 상태가 활동인 경우 2차적으로 앉기, 쪼그려 앉기, 느린 걸음, 보통걸음, 빠른 걸음 등 세부적인 상황을 구분한다.
성능 분석 결과 앉기 100%, 쪼그려 앉기 74.8%, 느린 걸음 99.1%, 보통 걸음 99.1%, 빠른 걸음 : 97.1% 의 평균 인식률을 보였고 기존의 연구들과 비교하여서도 제안된 메커니즘이 다양한 동작을 인식하는 동시에 높은 인식률을 보였다.
추후 제안한 위험상황인지 메커니즘을 기반으로 실시간 위험상황 전달 서비스를 개발하여 실시간으로 수집되는 상황 정보를 효과적으로 보호자 및 관련 기관에게 전달하여 피보호자의 모니터링 및 응급 상황 대처가 가능하게 할 예정이다.
Acknowledgments
이 논문은 2017년도 한밭대학교 교내학술연구비의 지원을 받았음
References
- C. B. Kim, S. S. Lee, and B. S. Lee, “A Study on Adaptive U-healthcare Security Framework based Context-Aware”, The Journal of Korean Institute of Information Technology, 6(4), p37-46, August), (2008.
- Kionix, “Kionix Sensor Fusion,” [Internet], Available: http://ko.kionix/sensor-fusion/.
- S. H. Han, D. J. Ha, and J. H. Choi, “Data fusion: definition, problem, solution”, Proceedings of Symposium of the Korean Statistical Society, (2004).
- K. Chaccour, R. Darazi, A. Hajjam, El Hassani, and E. Andres, “From Fall Detection to Fall Prevention: A Generic Classification of Fall-Related Systems”, IEEE Sensors Journal, 17(3), p812-822, February), (2017. [https://doi.org/10.1109/jsen.2016.2628099]
- H. K. Yang, H. S. Yong, “Real-Time Physical Activity Recognition Using Tri-axis Accelerometer of Smart Phone”, Journal of Korea Multimedia Society, 17(4), p506-513, April), (2014. [https://doi.org/10.9717/kmms.2014.17.4.506]
- H. S. Lee, and S. Y. Lee, “Real-time Activity and Posture Recognition with Combined Acceleration Sensor Data from Smartphone and Wearable Device”, Journal of KISS : Software and Applications, 41(8), p586-597, August), (2014.
- Y. Y. Nam, Y. J. Choi, W. D. Jo, “Human Activity Recognition using an Image Sensor and a 3-axis Accelerometer Sensor”, JOURNAL OF INTERNET COMPUTING AND SERVICES, 11(1), p129-141, February), (2010.
- P. Burt, and E. Adelson, “The Laplacian Pyramid as a Compact Image Code”, IEEE Transactions on communications, 31(4), p532-540, April), (1983. [https://doi.org/10.1109/tcom.1983.1095851]
- B. Lucas, and T. Kanade, “An iterative image registration technique with an application to stereo vision”, In Proceedings of the 7th international joint conference on Artificial intelligence, Vancouver, p121-130, August), (1981.
- Y. H. Han, “Step Count Detection Algorithm using Acceleration Sensor”, Journal of Rehabilitation Welfare Engineering & Assistive Technology, 9(3), p245-250, August), (2015.
- I. W. Jung, I. Youn, H. S. Park, and Y. J. Lee, “Step count Detection Algorithm Compare frequency-time domain using 3-axial Accelerometer”, Korean Society for Precision Engineering 2015 Spring Conference, p922-923, May), (2015.
- T. H. Hur, H. N. Yeom, and S. Y. Lee, “Accurate Step-Count Detection based on Recognition of Smartphone Hold Position”, Journal of KIISE, 44(4), p374-382, April), (2017. [https://doi.org/10.5626/jok.2017.44.4.374]
- S. J. Park, J. S. Lee, D. H. Kang, E. H. Jeong, H. J. Jeong, and S. B. Park, “A Study on the walking speed and stride of the Age”, Proceedings of Symposium of the Ergonomics Society of korea, p430-434, November), (2007.
- C. S. Chung, I. S. Shin, J. S. Seo, S. D. Eun, and K. In, “The Analysis of a Gait Pattern and the Mechanical Efficiency on Ages and Speed Conditions”, Korean Journal of Sport Biomechanics, 10(2), p205-219, January), (2001.
- W. S. Lim, T. B. Ryu, H. W. Choi, H. S. Choi, and M. K. Chung, “A Comparison of Gait Characteristics between Korean and Western Young People”, Journal of the Ergonomics Society of Korea, 25(2), p33-41, May), (2006.
- B. M. Lee, “Adaptation of Customized Measurement of Stride Length in Smart Device”, JOURNAL OF THE KOREA CONTENTS ASSOCIATION, 13(4), p35-43, April), (2013. [https://doi.org/10.5392/jkca.2013.13.04.035]
저자소개
2009년 : 한밭대학교 멀티미디어공학과 (공학사)
2011년 : 한밭대학교 멀티미디어공학과 (공학석사)
2018년 : 한밭대학교 멀티미디어공학과 (공학박사)
2015년~현 재: 한국 ITU연구위원회 국제표준전문가
2018년~현 재: 한밭대학교 멀티미디어공학과 박사후연구원
※관심분야:Mobility Management, Mobile Multicasting, 사물인터넷, 소셜 사물인터넷, Semantic Processing, Service Composition, 상황인지, Metadata modeling, Trust management
2018년 : 한밭대학교 정보통신공학과 (공학사)
2018년~현 재: 한밭대학교 멀티미디어공학과 석사과정
※관심분야:추천시스템, 머신러닝, 사물인터넷
2016년 : 한밭대학교 정보통신공학과 (공학사)
2018년~현 재: 한밭대학교 멀티미디어공학과 석사과정
※관심분야:추천시스템, 딥러닝, 사물인터넷, 데이터베이스
2017년 : 한밭대학교 정보통신공학과 (공학사)
2017년~현 재: 한밭대학교 멀티미디어공학과 석사과정
※관심분야:사물인터넷, 헬스케어, 상황인지
1983년 : 홍익대학교 (공학사)
1995년 : 충남대학교 (공학석사)
2003년 : 충남대학교 (공학박사)
1983년~2005년: 한국전자통신연구원 팀장/책임연구원
2005년~현 재: 한밭대학교 정보통신공학과 교수
2006년~현 재: 한국ITU연구위원회 국제표준전문가 (ITU-T SG13 Editor)
2012년~2013년: 프랑스 Institute TelecomSudParis 방문교수
※관심분야: Semantic Processing, Trust Management, 사물인터넷, 소셜 사물인터넷,