4. 최종 보고

                    종합설계 프로젝트 최종보고서 요약

팀명

 Chief

제출일

2012 11 22

프로젝트 제목

 Planetarium Controller

설계 프로젝트 개요

프로젝트 수행 내용 및 중간 결과

프로젝트 요약문 

  •  본 프로젝트에서는 지난 학기에 개발한 Planetarium Controller에서 발견된 문제점을 해결하고 시연회를 통해 얻은 사용자의 다양한 개선안을 프로그램에 적용한다. 단순히 개발로써 끝나는 프로젝트가 아닌 실제 환경에서 유용하게 쓰이기 위해 프로그램을 고도화, 안정화 하는 것이 본 프로젝트의 추진 배경이라 할 수 있겠다. 이를 위해 다수의 데이터로부터 일관된 특성을 추정해 내는 기법인 회귀분석을 프로그램에 적용하기 위한 연구, 보다 자세한 정보를 화면에 출력하기 위해 OpenSceneGraph API에 대한 연구가 진행되었다. 이들 연구에 대한 결과는 이제 프로그램에 적용되어 Planetarium Controller를 보다 사용자에게 친숙하고 유용한 프로그램으로 거듭나게 할 것이다.

마일스톤 수행 내용

  • 1. 보다 나은 모션 인식을 위해 다수의 데이터로부터 일련의 특성을 찾아내는 회귀분석을 적용하였다. Kinect로부터 넘겨받은 좌표 값을 List에 저장하여 모은 데이터를 대상으로 회귀분석 식을 적용한다. 그리고 성능상의 문제는 테스트를 통해 인식률과 성능 사이의 균형을 맞추면서 해결하였다. 이를 위해 한번 식에 참여하는 데이터의 개수를 최소화하고 Kinect로부터 넘어오는 x, y, z값 중 x, y값에 대해서만 활용하였다.
  • 2. 기존 시스템에서는 사용자가 Push 모션을 통해 행성을 선택하면 기존에는 모션으로 행성을 돌려보는 데 기능이 한정되어 있었다. 그래서 행성이 선택되었을 때 학생들의 학습에 도움이 될 만한 학습정보를 추가로 제공하기로 하였다. OpenSceneGraph HUD Camera를 이용해 스크린 화면을 분할하고 분할된 화면에 추가 정보를 출력할 수 있게 하였다. 이는 기존 계획서에 기술하였던 계층구조를 활용한 방식과는 다소 차이가 있는데 이 방법을 통해 추가정보를 제공하였을 때 보다 깔끔하고 가시성 높은 정보를 제공할 수 있어 계획서와는 다른 방향으로 정보를 제공하게 되었다.
  • 3. 기존 시스템에서는 많은 수의 사용자가 기능 숙지에 어려움을 토로했다. 그래서 튜토리얼 메시지를 보강해 사용자가 보다 빨리 프로그램의 기능 숙지해 각 기능의 접근성을 높일 필요가 있었다. 그래서 튜토리얼 마지막에 사용자가 한번 더 기능 조작 방법을 복습할 수 있도록 튜토리얼 메시지와 처리 모션을 함께 mapping하여 둔 곳에 복습 내용을 추가함으로써 이를 구현하였다. 
  • 4. 화면에 사용자가 현재 초기 위치로부터 어느 정도 떨어져 있는지 표시하였다. 기존 시스템에서는 사용자가 우주 여행 도중 길을 잃으면 홈 버튼을 통해서만 원래 위치로 돌아올 수 있었다. 하지만 현재 사용자가 초기 위치로부터 어느 정도 떨어져 있는지 알게 되면 홈 버튼을 이용하지 않고도 사용자가 쉽게 원래 위치로 돌아올 수 있으며 각 천체의 위치도 보다 쉽게 기억할 수 있게 된다. 그래서 이를 구현하기 위해 스크린 카메라의 위치가 이동하는 시점마다 (현재 위치-초기 위치)를 계산한 결과를 화면에 출력하도록 하였다.
  • 5. 과학적 모드에서 보다 천체의 움직임을 자세하게 설명하기 위해 천체 주변에 궤도를 표시하였다. 기존의 과학 모드에서는 각 천체의 관점에 따라 해당 천체 주변의 천체가 움직이는 모습을 보는 데 그쳤었다. 여기에 본 프로젝트에서는 천체의 움직임을 미리 예측할 수 있도록 궤도를 표시해 더 많은 과학 정보를 제공할 수 있도록 하였다.
  • 6. 기존 시스템에서는 소행성과 목성 이후의 위성들에 대해 정확하게 배치하지 못했었다. 본 프로젝트에서는 미처 올바르게 배치하지 못한 요소들에 대한 재배치 작업을 진행하였다. 소행성들의 경우, 화성과 목성 사이에 넓은 공간을 만들어 여기에 배치시키고, 위성의 경우 소속 행성에 맞게 배치될 수 있도록 위치를 수정하였다. 여기서 위성 위치 변경의 경우, OpenSceneGraph의 계층구조와 Matrix 상속 적용 특성을 활용해 위성의 특징이 잘 나타날 수 있도록 배치하였다.
최종 보고 요약
  • 1. 시스템 구조 
  • 2. 프로그램 구조

프로젝트 결과

 

 

Ċ
markers@cs.kookmin.ac.kr,
2012. 11. 21. 오후 1:35
Ċ
markers@cs.kookmin.ac.kr,
2012. 11. 27. 오후 7:11
Comments