KR20050004124A - 흐림 생성 방법 - Google Patents

흐림 생성 방법 Download PDF

Info

Publication number
KR20050004124A
KR20050004124A KR1020040051655A KR20040051655A KR20050004124A KR 20050004124 A KR20050004124 A KR 20050004124A KR 1020040051655 A KR1020040051655 A KR 1020040051655A KR 20040051655 A KR20040051655 A KR 20040051655A KR 20050004124 A KR20050004124 A KR 20050004124A
Authority
KR
South Korea
Prior art keywords
zone
image
pixels
blur
depth
Prior art date
Application number
KR1020040051655A
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 KR20050004124A publication Critical patent/KR20050004124A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Image Analysis (AREA)

Abstract

3차원 씬(3D scene)을 표현하는 2차원 화상(2D image)에서, 그 화상의 화소들에 심도(depth)를 할당하는 관련 거리 화상에 기초하여, 흐림(blur)을 생성하는 방법으로서, 이 방법은,
- 2차원 화상을 상기 화소들에 할당된 심도들의 함수로서 2차원 구역들(2D zones)(2)로 분할하는 단계 -구역은 최소 및 최대 심도로 정의됨- 와,
- 하나의 2차원 구역의 흐림을 다른 구역과의 경계의 양쪽의 화소들에 대한 컨볼루션에 의해 계산하는 단계 -이 컨볼루션 핵심부(convolution kernel)(24, 25)의 사이즈는 상기 피처리 2차원 구역의 화소들의 심도에 좌우됨-
를 포함하는 것을 특징으로 한다.
응용분야로는 비디오 게임, 영화 제작을 위한 특수 효과의 생성을 들 수 있다.

Description

