태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

'AR'에 해당되는 최근 글 3건

  1. 2010/04/05 GPU 프로그래밍을 이용한 실시간 Pre-viz 시스템 개발
  2. 2010/03/02 New! Withrobot Character 소개
  3. 2008/03/13 myVision USB를 이용한 간단한 Augmented Reality 실험 - I

GPU 프로그래밍을 이용한 실시간 Pre-viz 시스템 개발

Projects/2009 2010/04/05 00:30
의뢰처

ETRI, 한국전자통신연구원

목표

PC 1대의 CPU에서 비실시간으로 동작하던 Augmented Reality 프로그램을 GPU로 포팅하여 실시간으로 동작하도록 구현한다.

수행기간

2009.2~2009.4


ETRI 디지털콘텐츠단 디지털액터연구팀으로부터 의뢰를 받은 이 과제는 영화제작 과정 중에서 가상의 CG 물체를 촬영한 영상에 합성하는 작업을 실시간으로 촬영과 동시에 합성하도록 하는 것이 목표입니다. 현재는 촬영과정과 합성과정이 분리되어 촬영을 마친 후에 오프라인에서 합성하는 과정을 하고 있습니다. 가상의 CG물체를 합성하기 위해서는 카메라 트랙킹이라는 과정이 필수적인데 연산량이 많아서 CPU만으로 실시간으로 처리하는 것이 어려웠습니다. 그래서 본 과제에서는 GPU를 이용해서 연산량이 많은 부분을 GPU로 포팅하여 고속으로 처리함으로써 실시간 동작이 가능하도록 하였습니다.
사용자 삽입 이미지

전체 시스템 구조는 아래와 같습니다.

사용자 삽입 이미지
카메라로부터 입력된 영상은 카메라 트랙킹 장치에서 카메라의 자세를 추정하고 합성결과 디스플레이 장치는 추정된 카메라 자세로부터 CG물체의 자세를 정하여 합성하게 됩니다. 여기서 GPU로 포팅한 카메라 트랙킹 장치의 블록다이어그램은 아래와 같습니다.
사용자 삽입 이미지
3개의 중요한 블럭으로 구성되어 있고 feature를 찾고 추적에 사용될 feature를 등록하는 블럭과 EKF(Extended Kalman Filter)를 이용해서 카메라의 자세를 추정하는 블럭으로 되어 있습니다.

수행 결과
1024x768 영상 1 frame에 소요되는 시간
- CPU : Intel Core2Quad G66-00 2.4GHz
- 2GB DDR2 RAM
- GPU : Nvidia Geforce GTX295
사용자 삽입 이미지
CPU에서 동작하던 코드를 GPU로 옮겨서 60배정도의 속도 향상이 있었습니다. 일반적인 코드의 최적화로는 도저히 상상할 수 없는 속도 향상을 경험할 수 있었습니다. 물론 알고리즘의 구조에 따라 향상 정도는 차이가 있겠습니다만, 영상 처리와 같이 일정 크기의 영상에 특정 mask pattern을 convolution하는 구조라면 GPU에서 대폭적인 성능 향상이 있습니다.

아래 동영상은 실제 CPU와 GPU를 이용해서 각각 트랙킹을 수행하는 것을 동영상으로 촬영한 것입니다. 위쪽 CPU로 tracking 하는 경우는 연산 속도가 따라오질 못해 30frame으로 계산하지 못해 frame drop이 심합니다. 반면 아래쪽 동영상은 GPU를 이용한 경우로 실시간으로 feature tracking이 이뤄지는 모습을 확인할 수 있습니다.


- CPU를 이용하여 트랙킹을 수행하는 영상


 
- GPU를 이용하여 트랙킹을 수행하는 영상


'Projects > 2009' 카테고리의 다른 글

u-TSN 모듈 개발 과제  (1) 2010/04/14
GPU 프로그래밍을 이용한 실시간 Pre-viz 시스템 개발  (0) 2010/04/05
S-Bridge 프로젝트  (2) 2010/04/02
Trackback 0 : Comment 0

New! Withrobot Character 소개

Image Processing/myVision USB 2010/03/02 15:19
사용자 삽입 이미지
안녕하세요.
이번에 태어난 위드로봇 캐릭터 우끼입니다.
만들어진지 얼마안되는 아기라서 많이 보여드릴 것이 없네요. 조만간 더 새로운 모습으로 찾아 뵙겠습니다. ^^











Trackback 0 : Comment 0

myVision USB를 이용한 간단한 Augmented Reality 실험 - I

Image Processing/myVision USB 2008/03/13 17:38
사용자 삽입 이미지
최근 3D 그래픽스 분야의 연구자들이 많은 관심을 보이고 있는 분야 중에 하나가 증강현실(augmented reality)입니다. 카메라로 들어온 실제 영상에 가상의 물체를 접합하여 실제 환경에 가상의 물체가 있는것처럼 보이게 만드는 기술입니다. 최근 선전에도 이러한 기법들이 널리 사용되고 있고, 그 응용 범위가 무궁무진하다보니 많은 연구자들이 관심을 가지지 않을 수 없는 상황입니다.
위드로봇에서도 기왕 가지고 있는 여러 기술을 간단히 엮으면 이러한 시스템을 만들어 낼 수 있으므로 짬짬이 구현을 해 보고 있습니다. 오늘 소개하는 동영상은 그 첫번째로 조그마한 박스 표면에 가상의 동영상을 출력하는 시스템입니다.
myVision USB를 이용하면 특정 색상의 물체 위치를 빠르게 찾아낼 수 있으며 이로부터 동영상을 투영할 좌표값을 얻은 후 동영상을 뿌립니다. 간단한 데모니 동영상을 보시면 바로 이해하실 수 있을 겁니다.
동영상은 모니터를 촬영하였습니다.



이 후로도 진행된 내용들이 많이 있으며 시간이 허락하는대로 홈페이지에 공개하도록 하겠습니다.
Trackback 0 : Comment 0