KR102345297B1 - 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법 - Google Patents

웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법 Download PDF

Info

Publication number
KR102345297B1
KR102345297B1 KR1020210080583A KR20210080583A KR102345297B1 KR 102345297 B1 KR102345297 B1 KR 102345297B1 KR 1020210080583 A KR1020210080583 A KR 1020210080583A KR 20210080583 A KR20210080583 A KR 20210080583A KR 102345297 B1 KR102345297 B1 KR 102345297B1
Authority
KR
South Korea
Prior art keywords
user
client terminal
rendering
rotation
indoor space
Prior art date
Application number
KR1020210080583A
Other languages
English (en)
Inventor
이대현
강인해
서혜란
이승은
강진규
Original Assignee
주식회사 공간의파티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 공간의파티 filed Critical 주식회사 공간의파티
Priority to KR1020210080583A priority Critical patent/KR102345297B1/ko
Application granted granted Critical
Publication of KR102345297B1 publication Critical patent/KR102345297B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2223Secondary servers, e.g. proxy server, cable television Head-end being a public access point, e.g. for downloading to or uploading from clients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video

Abstract

본 발명은 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법에 관한 것이다. 상기 시스템은, 대화형 3D 콘텐츠를 렌더링하여 사용자의 클라이언트 단말에 실시간으로 스트리밍하기 위한 시스템으로서, 사용자가 위치한 실내 공간의 3D 모델 데이터를 생성하는 클라우드 서버; 사용자가 카메라로 촬영된 영상 화면을 터치했을 때의 상기 화면 내의 터치 지점을 그라운드 앵커(ground anchor)로 지정하는 그라운드 앵커 지정부, 및 상기 그라운드 앵커를 기준으로 하여 사용자의 위치 및 회전값을 연산하는 사용자 포즈 인식부를 포함하는 클라이언트 단말; 및 상기 클라이언트 단말로부터 사용자의 위치 및 회전값을 수신하고 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 비교하여 사용자의 움직임 여부를 판별하는 모션 모듈; 상기 클라우드 서버로부터 상기 실내 공간의 3D 모델 데이터를 수신하고 상기 모션 모듈로부터 사용자의 위치 및 회전값을 수신하는 입력 모듈; 상기 사용자의 위치 및 회전값을 통해 상기 실내 공간 중 사용자에게 보이는 부분의 3D 모델 데이터로부터 2D 렌더링 영상을 생성하는 렌더링 모듈; 및 상기 2D 렌더링 영상을 상기 클라이언트 단말에 송신하는 출력 모듈을 포함하는 엣지 서버를 포함할 수 있다.

Description

웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법{EDGE SERVER REMOTE RENDERING SYSTEM AND METHOD FOR WEB SERVICE}
본 발명은 대화형 3D 콘텐츠를 렌더링하여 사용자의 클라이언트 단말에 실시간으로 스트리밍하기 위한, 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법에 관한 것이다.
최근 혼합현실 (mixed reality)산업이 성장함에 따라 관련 디바이스 보급 및 기술이 제시되고 있다. 특히, 원격화상회의 등의 실시간 혼합현실 서비스를 위해, 실시간 영상획득-처리-전송의 기술 연구가 요구되고 있다.
AR(증강현실)은 AI, Big-data, 5G Network 등 4차 산업혁명을 이끄는 기술과 결합하여 오감의 무한 확대를 통한 신 서비스를 이끄는 기술이다. 5G 네트워크 인프라 발달로 초고속, 초저지연, 초연결의 AR 서비스 제공이 가능해짐에 따라 개인화된 실시간 서비스 중심으로 대규모 성장 전망이다.
일반적으로 혼합현실 구현은 클라이언트(client)에 3D 데이터가 저장이 되고, 이를 로딩(loading)하는 방식이다. 이 경우 클라이언트의 사양이 한정되어 있으므로, 3D 데이터의 메쉬 최적화 등을 통해 구현을 한다. 다만, 콘텐츠의 최적화가 요구되므로, 콘텐츠의 품질 손상이 될 수 있다. 다른 방법으로, 서버에 3D 데이터가 저장이 되고 원격지에 있는 클라이언트로 렌더링 하는 방법이 제시되고 있다. 이는 품질을 높이기 위해서 강력한 서버를 사용할 경우, 랜더링(rendering) 품질을 크게 높일 수 있다. 일반적으로 클라우드 랜더링(cloud rendering), 서버 랜더링(server rendering), 원격 랜더링(remote rendering) 등의 용어로 표현 되고 있다.
최근 클라우드 기반의 AR 원격 랜더링(Remote Rendering) 기술이 연구되고 있다. 이는 고품질의 대화형 3D 콘텐츠를 클라우드에서 렌더링 하여 실시간으로 디바이스에 스트리밍 할 수 있는 새로운 혼합 현실 서비스 기술이다. 이 때, 3D데이터 타입(type)에 따른 원격 랜더링(remote rendering) 방식을 아래와 같이 분류할 수 있다.
Figure 112021071624681-pat00001
모델 베이스(Model-based) 렌더링은 3D 데이터 (메쉬 또는 포인트 클라우드)를 클라이언트에게 전송하는 방법이다. 이 방법은, 클라이언트가 3D 그래픽 렌더링을 위한 강력한 하드웨어를 필요로 하며, 서버는 3D 데이터 처리 및 생성 계산을 한다. 모델 베이스 랜더링에는 오리지날 모델(Original Model), 부분 모델(Partial Model), 단순화된 모델(Simplified Model), 포인트 클라우드(Point Cloud) 방식이 있다.
이미지 베이스(Image-based) 렌더링은 서버에서 모든 3D 모델을 렌더링하고, 이미지들의 정보만을 클라이언트로 보내는 방법이다. 따라서 클라이언트에서는 3D 그래픽 렌더링을 위한 하드웨어는 요구되지 않는다. 이미지 베이스 랜더링에는 멀티 뎁스 이미지(Multiple Depth Images), 뎁스 이미지(Depth Image), 환경 맵(Environment Map), 이미지 포스터(Image Impostor) 방식이 있다.
앞서 언급하였듯이, 고품질의 콘텐츠를 제공하기 위해서 모델 베이스(Model-based) 렌더링이 적합하지만 클라이언트에 강력한 3D 그래픽 렌더링을 위한 하드웨어가 요구되는 단점이 있다. 그렇다고 클라이언트의 하드웨어를 고려하여 이미지 베이스 렌더링으로 콘텐츠를 제공하면 품질이 저하되는 문제가 있다. 즉, 클라이언트의 하드웨어 성능과 콘텐츠의 품질 사이에서 양자를 모두 만족시킬 수 있는 방법이 필요하다.
도 1의 (a)는 종래의 메쉬 최적화를 통한 3D 모델 간소화를, 도 1의 (b)는 종래의 클라우드 랜더링 방식을 각각 도시한 도면이다.
일반적으로 클라이언트 단말에서 복잡한 3D 모델을 렌더링하기 위해서는 계산 능력이 제한된다. 따라서, 종래에는 도 1의 (a)에 도시된 바와 같은 메쉬 최적화를 통해 원본 3D 모델을 간소화하여 표현하는 방식이 사용되었다. 도 1의 (a)에서 간소화된 모델은 원래 모델의 1,800만개 이상의 메쉬에 비해 약 200,000개의 메쉬(세부 내부 부품 포함)로 구성된다. 다만, 이 경우 콘텐츠의 품질이 저하되는 문제가 있다.
도 1의 (b)를 참조하면, 이를 해결하기 위해 최근에는 원격 클라우드 렌더링(remote cloud rendering) 방식을 사용하여 원본 3D 모델을 상기 간소화 없이 표현하는 방식이 사용되고 있다. 그러나, 사용자의 렌더링 뷰 포인트가 변경되는 경우, 클라우드 서버에서 렌더링 뷰 포인트를 업데이트하는 연산이 수행된다. 이때, 클라우드 서버와 클라이언트 단말 사이에 직접 송수신이 일어나므로, 클라우드 단말에서 업데이트된 렌더링 이미지 프레임을 수신하기까지 긴 지연시간이 발생하게 된다.
Shu Shi, Klara Nahrstedt, and Roy Campbell, "A Real-Time Remote Rendering System for Interactive Mobile Graphics," ACM Transactions on Multimedia Computing, Communications and Applications, Vol. 8, No. 3s, Article 46, 2012. DOI: 10.1145/2348816.2348825.
본 발명의 목적은 사용자가 설정한 그라운드 앵커를 기준으로 하여 사용자의 위치 및 회전값을 연산하고, 엣지 서버가 상기 사용자의 위치 및 회전값, 및 클라우드 서버에서 생성된 실내 공간의 3D 모델 데이터를 이용하여 사용자에게 보이는 부분의 2D 렌더링을 수행할 수 있는, 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법을 제공함에 있다.
위와 같은 과제를 해결하기 위한 본 발명의 제1 측면은 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템에 관한 것이다. 상기 시스템은, 대화형 3D 콘텐츠를 렌더링하여 사용자의 클라이언트 단말에 실시간으로 스트리밍하기 위한 시스템으로서, 사용자가 위치한 실내 공간의 3D 모델 데이터를 생성하는 클라우드 서버; 사용자가 카메라로 촬영된 영상 화면을 터치했을 때의 상기 화면 내의 터치 지점을 그라운드 앵커(ground anchor)로 지정하는 그라운드 앵커 지정부, 및 상기 그라운드 앵커를 기준으로 하여 사용자의 위치 및 회전값을 연산하는 사용자 포즈 인식부를 포함하는 클라이언트 단말; 및 상기 클라이언트 단말로부터 사용자의 위치 및 회전값을 수신하고 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 비교하여 사용자의 움직임 여부를 판별하는 모션 모듈; 상기 클라우드 서버로부터 상기 실내 공간의 3D 모델 데이터를 수신하고 상기 모션 모듈로부터 사용자의 위치 및 회전값을 수신하는 입력 모듈; 상기 사용자의 위치 및 회전값을 통해 상기 실내 공간 중 사용자에게 보이는 부분의 3D 모델 데이터로부터 2D 렌더링 영상을 생성하는 렌더링 모듈; 및 상기 2D 렌더링 영상을 상기 클라이언트 단말에 송신하는 출력 모듈을 포함하는 엣지 서버를 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 그라운드 앵커 지정부는, SLAM(Simultaneous Localization And Map-Building), 및 광선 투사법(ray casting)을 이용하여 사용자가 위치한 실내 공간의 바닥, 벽을 포함하는 평평한 부분을 인식하고, 상기 평평한 부분 내에서 상기 터치 지점을 지정할 수 있다.
본 발명의 실시예에 따르면, 상기 사용자 포즈 인식부가 연산하는 사용자의 위치 및 회전값은, 3차원 좌표상에서 사용자의 위치(x, y, z), 및 피치(pitch), 요(yaw), 롤(roll) 값을 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 엣지 서버와 상기 클라이언트 단말 사이의 거리는, 상기 클라우드 서버와 상기 클라이언트 단말 사이의 거리보다 더 작도록 설계될 수 있다.
본 발명의 실시예에 따르면, 상기 인접 프레임은 순차로 진행되는 제1 및 제2 프레임을 포함하며, 상기 모션 모듈은, 상기 제1 프레임에서의 사용자의 제1 위치 및 회전값을 임시 저장하고 상기 클라이언트 단말로부터 상기 제2 프레임에서의 사용자의 제2 위치 및 회전값을 획득하며, 상기 제1 위치 및 회전값과 상기 제2 위치 및 회전값을 비교하여 상기 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 계산할 수 있다.
본 발명의 실시예에 따르면, 상기 렌더링 모듈은, 상기 실내 공간 내에서 상기 클라이언트 단말의 카메라에 대응하는 가상 카메라를 상정하고, 상기 사용자의 위치 및 회전의 변화값을 반영하여 상기 가상 카메라의 위치 및 회전값을 변경하고, 상기 가상 카메라가 촬영하는 영역을 상기 실내 공간 중 사용자에게 보이는 부분으로 하여 상기 2D 렌더링을 수행할 수 있다.
본 발명의 제2 측면은 웹 서비스를 위한 엣지 서버 원격 렌더링 방법에 관한 것이다. 상기 방법은, 대화형 3D 콘텐츠를 렌더링하여 사용자의 클라이언트 단말에 실시간으로 스트리밍하기 위한 것으로, 클라우드 서버; 그라운드 앵커 지정부 및 사용자 포즈 인식부를 포함하는 클라이언트 단말; 및 모션 모듈, 입력 모듈, 렌더링 모듈, 및 출력 모듈을 포함하는 엣지 서버를 구비한 증강 현실 원격 렌더링 시스템을 통해 수행되는 방법으로서, (a) 상기 클라우드 서버가 사용자가 위치한 실내 공간의 3D 모델 데이터를 생성하는 단계; (b) 상기 그라운드 앵커 지정부가 사용자가 카메라로 촬영된 영상 화면을 터치했을 때의 상기 화면 내의 터치 지점을 그라운드 앵커(ground anchor)로 지정하는 단계; (c) 상기 사용자 포즈 인식부가 상기 그라운드 앵커를 기준으로 하여 사용자의 위치 및 회전값을 연산하는 단계; (d) 상기 모션 모듈이 상기 클라이언트 단말로부터 사용자의 위치 및 회전값을 수신하고 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 비교하여 사용자의 움직임 여부를 판별하는 단계; (e) 상기 입력 모듈이 상기 클라우드 서버로부터 상기 실내 공간의 3D 모델 데이터를 수신하고 상기 모션 모듈로부터 사용자의 위치 및 회전값을 수신하는 단계; (f) 상기 렌더링 모듈이 상기 사용자의 위치 및 회전값을 통해 상기 실내 공간 중 사용자에게 보이는 부분의 3D 모델 데이터로부터 2D 렌더링 영상을 생성하는 단계; 및 (g) 상기 출력 모듈이 상기 2D 렌더링 영상을 상기 클라이언트 단말에 송신하는 단계를 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 (b) 단계는, (b-1) 상기 그라운드 앵커 지정부가 SLAM(Simultaneous Localization And Map-Building), 및 광선 투사법(ray casting)을 이용하여 사용자가 위치한 실내 공간의 바닥, 벽을 포함하는 평평한 부분을 인식하는 단계; 및 (b-2) 상기 평평한 부분 내에서 상기 터치 지점을 지정하는 단계를 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 (c) 단계에서, 상기 사용자 포즈 인식부가 연산하는 사용자의 위치 및 회전값은, 3차원 좌표상에서 사용자의 위치(x, y, z), 및 피치(pitch), 요(yaw), 롤(roll) 값을 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 엣지 서버와 상기 클라이언트 단말 사이의 거리는, 상기 클라우드 서버와 상기 클라이언트 단말 사이의 거리보다 더 작도록 설계될 수 있다.
본 발명의 실시예에 따르면, 상기 인접 프레임은 순차로 진행되는 제1 및 제2 프레임을 포함하며, 상기 (d) 단계는, (d-1) 상기 제1 프레임에서의 사용자의 제1 위치 및 회전값을 임시 저장하는 단계; (d-2) 상기 클라이언트 단말로부터 상기 제2 프레임에서의 사용자의 제2 위치 및 회전값을 획득하는 단계; 및 (d-3) 상기 제1 위치 및 회전값과 상기 제2 위치 및 회전값을 비교하여 상기 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 계산하는 단계를 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 (f) 단계는, (f-1) 상기 실내 공간 내에서 상기 클라이언트 단말의 카메라에 대응하는 가상 카메라를 상정하는 단계; (f-2) 상기 사용자의 위치 및 회전의 변화값을 반영하여 상기 가상 카메라의 위치 및 회전값을 변경하는 단계; 및 (f-3) 상기 가상 카메라가 촬영하는 영역을 상기 실내 공간 중 사용자에게 보이는 부분으로 하여 상기 2D 렌더링을 수행하는 단계를 포함할 수 있다.
본 발명에 따르면, 사용자가 설정한 그라운드 앵커를 기준으로 하여 사용자의 위치 및 회전값을 연산하고, 엣지 서버가 상기 사용자의 위치 및 회전값, 및 클라우드 서버에서 생성된 실내 공간의 3D 모델 데이터를 이용하여 사용자에게 보이는 부분의 2D 렌더링을 수행함으로써, 사용자 렌더링 뷰 포인트가 변경됨에 따라 클라이언트 단말에 발생하는 지연 시간을 최소화할 수 있다.
도 1의 (a)는 종래의 메쉬 최적화를 통한 3D 모델 간소화를, 도 1의 (b)는 종래의 클라우드 랜더링 방식을 각각 도시한 도면이다.
도 2는 본 발명에 따른 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템의 각 구성간의 연계를 도시한 도면이다.
도 3은 도 2의 각 구성에 포함되는 상세 구성들을 도시한 도면이다.
도 4의 (a)는 클라이언트 단말 화면에 표시되는 표식을, 도 4의 (b)는 사용자의 터치에 따라 그라운드 앵커가 지정된 상태를 각각 도시한 도면이다.
도 5는 클라이언트 단말이 수행하는 각 단계를 도시한 순서도이다.
도 6은 도 3의 엣지 서버의 모션 모듈에서 수행되는 각 단계를 도시한 순서도이다.
도 7은 도 3의 엣지 서버의 입력 모듈 및 렌더링 모듈에서 수행되는 각 단계를 도시한 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시를 위한 구체적인 내용을 설명한다. 그리고 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 2는 본 발명에 따른 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템의 각 구성간의 연계를 도시한 도면이다. 도 3은 도 2의 각 구성에 포함되는 상세 구성들을 도시한 도면이다.
도 2 및 도 3을 참조하면, 본 발명에 따른 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템은 고품질의 대화형 3D 콘텐츠를 렌더링하여 사용자의 클라이언트 단말에 실시간으로 스트리밍하기 위한 것이다. 이를, 엣지 원격 렌더링(edge remote rendering)이라 한다. 상기 클라이언트 단말은 모바일 단말, PC, 태블릿 PC 등의 카메라 및 프로세서를 구비한 장치를 의미한다. 상기 시스템은, 클라우드 서버(100), 클라이언트 단말(200), 및 엣지 서버(300)를 포함한다.
클라우드 서버(100)는 사용자가 위치한 실내 공간의 3D 모델 데이터를 생성한다. 실내 공간의 3D 모델 데이터는 라이다 카메라, RGB-D 카메라로 취득한 영상을 포인트 클라우드 처리하는 통상의 방식에 의해 생성될 수 있다. 이에, 종래의 클라우드 서버에는 방대한 데이터가 저장되며, 이러한 방대한 데이터를 처리하기 위한 부하가 발생하게 된다. 본 발명에서는 상기 부하를 방지하기 위해 후술하는 엣지 서버(300)가 적용된다. 클라우드 서버(100)는 IDC(Internet Data Center) 또는 데이터 센터라는 정해진 물리 위치에 서버가 존재하는 경우를 포함할 수 있다. 또는 기업이나 개인이 자체적으로 구축한 클라우드 서버의 물리적 위치가 존재하는 경우를 포함할 수 있다.
클라이언트 단말(200)은 그라운드 앵커 지정부(210) 및 사용자 포즈 인식부(220)를 포함한다. 클라이언트 단말(200)은 실내 공간 내의 사용자가 갖고 있는 단말에 해당한다. 사용자는 클라이언트 단말(200)의 카메라를 통해 주변 환경을 촬영한다. 클라이언트 단말(200)에는 사용자가 클라이언트 단말(200)의 카메라로 촬영한 영상이 화면을 통해 나타난다. 동시에, 클라이언트 단말(200)에서 엣지 서버(300)에서 렌더링된 대화형 3D 콘텐츠가 실시간으로 스트리밍된다.
도 4의 (a)는 클라이언트 단말 화면에 표시되는 표식을, 도 4의 (b)는 사용자의 터치에 따라 그라운드 앵커가 지정된 상태를 각각 도시한 도면이다. 도 5는 도 3의 클라이언트 단말이 수행하는 각 단계를 도시한 순서도이다.
도 4의 (a), (b), 및 도 5를 참조하면, 그라운드 앵커 지정부(210)는 먼저 사용자가 AR 환경에 접속 중인가를 판단한다(s11). 사용자가 AR 환경에 접속 중인 경우, 그라운드 앵커 지정부(210)는 SLAM(Simultaneous Localization And Map-Building)를 통해 공간정보를 획득하고(s12), 광선 투사법(ray casting)을 이용하여 사용자의 움직임에 따라 사용자가 위치한 실내 공간의 바닥, 벽을 포함하는 평평한 부분을 인식한다(s13). 그라운드 앵커 지정부(210)는 도 4의 (a)에 도시된 바와 같이, AR 환경에서 클라이언트 단말(200) 화면의 상기 인식된 평평한 부분에 표식(P)을 표시한다(s14). 사용자가 카메라로 촬영한 영상 화면을 터치하면(s15), 도 4의 (b)에 도시된 바와 같이, 그라운드 앵커 지정부(210)는 상기 화면 내의 터치 지점을 그라운드 앵커(ground anchor)(A)로 지정한다(s16).
사용자 포즈 인식부(220)는 그라운드 앵커 지정부(210)로부터 그라운드 앵커(A)의 위치를 수신한다. 사용자 포즈 인식부(220)는 그라운드 앵커(A)를 기준으로 하여 사용자의 위치 및 회전값을 연산한다(s17). 사용자 포즈 인식부(220)가 연산하는 상기 사용자의 위치 및 회전값은, 3차원 좌표상에서 6 자유도(6DOF) 값인, 사용자의 위치(x, y, z), 및 피치(pitch), 요(yaw), 롤(roll) 값을 포함한다. 즉, 사용자 포즈 인식부(220)는 그라운드 앵커(A)를 기준으로 하여 사용자가 움직이는 것을 상기 6 자유도(6DOF) 값을 통하여 인지한다. 그 다음, 사용자 포즈 인식부(220)는 상기 6 자유도(6DOF) 값을 모션 모듈(310)로 전달한다(s18).
엣지 서버(300)는 모션 모듈(310), 입력 모듈(320), 렌더링 모듈(330), 및 출력 모듈(340)을 포함한다. 엣지 서버(300)의 물리적 위치는 예를 들어, 개인 데스크톱, 회사 내 서버 등 다양하게 정해질 수 있다. 엣지 서버(300)는 클라우드 서버(100)보다 클라이언트 단말(200)에 더 가까운 위치에 배치될 수 있다. 엣지 서버(300)는 고성능 GPU를 포함할 수 있으며, 클라우드 서버(100)보다 더 나은 프로세싱 능력을 갖도록 설계될 수 있다.
종래에는, 클라이언트 단말(200)에서 프로세스를 통해 생성된 데이터는 클라우드 서버(100)로 전송되며, 클라우드 서버(100)에서 상기 전송받은 데이터를 가공(처리)하게 된다. 따라서, 데이터를 처리하는 과정마다 데이터 통신이 클라우드 서버(100)와 클라이언트 단말(200) 사이에 이루어졌다. 반면, 본 발명에서는 엣지 서버(300)를 이용하므로, 생성된 데이터를 클라이언트 단말(200)과 가까운 위치에 있는 엣지 서버(300)에 전송하고 엣지 서버(300)에서 데이터 가공이 이루어진다. 이로 인해 데이터 전송시간이 줄어들게 되는 장점이 있다. 상기 데이터 전송시간의 감소는 지연시간(latency)의 감소를 의미한다. 클라우드 서버(100)에는 처리된 결과 값만 저장되도록 설계될 수 있다.
모션 모듈(310)은 클라이언트 단말(200)로부터 사용자의 위치 및 회전값을 수신하고 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 비교하여 사용자의 움직임 여부를 판별한다. 모션 모듈(310)은 클라이언트 단말(200)로부터 카메라로 촬영된 영상 데이터, 그라운드 앵커(A) 위치, 및 연산된 사용자의 위치 및 회전값을 수신한다. 상기 인접 프레임은 상기 영상 데이터 내에 순차 진행되는 제1 및 제2 프레임을 포함한다. 모션 모듈(310)은 상기 제1 프레임에서의 사용자의 제1 위치 및 회전값을 임시 저장하고 클라이언트 단말(200)로부터 상기 제2 프레임에서의 사용자의 제2 위치 및 회전값을 획득한다. 그 다음, 모션 모듈(310)은 상기 제1 위치 및 회전값과 상기 제2 위치 및 회전값을 비교하여 상기 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 계산한다.
도 6은 도 3의 엣지 서버의 모션 모듈에서 수행되는 각 단계를 도시한 순서도이다.
도 6을 참조하면, 모션 모듈(310)은 클라이언트 단말(200)의 사용자 포즈 인식부(220)로부터 그라운드 앵커(A) 위치를 획득하였는지 판단하고(s21), 연산된 사용자의 위치 및 회전값인 6 자유도(6DOF) 값을 획득하였는지 판단한다(s22). 상기 그라운드 앵커(A)를 통해 사용자의 6 자유도(6DOF) 값이 획득된 경우 모션 모듈(310)은 하기 단계들을 순차 진행한다. 모션 모듈(310)은 현재 프레임의 획득한 6 자유도(6DOF) 값을 임시 저장하고(s23), 다음 프레임의 6 자유도(6DOF) 값을 획득하였는지 판단한다(s24). 다음 프레임의 6 자유도(6DOF) 값을 획득한 경우, 모션 모듈(310)은 현재 프레임과 다음 프레임의 6 자유도(6DOF) 값을 비교하여(s25), 6 자유도(6DOF) 값이 변경되었는지를 판단한다(s26). 6 자유도(6DOF) 값이 변경되지 않은 경우, 다음 프레임의 6 자유도(6DOF) 값을 획득하였는지 판단하는 단계(s24)로 되돌아간다. 6 자유도(6DOF) 값이 변경된 경우, 모션 모듈(310)은 사용자가 이동한 것으로 판단하고(s27), 변경된 6 자유도(6DOF) 값을 입력 모듈(320)로 전달한다(s28).
입력 모듈(320)은 클라우드 서버(100)로부터 실내 공간의 3D 모델 데이터를 수신하고 모션 모듈(310)로부터 사용자의 위치 및 회전값인 6 자유도(6DOF) 값을 수신한다. 렌더링 모듈(330)은 입력 모듈(320)로부터 상기 실내 공간의 3D 모델 데이터 및 상기 6 자유도(6DOF) 값을 제공받는다. 렌더링 모듈(330)은 상기 사용자의 위치 및 회전값을 통해 실내 공간 중 사용자에게 보이는 부분의 3D 모델 데이터로부터 2D 렌더링 영상을 생성한다.
렌더링 모듈(330)은 상기 실내 공간 내에서 클라이언트 단말(200)의 카메라에 대응하는 가상 카메라를 상정하고, 상기 사용자의 위치 및 회전의 변화값을 반영하여 상기 가상 카메라의 위치 및 회전값을 변경한다. 그 다음, 렌더링 모듈(330)은 상기 가상 카메라가 촬영하는 영역을 상기 실내 공간 중 사용자에게 보이는 부분으로 하여 2D 렌더링을 수행한다. 출력 모듈(240)은 상기 2D 렌더링 영상을 클라이언트 단말(200)에 송신한다.
도 7은 도 3의 엣지 서버의 입력 모듈 및 렌더링 모듈에서 수행되는 각 단계를 도시한 순서도이다.
도 7을 참조하면, 입력 모듈(320)은 클라우드 서버(100)로부터 실내 공간의 3D 모델 데이터를 획득하였는지를 판단하고(s31), 모션 모듈(310)로부터 6 자유도(6DOF) 값을 획득하였는지를 판단한다(s32). 입력 모듈(320)이 상기 실내 공간의 3D 모델 데이터 및 상기 6 자유도(6DOF) 값을 획득한 경우, 이들을 렌더링 모듈(330)에 제공한다. 렌더링 모듈(330)은 상기 실내 공간 내에서 클라이언트 단말(200)의 카메라에 대응하는 가상 카메라를 상정하는데, 상기 가상 카메라의 위치 및 회전값에 상기 6 자유도(6DOF) 값을 반영한다(s33). 렌더링 모듈(330)은 상기 가상 카메라의 위치 및 회전값이 변경됨에 따라, 상기 실내 공간의 3D 모델 데이터 중 상기 가상 카메라가 촬영하는 영역에 대한 2D 렌더링을 수행한다(s34). 렌더링 모듈(330)은 상기 2D 렌더링된 영상을 클라이언트 단말(200)에 제공하기 위해 출력 모듈(240)에 전달한다(s35).
이 분야의 보호범위가 이상에서 명시적으로 설명한 실시예의 기재와 표현에 제한되는 것은 아니다. 또한, 본 발명이 속하는 기술분야에서 자명한 변경이나 치환으로 말미암아 본 발명의 보호범위가 제한될 수도 없음을 다시 한 번 첨언한다.

