이동 컴퓨팅 환경에서 사용자 움직임 판별은 해결해야 할 중요한 이슈중의 하나이다. 본 논문에서는 유클리디안 거리 유사도를 이용하여 스마트폰 사용자의 움직임을 인식하고 판별하기 위한 방법을 제시한다. 제안된 방법에서는 GPS와 가속 센서를 이용하여 데이터를 수집하고, 수집된 데이터를 이용하여, 사용자의 정지, 걷기, 뛰기, 차량이동을 판별한다. 제안된 방법의 타당성과 효율성을 검증하기 위하여, 안드로이드 시스템에 유클리디안 거리 유사도의 여러 변형을 이용한 응용프로그램을 구현하여 그 정확도를 측정하였다. 실험 결과, 사용자 움직임 종류를 90% 이상의 정확도를 가지고 판별해 내었다.
이동 컴퓨팅 환경에서 사용자 움직임 판별은 해결해야 할 중요한 이슈중의 하나이다. 본 논문에서는 유클리디안 거리 유사도를 이용하여 스마트폰 사용자의 움직임을 인식하고 판별하기 위한 방법을 제시한다. 제안된 방법에서는 GPS와 가속 센서를 이용하여 데이터를 수집하고, 수집된 데이터를 이용하여, 사용자의 정지, 걷기, 뛰기, 차량이동을 판별한다. 제안된 방법의 타당성과 효율성을 검증하기 위하여, 안드로이드 시스템에 유클리디안 거리 유사도의 여러 변형을 이용한 응용프로그램을 구현하여 그 정확도를 측정하였다. 실험 결과, 사용자 움직임 종류를 90% 이상의 정확도를 가지고 판별해 내었다.
Moving context determination is an important issue to be resolved in a mobile computing environment. This paper presents a method for recognizing and classifying a mobile user's moving context by Euclidean distance similarity. In the proposed method, basic data are gathered using Global Positioning ...
Moving context determination is an important issue to be resolved in a mobile computing environment. This paper presents a method for recognizing and classifying a mobile user's moving context by Euclidean distance similarity. In the proposed method, basic data are gathered using Global Positioning System (GPS) and accelerometer sensors, and by using the data, the system decides which moving situation the user is in. The decided situation is one of the four categories: stop, walking, run, and moved by a car. In order to evaluate the effectiveness and feasibility of the proposed scheme, we have implemented applications using several variations of Euclidean distance similarity on the Android system, and measured the accuracies. Experimental results show that the proposed system achieves more than 90% accuracy.
Moving context determination is an important issue to be resolved in a mobile computing environment. This paper presents a method for recognizing and classifying a mobile user's moving context by Euclidean distance similarity. In the proposed method, basic data are gathered using Global Positioning System (GPS) and accelerometer sensors, and by using the data, the system decides which moving situation the user is in. The decided situation is one of the four categories: stop, walking, run, and moved by a car. In order to evaluate the effectiveness and feasibility of the proposed scheme, we have implemented applications using several variations of Euclidean distance similarity on the Android system, and measured the accuracies. Experimental results show that the proposed system achieves more than 90% accuracy.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 GPS와 가속도 센서에서 출력되는 데이터를 수집하고 정지, 걷기, 뛰기, 차량이동의 4가지 이동상황을 판별하는 실험을 수행 하였다.
본 논문에서는 본 장에서 측정된 속도와 가속도 대표값의 결과를 이용하여 4절에서 소개하는 유클리디안 거리 유사도를 응용한 실험을 통해 제안하는 2 Point 유클리디안 거리 방법의 성능을 검증하여 그 실효성을 나타낼 것 이다.
본 논문에서는 스마트폰에 내장되어 있는 GPS에서 보내주는 위도와 경도 그리고 가속도 센서에서 보내주는 정보를 이용하여 사용자의 이동상황을 판단한다. 그리고 가속도센서 데이터의 경우 x, y, z 축에 따라 환경적 요소의 영향을 받으므로 이를 3.
본 논문에서는 이러한 상황 중 사용자 상황 중의 하나인 사용자 이동상황을 스마트폰을 이용하여 판단하고자 한다. 센서에서 출력되어지는 데이터들은 수치 데이터로 그 의미의 확인이 어렵고 정지, 걷기, 뛰기, 차량이동과 같은 추상적 판단을 위해서는 GPS와 가속도 센서의 데이터를 이용하여 판단해야 하며 이를 위해 피 실험자로부터 위치정보와, 가속도센서 값을 수집하고 정지, 걷기, 뛰기, 차량이동 중 어느 상황과 유사한지를 판단해야 한다.
본 논문은 선행 연구자들의 연구를 참고하여 스마트폰을 기반으로 이동상황에 따른 센서 데이터를 수집하고 이를 바탕으로 이동상황 판별 방법을 제안한다.
제안 방법
3.1절의 [Fig. 1]의 알고리즘을 적용, [Table 1]에 나타낸 것과 같이 안드로이드 기반의 스마트폰에 구현하여 백그라운드로 앱을 구동하고 일반적인 상황에서의 측정값을 얻기 위해 피 실험자의 손에 스마트폰을 쥐거나 주머니에 넣고 측정 하였으며 정지, 걷기, 뛰기, 차량이동의 상황에 따라서 다양한 움직임이 이루어질 수 있다고 보고 각 상황에 맞는 활동 분류기준을 만들어 [Table 2]와 같이 구성 하였다.
4.2 절의 평균값을 이용한 유클리디안 거리 유사도의 문제점인 차량이동에 대한 낮은 수치를 보완하기 위하여 [Table 3]에 결과를 참고하여 표준편차를 이용, 각 클래스의 속도와 가속도의 영역을 지정 하고, 이 영역내의 측정값에 대해서 해당 이동상황으로 판별하는 방법을 사용하였다.
4.2절에서 실험한 방법의 문제점을 개선하기 위하여 정지, 걷기, 뛰기, 차량이동의 클래스별로 각 2개의 대상 포인트를 설정하고 유클리디안 거리를 사용한 유사도를 측정하여 이동상황을 판단하는 실험을 수행하였다.
Hong과Mok은 가속도센서를 사용하였으며 이동상황을 기다림, 걷기, 뛰기의 3가지로 구분하고 스마트폰의 이용 상황과 미사용 상황으로 나누어 6가지로 상황을 정의하고 각 동작마다 0.1초당 1개씩 2분간 수집한 데이터를 이용하여 통계적 방법의 알고리즘을 통해 동작을 판단하는 실험을 하였다. 이에 대한 정확도는 [Table 8]에 나타내었다.
Shoaib는 가속도센서(Accelerometer), 자이로센서 (gyroscope), 지자기센서(magnetometer)를 사용하여 계단내려가기, 뛰기, 앉기, 서기, 계단 올라가기, 걷기의 6가지 물리적인 동작에 대하여 50 개 전후의 샘플 데이터를 수집하고 WEKA To lBox에서 제공하는 SVM(Support Vector Machine), 신경망(Neural Networks), 회기분석(Logistic Regres ion), KNN(K Nearest Neighbor)등의 도구를 사용하여 10-fold cors validation방법으로 실험 하였다.
Shoaib의 경우 정지와 가장 유사한 상황인 앉기와 서기 모두 같은 정확도를 기록하여 이를 정지와 비교 하였다. 그리고 Shoaib과 본 논문에서의 방법 모두 스마트폰을 사용하며 움직이는 환경을 가정하지 않았으며, Hong과 Mok의 경우 이를 감안하여 실험 결과중 스마트폰 미사용 결과와 비교하였다.
정지, 걷기, 뛰기, 차량이동의 사용자 상황을 판단하기 위해서는 가속도센서에서 출력되는 정보만으로는 충분하지 않다. 그래서 가속도와 함께 GPS에서 보내주는 위도와 경도 데이터를 함께 이용하며 GPS로 측정한 경도와 위도 정보를 구체에서의 거리 계산 공식[16]을 이용하여 이동거리를 계산하고 이를 속도로 환산 하였다.
Shoaib의 경우 정지와 가장 유사한 상황인 앉기와 서기 모두 같은 정확도를 기록하여 이를 정지와 비교 하였다. 그리고 Shoaib과 본 논문에서의 방법 모두 스마트폰을 사용하며 움직이는 환경을 가정하지 않았으며, Hong과 Mok의 경우 이를 감안하여 실험 결과중 스마트폰 미사용 결과와 비교하였다.
대표값은 피 실험자 10인으로부터 정지, 걷기, 뛰기, 차량이동의 각 상황에 따라서 샘플을 수집한 후 이로부터 얻어진 속도와 가속도 데이터를 사용하였다. 또한 대표값과 클래스간의 판단 방법에 따라 성능이 달라질 수 있기 때문에 유클리디안 거리 유사도를 응용하여 유클리디안 평균 방법, 유클리디안 거리와 지정 영역의 혼합 방법, 2 Point 유클리디안 거리 방법의 세 가지 응용 실험에 따른 성능분석을 실시하였다.
Shoaib은 다양한 기계학습법의 실험을 수행 하였고, Hong과Mok은 통계 기반의 알고리즘을 제안하고 있다. 본 절에서는 이들의 연구와의 차이점을 비교하고 분석 하였다.
분류기의 구현을 위해 인공지능 분야에서 많이 사용하는 인공 신경망이나 SVM(Support Vector Machine) 대신에 대표값과의 유클리디안 거리를 측정하는 방법을 사용하였다. 대표값은 피 실험자 10인으로부터 정지, 걷기, 뛰기, 차량이동의 각 상황에 따라서 샘플을 수집한 후 이로부터 얻어진 속도와 가속도 데이터를 사용하였다.
수집한 데이터를 이용하여 유클리디안 거리 평균 유사도를 응용한 실험의 수행 결과 정지, 걷기, 뛰기 상황에 대해서는 높은 수준의 성능을 보였으나 차량 이동의 경우 그 산포 범위가 넓고 정지군집과 저속이동 구간의 거리가 근접하여 정확한 판단이 쉽지 않아 이를 보완 하고자 유클리디안 거리 평균과 지정영역 혼합, 2 Point 유클리디안 거리 방법의 2가지를 추가로 제안하고 실험하였다.
영역은 3절에서 구해진 x(속도), y(가속도 대표값)을 사용하여 표준편차를 기준으로 2개의 포인트를 구하고 이의 면적만큼 영역을 지정하였으며 지정영역이 겹치는 경우나 지정영역 안으로 들어오지 못한 값에 대해서 4.1절에서 소개한 유클리디안 거리 평균 방법을 사용 하여 보완 하였다. 2개의 점을 구하는 방법은 식(5)에 나타내었다.
대상 데이터
분류기의 구현을 위해 인공지능 분야에서 많이 사용하는 인공 신경망이나 SVM(Support Vector Machine) 대신에 대표값과의 유클리디안 거리를 측정하는 방법을 사용하였다. 대표값은 피 실험자 10인으로부터 정지, 걷기, 뛰기, 차량이동의 각 상황에 따라서 샘플을 수집한 후 이로부터 얻어진 속도와 가속도 데이터를 사용하였다. 또한 대표값과 클래스간의 판단 방법에 따라 성능이 달라질 수 있기 때문에 유클리디안 거리 유사도를 응용하여 유클리디안 평균 방법, 유클리디안 거리와 지정 영역의 혼합 방법, 2 Point 유클리디안 거리 방법의 세 가지 응용 실험에 따른 성능분석을 실시하였다.
본 논문에서는 피 실험자 10인으로부터 [Table 2] 에 나타낸 상황에 따른 측정활동을 수분 이상 반복 측정하여 상황별로 500개씩 총 2,000개의 샘플 데이터를 수집하였으며 그 결과는 [Fig. 2]의 그래프로 나타내었다. X축은 샘플의 개수 Y축은 속도 혹은 가속도 대표값을 의미한다.
데이터처리
3절에서 소개한 바와 같이 상황을 만들어 측정하고 수집한 20,000 초 분량, 약 2,000 개의 샘플을 이용하여 각 상황에 따른 평균값과 표준편차를 구하였다.
이론/모형
설정된 포인트를 기준으로 각 클래스의 거리 유사도를 구하여 가장 유사한 클래스의 이름으로 이동상황을 나타낸다. [Fig. 3]은 본 절에서 소개하는 2 Point 유클리디안 거리 방법을 이용하여 해당 클래스의 거리 유사도를 구하는 알고리즘을 나타내었다.
본 절에서는 속도와 가속도의 평균값을 기준으로 유클리디안 거리를 사용하여 5-fold cross validation 방법을 사용하여 정확도를 측정하였다.
스마트폰에 내장된 가속도 센서를 이용하여 수집된 3축 가속도의 원 데이터에서 중력을 제거하기 위해 식(1)과 같은 HPF(Hight Pass Filter)를 이용하였다. Yk는 HPF를 거친 출력 값이며 xk는 현재 가속도 센서 데이터 값, α는 상수 값이며, Ak는 HPF를 거친 이전 값이다.
성능/효과
4.1 ~ 4.3절에 걸쳐서 소개한 유클리디안 거리 평균, 유클리디안 거리 평균과 지정영역 혼합, 2 Point 유클리디안 거리방법을 이용하여 실험을 수행한 결과, 차량이동 클래스의 경우 속도에 대한 편차로 인하여 데이터의 산포도가 넓어서 차량이동으로 판단하기가 쉽지 않았으며 실험을 진행한 3가지의 방법 중 2 Point 유클리디안 거리 방법이 가장 좋은 성능을 보였다.
3%의 높은 정확도를 보였고, 걷기와 뛰기의 경우 상대적으로 높지 않은 정확도를 보였다. 또한 본 논문에서 제안하고 실험한 2 Point 유클리디안 방법 역시 Shoaib의 실험에 뒤지지 않는 높은 정확도를 보였다. 그러나 실험에 사용한 센서중의 하나인 GPS의 경우 터널이나 실내등 전파 수신이 제한된 구조물이나 구역에서는 측정이 쉽지 않은 바 이를 보완하기 위한 개선 방안의 논의가 필요하다.
본 논문에서 실험한 유클리디안 거리 평균, 유클리디안 거리 평균과 지정영역 혼합, 2 Point 유클리디안 거리방법의 3가지 방법중 2 Point 유클리디안 거리 방법이 평균 95%, 차량이동 91.6%의 가장 우수한 성능을 보였으며 적은 데이터로 이동상황을 판단해야 하는 과업에 활용 한다면 그 효용성이 높을 것이다.
비교 분석결과 Shoaib과 Hong과Mok은 차량이동에 대한 실험을 수행하지 않아 비교가 어려웠으나 정지, 걷기, 뛰기 상황에 대해서 Shoaib의 지자기센서 실험은 90%를 상회하는 높은 정확도를 보였으며, 가속도 센서를 사용한 Hong과Mok의 실험은 정지 상태에서의 정확도가 97.3%의 높은 정확도를 보였고, 걷기와 뛰기의 경우 상대적으로 높지 않은 정확도를 보였다. 또한 본 논문에서 제안하고 실험한 2 Point 유클리디안 방법 역시 Shoaib의 실험에 뒤지지 않는 높은 정확도를 보였다.
실험 결과, 정지, 걷기, 뛰기의 경우 0.9가 넘는 높은 정확도를 보였으나 차량이동의 경우 0.7의 낮은 정확도를 보였다. 이는 저속 구간에서의 측정값들이 차량이동의 평균값보다 정지나 걷기 군집의 평균값에 보다 가깝기 때문에 나타나는 것으로 확인되었다.
실험결과 정지, 걷기, 뛰기의 성능향상은 없으나 차량이동의 경우 9%의 성능향상을 보였다. 그러나 차량이동 20km 이하의 의미 있는 저속구간을 영역으로 불포함 하여 만족할만한 성능을 나타내지 못하였다.
실험결과는 [Table 6]에 보이는 바와 같이 정지, 걷기, 뛰기의 경우 큰 차이가 없으나 차량이동의 경우 4.2절에서 소개한 유클리디안 거리 평균과 지정영역 혼합 방법에 비해서 12%의 성능 향상을 보였으며 모든 상황에서 90%를 상회하는 높은 정확도를 보였다.
Shoaib는 가속도센서(accelerometer), 자이로센서 (gyroscope), 지자기센서(magnetometer)를 사용하여 계단내려가기, 뛰기, 앉기, 서기, 계단 올라가기, 걷기의 6가지 물리적인 동작에 대하여 50 개 전후의 샘플 데이터를 수집하고 WEKA To lBox에서 제공하는 SVM(Support Vector Machine), 신경망(Neural Networks), 회기분석(Logistic Regression), KNN(K Nearest Neighbor)등의 도구를 사용하여 10-fold corss validation방법으로 실험 하였다. 이중 지자기센서를 이용한 KNN classifier 방법이 가장 성능이 좋았으며 [Table 7]에 정확도를 나타내었다.
평균값과 표준편차는 [Table 3]에 나타내었으며 본 장에서는 [Table 3]의 결과를 이용하여 유클리디안 거리 유사도를 응용한 유클리디안 거리 평균, 유클리디안 거리 평균과 지정영역 혼합, 2 Point 유클리디안 거리 방법에 대하여 5-fold cross validation 실험을 수행하여 2 Point 유클리디안 거리 방법이 가장 우수함을 확인 하였다.
후속연구
향후 본 연구자들은 실험한 데이터와 방법을 사용하여 사용자의 움직임과 주변 상황을 판단하고 일상을 기록하는 라이프로그 연구에 활용할 계획이다.
질의응답
핵심어
질문
논문에서 추출한 답변
상황인식 컴퓨팅의 개념은 무엇인가?
사용자의 다양한 상황을 고려하여 적절한 정보 혹은 서비스를 제공할 수 있도록 하는 것을 상황인식 컴퓨팅(Context Aware Computing)이라고 하며 이에 대한 개념은 “위치에 따른 환경변화를 발견하고 반응하는 것”으로 19 4년 Schilit과 Theimer[3]에 의하여 최초로 논의된 바 있다. 상황의 종류는 다양할 수 있지만, 일반적으로 이를 분류하면 사용자 상황, 물리적 환경 상황, 컴퓨팅 시스템 상황, 사용자-컴퓨터 상호 작용 이력, 기타 미분류 상황으로 분류할 수 있다[4].
GPS와 가속도센서가 탑재된 스마트폰을 활용하면 어떤 이동상황의 판단이 가능해지는가?
스마트폰으로 대표되는 모바일 기기의 발전으로 대중은 고성능 센서를 휴대하고 있으며 이에 따라 센서를 기반으로 하는 보다 발전된 연구를 수행할 수 있는 토대가 마련되었다. 스마트폰에는 GPS와 가속도센서가 탑재되어 있는데 이를 활용하면 걷기, 뛰기, 차량이동과 같은 이동상황의 판단이 가능하다. 이러한 이동상황의 판단은 조난, 재해, 헬스 케어, 차량이용 컨텐츠 추천등 스마트폰을 사용하는 사람을 중심으로 그 쓰임새에 따라 다양하게 응용할 수 있다[1-2].
상황인식 컴퓨팅에서 상황의 종류는 어떻게 분류되는가?
사용자의 다양한 상황을 고려하여 적절한 정보 혹은 서비스를 제공할 수 있도록 하는 것을 상황인식 컴퓨팅(Context Aware Computing)이라고 하며 이에 대한 개념은 “위치에 따른 환경변화를 발견하고 반응하는 것”으로 19 4년 Schilit과 Theimer[3]에 의하여 최초로 논의된 바 있다. 상황의 종류는 다양할 수 있지만, 일반적으로 이를 분류하면 사용자 상황, 물리적 환경 상황, 컴퓨팅 시스템 상황, 사용자-컴퓨터 상호 작용 이력, 기타 미분류 상황으로 분류할 수 있다[4].
참고문헌 (16)
Kyung-Ae Cha, SunDong Yeo, "Smart phone Application Development for Aware of Unexpected Conditions using Accelerometer Sensors", J Korea Industr Inf Syst Vol 17, No.5, pp.1-8, 2012.
Kyung-Ae Cha, Sung-Young Hyun, "Implementation of Android application to judge the daily route deviation via the GPS information on smart phones", J Korea Industr Inf Syst Res Vol 18, No.3, pp.27-34, 2013.
Ricardo Couto Antunes da Rocha and Markus Endler, "Supporting Context-Aware Applications : Scenarios, Models and Architecture", Monografias em Ciencia da Computacao, No. 12/06, pp. 1-15, 2006.
Young-wan Jang, Byeong Man Kim, Chang Bae Moon, Yoon Sik Shin, "Auto Tagging Using Mobile-Based User's Context Information for Personal Lifelog", Journal of KIISE : Computer Systems and Theory Vol 40, No.5, pp.236-247, 2013.
Emiliano Miluzzo, Nicholas D.Lane, Kristof Fodor, Ronald Peterson, Hong Lu, Micro Musolesi, Shane B.Eisenman, Xiao Zheng, Andrew T.Campbell, "Sensing Meets Mobile Social Networks: The Design, Implementation and Evalution of the CenceMe Application," the 6th ACM conference on Embedded network sensor systems, pp.337-350, 2008.
Hyekyung Yang, Hwangseung Young, "Physical Activity Recognition using Accelerometer of Smart Phone," Proc. of the Korea Computer Congress 2012, Vol 39, No.2(D), pp.7-9, 2012.
Phil Hwan Jung, Dae young Kim, Chang geun Song, Seon woo Lee, "Recognition of Walking Behavior and Phone's Pose by using smart phones," Proc. of the Korea Computer Congress 2012, Vol 39, No.1(D), pp.124-125, 2012.
Manhyung Han, Sungyoung Lee, "Personalized Activity Modeling and Real-time Activity Recognition based on Smartphone Multimodal Sensors," Journal of KIISE : Software and Applications Vol 40, No.6, pp.332-341, 2013.
Muhammad Shoaib, Hans Scholtem, P.J.M. Havinga, "Towards Physical Activity Recognition Using Smartphone Sensors," 2013 IEEE 10th International Conference on Ubiquitous Intelligence & Computing and 2013 IEEE 10th International Conference on Autonomic & Trusted Computing, pp.80-87, 2013.
Min-Sung Hong and Nam-Hee Mok, "A method of determinig the user's state of movement based on the smart device usage," J Korea Industr Inf Syst Res Vol 18, No.6, pp.51-59, 2013.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.