1 |
1
국소 영역 내에 위치하는 모바일 HMD;상기 국소 영역 내의 사용자 움직임을 감지하여 스켈레톤 데이터를 생성하는 복수의 키넥트;상기 국소 영역 내에 배치되어 상기 복수의 키넥트와 일대일로 연결되고, 연결된 상기 키넥트로부터 스켈레톤 데이터를 수집하고, 상기 스켈레톤 데이터를 사용자별로 구분하여 분할 스켈레톤 데이터를 생성하는 복수의 클라이언트; 및상기 복수의 클라이언트로부터 분할 스켈레톤 데이터를 수집하고, 상기 분할 스켈레톤 데이터를 근거로 가상공간의 월드 좌표계를 생성하고, 상기 국소 영역 내의 모바일 HMD의 위치 정보와 상기 월드 좌표계를 근거로 스켈레톤 데이터를 보정하고, 보정된 상기 스켈레톤 데이터를 변환하여 상기 모바일 HMD에게로 제공하는 가상현실 서버를 포함하되, 상기 가상현실 서버는,상기 복수의 클라이언트로부터 수신한 스켈레톤 데이터에 포함된 포지션 데이터를 이용하여 상기 복수의 클라이언트의 좌표를 산출하고, 산출한 상기 복수의 클라이언트의 좌표를 근거로 상기 월드 좌표계를 생성하는 월드 좌표계 생성부;상기 모바일 HMD로부터 수신한 자이로 센서값 및 상기 월드 좌표계 생성부에서 생성된 월드 좌표계를 근거로 상기 복수의 클라이언트 중 원점 클라이언트의 정면을 인식하는 정면 인식부;상기 정면 인식부에서 정면을 인식하면 원점 클라이언트와 다른 클라이언트의 사이의 각도를 반영하여 상기 복수의 클라이언트로부터 수신한 스켈레톤 데이터를 보정하고, 보정된 스켈레톤 데이터를 평균하여 통합 스켈레톤 데이터로 통합하는 데이터 통합부; 및상기 통합 스켈레톤 데이터를 상기 모바일 HMD에서 사용되는 Unity3D 데이터로 변환하는 데이터 변환부를 포함하는 것을 특징으로 하는 가상현실 시스템
|
2 |
2
제1항에 있어서,상기 클라이언트는,연결된 키넥트로부터 포지션 데이터 및 회전 데이터를 포함하는 스켈레톤 데이터를 수신하는 데이터 수신부;상기 데이터 수신부에서 수신한 스켈레톤 데이터를 근거로 사용자를 인식하여 고유 아이디를 설정하고, 상기 스켈레톤 데이터와 상기 고유 아이디를 연계하여 분할 스켈레톤 데이터를 생성하는 사용자 인식부;상기 분할 스켈레톤 데이터를 근거로 전송 패킷을 생성하되, 사용자별로 전송 패킷을 생성하여 상기 사용자 인식부에서 인식한 사용자 수와 동일한 개수의 전송 패킷을 생성하는 패킷 생성부; 및상기 패킷 생성부에서 생성된 전송 패킷을 상기 가상현실 서버로 전송하는 패킷 전송부를 포함하는 가상현실 시스템
|
3 |
3
삭제
|
4 |
4
제1항에 있어서,상기 월드 좌표계 생성부는,상기 복수의 클라이언트 중 가장 먼저 상기 가상현실 서버에 접속한 클라이언트를 원점 클라이언트로 설정하고, 상기 원점 클라이언트로부터 수신한 스켈레톤 데이터 및 좌표 산출 대상인 대상 클라이언트로부터 수신한 스켈레톤 데이터의 포지션 데이터를 근거로 대상 클라이언트의 좌표를 산출하는 가상현실 시스템
|
5 |
5
제1항에 있어서,상기 정면 인식부는 상기 자이로 센서값을 근거로 상기 복수의 클라이언트 중 원점으로 설정된 클라이언트의 z축으로 향하는 벡터와 상기 모바일 HMD의 z축으로 향하는 벡터를 산출하고, 두 벡터의 내적이 0 미만이면 정면으로 판단하는 가상현실 시스템
|
6 |
6
가상현실 시스템을 이용한 가상현실 제공 방법에 있어서,국소 영역에 설치된 복수의 키넥트에서 촬영된 영상을 근거로 포지션 데이터 및 회전 데이터를 포함하는 스켈레톤 데이터를 생성하는 단계;상기 국소 영역에 설치된 복수의 클라이언트에서 상기 복수의 키넥트로부터 상기 생성된 스켈레톤 데이터를 수집하고, 상기 스켈레톤 데이터를 사용자별로 분할한 분할 스켈레톤 데이터를 전송하는 스켈레톤 데이터 수집 및 전송하는 단계;상기 복수의 클라이언트로부터 분할 스켈레톤 데이터를 수집하고, 상기 분할 스켈레톤 데이터를 근거로 가상공간의 월드 좌표계를 생성하는 단계;상기 국소 영역 내의 모바일 HMD로부터 수집한 위치 정보와 상기 월드 좌표계를 근거로 상기 복수의 클라이언트 중 원점 클라이언트의 정면을 인식하는 단계;상기 원점 클라이언트의 정면을 인식하면 상기 복수의 클라이언트로부터 수신한 스켈레톤 데이터를 통합하여 통합 스켈레톤 데이터를 생성하는 스켈레톤 데이터 통합하는 단계; 및상기 통합 스켈레톤 데이터를 상기 모바일 HMD에서 사용 가능한 데이터로 변환하여 가상현실을 제공하는 단계를 포함하는 가상현실 제공 방법
|
7 |
7
제6항에 있어서,상기 스켈레톤 데이터를 생성하는 단계는,클라이언트로부터 수신한 스켈레톤 데이터의 포지션 데이터 및 회전 데이터를 근거로 사용자를 인식하고, 인식한 사용자에 고유 아이디를 설정하는 사용자 인식 단계;상기 사용자 인식 단계에서 인식한 사용자별로 스켈레톤 데이터를 분할하되, 스켈레톤 데이터를 고유 아이디가 설정된 사용자별로 분할하여 분할 스켈레톤 데이터를 생성하고, 상기 분할 스켈레톤 데이터를 고유 아이디와 연계하는 분할 단계;상기 고유 아이디 및 상기 분할 스켈레톤 데이터를 근거로 전송 패킷을 생성하되, 사용자별로 전송 패킷을 생성하여 상기 인식한 사용자의 수와 동일한 개수의 전송 패킷을 생성하는 패킷 생성 단계; 및가상현실 서버로 상기 생성된 전송 패킷을 전송하는 단계를 포함하는 가상현실 제공 방법
|
8 |
8
제7항에 있어서,상기 가상공간의 월드 좌표계를 생성하는 단계에서는 상기 복수의 클라이언트 중 가장 먼저 상기 가상현실 서버에 접속한 클라이언트를 원점 클라이언트로 설정하고, 상기 원점 클라이언트로부터 수신한 스켈레톤 데이터 및 좌표 산출 대상인 대상 클라이언트로부터 수신한 스켈레톤 데이터의 포지션 데이터를 근거로 대상 클라이언트의 좌표를 산출하는 가상현실 제공 방법
|
9 |
9
제6항에 있어서,상기 정면을 인식하는 단계에서는 상기 모바일 HMD로부터 수집한 위치 정보인 자이로 센서값을 근거로 상기 복수의 클라이언트 중 원점 클라이언트의 z축으로 향하는 벡터와 상기 모바일 HMD의 z축으로 향하는 벡터를 산출하고, 두 벡터의 내적이 0 미만이면 상기 원점 클라이언트의 정면으로 판단하는 가상현실 제공 방법
|
10 |
10
제6항에 있어서,상기 스켈레톤 데이터 통합하는 단계에서는 상기 원점 클라이언트와 다른 클라이언트의 사이의 각도를 반영하여 상기 복수의 클라이언트로부터 수신한 스켈레톤 데이터를 보정하고, 보정된 스켈레톤 데이터를 평균하여 통합 스켈레톤 데이터로 통합하는 가상현실 제공 방법
|
11 |
11
제6항에 있어서,상기 가상현실을 제공하는 단계에서는 상기 통합 스켈레톤 데이터를 Unity3D 데이터로 변환하는 가상현실 제공 방법
|
12 |
12
제6항의 방법을 컴퓨터로 실행시키기 위하여 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터 프로그램
|