Claims (8)

  1. 대화형 3D 콘텐츠를 렌더링하여 사용자의 클라이언트 단말에 실시간으로 스트리밍하기 위한, 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템으로서,
    사용자가 위치한 실내 공간의 3D 모델 데이터를 생성하는 클라우드 서버- 상기 클라우드 서버는 상기 클라이언트 단말과 데이터를 송수신하지 않고, 엣지 서버에서 처리되는 데이터 중 처리된 결과 값만 저장함 -;
    사용자가 카메라로 촬영된 영상 화면을 터치했을 때의 상기 화면 내의 터치 지점을 그라운드 앵커(ground anchor)로 지정하는 그라운드 앵커 지정부, 및 상기 그라운드 앵커를 기준으로 하여 사용자의 위치 및 회전값을 연산하는 사용자 포즈 인식부를 포함하는 클라이언트 단말; 및
    상기 클라이언트 단말로부터 사용자의 위치 및 회전값을 수신하고 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 비교하여 사용자의 움직임 여부를 판별하는 모션 모듈- 상기 인접 프레임은 순차로 진행되는 제1 및 제2 프레임을 포함함 -; 상기 클라우드 서버로부터 상기 실내 공간의 3D 모델 데이터를 수신하고 상기 모션 모듈로부터 사용자의 위치 및 회전값을 수신하는 입력 모듈; 상기 사용자의 위치 및 회전값을 통해 상기 실내 공간 중 사용자에게 보이는 부분의 3D 모델 데이터로부터 2D 렌더링 영상을 생성하는 렌더링 모듈; 및 상기 2D 렌더링 영상을 상기 클라이언트 단말에 송신하는 출력 모듈을 포함하는 엣지 서버를 포함하며,
    사용자가 상기 클라이언트 단말의 카메라를 통해 주변 환경을 촬영할 때, 상기 클라이언트 단말에는 사용자가 클라이언트 단말의 카메라로 촬영한 영상이 화면을 통해 표시되고, 동시에 상기 클라이언트 단말에서 상기 엣지 서버에서 렌더링된 대화형 3D 콘텐츠가 실시간으로 스트리밍되며,
    상기 사용자 포즈 인식부가 연산하는 사용자의 위치 및 회전값은, 3차원 좌표상에서 사용자의 위치(x, y, z), 및 피치(pitch), 요(yaw), 롤(roll) 값을 포함하며,
    상기 그라운드 앵커 지정부는, 사용자가 AR 환경에 접속 중인지를 판단하고, SLAM(Simultaneous Localization And Map-Building)을 이용하여 주위 공간정보를 획득하고, 광선 투사법(ray casting)을 이용하여 사용자의 움직임에 따라 사용자가 위치한 실내 공간의 바닥, 벽을 포함하는 평평한 부분을 인식하고, 상기 클라이언트 단말의 AR 화면에서 상기 인식된 평평한 부분에 표식(P)을 표시하고- 상기 표식은 중심점에 형성되는 제1 표시 영역, 및 상기 제1 표시 영역을 둘러싸고 원주방향으로 서로 이격된 복수개의 제2 표시 영역을 포함하며, 상기 클라이언트 단말의 이동에 따라 이동 가능하게 형성됨 -, 사용자가 카메라로 촬영한 영상 화면을 터치하면 상기 영상 화면 내의 터치 지점을 그라운드 앵커(A)로 지정하며- 상기 그라운드 앵커(A)는 상기 클라이언트 단말 화면 내의 상기 제1 표시 영역 위에 표시됨 -,
    상기 모션 모듈은, 상기 제1 프레임에서의 사용자의 제1 위치 및 회전값을 임시 저장하고 상기 클라이언트 단말로부터 상기 제2 프레임에서의 사용자의 제2 위치 및 회전값을 획득하며, 상기 제1 위치 및 회전값과 상기 제2 위치 및 회전값을 비교하여 상기 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 계산하며,
    상기 렌더링 모듈은, 상기 실내 공간 내에서 상기 클라이언트 단말의 카메라에 대응하는 가상 카메라를 상정하고, 상기 사용자의 위치 및 회전의 변화값을 반영하여 상기 가상 카메라의 위치 및 회전값을 변경하고, 상기 가상 카메라가 촬영하는 영역을 상기 실내 공간 중 사용자에게 보이는 부분으로 하여 상기 2D 렌더링을 수행하여- 상기 가상 카메라의 위치 및 회전값이 변경됨에 따라 상기 실내 공간의 3D 모델 데이터 중 상기 가상 카메라가 촬영하는 영역만에 대한 2D 렌더링을 수행함 -,
    실시간으로, 상기 클라이언트 단말에서 취득한 사용자 렌더링 뷰 포인트 변경을 반영하여 상기 엣지 서버의 렌더링 뷰 포인트를 업데이트함으로써 상기 클라이언트 단말의 스트리밍 지연시간을 감소시키는 것을 특징으로 하는, 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 대화형 3D 콘텐츠를 렌더링하여 사용자의 클라이언트 단말에 실시간으로 스트리밍하기 위한 것으로, 클라우드 서버; 그라운드 앵커 지정부 및 사용자 포즈 인식부를 포함하는 클라이언트 단말; 및 모션 모듈, 입력 모듈, 렌더링 모듈, 및 출력 모듈을 포함하는 엣지 서버를 구비한 증강 현실 원격 렌더링 시스템을 통해 수행되는, 웹 서비스를 위한 엣지 서버 원격 렌더링 방법으로서,
    (a) 상기 클라우드 서버가 사용자가 위치한 실내 공간의 3D 모델 데이터를 생성하는 단계- 상기 클라우드 서버는 상기 클라이언트 단말과 데이터를 송수신하지 않고, 엣지 서버에서 처리되는 데이터 중 처리된 결과 값만 저장함 -;
    (b) 상기 그라운드 앵커 지정부가 사용자가 카메라로 촬영된 영상 화면을 터치했을 때의 상기 화면 내의 터치 지점을 그라운드 앵커(ground anchor)로 지정하는 단계;
    (c) 상기 사용자 포즈 인식부가 상기 그라운드 앵커를 기준으로 하여 사용자의 위치 및 회전값을 연산하는 단계;
    (d) 상기 모션 모듈이 상기 클라이언트 단말로부터 사용자의 위치 및 회전값을 수신하고 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 비교하여 사용자의 움직임 여부를 판별하는 단계- 상기 인접 프레임은 순차로 진행되는 제1 및 제2 프레임을 포함함 -;
    (e) 상기 입력 모듈이 상기 클라우드 서버로부터 상기 실내 공간의 3D 모델 데이터를 수신하고 상기 모션 모듈로부터 사용자의 위치 및 회전값을 수신하는 단계;
    (f) 상기 렌더링 모듈이 상기 사용자의 위치 및 회전값을 통해 상기 실내 공간 중 사용자에게 보이는 부분의 3D 모델 데이터로부터 2D 렌더링 영상을 생성하는 단계; 및
    (g) 상기 출력 모듈이 상기 2D 렌더링 영상을 상기 클라이언트 단말에 송신하는 단계를 포함하며,
    사용자가 상기 클라이언트 단말의 카메라를 통해 주변 환경을 촬영할 때, 상기 클라이언트 단말에는 사용자가 클라이언트 단말의 카메라로 촬영한 영상이 화면을 통해 표시되고, 동시에 상기 클라이언트 단말에서 상기 엣지 서버에서 렌더링된 대화형 3D 콘텐츠가 실시간으로 스트리밍되며,
    상기 (b) 단계는, 상기 그라운드 앵커 지정부가,
    (b-1) 사용자가 AR 환경에 접속 중인지를 판단하는 단계;
    (b-2) SLAM(Simultaneous Localization And Map-Building)을 이용하여 주위 공간정보를 획득하는 단계;
    (b-3) 광선 투사법(ray casting)을 이용하여 사용자의 움직임에 따라 사용자가 위치한 실내 공간의 바닥, 벽을 포함하는 평평한 부분을 인식하는 단계;
    (b-4) 상기 클라이언트 단말의 AR 화면에서 상기 인식된 평평한 부분에 표식(P)을 표시하는 단계- 상기 표식은 중심점에 형성되는 제1 표시 영역, 및 상기 제1 표시 영역을 둘러싸고 원주방향으로 서로 이격된 복수개의 제2 표시 영역을 포함하며, 상기 클라이언트 단말의 이동에 따라 이동 가능하게 형성됨 -; 및
    (b-5) 사용자가 카메라로 촬영한 영상 화면을 터치하면 상기 영상 화면 내의 터치 지점을 그라운드 앵커(A)로 지정하는 단계- 상기 그라운드 앵커(A)는 상기 클라이언트 단말 화면 내의 상기 제1 표시 영역 위에 표시됨 -를 포함하며,
    상기 (c) 단계에서,
    상기 사용자 포즈 인식부가 연산하는 사용자의 위치 및 회전값은, 3차원 좌표상에서 사용자의 위치(x, y, z), 및 피치(pitch), 요(yaw), 롤(roll) 값을 포함하며,
    상기 (d) 단계는,
    (d-1) 상기 제1 프레임에서의 사용자의 제1 위치 및 회전값을 임시 저장하는 단계;
    (d-2) 상기 클라이언트 단말로부터 상기 제2 프레임에서의 사용자의 제2 위치 및 회전값을 획득하는 단계; 및
    (d-3) 상기 제1 위치 및 회전값과 상기 제2 위치 및 회전값을 비교하여 상기 인접 프레임 간의 사용자의 위치 및 회전의 변화값을 계산하는 단계를 포함하며,
    상기 (f) 단계는, 상기 렌더링 모듈이,
    (f-1) 상기 실내 공간 내에서 상기 클라이언트 단말에 대응하는 가상 카메라를 상정하는 단계;
    (f-2) 상기 사용자의 위치 및 회전의 변화값을 반영하여 상기 가상 카메라의 위치 및 회전값을 변경하는 단계; 및
    (f-3) 상기 가상 카메라가 촬영하는 영역을 상기 실내 공간 중 사용자에게 보이는 부분으로 하여 상기 2D 렌더링을 수행하는 단계- 상기 가상 카메라의 위치 및 회전값이 변경됨에 따라 상기 실내 공간의 3D 모델 데이터 중 상기 가상 카메라가 촬영하는 영역만에 대한 2D 렌더링을 수행함 -를 포함하여,
    실시간으로, 상기 클라이언트 단말에서 취득한 사용자 렌더링 뷰 포인트 변경을 반영하여 상기 엣지 서버의 렌더링 뷰 포인트를 업데이트함으로써 상기 클라이언트 단말의 스트리밍 지연시간을 감소시키는 것을 특징으로 하는, 웹 서비스를 위한 엣지 서버 원격 렌더링 방법.
  6. 삭제
  7. 삭제
  8. 삭제
