KR20120004227A - 영상 처리 장치 및 방법 - Google Patents

영상 처리 장치 및 방법 Download PDF

Info

Publication number
KR20120004227A
KR20120004227A KR1020100064974A KR20100064974A KR20120004227A KR 20120004227 A KR20120004227 A KR 20120004227A KR 1020100064974 A KR1020100064974 A KR 1020100064974A KR 20100064974 A KR20100064974 A KR 20100064974A KR 20120004227 A KR20120004227 A KR 20120004227A
Authority
KR
South Korea
Prior art keywords
val
brdf
point
sat
influence
Prior art date
Application number
KR1020100064974A
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 KR1020100064974A priority Critical patent/KR20120004227A/ko
Priority to US13/064,619 priority patent/US20120007865A1/en
Publication of KR20120004227A publication Critical patent/KR20120004227A/ko

Links

Images

Classifications

    • 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
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)

Abstract

영상 처리 장치가 제공된다. 영상 처리 장치의 BRDF SAT 생성부는, 3D 모델 내의 제1 포인트의 BRDF(Bidirectional Reflection Distribute Function)를 이용하여, 상기 제1 포인트의 BRDF SAT(Summed Area Table)를 생성한다. 이 경우, 상기 영상 처리 장치의 VAL 샘플링부는 상기 3D 모델의 오브젝트 위의 적어도 하나의 포인트에 대응하는 VAL(Virtual Area Light)을 샘플링 한다.

Description

영상 처리 장치 및 방법{IMAGE PROCESSING APPARATUS AND METHOD}
3D 모델로 구성된 오브젝트에 대한 전역 조명(Global illumination) 렌더링에 연관되며, 보다 특정하게는 Radiosity 기법에 있어서, 오브젝트 위의 가상 조명(Virtual light)의 샘플링에 연관된다.
3D 모델에 대한 실시간 렌더링(real-time rendering)에 대한 관심이 높아지고 있다. 3D 모델을 렌더링하는 데에 있어서, 전역 조명(Global illumination)은 직접 조명(direct illumination)에 의한 칼라 값 형성과 간접 조명(indirect illumination)에 의한 칼라 값을 함께 고려하는 것이다.
여기서, 간접 조명에는, 이를테면 오브젝트 표면에서 빛의 반사(reflection), 굴절(refraction), 투과(transmission), 빛의 난반사(scattered reflection), 등이 모델링될 수 있다.
이러한 간접 조명을 직접 조명과 함께 샘플링하여 렌더링에 반영함으로써, 글로시(glossy), 스펙큘러(specular), 디퓨즈(diffuse) 효과 등이 표현되어 렌더링 품질이 향상된다.
한편, 간접 조명을 렌더링에 반영하기 위한 Radiosity 기법에 있어서, 종래에는 이러한 간접조명을 모델링하기 위해 3D 모델 내의 특정 위치에 VPL(Virtual Point Light)를 샘플링 하였다.
그러나, 샘플링의 특성 상, 중요한 포인트에 VPL이 배치되지 않거나 또는 중요하지 않은 outlier 위에 VPL이 샘플링 되는 결과가 야기되어, 품질에 한계가 있었다. 하지만, 기존의 Monte Carlo 방식은 연산량이 너무 커지기 때문에, VPL의 샘플링에 의한 Radiosity 기법이 주목 받았던 것이 사실이다.
본 발명의 일측에 따르면, 3D 모델의 오브젝트 위의 적어도 하나의 포인트에 대응하는 VAL(Virtual Area Light)을 샘플링 하는 VAL 샘플링부, 상기 3D 모델 내의 제1 포인트에 대한 상기 VAL의 영향력을 계산하는 VAL 영향력 계산부, 및 상기 VAL의 영향력을 이용하여 상기 제1 포인트의 칼라 값을 계산하는 렌더링부를 포함하는, 영상 처리 장치가 제공된다.
본 발명의 일 실시예에 따르면, 상기 영상 처리 장치는 상기 제1 포인트의 BRDF(Bidirectional Reflection Distribute Function)를 이용하여, 상기 제1 포인트의 BRDF SAT(Summed Area Table)를 생성하는 BRDF SAT 생성부를 더 포함할 수 있다.
한편, 상기 VAL 샘플링부는, 사각형(Rectangular) VAL을 샘플링 할 수 있고, 이 경우, 상기 영상 처리 장치는 상기 제1 포인트의 BRDF의 기저(basis)인 제1 축(axis) 및 제2 축 방향의 각각으로 BRDF 값을 누적(cumulate)한 BRDF의 누적 함수(cumulated function of BRDF)를 이용하여 테이블을 채움(fill out)으로써, 상기 제1 포인트의 BRDF SAT를 생성하는 BRDF SAT 생성부를 더 포함한다.
본 발명의 다른 일 실시예에 따르면, 상기 VAL 샘플링부는, 원형(Circular) VAL을 샘플링 한다. 이 경우, 상기 영상 처리 장치는 상기 제1 포인트의 BRDF 분포에서, 샘플링되는 상기 VAL의 중심 포인트(center point) 및 그 반경(radius)에 대한 적어도 하나의 경우의 수에 대응한 BRDF 누적 값을 계산하여 테이블을 채움으로써, 상기 제1 포인트의 BRDF SAT를 생성하는 BRDF SAT 생성부를 더 포함한다.
한편, 상기 렌더링부는, 샘플링된 VAL이 복수 개인 경우, 상기 복수 개의 VAL 각각에 대해 VAL 영향력 계산부가 계산한 VAL의 영향력 값들의 합을 이용하여 상기 제1 포인트의 칼라 값을 계산할 수 있다.
또한, 본 발명의 다른 일실시예에 따르면, 상기 렌더링부는, 샘플링된 VAL이 복수 개인 경우, 상기 복수 개의 VAL 각각에 대해 가시 영역(visible area)에 대한 VAL의 영향력 값들의 합을 이용하여 상기 제1 포인트의 칼라 값을 계산한다.
본 발명의 다른 일측에 따르면, 3D 모델의 오브젝트 위의 적어도 하나의 포인트에 대응하는 VAL(Virtual Area Light)을 샘플링 하는 단계, 상기 3D 모델 내의 제1 포인트에 대한 상기 VAL의 영향력을 계산하는 단계, 및 상기 VAL의 영향력을 이용하여 상기 제1 포인트의 칼라 값을 계산하는 단계를 포함하는, 영상 처리 방법이 제공된다.
VPL을 통해 Radiosity 기법의 렌더링을 수행하는 편에 비해, 연산량에 대비한 렌더링 품질이 크게 향상된다.
또한, BRDF의 Summation에 대한 룩업 테이블이 미리 생성됨으로써 연산 속도가 크게 향상된다.
도 1은 본 발명의 일 실시예에 따른 영상 처리 장치(100)를 도시한다.
도 2는 본 발명의 일 실시예에 따른 영상 처리 장치(100)에 의해 3D 모델(200) 위에 VAL이 샘플링 되는 과정을 도시하는 개념도이다.
도 3은 본 발명의 일 실시예에 따라 포인트(201)에 대응하는 BRDF 테이블(300)을 도시한다.
도 4는 본 발명의 일 실시예에 따라 포인트(201)에 대응하여 생성되는 BRDF SAT(400)를 도시한다.
도 5는 본 발명의 일 실시예에 따라, 도 4의 BRDF SAT(400) 위에 도 2의 VAL(212)이 위치하는 영역(510)을 도시한다.
도 6은 본 발명의 일 실시예에 따라, 도 4의 BRDF SAT(400) 위에 도 2의 VAL(222)이 위치하는 영역(610)을 도시한다.
도 7은 본 발명의 일 실시예에 따라, 도 4의 BRDF SAT(400) 위에 도 2의 VAL(232)이 위치하는 영역(710)을 도시한다.
도 8은 본 발명의 일 실시예에 따라 도 5 내지 도 7의 영역들(510, 610 및 710)을 이용하여 도 2의 포인트(201)의 칼라 값을 계산하는 과정을 설명하기 위한 예시적인 개념도이다.
도 9는 본 발명의 일 실시예에 따라 VAL이 원(Circle) 형태로 샘플링되는 경우에 BRDF(900)의 SAT를 생성하는 과정을 설명하기 위한 개념도이다.
도 10은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
이하에서, 본 발명의 일부 실시예를, 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 영상 처리 장치(100)를 도시한다.
영상 처리 장치(100)의 BRDF SAT 생성부(110)가 칼라 값을 렌더링 하고자 하는 제1 포인트에 대응하는 BRDF SAT를 생성한다.
이 경우, 영상 처리 장치의 VAL 샘플링부가 샘플링할 VAL의 모양에 따라 BRDF SAT 생성 과정이 상이할 수 있다.
샘플링될 VAL 모양에 따라 BRDF SAT의 생성 방법이 달라지는 실시예들은 도 3 내지 도 4, 및 도 9를 참조하여 보다 상세히 후술한다.
이렇게 생성된 BRDF SAT는 추후에 VAL의 영향력 계산에 있어서 연산을 고속화 하는 데에 활용될 수 있다.
한편, VAL 샘플링부(120)는 3D 모델의 오브젝트 위에 적어도 하나의 VAL을 샘플링 한다.
본 발명의 실시예들에서는, 종래의 VPL 샘플링과는 달리, 일정한 면적을 갖는 VAL이 전역 조명을 대표(represent)하는 가상의 면 조명으로서 샘플링 된다.
본 발명의 일 실시예에 따르면, VAL의 모양이나 크기가 일정하게 샘플링될 수 있으나, 본 발명의 다른 일실시예에 따르면 VAL의 모양이나 크기가 적응적으로(adaptively) 샘플링될 수 있고, 및/또는 VAL 샘플의 밀도 또한 다양하게 변경될 수 있다.
이 경우, VAL 샘플링의 예는 도 2를 참조하여 보다 상세히 후술한다.
그러면, VAL 영향력 계산부(130)는 BRDF SAT를 이용하여, 샘플링된 VAL들 각각이 상기 제1 포인트의 칼라 값에 주는 영향력을 계산한다. 이 과정에서 VAL이 커버하는 일정한 영역의 BRDF 총 합(summation)이 계산되고, 이 총 합을 이용하여 VAL의 칼라 값을 제1 포인트 칼라 값에 반영하는 영향력이 계산된다.
VAL이 커버하는 영역의 BRDF 총 합을 구하고, VAL의 영향력을 계산하는 내용은 도 5 내지 도 8을 참조하여 보다 상세히 후술한다.
렌더링부(140)는 상기 계산된 VAL의 영향력을 이용하여 상기 제1 포인트의 칼라 값을 렌더링한다. 이 경우, 구체적 렌더링 식(rendering equation)은 다양한 전역 조명 렌더링 방법에 의할 수 있다.
이하에서는 구체적인 3D 모델을 예로 들어서, 영상 처리 장치(100)의 동작을 상술한다.
도 2는 본 발명의 일 실시예에 따른 영상 처리 장치(100)에 의해 3D 모델(200) 위에 VAL이 샘플링 되는 과정을 도시하는 개념도이다.
본 발명의 일실시예에 따르면, 3D 모델(200) 위의 제1 포인트(201)의 칼라 값을 계산하기 위해 인터랙티브 전역 조명(Interactive Global Illumination)을 반영한 렌더링이 수행된다.
인터랙티브 전역 조명을 반영한 렌더링은, 임의의 카메라 시점과 조명(light) 조건이 주어지는 경우, 주어진 다이나믹 신(dynamic scene)에 대해서 빛의 반사, 굴절 등의 다양한 반응 시뮬레이션을 통해, 최종적으로 카메라 시점으로 들어오는 빛을 interactive frame rate에서 계산하는 방법이다.
이러한 계산을 위해, 3D 모델(200) 내의 각 오브젝트 포인트 위에서의 BRDF(Bidirectional Reflection Distribute Function)가 계산된다. 이를테면, 제1 포인트(201)에서 BRDF는 제1 포인트에서 반사 되거나 분산(diffuse)되는 빛이 공간(spatial area) 내의 어느 방향으로 얼마나 진행하는 지의 정보를 제공하는 빛 반사의 분포 함수이다.
이러한 BRDF는 제1 포인트(201)의 시점에서 반구(half sphere) 부분에 대해 주어질 수 있다. 다만, 본 발명은 일부 BRDF 실시예들에 의해 제한적으로 해석되지 않으며, 표면 특성을 모델링하기 위해 주어지는 어떤 형태나 종류의 반사율 분포에 대한 함수라도 본 발명의 사상을 벗어나지 않는 범위에서는 본 발명의 권리범위에서 배제되지 않는다.
제1 포인트(201)에 대한 BRDF(202)가 평면적으로 도시되어 있다. 이 경우, 영상을 렌더링하여 제1 포인트(201)의 칼라 값을 계산하는 기준 시점인 카메라 뷰(203)에서 볼 때, BRDF(202)가 많이 돌출된 부분은 반사도가 높은 방향에 대응하는 부분이고, 작게 돌출된 부분은 반사도가 작은 방향에 대응하는 부분이다.
이러한 BRDF를 이용하여 제1 포인트(201)의 칼라 값을 계산하기 위해, 종래의 Monte Carlo 방식은 무수히 많은 샘플링을 통해 다른 오브젝트들(210, 220, 230 등) 또는 실제 조명(real light)이 제1 포인트(201)의 칼라 값에 영향을 주는 영향력을 계산하였다.
이러한 방법은 매우 큰 연산량이 요구되기 때문에 비효율적이기도 하거니와, Ray의 singularity로 인해 노이지(noisy)한 이미지가 생성되는 문제도 있었다.
한편으로, 종래의 VPL에 의해 몇 개의 가상 포인트 라이트(Virtual Point Light)를 샘플링 하여 오브젝트 위의 일부 포인트들(211, 221, 및 223 등)에 배치하는 방법의 경우, 제1 포인트(201)의 칼라 값에 영향을 많이 주지만 VPL이 배치되지 않아 렌더링에 반영되지 않는 Ray path가 적지 않았다.
또한, VPL 샘플링에 의한 Radiosity 기법을 적용하는 경우에는, 스펙큘라(specular)하거나 글로시(glossy)한 표면이 잘 표현되지 않는 문제도 있었다.
따라서, 본 발명의 일 실시예에 따르면, 영상 처리 장치(100)의 VAL 샘플링부(120)는, 오브젝트(210) 위의 임의의 포인트(211) 주변의 일정한 영역에 가상의 면 조명 VAL(Virtual Area Light)를 샘플링 한다.
이는 종래의 VPL(Virtual Point Light)를 표면 조명으로 확장한 개념으로 이해될 수 있다.
또한, VAL 샘플링부(120)는 다른 오브젝트(220) 위의 포인트(221) 주변의 일정한 영역에 VAL(222)을 샘플링 하고, 또 다른 오브젝트(230) 위의 포인트(231) 주변의 일정한 영역에도 VAL(232)을 샘플링 한다.
이러한 VAL 샘플링 과정에서 VAL 샘플링의 밀도나, 개개의 VAL의 면적, 그리고 VAL의 모양에는 다양한 실시예가 있을 수 있다.
이를 테면, 본 발명의 일실시예에 따르면, VAL 샘플링부(120)는 3D 모델(200) 내에서, 오브젝트나 조명의 특성에 관계 없이 일정한 크기 VAL을 일정한 밀도로 샘플링할 수 있다.
그러나, 본 발명의 다른 일실시예에 따르면, VAL 샘플링부(120)는 오브젝트나 조명의 특성을 고려하여 서로 다른 VAL을 샘플링할 수 있고, 및/또는 적응적으로 VAL 샘플링 밀도를 불 균일하게 할 수도 있다.
이렇게 VAL 샘플링부(120)가 3D 모델(200) 위에 적어도 하나의 VAL을 샘플링 한 경우, 영상 처리 장치(100)의 VAL 영향력 계산부(130)는 샘플링된 각 VAL들(212, 222 및 232 등)이 제1 포인트(201)의 칼라 값 계산에 주는 VAL 영향력을 계산한다.
이 과정에서 VAL 영향력 계산부(130)는 제1 포인트(201)에 대응하는 BRDF(202)를 고려하여, BRDF(202)가 큰 방향의 VAL은 제1 포인트(201)의 칼라 값 계산을 위한 영향력을 크게 계산할 수 있다. 이러한 영향력은 VAL의 칼라 값들을 제1 포인트(201)의 칼라 값 계산에 반영할 때 부여하는 가중치, 또는 다른 어떤 형태의 중요도로 이해될 수 있다.
이러한 과정에서, 영상 처리 장치(100)의 BRDF SAT 생성부(110)가 미리 생성해둔 BRDF SAT를 이용하여, 영향력 계산을 고속화 할 수도 있다.
BRDF SAT 생성에 관한 내용 및 VAL 영향력 계산을 통해 제1 포인트(201)의 칼라 값을 계산하는 보다 상세한 과정은 도 3 이하를 참조하여 보다 상세히 후술한다.
도 3은 본 발명의 일 실시예에 따라 포인트(201)에 대응하는 BRDF 테이블(300)을 도시한다.
BRDF 테이블(300)은, 예를 들어, 제1 포인트(201)의 시점에서 3D 모델(200)을 바라본 반구(half-sphere)에 대해 BRDF 값을 이산적으로(discrete) 표현한 것이다.
그러나 반구 전체가 아닌 일부분에 대해 BRDF 테이블이 작성될 수도 있으며, 제1 포인트(201)의 공간 상 각 방향에 따른 표면 반사 정도를 나타낼 수 있다면 그 형태나 종류, 및 생성 방법을 불문하고 상기 BRDF 테이블(300)로 해석될 수 있을 것이다.
이러한 BRDF 테이블(300) 내에서, R(i, j)는 i 번째 행(row), j 번째 열(column) - 단, 본 명세서에서 i 및 j는 자연수임 - 의 방향에 대한 BRDF 값이다. 그리고, R(i, j+1)는 i 번째 행(row), j+1 번째 열(column)의 방향에 대한 BRDF 값이다. 이러한 식으로, 제1 포인트가 바라보는 각 방향에 대한 BRDF 값이 이산적으로(discrete) 표현되었다.
그런데, 전역 조명을 반영하여 제1 포인트(201)의 표면 칼라 값을 계산하는 과정에서는, 샘플링된 VAL들이 차지하는 일정한 면적에 대해 이러한 BRDF 값들이 더해지는 연산이 많이 요구된다.
그런데, BRDF 값들의 합은 VAL이 어떻게 샘플링되는가에 따라 일정치 않은 결과 값을 가지므로, 미리 BRDF의 누적 함수(cumulative function of BRDF)를 계산하여 두어, 일정한 면적의 BRDF의 값들의 합을 간편하게 계산한다면, 전체 연산 속도가 크게 향상될 수 있다.
따라서, 본 발명의 일 실시예에 따르면, 영상 처리 장치(100)의 BRDF SAT 생성부(110)는 샘플링될 VAL의 모양에 따라 추후에 VAL 영향력 값의 계산이 고속화 될 수 있도록 미리 BRDF SAT(BRDF Summed Area Table)를 생성한다.
본 발명은 일부 VAL 모양의 실시예에 의해 제한적으로 해석되지 않는다. 즉, 샘플링 되는 VAL은 실시예에 따라서 사각형(rectangular) 형태일 수 있고, 다른 실시예에서는 원형(circular) 형태일 수도 있다. 또한, 다른 임의의 형태의 VAL 샘플링 또한 배제되지 않는다.
이러한 BRDF SAT 생성 및 VAL 영향력 계산에 대한 내용은, VAL이 사각형인 경우의 예시적 실시예가 도 4 내지 도 8을 참조하여 후술되며, VAL이 원형인 경우의 다른 예시적 실시예가 도 9를 참조하여 후술된다.
도 4는 본 발명의 일 실시예에 따라 포인트(201)에 대응하여 생성되는 BRDF SAT(400)를 도시한다.
영상 처리 장치(100)의 VAL 샘플링부(120)가 샘플링 하는 VAL이 사각형(rectangular) VAL인 경우, BRDF SAT(400)는 BRDF를 BRDF 테이블의 행(row) 및 열(column) 방향으로 누적하여 누적 합(cumulated summation)을 구한다.
이하에서는 테이블의 행(row) 및 열(column) 방향으로 이야기 하지만, 이는 임의의 BRDF 테이블에 대하여 기저(basis)를 구성하는 제1 축(axis) 방향 및 제2 축(axis) 방향으로의 누적 합을 구하는 것으로 이해될 수 있다.
이를 테면, BRDF SAT(400) 내의 S(i, j) 값은 R(1, 1), R(1, j), R(i, 1) 및 R(i, j) 가 이루는 사각형 내의 모든 BRDF 테이블 엘리먼트들의 총 합이다.
또한, BRDF SAT(400) 내의 S(i+1, j+1) 값은 R(1, 1), R(1, j+1), R(i+1, 1) 및 R(i+1, j+1) 가 이루는 사각형 내의 모든 BRDF 테이블 엘리먼트들의 총 합이다.
BRDF SAT 생성부(110)는 이러한 식으로 누적 합의 값을 미리 계산하여 BRDF SAT(400)을 생성한다. 그러면, 추후에 임의의 위치에서 임의의 크기를 갖는 사각형 모양의 VAL 내의 BRDF 값들의 총 합을 구하는 계산이 크게 빨라진다.
이를 테면, BRDF 테이블 내에서 R(i, j), R(i, j+1), R(i+1, j) 및 R(i+1, j+1)이 이루는 사각형 영역 내의 BRDF 값의 합은, 아래 수학식에 의해 계산될 수 있다.
[수학식 1]
BRDF 값의 합 = S(i+1, j+1) - S(i-1, j+1) - S(i+1, j-1) + S(i-1, j-1)
위 수학식 1을 살펴보면, 좌변의 R 값의 개수가 아무리 증가하더라도, Rectangular의 네 꼭지점의 위치만 알면, 그 Rectangular 내의 모든 BRDF 값을 단순한 합과 차의 연산에 의해 바로 구할 수 있음을 알 수 있다.
따라서, BRDF SAT 생성부(110)가 미리 BRDF SAT(400)를 생성해 둠으로써 추후에 VAL 영향력 계산부가 일정한 면적을 갖는 VAL 내의 전체 BRDF 값의 총 합을 구하는 연산은 매우 고속화 된다.
다시 도 2의 실제 예를 참고하여 VAL 샘플링 과정 및 VAL 영향력 계산 과정을 이하에서 상술한다.
도 5는 본 발명의 일 실시예에 따라, 도 4의 BRDF SAT(400) 위에 도 2의 VAL(212)이 위치하는 영역(510)을 도시한다.
본 예에서, VAL 샘플링부(120)에 의해 샘플링된 사각형 VAL(212)는 BRDF SAT(400) 위에서 영역(510)을 커버한다. 이 영역(510) 내의 모든 BRDF 값들의 합은 BRDF SAT(400) 내의 네 개의 엘리먼트의 합과 차의 연산에 의해 간단히 구할 수 있다.
즉, 영역(510) 내의 모든 BRDF 값들의 합은, Sa4 - Sa2 - Sa3 + Sa1의 연산에 의해 구할 수 있다.
이렇게 구해진 영역(510) 내의 모든 BRDF 값들의 합은, 제1 포인트(201)의 칼라 값 계산에 있어서 VAL(212)의 칼라 값이 주는 영향력으로서 고려될 수 있다.
도 6은 본 발명의 일 실시예에 따라, 도 4의 BRDF SAT(400) 위에 도 2의 VAL(222)이 위치하는 영역(610)을 도시한다.
본 예에서, VAL 샘플링부(120)에 의해 샘플링된 사각형 VAL(222)는 BRDF SAT(400) 위에서 영역(610)을 커버한다. 이 영역(610) 내의 모든 BRDF 값들의 합은 BRDF SAT(400) 내의 또 다른 네 개의 엘리먼트의 합과 차의 연산에 의해 간단히 구할 수 있다.
즉, 영역(610) 내의 모든 BRDF 값들의 합은, Sb4 - Sb2 - Sb3 + Sb1의 연산에 의해 구할 수 있다.
이렇게 구해진 영역(610) 내의 모든 BRDF 값들의 합은, 제1 포인트(201)의 칼라 값 계산에 있어서 VAL(222)의 칼라 값이 주는 영향력으로서 고려될 수 있다.
도 7은 본 발명의 일 실시예에 따라, 도 4의 BRDF SAT(400) 위에 도 2의 VAL(232)이 위치하는 영역(710)을 도시한다.
도 5 내지 도 6에서 설명한 바와 마찬가지로, VAL(232)가 커버하는 영역(710) 내의 모든 BRDF 값들의 합은, Sc4 - Sc2 - Sc3 + Sc1의 연산에 의해 구할 수 있다.
이렇게 구해진 영역(710) 내의 모든 BRDF 값들의 합은, 제1 포인트(201)의 칼라 값 계산에 있어서 VAL(232)의 칼라 값이 주는 영향력으로서 고려될 수 있다.
본 발명의 일 실시예에 따르면, 도 5 내지 도 7을 참조하여 설명한 상기 방법에 의해 구해진 영역(510) 내의 모든 BRDF 값들의 합, 영역(610) 내의 모든 BRDF 값들의 합, 및 영역(710) 내의 모든 BRDF 값들의 합은 각각 제1 포인트(201)의 칼라 값 계산에 독립적으로 반영될 수 있다.
그러나, 본 발명의 다른 일실시예에 따르면, 이러한 VAL 각각의 제1 포인트에서의 가시성(visibility)이 고려되어, BRDF 값들의 모든 합이 아니라, 변형된 합이 제1 포인트(201)의 칼라 값 계산에 반영될 수도 있다.
이러한 실시예가 아래 도 8을 참조하여 설명된다.
도 8은 본 발명의 일 실시예에 따라 도 5 내지 도 7의 영역들(510, 610 및 710)을 이용하여 도 2의 포인트(201)의 칼라 값을 계산하는 과정을 설명하기 위한 예시적인 개념도이다.
VAL(212), VAL(222) 및 VAL(232)의 각각은 서로 다른 칼라 값과 면적을 가질 수 있으며, VAL들 각각이 샘플링된 오브젝트들 각각의 공간 상 위치에 의해, 적어도 하나의 VAL은 전체 rectangular가 제1 포인트(201)에서 모두 보여지지 않고 일부는 가려질 수도 있다.
상기한 바와 같이 본 발명의 일 실시예에서는 이러한 점을 무시하고, 전체 VAL들 각각의 영향력을 독립적으로 제1 포인트(201)의 칼라 값 계산에 반영할 수도 있으나, 본 발명의 다른 일실시예에서는 이러한 visibility를 고려하여 제1 포인트(201)의 칼라 값 계산에 반영할 수도 있다.
이를 테면, VAL(212)가 샘플링된 오브젝트(210)은 VAL(222)가 샘플링된 오브젝트(220)의 일부 및 VAL(232)가 샘플링된 오브젝트(230)의 일부를 가리고, VAL(222)가 샘플링된 오브젝트(220)는 VAL(232)가 샘플링된 오브젝트(230)의 일부를 가린다고 가정하는 경우, VAL들 사이의 visibility는 도 8에 도시된 바와 같다.
따라서, VAL들의 칼라 값들 각각이 제1 포인트(201)의 칼라 값 계산에 주는 영향력을 계산하기 위해서는, 가려진(occluded) 일부 영역은 제외하고 나머지 부분의 BRDF 값들의 합만을 반영할 수 있다.
따라서, 본 실시예에서 VAL(212)의 영향력은 (Sa4 - Sa2 - Sa3 + Sa1) 로 계산되는 BRDF 합에 대응하고, VAL(222)의 영향력은 (Sb4 - Sb2 - Sa4 + Sa2 + Sa2 - Sb5 - Sb6 + Sb1)에 의해 계산되는 BRDF 합에 대응한다.
마찬가지로, VAL(232)의 영향력은 (Sb2 - Sc2 - Sc5 + Sc1 + Sb6 - Sb1 - Sc6 + Sc5)에 의해 계산되는 BRDF 합에 대응한다.
이상에서는 VAL이 Rectangular의 형태로 샘플링 되는 실시예를 살펴 보았으며, 이하에서는 본 발명의 다른 일실시예에 따라 VAL이 Circular 형태로 샘플링 되는 실시예를 서술한다.
도 9는 본 발명의 일 실시예에 따라 VAL이 원(Circle) 형태로 샘플링되는 경우에 BRDF(900)의 SAT를 생성하는 과정을 설명하기 위한 개념도이다.
이렇게 VAL이 원 형태로 샘플링 되는 경우, BRDF 총 합(summation)에 필요한 파라미터는 원 형태로 샘플링된 VAL의 중점(x, y)과 반지름(r)이다.
본 실시예에서는, 직사각형 형태의 BRDF SAT를 통한 표현 대신, BRDF SAT 생성부(110)는 각각의 (x, y, r) 경우의 수에 대해 미리 BRDF SAT를 별도의 룩업 테이블로 생성한다.
일반적으로 (x, y, r)은 discretize 되기 때문에 제1 포인트에 대해 고려되어야 하는 경우의 수가 finite 하다. 따라서, 일정한 정도의 연산을 수행하면, 미리 BRDF SAT table을 각각의 (x, y, r)에 대해 미리 생성할 수 있다.
예를 들어, 특정 입사각에 대한 출사각(0~180도, 0~180도)에 대한 BRDF를 64x64 map으로 표현했을 때, 가능한 반지름(r)의 범위는 0~31이 되며, 이 때 저장될 전체 엘리먼트(element)의 개수는 64x64x32 = 128k 개가 된다.
여기서 전체 입사각을 64개로 discretize 한다면 128k * 64 = 8M개가 된다.
따라서, 이를 통해 임의의 원 형태(circular) VAL에 대해 중심점(x, y)과 반지름(r)이 주어지면, 이 구간에 대한 BRDF의 총 합(summation)결과를 table look-up을 통해 얻는 것이 가능하다.
예를 들어, 도 9에서 제1 포인트(201)에 대응한 BRDF 분포에서 중심점(910)에 대해 반지름 r = 3인 영역의 BRDF 총 합은 영역(910) 내의 BRDF를 BRDF SAT 생성부(110)가 미리 계산하여 룩업 테이블의 형태로 저장해 두면 추후에 바로 사용이 가능한 것이다.
이상에서는, 단순히 VAL 영역의 BRDF의 총 합(summation)이 VAL의 영향력으로 고려 되는 실시예를 설명하였다.
그러나, VAL 영향력 계산부(130)는, 본 발명의 다른 일실시예에 따라서, 각 VAL들에 대한 제1 포인트(201)의 BRDF와 VAL 내의 각 오브젝트 포인트의 BRDF의 곱을 렌더링 식에 반영할 수도 있다.
이 실시예에서는 제1 포인트의 BRDF 뿐만 아니라 각 VAL 내의 오브젝트 포인트들의 BRDF 또한 VAL 영향력 계산에 활용된다. 이 경우 제1 포인트의 BRDF와 각 VAL 내의 오브젝트 포인트의 BRDF의 합을 이용하여 BRDF SAT가 생성될 수 있다.
따라서, 어느 정도의 근사화(approximation)를 무시하면, 제1 포인트 칼라 값 계산의 품질이 향상될 수도 있다.
또한, 본 발명의 다른 일 실시예에서는, BRDF SAT 생성부(110)가 VAL의 영향력을 계산함에 있어서, 제1 포인트(201)와 VAL 내의 각 오브젝트 포인트의 BRDF의 곱을 이용하여 BRDF SAT를 생성할 수도 있다.
도 10은 본 발명의 일 실시예에 따른 영상 처리 방법을 도시한다.
단계(S1010)에서 영상 처리 장치(100)의 BRDF SAT 생성부(110)가 칼라 값을 렌더링 하고자 하는 제1 포인트에 대응하는 BRDF SAT를 생성한다. 이 과정에서 샘플링 될 VAL의 형태에 따라 BRDF SAT는 그에 맞추어 생성될 수 있다.
이렇게 생성된 BRDF SAT는 추후에 VAL의 영향력 계산에 있어서 연산을 고속화 하는 데에 활용될 수 있다. BRDF SAT의 생성에 관한 보다 상세한 내용은 도 3 내지 도 4, 및 도 9를 참조하여 전술한 바와 같다.
그리고 단계(S1020)에서 VAL 샘플링부(120)는 3D 모델의 오브젝트 위에 적어도 하나의 VAL을 샘플링 한다.
본 발명의 일 실시예에 따르면, VAL의 모양이나 크기가 일정하게 샘플링될 수 있으나, 본 발명의 다른 일실시예에 따르면 VAL의 모양이나 크기가 적응적으로(adaptively) 샘플링될 수 있고, 및/또는 VAL 샘플의 밀도 또한 다양하게 변경될 수 있다.
이 경우, VAL 샘플링의 예는 도 2를 참조하여 보다 상세히 전술하였다.
그리고 단계(S1030)에서 VAL 영향력 계산부(130)는 BRDF SAT를 이용하여, 샘플링된 VAL들 각각이 제1 포인트의 칼라 값에 주는 영향력을 계산한다. 이 과정에서 VAL이 커버하는 일정한 영역(도 5 내지 도 7의 510, 610 및 710 등)의 BRDF 총 합(summation)이 계산되고, 이 총 합을 이용하여 VAL의 칼라 값을 제1 포인트 칼라 값에 반영하는 영향력에 관한 내용은 도 5 내지 도 8을 참조하여 보다 상세히 전술한 바와 같다.
그러면, 단계(S1040)에서 렌더링부(140)는 제`1 포인트의 칼라 값을 렌더링 한다. 이 경우, 상기 VAL의 영향력 값이 이용되어 제1 포인트의 칼라 값이 렌더링 되는 구체적 렌더링 식(rendering equation)은 다양한 전역 조명 렌더링 방법에 의할 수 있다.
이러한 본 발명의 실시예들에 따르면 VPL 샘플링 대신 VAL 샘플링을 수행함으로써 샘플링으로 인해 일부 중요한 오브젝트 포인트가 고려되지 않고 중요하지 않은 오브젝트 포인트가 고려되는 문제점이 개선된다.
또한, VAL의 영향력 계산 과정에서 일정 영역 내의 BRDF 값의 총 합이, 일일이 계산되지 않고, 미리 생성된 BRDF SAT에 의해 고속화 된다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 영상 처리 장치
110: BRDF SAT 생성부
120: VAL 샘플링부
130: VAL 영향력 계산부
140: 렌더링부

Claims (17)

  1. 3D 모델의 오브젝트 위의 적어도 하나의 포인트에 대응하는 VAL(Virtual Area Light)을 샘플링 하는 VAL 샘플링부;
    상기 3D 모델 내의 제1 포인트에 대한 상기 VAL의 영향력을 계산하는 VAL 영향력 계산부; 및
    상기 VAL의 영향력을 이용하여 상기 제1 포인트의 칼라 값을 계산하는 렌더링부
    를 포함하는, 영상 처리 장치.
  2. 제1항에 있어서,
    상기 제1 포인트의 BRDF(Bidirectional Reflection Distribute Function)를 이용하여, 상기 제1 포인트의 BRDF SAT(Summed Area Table)를 생성하는 BRDF SAT 생성부
    를 더 포함하는, 영상 처리 장치.
  3. 제1항에 있어서,
    상기 VAL 샘플링부는, 사각형(Rectangular) VAL을 샘플링 하는, 영상 처리 장치.
  4. 제3항에 있어서,
    상기 제1 포인트의 BRDF의 기저(basis)인 제1 축(axis) 및 제2 축 방향의 각각으로 BRDF 값을 누적(cumulate)한 BRDF의 누적 함수(cumulated function of BRDF)를 이용하여 테이블을 채움(fill out)으로써, 상기 제1 포인트의 BRDF SAT를 생성하는 BRDF SAT 생성부
    를 더 포함하는, 영상 처리 장치.
  5. 제1항에 있어서,
    상기 VAL 샘플링부는, 원형(Circular) VAL을 샘플링 하는, 영상 처리 장치.
  6. 제5항에 있어서,
    상기 제1 포인트의 BRDF 분포에서, 샘플링되는 상기 VAL의 중심 포인트(center point) 및 그 반경(radius)에 대한 적어도 하나의 경우의 수에 대응한 BRDF 누적 값을 계산하여 테이블을 채움으로써, 상기 제1 포인트의 BRDF SAT를 생성하는 BRDF SAT 생성부
    를 더 포함하는, 영상 처리 장치.
  7. 제1항에 있어서,
    상기 렌더링부는,
    샘플링된 VAL이 복수 개인 경우, 상기 복수 개의 VAL 각각에 대해 VAL 영향력 계산부가 계산한 VAL의 영향력 값들의 합을 이용하여 상기 제1 포인트의 칼라 값을 계산하는, 영상 처리 장치.
  8. 제1항에 있어서,
    상기 렌더링부는,
    샘플링된 VAL이 복수 개인 경우, 상기 복수 개의 VAL 각각에 대해 가시 영역(visible area)에 대한 VAL의 영향력 값들의 합을 이용하여 상기 제1 포인트의 칼라 값을 계산하는, 영상 처리 장치.
  9. 3D 모델의 오브젝트 위의 적어도 하나의 포인트에 대응하는 VAL(Virtual Area Light)을 샘플링 하는 단계;
    상기 3D 모델 내의 제1 포인트에 대한 상기 VAL의 영향력을 계산하는 단계; 및
    상기 VAL의 영향력을 이용하여 상기 제1 포인트의 칼라 값을 계산하는 단계
    를 포함하는, 영상 처리 방법.
  10. 제9항에 있어서,
    상기 제1 포인트의 BRDF(Bidirectional Reflection Distribute Function)를 이용하여, 상기 제1 포인트의 BRDF SAT(Summed Area Table)를 생성하는 단계
    를 더 포함하는, 영상 처리 방법.
  11. 제9항에 있어서,
    상기 샘플링 되는 VAL은 사각형(Rectangular) VAL인, 영상 처리 방법.
  12. 제11항에 있어서,
    상기 제1 포인트의 BRDF의 기저(basis)인 제1 축(axis) 및 제2 축 방향의 각각으로 BRDF 값을 누적(cumulate)한 BRDF의 누적 함수(cumulated function of BRDF)를 이용하여 테이블을 채움(fill out)으로써, 상기 제1 포인트의 BRDF SAT를 생성하는 단계
    를 더 포함하는, 영상 처리 방법.
  13. 제9에 있어서,
    상기 샘플링 되는 VAL은, 원형(Circular) VAL인, 영상 처리 방법.
  14. 제13항에 있어서,
    상기 제1 포인트의 BRDF 분포에서, 샘플링되는 상기 VAL의 중심 포인트(center point) 및 그 반경(radius)에 대한 적어도 하나의 경우의 수에 대응한 BRDF 누적 값을 계산하여 테이블을 채움으로써, 상기 제1 포인트의 BRDF SAT를 생성하는 단계
    를 더 포함하는, 영상 처리 방법.
  15. 제9항에 있어서,
    상기 렌더링하는 단계는,
    샘플링된 VAL이 복수 개인 경우, 상기 복수 개의 VAL 각각에 대해 VAL 영향력 계산부가 계산한 VAL의 영향력 값들의 합을 이용하여 상기 제1 포인트의 칼라 값을 계산하는, 영상 처리 방법.
  16. 제9항에 있어서,
    상기 렌더링하는 단계는,
    샘플링된 VAL이 복수 개인 경우, 상기 복수 개의 VAL 각각에 대해 가시 영역(visible area)에 대한 VAL의 영향력 값들의 합을 이용하여 상기 제1 포인트의 칼라 값을 계산하는, 영상 처리 방법.
  17. 제9항 내지 제16항 중 어느 한 항의 영상 처리 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
KR1020100064974A 2010-07-06 2010-07-06 영상 처리 장치 및 방법 KR20120004227A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100064974A KR20120004227A (ko) 2010-07-06 2010-07-06 영상 처리 장치 및 방법
US13/064,619 US20120007865A1 (en) 2010-07-06 2011-04-04 Image processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100064974A KR20120004227A (ko) 2010-07-06 2010-07-06 영상 처리 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20120004227A true KR20120004227A (ko) 2012-01-12

Family

ID=45438267

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100064974A KR20120004227A (ko) 2010-07-06 2010-07-06 영상 처리 장치 및 방법

Country Status (2)

Country Link
US (1) US20120007865A1 (ko)
KR (1) KR20120004227A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160006087A (ko) * 2014-07-08 2016-01-18 삼성전자주식회사 시각 효과를 가지는 객체를 디스플레이하는 장치 및 방법
US9430867B2 (en) 2013-02-01 2016-08-30 Samsung Electronics Co., Ltd. Image processing apparatus and method utilizing a lookup table and spherical harmonic coefficients
US10403034B2 (en) 2014-05-09 2019-09-03 Samsung Electronics Co., Ltd. Image processing method and apparatus for rendering an image based on virtual point light (VPL) samplings
US11200746B2 (en) 2014-07-08 2021-12-14 Samsung Electronics Co., Ltd. Device and method to display object with visual effect

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9460553B2 (en) * 2012-06-18 2016-10-04 Dreamworks Animation Llc Point-based global illumination directional importance mapping
US9478065B2 (en) * 2013-03-14 2016-10-25 Robert Bosch Gmbh System and method for remote generation of indirect illumination sources in three-dimensional graphics
US20140267357A1 (en) * 2013-03-15 2014-09-18 Dreamworks Animation Llc Adaptive importance sampling for point-based global illumination
CN103679818B (zh) * 2013-12-17 2016-08-17 南京大学 一种基于虚拟面光源的实时场景绘制方法
CN103994977B (zh) * 2014-05-20 2016-04-20 中国科学院寒区旱区环境与工程研究所 非朗伯体多角度观测brdf的装置
CN107808370B (zh) * 2016-11-30 2021-06-18 湖南大学 一种基于区域求和的立方体图的图像滤波方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9430867B2 (en) 2013-02-01 2016-08-30 Samsung Electronics Co., Ltd. Image processing apparatus and method utilizing a lookup table and spherical harmonic coefficients
US10403034B2 (en) 2014-05-09 2019-09-03 Samsung Electronics Co., Ltd. Image processing method and apparatus for rendering an image based on virtual point light (VPL) samplings
KR20160006087A (ko) * 2014-07-08 2016-01-18 삼성전자주식회사 시각 효과를 가지는 객체를 디스플레이하는 장치 및 방법
US11200746B2 (en) 2014-07-08 2021-12-14 Samsung Electronics Co., Ltd. Device and method to display object with visual effect

Also Published As

Publication number Publication date
US20120007865A1 (en) 2012-01-12

Similar Documents

Publication Publication Date Title
KR20120004227A (ko) 영상 처리 장치 및 방법
US10290142B2 (en) Water surface rendering in virtual environment
US7940268B2 (en) Real-time rendering of light-scattering media
US7940269B2 (en) Real-time rendering of light-scattering media
US20150187129A1 (en) Technique for pre-computing ambient obscurance
US20100085360A1 (en) Rendering in scattering media
JP5873672B2 (ja) 仮想環境のポイントにおいて受光された光の量の推定方法
US10157494B2 (en) Apparatus and method for processing virtual point lights in an image
WO2022217922A1 (zh) 一种模型的渲染方法、装置、存储介质以及计算设备
US9235663B2 (en) Method for computing the quantity of light received by a participating media, and corresponding device
Drobot Physically based area lights
Weber et al. A multiscale model for rain rendering in real-time
KR20110032366A (ko) 영상 처리 장치 및 방법
KR102211142B1 (ko) 영상 처리 장치 및 방법
KR20120078070A (ko) 영상 처리 장치 및 방법
Wang et al. Rendering transparent objects with caustics using real-time ray tracing
US20130100135A1 (en) Method of estimating diffusion of light
KR101208826B1 (ko) 깊이 텍스처의 등고선을 기반으로 한 실시간 다각형 앰비언트 오클루전 방법
US20230281918A1 (en) Viewability testing in the presence of fine-scale occluders
Liu et al. Building a Real-Time System on GPUs for Simulation and Rendering of Realistic 3D Liquid in Video Games
Zhang Implementation and Applications of Art-Directable Ocean Simulation Tools
Quinn Regularizing Discontinuities in Ray Traced Global Illumination for Differentiable Rendering
Sellers et al. Computer Graphics Using Raytracing
de Freitas Almeida MSc Computer Animation & Visual Effects September 2023
Castro Shallow waters simulation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application