프로젝트 소개
건국대학교 산학협력단의 지원을 받아 ㈜welt와 협업을 하였습니다. 벨트에 장착된 가속도 센서를 이용하여 사용자의 자세를 판별하는 방법을 연구하는 것이 목표였습니다.
결과화면
참여한 부분
가속도 센서로부터 데이터를 받아 이를 분석하는 앱이 필요하였습니다. Kotlin으로 블루투스 연결까지는 이미 제작이 되어있고, 데이터 측정 및 분석 필요에 따라 앱을 변경하는 게 저의 담당이었습니다.
수집된 데이터를 통해 걸음 수를 구하는 프로그램도 추가로 제작하였습니다. 수집된 데이터 파일을 FFT(고속퓨리에변환)를 통해 변환하여, 그 결과에서 걸음 수를 도출해내는 프로그램이었습니다. 해당프로그램은 Python을 사용하여 제작하였습니다. FFT결과를 차트로 보여주고 걸음 수를 어떻게 계산할지 고민하였습니다. FFT결과에서 가장 많이 나타난 주파수가 걸음 수를 계산하는데 사용된다는 사실을 알고, 이를 통해 데이터를 분석하였습니다. 대부분은 맞아 들어가지만 30%정도가 걸음 수에 맞지 않는 결과가 나왔습니다. 데이터를 자세히 살펴보니 일부 값이 흐름과 상관없이 변동이 큰 값들이 중간중간에 있었습니다. 이런 데이터를 쓰레깃값으로 처리하고 나머지의 변동이 작은 값들만 따로 모아서 처리하여 주었더니 값이 안정되었고, 90%까지 오차율을 줄일 수 있었습니다. 최대값을 찾는 범위 또한 사람이 해당 시간 내에 걸을 수 있는 발걸음 범위로 줄여서 탐색하였더니 오차율이 98%까지 줄었습니다.
느낀점
처음으로 해본 데이터 분석이라 같이 프로젝트를 진행하였던 교수님들과 석사 연구생이 없었으면, 사람의 보행이라는 전문적 지식의 부족으로 더욱 힘들었을 것입니다. 데이터 수집을 진행하면서 불편한점을 바로바로 확인하여 앱을 수정해보는 경험도 신선했습니다. 앱을 사용해 데이터를 수집하시는 분이 직관적으로도 사용법을 알 수 있게 만들기 위해 고민을 많이 하였습니다. 최대한 노력하여도 석사연구생이 사용하였을 때, 데이터를 수집하시는 분이 사용하였을 때, 제가 사용하였을 때의 결과가 동일하지 않아서 매뉴얼 작성에 대한 필요성도 많이 느꼈습니다. 데이터 수집이 끝나고 분석을 시작할 때 이와 같은 사실을 알게 되어 아쉬웠습니다. 매뉴얼을 만들어 일관된 format으로 데이터가 저장되었다면 훨씬 쉽게 분석을 했을 것입니다.
'프로젝트' 카테고리의 다른 글
TCP/IP Socket Programming 번역 채팅앱 (0) | 2019.11.06 |
---|---|
Location Based AR (0) | 2019.11.06 |
오픈소스를 활용한 안면인식 도어락 (0) | 2019.11.06 |