KR1020210080583A 2021-06-22 2021-06-22 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법 KR102345297B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210080583A KR102345297B1 (ko) 2021-06-22 2021-06-22 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210080583A KR102345297B1 (ko) 2021-06-22 2021-06-22 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102345297B1 true KR102345297B1 (ko) 2021-12-30

Family

ID=79178762

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210080583A KR102345297B1 (ko) 2021-06-22 2021-06-22 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102345297B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100793838B1 (ko) * 2006-09-27 2008-01-11 한국전자통신연구원 카메라 모션 추출장치, 이를 이용한 해상장면의 증강현실 제공 시스템 및 방법
KR20160017130A (ko) * 2011-03-29 2016-02-15 퀄컴 인코포레이티드 각각의 사용자의 시점에 대해 공유된 디지털 인터페이스들의 렌더링을 위한 시스템
KR20210023705A (ko) * 2019-08-20 2021-03-04 티엠알더블유 파운데이션 아이피 앤드 홀딩 에스에이알엘 분산 컴퓨팅 센터 네트워크를 통한 3 차원 공간에서의 최적화된 실시간 응답 연속 위치 기반 클라우드 컴퓨팅, 렌더링, 추적 및 통신 서비스를 위한 가상 무선 액세스 네트워크 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100793838B1 (ko) * 2006-09-27 2008-01-11 한국전자통신연구원 카메라 모션 추출장치, 이를 이용한 해상장면의 증강현실 제공 시스템 및 방법
KR20160017130A (ko) * 2011-03-29 2016-02-15 퀄컴 인코포레이티드 각각의 사용자의 시점에 대해 공유된 디지털 인터페이스들의 렌더링을 위한 시스템
KR20210023705A (ko) * 2019-08-20 2021-03-04 티엠알더블유 파운데이션 아이피 앤드 홀딩 에스에이알엘 분산 컴퓨팅 센터 네트워크를 통한 3 차원 공간에서의 최적화된 실시간 응답 연속 위치 기반 클라우드 컴퓨팅, 렌더링, 추적 및 통신 서비스를 위한 가상 무선 액세스 네트워크 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Shu Shi, Klara Nahrstedt, and Roy Campbell, "A Real-Time Remote Rendering System for Interactive Mobile Graphics," ACM Transactions on Multimedia Computing, Communications and Applications, Vol. 8, No. 3s, Article 46, 2012. DOI: 10.1145/2348816.2348825.

