KR20030081107A - Z-버퍼 이미지 데이터 및 알파 융합을 사용하는 필드심도를 갖는 이미지 - Google Patents

Z-버퍼 이미지 데이터 및 알파 융합을 사용하는 필드심도를 갖는 이미지 Download PDF

Info

Publication number
KR20030081107A
KR20030081107A KR10-2003-0022277A KR20030022277A KR20030081107A KR 20030081107 A KR20030081107 A KR 20030081107A KR 20030022277 A KR20030022277 A KR 20030022277A KR 20030081107 A KR20030081107 A KR 20030081107A
Authority
KR
South Korea
Prior art keywords
image
data
buffer
scene
blurry
Prior art date
Application number
KR10-2003-0022277A
Other languages
English (en)
Other versions
KR100549358B1 (ko
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 KR20030081107A publication Critical patent/KR20030081107A/ko
Application granted granted Critical
Publication of KR100549358B1 publication Critical patent/KR100549358B1/ko

Links

Classifications

    • 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
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Studio Circuits (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

장면의 선명한 이미지를 생성하고, 장면의 흐릿한 이미지를 생성하고, Z-버퍼 이미지 데이터를 생성하여, 선명한 이미지 및 흐릿한 이미지와 Z-버퍼 데이터의 알파 융합을 포함하는 알파 채널 RGBA 이미지를 생성함으로써 필드 심도의 정보를 갖는 컴퓨터 디스플레이를 위한 그래픽 이미지가 생성된다. 따라서, 알파 채널 RGBA 이미지는 컴퓨터 디스플레이 디바이스 상에 재생될 때 필드 심도 정보를 갖는 이미지를 제공한다.

Description

Z-버퍼 이미지 데이터 및 알파 융합을 사용하는 필드 심도를 갖는 이미지{Image with depth of field using Z-buffer image data and alpha blending}
발명의 분야
본 발명은 일반적으로 컴퓨터 그래픽에 관한 것으로, 더 상세하게는 현실성이 강화된, 컴퓨터에 의해 생성된 디스플레이 이미지에 관한 것이다.
관련 기술의 설명
컴퓨터에 의해 유지되는 3차원 공간 이외에는 어디에도 존재하지 않는 "가상 현실" 세계를 묘사하기 위해 컴퓨터들이 사용되고 있다. 오브젝트들이 가상 현실 세계에 "존재"할 수 있고, 가상 현실의 좌표 공간에서 돌아다닐 수 있다. 이러한 세계들은 연구 조사 및 이벤트 시뮬레이션들과 같이 실 오브젝트들을 사용하기에는 실용적이지 않은 실세계 이벤트들의 시뮬레이션에 있어 꽤 유용하고, 컴퓨터 게임 및 영화 작업들(에니메이션)과 같은 엔터테인먼트 목적들에 있어서도 유용하다. 컴퓨터 그래픽 분야는 컴퓨터의 가상 현실 세계를 묘사하는 이미지들에 더 큰 현실성을 제공하려고 하고 있다.
컴퓨터 디스플레이 이미지는 화상 요소들(이들 각각을 픽셀이라고 함)의 조합으로 명시된다. 대부분의 종래의 텔레비전 이미지가 명시되는 것과 같이, 디스플레이 이미지 내의 픽셀들은 적색, 청색, 녹색 정보의 조합을 명시한다. 각 픽셀은 이미지의 적색, 청색, 녹색 픽셀 각각에 대한 색 강도를 명시하는 데이터와 관련된다. 색 강도 데이터는 통상적으로 8-비트 데이터 워드로 표시된다. 대부분의 가상 현실 시뮬레이션들은 모양, 크기, 위치 및 색과 같은 관련 특징들을 갖는 데이터 오브젝트들로서 한 장면 내에 오브젝트들을 표시한다. 오브젝트가 컴퓨터 디스플레이 상에 묘사되거나 렌더링될 때, 그래픽 처리기는 이미지의 묘사를 위해 적색, 청색, 녹색 픽셀 정보의 적절한 혼합을 결정하고, 각 픽셀에 대한 적색, 청색, 녹색의 정확한 혼합을 위해 비디오 정보를 발생한다. 디스플레이 디바이스들은 이미지들이 생성되는 상이한 크기의 픽셀들을 가질 수도 있다. 예를 들어, 많은 컴퓨터 평면 디스플레이들은 약 0.29㎜(0.0116 인치)의 직경을 각각 갖는 개별적인 원형 픽셀들을 가질 수도 있다.
컴퓨터 그래픽 처리기 또는 디스플레이 처리기는 컴퓨팅 디바이스용 화상 렌더링 처리를 제공하여, 컴퓨터 응용 프로그램에 의해 생성된 이미지들이나 컴퓨터에 의해 발생된 화상들의 다른 소스가 적절히 디스플레이된다. 컴퓨터 그래픽은 컴퓨터 기반 모델들로부터 오브젝트들의 회화적 합성에 기초하여 오브젝트들의 이미지들 및 모델들의 생성, 저장, 조작을 수반한다. 오브젝트들의 생성, 저장 및 조작은 실시간으로 발생할 수도 있고, 키보드, 디스플레이 마우스, 제어기 또는 터치-스크린 디스플레이 패널과 같은 입력 디바이스와 컴퓨터 사용자의 대화식 처리를 수반할 수도 있다. 화상 렌더링 처리의 중요한 부분은 이미지들 내의 오브젝트들의 위치와 움직임이 2차원 및 3차원 공간에서 조심스럽게 재생되는 이미지 처리를 포함한다.
예를 들어, 어떤 오브젝트들을 표시하고 어떤 것을 렌더링되거나 묘사된 이미지로 보여줄지를 결정하기 위해서, 그래픽 처리기는 컴퓨터에 의해 묘사된 장면 내에서 오브젝트의 포인트들을 나타내는, 장면 내의 모든 픽셀들에 대한 위치 정보를 유지한다. 일부 위치 정보는 이미지에 대한 Z-버퍼의 형태로 유지된다. 장면의 이미지 또는 프레임에 대한 Z-버퍼는 데이터 값들의 세트이고, 이미지 내의 각 픽셀에 대한 하나의 데이터 값은 장면 내의 오브젝트의 위치를 결정하는 좌표에 기초한다. 즉, Z-버퍼 데이터는 오브젝트의 픽셀이 카메라 시점(perspective)으로부터 얼마나 멀리 있는지를 나타내기 위해 사용된다. 따라서, 디스플레이 이미지 내의 각 픽셀에 대해 하나의 Z-버퍼 데이터 엔트리가 존재하고, 그래픽 처리기는 컴퓨터 모델 내의 상기 픽셀의 위치를 명시하는 데이터를 유지한다.
각 Z-버퍼 데이터 포인트는 32-비트 데이터 워드와 같은 데이터 워드로 표현될 수도 있다. 예를 들어, 에이. 와트(A. Watt) 및 엠. 와트(M. Watt)(ACM 출판사, 1992년)의 "개선된 에니메이션 및 렌더링 기술(Advanced Animation and Rendering Techniques)"의 22페이지, 1.5절 "숨겨진 표면 제거 알고리즘(Hidden surface removal algorithm)"을 참조한다. 컴퓨터 이미지의 충실도(fidelity) 및 디테일은 Z-버퍼로 구체화된 오브젝트 위치 정보에 관한 필수 수학적 계산들을 수행하기 위한 그래픽 처리기의 능력에 부분적으로 의존하고, 상업적으로 이용 가능한 그래픽 처리기들은 수학적 처리 능력들 및 다른 이미지 처리 능력과 관련하여 지속적으로 개선되고 있다.
컴퓨터에 의해 묘사된 가상 현실 이미지들은 통상적으로 실제 오브젝트들의 (사진들 또는 비디오 프레임들과 같은) 실 이미지들과는 다른 외관을 갖는다. 가상 현실의 컴퓨터 이미지들과 실제 물리적 오브젝트들의 이미지들간의 불일치에 대한 이유들 중 하나는 가상 현실 이미지들이 예측 필드 심도 정보를 사실적으로 나타내지 않기 때문이다. 일반적으로, 필드 심도는, 오브젝트가 관찰자의 시점에 근접한지 또는 멀리 있는지의 여부에 의존하여, 인간의 눈이 이미지 내의 오브젝트들에 대해 지각할 것으로 예상되는 디테일의 변화량과 관련된다. 예를 들어, 관찰자의 시점으로부터 멀리 있는 사진 내의 오브젝트들은 더 적은 인식 가능한 이미지 디테일들을 갖고, 관찰자와 근접한 오브젝트들보다는 덜 명확할 것이다. 따라서, 멀리 있는 오브젝트들은 "흐린(fuzzy)" 외관을 갖고, 근접한 오브젝트들과 같이 선명하고 명확하지 않다.
대부분의 가상 현실 이미지들의 "만화와 같은" 외관에 대한 이유들 중 하나는, 이미지들 내의 근접한 오브젝트들이 통상적으로 멀리 있는 오브젝트들보다 더 선명하지 않고 더 많은 디테일을 갖지 않으며, 멀리 있는 오브젝트들이 근접한 오브젝트들보다 더 희미하게 보여지지 않기 때문이다. 즉, 필드 심도는 가상 현실 이미지 전체에서 일정하다. 이것은 "실세계" 이미지들의 외관과 반대이다. 따라서, 오브젝트가 이미지 내에서 근접하거나 또는 멀리 있을 때 오브젝트의 인식 가능한 디테일들이 예측된 방식으로 변하지 않을 때 만화와 같은 외관이 발생한다. 더 현실적인 외관은 근접한 오브젝트들이 더 많은 디테일을 갖고, 멀리 있는 오브젝트들보다 선명할 필요가 있다.
컴퓨터 이미지 디스플레이들에서 강화된 필드 심도 정보를 제공하기 위해 몇몇 기술들이 사용되어 왔다. 예를 들어, 컴퓨터에 의해 발생된 사전 렌더링된 이미지에 필드 심도 정보를 통합하기 위해 확률론적 샘플링 기술이 분배 광선 트레이싱(distributed ray tracing)에 사용된다. 다른 후처리 기술은, 사용되고 있는 렌즈 구경 및 Z-버퍼 값과 관련된 것으로서 각 이미지 포인트에 대한 혼동 원(the circle of confusion)의 강도 분포 및 크기를 결정하기 위해 픽셀 강도 및 Z-버퍼 이미지 심도 데이터를 사용한다. 출력 이미지 내의 각 포인트의 강도는 각 포인트에서 겹쳐지는 혼동 원들의 강도들의 가중 평균치로서 계산된다. 이 기술은 제이. 폴리(J. Foley) 등의 "Computer Graphics: Principles and Practice)" 2판(Addision-Wesley Publishing Company, Inc., 1996), 16.10절 774-775 페이지에 참조되고, 포트메실(Potmesil) 및 챠크라바티(Chakravarty)에 의해 저술되어 있다. 그러나, 이 기술들은 후처리 기술들이고 실시간 처리시 이미지들을 렌더링하기 위해 사용되지는 않는다. 따라서, 이 기술들은 임의의 대화식 사용에 대해서는 적절하지 않다.
도 1은 컴퓨터의 그래픽 렌더링 처리에 의해 생성될 수 있는 매우 선명한 이미지를 나타내는, 장면의 컴퓨터 디스플레이 이미지를 도시하는 도면.
도 2는 장면에 대한 Z-버퍼 데이터의 8-비트 표시를 나타내는, 도 1의 장면의 컴퓨터 디스플레이 이미지를 도시하는 도면.
도 3은 도 1의 매우 선명한 장면의 흐릿한 이미지 버전을 나타내는, 도 1의 장면의 컴퓨터 디스플레이 이미지를 도시하는 도면.
도 4는 알파 채널로서 도 2의 Z-버퍼 이미지 데이터를 사용하여 도 3의 흐릿한 이미지와 도 1의 선명한 이미지의 알파 융합을 나타내는, 도 1의 매우 선명한 장면의 컴퓨터 디스플레이 이미지를 도시하는 도면.
도 5는 알파 융합을 위해 도 2의 Z-버퍼 이미지 데이터를 사용하는 도 3의 흐릿한 이미지와 도 1의 매우 선명한 이미지의 융합을 도시하는 도면.
도 6은 역전된 대응 Z-버퍼 이미지를 나타내는, 도 1의 장면의 컴퓨터 디스플레이 이미지를 도시하는 도면.
도 7은 알파 채널로서 도 6의 역전된 Z-버퍼 이미지 데이터를 사용하여, 도3의 흐릿한 이미지와 도 1의 매우 선명한 이미지의 결합의 결과를 나타내는, 도 1의 장면의 컴퓨터 디스플레이 이미지를 도시하는 도면.
도 8은 도 2와 도 6의 이미지들의 중간인 8-비트 Z-버퍼 이미지를 도시하는 도면.
도 9는 도 3의 흐릿한 이미지의 한 색이 도 9의 이미지를 생성하기 위해 그 자체에 복사되는 색 채널 복사 처리에 의해 생성되는 흑백(컬러가 아님)의 흐릿한 이미지를 도시하는 도면.
도 10은 도 1과 도 9를 합성하여 생성되는 채도가 감소된 이미지를 도시하는 도면.
도 11은 도 1 내지 도 10에 도시된 이미지들이 생성될 수 있는 컴퓨터 시스템 및 디스플레이의 블록도.
도 12는 도 11에 도시된 컴퓨터 시스템의 상세 블록도.
도 13은 본 발명에 따라 생성된 이미지들을 디스플레이하기 위한 컴퓨터 시스템의 실시예의 상세 블록도.
도 14는 도 11 내지 도 13에 도시된 시스템과 같은 본 발명에 따라 구성된 컴퓨터 시스템의 예시적인 디스플레이 디바이스 픽셀을 도시하는 도면.
도 15는 도 11 내지 도 13에 도시된 컴퓨터 시스템의 단일 Z-버퍼 엔트리의 표시를 도시하는 도면.
도 16은 도 11 내지 도 13에 도시된 컴퓨터 시스템들의 디스플레이 디바이스들에 대한 프레임 버퍼 환경을 도시하는 도면.
도 17은 본 발명에 따라 강화된 필드 심도 정보를 갖는 이미지들을 생성하기 위해 도 11 내지 도 13의 컴퓨터 시스템들에 의해 수행되는 처리의 흐름도.
* 도면의 주요 부분에 대한 부호의 설명 *
1110 : 비디오 게임 시스템1200 : CPU
1210 : GPU1220 : IOP
1230 : IOP 메모리1326 : 프레임 버퍼
상술된 논의로부터, 강화된 필드 심도 정보를 갖는 컴퓨터에 의해 묘사된 현실적인 이미지들이 필요하다는 것이 명백하다. 본 발명은 이러한 필요성을 충족한다.
본 발명은 또렷한 표시에 부합하는 장면의 선명한 이미지와 장면의 흐릿한 이미지 표시를 결합한 다음, Z-버퍼 데이터에 따른 선명한 이미지 및 흐릿한 이미지를 합성하여 선명한 이미지와 흐릿한 이미지간에 알파 융합(alpha blend)을 생성함으로써 3차원 장면의 필드 표시의 개선된 심도를 디스플레이 이미지에 제공하며, 상기 Z-버퍼 데이터는 숨겨진 표면 제거(hidden surface removal)를 위한 그래픽 처리기들에 의해 통상적으로 사용된다. 이 방법에서, Z-버퍼로부터의 이미지 데이터는 알파 채널로서 사용되고, 필드 심도 정보를 갖는 알파 채널 데이터 이미지(RGBA 이미지)를 생성하기 위해 선명한 이미지와 흐릿한 이미지의 색 채널 데이터와 융합된다. 이것은 한 거리에서 오브젝트들에 대해 더 선명하고 다른 거리에서는 오브젝트들에 대해 덜 뚜렷하며 이미지의 배경 영역들에서는 더 낮은 채도를 갖는 장면의 더 현실적인 이미지 표시를 제공한다.
본 발명의 다른 특징들 및 이점들은 본 발명의 원리들을 예시적으로 설명하는 이하 바람직한 실시예들의 상세한 설명으로부터 명백하다.
본 발명은 장면들의 표시를 위해 종래의 컴퓨터 디스플레이 색 모델들을 이용하는 예시적인 디스플레이 환경과 관련하여 기술된다. 예시적인 실시예는 단지 설명을 위한 목적으로 사용된다. 본 발명은 이 예시적인 실시예로 제한되는 것으로 의도되어서는 안된다. 이 기술분야에 숙련된 사람들은 예시적인 실시예의 상세한 설명이 본 발명의 사상을 벗어나지 않고 다른 그래픽 처리 환경들에 적용될 수도 있다는 것을 알 것이다.
도 1은 종래의 컴퓨터 그래픽 렌더링 처리에 의해 생성될 수 있는 매우 선명한 이미지를 도시하는, 컴퓨터에 의해 발생된 장면의 컴퓨터 디스플레이 이미지이다. 도 1은 매우 선명하고 또렷한 계단 장면 이미지를 도시하여, (이미지에서 관찰자와 가장 근접한) 전경의 계단들이 (관찰자와 가장 멀리 있는) 단지 배경의 계단들만큼 선명하다는 것을 유념해야 한다. 마찬가지로, 장면 내 기둥들은 장면의 정면에서 가까운 기둥들이 단지 멀리 있는 기둥들만큼 선명하다. 이것은 컴퓨터에 의해 렌더링되는 많은 이미지들의 특징이고, "만화적"인 것으로 특징지어지는 외관을 발생한다.
더 상세하게, 사진 이미지(및 실제 시력으로 보는 것)는 통상적으로 무한한 선명도를 갖지 않지만, 통상의 애니메이션 장면 또는 다른 컴퓨터에 의해 묘사된 이미지는 무한한 선명도를 갖는다. 본 발명은 초기의 매우 선명한 이미지보다 더 많은 비주얼 정보를 사용하지 않고 더 현실적인 이미지를 생성할 수 있으므로, 본 발명에 따라 생성된 이미지는 필드 심도 정보를 포함하고, 장면 내 오브젝트들의 포커스를 변경하거나 선명도를 다르게 할 수 있으며, 상기 포커스 변경은 관찰자에 대한 장면 내 오브젝트들의 이미지 거리에 의존한다. 이 방법에서, 이미지들의 시퀀스로부터의 개별적인 이미지들은 정확한 필드 심도 이미지 처리(depth-of-field image processing)를 부가하도록 처리될 수도 있다. 따라서, 애니메이션 장면들의 시퀀스가 차례로 처리될 수 있으므로, 전체 애니메이션 시퀀스는 더 현실적으로 보여질 수 있다. 또한, 이하 더 설명되는 본 발명에 따른 이미지 처리는 실시간 렌더링 환경에서 수행될 수 있으며, 따라서, 개선된 필드 심도 표시들에 의한 대화식 그래픽 처리를 지원하게 된다.
도 2는 도 1의 장면의 컴퓨터 디스플레이 이미지로서, 상기 장면에 대한 Z-버퍼 데이터의 8-비트 표시를 나타낸다. 상술된 바와 같이, 가상 현실 세계에서 3차원 오브젝트들의 대부분의 컴퓨터 그래픽 디스플레이들은 가상 현실 세계의 각 오브젝트로부터 관찰자 또는 카메라 시점까지의 거리를 추적하는 Z-버퍼 데이터 저장소를 사용하여 렌더링된다. 예를 들어, 도 2는 사용자(카메라 시점)까지의 거리가 증가함에 따라 이미지 내의 각 픽셀이 어두워지는 Z-버퍼 데이터를 도시한다. 따라서, 근접한 오브젝트들은 더 밝고 멀리 있는 오브젝트들은 더 어둡다. Z-버퍼 데이터는 장면 내 오브젝트들에 대한 위치 정보를 포함한다. 이러한 데이터는 통상적으로 64-비트 또는 심지어는 128-비트 컴퓨팅 능력을 구비하는 그래픽 처리기의 산술 처리 능력에 따른 해상도로 유지된다. 이하 설명되는 바와 같이, 본 발명은 픽셀 데이터를 처리하기 위해 Z-버퍼 데이터를 사용하도록 하고, 상기 픽셀 데이터는 통상적으로 픽셀당 8비트의 비디오 디스플레이 해상도로 유지된다. 본 발명은 게임 콘솔, 퍼스널 컴퓨터 및 워크스테이션들을 포함하여 광범위한 컴퓨팅 플랫폼들에 사용하기에 적합하다. 따라서, 컴퓨팅 플랫폼 상에서 본 발명을 구현하기 위해 비상한 양의 컴퓨팅 능력이 필요한 것은 아니다.
도 3은 도 1의 장면의 컴퓨터 디스플레이 이미지로서, 도 1의 장면의 흐릿한 이미지를 도시한다. 도 3은 도 1의 장면을 나타내는 데이터만으로 시작하여 생성될 수 있다. 도 3의 흐릿한 이미지는, 예를 들어, MIP-매핑이라고 하는 처리를 통해, 또는 선명한 이미지를 그 자신의 위에서 미리 결정된 이동분만큼 이동시킴으로써 생성될 수도 있다. 예를 들어, 흐릿한 이미지는 선명한 이미지를 수평 및 수직 방향으로 1-픽셀 오프셋만큼 상기 선명한 이미지 위에 붙이는 오프-스크린 붙이기 처리(off-screen pasting process)에 의해 생성될 수도 있다. 흐릿한 이미지를 제공하는 다른 수단은 이 기술분야에 숙련된 사람들에게 발생할 것이다. 예를 들어, MIP-매핑 동작은, 그래픽 처리기가 다양한 디테일 레벨들에서 장면 내 오브젝트에 대한 텍스처(texture)를 묘사하는 원본의 다수의 사본들(MIP-맵들)을 만들어, 관찰자로부터 오브젝트까지의 거리에 따라 MIP-맵을 선택하는 텍스처 매핑 기술을 포함한다.
처리될 장면에 대한 선명한 이미지(도 1) 및 흐릿한 이미지(도 3)가 얻어진 다음, 일반적으로 컴퓨터 디스플레이 시스템의 그래픽 처리기에 의해 사용되는 Z-버퍼 데이터가 이용된다. 상술된 바와 같이, Z-버퍼는 일반적으로 숨겨진 표면 제거를 위한 컴퓨터 이미지 처리 환경에 사용되며, 상기 숨겨진 표면 제거는 가시적인 표면 결정(visible surface determination)이라고도 한다. Z-버퍼는 렌더링될 이미지의 각 픽셀에 대한 거리 데이터를 포함한다. 숨겨진 표면 제거는, 컴퓨터에 의해 발생된 장면 내의 오브젝트가 렌더링될 때, Z-버퍼의 픽셀에 대한 현재 거리보다 멀리 있는 관찰자와 관련된 이미지 픽셀 위치에 오브젝트에 대한 각 포인트가 위치되는지의 여부를 결정하는 것을 포함한다. 오브젝트에 대한 포인트가 상기 픽셀 위치에 대한 현재 Z-버퍼 값보다 멀리 있을 경우, 상기 오브젝트 픽셀 포인트는 렌더링된 이미지에서 눈에 보이지 않을 것이며 그래픽 처리기에 의해 묘사되지 않을 것이다.
Z-버퍼 숨겨진 표면 제거 처리 기술은, 예를 들어, 폴리 등(애디슨-웨슬리 출판사)에 의한 "컴퓨터 그래픽: 원리와 실행", 2판, 15.4절(Z-버퍼 알고리즘)(668-672 페이지)에 기술되어 있다.
본 발명은 Z-버퍼 픽셀 거리 데이터를 이용하여 알파 융합 이미지라고 하는 것을 생성하여, Z-버퍼 데이터로부터 생성된 이미지와 선명한 이미지 및 흐릿한 이미지를 조합한다. 이 기술분야에 숙련된 사람들은 컴퓨터 디스플레이 이미지가 통상적으로 정보의 3개의 색 채널들과 정보의 알파 채널을 조합함으로써 생성된다는 것을 이해할 것이다. 색 채널들은 장면의 색 정보를 나타내는 적색, 녹색 및 청색 픽셀 이미지 데이터를 포함한다. 데이터의 알파 채널(α 채널)은, 완전히 불투명한 것에서 투명한 것까지의 범위를 갖는, 이미지 픽셀들의 불투명도를 나타낸다. 대부분의 처리 시스템들 및 색 모델들에 있어서, 상기 4개의 이미지 데이터 채널들 각각은 각 픽셀에 대해 8비트의 정보로 표시된다.
이 기술분야에 숙련된 사람들은 "알파 융합" 동작을 통해 이미지를 합성하는 기술을 잘 알 것이다. 알파 채널 불투명도 데이터는 적절한 투명도 값들을 갖는 "알파 융합된" 이미지를 생성하기 위해 적색, 녹색, 청색 이미지 성분들의 융합을 제어하기 위해 사용된다. 즉, 종래의 시스템에서, 이미지 정보의 적색, 녹색, 청색 채널들은 알파 채널 불투명도 정보와 함께 합성되어, RGBA 색 정보 모델이라고 하는 것을 생성한다. 따라서, 각 픽셀에 대한 알파-채널 정보 및 적색, 녹색, 청색 이미지 정보를 명시함으로써 그래픽 처리기에 의한 렌더링 목적으로 장면이 완전히 묘사된다.
예를 들어, 제이. 폴리 등(애디슨-웨슬리 출판사)에 의한 "컴퓨터 그래픽: 원리와 실행), 2판, 1996년, 17.6절("이미지 합성")(835-843 페이지)에 알파 융합 합성 처리가 서술되어 있다. 합성 처리의 다른 서술은 오스머(Othmer) 등의 "마스크 이미지를 사용하여 소스 및 목적 이미지를 합성하는 방법(Method for Compositing a Source and Destination Image Using a Mask Image)"의 미국 특허 제 5,379,129 호에 서술되어 있다.
본 발명은 선명한 이미지와 흐릿한 이미지의 융합을 제어하기 위해 알파 채널로서 Z-버퍼 데이터를 사용하여, 선명한 이미지와 흐릿한 이미지와 Z-버퍼 데이터의 합성 처리를 포함한다. 더 상세하게, Z-버퍼 데이터는 관찰자의 시점으로부터의 각 픽셀의 거리에 따라 흐릿한 이미지의 반투명도를 결정하기 위해 사용된다. 바람직한 실시예에서, Z-버퍼의 매 검정색(불투명) 픽셀에 대해서, 흐릿한 이미지 데이터의 완전한(100%) 값이 선명한 이미지와 합성하기 위해 사용된다. Z-버퍼의 매 흰색(투명) 픽셀에 대해서, 흐릿한 이미지의 어던 것도(0%)는 선명한 이미지와 합성되지 않는다. 100% 내지 0%의 회색 농도의 픽셀들에 대해서, 대응하는 비례 백분율의 선명한 이미지와 흐릿한 이미지가 함께 합성된다. 따라서, 다른 이미지와 합성될 한 이미지의 백분율을 결정하기 위해 선형 보간이 사용된다. 이 방법에서, 장면 이미지의 Z-버퍼 데이터가 필드 심도 알파 채널로서 사용되고 있다.
도 4는 도 1의 장면의 컴퓨터 디스플레이 이미지로서, 본 발명에 따라 알파 채널로서 Z-버퍼 이미지 데이터를 사용하여, 도 1의 매우 선명한 이미지와 도 3의흐릿한 이미지의 알파 융합의 결과를 보여준다. 종래의 알파 융합 처리는 선명한 이미지, 흐릿한 이미지, Z-버퍼 데이터의 조합을 합성 처리하도록 선택함으로써 본 발명에 따른 융합 이미지를 생성하기 위해 사용될 수 있다. 도 4는 전경에서 선명하고 뚜렷한 계단들을 갖는 이미지를 도시하지만, 배경(관찰자로부터 멀리 있음)에서의 계단들은 선명하고 뚜렷하지 않고 오히려 흐린 것으로서 도시되어 있다는 점을 유념해야 한다. 이것은 실재 장면들의 전형적인 사진들에서 관찰되는 필드 심도와 더 유사하고 더 현실적이다.
도 5는 융합의 제어를 위한 도 2의 Z-버퍼 이미지 데이터를 사용하여 도 1의 매우 선명한 이미지와 도 3의 흐릿한 이미지의 융합을 그래픽적으로 도시한다. 따라서, 도 5는 도 1의 매우 선명한 이미지(502)와 도 3의 흐릿한 이미지(504)를 도 2의 8-비트 Z-버퍼 이미지(506)와 결합(합성)하여, 필드 심도 정보가 부가된 도 4의 이미지(508)를 생성하는 것을 도시한다.
"역(reverse)" 필드 심도 이미지는 본 발명의 동일한 기술을 사용하여 쉽게 생성될 수 있다. 본 명세서에서 사용되는 역 이미지는 관찰자에게 더 근접한 장면 내의 오브젝트들은 흐리고 덜 뚜렷하며 관찰자로부터 멀리 있는 오브젝트들은 선명하고 더 뚜렷한 이미지를 의미한다. 이것은 통상적으로 사진들에서 관찰되는 것과 반대이므로, 역 필드 심도 이미지라고 한다.
역 필드 심도 이미지는 역 Z-버퍼 데이터 세트를 이용함으로써 쉽게 생성될 수 있다. 즉, 역 Z-버퍼 데이터는 검정색(불투명)의 Z-버퍼 픽셀들이 백색(투명)으로 변경되고 백색의 Z-버퍼 픽셀들이 검정색으로 변경될 때 생성된다. 그에 따라, 중간 회색 농도들이 유사하게 역전된다. 역 필드 심도 데이터가 선명한 이미지 및 흐릿한 이미지와 합성될 때, 역 장면 이미지가 생성된다. 이 기술분야에 숙련된 사람들은 역 이미지의 중간 값들이 검정색에서 흰색으로 변경되는 Z-버퍼 값들의 선형 보간에 의해 결정될 수도 있다는 것을 알 것이다.
도 6은 도 1의 장면의 컴퓨터 디스플레이 이미지로서, 역전된 8-비트 Z-버퍼 데이터를 나타낸다. 이 점에 있어서, 도 6은 도 2의 역 이미지이다. 도 5에서, 관찰자에게 근접한 오브젝트들은 검정색(불투명)으로 보여지지만 관찰자로부터 멀리 있는 오브젝트들은 흰색(투명)으로 보여진다는 점을 유념해야 한다. 역 필드 심도 데이터는 이미지에 대한 포커스의 변경된 포인트를 나타내고 일시적인 효과들을 생성하는데 유용할 수도 있다.
도 7은 도 1의 장면의 컴퓨터 디스플레이 이미지로서, 도 1의 선명한 이미지와 도 3의 흐릿한 이미지를 조합한 결과를 보여주며, 포커스의 변경된 포인트를 보여주기 위한 합성에 있어 알파 채널로서 도 6의 역전된 Z-버퍼 이미지 데이터를 사용한다. 도 7은 (관찰자와 근접한) 전경의 오브젝트들은 흐릿하고 뚜렷하지 않지만, (관찰자로부터 멀리 있는) 배경의 오브젝트들은 선명하고 더 뚜렷한 것을 도시한다. 포커스 시점의 관점에서, 도 7은 도 4의 "반대"로 특징지어질 수도 있다.
역 Z-버퍼 데이터에 의해 생성될 수 있는 유용한 효과들 중 하나는 "랙 포커스(rack focus) 효과로서, 이는 장면의 연속하는 컴퓨터 이미지들이 장면 이미지 내 포커스의 포인트를 효과적으로 변경하기 위해 상이한 Z-버퍼 데이터 세트들을 사용하여 생성될 수 있다. 예를 들어, 도 1과 같은 장면의 매우 선명한 이미지는,중간에 있는 중간 Z-버퍼 데이터뿐만 아니라, 도 2에 대한 Z-버퍼 데이터로 시작하여 도 6에 대한 Z-버퍼 데이터로 종료되는 Z-버퍼 데이터와 실시간으로 연속적으로 조합될 수도 있다.
도 8은 도 2와 도 6 사이의 중간에 있는 Z-버퍼 데이터로부터 생성된 중간 Z-버퍼 이미지를 도시한다. 도 8은 콘트라스트가 감소된 이미지를 효과적으로 생성한다. 선명한 이미지와 흐릿한 이미지(각각 도 1, 도 3)가 도 2 내지 도 8(및 도 6에서 중단됨(또는 그 역도 성립))의 연속하는 Z-버퍼 이미지들 각각과 알파-융합(합성)되고,ㄴ 이미지들의 시퀀스로 보고 있는 사람에게 나타날 것이며, 그에 의해 포커스 변경이 이루어진다. 즉, 연속하는 합성 이미지들을 보고있는 사람은, 도 2 내지 도 6의 Z-버퍼 이미지들과 합성된 이미지들에 대응하는, 장면의 전방에서 후방으로의 포커스의 변경 포인트를 "볼(see)" 것이다. 연속하는 합성 이미지들 중 어떤 이미지 내 포커스의 포인트는 특정 합성 이미지에 대한 참조(이미지 위치)의 Z-버퍼 프레임에 대응할 것이다. 따라서, 도 4 내지 도 7 중간에서의 효과는 도 8에 도시된 바와 같이 중간 역 Z-버퍼 데이터 세트들을 사용하여 생성될 수도 있다.
따라서, 합성 장면 이미지들의 시퀀스는 상술된 것과 같은 다수의 중간 이미지들을 사용하여 생성될 수도 있으므로, 장면 이미지들의 시퀀스는 (도 4의) 전경으로부터 (도 7의) 배경으로 그 사이의 포인트들에서 관찰자 포커스가 매끄럽고 점차적으로 "이동(walk)"할 것이다. Z-버퍼로부터의 (도 4와 같은) 시작 포인트 이미지와 Z-버퍼로부터의 (도 7과 같은) 종료 포인트 이미지가 관찰자에 대해 매끄러운 이행을 보증하는 정기적인 그래픽 간격들로 다수의 중간 합성 이미지들을 생성하기 위해 사용될 수도 있다. 예를 들어, 시작 이미지와 종료 이미지간의 간격들을 균일하게 중간 Z-버퍼 이미지들을 생성하기 위해 선형 보간이 사용될 수도 있다. 중간 Z-버퍼 이미지들의 시퀀스는 차례로 선명한 이미지 및 흐릿한 이미지와 합성될 것이다. 처리기 메모리 내에 다수의 중간 이미지들에 대한 픽셀 데이터를 유지하기 위해 일시적인 데이터 저장소가 사용될 수도 있다. 상술된 바와 같이, 이러한 이미지들은 종래의 이미지 처리 하드웨어를 사용하여 실시간으로 생성될 수도 있다. 다른 시각적 효과들이 본 발명의 설명들을 사용하여 생성될 수 있다.
본 발명의 기술에 의해 생성될 수 있는 다른 시각적 효과는 이미지에 감소된 채도를 제공하는 것이다. 예를 들어, (도 3에 도시된 흐릿한 이미지와 같은) 흐릿한 이미지에 대한 청색 채널의 색조는 대기의 아지랑이 효과를 생성하기 위해 정점-색 조작(vertex-color manipulation)을 통해 청색 스펙트럼 또는 다른 색 쪽으로 이동될 수도 있다. 이 기술분야에 숙련된 사람들은 종래의 그래픽 처리 시스템들이 상기 조작을 수행하기 위해 어떻게 사용될 수 있는지를 알 것이다. 유사하게, 흐릿한 이미지의 적색 채널 데이터는 흑백의 흐릿한 이미지를 생성하기 위해 흐릿한 이미지의 녹색 채널 데이터와 청색 채널 데이터에 복사될 수도 있다. 도 9는 상기 처리에 의해 생성된 흑백의 흐릿한 이미지의 예를 도시한다. 결과의 흑백의 흐릿한 이미지는 매우 선명한 이미지와 알파-융합되어 장면의 원거리 영역들에서 덜 채색된 현실적인 이미지를 생성할 수 있다. 도 10은 도 1과 같은 매우 선명한 이미지와 도 9와 같은 흑백의 흐릿한 이미지를 알파-융합함으로써 생성된 채도가 감소된 이미지의 예를 도시한다.
하드웨어 구성
그래픽 처리 능력을 갖는 다양한 컴퓨터 구성들이 실시간으로 상술된 개선된 그래픽 이미지들을 제공하기 위해 사용될 수 있다. 이러한 구성들로는 정보 처리 시스템, 퍼스널 컴퓨터 및 비디오 게임 시스템들이 있다.
상술된 처리는 상술된 바와 같이 숨겨진 표면 제거를 위해 Z-버퍼 데이터를 이용하고 RGBA 데이터를 생성하기 위해 이미지 데이터를 합성하는 컴퓨터 그래픽 처리기의 쉽게 이용할 수 있는 하드웨어 구성요소들을 사용할 수 있다. 본 발명에 따르면, 그래픽 처리기의 동작은 알파 융합 채널로서 Z-버퍼 데이터를 이용하기 때문에, 상술된 처리가 실시간으로 수행될 수 있도록 한다. 실시간 처리는 상술된 바와 같은 이미지 처리를 구현하는데 있어 큰 유연성을 허용하여, 게임과 같은 대화형 응용들에 대해 적합하다. 대안적으로, 본 발명의 처리는 본 명세서에 설명되는 이미지 처리를 수행하기에 특히 적합한 하드웨어와 소프트웨어의 조합으로 구현될 수도 있다.
도 11은 본 발명에 따른 그래픽 처리를 제공하는 정보 처리 또는 비디오 게임 시스템(1100)의 개략도이다. 비디오 게임 시스템(1100)은 비디오 게임 주 유닛(1110) 및 주 유닛(1110) 상에 각 제어기 인터페이스들(1125)을 통해 주 유닛(1110)에 통신 가능하게 연결되는 하나 이상의 제어기들(1120)을 포함한다. 제어기들(1120) 각각은 사용자 명령들을 수신하기 위한 입력 디바이스를 포함한다.
비디오 게임 시스템(1100)은 주 유닛(1110)에 통신 가능하게 연결되는 오디오-비주얼(AV) 출력 디바이스(1135)와 인터페이스한다. AV 출력 디바이스(1135)는 주 유닛(1110)으로부터 수신된 신호들에 따라 이미지 데이터를 디스플레이하기 위한 디스플레이 스크린(1140)을 포함한다. AV 출력 디바이스(1135)는 또한 주 유닛(1110)으로부터 수신된 신호들에 따라 오디오 데이터를 출력하기 위한 하나 이상의 사운드 스피커들(1145)을 포함한다.
주 유닛은 마그네틱 플로피 디스크, 광학 CD-ROM 디스크, CD-R 디스크, CD-RW 디스크, DVD 디스크 등과 같은 게임 프로그램 저장 매체를 수용하도록 구성되는 프로그램 판독기(1150)를 포함한다. 게임 프로그램 저장 매체는 비디오 게임과 같은 응용 프로그램을 주 유닛(1110)에 제공하기 위한 기록 매체이다. 주 유닛(1110)은 정보를 처리하여 게임 프로그램 저장 매체 상에 위치된 프로그램 명령들을 실행하도록 구성된다. 주 유닛(1110)은 프로그램 명령들에 따라 이미지 및 사운드 데이터를 AV 출력 디바이스(1135)에 출력한다. 주 유닛은 이하 더 상세히 설명되는 바와 같이 제어기들(1120)로부터 사용자 입력을 수신한다.
도 12는 도 11에 도시된 비디오 게임 엔터테인먼트 시스템의 예시적인 하드웨어 구성을 도시하는 블록도이다. 비디오 게임 시스템(1100)(도 11)은 주 메모리(1205)와 관련되는 중앙 처리 장치(CPU)(1200)를 포함한다. CPU(1200)는 OS-ROM(1260)에 저장되어 있거나 게임 프로그램 저장 매체로부터 주 메모리(1205)로 전달되는 프로그램 단계들의 제어하에서 동작한다. CPU(1200) 정보를 처리하여 프로그램 단계들에 따라 명령들을 실행하도록 구성된다.
CPU(1200)는 전용 버스(1225)를 통해 입력/출력 처리기(IOP)(1220)에 통신가능하게 연결된다. IOP(1220)는 CPU(1200)를 OS ROM(1260)에 연결하며, 상기 OS ROM은 운영 체제와 같은 프로그램 명령들을 저장하는 비휘발성 메모리로 구성된다. 명령들은 바람직하게 주 유닛(1110(도 11)의 시동시에 IOP(1220)를 통해 CPU에 전달된다.
CPU(1200)는 전용 버스(1215)를 통해 그래픽 처리 유닛(GPU)(1210)에 통신 가능하게 연결된다. GPU(1210)는 묘사 처리들을 수행하고 CPU(1200)로부터 수신된 명령들에 따라 이미지들을 공식화하도록 구성되는 묘사 처리기이다. 예를 들어, GPU(1210)는 CPU(1200)에 의해 발생되고 그로부터 수신되는 디스플레이 목록들에 기초하여 그래픽 이미지를 렌더링할 수도 있다. GPU는 그래픽 데이터를 저장하기 위한 버퍼를 포함할 수도 있다. GPU(1210)는 AV 출력 디바이스(1135)(도 11)에 이미지들을 출력한다.
IOP(1220)는 IOP 메모리(1230) 내에 저장되어 있는 명령들에 따라 다수의 주변 장치들과 CPU(1200) 사이에서의 데이터 교환을 제어한다. 주변 장치들은 하나 이상의 제어기들(1120), 메모리 카드(1240), USB 인터페이스(1245), 및 IEEE 1394 직렬 버스(1250)를 포함할 수도 있다. 부가적으로, 버스(1255)는 IOP(1220)에 통신 가능하게 연결된다. 버스(1255)는 OS ROM(1260), 사운드 처리기 유닛(SPU)(1265), 광학 디스크 제어 유닛(1275) 및 하드디스크 드라이브(HDD)(1280)를 포함하는 여러 개의 부가 구성요소들에 연결된다.
SPU(1265)는 CPU(1200) 및 IOP(1220)로부터 수신된 명령들에 따라 음악, 사운드 효과들, 음성들과 같은 사운드들을 발생하도록 구성된다. SPU(1265)는 파형데이터가 저장되는 사운드 버퍼를 포함할 수도 있다. SPU(1265)는 사운드 신호들을 발생하여 그 신호들을 스피커들(1145)(도 11)에 송신한다.
디스크 제어 유닛(1275)은, 예를 들어, 마그네틱 플로피 디스크, 광학 CD-ROM 디스크, CD-R 디스크, CD-RW 디스크, DVD 디스크 등과 같은 착탈 가능한 저장 매체를 허용하는 광학 디스크 드라이브를 포함할 수 있는 프로그렘 판독기(1150)(도 11)를 제어하도록 구성된다.
메모리 카드(1240)는 CPU(1200)가 데이터를 기록 및 저장할 수 있는 저장 매체를 포함할 수도 있다. 바람직하게, 메모리 카드(1240)는 IOP(1220)에 삽입되고 또한 그로부터 제거될 수 있다. 사용자는 메모리 카드(1240)를 사용하여 게임 데이터를 저장할 수 있다. 또한, 비디오 게임 시스템(1100)에는 바람직하게 게임 데이터가 기록되고 저장될 수 있는 적어도 하나의 하드디스크 드라이브(HDD)(1280)가 제공된다. IEEE 1394 직렬 버스(1250) 또는 USB(universal serial bus)(1245) 인터페이스와 같은 데이터 I/O 인터페이스는 바람직하게 데이터가 비디오 게임 시스템(1100)에 및 그로부터 전달될 수 있도록 하기 위해서 IOP(1220)에 통신 가능하게 연결된다.
본 발명에 따른 디스플레이 이미지들을 생성하는 것과 연관되는 처리의 보다 양호한 이해를 위해서, 이미지 처리 시스템의 더 상세한 설명이 이제부터 제공된다.
도 13은 가정용 비디오 게임 콘솔에 설치된 이미지 처리 시스템의 구성을 도시한다. 이미지 처리 시스템은 실질적으로 가정용 비디오 게임기, 마이크로컴퓨터, 또는 그래픽 컴퓨터 장치 디바이스에 사용하도록 설계되어 있다. 도 13의 실시예의 이미지 처리 시스템은 광학 디스크(예를 들어, CD-ROM)와 같은 기록 매체로부터 검색된 관련 데이터(예를 들어, 게임 프로그램들)를 제어함으로써 조작자가 게임을 할 수 있도록 하며, 또한 특정 포맷으로 데이터를 저장하기 위해 본 발명에 따라 설계된다.
더 상세하게, 도 13에 도시된 실시예의 이미지 처리 시스템은 중앙 처리 장치(CPU)(1304)와 (주변 장치 제어기(1306)를 포함하는) 그 주변 장치들을 갖는 주 제어기 모듈(1302), 실질적으로 프레임 버퍼(1326)에 이미지를 묘사하기 위한 그래픽 처리 유닛(GPU)(1324)으로 이루어지는 그래픽 모듈(1320), 사운드 처리 유닛(SPU)(1342)과 음악 또는 이펙트 사운드를 방출하기 위한 다른 디바이스들로 이루어지는 사우드 모듈(1340), 재생 데이터의 디코딩을 위한 보조 메모리 수단으로서 기능하는 광학(예를 들어, CD-ROM) 디스크 드라이브(1362)를 제어하기 위한 광학 디스크 제어기 모듈(1360), 제어기(1386)로부터의 명령 신호들의 입력과 서브 메모리(또는 메모리 카드)(1384) 상에 설정하는 게임 파라미터에 관한 정보의 입력 및 출력을 제어하기 위한 통신 제어기 모듈(1380), 및 주 제어 모듈(1302)로부터 통신 제어기 모듈(1380)까지 접속된 주 버스(1399)를 포함한다.
주 제어기 모듈(1302)은 CPU(1304), 인터럽트 동작들, 시간 시퀀스들, 메모리 동작들 및 DMA(direct memory access) 신호의 송신을 제어하기 위한 주변 장치 제어기(1306), 예를 들어, 2MB의 RAM으로 이루어지는 주 메모리(1308), 및 예를 들어, 512KB의 메모리로 이루어지는 ROM(1310)를 포함하며, 주 메모리(1308), 그래픽모듈(1320) 및 사운드 모듈(1340)을 동작시키기 위한 운영 체제를 포함하는 프로그램들이 저장되어 있다. CPU(1304)는 전체 시스템을 제어하기 위해 ROM(1310)에 저장된 운영 체제를 수행하기 위한 32-비트 RISC(reduced instruction set) 컴퓨터일 수도 있다. CPU(1304)는 또한 실재 저장을 제어하기 위한 스크래치 패드 메모리(scratch pad memory) 및 명령 캐시를 포함한다.
그래픽 모듈(1320)은 좌표 변환 처리를 수행하기 위한 좌표 계산용 산술 코프로세서를 갖는 GTE(1322), CPU(1304)로부터의 명령 신호들에 응답하여 이미지를 묘사하기 위한 GPU(1324), GPU(1324)에 의해 제공된 그래픽 데이터의 저장을 위한, 예를 들어, 1MB의 메모리를 갖는 프레임 버퍼(1326), 및 이산 코사인 변환과 같은 직교 변환 처리에 의해 압축 및 인코딩된 코딩 이미지 데이터를 디코딩하기 위한 이미지 디코더(1328)(이하, "MDEC"라고 함)를 포함한다. GTE(1322)는 다수의 산술 동작들을 병렬로 수행하기 위한 병렬 처리기일 수도 있고, 광원, 벡터 및 고정된 십진 포인트 표기 처리 매트릭스의 좌표 변환 및 계산을 위한 고속 동작들을 수행하기 위해 CPU(1304)에 대한 코프로세서로서 동작할 수도 있다.
더 구체적으로, GTE(1322)는 각 삼각형 폴리곤이 하나의 단색으로 묘사되는, 평면 음영 처리를 위해 폴리곤들의 좌표 계산을 통상 초당 1.5백만번 수행할 수 있다. 이것은 이미지 처리 시스템이 CPU(1304)에 대한 부하를 최소화할 수 있도록 하며, 따라서, 더 고속으로 좌표 계산을 수행한다. GPU(1324)는 폴리곤 또는 그래픽 묘사를 위한 CPU(1304)로부터 프레임 버퍼(1326)로의 폴리곤 묘사 명령에 응답한다. GPU(1324)는 초당 360,000개까지의 폴리곤들을 묘사할 수 있고, 프레임 버퍼(1326)의 매핑을 위해 CPU(1304)와 독립적으로 2차원 주소 공간을 갖는다.
프레임 버퍼(1326)는 GPU(1324)로부터의 묘사 데이터의 검색 또는 주 메모리(1308)로부터의 데이터의 전송 및 디스플레이를 위한 데이터의 해제를 동시에 수행하는 소위 이중 포트 RAM을 포함한다. 또한, 프레임 버퍼(1326)는 1024 수평값×512 수직값의, 16-비트 포맷의, 픽셀 매트릭스를 구성하는 1MB의 크기를 갖는 메모리를 포함할 수도 있다. 프레임 버퍼(1326)의 임의의 원하는 크기의 영역이 디스플레이와 같은 비디오 출력 수단(1330)에 전달될 수 있다.
비디오 출력으로서 전달된 영역에 부가하여, 프레임 버퍼(1326)는 GPU(1324)의 동작과 함께 그래픽 또는 폴리곤들의 묘사동안 참조로서 사용되는 컬러 룩업 테이블(이하, "CLUT"라고 함)의 저장을 위한 CLUT 영역과, GPU(1324)에 의해 묘사된 그래픽 또는 폴리곤들에 매핑되고 좌표 변환하기 위한 텍스처 데이터의 저장을 위한 텍스처 영역을 포함한다. CLUT와 텍스처 두 영역들은 디스플레이 영역의 변경에 의존하여 동적으로 크기가 변할 수 있다. 따라서, 프레임 버퍼(1326)는 디스플레이 상의 영역에 대한 묘사 액세스 및 주 메모리(1308)로의 및 그로부터의 고속 DMA 전송을 실행할 수 있다. GPU(1324)는 또한 평면 음영 처리 이외에, 폴리곤의 색이 정점 색의 보간에 의해 결정되는 고라우드 음영 처리(Gouraud shading), 및 텍스처 영역으로부터 선택된 텍스처가 폴리곤에 첨부되는 텍스처 매핑을 수행할 수 있다. 고라우드 음영 처리 또는 텍스처 매핑을 위해, GTE(1322)는 초당 500,000개의 폴리곤들의 레이트로 좌표 계산을 수행할 수 있다.
MDEC(1328)는 CD-ROM 디스크로부터 검색되어 주 메모리(1308)에 저장된 정지화상 또는 동화상 데이터를 디코딩하기 위해 CPU(1304)로부터의 명령 신호에 응답하고, 이어서 주 메모리(1308)에 디시 저장한다. 더 상세하게, MDEC(1328)는 컬러 정지 화상 압축 표준(JPEG로 공지됨) 또는 저장 매체에 대한 동화상 인코딩 표준(MPEG로서 공지되어 있으며, 이 실시예에서는 프레임 내 압축에 대한 것)의 압축 데이터를 신장하기 위해 고속으로 역 이산 코사인 변환 동작(역 DCT라고 함)을 수행한다. 재생된 이미지 데이터는 GPU(1324)를 통해 프레임 버퍼(1326)에 전송되고, 따라서, GPU(1324)에 의해 묘사된 이미지에 대한 배경으로서 사용될 수 있다. 음성 모듈(1340)은 음악 또는 이펙트 사운드를 발생하기 위해 CPU(1304)로부터의 명령에 응답하는 사운드 처리기 유닛(SPU)(1342), 음성 또는 CD-ROM으로부터 검색된 음악 사운드, 사운드 소스 데이터의 오디오 데이터를 저장하기 위한 512KB의 사운드 버퍼(1344)(예시적인 것으로 제한적으로 반드시 필요한 것은 아님), 및 SPU(1342)에 의해 발생된 음악 또는 이펙트 사운드를 방출하기 위한 사운드 출력 수단으로서 작동하는 라우드스피커(1346)를 포함한다.
SPU(1342)는 16-비트 오디오 데이터로부터 변환된 4-비트 ADPCM(adaptive differential pulse code modulation) 포맷의 오디오 데이터를 재생하기 위한 ADPCM 신호 디코딩 기능, 음악 또는 이펙트 사운드를 방출하기 위해 사운드 버퍼(1344)에 저장된 사운드 소스 데이터를 재생하기 위한 재생 기능, 및 재생을 위해 사운드 버퍼(1344)에 저장된 오디오 데이터를 변조하기 위한 변조 기능을 갖는다. 더 구체적으로, SPU(1342)는 루핑의 움직임 파라미터들과 시간 계수들이 자동으로 수정되고 CPU(1304)로부터의 신호에 의해 작동되는 24-음성들을 갖는 ADPCM사운스 소스를 갖는다. SPU(1342)는 사운드 버퍼(1344)와 매핑된 주소 공간을 제어하고, 키-온/키-오프의 정보를 갖는 ADPCM 데이터의 직접 송신 또는 CPU(1304)로부터 사운드 버퍼(1344)로의 변조에 의해 오디오 데이터의 재생을 수행할 수 있다. 따라서, 사운드 모듈(1340)은 CPU(1304)로부터 명령 신호를 수신할 때 사운드 버퍼(1344)에 저장되어 있는 오디오 데이터에 대응하는 음악 또는 이펙트 사운드를 발생하기 위한 샘플링 사운드 소스로서 사용된다.
광학 디스크 제어기 모듈(1360)은 광학 디스크 또는 CD-ROM(1363)으로부터 프로그램이나 데이터를 검색하기 위한 디스크 드라이브(1362), 에러 정정 코드들(ECC)을 수반하는 저장된 인코딩 프로그램 또는 데이터를 디코딩하기 위한 디스크 디코더(1364), 및 광학 디스크로부터 검색된 데이터를 저장하기 위한, 예를 들어, 32KB의 디스크 버퍼(1366)를 포함한다. 디스크 드라이브(1362), 디코더(1364) 및 디스크로부터 데이터를 판독하기 위한(선택적으로는 디스크에 기록하기 위한) 다른 구성요소들로 이루어지는 광학 디스크 제어기 모듈(1360)은 또한 CD-DA 및 CD-ROM XA를 포함하여 다른 디스크 포맷들을 지원하도록 배열된다. 디코더(1364)는 또한 사운드 모듈(1340)의 멤버로서 작용한다. 또한, 다른 포맷들 및 매체가 DVD-ROM, 플로피 디스크 등과 같은 디스크 드라이브 서브 시스템(1360)에 의해 지원될 수도 있다.
디스크로부터 디스크 드라이브(1362)에 의해 검색된 오디오 데이터는 (CD-ROM XA 디스크들 상에 저장하기 위한) ADPCM 포맷으로 제한되지는 않지만, 아날로그-디지털 변환에 의해 생성된 공통 PCM 모드일 수도 있다. ADPCM 데이터는 16-비트 디지털 데이터로부터 계산된 4-비트 차동 형태로 기록될 수도 있고, 먼저 에러 정정되고 디코더(1364)에서 디코딩되어 D/A 변환되는 SPU(1342)에 송신된 다음 재생을 위해 라우드스피커(1346)에 공급된다. PCM 데이터는 16-비트 디지털 신호 형태로 기록될 수도 있고, 라우드스피커(1346)를 구동하기 위해 디코더(1364)에 의해 디코딩된다. 디코더(1364)의 오디오 출력은, 먼저 SPU 출력과 혼합되어 오디오 재생을 위한 반향 유닛을 통해 해제되는 SPU(1342)에 전송된다.
통신 제어기 모듈(1380)은 주 버스(1399)를 따라 CPU(1304)와 통신하는 것을 제어하기 위한 통신 제어기 디바이스(1382), 조작자에 의한 명령들의 입력을 위한 제어기(1386), 및 게임 설정 데이터의 저장을 위한 메모리 카드(1384)를 포함한다. 제어기(1386)는 조작자의 명령들을 응용 소프트웨어에 송신하기 위한 인터페이스를 제공하고 사용자에 의한 명령들의 입력을 위한 명령 키들을 포함할 수도 있다. 통신 제어기 디바이스(1382)에 의해 미리 결정된 것으로서, 명령 키들에 의한 명령들이 초당 60번의 속도로 동기 모드에서 통신 제어기 디바이스(1382)에 제공된다. 이어서, 명령 제어기 디바이스(1382)는 키 명령들을 CPU(1304)에 송신한다.
제어기(1386)는 멀티-탭 포트들을 통해 연달아 다수의 제어기들을 접속하도록 배열된 2개의 커넥터들을 갖는다. 따라서, 조작자로부터 명령을 수신할 때, CPU(1304)는 게임 프로그램에 의해 결정된 대응하는 처리 동작을 수행하기 시작한다. 실행될 게임에 대한 초기 설정이 요청될 때, CPU(1304)는 관련 데이터를 통신 제어기 디바이스(1382)에 전송하고 차례로 메모리 카드(1384) 내에 상기 데이터를 저장한다. 메모리 카드(1384)는 주 버스(1399)와 분리되어 있고, 주 버스가 동작하고 있는 동안 자유롭게 설치되거나 제거될 수 있다. 이것은 게임 설정 데이터가 2개 이상의 메모리 카드들(1384)에 저장될 수 있도록 한다.
본 발명의 이 실시예의 시스템에는 또한 16-비트 병렬 입력 및 출력(I/0) 포트(1396) 및 비동기 직렬 입력 및 출력(I/0) 포트(1398)가 제공된다. 시스템은 병렬 I/O 포트(1396)로 임의의 다른 주변 장치에 접속될 수 있고, 직렬 I/O 포트(1398)로 통신을 위한 다른 비디오 게임기에 접속될 수 있다.
주 메모리(1308), GPU(1324), MDEC(1328), 및 디코더(1364) 사이에는, 프로그램을 판독하거나 텍스트를 디스플레이하거나 그래픽을 묘사하기 위한 대량의 이미지 데이터를 고속으로 전송하는 것이 요구된다. 따라서, 이 실시예의 이미지 처리 시스템은 CPU(1304)를 사용하지 않고 주 메모리(1308), GPU(1324), MDEC(1328) 및 디코더(1364)간에 직접 데이터 전송 또는 DMA 전송을 가능하게 하도록 적응된다. 오히려, 데이터 전송은 주변 장치 제어기(1306)의 제어하에서 수행된다. 결과적으로, 데이터 전송 동안의 CPU(1304)에 대한 부하는 상당히 감소될 것이며, 따라서, 고속 데이터 전송 동작들을 보장한다.
본 발명에 따라 구성된 비디오 게임기는 CPU(1304)가 발매시 OS ROM(1310)에 저장되는 운영 체제를 실행할 수 있도록 한다. 운영 체제가 실행될 때, 그래픽 모듈(1320)과 사운드 모듈(1340)의 동작들은 CPU(1304)에 의해 정확하게 제어된다. 또한, 운영 체제가 호출될 때, CPU(1304)는 각 동작을 검토한 다음 광학 디스크 상에 저장된 원하는 게임 프로그램을 수행하기 위한 광학 디스크 제어기 모듈(1360)을 작동시킴으로써 전체 시스템의 초기화를 개시한다. 게임 프로그램의 실행 동안, CPU(1304)는 이미지들의 디스플레이와 음악 또는 이펙트 사운드들의 재생을 제어하기 위한 조작자에 의한 명령 입력들에 응답하여 그래픽 모듈(1320) 및 사운드 모듈(1340)을 작동시킨다. 본 발명의 이미지 데이터 처리 장치에 의해 디스플레이 상에 이미지 데이터를 표시하는 것이 다음에 설명된다. GPU(1324)는, 예를 들어, CRT 또는 평면 디스플레이 디바이스와 같은 비디오 출력 수단(1330) 또는 디스플레이 상에 프레임 버퍼(1326)에 의해 생성된 원하는 그래픽 모델의 영역을 디스플레이한다. 이 영역을 이하 디스플레이 영역이라고 한다. 그래픽 모델은 장면 내 오브젝트들이 놓이는 좌표 공간 또는 가상 세계에 대응하며, "마야(Maya)" 제품(캐나다 온타리오 토론토 소재의 알리아스|웨이브프론트사), 또는 "3D 스튜디오 맥스(3D Studio Max)" 제품(오토데스크사의 "디스크리트(Discreet)"부(캐나다 퀘벡 몬트리얼), 또는 장면 발생을 위한 다른 적절한 묘사 또는 그래픽 응용 프로그램과 같은 모델링 프로그램에 의해 발생될 수도 있다.
도 14는 RGBA 멀티스펙트럼 색 모델 디스플레이를 위한 예시적인 픽셀(1402) 데이터를 도시한다. 픽셀(1402)은 4개의 상이한 데이터 채널들로부터의 정보를 저장한다. RGBA 색 모델에서, 이 4개의 채널들은 적색(1404), 청색(1406), 녹색(1408), 및 알파(1410)를 포함한다. 도 14의 각 데이터 채널의 표시는 표기법 "[7, 6, 5, ..., 0]"을 포함하여, 픽셀에 대한 4개의 데이터 채널들 각각이 8비트의 정보를 포함하여, 이 8비트 정보는 도시된 예의 왼쪽에 최상위 비트(비트 7)를 갖고 오른쪽에 최하위 비트(비트 0)를 갖는다는 것을 나타낸다. 픽셀 정보에 대해 다른 데이터 워드 크기들이 사용될 수도 있다. 디스플레이 장면 내의 각픽셀(1402)에 대한 적색(1404), 청색(1406), 녹색(1408), 및 알파 채널 데이터(1410)가 프레임 버퍼(1326)에 저장된다(도 13).
따라서, 각각 8비트를 포함하는 적색(1404), 청색(1406), 및 녹색(1408) 채널들은 이미지 색 정보를 제공한다. 픽셀 이미지의 임의의 색 부분이 적색 채널(1404), 청색 채널(1406), 및 녹색 채널(1408) 데이터의 조합으로 표시될 수 있다. 또한, 8비트로 이루어지는 알파 채널(1410)은 불투명에서 투명의 범위를 갖는 대응하는 픽셀 이미지의 불투명도를 나타낸다. 따라서, 각 픽셀(1402)은 RGBA 색 모델 시스템에 대해 상기 4개의 채널들의 조합으로서 프레임 버퍼에 저장된다.
도 15는 Z-버퍼의 단일 엔트리(1502)의 표시를 도시한다. 바람직한 실시예에서, Z-버퍼는 게임 콘솔(1110)(도 11), 컴퓨터 처리기 시스템(도 12), 또는 이미지 처리기(도 13)로서 대안적으로 나타낸 이미지 처리 시스템의 일부분이다. Z-버퍼는 숨겨진 표면 제거를 위해 사용되며, 디스플레이 장면에 묘사되어 있는 오브젝트에 대한 위치에 대응한다. 따라서, Z-버퍼 픽셀 정보의 데이터 워드 크기는 통상적으로 이미지 처리 시스템에 의해 수행되는 위치 계산들을 위해 사용되는 데이터와 동일한 데이터 워드 크기이다. 바람직한 실시예에서, Z-버퍼는 32-비트 크기의 데이터 워드들을 포함한다. 이것은 "[31 30 29 28 27 26 25 24 23 22 21 ... 3 2 1 0]"의 표기로 도 15의 Z-버퍼(1502)에 도시되어 있다.
상술된 바와 같이, 컴퓨터 디스플레이 상에 묘사될 각 픽셀은 Z-버퍼 내 대응하는 데이터 엔트리와 관련된다. 도 15는 상기 픽셀들 중 하나에 대한 Z-버퍼 데이터 엔트리의 표시이다. 본 발명에 따르면, Z-버퍼로부터의 데이터는 픽셀-바이-픽셀(pixel-by-pixel)에 기초하여 프레임 버퍼로부터의 색 픽셀 정보와 알파-융합(합성)된다. Z-버퍼 정보는 32-비트 워드 크기를 갖고, 각 채널에 대한 픽셀 정보는 8-비트 워트 크기를 갖기 때문에, 본 발명에 따른 처리는 Z-버퍼 정보를 절단하여, Z-버퍼로부터의 8-비트 데이터 워드만 프레임 버퍼로부터의 RGBA 이미지 정보의 8-비트 픽셀 워드들 각각과 합성된다. 바람직한 실시예에서, 각 Z-버퍼 픽셀로부터의 8개의 최상위 비트들(MSB)은 프레임 버퍼로부터의 정보의 각 대응하는 픽셀과 합성된다.
도 16은 예시적인 프레임 버퍼 실시예를 도시한다. 도 16에 도시된 바와 같이, 바람직한 실시예에서, (도 13에 도시된 프레임 버퍼(1326)와 같은 프레임 버퍼는 하나 이상의 이미지 데이터의 프레임을 저장한다. 특히, 도 16은 프레임 버퍼(1326)가 제 1 프레임 데이터 어레이(1602) 및 제 2 프레임 데이터 어레이(1604)에 대한 데이터 저장소를 포함하는 것을 도시한다. 이러한 배열은 통상적으로 인터레이스된 디스플레이 디바이스들과 같은 비디오 디스플레이에 대한 연속하는 프레임들을 디스플레이하기 위해 사용된다. 제 1 프레임 어레이(1602)는 픽셀들(1612, 1614, 1616)로 도시된 다수의 픽셀들을 포함한다. 유사하게 제 2 프레임 어레이(1604)는 픽셀들(1622, 1624, 1626)을 포함한다. 상기 프레임 어레이들 각각은 임의의 주어진 시간에 전체 이미지를 저장할 수 있고, 그래픽 처리기 머신 내에 다수의 메모리 위치들을 포함한다.
프레임 버퍼(1324)의 프레임 어레이들(1602, 1604)은 도 13의 시스템과 관련하여 상기 설명된 GPU(1324)와 비디오 출력(1330)을 포함하는 디바이스와 같은 하드웨어 주사 디바이스(1680)에 접속된다. 주사 디바이스는 프레임 버퍼 어레이들(1602, 1604) 중 하나로부터 픽셀 정보를 선택적으로 판독하여 물리적 디스플레이를 위한 디스플레이(1690)에 송신한다. 디스플레이되고 있는 프레임 버퍼 어레이를 포함하는 픽셀들을 온-스크린 이미지라고 하며, 디스플레이되고 있지 않은 프레임 버퍼 어레이의 픽셀들을 오프-스크린 이미지라고 한다. 프레임 버퍼 어레이들(1602, 1604)은 또한 메모리의 다른 영역들로부터 송신된 픽셀 정보를 저장할 수 있거나, 또는 메모리의 다른 영역들에 픽셀 정보를 기록할 수 있다.
처리
도 17은 상술된 것과 같은 강화된 필드 심도 정보를 갖는 이미지들을 생성하기 위해 도 11 내지 도 13에 도시된 이미지 처리 시스템들에 의해 수행되는 처리를 나타내는 흐름도이다. 1702로 번호가 부여된 흐름도 박스로 표시된 제 1 처리 동작에서, 이미지 처리 시스템은 처리될 장면에 대해 매우 선명한 이미지 데이터를 생성하고, 이 장면은 좌표(공간) 시스템 내에 위치된 오브젝트들을 묘사한다. 선명한 이미지는 종래의 렌더링 엔진을 통해 렌더링될 수도 있다. 장면의 선명한 이미지에 대한 데이터는, "마야" 제품(캐나나 온타리오 토론토 소재의 알리아스|웨이브프론트), 또는 "3D 스튜디오 맥스" 제품(오토데스크사의 "디스크리트"부(캐나다 퀘벡 몬트리얼))과 같은 종래의 3차원(3-D) 모델링 프로그램으로부터 생성될 수 있거나, 그렇지 않으면 그래픽 이미지 처리 시스템에 수신될 것이다. 렌더링 소프트웨어는 본래 묘사된 오브젝트들에 대한 Z-버퍼 데이터를 생성한다.
도 17에서 1704로 번호가 부여된 다음 처리 동작에서, 시스템은 흐릿한 이미지 데이터를 생성한다. 상술된 바와 같이, 이 동작은 프레임 이미지를 1-픽셀 오프셋만큼 그 자신 위에 50%의 투명도로 복사함으로써 수행될 수 있거나, 또는 대안적인 방법들이 원하는 대로 사용될 수도 있다. 흐릿한 이미지 데이터는 그래픽 처리기 또는 관련된 컴퓨팅 설비의 일시적 데이터 저장소 또는 레지스터들에 저장될 수도 있다. 본 발명에 따라, 선명한 이미지로부터 흐릿한 이미지가 얻어진다. 상술된 바와 같이, 이미지 처리 시스템은 시작 포인트로부터 입력으로서 선명한 이미지 데이터를 수신할 수 있고, 이 시스템은 선명한 이미지가 바람직하게는 50%의 불투명도로 그 자신 위에 복사된 후에 수평 방향으로 1 픽셀을 이동시키고 수직 방향으로 1 픽셀을 이동시키는 픽셀 이동 동작을 사용하여 흐릿한 이미지를 생성할 수 있다. 흐릿한 이미지는 그래픽 처리 시스템의 저장소에 일시적으로 저장될 수도 있다. 예를 들어, 도 16에 도시된 2-이미지 프레임 버퍼에 있어서, 한 이미지는 흐릿한 이미지를 위해 사용될 수 있고, 다른 이미지는 선명한 이미지를 위해 사용될 수 있다.
다음 동작(박스 1706)은 절단된 Z-버퍼 데이터를 얻는 것이다. 상술된 바와 같이, 렌더링 소프트웨어를 갖는 대부분의 종래의 그래픽 처리 시스템들은, 시뮬레이션된 장면 내 오브젝트들에 대한 위치 처리에 적당한 정확도로, 숨겨진 표면 제거를 위해 Z-버퍼 데이터를 정기적으로 생성한다. 따라서, Z-버퍼 데이터는 본 발명에 따라 사용될 수 있는 대부분의 종래 이미지 처리기들로부터 쉽게 이용할 수 있어야 한다. 특히, 모델링 프로그램이 이미지 데이터를 생성할 때, 프로그램은 매우 선명한 이미지를 생성하고 반드시 Z-버퍼 데이터를 생성한다는 것을 유념해야한다.
Z-버퍼 데이터는 프레임 버퍼 내의 픽셀 데이터와 정확하게 합성될 수 있도록 보장하도록 처리된다. 바람직한 실시예에서, Z-버퍼 데이터는 Z-버퍼 데이터의 각 픽셀의 데이터 비트들의 수가 프레임 버퍼의 픽셀들의 데이터 비트들의 수와 갖아지도록 절단된다. 따라서, 상술된 실시예들에서, 적색, 청색, 녹색 픽셀들은 8-비트 워드들로 표현되고, Z-버퍼 데이터는 각 픽셀에 대해 32-비트 워드들로 표현된다. 따라서, Z-버퍼 내의 각 픽셀의 8개의 최상위 비트들만이 선명한 이미지 데이터 및 흐릿한 이미지 데이터와 합성된다. 박스 1706으로 표시된 상기 절단 처리는 그래픽 처리 시스템의 저장소 내에 절단된 데이터를 일시적으로 저장함으로써 수행될 수 있다.
다음 동작은 컴퓨터 시스템에 있어서 통상 알파 융합이라고 하는 합성 처리를 수행하는 것으로, 이 동작은 선명한 이미지와 흐릿한 이미지와 Z-버퍼 데이터를 합성하여 렌더링시 필드 심도 정보를 갖는 이미지를 생성할 RGBA 이미지 데이터를 생성한다. 이 합성 동작은 1708로 번호가 부여된 흐름도 박스에 표시되어 있다. 상술된 바와 같이, 이미지 데이터의 합성(알파 융합)은 종래의 그래픽 처리 컴퓨터 시스템에 의해 정기적으로 수행된다. 그러나, 이러한 시스템들은 이미지 원소들의 불투명도를 나타내는 알파 채널 데이터와 색 이미지 데이터(예를 들어, 적색, 청색, 녹색)의 상기와 같은 합성을 수행하는 것으로, 이 시스템들은 선명한 이미지, 흐릿한 이미지 및 Z-버퍼 데이터를 합성하지는 않는다.
또한, 종래의 알파 융합은 동일한 데이터 워드 크기(통상적으로, 프레임 버퍼 내에 포함된 것과 같은 워드 크기)의 알파 채널 이미지 데이터와 색 이미지 데이터를 수반한다. 대조적으로, 그래픽 처리 시스템의 Z-버퍼 데이터는 시뮬레이션된 장면 내의 오브젝트들에 대한 위치 처리에 적당한 정확도로 유지된다. 따라서, 본 발명의 바람직한 실시예에서, 합성 동작은 박스 1706에 설명된 바와 같이 호환 가능한 비트들의 수로 절단된 Z-버퍼로부터의 데이터를 이용한다. 프레임 버퍼가 절단된 Z-버퍼 데이터를 합성하는 것을 수행하기 위한 본 발명의 설명에 있어서, 이 기술분야에 숙련된 사람들은 렌더링시 강화된 현실성을 위한 필드 심도 정보를 제공하는 RGBA 이미지 데이터를 생성하기 위한 적절한 처리가 어떻게 달성되는지를 이해할 것이다.
결정 박스 1710에서의 다음 동작에 있어서, 시스템은 랙 포커스 효과들, 대기의 시각적 효과들 등을 생성하기 위해 수행되는 것과 같은 반복 처리에 대해 선택적으로 검사한다. 부가적인 처리로, 예를 들어, 역전된 Z-버퍼 이미지를 생성하는 것이 있을 수도 있다. 부가적인 처리는 중간 프레임들에 대한 픽셀 정보를 일시적으로 저장하는 것과 같은 이미지 데이터의 일시 저장을 포함할 수도 있다. 반복 처리가 원해지면(결정 박스 1710에서의 긍정적인 결과), 시스템 처리는 박스 1702로 복귀하여 선명한 이미지, 흐릿한 이미지, 및 Z-버퍼 처리의 다음 필요한 세트를 생성한다. RGBA 이미지에 대한 부가적인 프레임 처리가 필요하지 않다면(박스 1710에서의 부정적인 결과), 처리는 박스 1712에서의 디스플레이 이미지의 렌더링으로 이어진다. 렌더링 동작은 컴퓨터 디스플레이 디바이스 상에 이미지를 생성하는 간단한 렌더링 동작을 수반할 수도 있거나, 또는 렌더링 동작은 상술된 보충적인 처리 동작들 중 어떤 것을 수반할 수도 있다. 예를 들어, 렌더링 처리(1712)는 하나의 색 채널의 색조 변경 또는 특수 시각 효과들을 위한 다른 처리를 포함할 수도 있다. 이러한 모든 동작들은 실시간으로 수행될 수 있기 때문에, 본 명세서에 기술된 필드 심도 정보를 갖는 현실성이 강화된 이미지들이 실시간으로 선명한 이미지 데이터로부터 생성될 수 있다.
본 발명은 본 발명이 이해될 수 있도록 바람직한 실시예와 관련하여 설명되었다. 그러나, 본 명세서에 구체적으로 서술되지는 않았지만 본 발명을 적용할 수 있는 컴퓨터 그래픽 처리 시스템들에 대한 다수의 구성들이 존재한다. 따라서, 본 발명은 본 명세서에 서술된 특정 실시예들에 한정되는 것으로 이해되서는 안되며, 오히려 본 발명은 일반적으로 컴퓨터 그래픽 처리 시스템과 관련하여 광범위한 응용성을 갖는 것으로 이해되어야 한다. 따라서, 첨부된 청구범위 내에 있는 모든 수정예들, 변형예들 또는 등가의 배열들과 구성들은 본 발명의 범위 내에 있는 것으로 고려되어야 한다.
본 발명에 따라, 장면의 선명한 이미지, 흐릿한 이미지, Z-버퍼 이미지 데이터를 알파 융합하여 알파 채널 RGBA 이미지를 생성함으로써 필드 심도의 정보를 갖는, 현실성이 강화된 이미지들을 실시간으로 생성할 수 있다.

Claims (27)

  1. 필드 심도 정보를 포함하는 컴퓨터 디스플레이 이미지를 생성하는 방법에 있어서:
    장면의 선명한 이미지를 생성하는 단계;
    상기 장면의 흐릿한 이미지를 생성하는 단계; 및
    상기 선명한 이미지 및 흐릿한 이미지와 Z-버퍼 이미지 데이터의 합성 융합(composited blend)을 포함하는 알파 채널 RGBA 이미지를 생성하여, 상기 알파 채널 RGBA가 그래픽 처리기에 의해 수신되어 컴퓨터 디스플레이 디바이스 상에 디스플레이되도록 렌더링될 때, 상기 생성된 알파 채널 RGBA 이미지가 필드 심도 정보를 갖는 이미지를 제공하는, 상기 알파 채널 RGBA 이미지를 생성하는 단계를 포함하는, 컴퓨터 디스플레이 이미지 생성 방법.
  2. 제 1 항에 있어서,
    상기 흐릿한 이미지는 상기 선명한 이미지의 픽셀-이동된 색 채널 이미지 데이터(pixel-shifted color channel image data)를 포함하는, 컴퓨터 디스플레이 이미지 생성 방법.
  3. 제 2 항에 있어서,
    상기 Z-버퍼 이미지 데이터는 상기 장면에 대한 픽셀 위치 데이터를 명시하는 절단된(truncated) Z-버퍼 픽셀 정보를 포함하는, 컴퓨터 디스플레이 이미지 생성 방법.
  4. 제 3 항에 있어서,
    상기 절단된 Z-버퍼 픽셀 정보는 상기 Z-버퍼 이미지 데이터의 각 픽셀에 대해 미리 결정된 수의 최상위 비트들을 포함하는, 컴퓨터 디스플레이 이미지 생성 방법.
  5. 제 1 항에 있어서,
    상기 장면의 전경과 상기 장면의 배경 사이에서 이미지 포커스를 이동시킬 때 나타나는 랙 포커스 효과(rack focus effect)를 제공하는 컴퓨터 디스플레이 이미지들의 시퀀스를 생성하는 단계를 더 포함하고,
    상기 시퀀스의 각 이미지는 상기 알파 채널 RGBA가 그래픽 처리기에 의해 수신되어 컴퓨터 디스플레이 디바이스 상에 디스플레이되도록 렌더링될 때 필드 심도 정보를 갖는 이미지를 제공하는, 컴퓨터 디스플레이 이미지 생성 방법.
  6. 제 5 항에 있어서,
    상기 시퀀스의 각 이미지는,
    상기 장면의 선명한 이미지와 상기 장면의 흐릿한 이미지와 Z-버퍼 이미지 데이터를 합성하여 알파 채널 RGBA 이미지를 생성하고;
    상기 장면의 선명한 이미지와 상기 장면의 흐릿한 이미지와 역전된 Z-버퍼 이미지 데이터를 합성하여 역전된 알파 채널 RGBA 이미지를 생성하며;
    상기 역전된 알파 채널 RGBA 이미지와 상기 알파 채널 RGBA 이미지를 융합함으로써 생성되는, 컴퓨터 디스플레이 이미지 생성 방법.
  7. 제 1 항에 있어서,
    상기 흐릿한 이미지의 색조를 원하는 색 값으로 변경하고 상기 Z-버퍼 이미지 데이터의 소스로서 상기 변경된 흐릿한 이미지를 사용하여 상기 알파 채널 RGBA 이미지를 생성하는 단계를 더 포함하는, 컴퓨터 디스플레이 이미지 생성 방법.
  8. 제 7 항에 있어서,
    상기 흐릿한 이미지의 색조를 청색 값으로 변경하여 대기의 효과(atmospheric effect)를 갖는 알파 채널 RGBA 이미지를 생성하는, 컴퓨터 디스플레이 이미지 생성 방법.
  9. 제 7 항에 있어서,
    상기 흐릿한 이미지를 변경하는 단계는,
    상기 흐릿한 이미지의 녹색 채널 데이터 위에 상기 흐릿한 이미지의 적색 채널 데이터를 복사하고, 상기 흐릿한 이미지의 청색 채널 데이터 위에 상기 흐릿한 이미지의 적색 채널 데이터를 복사하여 흑백의 흐릿한 이미지를 생성하는 단계;
    상기 장면의 상기 흑백의 흐릿한 이미지를 Z-버퍼 임시 기억 데이터 저장소에 저장하는 단계; 및
    상기 Z-버퍼 임시 데이터 저장소 내의 상기 흐릿한 이미지의 데이터와 상기 선명한 이미지를 결합하여 상기 알파 채널 RGBA 이미지를 생성하는 단계를 포함하는, 컴퓨터 디스플레이 이미지 생성 방법.
  10. 컴퓨터 디스플레이를 위한 이미지 데이터를 생성하는 컴퓨터 처리 시스템에 있어서:
    중앙 처리 장치;
    데이터 저장소; 및
    상기 중앙 처리 장치에 의해 실행되는 프로그램 명령들을 저장하고 있는 프로그램 메모리를 포함하며,
    상기 실행 프로그램 명령들은 상기 중앙 처리 장치로 하여금,
    장면의 선명한 이미지를 생성하고,
    상기 장면의 흐릿한 이미지를 생성하고,
    상기 선명한 이미지 및 흐릿한 이미지와 Z-버퍼 이미지 데이터의 합성 융합을 포함하는 알파 채널 RGBA 이미지를 생성하여, 그래픽 처리기에 의해 상기 알파 채널 RGBA가 수신되어 컴퓨터 디스플레이 디바이스 상에 디스플레이되도록 렌더링될 때, 상기 생성된 알파 채널 RGBA 이미지가 필드 심도 정보를 갖는 이미지를 제공하는 처리를 수행하도록 하는, 컴퓨터 처리 시스템.
  11. 제 10 항에 있어서,
    상기 흐릿한 이미지는 상기 선명한 이미지의 픽셀-이동된 색 채널 이미지 데이터를 포함하는, 컴퓨터 처리 시스템.
  12. 제 11 항에 있어서,
    상기 Z-버퍼 이미지 데이터는 상기 장면에 대한 픽셀 위치 데이터를 명시하는 절단된 Z-버퍼 픽셀 정보를 포함하는, 컴퓨터 처리 시스템.
  13. 제 12 항에 있어서,
    상기 절단된 Z-버퍼 픽셀 정보는 상기 Z-버퍼 이미지 데이터의 각 픽셀에 대해 미리 결정된 수의 최상위 비트들을 포함하는, 컴퓨터 처리 시스템.
  14. 제 10 항에 있어서,
    상기 중앙 처리 장치는 또한 상기 장면의 전경과 상기 장면의 배경 사이에서 이미지 포커스를 이동시킬 때 나타나는 랙 포커스 효과를 제공하는 컴퓨터 디스플레이 이미지들의 시퀀스를 생성하고,
    상기 시퀀스의 각 이미지는 상기 알파 채널 RGBA가 그래픽 처리기에 의해 수신되어 컴퓨터 디스플레이 디바이스 상에 디스플레이되도록 렌더링될 때 필드 심도 정보를 갖는 이미지를 제공하는, 컴퓨터 처리 시스템.
  15. 제 14 항에 있어서,
    상기 시퀀스의 각 이미지는,
    상기 장면의 선명한 이미지와 상기 장면의 흐릿한 이미지와 Z-버퍼 이미지 데이터를 합성하여 알파 채널 RGBA 이미지를 생성하고;
    상기 장면의 선명한 이미지와 상기 장면의 흐릿한 이미지와 역전된 Z-버퍼 이미지 데이터를 합성하여 역전된 알파 채널 RGBA 이미지를 생성하며;
    상기 역전된 알파 채널 RGBA 이미지와 상기 알파 채널 RGBA 이미지를 융합함으로써 생성되는, 컴퓨터 처리 시스템.
  16. 제 10 항에 있어서,
    상기 중앙 처리 장치는 상기 흐릿한 이미지의 색조를 원하는 색 값으로 변경하고, 상기 Z-버퍼 이미지 데이터의 소스로서 상기 변경된 흐릿한 이미지를 사용하여 상기 알파 채널 RGBA 이미지를 생성하는, 컴퓨터 처리 시스템.
  17. 제 16 항에 있어서,
    상기 흐릿한 이미지의 색조를 청색 값으로 변경하여 대기의 효과를 갖는 알파 채널 RGBA 이미지를 생성하는, 컴퓨터 처리 시스템.
  18. 제 16 항에 있어서,
    상기 중앙 처리 장치는, 상기 흐릿한 이미지의 녹색 채널 데이터 위에 상기 흐릿한 이미지의 적색 채널 데이터를 복사하고, 상기 흐릿한 이미지의 청색 채널 데이터 위에 상기 흐릿한 이미지의 적색 채널 데이터를 복사하여 흑백의 흐릿한 이미지를 생성하고, 상기 장면의 상기 흑백의 흐릿한 이미지를 Z-버퍼 임시 데이터 저장소에 저장하고, 상기 Z-버퍼 임시 데이터 저장소 내의 상기 흐릿한 이미지의 데이터와 상기 선명한 이미지를 결합하여 상기 알파 채널 RGBA 이미지를 생성함으로써 상기 흐릿한 이미지를 변경하는, 컴퓨터 처리 시스템.
  19. 컴퓨터 디스플레이를 위한 이미지 데이터를 생성하는 그래픽 처리기에 있어서:
    컴퓨터 처리를 수행하기 위해 프로그램 명령들을 실행하는 중앙 처리 장치;
    데이터 저장소; 및
    상기 중앙 처리 장치로 하여금, 장면의 선명한 이미지를 생성하고, 상기 장면의 흐릿한 이미지를 생성하고, 상기 선명한 이미지 및 흐릿한 이미지와 Z-버퍼 이미지 데이터의 합성 융합을 포함하는 알파 채널 RGBA 이미지를 생성하여, 상기 알파 채널 RGBA 이미지가 그래픽 처리기에 의해 수신되어 컴퓨터 디스플레이 디바이스 상에 디스플레이되도록 렌더링될 때, 상기 생성된 알파 채널 RGBA 이미지가 필드 심도 정보를 갖는 이미지를 제공하도록 하는 프로그램 수단을 포함하는, 그래픽 처리기.
  20. 제 19 항에 있어서,
    상기 흐릿한 이미지는 상기 선명한 이미지의 픽셀-이동된 색 채널 이미지 데이터를 포함하는, 그래픽 처리기.
  21. 제 19 항에 있어서,
    상기 Z-버퍼 이미지 데이터는 상기 장면에 대한 픽셀 위치 데이터를 명시하는 절단된 Z-버퍼 픽셀 정보를 포함하는, 그래픽 처리기.
  22. 제 21 항에 있어서,
    상기 절단된 Z-버퍼 픽셀 정보는 상기 Z-버퍼 이미지 데이터의 각 픽셀에 대해 미리 결정된 수의 최상위 비트들을 포함하는, 그래픽 처리기.
  23. 제 21 항에 있어서,
    상기 중앙 처리 장치의 수행 처리는 또한 상기 장면의 전경과 상기 장면의 배경 사이에서 이미지 포커스를 이동시킬 때 나타나는 랙 포커스 효과를 제공하는 컴퓨터 디스플레이 이미지들의 시퀀스를 생성하고,
    상기 시퀀스의 각 이미지는 상기 알파 채널 RGBA가 그래픽 처리기에 의해 수신되어 컴퓨터 디스플레이 디바이스 상에 디스플레이되도록 렌더링될 때 필드 심도 정보를 갖는 이미지를 제공하는, 그래픽 처리기.
  24. 제 23 항에 있어서,
    상기 시퀀스의 각 이미지는,
    상기 장면의 선명한 이미지와 상기 장면의 흐릿한 이미지와 Z-버퍼 이미지 데이터를 합성하여 알파 채널 RGBA 이미지를 생성하고;
    상기 장면의 선명한 이미지와 상기 장면의 흐릿한 이미지와 역전된 Z-버퍼 이미지 데이터를 합성하여 역전된 알파 채널 RGBA 이미지를 생성하며;
    상기 역전된 알파 채널 RGBA 이미지와 상기 알파 채널 RGBA 이미지를 융합함으로써 생성되는, 그래픽 처리기.
  25. 제 19 항에 있어서,
    상기 중앙 처리 장치는 상기 흐릿한 이미지의 색조를 원하는 색 값으로 변경하고, 상기 Z-버퍼 이미지 데이터의 소스로서 상기 변경된 흐릿한 이미지를 사용하여 상기 알파 채널 RGBA 이미지를 생성하는, 그래픽 처리기.
  26. 제 25 항에 있어서,
    상기 흐릿한 이미지의 색조를 청색 값으로 변경하여 대기의 효과를 갖는 알파 채널 RGBA 이미지를 생성하는, 그래픽 처리기.
  27. 제 26 항에 있어서,
    상기 중앙 처리 장치는, 상기 흐릿한 이미지의 녹색 채널 데이터 위에 상기흐릿한 이미지의 적색 채널 데이터를 복사하고, 상기 흐릿한 이미지의 청색 채널 데이터 위에 상기 흐릿한 이미지의 적색 채널 데이터를 복사하여 흑백의 흐릿한 이미지를 생성하고, 상기 장면의 상기 흑백의 흐릿한 이미지를 Z-버퍼 임시 데이터 저장소에 저장하고, 상기 Z-버퍼 임시 데이터 저장소 내의 상기 흐릿한 이미지의 데이터와 상기 선명한 이미지를 결합하여 상기 알파 채널 RGBA 이미지를 생성함으로써 상기 흐릿한 이미지를 변경하는, 그래픽 처리기.
KR1020030022277A 2002-04-09 2003-04-09 Z-버퍼 이미지 데이터 및 알파 융합을 사용하는 필드심도를 갖는 이미지 KR100549358B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/120,324 US7081892B2 (en) 2002-04-09 2002-04-09 Image with depth of field using z-buffer image data and alpha blending
US10/120,324 2002-04-09

Publications (2)

Publication Number Publication Date
KR20030081107A true KR20030081107A (ko) 2003-10-17
KR100549358B1 KR100549358B1 (ko) 2006-02-08

Family

ID=28453999

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030022277A KR100549358B1 (ko) 2002-04-09 2003-04-09 Z-버퍼 이미지 데이터 및 알파 융합을 사용하는 필드심도를 갖는 이미지

Country Status (8)

Country Link
US (2) US7081892B2 (ko)
EP (1) EP1353296B1 (ko)
JP (1) JP3725524B2 (ko)
KR (1) KR100549358B1 (ko)
AT (1) ATE297574T1 (ko)
DE (1) DE60300788T2 (ko)
ES (1) ES2243815T3 (ko)
TW (1) TW583599B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100888537B1 (ko) * 2004-06-28 2009-03-11 마이크로소프트 코포레이션 이미지의 2 계층이며, 삼차원인 표현을 생성하기 위한 컴퓨터 구현 방법, 시스템 및 컴퓨터―판독가능 매체
KR101015935B1 (ko) * 2009-10-28 2011-02-23 주식회사 넥슨 피사계 심도 및 모션 블러 처리 컴퓨터 시스템 및 그 방법
KR20110074775A (ko) * 2008-10-21 2011-07-01 코닌클리케 필립스 일렉트로닉스 엔.브이. 장면의 층상 깊이 모델을 제공하기 위한 방법 및 디바이스

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4837844B2 (ja) * 2001-07-19 2011-12-14 富士通株式会社 シミュレーションシステム、方法、プログラム及び記録媒体
US6680579B2 (en) * 2001-12-14 2004-01-20 Hewlett-Packard Development Company, L.P. Method and apparatus for image and video display
AU2002952382A0 (en) * 2002-10-30 2002-11-14 Canon Kabushiki Kaisha Method of Background Colour Removal for Porter and Duff Compositing
US7202867B1 (en) 2003-01-31 2007-04-10 Microsoft Corporation Generation of glow effect
US7274365B1 (en) 2003-01-31 2007-09-25 Microsoft Corporation Graphical processing of object perimeter information
JP2004302500A (ja) * 2003-03-28 2004-10-28 Matsushita Electric Ind Co Ltd 画像処理装置及び画像処理方法
US7290221B2 (en) * 2003-04-16 2007-10-30 Hewlett-Packard Development Company, L.P. User interface, method and apparatus for providing three-dimensional object fabrication status
US7680342B2 (en) 2004-08-16 2010-03-16 Fotonation Vision Limited Indoor/outdoor classification in digital images
US7606417B2 (en) 2004-08-16 2009-10-20 Fotonation Vision Limited Foreground/background segmentation in digital images with differential exposure calculations
JP4307222B2 (ja) * 2003-11-17 2009-08-05 キヤノン株式会社 複合現実感提示方法、複合現実感提示装置
US7412110B1 (en) * 2004-01-28 2008-08-12 Adobe Systems Incorporated Using forward and backward kernels to filter images
US7609902B2 (en) * 2004-04-13 2009-10-27 Microsoft Corporation Implementation of discrete cosine transformation and its inverse on programmable graphics processor
US7710418B2 (en) * 2005-02-04 2010-05-04 Linden Acquisition Corporation Systems and methods for the real-time and realistic simulation of natural atmospheric lighting phenomenon
US7312801B2 (en) * 2005-02-25 2007-12-25 Microsoft Corporation Hardware accelerated blend modes
US7692696B2 (en) * 2005-12-27 2010-04-06 Fotonation Vision Limited Digital image acquisition system with portrait mode
US7532223B2 (en) * 2006-01-17 2009-05-12 Teri Lynn Dougherty Apparatus and method for teaching artwork and cosmetic adjustment on the human form using 4D rendering
IES20060558A2 (en) * 2006-02-14 2006-11-01 Fotonation Vision Ltd Image blurring
WO2007095477A2 (en) * 2006-02-14 2007-08-23 Fotonation Vision Limited Image blurring
JP4856445B2 (ja) 2006-02-22 2012-01-18 ルネサスエレクトロニクス株式会社 画像合成装置及びその画像合成方法
IES20060564A2 (en) * 2006-05-03 2006-11-01 Fotonation Vision Ltd Improved foreground / background separation
JP4843377B2 (ja) * 2006-05-18 2011-12-21 株式会社東芝 画像処理装置及び画像処理方法
KR101282973B1 (ko) * 2007-01-09 2013-07-08 삼성전자주식회사 오버레이 이미지를 디스플레이 하는 장치 및 방법
US8125510B2 (en) * 2007-01-30 2012-02-28 Ankur Agarwal Remote workspace sharing
WO2008105494A1 (ja) * 2007-02-28 2008-09-04 Nec Corporation Dma転送装置及び方法
US20080263449A1 (en) * 2007-04-20 2008-10-23 Microsoft Corporation Automated maintenance of pooled media content
CN101055645B (zh) * 2007-05-09 2010-05-26 北京金山软件有限公司 一种阴影实现的方法及装置
US8134556B2 (en) * 2007-05-30 2012-03-13 Elsberg Nathan Method and apparatus for real-time 3D viewer with ray trace on demand
US20150200639A1 (en) * 2007-08-02 2015-07-16 J. Todd Orler Methods and apparatus for layered waveform amplitude view of multiple audio channels
US8638341B2 (en) * 2007-10-23 2014-01-28 Qualcomm Incorporated Antialiasing of two-dimensional vector images
KR101412752B1 (ko) * 2007-11-26 2014-07-01 삼성전기주식회사 디지털 자동 초점 영상 생성 장치 및 방법
US8400448B1 (en) 2007-12-05 2013-03-19 The United States Of America, As Represented By The Secretary Of The Navy Real-time lines-of-sight and viewsheds determination system
US8325178B1 (en) 2007-12-05 2012-12-04 The United States Of America, As Represented By The Secretary Of The Navy Lines-of-sight and viewsheds determination system
US7595483B1 (en) * 2008-06-12 2009-09-29 The United States Of America As Represented By The Secretary Of The Navy Calibration method for a stellar sensor
WO2010003844A1 (fr) 2008-06-30 2010-01-14 Thomson Licensing Procede de composition temps reel d'une video
JP5024632B2 (ja) * 2008-09-19 2012-09-12 ソニー株式会社 画像処理装置および方法、並びにプログラム
US10043304B2 (en) * 2008-09-25 2018-08-07 Koninklijke Philips N.V. Three dimensional image data processing
US9336624B2 (en) * 2008-10-07 2016-05-10 Mitsubishi Electric Research Laboratories, Inc. Method and system for rendering 3D distance fields
TW201021578A (en) * 2008-11-26 2010-06-01 Sunplus Mmedia Inc Decompression system and method for DCT-based compressed graphic data with transparent attribute
US8319798B2 (en) * 2008-12-17 2012-11-27 Disney Enterprises, Inc. System and method providing motion blur to rotating objects
KR101206895B1 (ko) * 2008-12-22 2012-11-30 한국전자통신연구원 렌더링 시스템 및 이를 이용한 데이터 처리 방법
GB2467944A (en) * 2009-02-23 2010-08-25 Andrew Ernest Chapman Stereoscopic effect without glasses
KR101599872B1 (ko) * 2009-02-25 2016-03-04 삼성전자주식회사 디지털 영상 처리 장치, 그 제어방법 및 이를 실행시키기 위한 프로그램을 저장한 기록매체
TWI393980B (zh) * 2009-06-08 2013-04-21 Nat Univ Chung Cheng The method of calculating the depth of field and its method and the method of calculating the blurred state of the image
WO2011014419A1 (en) 2009-07-31 2011-02-03 3Dmedia Corporation Methods, systems, and computer-readable storage media for creating three-dimensional (3d) images of a scene
US20110025830A1 (en) 2009-07-31 2011-02-03 3Dmedia Corporation Methods, systems, and computer-readable storage media for generating stereoscopic content via depth map creation
US9380292B2 (en) 2009-07-31 2016-06-28 3Dmedia Corporation Methods, systems, and computer-readable storage media for generating three-dimensional (3D) images of a scene
JP2011066507A (ja) * 2009-09-15 2011-03-31 Toshiba Corp 画像処理装置
EP2499811B1 (en) 2009-11-13 2019-08-28 Koninklijke Philips N.V. Efficient coding of depth transitions in 3d video
US9344701B2 (en) 2010-07-23 2016-05-17 3Dmedia Corporation Methods, systems, and computer-readable storage media for identifying a rough depth map in a scene and for determining a stereo-base distance for three-dimensional (3D) content creation
WO2012061549A2 (en) 2010-11-03 2012-05-10 3Dmedia Corporation Methods, systems, and computer program products for creating three-dimensional video sequences
US8553977B2 (en) 2010-11-15 2013-10-08 Microsoft Corporation Converting continuous tone images
US10200671B2 (en) 2010-12-27 2019-02-05 3Dmedia Corporation Primary and auxiliary image capture devices for image processing and related methods
US8274552B2 (en) 2010-12-27 2012-09-25 3Dmedia Corporation Primary and auxiliary image capture devices for image processing and related methods
US8406548B2 (en) * 2011-02-28 2013-03-26 Sony Corporation Method and apparatus for performing a blur rendering process on an image
CN102332158B (zh) * 2011-07-26 2013-06-12 深圳万兴信息科技股份有限公司 一种利用阿尔法通道的图像合成方法及系统
US9373213B1 (en) * 2011-11-08 2016-06-21 Zynga Inc. Adaptive object placement in computer-implemented games
US9380186B2 (en) * 2012-08-24 2016-06-28 Digimarc Corporation Data hiding for spot colors in product packaging
US9449357B1 (en) 2012-08-24 2016-09-20 Digimarc Corporation Geometric enumerated watermark embedding for spot colors
US11263829B2 (en) * 2012-01-02 2022-03-01 Digimarc Corporation Using a predicted color for both visibility evaluation and signal robustness evaluation
JP5572647B2 (ja) * 2012-02-17 2014-08-13 任天堂株式会社 表示制御プログラム、表示制御装置、表示制御システム、および表示制御方法
US11810378B2 (en) * 2012-08-24 2023-11-07 Digimarc Corporation Data hiding through optimization of color error and modulation error
US9007402B2 (en) * 2012-09-18 2015-04-14 Facebook, Inc. Image processing for introducing blurring effects to an image
JP2014235657A (ja) * 2013-06-04 2014-12-15 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
CN104282029B (zh) * 2013-07-11 2018-10-19 北京中盈安信技术服务股份有限公司 一种三维模型影像处理方法和电子终端
CN103632346B (zh) * 2013-11-27 2017-06-13 广东威创视讯科技股份有限公司 数字视频图像锐化度调节实现方法及装置
US9565335B2 (en) 2014-01-02 2017-02-07 Digimarc Corporation Full color visibility model using CSF which varies spatially with local luminance
US9667829B2 (en) * 2014-08-12 2017-05-30 Digimarc Corporation System and methods for encoding information for printed articles
CN104899838B (zh) * 2015-05-29 2017-11-28 小米科技有限责任公司 调整图像的方法及装置
KR102390980B1 (ko) * 2015-07-24 2022-04-26 엘지디스플레이 주식회사 영상 처리 방법, 영상 처리 회로와, 그를 이용한 표시 장치
KR20180099703A (ko) * 2015-12-31 2018-09-05 톰슨 라이센싱 적응형 초점면을 갖는 가상 현실을 렌더링하기 위한 구성
US10179288B2 (en) 2016-06-20 2019-01-15 Zynga Inc. Adaptive object placement in computer-implemented games
CN109658365B (zh) 2017-10-11 2022-12-06 阿里巴巴(深圳)技术有限公司 图像处理方法、装置、系统和存储介质
JP7131080B2 (ja) * 2018-05-28 2022-09-06 大日本印刷株式会社 ボリュームレンダリング装置
CN112950692B (zh) * 2019-11-26 2023-07-14 福建天晴数码有限公司 一种基于移动游戏平台的图像景深处理方法及其系统
CN112109549B (zh) * 2020-08-25 2021-11-30 惠州华阳通用电子有限公司 一种仪表显示方法和系统
US11593989B1 (en) * 2022-07-28 2023-02-28 Katmai Tech Inc. Efficient shadows for alpha-mapped models

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5941222B2 (ja) 1978-08-30 1984-10-05 株式会社日立製作所 図形表示装置
US5379129A (en) 1992-05-08 1995-01-03 Apple Computer, Inc. Method for compositing a source and destination image using a mask image
JP3394258B2 (ja) * 1993-06-21 2003-04-07 株式会社ナムコ 画像合成装置およびこれを用いたビデオゲーム装置
US5596686A (en) * 1994-04-21 1997-01-21 Silicon Engines, Inc. Method and apparatus for simultaneous parallel query graphics rendering Z-coordinate buffer
US5808618A (en) * 1994-10-21 1998-09-15 Matsushita Electric Industrial Co., Ltd. Three-dimensional displaying apparatus having frame buffer and depth buffer
JP3578498B2 (ja) 1994-12-02 2004-10-20 株式会社ソニー・コンピュータエンタテインメント 画像情報処理装置
US5757376A (en) 1994-12-02 1998-05-26 Sony Corporation Method of producing image data and associated recording medium
GB9611941D0 (en) 1996-06-07 1996-08-07 Philips Electronics Nv Three-dimensional image texture mapping
WO1998004087A1 (fr) * 1996-07-18 1998-01-29 Sanyo Electric Co., Ltd. Dispositif et procede pour convertir des signaux video bidimensionnels en signaux video tridimensionnels
GB9616262D0 (en) * 1996-08-02 1996-09-11 Philips Electronics Nv Post-processing generation of focus/defocus effects for computer graphics images
US5929862A (en) * 1996-08-05 1999-07-27 Hewlett-Packard Co. Antialiasing system and method that minimize memory requirements and memory accesses by storing a reduced set of subsample information
US6097393A (en) * 1996-09-03 2000-08-01 The Takshele Corporation Computer-executed, three-dimensional graphical resource management process and system
US6157733A (en) 1997-04-18 2000-12-05 At&T Corp. Integration of monocular cues to improve depth perception
US6100899A (en) 1997-10-02 2000-08-08 Silicon Graphics, Inc. System and method for performing high-precision, multi-channel blending using multiple blending passes
US6115485A (en) * 1997-10-06 2000-09-05 General Electric Company Introducing reduced data set information into a primary image data set
US6184891B1 (en) 1998-03-25 2001-02-06 Microsoft Corporation Fog simulation for partially transparent objects
US6466185B2 (en) * 1998-04-20 2002-10-15 Alan Sullivan Multi-planar volumetric display system and method of operation using psychological vision cues
US6377229B1 (en) * 1998-04-20 2002-04-23 Dimensional Media Associates, Inc. Multi-planar volumetric display system and method of operation using three-dimensional anti-aliasing
US6271847B1 (en) * 1998-09-25 2001-08-07 Microsoft Corporation Inverse texture mapping using weighted pyramid blending and view-dependent weight maps
US6646687B1 (en) * 1999-04-16 2003-11-11 Ultimatte Corporation Automatic background scene defocusing for image compositing
CA2316611A1 (en) 1999-08-31 2001-02-28 Nintendo Co. Ltd. Method and apparatus for providing depth blur effects within a 3d videographics system
AU2040701A (en) * 1999-12-02 2001-06-12 Channel Storm Ltd. System and method for rapid computer image processing with color look-up table
US6587114B1 (en) * 1999-12-15 2003-07-01 Microsoft Corporation Method, system, and computer program product for generating spatially varying effects in a digital image
JP3448536B2 (ja) * 1999-12-31 2003-09-22 株式会社スクウェア・エニックス 三次元コンピュータ画像処理のプログラムを記録したコンピュータ読み取り可能な記録媒体、ぼかし描画処理方法およびビデオゲーム装置
GB2363956B (en) * 2000-01-28 2004-04-14 Namco Ltd Game system and image creating method
JP4656616B2 (ja) 2000-01-28 2011-03-23 株式会社バンダイナムコゲームス ゲームシステム、プログラム及び情報記憶媒体
US6426755B1 (en) * 2000-05-16 2002-07-30 Sun Microsystems, Inc. Graphics system using sample tags for blur
US6956576B1 (en) * 2000-05-16 2005-10-18 Sun Microsystems, Inc. Graphics system using sample masks for motion blur, depth of field, and transparency
US6590574B1 (en) * 2000-05-17 2003-07-08 Microsoft Corporation Method, system, and computer program product for simulating camera depth-of-field effects in a digital image
US6789109B2 (en) * 2001-02-22 2004-09-07 Sony Corporation Collaborative computer-based production system including annotation, versioning and remote interaction
US6919906B2 (en) * 2001-05-08 2005-07-19 Microsoft Corporation Discontinuity edge overdraw

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100888537B1 (ko) * 2004-06-28 2009-03-11 마이크로소프트 코포레이션 이미지의 2 계층이며, 삼차원인 표현을 생성하기 위한 컴퓨터 구현 방법, 시스템 및 컴퓨터―판독가능 매체
KR100971862B1 (ko) * 2004-06-28 2010-07-22 마이크로소프트 코포레이션 이미지의 2 계층이며, 삼차원인 표현을 생성하기 위한 시스템 및 방법
KR20110074775A (ko) * 2008-10-21 2011-07-01 코닌클리케 필립스 일렉트로닉스 엔.브이. 장면의 층상 깊이 모델을 제공하기 위한 방법 및 디바이스
KR101015935B1 (ko) * 2009-10-28 2011-02-23 주식회사 넥슨 피사계 심도 및 모션 블러 처리 컴퓨터 시스템 및 그 방법

Also Published As

Publication number Publication date
JP2004005567A (ja) 2004-01-08
US20030189568A1 (en) 2003-10-09
EP1353296B1 (en) 2005-06-08
ES2243815T3 (es) 2005-12-01
DE60300788D1 (de) 2005-07-14
US7227544B2 (en) 2007-06-05
EP1353296A1 (en) 2003-10-15
ATE297574T1 (de) 2005-06-15
KR100549358B1 (ko) 2006-02-08
TW200305109A (en) 2003-10-16
US7081892B2 (en) 2006-07-25
TW583599B (en) 2004-04-11
DE60300788T2 (de) 2006-03-23
JP3725524B2 (ja) 2005-12-14
US20060181549A1 (en) 2006-08-17

Similar Documents

Publication Publication Date Title
KR100549358B1 (ko) Z-버퍼 이미지 데이터 및 알파 융합을 사용하는 필드심도를 갖는 이미지
US6900799B2 (en) Filtering processing on scene in virtual 3-D space
KR100392808B1 (ko) 화상데이터생성방법과화상데이터처리장치및기록매체
JP3668019B2 (ja) 記録媒体、画像処理装置および画像処理方法
JP3647487B2 (ja) テクスチャマッピング装置
US7176919B2 (en) Recirculating shade tree blender for a graphics system
KR100823786B1 (ko) 표시장치, 표시방법, 및, 프로그램을 기록한 컴퓨터 판독 가능한 정보기록매체
WO1999052077A1 (fr) Dispositif et procede de trace d'images, et support associe
JP3625184B2 (ja) ゲーム用3次元画像処理方法、装置、ゲーム用3次元画像処理プログラムを記録した可読記録媒体及びビデオゲーム装置
KR20010113730A (ko) 영상을 처리하는 방법 및 장치
JP2006318389A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2004005452A (ja) 画像処理装置、画像処理方法、半導体デバイス、コンピュータプログラム、記録媒体
US7212215B2 (en) Apparatus and method for rendering an antialiased image
US6717575B2 (en) Image drawing method, image drawing apparatus, recording medium, and program
JP2002024849A (ja) 3次元画像処理装置及び3次元画像処理プログラムを記録した可読記録媒体
JP2004096730A (ja) ビデオ処理方法及びビデオ処理装置
JP3990258B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2004334661A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4447000B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2006011539A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3745659B2 (ja) 画像生成装置および画像生成プログラム
US6831639B2 (en) Computer readable storage medium storing 3-D game image processing program, 3-D game image processing method, video game machine, and 3-D game image processing program
JPH10143681A (ja) 画像処理方法及びその装置
JP2006252427A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2003150976A (ja) 画像処理方法、画像処理装置、並びに画像処理方法を実施するための記憶媒体及びプログラム

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: 20130110

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140109

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150108

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160112

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170118

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180110

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190111

Year of fee payment: 14