KR20240027182A - 스트리밍용 포인트 클라우드 압축 시스템 및 방법 - Google Patents

스트리밍용 포인트 클라우드 압축 시스템 및 방법 Download PDF

Info

Publication number
KR20240027182A
KR20240027182A KR1020220104796A KR20220104796A KR20240027182A KR 20240027182 A KR20240027182 A KR 20240027182A KR 1020220104796 A KR1020220104796 A KR 1020220104796A KR 20220104796 A KR20220104796 A KR 20220104796A KR 20240027182 A KR20240027182 A KR 20240027182A
Authority
KR
South Korea
Prior art keywords
point
points
normal vector
reference point
distance
Prior art date
Application number
KR1020220104796A
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 KR1020220104796A priority Critical patent/KR20240027182A/ko
Priority to PCT/KR2022/019640 priority patent/WO2024043406A1/ko
Publication of KR20240027182A publication Critical patent/KR20240027182A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

본 기술은 스트리밍용 포인트 클라우드 압축 시스템 및 방법이 개시된다. 본 기술의 구체적인 예에 따르면, 구형의 포인트 클라우드를 육면체의 포인트로 변환한 다음 트리 구조의 포인트로 변환하고 변환된 트리 구조의 각 포인트를 기준 포인트로 설정하고 설정된 해당 기준 포인트의 자식 노드의 각 포인트와 상기 해당 기준 포인트 간의 연산 거리가 기준 거리 이하인 포인트의 법선 벡터를 각각 도출함에 따라, 법선 벡터 연산에 따른 연산 복잡도 및 연산속도를 감소할 수 있고, 도출된 포인트의 법선벡터와 카메라를 통해 획득된 사용자 시야 방향 벡터의 내적값이 양수인 포인트에 대해 인코딩을 수행함에 따라, 인코딩하는 데이터 수를 줄일 수 있고, 이에 따른 통신 자원 및 메모리 자원을 확보할 수 있다.

Description

스트리밍용 포인트 클라우드 압축 시스템 및 방법{POINT CLOUD ENCODING SYSTEM FOR STREAMING}
본 발명은 스트리밍 용 포인트 클라우드 압축 시스템 및 방법에 관한 것으로서, 더욱 상세하게는 제작된 콘텐츠의 구형 영상으로부터 생성된 법선 벡터와 카메라에 의거 획득된 사용자 시야의 방향 벡터의 내적값이 양수인 포인트에 대해 인코딩을 수행할 수 있도록 한 기술에 관한 것이다.
최근 가상 현실(Virtual Reality, VR) 콘텐츠에 대한 수요와 함께 VR 콘텐츠의 실시간 서비스에 대한 수요가 증가하고 있다.
VR 콘텐츠는 구형으로 렌더링되어야 하지만, 구형의 영상 변환 및 전송은 기존의 영상 변환 포맷 또는 방송 전송 포맷에 부합하지 않는 문제점이 있었다.
이에 따라 지도 투영법 중 메르카토르도법(원통도법)을 적용하여 구형의 영상을 사각형의 평면으로 재구성하는 기술이 개발되었다. 하지만, 이러한 기술은 평면으로 변환하는 과정에서 영상의 데이터를 전송함에 있어, 통신 지연이 발생하는 문제점이 있었다.
이에 본 출원인은 제작된 콘텐츠의 구형의 포인트 클라우드를 육면체로 변환한 다음 트리 구조의 포인트로 변환하고 변환된 트리 구조에서 제1 노드의 기준 포인트와 제1 노드의 하위 노드인 제2 노드 이하 자식 노드의 포인트 간의 연산 거리가 기준 거리 이하인 포인트의 법선벡터를 각각 도출하고, 도출된 포인트의 법선 벡터와 카메라를 통해 획득된 사용자 시야 방향 벡터의 내적값이 양수인 포인트에 대해 인코딩을 수행함에 따라 인코딩하는 데이터 수를 줄일 수 있고, 이에 따른 통신 자원을 근본적으로 확보할 수 있는 방안을 제안하고자 한다.
특허문헌 1: 등록특허 제10-1820359호(2018년01월15일 등록)
이에 본 발명은 인코딩하고자 하는 데이터 수를 줄일 수 있고, 법선 벡터 연산에 따른 연산 복잡도 및 연산속도를 감소할 수 있으며, 이에 따른 통신 자원을 근본적으로 확보하기 위한 것이다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시 예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
전술한 목적을 달성하기 위한 본 발명의 일 실시 양태에 의거한 스트리밍 용 포인트 클라우드 압축 시스템은,
제작된 콘텐츠의 구형의 포인트 클라우드를 육면체의 포인트로 변환한 다음 트리 구조로 포인트로 변환하는 포인트 구조화 장치;
상기 트리 구조의 각 포인트와 각 포인트의 자식 노드의 포인트 간의 연산 거리 및 정해진 기준 거리를 토대로 각 포인트의 법선 벡터를 도출하여 도출된 해당 포인트의 법선 벡터를 임시 메모리에 저장하는 포인트 법선벡터 추정장치; 및
상기 각 포인트의 법선 벡터와 카메라에 의거 획득된 사용자 시야의 방향 벡터의 내적값으로 인코딩하고자 하는 포인트를 추출하고 추출된 포인트를 인코딩하여 전송하는 인코딩 장치를 포함하는 것을 일 특징으로 한다.
바람직하게 상기 포인트 법선벡터 추정장치는,
트리 구조의 각 포인트를 기준 포인트로 설정하고, 각 설정된 기준 포인트의 자식 노드의 포인트와 설정된 기준 포인트 간의 연산 거리를 출력하며, 출력된 연산 거리가 기 정해진 기준 거리 이하인 기준 포인트를 임시 메모리에 저장하고, 임시 메모리에 저장된 기준 포인트를 연산 거리에 대한 오름 차순으로 정렬하는 포인트 정렬부; 및
상기 기준 포인트와의 연산 거리 순으로 2개의 인접 포인트를 추출하고 추출된 2개의 인접 포인트와 상기 기준 포인트로 형성된 평면의 법선 벡터를 도출하여 도출된 법선 벡터를 상기 기준 포인트가 배열된 임시 메모리의 위치에 저장하는 법선벡터 도출부를 포함할 수 있다.
바람직하게 상기 포인트 법선벡터 추정장치는
상기 임시 메모리에 저장된 상기 기준 포인트와의 연산 거리가 짧은 적어도 3의 포인트를 추출한 다음 추출된 각 포인트의 법선 벡터를 평균한 다음 평균 법선 벡터를 상기 기준 포인트의 법선 벡터로 설정하는 법선벡터 최적화부를 포함할 수 있다.
바람직하게 상기 인코딩 장치는,
카메라를 통해 획득된 사용자 시야의 방향 벡터와 각 포인트의 법선 벡터의 내적값을 도출하고 도출된 내적값이 양수인 포인트에 대해 인코딩하여 전송하도록 구비될 수 있다.
다른 실시예에 의거한 본 발명의 스트리밍용 포인트 클라우드 압축 방법은,
제작된 콘텐츠의 구형의 포인트 클라우드를 육면체의 포인트로 변환한 다음 트리 구조로 포인트로 변환하는 포인트 구조화 단계;
상기 트리 구조의 각 포인트와 각 포인트의 자식 노드의 포인트 간의 연산 거리 및 정해진 기준 거리를 토대로 각 포인트의 법선 벡터를 도출하여 도출된 해당 포인트의 법선 벡터를 임시 메모리에 저장하는 포인트 법선벡터 추정단계; 및
상기 각 포인트의 법선 벡터와 카메라에 의거 획득된 사용자 시야의 방향 벡터의 내적값으로 인코딩하고자 하는 포인트를 추출하고 추출된 포인트를 인코딩하여 전송하는 인코딩 단계를 포함하는 것을 일 특징으로 한다.
바람직하게 상기 포인트 법선벡터 추정단계는,
트리 구조의 각 포인트를 기준 포인트로 설정하고, 각 설정된 기준 포인트의 자식 노드의 포인트와 설정된 기준 포인트 간의 연산 거리를 출력하는 단계;
출력된 연산 거리가 기 정해진 기준 거리 이하인 기준 포인트를 임시 메모리에 저장하고, 임시 메모리에 저장된 기준 포인트를 연산 거리에 대한 오름 차순으로 정렬하는 단계; 및
상기 기준 포인트와의 연산 거리 순으로 2개의 인접 포인트를 추출하고 추출된 2개의 인접 포인트와 상기 기준 포인트로 형성된 평면의 법선 벡터를 도출하여 도출된 법선 벡터를 상기 기준 포인트가 배열된 임시 메모리의 위치에 저장하는 단계를 포함할 수 있다.
바람직하게 상기 포인트 법선벡터 추정 단계는,
임시 메모리에 저장된 상기 기준 포인트와의 연산 거리가 짧은 적어도 3의 포인트를 추출한 다음 추출된 각 포인트의 법선 벡터를 평균한 다음 평균 법선 벡터를 상기 기준 포인트의 법선 벡터로 설정하는 단계를 포함할 수 있다.
바람직하게 상기 인코딩 단계는,
카메라를 통해 획득된 사용자 시야의 방향 벡터와 각 포인트의 법선 벡터의 내적값을 도출하고 도출된 내적값이 양수인 포인트에 대해 인코딩하여 전송하도록 구비될 수 있다.
일 실시 예에 따르면, 구형의 포인트 클라우드를 육면체의 포인트로 변환한 다음 트리 구조의 포인트로 변환하고 변환된 트리 구조의 각 포인트를 기준 포인트로 설정하고 설정된 해당 기준 포인트의 자식 노드의 각 포인트와 상기 해당 기준 포인트 간의 연산 거리가 기준 거리 이하인 포인트의 법선 벡터를 각각 도출함에 따라, 법선 벡터 연산에 따른 연산 복잡도 및 연산속도를 감소할 수 있다.
또한, 본 발명에 의거, 도출된 포인트의 법선벡터와 카메라를 통해 획득된 사용자 시야 방향 벡터의 내적값이 양수인 포인트에 대해 인코딩을 수행함에 따라, 인코딩하는 데이터 수를 줄일 수 있고, 이에 따른 통신 자원 및 메모리 자원을 확보할 수 있다.
본 명세서에서 첨부되는 다음의 도면들은 본 발명의 바람직한 실시 예를 예시하는 것이며, 후술하는 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니된다.
도 1은 일 실시예의 스트리밍용 포인트 클라우드 압축 시스템의 구성도이다.
도 2는 도 1의 포인트 구조화 장치의 과정을 보인 예시도이다.
도 3은 도 2의 포인트 법선벡터 추정장치의 세부 구성도이다.
도 4는 도 3의 임시 메모리의 포인트 배열 과정을 보인 예시도이다.
도 5는 도 3의 포인트 배열부의 동작 과정을 보인 도이다.
도 6은 도 5에 의거한 임시 메모리의 포인트 배열을 보인 예시도이다.
도 7은 도 3의 법선벡터 도출부의 법선벡터의 개념도이다.
도 8은 도 3의 법선벡터 도출부의 동작 과정을 보인 도이다.
도 9는 도 4의 법선벡터 최적화부의 동작 과정을 보인 도이다.
도 10 도 9에 의거 최적화된 포인트 별 법선벡터를 보인 도이다.
도 11은 일 실시예의 인코딩용 포인트 추출 개념을 설명하는 도이다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 보다 상세하게 설명한다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
따라서, 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다.
일 실시예가 적용되는 각각의 구성요소에 대해 임의 개를 임의의 적절한 구성으로 포함할 수도 있다. 일반적으로, 컴퓨터 및 통신 시스템들은 광범위한 구성들로 나타나며, 도면은 본 개시의 범위를 어떤 특정 구성으로 한정하지 않는다. 도면은 본 특허 문서에서 개시된 다양한 특성들이 사용될 수 있는 하나의 동작 환경을 도시하고 있지만, 그러한 특성들은 어떤 다른 적절한 시스템에서 사용될 수도 있다.
명세서 상의 설명에 있어서, 동작을 수행하는 주체는 구형의 포인트 클라우드의 각 포인트를 육면체의 포인트로 변환한 후 트리 형태로 구조화하고, 트리 구조의 각 포인트를 기준 포인트로 설정한 다음 설정된 해당 기준 포인트와 해당 기준 포인트의 노드의 하위 노드인 자식 노드의 각 포인트 간의 연산 거리와 기 정해진 기준 거리를 토대로 인접 포인트 검색 및 법선 벡터 추정 알고리즘을 통해 각 포인트의 법선 벡터를 도출하는 프로세서일 수 있으며, 다른 한 예로써, 추정 및 처리과정을 수행하는 프로그램이 기록된 기록매체 또는 이를 포함하는 장치일 수 있다.
상기 인접 포인트 검색 및 법선 벡터 추정 알고리즘은 트리 구조의 모든 포인트에 대해 트리 구조에 의거 순차적으로 수행되며, 여기서 해당 기준 포인트라 함은 기준 포인트로 설정된 포인트로 트리 구조의 포인트 중 기준 포인트로 설정된 포인트이다.
도 1은 일 실시 예에 따른 스트리밍용 포인트 클라우드 압축 시스템의 구성을 보인 도면이고, 도 2는 도 1의 포인트 구조화 과정을 설명하는 예시도이며, 도 3은 포인트의 법선 벡터에 대한 개념도이고, 도 4는 도 1의 포인트 법선벡터 추정 장치의 세부 구성도이며, 도 5는 도 4의 임시 메모리의 포인트 배열을 보인 에시도이다.
도 1 내지 도 5를 참조하면, 일 실시예의 스트리밍용 포인트 클라우드 압축 시스템은 구형의 포인트 클라우드의 각 포인트를 육면체로 변환한 후 트리 형태로 구조화하고, 설정된 트리 구조의 기준 포인트와 상기 기준 포인트의 하위 노드인 자식 노드의 각 포인트 간에 연산 거리가 기준 거리 이하인 포인트에 대해 법선 벡터를 도출하고, 도출된 법선 벡터와 카메라를 통해 획득된 사용자 시야의 방향 벡터의 내적값으로 추출된 포인트에 대한 인코딩을 수행하는 구성을 갖추며, 이에 시스템은 포인트 구조화 장치(1), 포인트 법선벡터 추정장치(2), 인코딩 장치(3)를 포함할 수 있다.
포인트 구조화 장치(1)는 포인트 클라우드의 각 포인트를 큐브 형태의 육면체에 매핑시킨 다음 매핑된 육면체의 각 포인트를 트리 형태로 구조화하는 기능을 수행한다.
일 실시예에서 구형의 포인트 클라우드의 각 포인트를 큐브 형태의 육면체의 각 면에 매핑하는 일련의 과정에 대해 구체적으로 명시하지 아니하였으나 이는 당업자 수준에서 이해될 수 있다.
포인트 구조화 장치(1)는 육면체의 각 포인트를 트리 형태로 구조화를 수행한다. 일 례로, 도 2를 참조하면, 포인트 구조화 장치(1)는 (a)에 도시된 바와 같이 육면체의 X축 중앙에 위치한 포인트(60, 70, 60)로 제1 노드를 구성한 다음 (b)에 도시된 바와 같이 육면체의 X축에 의해 구획된 2개의 각 영역의 Y축 중앙에 위치한 포인트((25, 50, 30), (50, 45, 50))로 제1 노드의 하위 노드로 제2 노드(이하 자식 노드로 칭함)를 구성하며, (c)에 도시된 바와 같이 육면체의 X축과 Y축으로 구획된 4개의 각 영역의 Z축 중앙에 위치한 포인트((10, 70, 50), (40, 25, 55), (65, 70, 60), (80, 30, 60))로 제2 노드의 하위 노드로 자식 노드를 구성한다. 이러한 큐브 형태의 포인트를 트리 형태로 구조화 과정은 구형의 포인트 클라우드의 모든 포인트에 대해 반복하여 수행된다. 여기서, 포인트(25, 50, 30)는 포인트의 X, Y, Z 축 좌표계의 포인트 위치를 나타낸다.
트리 구조의 각 포인트는 포인트 법선벡터 추정장치(2)로 전달된다.
포인트 법선벡터 추정장치(2)는 트리 구조의 각 포인트에서 순차적으로 기준 포인트를 설정하고 설정된 해당 기준 포인트와의 거리차인 연산 거리 d를 토대로 인접 포인트를 검색하고, 검색된 2개의 인접 포인트와 기준 포인트로 형성된 평면에 대한 수직의 기준 포인트의 법선 벡터를 도출하는 구성을 갖춘다.
이에 포인트 법선벡터 추정장치(2)는 도 3을 참조하면, 포인트 정렬부(21), 법선벡터 도출부(22), 임시 메모리(23), 및 법선벡터 최적화부(24)를 포함할 수 있다.
여기서, 포인트 정렬부(21)는 포인트 구조화 장치(1)의 각 노드의 포인트로 순차 설정된 기준 포인트와 기준 포인트의 자식 노드의 포인트 간의 연산 거리가 정해진 기준 거리 이하인 포인트를 검색하여 임시 메모리(23)에 저장한 다음 임시 메모리(23)에 저장된 포인트를 연산 거리에 대해 오름 차순으로 정렬한다.
예를 들어, 도 4를 참조하면, 포인트 정렬부(21)는 해당 기준 포인트가 제1 노드의 포인트로 설정되면, 제1 노드의 하위 노드인 자식 노드의 포인트와 해당 기준 포인트 간의 거리를 연산하고, 연산 거리 d가 기 정해진 기준 거리 이하인 포인트로 포인트 배열을 생성한다.
즉, 도 4의 (a)에 도시된 바와 같이, 포인트 인덱스 32의 포인트를 해당 기준 포인트로 설정되면, (b)에 도시된 바와 같이, 포인트 32의 하위 노드인 자식 노드의 포인트 인덱스 2 및 83과 설정된 해당 기준 포인트 32간에 거리 차를 연산하여 연산 거리 d를 도출하며, 이때 도출된 연산 거리 d는 각각 2.1와 1.5로 기준 거리 r=3 이하이므로, 포인트 인덱스 2 및 83의 포인트는 임시 메모리(23)에 저장한다.
한편, 도 4의 (c)에 도시된 바와 같이 포인트 정렬부(21)는 포인트 인덱스 2의 해당 기준 포인트와 기준 포인트의 자식 노드의 포인트 인덱스 93, 7의 각 포인트 간의 거리를 연산하며, 이때 연산 거리 d는 각각 3.1, 2.4이다.
또한 포인트 정렬부(21)는 포인트 인덱스 83의 해당 기준 포인트와 해당 기준 포인트 간의 연산 거리 d는 각각 1.7, 2.3이다. 따라서 기준 거리 r=3 이하인 포인트 인덱스 45, 17, 7은 임시 메모리(23)에 저장한다. 이러한 임시 메모리(23)의 포인트 배열은 모든 노드의 각 포인트에 대해 수행된다.
도 5는 도 3의 포인트 배열부(21)의 동작을 설명하기 위한 도이고, 도 6은 도 3의 임시 메모리(23)의 포인트 배열을 보인 예시도로서, 도 5 및 도 6을 참조하면, 포인트 배열부(21)는 트리 구조의 각 포인트로 순차적으로 설정된 기준 노드와 기준 노드가 속하는 노드의 하위 노드인 자식 노드의 각 포인트 간의 거리 기반으로 임시 메모리의 포인트 배열을 수행한다.
즉, 도 5을 참조하면 포인트 배열부(21)는, 단계(110)(120)에서 기 정해진 포인트 클라우드의 포인트 수로 형성된 임시 메모리의 포인트 배열 및 기준 거리 r을 설정하고 설정된 임시 메모리의 포인트 배열에 각 노드의 포인트를 삽입한다.
본 명세서 상에서 기준 거리 r은 다수의 실험을 통해 얻어진 결과 값으로 재생 콘텐츠의 해상도를 반영하여 설정될 수 있다.
이 후 포인트 배열부(21)는 단계(131 ~ 133)에서, 트리 구조의 설정된 기준 포인트와 기준 포인트가 속하는 노드의 하위 노드인 자식 노드 중 왼쪽 포인트 AL간의 연산 거리와 설정된 기준 거리를 토대로 왼쪽 포인트 AL를 임시 메모리의 포인트 배열에 삽입한다.
즉, 포인트 배열부(21)는 상기 연산 거리가 상기 기준 거리 이하인 우(화살표의 “예” 방향으로 진행) 임시 메모리의 왼쪽 위치에 상기 왼쪽 포인트를 삽입한다.
단계(132)에서 연산 거리가 상기 기준 거리 이하가 아닌 경우(화살표의 “아니오” 방향으로 진행), 단계(134 ~ 136)에서 포인트 법선벡터 추정장치(2)는 제1 노드의 자식 노드인 오른쪽 포인트 AR간의 연산 거리와 설정된 기준 거리를 토대로 오른쪽 포인트를 임시 메모리의 포인트 배열에 삽입한다.
즉, 포인트 배열부(21)는 상기 연산 거리가 상기 기준 거리 이하인 경우(화살표의 “예” 방향으로 진행) 임시 메모리의 오른쪽 위치에 상기 오른쪽 포인트 AR를 삽입한다.
포인트 배열부(21)는 단계(137~139)에서 인접 포인트의 마지막이고 포인트 트리 구조의 마지막 노드에 도달하였는 지를 판단하고, 마지막 노드에 도달한 경우(화살표 “예” 방향으로 진행) 임시 메모리에 저장된 포인트와 기준 포인트 간의 연산 거리에 대한 오름차순으로 정렬한다.
또한 포인트 배열부(21)는 단계(137)에서 화살표 “아니오” 방향으로 진행하는 경우, 단계(S31)로 반복 진행한다. 이에 임시 메모리의 포인트 배열은 도 6에 도시된 바와 같이, 포인트 AL, BL, CL, DL, DR, CR, BR, AR 순으로 저장된다.
이 후 포인트 정렬부(21)는 단계(138)에서, 임시 메모리(23)의 포인트 배열을 연산 거리 순으로 정렬하고 이에 임시 메모리(23)의 포인트 배열은 연산 거리에 대한 오름 차순으로 정렬되며, 따라서, 임시 메모리(23)는 기준 포인트와의 연산 거리가 짧은 포인트 순으로 저장한다.
이에, 일 실시예는 임시 메모리(23)에 저장되는 포인트의 수는 연산 거리가 기준 거리 이하인 포인트로 입력 포인트 수에 비해 줄일 수 있다. 이에 후술된 각 포인트 별 법선 벡터의 연산 복잡도가 감소된다.
도 3의 법선벡터 도출부(22)는 임시 메모리(23)의 첫번째 포인트와 두번째 포인트로 검색된 2개의 인접 포인트와 1개의 기준 포인트로 이루어지는 평면에 대한 수직 벡터로 법선벡터를 도출한다.
도 7은 도 3의 법선벡터 도출부의 법선벡터의 개념도로서, 도 7을 참조하면, 법선 벡터는 임시 메모리의 포인트 중 정해진 임의의 기준 포인트 A와 인접 포인트 A', A''로 형성된 평면에 대한 수직 벡터이다.
이때 법선 벡터는 CUDA(Compute Unified Device Architecture) 병렬 처리 알고리즘으로 도출될 수 있으며, 이에 법선벡터 도출부(22)는 각 포인트 별로 CUDA 커널 함수의 CUDA 임계치를 설정하고 설정된 CUDA 임계치와 2개의 인접 포인트 및 1개의 기준 포인트로 법선벡터를 도출한다.
일 실시예에서, 설정된 CUDA 임계치와 2개의 인접 포인트 및 1개의 기준 포인트를 입력으로 CUDA(Compute Unified Device Architecture) 병렬 처리 알고리즘을 통해 법선벡터를 도출하는 과정은 본 명세서 상에서 구체적으로 명시하지 아니하였으나 이는 당업자 수준에서 이해될 수 있다.
그리고 도출된 각 포인트 별 법선 벡터는 임시 메모리(23)에 제공되며, 이에 임시 메모리(23)에 저장된 기준 거리 이하의 각 포인트는 포인트 인덱스, 육면체의 포인트 위치 좌표, 및 도출된 법선 벡터 등의 정보들이 포함될 수 있다.
도 8은 도 4의 법선벡터 도출부의 동작 과정을 보인 도면으로서, 도 8을 참조하면, 법선벡터 도출부(22)는 단계(141~144)에서 임시 메모리의 첫번째 포인트 및 두번째 포인트를 인접 포인트로 추출하고, 추출된 2개의 인접 포인트와 기준 포인트를 토대로 평면을 생성한 다음 생성된 평면의 수직인 법선 벡터를 도출하고, 도출된 법선 벡터를 임시 메모리(23)의 해당 기준포인트에 삽입한다. 여기서, 임시 메모리(23)의 첫번째 포인트와 두번째 포인트는 기준 포인트에서 가까운 거리를 가지는 인접 포인트이다. 이 후 법선벡터 도출부(22)는 단계(138)로 진행한다.
한편, 스트리밍용 포인트 클라우드 압축 시스템은 평면의 수직을 이용하여 도출된 법선 벡터는 제작된 콘텐츠의 객체의 평면 부분에서 정확하나 곡면 부분에서는 정확도가 저하된다. 이에 포인트 법선벡터 추정장치(2)는 임시 메모리의 적어도 3의 포인트의 법선 벡터의 평균값을 도출한 다음 도출된 평균 법선벡터를 해당 기준 포인트의 법선 벡터로 설정한다. 이에 임시 메모리(23)에 저장된 모든 포인트에 대해 정규화된다.
한편, 도 3의 법선벡터 최적화부(24)는 임시 메모리(23)의 해당 포인트에 대해 적어도 3 이상의 인접 포인트를 추출하고 추출된 인접 포인트의 법선 벡터를 평균하여 평균 법선 벡터를 해당 기준 포인트의 법선 벡터로 설정한다.
따라서, 일 실시예는 임시 메모리에 기준 포인트와의 연산 거리가 기 정해진 기준 거리 이하인 포인트를 연산 거리에 대한 오름차순으로 정렬되어 저장됨에 따라, 인접 포인트의 탐색이 용이하고, 인접 포인트의 탐색횟수를 줄일 수 있다.
도 9는 도 4의 법선벡터 최적화부의 동작 과정을 보인 도면이고, 도 10은 최적화된 법선벡터와 도 8의 법선 벡터를 보인 비교 도면으로서, 도 9 및 도 10을 참조하면 일 실시예의 법선벡터 최적화부(24)는 단계(211 ~ 212)에서, 임시 메모리에 저장된 인접 포인트의 선정 방식을 설정하고, 설정된 인접 포인트 선정 방식에 따라 임시 메모리의 인접 포인트를 추출한다. 일 례로 인접 포인트 선정 방식이 최초 N개의 포인트 추출 방식인 경우 첫번째 포인트 내지 N번째 포인트가 인접 포인트로 추출된다. 다른 례로 인접 포인트 선정 방식이 기 정해진 연산 거리 이내의 포인트 추출 방식인 경우 해당 포인트에 대해 정해진 연산 거리 이내의 포인트가 인접 포인트로 추출된다.
법선벡터 최적화부(24)는 단계(213, 214)에서 각 추출된 포인트의 범선 벡터의 평균을 연산하고 연산된 평균 법선 벡터를 해당 기준 포인트의 법선 벡터로 설정하여 임시 메모리에 저장하고 이 후 단계(214)의 실행 후 단계(138)로 진행한다.
이에 도 10을 참조하면, 일 실시예의 법선벡터 최적화부(24)는 도 8에 의거 도출된 법선 벡터에 비해 최적화된 법선 벡터임을 알 수 있다.
또한, 도 1의 인코딩 장치(3)는 도출된 법선 벡터를 이용하여 카메라(미도시됨)을 통해 획득된 사용자의 시야와 매칭되는 객체 위치의 포인트를 압축하여 전송한다.
인코딩 장치(3)는 카메라의 방향 벡터와 콘텐츠의 객체의 포인트의 법선 벡터를 내적하여 도출된 내적값이 양수인 경우 해당 포인트를 인코딩하고, 내적값이 음수인 경우 사용자의 시야에 없는 포인트로 판단한다.
도 11은 제작된 콘텐츠의 객체에 대해 인코딩하는 포인트를 보인 예시도로서, 이에 도 10에 도시된 바와 같이, 카메라(미도시됨)에 의거 획득된 사용자 시야에 존재하는 해당 포인트에 대해 인코딩됨을 알 수 있다.
따라서, 일 실시예는 제작된 콘텐츠의 객체의 포인트 클라우드 중에서 트리 구조의 기준 포인트와의 연산 거리가 기준 거리 이하의 포인트의 법선 벡터를 생성함에 따라 법선 벡터의 연산 복잡도를 감소할 수 있고, 이에 다른 인코딩 속도를 향상시킬 수 있으며, 경량의 디바이스에 적용 가능하므로 범용성을 향상시킬 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
1 : 포인트 구조화 장치
2 : 포인트 법선벡터 추정장치
3 : 인코딩 장치
21 : 포인트 배열부
22 : 법선벡터 도출부
23 : 임시 메모리
24 : 법선벡터 최적화부

Claims (11)

  1. 제작된 콘텐츠의 구형의 포인트 클라우드를 육면체의 포인트로 변환한 다음 트리 구조로 포인트로 변환하는 포인트 구조화 장치;
    상기 트리 구조의 각 노드의 포인트 각각을 순차적으로 기준 포인트로 설정하고, 설정된 각 기준 포인트와 상기 각 기준 포인트가 포함된 노드의 하위 노드인 자식 노드의 각 포인트 간의 연산 거리 및 정해진 기준 거리를 토대로 각 포인트의 법선 벡터를 도출하는 포인트 법선벡터 추정장치; 및
    상기 각 포인트의 법선 벡터와 카메라에 의거 획득된 사용자 시야의 방향 벡터의 내적값으로 포인트를 추출하고 추출된 포인트를 인코딩하여 전송하는 인코딩 장치를 포함하는 것을 특징으로 하는 스트리밍용 포인트 클라우드 압축 시스템
  2. 제1항에 있어서, 상기 포인트 법선벡터 추정장치는,
    상기 트리 구조의 각 노드의 포인트 각각을 순차적으로 기준 포인트로 설정하고, 해당 기준 포인트와 자식 노드의 포인트 간의 연산 거리를 출력하며, 출력된 연산 거리가 기 정해진 기준 거리 이하인 포인트에 대해 임시 메모리에 저장하고, 임시 메모리에 저장된 포인트를 연산 거리에 대한 오름 차순으로 정렬하는 포인트 정렬부; 및
    해당 기준 포인트에 대한 임시 메모리의 첫번째 포인트 및 두번째 포인트로 획득된 인접 포인트와 및 해당 기준 포인트로 형성된 평면의 수직 방향으로 기준 포인트의 법선 벡터를 도출하여 임시 메모리의 해당 기준 포인트에 저장하는 법선벡터 도출부를 포함하는 것을 특징으로 하는 스트리밍용 포인트 클라우드 압축 시스템.
  3. 제2항에 있어서, 상기 상기 포인트 법선벡터 추정장치는,
    상기 해당 기준 포인트의 인접 포인트로 적어도 3의 포인트를 추출한 다음 추출된 각 포인트의 법선 벡터를 평균한 다음 평균 법선 벡터를 해당 기준 포인트의 법선벡터로 설정하는 법선벡터 최적화부를 더 포함하는 것을 특징으로 하는 스트리밍용 포인트 클라우드 압축 시스템.
  4. 제3항에 있어서, 상기 인코딩 장치는,
    카메라를 통해 획득된 사용자 시야의 방향 벡터와 각 포인트의 법선 벡터의 내적값을 도출하고 도출된 내적값이 양수인 포인트에 대해 인코딩하여 전송하도록 구비되는 것을 특징으로 하는 스트리밍용 포인트 클라우드 압축 시스템.
  5. 제1항의 제작된 콘텐츠의 육면체의 포인트를 트리 구조로 변환하고 변환된 트리 구조의 포인트를 순차적으로 기준 포인트로 설정하고, 설정된 해당 기준 포인트와 해당 기준 포인트가 포함된 노드의 자식 노드의 각 포인트 간의 연산 거리가 기 정해진 기준 거리 이하인 포인트에 대해 임시 메모리에 저장하고, 저장된 임시 메모리의 각 포인트를 연산 거리에 대한 오름 차순으로 정렬하는 포인트 정렬부; 및
    상기 임시 메모리의 두개의 인접 포인트와 및 해당 기준 포인트로 형성된 평면의 수직 방향으로 법선 벡터를 도출하여 도출된 법선 벡터를 임시 메모리의 해당 기준 포인트에 각각 저장하는 법선벡터 도출부를 포함하는 것을 특징으로 하는 스트리밍용 포인트 클라우드 압축 시스템의 포인트 법선벡터 추정 장치.
  6. 제5항에 있어서, 상기 포인트 법선벡터 추정장치는,
    상기 해당 기준 포인트의 인접 포인트로 적어도 3의 포인트를 추출한 다음 추출된 각 포인트의 법선 벡터를 평균한 다음 평균 법선 벡터를 해당 기준 포인트의 법선벡터로 설정하는 법선벡터 최적화부를 더 포함하는 것을 특징으로 하는 스트리밍용 포인트 클라우드 압축 시스템의 포인트 법선벡터 추정 장치.
  7. 제1항의 스트리밍용 포인트 클라우드 압축 시스템에 의거 수행되는 스트리밍 용 포인트 클라우드 압축 방법에 있어서,
    제작된 콘텐츠의 구형의 포인트 클라우드를 육면체의 포인트로 변환한 다음 트리 구조로 포인트로 변환하는 포인트 구조화 단계;
    상기 트리 구조의 각 포인트를 기준 포인트로 설정하고, 설정된 해당 기준 포인트와 해당 기준 포인트의 노드의 하위 노드인 자식 노드의 각 포인트 간의 연산 거리 및 정해진 기준 거리를 토대로 각 포인트의 법선 벡터를 도출하는 포인트 법선벡터 추정단계; 및
    상기 각 포인트의 법선 벡터와 카메라에 의거 획득된 사용자 시야의 방향 벡터의 내적값으로 포인트를 추출하고 추출된 포인트를 인코딩하여 전송하는 인코딩 단계를 포함하는 것을 특징으로 하는 스트리밍 용 포인트 클라우드 압축 방법.
  8. 제7항에 있어서, 상기 포인트 법선벡터 추정단계는,
    트리 구조의 각 포인트를 기준 포인트로 각각 설정하고, 설정된 해당 기준 포인트와 자식 노드의 각 포인트 간의 연산 거리를 출력 단계;
    출력된 연산 거리가 기 정해진 기준 거리 이하인 포인트에 대해 임시 메모리에 저장하고, 임시 메모리의 포인트를 연산 거리에 대한 오름 차순으로 정렬하는 단계; 및
    상기 해당 기준 포인트에 대한 임시 메모리의 첫번째 포인트 및 두번째 포인트로 획득된 인접 포인트와 및 해당 기준 포인트로 형성된 평면의 수직 방향으로 해당 기준 포인트의 법선 벡터를 도출하고 도출된 해당 기준 포인트의 법선 벡터를 임시 메모리의 해당 기준 포인트에 저장하는 단계를 포함하는 것을 특징으로 하는 스트리밍 용 포인트 클라우드 압축 방법.
  9. 제8항에 있어서, 상기 포인트 법선벡터 추정단계는,
    상기 해당 기준 포인트의 인접 포인트로 적어도 3의 포인트를 추출한 다음 추출된 적어도 3의 포인트의 법선 벡터를 평균한 다음 평균 법선 벡터를 해당 기준 포인트의 법선벡터로 설정하는 단계를 더 포함하는 것을 특징으로 하는 스트리밍 용 포인트 클라우드 압축 방법.
  10. 제9항에 있어서, 상기 인코딩 단계는,
    카메라를 통해 획득된 사용자 시야의 방향 벡터와 각 포인트의 법선 벡터의 내적값을 도출하고 도출된 내적값이 양수인 포인트에 대해 인코딩하여 전송하도록 구비되는 것을 특징으로 하는 스트리밍 용 포인트 클라우드 압축 방법.
  11. 제7항 내지 제10항 중 한 항의 스트리밍 용 포인트 클라우드 압축 방법이 기록되어 컴퓨터에 의거 수행되는 기록 매체.



KR1020220104796A 2022-08-22 2022-08-22 스트리밍용 포인트 클라우드 압축 시스템 및 방법 KR20240027182A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220104796A KR20240027182A (ko) 2022-08-22 2022-08-22 스트리밍용 포인트 클라우드 압축 시스템 및 방법
PCT/KR2022/019640 WO2024043406A1 (ko) 2022-08-22 2022-12-05 스트리밍용 포인트 클라우드 압축 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220104796A KR20240027182A (ko) 2022-08-22 2022-08-22 스트리밍용 포인트 클라우드 압축 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20240027182A true KR20240027182A (ko) 2024-03-04

Family

ID=90013316

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220104796A KR20240027182A (ko) 2022-08-22 2022-08-22 스트리밍용 포인트 클라우드 압축 시스템 및 방법

Country Status (2)

Country Link
KR (1) KR20240027182A (ko)
WO (1) WO2024043406A1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101820359B1 (ko) 2016-10-21 2018-01-19 서울과학기술대학교 산학협력단 360도 영상 전송 방법 및 장치

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2528669B (en) * 2014-07-25 2017-05-24 Toshiba Res Europe Ltd Image Analysis Method
CN109961516B (zh) * 2017-12-26 2023-09-26 宏达国际电子股份有限公司 表面获取方法、装置及非暂态电脑可读取记录媒体
CN109409437B (zh) * 2018-11-06 2021-06-01 安徽农业大学 一种点云分割方法、装置、计算机可读存储介质及终端
KR102277098B1 (ko) * 2020-02-25 2021-07-15 광운대학교 산학협력단 포인트 클라우드 및 메쉬를 이용한 체적형 홀로그램 생성 방법
KR102404867B1 (ko) * 2020-12-16 2022-06-07 한국전자기술연구원 3차원 거리정보를 이용한 랩어라운드뷰 영상제공장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101820359B1 (ko) 2016-10-21 2018-01-19 서울과학기술대학교 산학협력단 360도 영상 전송 방법 및 장치