Similar Documents

Publication Publication Date Title
CN107274338B (zh) 用于深度图的低等待时间变形的系统、方法和装置
US10311548B2 (en) Scaling render targets to a higher rendering resolution to display higher quality video frames
CN113811920A (zh) 分布式姿势估计
US9619916B2 (en) Method for transmitting digital scene description data and transmitter and receiver scene processing device
US11270492B2 (en) Graphics processing systems
US8619083B2 (en) Multi-layer image composition with intermediate blending resolutions
KR102345295B1 (ko) 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법
US10321109B1 (en) Large volume video data transfer over limited capacity bus
US20160021355A1 (en) Preprocessor for Full Parallax Light Field Compression
US20130321593A1 (en) View frustum culling for free viewpoint video (fvv)
US20200143516A1 (en) Data processing systems
EP3660663B1 (en) Delivering virtualized content
US8331435B2 (en) Compression system, program and method
CN112370784B (zh) 虚拟场景显示方法、装置、设备以及存储介质
KR102402580B1 (ko) 메타버스 환경에서의 영상 처리 시스템 및 방법
US11044398B2 (en) Panoramic light field capture, processing, and display
WO2023207379A1 (zh) 图像处理方法、装置、设备及存储介质
CN113643414A (zh) 一种三维图像生成方法、装置、电子设备及存储介质
CN114531553B (zh) 生成特效视频的方法、装置、电子设备及存储介质
US7750907B2 (en) Method and apparatus for generating on-screen display using 3D graphics
JP2016081225A (ja) 情報提示システム
KR102345297B1 (ko) 웹 서비스를 위한 엣지 서버 원격 렌더링 시스템 및 방법
CN115065867B (zh) 基于无人机视频金字塔模型的动态处理方法及装置
CN114377394B (zh) 一种云游戏画面渲染方法及装置
US20240064360A1 (en) Distribution control apparatus, distribution control system, distribution control method and program

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant