KR101601687B1 - Image processing apparatus and method - Google Patents

Image processing apparatus and method Download PDF

Info

Publication number
KR101601687B1
KR101601687B1 KR1020090089809A KR20090089809A KR101601687B1 KR 101601687 B1 KR101601687 B1 KR 101601687B1 KR 1020090089809 A KR1020090089809 A KR 1020090089809A KR 20090089809 A KR20090089809 A KR 20090089809A KR 101601687 B1 KR101601687 B1 KR 101601687B1
Authority
KR
South Korea
Prior art keywords
model
vpl
mesh
sampling
image processing
Prior art date
Application number
KR1020090089809A
Other languages
Korean (ko)
Other versions
KR20110032366A (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 KR1020090089809A priority Critical patent/KR101601687B1/en
Publication of KR20110032366A publication Critical patent/KR20110032366A/en
Application granted granted Critical
Publication of KR101601687B1 publication Critical patent/KR101601687B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/55Radiosity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/60Shadow generation

Abstract

영상 처리 장치가 제공된다. 상기 영상 처리 장치는, 3D 모델의 오브젝트의 형상 정보를 나타내는 메쉬를, 상기 3D 모델을 렌더링하고자 하는 제1 시점의 평면에 프로젝션 하여, 프로젝션 된 면적을 계산하는 제1 계산부 및 상기 프로젝션 된 면적에 기초하여 상기 메쉬에 대한 샘플링 포인트를, 적응적으로 할당하는 샘플링부를 포함한다.An image processing apparatus is provided. The image processing apparatus includes a first calculation section for calculating a projected area by projecting a mesh representing shape information of an object of a 3D model onto a plane of a first viewpoint at which the 3D model is to be rendered, And a sampling unit for adaptively allocating sampling points for the mesh based on the sampling points.

전역 조명, 렌더링, 포인트 샘플링, 섀도우 맵, rendering, radiosity, shadow map Global lighting, rendering, point sampling, shadow map, rendering, radiosity, shadow map

Description

영상 처리 장치 및 방법{IMAGE PROCESSING APPARATUS AND METHOD}[0001] IMAGE PROCESSING APPARATUS AND METHOD [0002]

3D 모델로 구성된 오브젝트에 대한 전역 조명(Global illumination) 렌더링에 연관되며, 보다 특정하게는 Radiosity 기법에서의 섀도우 맵 작성 등에 이용되는 오브젝트 샘플링에 연관된다.Is associated with global illumination rendering of an object composed of a 3D model, and more particularly relates to object sampling used for creating a shadow map in the Radiosity technique.

하드웨어 및 소프트웨어의 발전에 따라, 3-Dimensional (3D) 게임, 가상현실(virtual world) 애니메이션, 영화 등 다양한 분야에서, 3D 모델에 대한 실시간 렌더링(real-time rendering)에 대한 관심이 높아지고 있다.
통상적으로 렌더링 품질을 높이기 위해서는, 연산양이 커지는데, 영상 처리를 위해 허용되는 하드웨어의 사양을 높이는 데에는 한계가 있기 때문에, 동일한 품질을 유지하면서도 연산양을 줄이는 연산 효율성의 개선의 문제는 영상 처리 분야의 큰 목표가 되었다.
3D 모델을 렌더링하는 데에 있어서, 전역 조명(Global illumination)은 직접 조명(direct illumination)에 의한 칼라 값 형성과 간접 조명(indirect illumination)에 의한 칼라 값을 함께 고려하는 것이다.
여기서, 간접 조명에는, 이를테면 오브젝트 표면에서 빛의 반사(reflection), 굴절(refraction), 투과(transmission), 빛의 난반사(scattered reflection), 등이 모델링될 수 있다.
이를테면, Radiosity 기법에 의한 렌더링에서는, 이러한 간접조명을 모델링하기 위해 3D 모델 내의 특정 위치에 VPL(Virtual Point Light)를 위치시키고, VPL의 시점(point of view)으로부터의 오브젝트 형상에 대한 섀도우 맵(Shadow map)을 작성하는 과정이 요구된다.
이러한 VPL 시점에서 오브젝트 형상에 대한 섀도우 맵 작성을 위해, 또는 다른 렌더링 방법에서 포인트 샘플링을 하는 경우에, 카메라 뷰의 위치나 방향을 고려하지 않고 상기 오브젝트에 대한 포인트 샘플링이 이루어진다면, 연산의 효율성이 낮아지게 된다.
With the development of hardware and software, there is increasing interest in real-time rendering of 3D models in various fields such as 3-dimensional (3D) games, virtual world animation, and movies.
Generally, in order to increase the rendering quality, the amount of computation increases. However, since there is a limit to increase the specification of the hardware allowed for the image processing, the problem of improvement in the computational efficiency, which reduces the amount of computation while maintaining the same quality, Which became a big target of.
In rendering a 3D model, global illumination is to consider both color values by direct illumination and color values by indirect illumination.
Here, indirect illumination can be modeled, such as light reflections, refractions, transmissions, scattered reflections, etc., at the object surface.
For example, in the rendering based on the Radiosity technique, a VPL (Virtual Point Light) is positioned at a specific position in the 3D model to model the indirect illumination, and a shadow map (Shadow) for the object shape from the point of view of the VPL map) is required.
If point sampling is performed for the object without considering the position or orientation of the camera view, such as when creating a shadow map for an object shape at this VPL point, or when performing point sampling in another rendering method, .

3D 모델을 렌더링 하고자 하는 카메라 뷰의 위치와 방향을 고려하지 않고 오브젝트를 샘플링 하여 렌더링 과정에 활용하는 경우, 렌더링 품질에 대비한 연산양의 낭비가 있으므로, 이러한 연산의 낭비를 크게 감소시켜, 품질을 유지하면서 렌더링 처리 속도를 향상시키는 영상 처리 장치 및 방법이 제공된다.
카메라 뷰에서 가까운 부분, 중요한 방향의 오브젝트에 대한 연산을 위해 연산양을 집중하여, 앨리어싱을 최소화하는 영상 처리 장치 및 방법이 제공된다.
When the object is sampled and used in the rendering process without considering the position and direction of the camera view to which the 3D model is to be rendered, there is a waste of the calculation amount in comparison with the rendering quality. And an image processing apparatus and method for improving rendering processing speed are provided.
There is provided an image processing apparatus and method for minimizing aliasing by concentrating the amount of computation for an object in a part close to or in the direction of a camera view.

본 발명의 일측에 따르면, 3D 모델의 오브젝트의 형상 정보를 나타내는 메쉬를, 상기 3D 모델을 렌더링하고자 하는 제1 시점의 평면에 프로젝션 하여, 프로젝션 된 면적을 계산하는 제1 계산부 및 상기 프로젝션 된 면적에 기초하여 상기 메쉬에 대한 샘플링 포인트를, 적응적으로 할당하는 샘플링부를 포함하는 영상 처리 장치가 제공된다.
여기서, 상기 샘플링부는, 상기 프로젝션 된 면적에 비례한 개수의 샘플링 포인트를 상기 메쉬에 할당할 수 있다.
한편, 상기 제1 계산부는, 상기 메쉬 정보를 임시로 저장하는 메모리, 및 상기 메모리 상에 저장된 메쉬를, 상기 3D 모델을 렌더링 하고자 하는 제1 시점의 평면에 프로젝션 한 면적을 계산하는 계산 모듈을 포함할 수 있다.
본 발명의 일 실시예에 따르면, 상기 영상 처리 장치는, 상기 메쉬에 적응적으로 할당된 샘플링 포인트를, 이용하여, 상기 3D 모델 내에 배치된 VPL로부터의 섀도우 맵을 작성하는 제2 계산부를 더 포함한다.
또한, 상기 영상 처리 장치는 상기 섀도우 맵을 이용하여, 래이디오시티(Radiosity) 기법에 의해, 상기 3D 모델을 상기 제1 시점에서 렌더링 하는, 렌더링부를 더 포함할 수 있다.
본 발명의 다른 일측에 따르면, 3D 모델을 구성하는 복수 개의 형상 정보 메쉬 중, 상기 3D 모델을 렌더링 하고자 하는 제1 시점 영상의 각 픽셀에 대응하는 상기 3D 모델의 적어도 하나의 메쉬를 탐색하는 샘플링부, 및 상기 적어도 하나의 메쉬의 각각에 대하여, 상기 3D 모델 내에 배치된 적어도 하나의 VPL 각각에 대한 섀도우 맵을 계산하는 섀도우 맵 계산부를 포함하는 영상 처리 장치가 제공된다.
여기서, 상기 샘플링부는, 상기 제1 시점에서 상기 3D 모델에 대한 깊이 영상을 작성하는 깊이 영상 작성부, 및 상기 깊이 영상을 이용하여, 상기 제1 시점 영상의 각 픽셀에 대응하는 상기 3D 모델의 적어도 하나의 메쉬를 탐색하는 탐색부를 포함할 수 있다.
한편, 상기 영상 처리 장치는 상기 섀도우 맵을 이용하여, 래이디오시티 기법에 의해, 상기 3D 모델을 상기 제1 시점에서 렌더링 하는, 렌더링부를 더 포함할 수 있다.
본 발명의 또 다른 일측에 따르면, 3D 모델의 렌더링을 위해, 상기 3D 모델 내의 제1 포인트에 VPL을 배치하는 VPL 배치부, 및 상기 제1 포인트 주변 영역의 오브젝트 칼라 값을 고려하여 상기 VPL의 라이트 칼라를 결정하는 VPL 칼라 결정부를 포함하는, 영상 처리 장치가 제공된다.
여기서 상기 VPL 칼라 결정부는, 상기 제1 포인트 주변에 제1 직경을 갖는 원을 설정하고, 상기 원 내의 오브젝트 칼라 값의 평균을 구하여, 상기 VPL의 라이트 칼라 값으로 결정한다.
본 발명의 또 다른 일측에 따르면, 3D 모델의 오브젝트의 형상 정보를 나타내는 메쉬를, 상기 3D 모델을 렌더링하고자 하는 제1 시점의 평면에 프로젝션 하여, 프로젝션 된 면적을 계산하는 단계, 및 상기 프로젝션 된 면적에 기초하여 상기 메쉬에 대한 샘플링 포인트를, 적응적으로 할당하는 샘플링 단계를 포함하는 영상 처리 방법이 제공된다.
본 발명의 또 다른 일측에 따르면, 3D 모델을 구성하는 복수 개의 형상 정보 메쉬 중, 상기 3D 모델을 렌더링 하고자 하는 제1 시점 영상의 각 픽셀에 대응하는 상기 3D 모델의 적어도 하나의 메쉬를 탐색하는 샘플링 단계, 및 상기 적어도 하나의 메쉬의 각각에 대하여, 상기 3D 모델 내에 배치된 적어도 하나의 VPL 각각에 대한 섀도우 맵을 계산하는 섀도우 맵 계산 단계를 포함하는 영상 처리 방법이 제공된다.
본 발명의 또 다른 일측에 따르면, 3D 모델의 렌더링을 위해, 상기 3D 모델 내의 제1 포인트에 VPL을 배치하는 VPL 배치 단계, 및 상기 제1 포인트 주변 영역의 오브젝트 칼라 값을 고려하여 상기 VPL의 라이트 칼라를 결정하는 VPL 칼라 결정 단계를 포함하는, 영상 처리 방법이 제공된다.
According to an aspect of the present invention, there is provided a method of calculating a projected area, comprising: a first calculation unit for projecting a mesh representing shape information of an object of a 3D model onto a plane of a first viewpoint at which the 3D model is to be rendered, And a sampling unit for adaptively assigning sampling points for the mesh based on the sampling points of the mesh.
Here, the sampling unit may allocate a sampling point proportional to the projected area to the mesh.
The first calculation unit may include a memory for temporarily storing the mesh information and a calculation module for calculating an area of the mesh stored on the memory on the plane of the first viewpoint at which the 3D model is to be rendered can do.
According to an embodiment of the present invention, the image processing apparatus further includes a second calculation section for creating a shadow map from the VPL disposed in the 3D model using the sampling point adaptively allocated to the mesh do.
The image processing apparatus may further include a rendering unit rendering the 3D model at the first viewpoint by a radiosity technique using the shadow map.
According to another aspect of the present invention, there is provided a 3D mesh modeling apparatus comprising: a sampling unit for searching at least one mesh of the 3D model corresponding to each pixel of a first viewpoint image to be rendered of the 3D model, And a shadow map computation unit for computing, for each of the at least one mesh, a shadow map for each of at least one VPL placed in the 3D model.
Here, the sampling unit may include: a depth image creating unit that creates a depth image of the 3D model at the first viewpoint; and a depth image creating unit that creates a depth image of the 3D model corresponding to each pixel of the first viewpoint image, And a search unit for searching for one mesh.
The image processing apparatus may further include a rendering unit that renders the 3D model at the first viewpoint by using a shadow map, using the shadow map.
According to another aspect of the present invention, there is provided a method for rendering a 3D model, the method comprising: a VPL arrangement unit for arranging a VPL at a first point in the 3D model, And a VPL color determining unit for determining a color.
The VPL color determining unit sets a circle having a first diameter around the first point and determines an average of object color values in the circle as a light color value of the VPL.
According to another aspect of the present invention, there is provided a method for projecting a 3D model, comprising the steps of: projecting a mesh representing shape information of an object of a 3D model onto a plane of a first viewpoint at which the 3D model is to be rendered, And a sampling step of adaptively allocating a sampling point for the mesh based on the sampling point of the mesh.
According to still another aspect of the present invention, there is provided a method for generating a 3D model, the method comprising the steps of: sampling at least one mesh of the 3D model corresponding to each pixel of a first viewpoint image to be rendered, And for each of the at least one mesh, a shadow map calculation step for calculating a shadow map for each of the at least one VPL placed in the 3D model.
According to another aspect of the present invention, there is provided a method for rendering a 3D model, the method comprising: a VPL arrangement step of arranging a VPL at a first point in the 3D model; And a VPL color determination step of determining a color.

카메라 뷰에서 중요한 부분에 연산양이 집중되므로, 종래의 영상 처리 방법에 비해 렌더링 품질은 유지하면서 렌더링 처리 속도가 크게 향상된다.
따라서 실시간 렌더링에 유리한 측면이 있다.
또한, 동일한 연산양을 가정하는 경우, 카메라 뷰에서 중요한 부분, 이를테면, 영상이 렌더링되는 경우 에러가 발견되기 쉬운 부분에서 앨리어싱을 감소시킬 수 있으므로, 렌더링 품질이 개선된다..
Since the amount of computation is concentrated on an important part in the camera view, the rendering processing speed is greatly improved while maintaining the rendering quality as compared with the conventional image processing method.
Therefore, there is an advantageous aspect in real-time rendering.
Also, assuming the same amount of computation, aliasing can be reduced in an important part of the camera view, such as where the error is likely to be found when the image is rendered, thereby improving rendering quality.

이하에서, 본 발명의 일부 실시예를, 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 영상 처리 장치(100)를 도시한다.
영상 처리 장치(100)는 렌더링 연산의 효율을 높이기 위해, 3D 모델을 렌더링 하고자 하는 카메라 뷰의 위치 및/또는 방향을 고려하여, 적응적으로(adaptively) 오브젝트를 샘플링 한다.
제1 계산부(110)는 3D 모델의 오브젝트의 각 메쉬를 메모리(111)에 임시 저장한다.
그리고, 계산 모듈(112)는 메모리(111)에 저장된 복수 개의 메쉬들 각각에 대하여, 상기 3D 모델을 렌더링 하고자 하는 카메라 뷰에 위치한 가상의 평면으로 프로젝션을 수행한다.
이렇게 프로젝션 되는 경우, 카메라 뷰의 시야각의 중심에 얼마나 가까운 방향에 존재하는 메쉬인지, 그리고 카메라 뷰로부터 얼마나 가까운 거리에 있는 메쉬인지에 따라, 메쉬가 프로젝션된 면적에 차이가 날 것이다.
기본 메쉬 크기는 대부분 동일하기 때문에, 카메라 뷰의 정면에 있을수록 메쉬가 프로젝션 된 면적이 클 것이고, 반대로 카메라 시야각에서 멀어지는 방향에 있을수록 메쉬가 프로젝션 된 면적이 작을 것이다.
또한, 카메라 뷰로부터 가까운 메쉬이면 프로젝션 된 면적이 클 것이고, 반대로 멀리 있을수록 프로젝션된 면적이 작을 것이다.
계산 모듈(112)은 이렇게 메쉬들이 프로젝션된 면적을 계산하며, 이러한 메쉬들의 면적은 샘플링부(120)에 제공된다.
그리고, 샘플링부(120)는 각각의 메쉬들이 프로젝션 된 면적을 비교하여, 카메라 뷰에서 보다 가깝고, 시야각의 중심에 보다 가까운 방향에 있는, 메쉬들, 즉 렌더링에 중요한 메쉬들을 찾는다.
그리고, 이러한 메쉬들에 대해서는, 높은 밀도로 샘플링을 수행하며, 이를테면 메쉬 하나에 두 개의 샘플링 포인트를 할당할 수도 있다.
또한, 샘플링부(120)는 카메라 뷰에서 멀리 있을수록 샘플링 밀도를 낮추어, 이를테면, 메쉬 두 개 내지 세 개에 하나의 샘플링 포인트를 할당할 수도 있다.
한편, 샘플링부(120)는 카메라 뷰의 시야각 내에 있는 메쉬들에 대해서는 샘플링 밀도를 상대적으로 높여서, 많은 개수의 샘플링 포인트를 할당하고, 반대로 시야각 바깥에 있는 메쉬들에 대해서는, 샘플링 밀도를 낮추어서, 이를테면, 메쉬 네 개 내지 다섯 개에 하나의 샘플링 포인트를 할당할 수도 있다.
그러면, 제2 계산부(130)는 도시된 샘플링 포인트들 각각에 대해 섀도우 맵을 작성한다. 섀도우 맵 작성 시에 고려되어야 할 샘플링 포인트 전체의 수가 줄어들어, 연산양을 줄이는 효과를 기대할 수 있다.
영상 처리 장치(100)의 보다 상세한 동작은 도 4 내지 도 6을 참조하여 보다 상세히 후술한다.
도 2는 본 발명의 일 실시예에 따른 영상 처리 장치(200)를 도시한다.
영상 처리 장치(200)는 섀도우 맵 작성에 있어서, 카메라 뷰에 중요한 포인트들을 지정하여, 상기 지정된 포인트들에 대해서 VPL의 섀도우 맵을 작성함으로써, 앨리어싱을 줄이고, 연산 효율을 높인다.
샘플링부(210)는 카메라 뷰에서 렌더링 하고자 하는 영상의 각 픽셀을 참고하여, 3D 모델의 오브젝트 중, 섀도우 맵이 계산되어야 할 포인트들을 샘플링 한다.
먼저, 카메라 뷰 깊이 영상 작성부(221)는, 카메라 뷰에서 바라본 깊이 영상을 생성한다.
그러면, 메쉬 탐색부(222)가 상기 깊이 영상을 이용하여, 렌더링 하고자 하는 영상의 각 픽셀에 대응하는 메쉬들을 탐색한다.
상기 메쉬 탐색부(222)의 동작에 의해, 효율적인 섀도우 맵 작성을 위해 고려되어야 할 포인트가 결정된다.
섀도우 맵 계산부(220)는, 이렇게 결정된 포인트들에 대해서, VPL로부터의 거리를 계산하는 방법으로, 상기 VPL의 섀도우 맵을 작성한다.
그러면, 렌더링부(230)는 이러한 섀도우 맵을 이용하여, Radiosity 방법 등에 의해 영상을 렌더링하게 된다.
영상 처리 장치(200)의 보다 상세한 동작은 도 7 내지 도 8을 참조하여 후술한다.
도3은 본 발명의 일 실시예에 따른 영상 처리 장치(300)를 도시한다.
영상 처리 장치(300)는 3D 모델 위에 배치되는 VPL에 대해, 상기 VPL의 칼라 값을 결정한다.
먼저, VPL 배치부(310)는 소정의 알고리즘을 통해 상기 3D 모델의 오브젝트 위에 복수 개의 VPL들을 배치한다.
그리고, VPL 칼라 결정부(320)는, 상기 복수 개의 VPL들의 각각에 일정한 반경을 갖는 범위를 설정한다.
각 범위의 반경은 서로 다르게 설정될 수도 있고, 동일하게 설정될 수도 있으며, 이는 VPL의 성격, 오브젝트의 특성 등에 의해 조정될 수 있다.
그리고 VPL 칼라 결정부(320)는, 상기 각 VPL들에 대해, 설정된 범위 내의 오브젝트 칼라 값들의 통계적 평균으로 해당 VPL의 칼라 값을 결정한다.
영상 처리 장치(300)의 동작은 도 9 내지 도 10을 참조하여 보다 상세히 후술한다.
도 4는 본 발명의 일 실시예에 따라 샘플링 되는 오브젝트(400)의 형상 정보를 도시한다.
3D 모델링 결과 각 오브젝트의 형상 정보는 메쉬(mesh) 기반 또는 포인트(point) 기반으로 저장된다.
그리고, 많은 경우들에 있어서, 메쉬 기반의 형상(geometry) 정보 저장 방법이 활용된다.
오브젝트(400) 또한, 메쉬 기반으로 형상 정보가 저장된 경우이다.
메쉬(410)는 오브젝트의 물리적인 위치를 표현하는 기본 단위이다. 3D 모델을 렌더링 하는 경우, 이러한 개별 메쉬들을 카메라-뷰(camera-view)에서 바라보았을 때의 칼라 값이 계산된다.
3D 렌더링에 있어서, 카메라 뷰의 픽셀 값 결정은, 광원(light)으로부터 출발한 빛이 오브젝트에 반사되어 카메라 뷰의 픽셀들에 들어오는 결과를 계산하는 과정이다.
이러한 렌더링 과정에서, 직접 조명(direct illumination)에 의한 칼라 값뿐만 아니라, 간접 조명(indirect illumination), 이를테면 반사광, 난반사 등의 물리적 현상을 고려할 필요가 있다.
상기 간접 조명을, 3D 오브젝트 위에 배치된 가상의 광원(VPL; Virtual Point Light)으로 모델링하여, 각 오브젝트에 대한 섀도우 맵을 계산하고, 이 섀도우 맵들을 이용하여 카메라 뷰에서의 픽셀 값을 보다 정밀하게 계산하는 방법이 Radiosity 방법이다.
이러한 과정에서, VPL의 개수를 많이 배치시킬수록, 렌더링된 영상의 품질은 높아질 수 있으나, 연산양이 크게 증가한다.
도 5는 도 4의 오브젝트(400)를 카메라 뷰(501)에 관계 없이 샘플링한 모습을 도시한다.
예시적으로, 오브젝트(400)의 각 메쉬들(511, 512, 513, 514, 521, 및 531 등) 마다 한 개의 포인트 샘플링이 이루어진 결과가 도시되어 있다.
즉, 오브젝트(400)의 전체 영역에 걸쳐, 균일한 샘플링이 이루어졌다.
그리고, VPL(502)의 시야각 θ2 내의 메쉬들에 대해 섀도우 맵이 작성되고, 또한 VPL(503)의 시야각 θ3 내의 메쉬들에 대해서도 섀도우 맵이 작성되었다. 이러한 섀도우 맵들은, 각각 VPL(502) 또는 VPL(503)으로부터 도시된 샘플링 포인트까지의 거리를 나타내는 깊이 영상(depth image)으로 볼 수 있다.
그러나, 카메라 뷰(501)의 시야각 θ1 내에 있지 않은 메쉬(521) 및 메쉬(531) 등의 경우, VPL(502)의 섀도우 맵 또는 VPL(503)의 섀도우 맵 계산에 활용되지만, 결국 카메라 뷰(501)에서의 영상 렌더링에 기여하지 않는다.
즉, 메쉬(521) 및 메쉬(531) 등과 같이, θ1 범위 밖의 메쉬들을 샘플링하고, 이들에 대한 섀도우 맵을 작성하는 것은, 연산의 비효율성을 야기한다.
따라서, 카메라 뷰(501)의 시야각 θ1 내에 있는 메쉬들(511 내지 514), 특히 카메라 뷰(501)에서 가까운 메쉬(511) 및 메쉬(512)에 대해서는 다른 메쉬들과 샘플링을 달리 할 필요가 있다.
이러한 과정이 도 6을 참조하여 후술된다.
도 6은 본 발명의 일 실시예에 따라 도 4의 오브젝트(400)를 샘플링한 결과를 도시한다.
상기한 바와 같이, 불필요한 섀도우 맵 계산을 최소화하고, 연산 자원을 카메라 뷰(501)에서 민감한 부분, 이를테면 카메라 뷰(501)와 가까운 부분의 오브젝트의 샘플링과 섀도우 맵 작성에 집중할 수 있다.
렌더링을 수행할 3D 모델이 제공되고, 카메라 뷰(501)의 위치 및 방향이 지정되면, 도 1의 제1 계산부(110)는 도 4의 오브젝트(400)의 각 메쉬를 메모리(111)에 임시 저장한다.
그리고, 계산 모듈(112)는 메모리(111)에 저장된 복수 개의 메쉬들 각각에 대하여, 카메라 뷰(501)에 위치한 가상의 평면으로 프로젝션을 수행한다.
이렇게 프로젝션 되는 경우, 카메라 뷰(501)의 시야각 θ1의 중심에 얼마나 가까운 방향에 존재하는 메쉬인지, 그리고 카메라 뷰(501)로부터 얼마나 가까운 거리에 있는 메쉬인지에 따라, 메쉬가 프로젝션된 면적에 차이가 날 것이다.
기본 메쉬 크기는 대부분 동일하기 때문에, 카메라 뷰(501)의 정면에 있을수록 메쉬가 프로젝션 된 면적이 클것이고, 반대로 시야각 θ1에서 멀어지는 방향에 있을수록 메쉬가 프로젝션 된 면적이 작을 것이다.
또한, 카메라 뷰(501)로부터 가까운 메쉬이면 프로젝션 된 면적이 클 것이고, 반대로 멀리 있을수록 프로젝션된 면적이 작을 것이다.
계산 모듈(112)은 이렇게 메쉬들이 프로젝션된 면적을 계산하며, 이러한 메쉬들의 면적은 샘플링부(120)에 제공된다.
그리고, 샘플링부(120)는 각각의 메쉬들이 프로젝션 된 면적을 비교하여, 카메라 뷰(501)에서 보다 가깝고, 시야각의 중심에 보다 가까운 방향에 있는, 메쉬들, 즉 렌더링에 중요한 메쉬들을 찾는다.
그리고, 이러한 메쉬들에 대해서는, 높은 밀도로 샘플링을 수행하며, 이를테면 메쉬 하나에 두 개의 샘플링 포인트를 할당할 수도 있다.
포인트(611) 및 포인트(612)는 이렇게 높은 밀도로 샘플링 된 오브젝트의 형상 정보를 대표한다.
그리고, 샘플링부(120)는 카메라 뷰(501)에서 멀리 있을수록 샘플링 밀도를 낮추어, 이를테면, 메쉬 두 개 내지 세 개에 하나의 샘플링 포인트를 할당할 수도 있다.
포인트(613) 및 포인트(614)는 이렇게 낮은 밀도로 샘플링 된 오브젝트의 형상 정보를 대표한다.
한편, 샘플링부(120)는 카메라 뷰(501)의 시야각 θ1의 내에 있는 메쉬들에 대해서는 샘플링 밀도를 상대적으로 높여서, 많은 개수의 샘플링 포인트를 할당하고, 반대로 시야각 θ1의 바깥에 있는 메쉬들에 대해서는, 샘플링 밀도를 낮추어서, 이를테면, 메쉬 네 개 내지 다섯 개에 하나의 샘플링 포인트를 할당할 수도 있다.
포인트(621) 및 포인트(631)는 이렇게 낮은 밀도로 샘플링 된 오브젝트의 형상 정보를 대표한다.
그러면, 제2 계산부(130)는 도시된 샘플링 포인트들 각각에 대해 섀도우 맵을 작성한다. 섀도우 맵 작성 시에 고려되어야 할 샘플링 포인트 전체의 수가 줄어들어, 연산양을 줄이는 효과를 기대할 수 있다.
또한, 전체의 샘플링 포인트 수는 큰 차이가 없더라도, 카메라 뷰(501)에서 중요한 부분에 대해서는 높은 밀도의 섀도우 맵을 작성하기 때문에, 추후에 렌더링부(140)에 의해 Radiosity 방법 등을 사용한 영상 렌더링이 수행되는 과정에서 렌더링 품질이 높아지는 효과를 기대할 수 있다.
이를 테면, 카메라 뷰(501)에서 보다 해상도 높은 영상을 렌더링 하는 경우, 앨리어싱을 감소시킬 수 있다.
도 7은 오브젝트(703)에 대하여 VPL(702)의 섀도우 맵(720)이 작성된 경우, 카메라 뷰(701)의 위치나 방향에 따라 앨리어싱이 발생되는 모습을 도시한다.
섀도우 맵(720) 작성을 위한 오브젝트(703)의 샘플링이, VPL(702) 기준으로 균일하게 이루어 지는 경우, 섀도우 맵(720)은 전체 오브젝트에 대한 고른 깊이 값을 가질 수 있다.
그러나, 도 5 내지 도 6의 실시예에서와 같이, 카메라 뷰(701)의 기준에서는, 카메라 뷰(701)로부터 가깝고, 또한 카메라 뷰(701)의 시야각의 중심에 가까운 방향에 있는 오브젝트 및 오브젝트의 메쉬들이 중요하다.
카메라 뷰(701)에서 영상(710)을 렌더링 하는 경우, 어차피 렌더링 되지 않을 부분의 오브젝트들에 대해서는 VPL(702)의 섀도우 맵이 계산되더라도, 연산의 낭비를 초래하기 때문이다.
이를 테면, 카메라 뷰(701)에서의 영상(710)의 픽셀(711)의 칼라 값을 계산하는 과정에서, 픽셀(711)에 대응하는 오브젝트 부분은, 포인트(712)이다.
이 경우, 포인트(712)와 VPL(702) 사이의 섀도우 테스트를 수행하여, VPL(702)가 포인트(712)의 칼라 값에 영향을 주는지의 여부를 판단해야 한다.
그런데, 포인트(712)를 향한 방향에 있는 섀도우 맵(720)의 픽셀(721)의 경우, 정확히 포인트(712)를 향하지 않고, 그보다 왼쪽을 향하는 샘플링 포인트의 깊이 값(732)을 가지고 있다.
즉, 포인트(712)를 향한 VPL(702) 입장에서의 실제 깊이 값(actual depth value)은, VPL(702)와 포인트(722) 사이의 거리인데, 이는 섀도우 맵(720)의 픽셀(721)의 샘플링 포인트 깊이 값(732)과 다르다. 이 경우는, 오브젝트 아이디 자체가 다른 경우이므로, 그 오차가 매우 크다.
이러한 문제로 인해, 렌더링 된 영상의 앨리어싱 문제가 야기된다.
즉, 포인트(712)는 실제로 VPL(702)에 대해서는 섀도우 상태에 있으므로, 카메라 뷰(701)에서 렌더링 한 영상(710)의 픽셀(711) 칼라 값 계산에 VPL(702)의 칼라 값이 영향을 주지 않아야 한다.
그러나, 상술한 바와 같이 픽셀(721)의 깊이 값(732)을 통해 잘못된 섀도우 테스트가 수행됨으로써, 픽셀(711)의 칼라 값 계산에 VPL(702)의 칼라 값이 영향을 주는 결과가 되었다.
이러한 문제는 섀도우 맵(720)의 해상도를 높여주는 등의 방법에 의해 해결될 수도 있으나, 이는 불필요한 연산양의 증가로 인해 바람직하지 않다.
따라서, 본 발명의 일 실시예에 따르면, 섀도우 맵 작성을 위한 오브젝트 샘플링을 카메라 뷰(701)을 고려하여 적응적으로(adaptively) 수행하여, 연산 효율을 높이고, 앨리어싱 문제를 해결한다.
도 8은 본 발명의 일 실시예에 따라 도 7의 오브젝트(703)에 대한 VPL(702)의 섀도우 맵(810)이 작성된 결과를 도시한다.
도 2의 샘플링부(210)은 카메라 뷰(701)에서 렌더링 하고자 하는 영상(710)의 각 픽셀을 참고하여, 오브젝트(703) 중, 섀도우 맵이 계산되어야 할 포인트들을 샘플링 한다.
구체적으로, 카메라 뷰 깊이 영상 작성부(221)는, 카메라 뷰(701)에서 바라본 깊이 영상을 생성한다.
이러한 깊이 영상의 생성으로 인해, 어떤 오브젝트가 렌더링 하고자 하는 카메라 뷰(701)에 가까이 있으며, 오브젝트 중에서도 어떤 부분의 포인트가 중요한 지가 판단될 수 있다.
이 경우, 메쉬 탐색부(222)는 상기 깊이 영상을 이용하여, 렌더링 하고자 하는 영상(710)의 각 픽셀에 대응하는 메쉬들을 탐색한다.
상기 메쉬 탐색부(222)의 동작에 의해, 섀도우 맵(810) 작성을 위해 고려되어야 할 포인트, 이를테면 포인트(712)가 결정된다.
섀도우 맵 계산부(220)는, 이렇게 결정된 포인트들, 이를테면 포인트(712)를 향한 방향에 대하여, VPL(702)로부터 오브젝트(703)의 포인트(812)까지의 거리 d2를 측정하게 된다.
이러한 방법에 의해 섀도우 맵(810)이 작성되는 경우, 영상(710)의 렌더링을 위한 최적의 샘플링이 되므로, 연산양이 크게 줄어들면서도, 앨리어싱은 줄일 수 있다.
도 7의 예와 비교하면, 픽셀(711)의 칼라 값 계산에 VPL(702)의 칼라 값이 영향을 주는 지를 판단하는 섀도우 테스트에 있어서, 도 7의 예에서는 포인트(712)가 섀도우가 아닌 것으로 되었다.
그러나, 도 8의 예에서는, d1이 d2보다 크므로, 포인트(712)가 섀도우로 판단된다.
렌더링부(230)는 이러한 섀도우 맵(810)을 이용하여, Radiosity 방법 등에 의해 영상(710)을 렌더링하게 된다.
도 9는 오브젝트(900) 위에 VPL들이 배치되는 경우, VPL들의 칼라 값을 계산하는 과정을 도시한다.
Radiosity 등의 Global illumination을 고려한 렌더링 방법에 있어서, 오브젝트(900) 위에 복수 개의 VPL(910 내지 930 등)이 배치될 수 있다.
배치된 VPL들(910 내지 930) 등의 경우, 가상의 포인트 라이트의 칼라 값은, 상기 VPL을 모델링하게 된 소스 라이트(실제 광원일 수도 있고, 또 다른 VPL일 수도 있다)의 칼라 값, 오브젝트(900) 중 상기 VPL이 배치된 부분의 칼라 값, 텍스처 상태 등에 기초하여 결정된다.
그런데, 오브젝트(900) 위에 오브젝트(900)의 전체 칼라와는 다른 칼라를 갖는 가는 선(901)이 존재한다고 가정하면, VPL(910)이나 VPL(930) 등 다른 VPL들과는 달리, VPL(920)의 칼라 값은 상기 가는 선(901)의 칼라 값의 영향을 크게 받는다.
이를 테면, 오브젝트(900)의 전체 칼라가 녹색이어서, VPL(910), VPL(930) 및 대부분의 VPL들의 칼라도 녹색인데, 상기 가는 선(901)의 칼라가 적색이어서, 우연히 가는 선(901) 위에 배치된 VPL(920)의 경우, 칼라가 적색으로 결정되는 문제가 있다.
이러한 것은, 전체 렌더링에 있어서, 허용할 수 있는 범위 내의 오차일 수도 있으나, 카메라 뷰에 따라서는, Critical한 문제가 될 수도 있다.
따라서, 이러한 부분에 있어서, 특정 VPL(920)이 우연히 주변 칼라와는 상이한 spot 등의 outlier 부분에 배치되는 경우, VPL 칼라 값이 왜곡될 수 있다.
따라서 본 발명의 일실시예에 따르면, 이러한 왜곡을 최소화 하여, 실제 간접 조명을 충실히 표현할 수 있는 VPL 칼라 값을 제공한다.
도 10은 본 발명의 일 실시예에 따라 도 9의 오브젝트(900) 위에 배치된 VPL들의 칼라 값을 계산하는 모습을 도시한다.
본 발명의 일 실시예에 따르면, 도 3의 VPL 배치부(310)는 소정의 알고리즘을 통해 오브젝트(900) 위에 복수 개의 VPL들(910 내지 930 등)을 배치한다.
그리고, VPL 칼라 결정부(320)는, 상기 복수 개의 VPL들(910 내지 930 등)의 각각에 일정한 반경 R을 갖는 범위를 설정한다.
이를 테면, VPL(910)에는 범위(1010)가, VPL(920)에는 범위(1020)가, 그리고 VPL(930)에는 범위(1030)가 설정되었다. 다른 VPL들도 마찬가지이다.
각 범위의 반경 R은 서로 다르게 설정될 수도 있고, 동일하게 설정될 수도 있으며, 이는 VPL의 성격, 오브젝트의 특성 등에 의해 조정될 수 있다.
그리고 VPL 칼라 결정부(320)는, 범위(1010) 내의 오브젝트 칼라 값들의 통계적 평균으로 VPL(910)의 칼라 값을 결정하고, 범위(1020) 내의 오브젝트 칼라 값들의 통계적 평균으로 VPL(920)의 칼라 값을 결정하고, 범위(1030) 내의 오브젝트 칼라 값들의 통계적 평균으로 VPL(930)의 칼라 값을 결정한다.
물론, 통계적 평균이 아닌, 다른 방법에 의해 칼라 값을 결정할 수도 있으나, 분명한 점은, 본 실시예에 따를 때, 도 9의 예와는 달리, VPL(910), VPL(920), VPL(930) 등의 칼라 값들이 전체적으로 유사해지고, 또한 실제 간접 조명을 더 잘 반영할 수 있다는 점이다.
도 11은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
단계(S1110)에서, 3D 모델의 오브젝트의 각 메쉬가 메모리에 임시 저장된다.
그리고, 단계(S1120)에서, 상기 메모리에 저장된 복수 개의 메쉬들 각각에 대하여, 상기 3D 모델을 렌더링 하고자 하는 카메라 뷰에 위치한 가상의 평면으로의 프로젝션이 수행된다.
이 경우, 카메라 뷰의 정면에 있을수록 메쉬가 프로젝션 된 면적이 클것이고, 반대로 카메라 시야각에서 멀어지는 방향에 있을수록 메쉬가 프로젝션 된 면적이 작을 것이다.
또한, 카메라 뷰로부터 가까운 메쉬이면 프로젝션 된 면적이 클 것이고, 반대로 멀리 있을수록 프로젝션된 면적이 작을 것이다.
단계(S1130)에서, 상기 메쉬들이 프로젝션된 면적이 계산된다.
그리고, 단계(S1140)에서, 3D 모델의 오브젝트 위에 샘플링 포인트가 적응적으로 할당된다.
구체적인 내용은 도 4 내지 도 6을 참조하여 상술한 바와 같다.
그리고 단계(S1150)에서 적응적으로 샘플링 된 포인트들에 대해, 3D 모델의 각 VPL들의 섀도우 맵들이 계산된다.
그리고, 단계(S1160)에서 Radiosity 방법 등에 의해, 영상이 렌더링 된다.
도 12은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
단계(S1210)에서 3D 모델을 렌더링 하고자 하는 카메라 뷰에서 카메라 뷰 깊이 영상이 생성된다.
이렇게 깊이 영상이 생성되면, 단계(S1220)에서, 렌더링 하고자 하는 영상의 각 픽셀에 대응하는 메쉬들이 탐색된다.
이러한 과정을 통해, 3D 모델의 오브젝트의 전체 부분 중에서, 효율적인 섀도우 맵 작성을 위해 고려되어야 할 포인트가 결정된다.
그리고 단계(S1230)에서, 이렇게 결정된 포인트들에 대해서, VPL로부터의 거리를 계산하는 방법으로, 상기 VPL의 섀도우 맵이 작성된다.
그러면, 이러한 섀도우 맵을 이용하여, 단계(S1240)에서 Radiosity 방법 등에 의해 상기 카메라 뷰에서의 영상이 렌더링 된다.
이상의 단계들에 대한 내용은 도 7 내지 도 8을 참조하여 상술한 바와 같다.
도 13은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
단계(S1310)에서, 3D 모델의 오브젝트 위에 복수 개의 VPL들이 배치된다.
그리고, 단계(S1320)에서, 상기 복수 개의 VPL들의 각각에 일정한 반경을 갖는 범위가 설정되며, 각 VPL들에 대해, 설정된 범위 내의 오브젝트 칼라 값들의 통계적 평균으로 해당 VPL의 칼라 값이 결정된다.
상기 각 범위의 반경은 서로 다르게 설정될 수도 있고, 동일하게 설정될 수도 있으며, 이는 VPL의 성격, 오브젝트의 특성 등에 의해 조정될 수 있다.
그러면, 단계(S1330)에서 상기 결정된 VPL 칼라 값에, 실제 광원의 특성이나 배치, 오브젝트의 텍스처 상태 등을 고려하여, 최종적인 VPL 칼라 값이 결정된다.
이러한 과정은, 도 9 내지 도 10을 참조하여 상술한 바와 같다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to or limited by the embodiments. Like reference symbols in the drawings denote like elements.
FIG. 1 shows an image processing apparatus 100 according to an embodiment of the present invention.
The image processing apparatus 100 adaptively samples the object in consideration of the position and / or the direction of the camera view to render the 3D model, in order to increase the efficiency of the rendering operation.
The first calculation unit 110 temporarily stores each mesh of objects of the 3D model in the memory 111.
The calculation module 112 performs projection on each of the plurality of meshes stored in the memory 111 to a virtual plane positioned in the camera view for rendering the 3D model.
When projected in this way, the projected area of the mesh will vary depending on how close to the center of the viewing angle of the camera view is the mesh present and how close to the camera the view is.
Since the basic mesh sizes are mostly the same, the projected area of the mesh will be larger at the front of the camera view. Conversely, the farther away from the camera viewing angle, the smaller the projected area of the mesh.
In addition, the projected area will be large if the mesh is close to the camera view, and vice versa.
The calculation module 112 calculates the area on which the meshes are projected, and the area of these meshes is provided to the sampling unit 120.
Then, the sampling unit 120 compares the projected areas of each of the meshes to find meshes that are closer to the center of the viewing angle and closer to the center of the viewing angle, that is, meshes that are important to rendering.
And, for such meshes, sampling is performed at a high density, for example, two sampling points may be assigned to one mesh.
In addition, the sampling unit 120 may lower the sampling density as it is farther away from the camera view, for example, allocate one sampling point to two or three meshes.
On the other hand, the sampling unit 120 relatively increases the sampling density for the meshes within the viewing angle of the camera view, and allocates a large number of sampling points. On the contrary, for the meshes outside the viewing angle, the sampling density is lowered, , And one sampling point may be allocated to four to five meshes.
Then, the second calculation unit 130 creates a shadow map for each of the illustrated sampling points. The number of sampling points to be considered at the time of creating a shadow map is reduced, and the effect of reducing the amount of computation can be expected.
A more detailed operation of the image processing apparatus 100 will be described later in detail with reference to FIGS.
FIG. 2 illustrates an image processing apparatus 200 according to an embodiment of the present invention.
In the shadow map creation, the image processing apparatus 200 designates important points in the camera view and creates a shadow map of the VPL with respect to the designated points, thereby reducing aliasing and improving computation efficiency.
The sampling unit 210 refers to each pixel of the image to be rendered in the camera view, and samples the points of the 3D model object from which the shadow map is to be calculated.
First, the camera view depth image creating unit 221 creates a depth image viewed from the camera view.
Then, the mesh searching unit 222 searches the meshes corresponding to each pixel of the image to be rendered using the depth image.
By the operation of the mesh search unit 222, points to be considered for efficient shadow map creation are determined.
The shadow map calculation unit 220 creates a shadow map of the VPL by calculating the distance from the VPL to the thus determined points.
Then, the rendering unit 230 uses the shadow map to render the image by the Radiosity method or the like.
A more detailed operation of the image processing apparatus 200 will be described later with reference to Figs.
FIG. 3 illustrates an image processing apparatus 300 according to an embodiment of the present invention.
The image processing apparatus 300 determines the color value of the VPL for the VPL placed on the 3D model.
First, the VPL arrangement unit 310 arranges a plurality of VPLs on the object of the 3D model through a predetermined algorithm.
Then, the VPL color determining unit 320 sets a range having a certain radius in each of the plurality of VPLs.
The radius of each range may be set differently or may be set the same, which may be adjusted by the nature of the VPL, the characteristics of the object, and so on.
Then, the VPL color determining unit 320 determines a color value of the corresponding VPL as a statistical average of the object color values within the set range for each of the VPLs.
The operation of the image processing apparatus 300 will be described later in more detail with reference to FIGS. 9 to 10. FIG.
FIG. 4 illustrates shape information of an object 400 to be sampled according to an embodiment of the present invention.
As a result of 3D modeling, the shape information of each object is stored based on a mesh or a point.
In many cases, a mesh-based geometry information storage method is utilized.
The object 400 is also a case where shape information is stored based on a mesh.
The mesh 410 is a basic unit for expressing the physical position of the object. When rendering 3D models, the color values of these individual meshes when viewed from the camera-view are calculated.
In 3D rendering, the determination of the pixel value of the camera view is the process of calculating the result of the light originating from the light being reflected on the object and entering the pixels of the camera view.
In such a rendering process, it is necessary to consider not only color values by direct illumination but also physical phenomena such as indirect illumination, such as reflected light and diffuse reflection.
The indirect illumination is modeled by a virtual light source (VPL) disposed on the 3D object, a shadow map is calculated for each object, and the pixel values in the camera view are precisely calculated using the shadow maps The method to calculate is the Radiosity method.
In this process, the higher the number of VPLs, the higher the quality of the rendered image, but the greater the amount of computation.
FIG. 5 shows a state in which the object 400 of FIG. 4 is sampled regardless of the camera view 501.
Illustratively, the result of one point sampling for each of the meshes 511, 512, 513, 514, 521, and 531 of the object 400 is shown.
That is, uniform sampling was performed over the entire area of the object 400. [
A shadow map is created for the meshes within the viewing angle? 2 of the VPL 502, and a shadow map is also created for the meshes within the viewing angle? 3 of the VPL 503. These shadow maps can be viewed as a depth image representing the distance from the VPL 502 or the VPL 503 to the illustrated sampling point, respectively.
However, in the case of the mesh 521 and the mesh 531 that are not within the viewing angle? 1 of the camera view 501, the shadow map of the VPL 502 or the shadow map of the VPL 503 is utilized, 0.0 > 501). ≪ / RTI >
That is, sampling the meshes outside the &thetas; 1 range, such as the mesh 521 and the mesh 531, and creating a shadow map for them causes computation inefficiency.
Hence it is necessary to sample different meshes 511 to 514 within view angle? 1 of camera view 501, particularly mesh 511 and mesh 512 near camera view 501, with different meshes .
This process will be described later with reference to FIG.
Figure 6 shows the result of sampling the object 400 of Figure 4 in accordance with an embodiment of the present invention.
As described above, unnecessary shadow map calculations can be minimized, and the computation resources can be concentrated on the sensitive portion, such as the sampling of the object near the camera view 501, and the shadow map creation.
The 3D model to be rendered is provided and when the position and direction of the camera view 501 are designated, the first calculation unit 110 of FIG. 1 maps each mesh of the object 400 of FIG. 4 to the memory 111 Temporarily store.
The calculation module 112 performs projection on the virtual plane located in the camera view 501 for each of the plurality of meshes stored in the memory 111. [
When projecting in this way, there is a difference in the projected area of the mesh depending on how close to the center of the viewing angle &thetas; 1 of the camera view 501 is the mesh and how close the mesh is from the camera view 501 It will fly.
Since the basic mesh size is mostly the same, the area of the projection of the mesh will be larger at the front of the camera view 501, and conversely, the area projected from the mesh will be smaller at a direction away from the viewing angle? 1.
In addition, the projected area will be large if the mesh is close to the camera view 501, and the projected area will be small if it is far away.
The calculation module 112 calculates the area on which the meshes are projected, and the area of these meshes is provided to the sampling unit 120.
The sampling unit 120 then compares the projected areas of each of the meshes to find meshes that are closer to the camera view 501 and closer to the center of the viewing angle, i.e. meshes that are important to rendering.
And, for such meshes, sampling is performed at a high density, for example, two sampling points may be assigned to one mesh.
Points 611 and 612 represent the shape information of the objects sampled at such a high density.
The sampling unit 120 may reduce the sampling density as it is farther away from the camera view 501, for example, one sampling point may be allocated to two or three meshes.
Point 613 and point 614 represent the shape information of the object sampled at such a low density.
On the other hand, the sampling unit 120 relatively increases the sampling density for the meshes within the viewing angle &thetas; 1 of the camera view 501 and allocates a large number of sampling points. Conversely, for the meshes outside the viewing angle & , And one sampling point may be assigned to four to five meshes by lowering the sampling density, for example.
Point 621 and point 631 represent the shape information of the object sampled at such a low density.
Then, the second calculation unit 130 creates a shadow map for each of the illustrated sampling points. The number of sampling points to be considered at the time of creating a shadow map is reduced, and the effect of reducing the amount of computation can be expected.
In addition, even if there is no large difference in the total number of sampling points, since a shadow map of a high density is formed in an important part in the camera view 501, image rendering using the Radiosity method or the like is performed by the rendering unit 140 It is expected that the rendering quality is enhanced in the process of being performed.
For example, when rendering a higher resolution image in the camera view 501, aliasing can be reduced.
7 shows a state in which aliasing occurs according to the position and direction of the camera view 701 when the shadow map 720 of the VPL 702 is created for the object 703. FIG.
If the sampling of the object 703 for creation of the shadow map 720 is uniformly performed on the basis of the VPL 702, the shadow map 720 may have a uniform depth value for the entire object.
5 to 6, in the reference of the camera view 701, the distance from the camera view 701 to the center of the viewing angle of the camera view 701, Meshes are important.
This is because, when rendering the image 710 in the camera view 701, even if the shadow map of the VPL 702 is calculated with respect to the objects not to be rendered anyway, the computation is wasted.
For example, in the process of calculating the color value of the pixel 711 of the image 710 in the camera view 701, the object portion corresponding to the pixel 711 is the point 712.
In this case, a shadow test between point 712 and VPL 702 should be performed to determine whether VPL 702 affects the color value of point 712.
By the way, in the case of the pixel 721 of the shadow map 720 in the direction toward the point 712, it has the depth value 732 of the sampling point directed to the left rather than toward the point 712 exactly.
That is, the actual depth value at entry of VPL 702 towards point 712 is the distance between VPL 702 and point 722, which is the pixel 721 of shadow map 720, Which is different from the sampling point depth value 732 of FIG. In this case, since the object ID itself is different, the error is very large.
This problem introduces a problem of aliasing of the rendered image.
That is, since the point 712 is actually in the shadow state with respect to the VPL 702, the color value of the VPL 702 is influenced by the color value of the pixel 711 of the image 710 rendered in the camera view 701 Do not give.
However, as described above, a false shadow test is performed through the depth value 732 of the pixel 721, which results in the color value of the VPL 702 affecting the color value calculation of the pixel 711.
This problem may be solved by a method such as increasing the resolution of the shadow map 720 or the like, but this is undesirable because of an increase in the amount of unnecessary computation.
Therefore, according to the embodiment of the present invention, object sampling for creating a shadow map is adaptively performed in consideration of the camera view 701, thereby improving computation efficiency and solving the aliasing problem.
Figure 8 shows the result of creating a shadow map 810 of the VPL 702 for the object 703 of Figure 7, in accordance with an embodiment of the present invention.
The sampling unit 210 of FIG. 2 samples the points of the object 703 to which the shadow map is to be calculated by referring to each pixel of the image 710 to be rendered in the camera view 701.
Specifically, the camera view depth image creating unit 221 creates a depth image viewed from the camera view 701. [
Due to the generation of such a depth image, it can be determined which object is close to the camera view 701 to be rendered and which part of the object is important.
In this case, the mesh searching unit 222 searches the meshes corresponding to each pixel of the image 710 to be rendered using the depth image.
The operation of the mesh search unit 222 determines the points to be considered for creating the shadow map 810, such as the point 712. [
The shadow map calculation unit 220 measures the distance d2 from the VPL 702 to the point 812 of the object 703 with respect to the determined points such as the direction toward the point 712. [
When the shadow map 810 is created by this method, since the optimal sampling for rendering the image 710 is performed, aliasing can be reduced while the amount of computation is greatly reduced.
7, in the shadow test for determining whether the color value of the VPL 702 affects the calculation of the color value of the pixel 711, in the example of FIG. 7, the point 712 is not a shadow .
However, in the example of Fig. 8, since d1 is larger than d2, the point 712 is determined as a shadow.
The rendering unit 230 uses the shadow map 810 to render the image 710 according to a Radiosity method or the like.
9 shows a process of calculating the color values of VPLs when the VPLs are placed on the object 900. FIG.
In the rendering method considering global illumination such as Radiosity, a plurality of VPLs (910 to 930, etc.) may be disposed on the object 900.
In the case of the placed VPLs 910 to 930, the color value of the virtual point light may be a color value of a source light (actual light source or another VPL) to be modeled for the VPL, 900, and the color value of the portion where the VPL is disposed, the texture state, and the like.
However, unlike other VPLs such as VPL 910 and VPL 930, assuming that a thin line 901 having a color different from the entire color of the object 900 exists on the object 900, The color value of the thin line 901 is greatly affected by the color value of the thin line 901.
For example, the overall color of the object 900 is green so that the colors of the VPL 910, VPL 930, and most VPLs are also green, and the color of the thin line 901 is red, The color of the VPL 920 is determined to be red.
This may be an error within an allowable range in the entire rendering, but it may be a critical problem depending on the camera view.
Thus, in this portion, if a particular VPL 920 is placed at an outlier portion such as a spot that is different from the surrounding color by chance, the VPL color value may be distorted.
Therefore, according to an embodiment of the present invention, the distortion is minimized to provide a VPL color value capable of faithfully expressing actual indirect illumination.
FIG. 10 illustrates a manner of calculating the color values of VPLs placed on the object 900 of FIG. 9 in accordance with an embodiment of the present invention.
According to an embodiment of the present invention, the VPL arrangement unit 310 of FIG. 3 arranges a plurality of VPLs (910 to 930, etc.) on the object 900 through a predetermined algorithm.
Then, the VPL color determining unit 320 sets a range having a certain radius R in each of the plurality of VPLs (910 to 930, etc.).
For example, the range 1010 is set in the VPL 910, the range 1020 is set in the VPL 920, and the range 1030 is set in the VPL 930. The same goes for other VPLs.
The radius R of each range may be set differently or may be set the same, which may be adjusted by the nature of the VPL, the characteristics of the object, and so on.
The VPL color determining unit 320 determines the color value of the VPL 910 as a statistical average of the object color values in the range 1010 and determines the color value of the VPL 920 as a statistical average of the object color values in the range 1020. [ And determines the color value of the VPL 930 as a statistical average of the object color values in the range 1030.
Of course, the color values may be determined by other methods than the statistical averages. Obviously, according to the present embodiment, unlike the example of FIG. 9, the VPL 910, the VPL 920, the VPL 930 ) Are generally similar to each other, and the actual indirect illumination can be better reflected.
11 illustrates an image processing method according to an embodiment of the present invention.
In step S1110, each mesh of objects of the 3D model is temporarily stored in the memory.
In step S1120, for each of the plurality of meshes stored in the memory, projection to a virtual plane located in a camera view for rendering the 3D model is performed.
In this case, the larger the projection area of the mesh is at the front of the camera view, and the smaller the projected area of the mesh is at the farther away from the camera viewing angle.
In addition, the projected area will be large if the mesh is close to the camera view, and vice versa.
In step S1130, the projected area of the meshes is calculated.
Then, in step S1140, the sampling point is adaptively allocated on the object of the 3D model.
The details are as described above with reference to Figs.
Then, for the adaptively sampled points in step S1150, the shadow maps of each VPL of the 3D model are calculated.
In step S1160, the image is rendered by the Radiosity method or the like.
12 illustrates an image processing method according to an embodiment of the present invention.
In step S1210, a camera view depth image is generated in the camera view in which the 3D model is to be rendered.
When the depth image is generated, in step S1220, meshes corresponding to each pixel of the image to be rendered are searched.
Through this process, among the whole parts of the object of the 3D model, the points to be considered for efficient shadow map creation are determined.
Then, in step S1230, for the determined points, a shadow map of the VPL is created by calculating the distance from the VPL.
Then, using the shadow map, the image in the camera view is rendered by the Radiosity method or the like in step S1240.
The contents of the above steps are as described above with reference to Figs.
13 illustrates an image processing method according to an embodiment of the present invention.
In step S1310, a plurality of VPLs are placed on the object of the 3D model.
In step S1320, a range having a predetermined radius is set in each of the plurality of VPLs, and a color value of the corresponding VPL is determined as a statistical average of object color values within the set range for each VPL.
The radii of the respective ranges may be set differently or may be set to be the same, which may be adjusted by the nature of the VPL, the characteristics of the objects, and the like.
Then, in step S1330, the final VPL color value is determined in consideration of the characteristics of the actual light source, the layout, the texture state of the object, and the like in the determined VPL color value.
This process is as described above with reference to Figs. 9 to 10.
The method according to an embodiment of the present invention can be implemented in the form of a program command which can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.
While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. This is possible.
Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.

도 1은 본 발명의 일 실시예에 따른 영상 처리 장치를 도시한다.
도 2는 본 발명의 일 실시예에 따른 영상 처리 장치를 도시한다.
도3은 본 발명의 일 실시예에 따른 영상 처리 장치를 도시한다.
도 4는 본 발명의 일 실시예에 따라 샘플링 되는 오브젝트의 형상 정보를 도시한다.
도 5는 도 4의 오브젝트를 카메라 뷰에 관계 없이 샘플링한 모습을 도시한다.
도 6은 본 발명의 일 실시예에 따라 도 4의 오브젝트를 샘플링한 결과를 도시한다.
도 7은 오브젝트에 대하여 VPL의 섀도우 맵이 작성된 경우, 카메라 뷰의 위치나 방향에 따라 앨리어싱이 발생되는 모습을 도시한다.
도 8은 본 발명의 일 실시예에 따라 도 7의 오브젝트에 대한 VPL의 섀도우 맵이 작성된 결과를 도시한다.
도 9는 오브젝트 위에 VPL이 배치되는 경우, VPL의 칼라 값을 계산하는 과정을 도시한다.
도 10은 본 발명의 일 실시예에 따라 도 9의 오브젝트 위에 배치된 VPL의 칼라 값을 계산하는 모습을 도시한다.
도 11은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
도 12은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
도 13은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
FIG. 1 illustrates an image processing apparatus according to an embodiment of the present invention.
FIG. 2 illustrates an image processing apparatus according to an embodiment of the present invention.
FIG. 3 illustrates an image processing apparatus according to an embodiment of the present invention.
FIG. 4 illustrates shape information of an object to be sampled according to an embodiment of the present invention.
FIG. 5 shows the object of FIG. 4 sampled regardless of the camera view.
FIG. 6 shows a result of sampling the object of FIG. 4 according to an embodiment of the present invention.
FIG. 7 shows how aliasing occurs according to the position and direction of the camera view when a shadow map of VPL is created for an object.
Figure 8 shows the result of creating a shadow map of the VPL for the object of Figure 7 in accordance with one embodiment of the present invention.
9 shows a process of calculating the color value of the VPL when the VPL is placed on the object.
FIG. 10 illustrates a manner of calculating a color value of a VPL disposed on the object of FIG. 9 according to an embodiment of the present invention.
11 illustrates an image processing method according to an embodiment of the present invention.
12 illustrates an image processing method according to an embodiment of the present invention.
13 illustrates an image processing method according to an embodiment of the present invention.

Claims (20)

3D 모델의 오브젝트의 형상 정보를 나타내는 메쉬를, 상기 3D 모델을 렌더링하고자 하는 제1 시점의 평면에 프로젝션 하여, 상기 평면을 기준으로 프로젝션 된 면적을 계산하는 제1 계산부; 및A first calculator for projecting a mesh representing shape information of an object of the 3D model to a plane of a first viewpoint at which the 3D model is to be rendered and calculating an area projected on the basis of the plane; And 상기 프로젝션 된 면적에 기초하여 상기 메쉬에 대한 샘플링 포인트를, 적응적으로 할당하는 샘플링부A sampling unit for adaptively allocating a sampling point for the mesh based on the projected area, 를 포함하는 영상 처리 장치.And the image processing apparatus. 제1항에 있어서,The method according to claim 1, 상기 샘플링부는, 상기 프로젝션 된 면적에 비례한 개수의 샘플링 포인트를 상기 메쉬에 할당하는, 영상 처리 장치.Wherein the sampling unit assigns a number of sampling points proportional to the projected area to the mesh. 제1항에 있어서,The method according to claim 1, 상기 제1 계산부는,The first calculation unit may calculate, 상기 메쉬 정보를 임시로 저장하는 메모리; 및A memory for temporarily storing the mesh information; And 상기 메모리 상에 저장된 메쉬를, 상기 3D 모델을 렌더링 하고자 하는 제1 시점의 평면에 프로젝션 한 면적을 계산하는 계산 모듈A calculation module for calculating an area of the mesh stored in the memory on the plane of the first viewpoint at which the 3D model is to be rendered, 을 포함하는, 영상 처리 장치.And the image processing apparatus. 제1항에 있어서,The method according to claim 1, 상기 메쉬에 적응적으로 할당된 샘플링 포인트를, 이용하여, 상기 3D 모델 내에 배치된 VPL로부터의 섀도우 맵을 작성하는 제2 계산부And a second calculation unit for generating a shadow map from the VPL placed in the 3D model using the sampling point adaptively allocated to the mesh, 를 더 포함하는, 영상 처리 장치.Further comprising: 제4항에 있어서,5. The method of claim 4, 상기 섀도우 맵을 이용하여, 래이디오시티(Radiosity) 기법에 의해, 상기 3D 모델을 상기 제1 시점에서 렌더링 하는, 렌더링부A rendering unit that renders the 3D model at the first viewpoint by a radiosity technique using the shadow map; 를 더 포함하는, 영상 처리 장치.Further comprising: 3D 모델을 구성하는 복수 개의 형상 정보 메쉬 중, 상기 3D 모델을 렌더링 하고자 하는 제1 시점 영상의 각 픽셀에 대응하는 상기 3D 모델의 적어도 하나의 메쉬를 탐색하는 샘플링부; 및A sampling unit for searching at least one mesh of the 3D model corresponding to each pixel of a first viewpoint image to be rendered of the 3D model among a plurality of shape information meshes constituting the 3D model; And 상기 적어도 하나의 메쉬의 각각에 대하여, 상기 3D 모델 내에 배치된 적어도 하나의 VPL 각각에 대한 섀도우 맵을 계산하는 섀도우 맵 계산부For each of the at least one mesh, a shadow map calculation unit for calculating a shadow map for each of at least one VPL placed in the 3D model, 를 포함하는 영상 처리 장치.And the image processing apparatus. 제6항에 있어서,The method according to claim 6, 상기 샘플링부는,Wherein the sampling unit comprises: 상기 제1 시점에서 상기 3D 모델에 대한 깊이 영상을 작성하는 깊이 영상 작성부; 및A depth image creating unit for creating a depth image for the 3D model at the first time point; And 상기 깊이 영상을 이용하여, 상기 제1 시점 영상의 각 픽셀에 대응하는 상기 3D 모델의 적어도 하나의 메쉬를 탐색하는 탐색부And a search unit for searching at least one mesh of the 3D model corresponding to each pixel of the first viewpoint image using the depth image, 를 포함하는, 영상 처리 장치.And the image processing apparatus. 제6항에 있어서,The method according to claim 6, 상기 섀도우 맵을 이용하여, 래이디오시티 기법에 의해, 상기 3D 모델을 상기 제1 시점에서 렌더링 하는, 렌더링부A rendering unit that renders the 3D model at the first viewpoint using a shadow map, 를 더 포함하는, 영상 처리 장치.Further comprising: 3D 모델의 렌더링을 위해, 상기 3D 모델 내의 제1 포인트에 VPL을 배치하는 VPL 배치부; 및A VPL placement unit for placing a VPL at a first point in the 3D model, for rendering a 3D model; And 상기 제1 포인트 주변 영역의 오브젝트 칼라 값을 고려하여 상기 VPL의 라이트 칼라를 결정하는 VPL 칼라 결정부A VPL color determining unit for determining a light color of the VPL in consideration of an object color value of the first point surrounding area, 를 포함하는, 영상 처리 장치.And the image processing apparatus. 제9항에 있어서,10. The method of claim 9, 상기 VPL 칼라 결정부는, 상기 제1 포인트 주변에 제1 직경을 갖는 원을 설정하고, 상기 원 내의 오브젝트 칼라 값의 평균을 구하여, 상기 VPL의 라이트 칼라 값으로 결정하는, 영상 처리 장치.Wherein the VPL color determining unit sets a circle having a first diameter around the first point and determines an average of object color values in the circle as a light color value of the VPL. 3D 모델의 오브젝트의 형상 정보를 나타내는 메쉬를, 상기 3D 모델을 렌더링하고자 하는 제1 시점의 평면에 프로젝션 하여, 상기 평면을 기준으로 프로젝션 된 면적을 계산하는 단계; 및Projecting a mesh representing shape information of an object of the 3D model to a plane of a first viewpoint at which the 3D model is to be rendered and calculating an area projected on the basis of the plane; And 상기 프로젝션 된 면적에 기초하여 상기 메쉬에 대한 샘플링 포인트를, 적응적으로 할당하는 샘플링 단계A sampling step of adaptively allocating a sampling point for the mesh based on the projected area 를 포함하는 영상 처리 방법.And an image processing method. 제11항에 있어서,12. The method of claim 11, 상기 샘플링 단계는,Wherein the sampling step comprises: 상기 프로젝션 된 면적에 비례한 개수의 샘플링 포인트를 상기 메쉬에 할당하는, 영상 처리 방법.And assigning a number of sampling points proportional to the projected area to the mesh. 제11항에 있어서,12. The method of claim 11, 상기 프로젝션 된 면적을 계산하는 단계는,Wherein calculating the projected area comprises: 상기 메쉬 정보를 메모리에 임시로 저장하는 단계; 및Temporarily storing the mesh information in a memory; And 상기 메모리 상에 저장된 메쉬를, 상기 3D 모델을 렌더링 하고자 하는 제1 시점의 평면에 프로젝션 한 면적을 계산하는 단계Calculating an area of the mesh stored on the memory, the area projected on a plane of a first viewpoint at which the 3D model is to be rendered 을 포함하는, 영상 처리 방법.And the image processing method. 제11항에 있어서,12. The method of claim 11, 상기 메쉬에 적응적으로 할당된 샘플링 포인트를, 이용하여, 상기 3D 모델 내에 배치된 VPL로부터의 섀도우 맵을 작성하는 단계Creating a shadow map from a VPL disposed in the 3D model using a sampling point adaptively allocated to the mesh; 를 더 포함하는, 영상 처리 방법.Further comprising the steps of: 제14항에 있어서,15. The method of claim 14, 상기 섀도우 맵을 이용하여, 래이디오시티 기법에 의해, 상기 3D 모델을 상기 제1 시점에서 렌더링 하는 단계Rendering the 3D model at the first viewpoint by means of a radiosity technique using the shadow map; 를 더 포함하는, 영상 처리 방법.Further comprising the steps of: 3D 모델을 구성하는 복수 개의 형상 정보 메쉬 중, 상기 3D 모델을 렌더링 하고자 하는 제1 시점 영상의 각 픽셀에 대응하는 상기 3D 모델의 적어도 하나의 메쉬를 탐색하는 샘플링 단계; 및A sampling step of searching at least one mesh of the 3D model corresponding to each pixel of a first viewpoint image to be rendered of the 3D model among a plurality of shape information meshes constituting the 3D model; And 상기 적어도 하나의 메쉬의 각각에 대하여, 상기 3D 모델 내에 배치된 적어도 하나의 VPL 각각에 대한 섀도우 맵을 계산하는 섀도우 맵 계산 단계Calculating, for each of said at least one mesh, a shadow map for each of at least one VPL placed in said 3D model; 를 포함하는 영상 처리 방법.And an image processing method. 제16항에 있어서,17. The method of claim 16, 상기 샘플링 단계는,Wherein the sampling step comprises: 상기 제1 시점에서 상기 3D 모델에 대한 깊이 영상을 작성하는 단계; 및Creating a depth image for the 3D model at the first viewpoint; And 상기 깊이 영상을 이용하여, 상기 제1 시점 영상의 각 픽셀에 대응하는 상기 3D 모델의 적어도 하나의 메쉬를 탐색하는 단계Searching at least one mesh of the 3D model corresponding to each pixel of the first viewpoint image using the depth image, 를 포함하는, 영상 처리 방법.And an image processing method. 3D 모델의 렌더링을 위해, 상기 3D 모델 내의 제1 포인트에 VPL을 배치하는 VPL 배치 단계; 및A VPL placement step of placing a VPL at a first point in the 3D model, for rendering a 3D model; And 상기 제1 포인트 주변 영역의 오브젝트 칼라 값을 고려하여 상기 VPL의 라이트 칼라를 결정하는 VPL 칼라 결정 단계A VPL color determination step of determining a light color of the VPL in consideration of an object color value of the first point surrounding area 를 포함하는, 영상 처리 방법.And an image processing method. 제18항에 있어서,19. The method of claim 18, 상기 VPL 칼라 결정 단계는,The VPL color determination step may include: 상기 제1 포인트 주변에 제1 직경을 갖는 원을 설정하는 단계;Setting a circle having a first diameter around the first point; 상기 원 내의 오브젝트 칼라 값의 평균을 구하는 단계; 및Obtaining an average of object color values in the circle; And 상기 VPL의 라이트 칼라 값으로 결정하는 단계Determining a light color value of the VPL 를 포함하는, 영상 처리 방법.And an image processing method. 제11항 내지 제19항 중 어느 한 항의 영상 처리 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium storing a program for performing the image processing method according to any one of claims 11 to 19.
KR1020090089809A 2009-09-22 2009-09-22 Image processing apparatus and method KR101601687B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090089809A KR101601687B1 (en) 2009-09-22 2009-09-22 Image processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090089809A KR101601687B1 (en) 2009-09-22 2009-09-22 Image processing apparatus and method

Publications (2)

Publication Number Publication Date
KR20110032366A KR20110032366A (en) 2011-03-30
KR101601687B1 true KR101601687B1 (en) 2016-03-09

Family

ID=43937119

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090089809A KR101601687B1 (en) 2009-09-22 2009-09-22 Image processing apparatus and method

Country Status (1)

Country Link
KR (1) KR101601687B1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101845225B1 (en) 2011-06-30 2018-04-04 삼성전자주식회사 Image processing apparatus and method
KR102137263B1 (en) 2014-02-20 2020-08-26 삼성전자주식회사 Image processing apparatus and method
KR102306774B1 (en) * 2014-05-09 2021-09-30 삼성전자주식회사 Method and apparatus for processing image
US10593113B2 (en) 2014-07-08 2020-03-17 Samsung Electronics Co., Ltd. Device and method to display object with visual effect
KR102235679B1 (en) * 2014-07-08 2021-04-05 삼성전자주식회사 Device and method to display object with visual effect
GB2543562B (en) * 2015-10-23 2020-02-05 Geomerics Ltd Graphics processing
CN106023287B (en) * 2016-05-31 2019-06-18 中国科学院计算技术研究所 A kind of the interactive three-dimensional animation synthesizing method and system of data-driven

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234473A (en) 2007-03-22 2008-10-02 Canon Inc Image processor and its control method
JP2009086856A (en) 2007-09-28 2009-04-23 Konami Digital Entertainment:Kk Image generation device, image generation method and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100382366B1 (en) * 2001-05-23 2003-05-09 학교법인 포항공과대학교 Apparatuses and methods for estimating illumination radiance ratio and performing Augmented Reality using the estimated illumination radiance radio
US6704025B1 (en) * 2001-08-31 2004-03-09 Nvidia Corporation System and method for dual-depth shadow-mapping

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234473A (en) 2007-03-22 2008-10-02 Canon Inc Image processor and its control method
JP2009086856A (en) 2007-09-28 2009-04-23 Konami Digital Entertainment:Kk Image generation device, image generation method and program

Also Published As

Publication number Publication date
KR20110032366A (en) 2011-03-30

Similar Documents

Publication Publication Date Title
KR101601687B1 (en) Image processing apparatus and method
US11587282B2 (en) Hybrid hierarchy of bounding and grid structures for ray tracing
US11682159B2 (en) Systems and methods for soft shadowing in 3-D rendering casting multiple rays from ray origins
JP7421585B2 (en) Method for determining differential data for rays of a ray bundle and graphics processing unit
TWI303039B (en) Methods, computing apparatus and computing system for ray tracing , and machine-accessible medium for application in ray tracing
KR101511281B1 (en) Apparatus and method for enhancing ray tracing speed
KR101697238B1 (en) Image processing apparatus and method
JP6985804B2 (en) Importance sampling to determine the optical map
KR102604737B1 (en) METHOD AND APPARATUS for generating acceleration structure
US20150235410A1 (en) Image processing apparatus and method
KR20150039496A (en) Method and Apparatus for tracing ray using result of previous rendering
KR101585998B1 (en) Image processing apparatus and method
KR102211142B1 (en) Image processing apparatus and method
US20170109462A1 (en) System and a method for determining approximate set of visible objects in beam tracing
US9715758B2 (en) Image processing apparatus and method using virtual point light (VPL) information
US20150146877A1 (en) System and a method for determining approximate set of visible objects in beam tracing
EP2879409A1 (en) A system and a method for determining approximate set of visible objects in beam tracing
WO2024026203A1 (en) Bounding volume hierarchy (bvh) widening based on node compressibility
KR101630181B1 (en) Image processing apparatus and method
WO2023250250A1 (en) Accelerated bounding volume hierarchy (bvh) traversal for shadow rays

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190221

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200225

Year of fee payment: 5