흐림 생성 방법{METHOD OF GENERATING BLUR}
본 발명은 합성 화상들에서 거리 흐림(distance blur) 효과를 생성하기 위한 방법에 관한 것이다. 응용 분야의 예로는 비디오 게임, 영화 제작을 위한 특수 효과의 생성을 들 수 있다.
일상 생활에서, 거리 흐림은 사실성에서 중요한 요소이다. 왜냐하면 우리는 육안에 의해 행해지는 수용 거리의 변경 중에 계속해서 그것, 즉 전경(foregrounds) 또는 원경(backgrounds)이 흐려지게 되는 현상을 관찰하기 때문이다. 이 거리 흐림 효과 또는 피사계 심도(depth of field) 효과는 통상 비디오 게임용의 합성 화상의 생성 시에 망각된다. 이것은 종래 사용되는 해법들에서 그러한 효과를 수행하기 위해 실행해야 할 계산의 부담 때문이다.
거리 흐림을 생성하기 위해 일반적으로 사용되는 처리는 생성하고자 하는 거리 흐림의 관점 특성(viewpoints characteristic)을 약간 다르게 한 다중 합성 화상들의 생성이다. 그 결과를 얻기 위해, 이들 다중 화상들 간에 평균화가 행해진다. 이 처리는 사이즈가 0이 아닌 동공에 의해 생성된 광로들의 다중성을 시뮬레이션한다. 평균화된 화상들의 수는 예를 들어 10에서 100까지 변화하고, 이는 그만큼 계산 시간을 증가시키게 된다.
안개 효과를 이용한 근사한 처리도 있지만, 그 묘사의 품질이 비교적 열악하고, 그것은 특히 전경들에 의해 마스킹하는 현상을 정확하게 처리하지 못한다. 이 기법은 다수의 비디오 게임에서 '트릭'(trick)으로서 이용되어 왔다. 왜냐하면 그것은 예를 들어 흐림/연무(blur/haze) 효과에 의해 결점들을 감춤으로써 씬(scene)의 기하학적 복잡성을 감소시키는 기법을 사용하는 것을 가능하게 하기 때문이다.
"밉매핑"(mip-mapping)이라고 하는 또 다른 기법은 씬 중의 거리에 따라서 또는 시뮬레이션해야 할 흐림에 따라서 사용되는 동일 화상에 대한 다양한 품질의 텍스처(textures)를 이용하는 것에 있다. 저해상 화상들은 최대 거리에 대해 사용된다. 그것들은 또한 재샘플링되고, 재확대됨으로써, 흐림의 출현을 갖는 보간(interpolation)을 창출하여, 보다 가까운 대상들 상에 흐림을 묘사하게 된다. 이 해법은 흐림 현상의 근사한 묘사를 허용하면서, 다각형 처리 타입의 기법들을 계속 유지한다.
이들 각종 해법들은 실행하기가 복잡하거나, 또는 씬의 사실성을 감소시키는 평범한 품질을 갖는다. 대상들, 예를 들어 전경 또는 원경 대상들을 오버레이할 때, 대상들의 경계에서 흐림을 생성하는 것은 사실적으로 수행되지 않는다. 그것들의 실행을 위한 계산 시간이 많이 걸려서, 시스템의 성능을 저하시킨다.
본 발명의 목적은 상기한 결점들을 완화시키는 것이다. 그 주제는 3차원 씬(3D scene)을 표현하는 2차원 화상(2D image)에서, 그 화상의 화소들에 심도(depth)를 할당하는 관련 거리 화상에 기초하여, 흐림(blur)을 생성하는 방법으로서, 이 방법은,
- 상기 2차원 화상을 상기 화소들에 할당된 심도들의 함수로서 2차원 구역들(2D zones)로 분할하는 단계 -구역은 최소 및 최대 심도로 정의됨- 와,
- 하나의 2차원 구역의 흐림을 다른 구역과의 경계의 양쪽의 화소들에 대한 컨볼루션에 의해 계산하는 단계 -이 컨볼루션 핵심부(convolution kernel)의 사이즈는 상기 피처리 2차원 구역의 화소들의 심도에 좌우됨-
를 포함하는 것을 특징으로 한다.
특정 실시예에 따르면, 상기 2차원 구역들은 가장 멀리 떨어진 것으로부터 가장 가까운 것으로 순차적으로 처리되고, 2차원 현재 구역의 흐림의 계산은 이 구역과 이전에 처리된 구역과의 경계 상에서 수행되어, 중간 화상을 제공하게 되고, 이 중간 화상은 다음 구역의 처리 중에 컨볼루션에 이용되는 것이다.
특정 실시예에 따르면, 현재 구역에 속하는 구역 경계에 있는 화소에 대한 컨볼루션은 현재 구역에 속하는 화소들 및 이전 구역에 속하는 화소들을 참작하고, 이전 구역에 속하는 구역 경계에 있는 화소에 대한 컨볼루션은 현재 구역에 속하는 화소들만을 참작한다.
후자의 경우, 흐림의 계산을 위하여, 이전 구역에서의 화소의 값은, 이전 구역에서의 핵심부의 전체 표면 면적과 관련하여 그 핵심부의 표면 면적에 대응하는 비율로, 컨볼루션 결과에 그 화소의 초기 값을 가산함으로써 얻어질 수 있다.
본 발명은 또한 흐림을 생성하는 장치에 관한 것으로, 이 장치는 합성 화상 및 관련 심도 맵(depth map)을 생성하기 위한 그래픽 처리기와, 심도 구역들에 대응하는 상기 화상의 2차원 구역들을 정의하기 위한 계산 수단을 포함하는 거리 흐림 처리기(distance blur processor)를 포함하고, 피처리 2차원 구역의 흐림의 계산은 다른 구역과의 경계의 양쪽의 화소들에 대한 컨볼루션에 의해 얻어지고, 컨볼루션 핵심부의 사이즈는 상기 피처리 2차원 구역의 화소들의 심도에 좌우되는 것을 특징으로 한다.
도 1은 본 발명에 따른 방법의 흐름도.
도 2는 거리 흐림(distance blur)을 생성하는 원리를 도시한 도면.
도 3은 광학 파라미터의 정의를 도시하는 도면.
도 4는 심도 구역들(depth zones)의 예를 도시하는 도면.
도 5는 마스크를 구성하는 예를 도시하는 도면.
도 6은 본 발명에 따른 장치를 도시하는 도면.
<도면의 주요 부분에 대한 부호의 설명>
9, 21 : 소스 화상
10, 11, 12, 19, 20 : 플레인/심도 구역
13, 14, 15 : 마스크
16, 17, 18 : 흐림 화상
24, 25 : 스폿
26, 27, 28, 29, 31, 32, 33, 34 : 영역
35 : 3D 엔진/그래픽 처리기
36 : Z 화상 메모리
37 : RGB 화상 메모리
38 : 거리 흐림 처리기
본 발명은 화상 합성 동작의 다운스트림(downstream)에 위치하고 그 화상 합성 동작에 의해 "파이프라인될"(pipelined) 수 있는 화상 데이터, 즉 3차원 씬이라기보다는 2차원 데이터에 대해 작용하는, 거리 흐림을 계산하는 방법을 제안한다.
이 방법은 높은 품질로 그리고 기존의 해법보다 훨씬 낮은 계산 비용으로 거리 흐림 효과를 얻을 수 있게 한다.
본 발명의 다른 특징 및 이점들은 비제한적인 예로서 제시되고, 첨부된 도면에 관해서 제시된 하기의 설명에서 분명해질 것이다.
본 발명은 기본으로 화상 합성으로부터의 결과 화상, 강도(intensity) 화상은 물론, 관련 거리 화상, 상기 강도 화상의 각 화소에 대한 거리 또는 심도를 제공하는 Z-화상 또는 Z-버퍼를 이용한다. 소정의 구역을 이전에 처리된 구역들과 매치시키기 위해 심도 구역들에 관한 마스크들을 이용하면 대상들의 마스킹 문제를 해결하는 것이 가능해진다.
도 1은 거리 흐림 처리 알고리즘을 나타낸다. 처리해야 할 씬을 나타내는 소스 화상이 단계 1로 전송된다. 단계 2는 상기 씬을 i로 인덱스된 n개의 심도 구역들로 분할하는 동작을 수행한다. 참조번호 3으로 표시된 제3 단계는 i의 값을가장 멀리 떨어진 구역에 대응하는 1로 초기화한다. 참조번호 4로 표시된 제4 단계는 구역 i에 대하여, 흐림에 의해 영향을 받는 화상 영역들을 결정하도록 의도된 선택 마스크를 생성한다. 참조번호 5로 표시된 제5 단계는 이전 구역 i=1에 대응하는, 이전에 처리된 화상, 즉 흐림이 생성된 화상에 기초하여 구역 i에 대한 흐림의 생성을 수행한다. 흐림을 갖는 이 새로운 화상은 다음 반복의 단계 5에서 참작되도록 단계 6에서 저장된다. 단계 7에서는 i의 값이 n과 비교된다. 만일 i가 더 작다면, 단계 8에서 i가 증분되고 그런 다음 이 새로운 i의 값으로 단계 4 내지 6이 수행된다. 만일 같다면, 처리는 종료되고 최종 화상은 이전 단계 6에서 저장된 그것이다.
도 2는 이들 여러 단계들을 심벌로 나타낸다. 도면에서 참조번호 9로 표시된 소스 화상은 피처리 화상이다. 이 소스 화상 내에 표현된 씬의 분할이 수행됨에 따라 참조번호 10, 11, 12로 표시된, 플레인(planes)이라고도 불리는 심도 구역들이 제공된다. 선택 마스크 13, 14, 15는 각 구역에 대해서 생성된다. 이 처리는 우선 원경 구역(10) 상에서 수행되어 마스크(13)를 제공하게 된다. 화상은 마스크(13)를 기초로 하여 처리되어, 가장 멀리 떨어진 심도 구역에 대응하는 부분에 대해, 컨볼루션에 의해 흐림 화상(16)을 제공한다. 이 화상은 마스크(14)를 기초로 하여 처리되어, 제2 심도 구역에 대응하는 부분에 대해, 컨볼루션에 의해 보다 완전한 흐림 화상(17)을 제공한다. 이 화상은 또한 마스크(15)를 기초로 하여 처리되어, 가장 가까운 심도 구역에 대응하는 부분에 대해, 컨볼루션에 의해 흐림 화상을 제공하고 그런 다음 상기 흐림 화상(17)과 결합되어 최종 화상(18)을 제공한다.
마스킹 효과의 해법, 즉 인공물을 제한하기 위하여 필요 불가결한 동작은 매우 고가이다, 즉 각 스폿(spot)의 각 포인트(point)에 대해 마스킹을 확인할 필요가 있다. 이러한 결점을 제한하기 위하여, 깊이 방향으로 서로 근접한 포인트들에 대해 마스킹의 효과는 0인 것으로 간주된다. 다른 한편으로, 대상들의 윤곽의 경우, 거리에 심한 변화가 있는 화상의 구역들에서 관찰될 필요가 있다. 왜냐하면 그 경우 Z축을 따른 연속성에 단절이 있기 때문이다. 화상을 심도 구역들로 분할할 경우 거리 근접 기준에 따라 포인트들을 함께 그룹화하는 것이 가능하게 된다. 이들 구역은 대상에 대하여 일정한 거리 브래킷(distance bracket)에 대응하고, 씬의 대상들은 이때 유사한 흐림을 갖는 구역에 속한다. 따라서 하나의 존에 대해 하나의 그리고 동일한 컨볼루션 마스크가 사용될 수 있을 것이다.
따라서 심도 구역은 씬 내에 존재하는 대상들의 한계를 고려하지 않고 관찰자에 대해 유사한 거리를 갖는 함께 그룹화된 포인트들의 집합이다. 따라서 2차원 도메인에서, 2차원 구역은 이 심도 구역을 정의하는 브래킷 내에 관련 심도가 있는 화소들의 집합으로 정의된다. 이 화소들의 집합과 다른 심도 구역들에 속하는 화소들의 집합과의 경계로서 정의된, 2차원 구역 윤곽(2D zone contour)이라고도 불리는 2차원 구역의 에지들은 마스킹 효과의 처리를 위한 민감 영역에 대응하지만 이 2차원 구역의 내부는 특별한 고려 없이도 처리될 수 있다. 뒤에서 설명하겠지만, 선택 마스크가, 정해진 구역에 대해, 내부로 간주되어야 하는 것과 그 구역의 에지들로 간주되어야 하는 것의 경계를 정한다.
씬을 심도 구역들로 분할하는 것은 화상의 화소들에 대한 흐림 스폿들(blur spots)의 치수를 기초로 하여 행해질 수 있다. 따라서 정해진 광학적 배치 및 관찰 거리에 대해, 이들 스폿의 직경의 예비 계산이 수행된다.
도 3은 흐림 스폿들의 직경의 계산을 허용하는 광학 시스템의 각종 파라미터에 대한 정의를 제공한다.
- f는 이 광학 시스템의 초점 거리
- A는 광학 시스템으로부터 거리 D만큼 떨어져 있는 소스 포인트
- A'는 광학 시스템을 통한 A의 화상로서, 광학 시스템으로부터 거리 D'만큼 떨어져 있는 화상
- Dimage plane은 화상면(CCD, 필름 등)으로부터 광학 시스템까지의 거리
- Ddiaph는 조리개(diaphragm)의 직경
- dspot은 화상면 상에 위치하는 A에 의해 생성된 스폿의 직경
- I는 소스 포인트 A의 강도
관찰면(observation plane)은 A'를 지나서 화상면과 일치하지 않고, 이로부터 직경이 0이 아닌 스폿이 생긴다.
이 직경은 다음의 수학식을 기초로 하여 얻어진다.
따라서 스폿의 직경은 대상면(object plane) 거리 D와 관련되고, 다른 파라미터들은 광학 시스템에 따른 고정 값들이다. 이 값 D는 심도 값과 화상의 각 화소를 관련시키는 심도 맵 또는 Z-버퍼를 통하여 얻어진다. 따라서 흐림 또는 스폿 직경에 관한 정보는 화상의 각 화소에 대해 계산될 수 있다.
구역의 결정은 스폿들(spots)의 직경의 함수로서 수행된다. 두 개의 임계치는, 화소의 관점에서 심도 구역 내의 스폿들의 직경의 최대 변동을 정의한다. 보충하면, 화소 수의 관점에서, 최소 파퓰레이션(population) 임계치는 비어 있는 구역 또는 포인트를 거의 갖지 않는 것의 생성을 방지한다.
2D 구역의 에지들은 오브젝트의 윤곽의 레벨에서 Z 방향으로의 불연속성으로 인해 이 기술에 의해 복구된다. 그러나, 관찰자에게 주어진 브래킷(bracket)에서 2D 구역의 윤곽, 포인트 등거리 세트의 윤곽도 또한 오브젝트의 윤곽 위가 아닌 어느 곳이라도 통과한다.
도 4는 화상 내의 세 구역의 생성을 나타낸 도면으로서, 목표로부터 고정된 거리에 있으며 브래킷의 상부 및 하부 제한을 나타내는 플레인에 의해 3차원 공간을 구획화한다. 구역의 분리된 두 플레인(19, 20)은 굵은 선으로 나타내며 스폿들의 직경의 변동에 대한 임계치에 대응한다. 큰 표면, 예를 들면 왼쪽의 벽은 여러 별개의 구역들에 속할 수도 있음에 유의한다. 각 구역의 처리는 이들 표면들의 정확한 일치를 허용한다.
단계 4는 선택 마스크들의 생성으로 구성된다.
선택 마스크는, 화소가 5개의 가능한 상태들을 갖는 심도 구역과 관련된 화상이다. 이 마스크는 두 가지 기능을 갖는데, 그 중 하나는 흐림(blur)의 생성을 가능하게 하는 컨볼루션이 상태 1, 2, 3을 액트해야 하는 화상 부분의 범위를 제한하는 것이며, 다른 하나는 플레인들, 즉 상태 2 및 3 사이의 매칭을 위해 민감한 구역을 구별짓는 것이다.
심도 구역에 속한 각 화소에 대해, 대응하는 스폿은 마스크 화상으로 복사된다. 화소와 관련된 상태는, 스폿의 화소가 속한 구역 또는 구역들의 함수로서 정의된다. 선택 마스크의 화소에 대한 다섯 개의 가능한 상태는 이하와 같다.
- 상태 0 : 화소는 구역의 처리에 의해 영향 받지 않는다. 포인트(화소)는 구역에 속하지 않지만 이 앞에 위치된 구역에 속한다.
- 상태 1 : 화소는 구역의 처리에 의해 영향 받는다. 화소는 구역에 속하며 생성된 스폿은 구역의 화소들만 오버랩한다.
- 상태 2 : 화소는 구역의 처리에 의해 영향 받는다. 화소는 구역에 속하며 생성된 스폿은, 구역에 모두 속하지는 않는 화소들을 오버랩한다. 생성된 스폿은 심도 구역을 오버스텝(overstep)한다.
- 상태 3 : 화소는 구역의 스폿들에 의해 영향받기 때문에 구역의 처리에 의해 영향 받는다. 화소는 구역에 속하지는 않지만 그 뒤에 위치한 구역에 속하며 생성된 스폿은 이 구역에 속하는 화소들을 오버랩한다.
- 상태 4 : 화소는 원경에 속한다. 화소는 구역에 속하지 않지만 그 뒤에 위치한 구역에 속하며, 생성된 스폿은 구역에 속한 화소들을 오버랩하지 않는다.
화소들과 관련된 스폿들의 직경은 관련된 화소들의 실제 심도에 기초하여 계산된 직경이다. 그러나, 예를 들어 이 구역과 관련된 화소들의 평균 거리의 함수로서 심도 구역에 대해 계산된 평균 직경을 고려할 수 있다.
이에 따라, 구역에 할당된 심도, 즉 가능한 평균 심도에 관한 간단한 정보로 인해 화소들의 상태 또는 마스크들의 포인트들을 얻을 수 있다.
도 5는 선택 마스크의 구축 예를 나타낸다.
백드롭(backdrop)은 원경에 위치한 구역으로 간주된다. 소스 화상(21) 또는 씬(scene)은 전경(foreground) 내의 원뿔(cone) 및 구(sphere)로 구성된다. 이 화상은 두 구역으로 구획되며 그중 하나는 앞에 위치되며 구를 포함하며 다른 하나는 뒤에 위치되며 원뿔을 포함한다. 이들 두 개의 심도 구역, 실제로는 이들 구역 각각에 속하는 3D 포인트들에 대응하는 화소는 22 및 23으로 부호 표기된 화상에 의해 각각 표현된다.
선택 마스크는 각 구역에 대해 구성된다. 이는, 이들 각 구역의 화소에 대한 상태를 정의하는 것을 포함한다. 구성을 위해 고려된 흐림 스폿 반지름들(radii)은 처리된 윤곽의 레벨에 있으며 이 윤곽의 화소들에 대한 거리 Z에 의해 정의된다. 원뿔의 윤곽에 대한 스폿(24)의 크기는, 원경에 있는 구의 윤곽에 대한 스폿(25)의 크기보다 큰 것이 관찰된다.
이에 따라, 구에 의해 절단된 3개의 삼각형 구역은, 각각 상태 1, 2 및 3에 대응하는 영역들(26, 27, 28), 원뿔에 대해 생성된다. 영역(26)은, 측면이 초기 삼각형들로부터 떨어져 있는 스폿 반경의 거리에 있는 원뿔을 나타내는 초기 삼각형의 내부의 삼각형에 의해 범위가 제한되는 구역에 대응하며, 영역(27)은 초기 삼각형 및 내부 삼각형에 의해 범위가 제한되는 구역에 대응하며, 영역(28)은, 측면이 내부 삼각형들로부터 떨어져 있는 스폿 반경의 거리에 있는 외부 삼각형 및 내부 삼각형에 의해 범위가 제한되는 구역에 대응한다. 전경 구역, 즉 영역(29)의 구에서 그것의 화소는 상태 0에 대응한다. 나머지 부분에 대한 백드롭, 즉 영역(30)은 상태 4에 대응한다.
마찬가지로, 각 상태 1, 2 및 3에 대응하는 동심원 영역(31, 32, 33)이 구에 대해 생성된다. 영역(31)은, 스폿 반경에 의해 초기 원의 반경보다 작은 반경을 갖는 구를 나타내는 초기 원에 대한 내부 동심원에 의해 범위가 제한되는 영역에 대응하며, 영역(32)은 초기 원 및 내부 원에 의해 정의되는 링에 대응하며, 영역(33)은, 스폿 반경에 의해 초기 원의 반경보다 큰 반경을 갖는 외부 동심원 및 초기 원에 의해 정의되는 링에 대응한다. 나머지 부분에 대한 백드롭, 영역(34), 즉 외부 영역(33)은 상태 4에 대응한다.
상태 1, 2 및 3 내의 포인트들은, 컨볼루션을 적용하기 위한 영역의 범위를 제한하는 것을 가능하게 한다. 또한, 상태 2 및 3의 화소들은, 구역들간의 매칭을 위한 원경에 대한 투과성인 영역들을 나타낸다. 구는 이를 오버랩하는 "원뿔" 플레인의 마스크를 절단하여 전경에 의해 흐림을 마스킹하는 것을 복구하는 것이 관찰될 것이다.
참조 부호 5의 단계는 흐림을 생성하는 단계와 이들 매칭을 위한 2D 구역들의 결합 단계를 포함한다.
심도 구역 내의 거리 흐림의 적용은 대응 2D 구역의 윤곽 레벨에서 발광성을 약화시킨다. 시각적으로, 마스크의 상태 2 및 3에 대응하고 이 구역의 원경에 있는 2D 구역의 주변의 흐려진 영역 사이에 페이드(fade)가 있는 것처럼 모든 것이 발생된다.
심도 구역에 포커스가 맞춰질수록, 스폿의 직경이 감소되기 때문에 페이드 구역이 작게 되며 심도 구역이 그 백드롭 상에서 절단된다. 포커싱될 때, 상태 2 및 3을 갖는 포인트들의 세트가 널(null) 상태로 된다. 원경과의 혼합이 존재하지 않으며, 심도 구역은 그 백드롭 상에서 완벽하게 절단된다.
이에 따라, 이 심도 구역의 매칭의 모드는 이들 여러 상태들을 이용하여 전경에 의한 마스킹의 영향을 해결하며 여기서 흐림이 생성되지 않는다.
주어진 구역에 대해, 원경 정보가 필요하며 이는 이전에 계산되었어야 한다. 따라서, 구역은 가장 멀리서부터 가장 가까이로 처리되어야 한다. 상태 2의 마스크의 화소에 대해 원경 정보가 존재하지 않는 것이 관찰된다. 따라서, 구역들간의 정확한 천이를 보장하도록 요구되는 정보 부분만이 이용가능하다.
흐림의 생성은 컨볼루션에 의해 행해진다. 이는 그 값, 예를 들면 재계산될화소가 중앙에 있는 스폿의 표면에 위치하는 화소들의 값의 가중화된 평균치를 재계산하기 위해 화소의 즉각적인 환경을 고려하는 것으로 구성된다. 컨볼루션 핵심부의 계수에 의해 정의되는 화소 그 자체의 값에 할당되는 가중치 부여를 정의하는 컨볼루션 핵심부 또는 필터링 윈도우는 예를 들어 벨 커브(bell curve) 또는 실린더 커브(cylinder curve)이다.
컨볼루션은 처리될 포인트와 관련된 마스크의 포인트의 상태에 따라 다르게 수행된다. 구체적으로는, 이는 선택 마스크의 포인트 값에 따라 이용가능한 정보를 이용하는 것을 포함한다.
- 마스크의 포인트가 상태 0에 있는 경우, 이는 전경에 속한다. 다음 화소로 진행한다.
- 마스크의 포인트가 상태 1에 있는 경우, 컨볼루션 핵심부는 전체적으로 심도 구역 내에 포함되며 이 구역의 "내부"에 있게 된다. 거리 정보의 도움으로, 화상 플레인으로 도로 지칭되는 흐림 스폿의 크기인 컨볼루션 핵심부의 크기가 계산된다. 컨볼루션은, 컨볼루션 핵심부와 관련된 구역 포인트를 통해 적용함으로써 통상적으로 인가된다. 그 결과는 최종 화상에 복사된다.
- 마스크의 포인트가 상태 2에 있는 경우, 원경 정보는 존재하지 않는다. 모든 화소들은, 현재 구역 혹은 이전의 처리된 구역에 속하는 경우 컨볼루션으로 피드백된다. 그 결과는 최종 화상에 복사된다. 이전에 처리된 구역들, 즉 원경 내에 속하는 화소들이 컨볼루션으로 공급되기 때문에 상태 2에 대응하는 화소들은 인공물의 소스이다. 구체적으로는, 이들 화소들은, 이에 따라 적절한 크기를 갖지않는 핵심부와 함께 현재 구역에 속하는 것처럼 처리되어서 이들이 그렇게 되어야 하는 것보다 많이 확산되어 있는, 예를 들어 윤곽 상의 기학학적 불연속성을 일으킨다. 일반적으로 이들 에러들은 상당히 지각하기 어렵다. 이들은 흐림의 크기, 즉 상태 2 내의 표면 구역과 함께, 혹은 심도 구역들간에 상당한 콘트라스트가 존재할 때 증가한다.
- 마스크의 포인트가 상태 3에 있는 경우, 현재 심도 구역 및 원경 심도 구역 사이의 "외부" 천이 구역에 있게 된다. 원경 구역의 정보는 이용가능하며 이는 이전에 계산된 것이다. 여기서, 핵심부에서 현재 구역에 포함된 포인트들만 고려하면서 컨볼루션이 수행된다. 그 결과는 최종 화상과 혼합된다. 혼합 비율은, 핵심부의 활성 총 표면에 대한 현재 구역 내에 포함된 핵심부 표면 구역에 의존한다. 구역 3의 포인트의 계산을 위해, 현재 구역에 관련된 컨볼루션의 결과(핵심부는 현재 구역의 화소들만 고려함)는 예를 들어 이 포인트에 대해 계산된 가중화된 강도에 추가되며, 이 가중치 부여는 스폿의 총 표면 구역에 대한 원경 구역 내의 스폿의 표면 구역의 비율에 의해 이전에 계산된 강도를 승산하는 것을 포함한다.
이에 따라 최종 화상이 구성되며 단계 6에서 구역 별로 저장되어 가장 먼 구역으로부터 개시된다. 구역의 포인트들은 처리된 이전의 구역에 대응하는 최종 화상에 복사되거나(상태 1, 2) 혹은 최종 화상과 혼합된다(상태 3).
본 발명을 구현하는 예시적인 장치가 도 6에 도시된다.
하드웨어 실시예는, 프로그램가능 신호 처리기, 및 화상 합성 그래픽 처리기와 "파이프라인"된 화상 메모리들의 도움의 영향을 받을 수도 있다.
도면에 도시되지 않은 중앙 장치는, 합성 화상의 생성을 위해 3D 엔진(35), 즉 그래픽 처리기에 데이터를 전송한다. 예를 들어 24 비트에 대해 코딩된 심도 맵 또는 Z-버퍼와 관련된 데이터는, 이 심도 맵을 저장하는 화상 메모리(36)에 전송된다. 예를 들어 RGB 포맷으로 칼라당 8 비트의 적정한 합성 화상 또는 소스 화상에 관련된 데이터가 RGB 화상 메모리(37)로 전송된다.
이들 저장된 데이터는 거리 흐림 처리기(38)에 전송된다. 이 처리기는 또한, 중앙 장치로부터, 씬의 심도, 최소 거리 및 최대 거리와, 시뮬레이팅될 화상 취득 시스템, 포커스 길이, 조리개를 특징짓는 파라미터들을 수신한다. 흐림 처리기의 출력은 시뮬레이팅된 거리 흐림을 갖는 화상으로 구성된다.
처리에 필요한 메모리들은, 이 예에서,
- 소스 화상에 대한 3개의 플레인들(RGB),
- 거리 화상에 대한 3개의 플레인들(Z는 24비트에 대해 코딩됨),
- 최종 화상에 대한 3개의 플레인들(RGB),
- 마스크에 대한 1개의 플레인(단색)이다.
최종 화상 및 마스크와 관련된 메모리들은 도면에 상세히 도시하지 않으며, 이들은 거리 흐림 처리기인 회로(38)에 집적된다.
거리 흐림 처리기는 전술한 흐림을 생성하는 방법을 구현한다. 이는, 심도 구역에 대응하는 화상의 2D 구역을 정의하는 계산 수단, 다른 구역을 갖는 경계의 다른 측 상의 화소들에 대한 컨볼루션에 의해 획득되는 처리된 2D 구역의 흐림의 계산 수단을 포함하며, 컨볼루션 핵심부의 크기는 처리된 2D 구역의 화소들의 심도에 의존한다.
본 발명에 따르면, 3차원 씬(3D scene)을 표현하는 2차원 화상(2D image)에서, 그 화상의 화소들에 심도(depth)를 할당하는 관련 거리 화상에 기초하여, 흐림(blur)을 생성하는 방법이 제공되는데, 이 방법에 의하면, 높은 품질로 그리고 기존의 해법보다 훨씬 낮은 계산 비용으로 거리 흐림 효과를 얻을 수 있게 된다.

Claims (8)

  1. 3차원 씬(3D scene)을 표현하는 2차원 화상(2D image)에서, 그 화상의 화소들에 심도(depth)를 할당하는 관련 거리 화상에 기초하여, 흐림(blur)을 생성하는 방법으로서, 이 방법은,
    - 상기 2차원 화상을 상기 화소들에 할당된 심도들의 함수로서 2차원 구역들(2D zones)(2)로 분할하는 단계 -구역은 최소 및 최대 심도로 정의됨- 와,
    - 하나의 2차원 구역의 흐림을 다른 구역과의 경계의 양쪽의 화소들에 대한 컨볼루션에 의해 계산하는 단계 -이 컨볼루션 핵심부(convolution kernel)(24, 25)의 사이즈는 상기 피처리 2차원 구역의 화소들의 심도에 좌우됨-
    를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 2차원 구역들은 가장 멀리 떨어진 것(23)으로부터 가장 가까운 것(22)으로 순차적으로 처리되고, 2차원 현재 구역의 흐림의 계산은 이 구역과 이전에 처리된 구역과의 경계 상에서 수행되어(26, 27, 28; 31, 32, 33), 중간 화상(6)을 제공하게 되고, 이 중간 화상은 다음 구역(8)의 처리 중에, 컨볼루션(5)에 이용되는 것을 특징으로 하는 방법.
  3. 제2항에 있어서, 현재 구역(27, 32)에 속하는 구역 경계에 있는 화소에 대한 컨볼루션은 현재 구역(27, 32)에 속하는 화소들 및 이전 구역(28, 33)에 속하는 화소들을 참작하는 것을 특징으로 하는 방법.
  4. 제2항에 있어서, 이전 구역(28, 33)에 속하는 구역 경계에 있는 화소에 대한 컨볼루션은 현재 구역(27, 32)에 속하는 화소들만을 참작하는 것을 특징으로 하는 방법.
  5. 제4항에 있어서, 흐림의 계산을 위하여, 이전 구역에서의 화소의 값은, 이전 구역에서의 핵심부의 전체 표면 면적과 관련하여 그 핵심부의 표면 면적에 대응하는 비율로, 컨볼루션 결과에 그 화소의 초기 값을 가산함으로써 얻어지는 것을 특징으로 하는 방법.
  6. 제1항에 있어서, 상기 2차원 화상은 합성 화상인 방법.
  7. 제1항에 있어서, 상기 컨볼루션 핵심부는 벨 기능(bell function)인 방법.
  8. 흐림을 생성하기 위한 장치로서, 이 장치는 합성 화상(37) 및 관련 심도 맵(depth map)(36)을 생성하기 위한 그래픽 처리기(35)와, 심도 구역들에 대응하는 상기 화상의 2차원 구역들을 정의하기 위한 계산 수단을 포함하는 거리 흐림 처리기(distance blur processor)(38)를 포함하고, 피처리 2차원 구역의 흐림의 계산은 다른 구역과의 경계의 양쪽의 화소들에 대한 컨볼루션에 의해 얻어지고, 컨볼루션핵심부(224, 25)의 사이즈는 상기 피처리 2차원 구역의 화소들의 심도에 좌우되는 것을 특징으로 하는 흐림 생성 장치.
KR1020040051655A 2003-07-03 2004-07-02 흐림 생성 방법 KR20050004124A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0308114A FR2857133A1 (fr) 2003-07-03 2003-07-03 Procede de generation de flou
FR03/08114 2003-07-03

Publications (1)

Publication Number Publication Date
KR20050004124A true KR20050004124A (ko) 2005-01-12

Family

ID=33427680

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040051655A KR20050004124A (ko) 2003-07-03 2004-07-02 흐림 생성 방법

Country Status (6)

Country Link
US (1) US20050220358A1 (ko)
EP (1) EP1494174B1 (ko)
JP (1) JP4541786B2 (ko)
KR (1) KR20050004124A (ko)
CN (1) CN1577401B (ko)
FR (1) FR2857133A1 (ko)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070019883A1 (en) * 2005-07-19 2007-01-25 Wong Earl Q Method for creating a depth map for auto focus using an all-in-focus picture and two-dimensional scale space matching
US7929801B2 (en) * 2005-08-15 2011-04-19 Sony Corporation Depth information for auto focus using two pictures and two-dimensional Gaussian scale space theory
US20080118175A1 (en) * 2006-11-16 2008-05-22 Barinder Singh Rai Creating A Variable Motion Blur Effect
JP5109803B2 (ja) * 2007-06-06 2012-12-26 ソニー株式会社 画像処理装置、画像処理方法及び画像処理プログラム
JP5006727B2 (ja) * 2007-07-26 2012-08-22 株式会社リコー 画像処理装置およびデジタルカメラ
US8316096B2 (en) * 2008-04-29 2012-11-20 Kota Enterprises, Llc Facemail
US8280194B2 (en) * 2008-04-29 2012-10-02 Sony Corporation Reduced hardware implementation for a two-picture depth map algorithm
JP5124372B2 (ja) * 2008-07-10 2013-01-23 株式会社リコー 画像処理装置、画像処理方法およびデジタルスチルカメラ
US8553093B2 (en) 2008-09-30 2013-10-08 Sony Corporation Method and apparatus for super-resolution imaging using digital imaging devices
US8194995B2 (en) * 2008-09-30 2012-06-05 Sony Corporation Fast camera auto-focus
CN101751664B (zh) * 2008-12-02 2013-04-17 奇景光电股份有限公司 立体深度资讯的产生系统及产生方法
WO2010114449A1 (en) * 2009-03-30 2010-10-07 Telefonaktiebolaget Lm Ericsson (Publ) Barcode processing
JP5300756B2 (ja) * 2010-02-05 2013-09-25 キヤノン株式会社 撮像装置及び画像処理方法
JP2011210197A (ja) * 2010-03-30 2011-10-20 Toshiba Corp 画像処理装置
FR2971604B1 (fr) * 2011-02-15 2014-01-24 E On Software Procede d'analyse de donnees d'une image bidimensionnelle.
US8406548B2 (en) 2011-02-28 2013-03-26 Sony Corporation Method and apparatus for performing a blur rendering process on an image
US9307134B2 (en) 2011-03-25 2016-04-05 Sony Corporation Automatic setting of zoom, aperture and shutter speed based on scene depth map
US9007435B2 (en) * 2011-05-17 2015-04-14 Himax Technologies Limited Real-time depth-aware image enhancement system
US9020280B2 (en) * 2011-12-01 2015-04-28 Sony Corporation System and method for evaluating focus direction under various lighting conditions
JP5911292B2 (ja) * 2011-12-19 2016-04-27 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法、および、画像処理プログラム
KR20130103217A (ko) * 2012-03-09 2013-09-23 삼성전자주식회사 블러화된 이미지의 제공 장치 및 블러화된 이미지의 제공 방법
US20130265410A1 (en) * 2012-04-10 2013-10-10 Mahle Powertrain, Llc Color vision inspection system and method of inspecting a vehicle
CN104063858B (zh) * 2013-03-19 2017-04-26 展讯通信(上海)有限公司 图像模糊处理方法及装置
TWI547142B (zh) 2013-04-02 2016-08-21 杜比實驗室特許公司 引導的3d顯示器適配
JP6319972B2 (ja) 2013-08-26 2018-05-09 キヤノン株式会社 画像処理装置、撮像装置、画像処理方法、およびプログラム
JP6270413B2 (ja) * 2013-10-29 2018-01-31 キヤノン株式会社 画像処理装置、撮像装置、および画像処理方法
JP6516410B2 (ja) * 2014-02-21 2019-05-22 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US9905054B2 (en) * 2016-06-09 2018-02-27 Adobe Systems Incorporated Controlling patch usage in image synthesis
CN112215762A (zh) * 2019-07-12 2021-01-12 阿里巴巴集团控股有限公司 视频图像处理方法、装置及电子设备
CN111241993B (zh) * 2020-01-08 2023-10-20 咪咕文化科技有限公司 座位数的确定方法、装置、电子设备及存储介质
CN114331828A (zh) * 2020-09-30 2022-04-12 脸萌有限公司 图片转视频的方法、装置、设备及存储介质
WO2024018166A1 (en) 2022-07-22 2024-01-25 Blackbird Plc Computer-implemented methods of blurring a digital image; computer terminals and computer program products

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63259778A (ja) * 1987-04-17 1988-10-26 Hitachi Ltd 画像デ−タの表示方法
US5524162A (en) * 1991-07-22 1996-06-04 Levien; Raphael L. Method and apparatus for adaptive sharpening of images
GB9422089D0 (en) * 1994-11-02 1994-12-21 Philips Electronics Uk Ltd Blurring for computer graphics
US6075905A (en) * 1996-07-17 2000-06-13 Sarnoff Corporation Method and apparatus for mosaic image construction
JP3083995B2 (ja) * 1996-08-30 2000-09-04 株式会社ハドソン 画像処理方法および装置
US6115078A (en) * 1996-09-10 2000-09-05 Dainippon Screen Mfg. Co., Ltd. Image sharpness processing method and apparatus, and a storage medium storing a program
GB2325131B (en) * 1997-03-27 2002-01-16 British Broadcasting Corp Improvements in artificial image generation
US6289113B1 (en) * 1998-11-25 2001-09-11 Iridian Technologies, Inc. Handheld iris imaging apparatus and method
JP2000251090A (ja) * 1999-03-01 2000-09-14 Sony Computer Entertainment Inc 描画装置及び該描画装置で被写界深度を表現する方法
JP3338021B2 (ja) * 2000-07-10 2002-10-28 コナミ株式会社 3次元画像処理装置及び3次元画像処理プログラムを記録した可読記録媒体

Also Published As

Publication number Publication date
JP4541786B2 (ja) 2010-09-08
CN1577401B (zh) 2010-05-05
US20050220358A1 (en) 2005-10-06
JP2005025766A (ja) 2005-01-27
FR2857133A1 (fr) 2005-01-07
CN1577401A (zh) 2005-02-09
EP1494174A1 (en) 2005-01-05
EP1494174B1 (en) 2018-11-07

Similar Documents

Publication Publication Date Title
KR20050004124A (ko) 흐림 생성 방법
CN109242943B (zh) 一种图像渲染方法、装置及图像处理设备、存储介质
US11699263B2 (en) Apparatus, method and computer program for rendering a visual scene
CN111243071A (zh) 实时三维人体重建的纹理渲染方法、系统、芯片、设备和介质
US6975329B2 (en) Depth-of-field effects using texture lookup
EP1582074B1 (en) Video filtering for stereo images
US9105117B2 (en) Methods and apparatus for coherent manipulation and stylization of stereoscopic images
EP1059611A1 (en) Image processing apparatus
JP2015522198A (ja) 画像に対する深度マップの生成
US6664971B1 (en) Method, system, and computer program product for anisotropic filtering and applications thereof
US9734551B1 (en) Providing depth-of-field renderings
US20230230311A1 (en) Rendering Method and Apparatus, and Device
Zhang et al. Depth of field rendering using multilayer-neighborhood optimization
US20110128286A1 (en) Image restoration apparatus and method thereof
Northam et al. Consistent stylization and painterly rendering of stereoscopic 3D images
KR20190122246A (ko) 영상처리방법과 장치, 기억매체 및 전자기기
WO2007017834A2 (en) Disparity value generator
JP7460641B2 (ja) 光強度画像を生成するための装置及び方法
Kim et al. Selective foveated ray tracing for head-mounted displays
JP7387029B2 (ja) ソフトレイヤ化および深度認識インペインティングを用いた単画像3d写真技術
CN108876912A (zh) 三维场景物理渲染方法及其系统
JP2003521857A (ja) ソフトウェア焦点外し3d方法、そのシステム及び装置
JP2004054635A (ja) 画像処理装置およびその方法
Sathyanarayana et al. Generating highly realistic 3D animation video with depth-of-field and motion blur effects
TW202439822A (zh) 使用光學運動補償和遊戲內運動補償的畫面插值

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid