KR20220014868A - 가우시안 밝기 분포를 이용하여 3d 복셀로부터 2d 투사 영상을 생성하는 방법 및 장치 - Google Patents

가우시안 밝기 분포를 이용하여 3d 복셀로부터 2d 투사 영상을 생성하는 방법 및 장치 Download PDF

Info

Publication number
KR20220014868A
KR20220014868A KR1020210100114A KR20210100114A KR20220014868A KR 20220014868 A KR20220014868 A KR 20220014868A KR 1020210100114 A KR1020210100114 A KR 1020210100114A KR 20210100114 A KR20210100114 A KR 20210100114A KR 20220014868 A KR20220014868 A KR 20220014868A
Authority
KR
South Korea
Prior art keywords
image
voxel
pixel
voxels
gaussian
Prior art date
Application number
KR1020210100114A
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 한국전자통신연구원
Publication of KR20220014868A publication Critical patent/KR20220014868A/ko

Links

Images

Classifications

    • G06T3/06
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/0031Geometric image transformation in the plane of the image for topological mapping of a higher dimensional structure on a lower dimensional surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/003Reconstruction from projections, e.g. tomography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/08Volume rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration by the use of local operators

Abstract

가우시안 밝기 분포를 이용하여 3D 복셀로부터 2D 투사 영상을 생성하는 방법 및 장치가 제공된다. 실시예의 장치는 3D 공간 내에 존재하는 복셀들의 데이터를 포함하는 저장부 및 상기 데이터를 사용하여 2차원 영상을 생성하는 처리부를 포함한다. 처리부는 복셀을 2차원 영상으로 투사함에 있어서 복셀에 대한 가우시안 분포를 사용한다. 복셀을 2D 영상으로 투사함에 있어서, 투사가 적용되는 영역이 사전에 결정된 사각형 또는 삼각형의 영역 등과 같은 특정 영역으로 제한되지 않고, 복셀의 중점으로부터의 거리에 따른 가우시안 분포를 가지는 형태를 갖게 함으로써 홀-제거 등의 후처리 기법 없이 2D 영상 재건의 문제가 해결된다.

Description

가우시안 밝기 분포를 이용하여 3D 복셀로부터 2D 투사 영상을 생성하는 방법 및 장치{METHOD AND APPARATUS FOR GENERATING 2D PROJECTION IMAGE FROM 3D VOXEL USING GAUSSIAN BRIGHTNESS DISTRIBUTION}
본 발명은 영상 처리에 관한 것으로 보다 상세히는 가우시안 밝기 분포를 이용하여 3D 복셀로부터 2D 투사 영상을 생성하는 방법 및 장치가 개시된다.
3D 공간 내에 존재하는 복셀의 데이터를 이용하여 2D 영상(image)을 재건하는 문제는 증강 현실(Augmented Reality; AR)/가상 현실(Virtual Reality; VR) 어플리케이션이나 게임 화면 구성 등과 같은 매우 넓은 영역에 대하여 폭넓게 사용되고 있다.
2D 영상의 재건을 위해 3차원(Dimension; D) 공간의 복셀 데이터로부터 2D 투사 영상으로의 렌더링이 수행되는 경우, 3D 공간에서의 복셀 간격 및 2D 투사 영상의 픽셀 간격의 상호 간에 불일치가 발생한다.
이러한 불일치에 따라 2D 투사 영상 위에 존재하는 하나의 픽셀에 투사되는 복셀들의 개수가 일정하지 않고, 경우에 따라서는 2D 투사 영역의 특정 영역에는 투사되는 복셀이 존재하지 않음에 따라 빈 영역(hole)이 발생한다. 이러한 빈 영역에 대한 복원에 의해 큰 화질 저하가 발생한다.
종래에는 이러한 빈 영역들을 해소하기 위하여 투사가 완료된 2D 투사 영상의 빈 영역의 주변부의 영상을 사용하여 빈 영역을 복원하는 형태의 방법들이 사용되었다. 이러한 방법은 기본적으로 3D 공간 상의 원래의 위치의 값이 아닌 3D 공간 상의 다른 위치에 해당하는 값을 가져옴에 따라 부정확한 값을 가져올 수 밖에 없다는 한계를 지닌다.
또한, 불특정 다수의 복셀들이 특정 2D 투사 영상으로 투사되는 경우, 이러한 복셀들 중 어느 복셀의 값을 어떻게 반영해야 할지의 문제를 발생시킨다.
일 실시예는 3D 공간의 복셀의 데이터를 이용하여 2D 투사 영상을 생성함에 있어서 빠른 처리 속도를 유지하면서도 화질을 향상시키는 방법 및 장치를 제공할 수 있다.
일 측에 있어서, 3D 공간 내에 존재하는 복셀들의 데이터를 포함하는 저장부; 및 상기 데이터를 사용하여 2차원 영상을 생성하는 처리부를 포함하고, 상기 처리부는 복셀을 상기 2차원 영상으로 투사함에 있어서 상기 복셀에 대한 가우시안 분포를 사용하는 영상 처리 장치가 제공된다.
3D 공간의 복셀의 데이터를 이용하여 2D 투사 영상을 생성함에 있어서 빠른 처리 속도를 유지하면서도 화질을 향상시키는 방법 및 장치가 제공된다.
도 1은 일 실시예에 따른 영상 처리 장치의 구조를 나타낸다.
도 2는 일 실시예에 따른 가우시안 밝기 분포 기반의 2D 투사 방법이 적용되는 3D 복셀 영상 재생 시스템을 나타낸다.
도 3은 일 실시예에 따른 가우시안 밝기 분포를 이용한 2D 영상 렌더링 방법의 개념을 나타낸다.
도 4는 일 실시예에 따른 가우시안 밝기 분포를 이용한 2D 영상 렌더링 방법의 흐름도이다.
후술하는 예시적 실시예들에 대한 상세한 설명은, 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 실시예를 실시할 수 있기에 충분하도록 상세히 설명된다. 다양한 실시예들은 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 실시예의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 예시적 실시예들의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다.
도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다. 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
실시예에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 실시예에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않으며, 추가적인 구성이 예시적 실시예들의 실시 또는 예시적 실시예들의 기술적 사상의 범위에 포함될 수 있음을 의미한다. 어떤 구성요소(component)가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기의 2개의 구성요소들이 서로 간에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 상기의 2개의 구성요소들의 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
제1 및 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기의 구성요소들은 상기의 용어들에 의해 한정되어서는 안 된다. 상기의 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하여 지칭하기 위해서 사용된다. 예를 들어, 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
또한, 실시예들에 나타나는 구성요소들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성요소가 분리된 하드웨어나 하나의 소프트웨어 구성 단위로만 이루어짐을 의미하지 않는다. 즉, 각 구성요소는 설명의 편의상 각각의 구성요소로 나열된 것이다. 예를 들면, 구성요소들 중 적어도 두 개의 구성요소들이 하나의 구성요소로 합쳐질 수 있다. 또한, 하나의 구성요소가 복수의 구성요소들로 나뉠 수 있다. 이러한 각 구성요소의 통합된 실시예 및 분리된 실시예 또한 본질에서 벗어나지 않는 한 권리범위에 포함된다.
또한, 일부의 구성요소는 본질적인 기능을 수행하는 필수적인 구성요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성요소일 수 있다. 실시예들은 실시예의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 예를 들면, 단지 성능 향상을 위해 사용되는 구성요소와 같은, 선택적 구성요소가 제외된 구조 또한 권리 범위에 포함된다.
이하에서는, 기술분야에서 통상의 지식을 가진 자가 실시예들을 용이하게 실시할 수 있도록 하기 위하여, 첨부된 도면을 참조하여 실시예들을 상세히 설명하기로 한다. 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
아래의 실시예들에서는, 복셀을 2D 영상으로 투사함에 있어서, 투사가 적용되는 영역이 사전에 결정된 사각형 또는 삼각형의 영역 등과 같은 특정 영역으로 제한되지 않고, 복셀의 중점으로부터의 거리에 따른 가우시안 분포를 가지는 형태를 갖게 함으로써 후처리 과정으로서 홀-제거(hole-filling) 등의 기법을 도입하지 않고도 전술된 문제점들을 동시에 해결할 수 있는 방법이 설명된다.
도 1은 일 실시예에 따른 영상 처리 장치의 구조도이다.
영상 처리 장치(100)는 버스(190)를 통하여 서로 통신하는 처리부(110), 메모리(130), 사용자 인터페이스(User Interface; UI) 입력 디바이스(150), UI 출력 디바이스(160) 및 저장소(storage)(140)를 포함할 수 있다. 또한, 영상 처리 장치(100)는 네트워크(199)에 연결되는 통신부(120)를 더 포함할 수 있다.
처리부(110)는 중앙 처리 장치(Central Processing Unit; CPU), 메모리(130) 또는 저장소(140)에 저장된 프로세싱(processing) 명령어(instruction)들을 실행하는 반도체 장치일 수 있다. 처리부(110)는 적어도 하나의 하드웨어 프로세서일 수 있다.
처리부(110)는 영상 처리 장치(100)로 입력되거나, 영상 처리 장치(100)에서 출력되거나, 영상 처리 장치(100)의 내부에서 사용되는 신호, 데이터 또는 정보의 생성 및 처리를 수행할 수 있고, 신호, 데이터 또는 정보에 관련된 검사, 비교 및 판단 등을 수행할 수 있다. 말하자면, 실시예에서 데이터 또는 정보의 생성 및 처리와, 데이터 또는 정보에 관련된 검사, 비교 및 판단은 처리부(110)에 의해 수행될 수 있다.
처리부(110)의 적어도 일부는 프로그램 모듈들일 수 있으며, 외부의 장치 또는 시스템과 통신할 수 있다. 프로그램 모듈들은 운영 체제, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 영상 처리 장치(100)에 포함될 수 있다.
프로그램 모듈들은 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈 중 적어도 일부는 영상 처리 장치(100)와 통신 가능한 원격 기억 장치에 저장될 수도 있다.
프로그램 모듈들은 일 실시예에 따른 기능 또는 동작을 수행하거나, 일 실시예에 따른 추상 데이터 유형을 구현하는 루틴(routine), 서브루틴(subroutine), 프로그램, 오브젝트(object), 컴포넌트(component) 및 데이터 구조(data structure) 등을 포괄할 수 있지만, 이에 제한되지는 않는다.
프로그램 모듈들은 영상 처리 장치(100)의 적어도 하나의 프로세서(processor)에 의해 수행되는 명령어(instruction) 또는 코드(code)로 구성될 수 있다.
처리부(110)는 명령어 또는 코드를 실행할 수 있다.
저장부는 메모리(130) 및/또는 저장소(140)를 나타낼 수 있다. 메모리(130) 및 저장소(140)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들면, 메모리(130)는 롬(ROM)(131) 및 램(RAM)(132) 중 적어도 하나를 포함할 수 있다.
저장부는 영상 처리 장치(100)의 동작을 위해 사용되는 데이터 또는 정보를 저장할 수 있다. 실시예에서, 영상 처리 장치(100)가 갖는 데이터 또는 정보는 저장부 내에 저장될 수 있다.
예를 들면, 저장부는 영상의 데이터 및 비트스트림 등을 저장할 수 있다.
영상 처리 장치(100)는 컴퓨터에 의해 독출(read)될 수 있는 기록 매체를 포함하는 컴퓨터 시스템에서 구현될 수 있다.
기록 매체는 영상 처리 장치(100)가 동작하기 위해 요구되는 적어도 하나의 모듈을 저장할 수 있다. 메모리(130)는 적어도 하나의 모듈을 저장할 수 있고, 적어도 하나의 모듈이 처리부(110)에 의하여 실행되도록 구성될 수 있다.
영상 처리 장치(100)의 데이터 또는 정보의 통신과 관련된 기능은 통신부(120)를 통해 수행될 수 있다.
영상 처리 장치(100)는 부호화 장치 및/또는 복호화 장치의 일부일 수 있다.
후술될 영상 처리 장치(100)에서 수행되는 기능, 동작 및 단계는 영상에 대한 부호화 및/또는 복호화의 적어도 일부로 간주될 수 있다.
도 2는 일 실시예에 따른 가우시안 밝기 분포 기반의 2D 투사 방법이 적용되는 3D 복셀 영상 재생 시스템을 나타낸다.
3D 복셀 영상 재생 시스템은 3D 복셀로서 표현된 3D 물체 및/또는 3D 장면 등의 데이터를 사용하는 2D 영상의 투사를 수행함으로써 영상을 생성 및/ 재생할 수 있다.
3D 복셀의 데이터로부터 임의의 2D 영상을 생성하는 기능을 "임의 뷰 영상 렌더링"이라 칭할 수 있다. 여기에서, 임의의 2D 영상은 특정 시점(view point)에서의 2D 영상을 의미할 수 있다.
실시예는 임의 뷰 영상 렌더링을 수행함에 있어서 2D 영상에서의 각 픽셀이 3D 공간에서의 복셀로부터 얼마나 떨어져 있는지에 따라 적절한 가중치를 설정할 수 있다.
실시예는 이러한 가중치를 복셀의 컬러 값에 기여시킴으로써 3D 공간 상에 존재하는 복셀들의 데이터에 대해서만 계산을 수행할 수 있고, 추가적인 후처리 없이 2D 영상의 임의 뷰 영상 렌더링을 픽셀 빠짐 없이 수행할 수 있다.
도 3은 일 실시예에 따른 가우시안 밝기 분포를 이용한 2D 영상 렌더링 방법의 개념을 나타낸다.
도 4는 일 실시예에 따른 가우시안 밝기 분포를 이용한 2D 영상 렌더링 방법의 흐름도이다.
2D 영상 렌더링 방법은 2D 영상 투사 방법을 포함할 수 있다.
저장부는 3D 공간 내에 존재하는 복셀들의 데이터를 포함할 수 있다.
처리부(110)는 3D 공간 내에 존재하는 복셀들의 각 복셀에 대한 처리를 수행할 수 있다. 처리부(110)는 3D 공간 내에 존재하는 복셀들의 데이터를 사용하여 후술될 2D 영상을 생성할 수 있다.
처리부(110)는 3D 공간 내에 존재하는 복셀들을 후술될 방법에 따라 차례대로 처리할 수 있다.
실시예에서, 처리부(110)는 3D 공간 내에 존재하는 복셀을 2D 영상으로 투사함에 있어서, 복셀이 투사될 2D 영상 내의 영역을 사전에 결정된 사각형 또는 삼각형의 영역으로 제한하지 않을 수 있다.
처리부(110)는 3D 공간 내에 존재하는 복셀을 2D 영상으로 투사함에 있어서, 복셀의 중점으로부터의 거리에 따른 가우시안 분포를 가지는 형태로 복셀을 2D 영상으로 투사할 수 있다. 이러한 가우시안 분포를 가지는 형태에 의해 복셀이 투사되는 2D 영상의 영역이 제한되지 않을 수 있다.
또한, 처리부(110)는 이러한 투사에 대한 처리에 있어서 복셀 우선의 방문 순서를 사용할 수 있다.
처리부(110)는 복셀 우선의 방문 순서를 통해 한 번의 반복(iteration) 구간 내에서 (모든) 투사들을 처리함으로써 반영될 복셀이 존재하지 않는 홀(hole)이나, 다수의 복셀들이 한꺼번에 투사되는 2D 영상 내의 픽셀의 위치에 대한 처리를 한 번에 해결할 수 있다.
실시예의 2D 영상 투사 방법을 사용하면 복셀 우선의 단일 루프 반복(single loop iteration) 만으로도 홀의 발생을 없앨 수 있고, 원본 공간 값에 가장 가깝도록 2D 영상의 각 픽셀의 값을 획득할 수 있다. 또한, 실시예의 2D 영상 투사 방법은 추가적인 홀 제거(hole filling)와 같은 후처리를 요구하지 않을 수 있다.
따라서, 실시예의 2D 영상 투사 방법을 통해 원본 공간 값에 가까운 높은 영상 품질을 획득하면서도 매우 높은 실행 속도를 동시에 유지할 수 있다.
단계(410)에서, 처리부(110)는 복셀의 중심 위치에 해당하는 사각형 영역을 생성의 대상인 2D 영상에 투사(projection)시킴으로써 복셀에 대한 2D 영상에서의 사각형의 영역을 도출할 수 있다. 말하자면, 사각형의 영역이 2D 영상의 영역에 투사될 수 있다.
여기에서, 2D 영상의 사각형의 영역은 도 3에서 도시된 투사된 영상의 내부에 위치한 사각형의 영역들 중 하나에 해당할 수 있다.
단계(420)에서, 처리부(110)는 2D 영상에서의 사각형의 영역의 내부에 있는 픽셀들에 대하여 순차적으로, 상기의 픽셀들의 각 픽셀에 대하여 해당 2D 영상의 카메라의 내부 파라미터들(intrinsic parameters) 및/또는 외부 파라미터들(extrinsic parameters)을 이용하여 각 픽셀에 해당하는 3D 공간에서의 좌표들을 다시 도출할 수 있다.
도 3에서 도시된 것과 같이, (x, y)는 2D 영상에서의 픽셀의 좌표들을 나타낼 수 있다. 이하에서, "픽셀 (x, y)"는 2D 영상에서의 좌표들이 (x, y)인 픽셀을 나타낼 수 있다.
또한, 도 3에서 도시된 것과 같이, P w = (x w , y w , z w ) T 는 3D 공간으로 다시 역투사(또는, 재투사(reprojection))된 픽셀 (x, y)의 3D 월드 공간 좌표들일 수 있다.
각 픽셀의 좌표들은 비교의 대상인 복셀과 직교하는 평면으로 투사될 수 있다.
도 3에서,
Figure pat00001
는 복셀들 A, B 및 C의 각각에 대하여 상술된 것과 같이 직교 투사된 픽셀 (x, y)의 3D 공간 좌표들을 나타낼 수 있다.
말하자면, 처리부(110)는 특정 복셀이 2D 영상으로 투사될 때, 복셀이 투사된 2D 영상 상의 픽셀 (x, y)의 위치를 다시 3D 공간 내의 상기의 특정 복셀의 중점에 직교하는 평면으로 재투사할 수 있다.
처리부(110)는 2D 영상 내에서 특정 복셀이 투사된 (x, y)의 위치를 3D 공간 내의 상기의 특정 복셀의 중점에 직교하는 평면으로 재투사함으로써 투사된 픽셀을 도출할 수 있다.
단계(430)에서, 처리부(110)는 투사된 픽셀들에 대하여, 투사된 픽셀들의 각 픽셀에 대한 평균 절대 거리들을 도출할 수 있다.
처리부(110)는 투사된 픽셀 및 복셀의 중심점 간의 평균 절대 거리를 도출할 수 있다.
예를 들면, 도 3에서,
Figure pat00002
는 투사된 픽셀을 나타낼 수 있다.
Figure pat00003
는 복셀 A의 중심점을 나타낼 수 있다.
이 때, 처리부(110)는 x 축에 대한 평균 절대 거리 d x y 축에 대한 평균 절대 거리 d y 를 별도로 도출할 수 있다. x 축에 대한 평균 절대 거리 d x y 축에 대한 평균 절대 거리 d y 는 아래의 수학식 1에 따라 도출될 수 있다.
Figure pat00004
단계(440)에서, 처리부(110)는 수학식 1에 따라 도출된 평균 절대 거리를 이용하여 아래의 수학식 2와 같이 거리에 따라 감소되는 가우시안 가중치를 획득할 수 있다.
획득된 가우시안 가중치를 통해, 2D 영상의 픽셀에서는 픽셀 및 복셀의 중점 간의 거리에 따라 가우시안 가중치만큼 감소하는 형태로 복셀의 값이 반영될 수 있다.
처리부(110)는 아래의 수학식 2와 같이, x 축에 대한 가우시안 가중치 w x y 축에 대한 가우시안 가중치 w y 를 별도로 도출할 수 있다.
Figure pat00005
w x 및 w y 는 수평 방향의 가우시안 가중치들일 수 있다.
3D 공간에서의 복셀들은 투사될 2D 영상에 대해 직교하는 방향(말하자면, z-방향)으로도 다른 공간들에 위치할 수 있다. 이러한 경우에 따라, 처리부(110)는 복셀들을 2D 영상으로 투사시키기 위해 복셀들 중 z-방향에서 더 앞쪽에 위치하는 복셀이 2D 영상에 표시될 수 있도록 복셀들 간의 Z 버퍼 비교 작업을 수행할 수 있다. Z 버퍼 비교 작업은 픽셀 별로 거리를 비교함을 의미할 수 있다.
Z 축 방향으로 거리가 떨어진 복셀들 간의 복셀 값 보간(interpolation)을 위해, 처리부(110)는 카메라 좌표계에서의 거리에 대한 비교를 통해 가우시안 밝기 분포에 따른 가중치를 적용할 수 있다. 가중치를 적용하기 위한 과정은 아래에서 설명된다.
단계(450)에서, 처리부(110)는 전술된 것과 같이 도출된 각 픽셀의 3D 월드 공간 좌표 P w 에 대하여 카메라의 외부 파라미터들을 이용하여 카메라 좌표계의 좌표들 P c 를 획득할 수 있다.
카메라 좌표계의 좌표들 P c 는 아래의 수학식 3에 따라 도출될 수 있다.
여기에서, P w = (x w , y w , z w ) T 일 수 있다. P c = (x c , y c , z c ) T 일 수 있다.
Figure pat00006
수학식 3에서, R|t는 카메라의 외부 파라미터들에 해당하는 행렬일 수 있다.
Z 버퍼는 투사되는 2D 영상의 각 픽셀 별로 관리될 수 있다. B z ( x , y)는 픽셀의 좌표들 (x, y)에서의 Z 버퍼의 값일 수 있다.
단계들(420 및 450)을 통해, 처리부(110)는 특정 복셀이 2D 영상으로 투사될 때, 복셀이 투사된 2D 영상 상의 (x, y) 위치를 2D 영상에 대한 3D 카메라 좌표계로 재투사할 수 있다.
단계(455)에서, 처리부(110)는 처리되는 픽셀에 대하여 현재 Z 버퍼 내에 보존되어 있는 거리 값 및 단계(450)에서 계산된 좌표들 P c z 위치(말하자면, z c ) 간의 평균 절대 거리 d z (x, y)를 도출할 수 있다. 여기에서, 평균 절대 거리 d z (x, y)는 Z-방향의 평균 절대 거리일 수 있다.
평균 절대 거리 d z (x, y)는 아래의 수학식 4에 따라 도출될 수 있다.
Figure pat00007
단계(460)에서, 처리부는 계산된 Z-방향의 평균 절대 거리 d z (x, y)를 이용하여 z-방향에 해당하는 가우시안 가중치를 도출할 수 있다. 가우시안 가중치는 아래의 수학식 5에 따라 도출될 수 있다.
Figure pat00008
전술된 단계들에 따라, 수평 방향의 가우시안 가중치들 w x 및 w y Z-방향의 가우시안 가중치 w z 가 도출될 수 있다.
수학식 4 및 수학식 5 에 따라, 처리부(110)는 카메라의 중심에서의 거리 및 Z 버퍼의 기존 값 간의 거리에 따라 가우시안 가중치만큼 감소하는 형태로 복셀의 값을 투사된 2D 영상에 반영시킬 수 있다.
여기에서, 카메라의 중심에서의 거리는 수학식 4의 z c 를 나타낼 수 있다. z-버퍼의 기존 값은 2D 영상의 현재의 픽셀 위치 (x, y)에 대하여 이전에 처리된 다른 복셀로부터 생성된 동일한 카메라의 중심에서의 거리 값일 수 있다. 가우시안 가중치만큼 감소한 복셀의 값은 2D 영상의 현재의 픽셀 위치 (x, y)에 반영될 수 있다.
단계(465)에서, 처리부(110)는 수평 방향의 가우시안 가중치들 w x 및 w y z-방향의 가우시안 가중치 w z 을 사용하여 2D 영상의 각 픽셀 별로 픽셀에 대한 누적 픽셀 값 및 누적 가중치 값을 갱신할 수 있다.
처리부(110)는 수평 방향의 가우시안 가중치들 w x 및 w y z-방향의 가우시안 가중치 w z 을 사용하여 픽셀 (x, y)에 대한 누적 픽셀 값 a c (x, y) 및 누적 가중치 값 a w (x, y)을 갱신할 수 있다.
누적 픽셀 값의 갱신은 아래의 수학식 6을 사용하여 수행될 수 있다. 누적 가중치 값의 갱신은 아래의 수학식 7을 사용하여 수행될 수 있다.
Figure pat00009
Figure pat00010
각 픽셀 별로 방문되는 횟수가 서로 상이하기 때문에, 픽셀에 대한 누적 가중치 값은 픽셀 별로 별도로 계산될 수 있다.
실시예에서는, 1차적으로 3D 복셀들이 차례대로 방문될 수 있고, 2차적으로 3D 복셀 별로 그 복셀이 투사되는 2D 영상의 영역의 내부의 픽셀들을 차례대로 방문하여 계산이 수행될 수 있다.
여기에서, 방문은 루프 등을 사용하는 다수의 대상들에 대한 순차적인 처리에 있어서 계산의 대상이 된다는 것을 의미할 수 있다.
따라서, 생성되는 2D 영상의 각 픽셀이 얼마나 방문될 지는 사전에 알려지지 못할 수 있다. 이러한 특징에 대한 보상을 위해, 수학식 6 및 수학식 7을 참조하여 전술된 것과 같이 누적 픽셀 값 및 누적 가중치 값이 별도로 계산될 수 있다.
또한, 수학식 6 및 수학식 7에서, n은 방문 차수를 나타내는 인덱스일 수 있다. n의 값은 각 픽셀에 따라 서로 다르게 카운트될 수 있다.
수학식 6 및 수학식 7에서 사용된 n은 실제로는 저장 및 관리되지 않는 값일 수 있다. 수학식 6 및 수학식 7에서, n은 단지 이전 값들 및 이후 값들 간의 관계를 표현하기 위해 사용된 것일 수 있다.
단계(470)에서, 처리부(110)는 최종적으로 모든 복셀들에 대해 누적 픽셀 값들 및 누적 가중치 값들의 계산이 완료되었으면, 픽셀의 누적 픽셀 값에 대한 정규화(normalization)를 수행함으로써 2D 영상의 픽셀 (x, y)의 최종의 픽셀 값 I(x, y)을 생성할 수 있다. 최종의 픽셀 값 I(x, y)은 아래의 수학식 8에 따라 도출될 수 있다.
Figure pat00011
전술된 것과 같이 수학식 8을 통해 누적 픽셀 값 및 누적 가중치 값을 이용하여 최종적으로 모든 복셀들의 가중치들이 반영된 2D 투사 영상이 획득될 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다.
컴퓨터 판독 가능한 기록 매체는 본 발명에 따른 실시예들에서 사용되는 정보를 포함할 수 있다. 예를 들면, 컴퓨터 판독 가능한 기록 매체는 비트스트림을 포함할 수 있고, 비트스트림은 본 발명에 따른 실시예들에서 설명된 정보를 포함할 수 있다.
컴퓨터 판독 가능한 기록 매체는 비-일시적 컴퓨터 판독 가능한 매체(non-transitory computer-readable medium)를 포함할 수 있다.
상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
100: 영상 처리 장치
110: 처리부
120: 통신부

Claims (1)

  1. 3차원 공간 내에 존재하는 복셀들의 데이터를 포함하는 저장부; 및
    상기 데이터를 사용하여 2차원 영상을 생성하는 처리부
    를 포함하고,
    상기 처리부는 복셀을 상기 2차원 영상으로 투사함에 있어서 상기 복셀에 대한 가우시안 분포를 사용하는 영상 처리 장치.
KR1020210100114A 2020-07-29 2021-07-29 가우시안 밝기 분포를 이용하여 3d 복셀로부터 2d 투사 영상을 생성하는 방법 및 장치 KR20220014868A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200094618 2020-07-29
KR20200094618 2020-07-29

Publications (1)

Publication Number Publication Date
KR20220014868A true KR20220014868A (ko) 2022-02-07

Family

ID=80253403

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210100114A KR20220014868A (ko) 2020-07-29 2021-07-29 가우시안 밝기 분포를 이용하여 3d 복셀로부터 2d 투사 영상을 생성하는 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20220014868A (ko)

Similar Documents

Publication Publication Date Title
CN106547092B (zh) 用于补偿头戴式显示器的移动的方法和设备
US9569885B2 (en) Technique for pre-computing ambient obscurance
US9251623B2 (en) Glancing angle exclusion
JP2018537755A (ja) 中心窩ジオメトリテッセレーション
KR102357355B1 (ko) 가상 오브젝트 생성 방법 및 장치
US11704883B2 (en) Methods and systems for reprojection in augmented-reality displays
JP7266021B2 (ja) 可変レートシェーディング
US20140002458A1 (en) Efficient rendering of volumetric elements
JP6543508B2 (ja) 映像処理方法及び装置
KR102137263B1 (ko) 영상 처리 장치 및 방법
US20090295798A1 (en) System, method, and computer program product for a tessellation engine using a geometry shader
US20170032580A1 (en) Edge preserving color smoothing of 3d models
KR20210002753A (ko) 그래픽 파이프라인의 메모리 사용 감소를 위한 컴파일러 지원 기술
KR102399686B1 (ko) 3d 렌더링 방법 및 장치
KR20170081335A (ko) 3d 렌더링 방법 및 장치
US20130207967A1 (en) Image processing apparatus and method
US11032534B1 (en) Planar deviation based image reprojection
US11176678B2 (en) Method and apparatus for applying dynamic effect to image
KR101208767B1 (ko) 곡면 투사를 이용한 입체 영상 생성 방법, 장치 및 시스템, 이를 위한 기록 매체
CN113592994B (zh) 用于纹理贴图的方法、装置和存储介质
EP2827302B1 (en) Image processing apparatus and method
KR20220014868A (ko) 가우시안 밝기 분포를 이용하여 3d 복셀로부터 2d 투사 영상을 생성하는 방법 및 장치
CN107103209B (zh) 3d数字内容交互和控制
KR20230149093A (ko) 영상 처리 방법, 영상 처리를 위한 트레이닝 방법, 및 영상 처리 장치
KR101467735B1 (ko) 볼륨데이터를 위한 4차원 실시간 렌더링 방법 및 장치