Also Published As

Publication number Publication date
WO2024043406A1 (ko) 2024-02-29

Similar Documents

Publication Publication Date Title
CN105654548B (zh) 一种基于大规模无序图像的多起点增量式三维重建方法
KR101869605B1 (ko) 평면정보를 이용한 3차원 공간 모델링 및 데이터 경량화 방법
CN111323024B (zh) 定位方法及装置、设备、存储介质
KR102655999B1 (ko) 스테레오 카메라를 이용한 인스턴스 객체별 거리값 검출 장치 및 방법
CN112270710A (zh) 位姿确定方法、位姿确定装置、存储介质与电子设备
CN111192364A (zh) 一种低成本移动多机器人视觉同时定位和地图创建方法
CN112016612A (zh) 一种基于单目深度估计的多传感器融合slam方法
WO2023093085A1 (zh) 重建物体表面的方法、装置、计算机存储介质和计算机程序产品
CN115757857A (zh) 一种水下三维跨模态联合检索方法、存储介质和电子设备
CN116612468A (zh) 基于多模态融合与深度注意力机制的三维目标检测方法
CN113592015B (zh) 定位以及训练特征匹配网络的方法和装置
CN114638866A (zh) 一种基于局部特征学习的点云配准方法及系统
KR102449031B1 (ko) 딥러닝을 이용한 실내 위치 측위 방법
CN112489097A (zh) 基于混合2d卷积和伪3d卷积的立体匹配方法
KR20240027182A (ko) 스트리밍용 포인트 클라우드 압축 시스템 및 방법
CN117132952A (zh) 一种基于多摄像头的鸟瞰视角车辆感知系统
CN115965961A (zh) 局部到全局的多模态融合方法、系统、设备及存储介质
CN110135474A (zh) 一种基于深度学习的倾斜航空影像匹配方法和系统
Wang et al. Global Localization in Large-scale Point Clouds via Roll-pitch-yaw Invariant Place Recognition and Low-overlap Global Registration
CN113033430B (zh) 基于双线性的多模态信息处理的人工智能方法、系统及介质
CN111223136B (zh) 稀疏2d点集的深度特征提取方法及装置
CN115169448A (zh) 一种基于深度学习的三维描述生成和视觉定位的统一方法
Heydrich et al. A lightweight self-supervised training framework for monocular depth estimation
CN113160102A (zh) 三维场景重建的方法、装置、设备和存储介质
Li et al. Mobile 3D visual search using the Helmert transformation of stereo features