본문 바로가기

[ 프로그래밍 ]149

증강현실로 즐기는 좀비사냥, ARhrrrr Augmented Reality Shooter라는 이름으로 소개된 이 게임은, 카메라가 달린 모바일폰을 이용하여 즐길 수 있는 좀비사냥게임이다. 헬리콥터 시야에서 조정할 수 있는 게임으로 몰입감이 상당한 것이, 조금만 발전하면 정말 기막힌 게임이 될 수 있겠다. 증강현실에 스키틀즈 같은 과자의 등장이라!! 그것 또한 새롭다. 2010. 6. 7.
웃음이 넘치는 교실 with Matthew Weathers 한 수학 선생님의 멋진 영상을 보고, 언젠가 나도 꼭 한번 저런 멋진 일을 꾸며보고 싶다는 생각을 하게 되었다. 1. 2009년 Halloween Class Video 라는 제목으로 공개된 이 영상은, Matthew Weathers 교수의 첫 번째 작품으로, Halloween Day에 수업하는 학생들을 위한 선생님의 정성이 돋보인다. 2. April Fools(4월 1일 만우절)에 수업한 이 영상은, Matthew Weathers의 그림자와의 해프닝이 우습다. 학생들이 얼마나 즐거운 방학을 맞았을지 영상의 웃음소리만 들어도 상상이 된다. (1번 보다는 이 영상이 훨씬 짧고 굵다!) 켄사쿠님의 블로그에서 보고 퍼옴 시간강사 시절, 내가 수업할 때 했던/할 수 있었던 이벤트라고는 첫 수업에 책소개만 하고 마.. 2010. 5. 26.
사진을 3D로 표현하는 HSV 컬러 좌표계 VIEWER 영상 인식에 HSV 컬러좌표계의 컬러정보를 사용하는 경우, 육안으로 인지되는 색상과 실제 값들이 같지 않아 답답할 때가 있었다. 그래서 모든 색상 분포를 3차원으로 볼 수 있으면 어떨까 생각했었는데, AR 때문에 OpenGL을 공부하면서 제일 먼저 눈에 띈 것이 3D 좌표계에 컬러 점을 찍을 수 있는 것이어서 유용하게 사용해 볼 수 있는 프로그램을 한 번 만들어 보았다. 이 프로그램은, 입력된 영상을 일정한 크기로 리사이즈 -화면 출력 및 속도 확보 등을 위함- 한 뒤 각 픽셀의 색상(Hue), 채도(Saturation), 밝기(또는 명도, Value or Brightness) 정보를 3D 좌표계상에 출력하는 기능을 한다.(3D Reconstruction의 개념과는 상관이 없다) 아래는 프로그램 실행 동.. 2010. 5. 25.
OpenGL의 시작 OpenGL 유틸리티 툴킷(GLUT)은 OpenGL프로그램을 윈도우시스템과는 독립적으로 작동하도록 개발하게 해주는 부가라이브러리로 Mark J.Kilgard에 의해 작성되었으며 OpenGL규약에 있는 큰 결점을 보완해 준다. GLUT개발자 덕분에 원하는 플랫폼에 독립적으로 작동하는 공통된 윈도우 시스템 인터페이스를 사용할 수 있다. - 윈도우, 리눅스 등 플랫폼에 상관 없이 사용 가능 - GLUT는 OpenGL코드를 간단하게 만들어 줄 뿐만 아니라 OpenGL라이브러리를 보완해 준다. OpenGL 공식 사이트 http://www.opengl.org/ 라이브러리 다운로드 경로 Coding Resources → GLUT and Utility Libraries → About GLUT ... glutdlls37.. 2010. 5. 23.
Hand-written Recognizer with BP : 도형인식 데모 BP 학습 알고리즘 테스트 용으로 만든 Hand-written Recognizer. 마우스를 사용하더라도, 붓으로 쓰는 것 처럼 획의 굵기를 조절하는 알고리즘을 구현해 봤는데 괜찮은지 모르겠다. 세모(△), 네모(□), 점(●), 곱표(X) 등 네 개의 모양에 대해 테스트 한 결과, 만족할만한 성능을 발휘. 몇몇가지 버그들을 수정한 다음 본격적으로 다양한 모양, 문자 등에 대한 학습도 진행해 보아야 겠다. 2010. 5. 11.
BP 학습법의 문제점과 해결 방법 [ 문제점 ] 1. 학습 알고리즘이 지역 최소점에 빠질 가능성 2. 학습 알고리즘이 포화영역에서는 잘 동작하지 않는 점(시뮬레이션 초기에는 연결강도의 값은 대개 0 부근의 값으로 초기화되지만, 시뮬레이션이 진행됨에 따라 연결강도는 점점 커져 포화형 함수 f의 입력 레벨도 크게 변화되어 사실상 계단함수로 동작. 즉, 대부분의 뉴런이 f'가 거의 0인 포화영역에서 동작) 3. 학습이 완료되기 까지 많은 횟수의 반복학습 필요 4. 응용분야에 따라 학습 파라미터의 조절이 필요 5. 추가 학습시 전체적인 재학습이 필요 6. 학습 완료시점 예측 불가능 문제점 3, 4에 대한 [ 해결방법 ] 1. 일괄수정법 Backpropagation 학습 알고리즘은 매 학습패턴 입력시 마다 오차를 계산하여 연결강도와 임계값을 수정.. 2010. 5. 6.