KR101034925B1 - 텍스쳐 정보를 엔코딩하는 방법 및 장치 - Google Patents

텍스쳐 정보를 엔코딩하는 방법 및 장치 Download PDF

Info

Publication number
KR101034925B1
KR101034925B1 KR1020047019919A KR20047019919A KR101034925B1 KR 101034925 B1 KR101034925 B1 KR 101034925B1 KR 1020047019919 A KR1020047019919 A KR 1020047019919A KR 20047019919 A KR20047019919 A KR 20047019919A KR 101034925 B1 KR101034925 B1 KR 101034925B1
Authority
KR
South Korea
Prior art keywords
texel
value
pixel
reference value
values
Prior art date
Application number
KR1020047019919A
Other languages
English (en)
Other versions
KR20050004915A (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 KR20050004915A publication Critical patent/KR20050004915A/ko
Application granted granted Critical
Publication of KR101034925B1 publication Critical patent/KR101034925B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • 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
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed

Abstract

픽셀은 제1 텍셀 기준값, 제2 텍셀 기준값 및 텍셀을 3-투플(3-tuple)의 제1 텍셀 기준값, 제2 텍셀 기준값 및 제3 텍셀 기준값에 매핑시키도록 동작하는 텍셀 값을 저장함으로써 텍스쳐 되어, 텍셀의 블록을 표시한다. 이 픽셀에 대한 픽셀 값은 저장된 텍셀 값으로부터 생성되고, 이 픽셀은 생성된 픽셀 값에 응답하여 디스플레이 된다. 일부 실시예에서, 각각의 다수 텍셀 기준값 및 이에 매핑되는 텍셀 값은 다수의 중첩하는 텍셀 블록 중 각각의 블록에 대하여 저장된다. 또 다른 실시예에서, 픽셀용 제1 밉맵 값(mipmap value)은 가장 근접한 이웃 텍셀에 대한 검색된 텍셀값으로부터 쌍선형 보간된다. 픽셀용 제2 밉맵값은 가장 근접한 이웃 텍셀의 세트에 대한 검색된 텍셀값을 평균화함으로써 생성된다. 픽셀에 대한 픽셀 값은 제1 및 제2 밉맵 간을 보간함으로써 생성된다. 본 발명은 방법, 장치 및 컴퓨터 프로그램 제품으로서 구현될 수 있다.
텍셀값, 픽셀, 밉맵값, 보간, 매핑

Description

텍스쳐 정보를 엔코딩하는 방법 및 장치{METHOD AND APPARATUS FOR ENCODING TEXTURE INFORMATION}
본 출원은 Akenine-Moller 등이 2002년 12월 20일자 출원한 발명의 명칭이 "Graphics Texture Processing Methods, Apparatus and Computer Program Products Using Texture Compression, Block Overlapping and/or Texture Filtering"인 미국 특허 출원 10/326,849호의 우선권을 주장하고, Akenine-Moller 등이 2002년 6월 7일에 출원한 발명의 명칭이 " POOMA Texture Filtering System"인 미국 가출원 제60/387,049호의 이점을 주장한 것인데, 이들의 개시 내용이 전반적으로 본원에 참조되어 있다.
본 발명은 컴퓨터 그래픽에 관한 것이며, 특히 그래픽 텍스쳐 처리 방법, 장치 및 컴퓨터 프로그램 제품에 관한 것이다.
3차원 그래픽의 실시간 렌더링은 게임, 사람-기계 인터페이스, 메시지통신 및 엠-커머스(m-commerce)를 포함하여, 이동 단말기 상에서 다수의 관심을 끄는 응용들을 갖는다. 3차원 렌더링이 계산면에서 비용을 수반하는 작업이기 때문에, 전용 하드웨어가 종종, 충분한 수행성능에 도달하도록 구축되어야만 한다. 이로 인해, 이 하드웨어의 복잡성 및 대역폭 사용을 혁신적으로 낮추는 방법들이 매우 중 요하게 되었다.
실시간 렌더링을 실현하는 레벨을 증가시키는 한 가지 표준 방식은 표면에 텍스쳐를 인가하는 것이다. 이는 주변 매핑, 범프 매핑, 자동 텍스쳐 좌표 생성을 통한 텍스쳐링, 프로젝션-기반으로 한 텍스쳐링 등등을 포함한 다양한 방식으로 행해질 수 있다. 텍스쳐를 사용하는 모든 다양한 방식에 공통되는 것은, 에일리어싱(aliasing) 문제를 감소시키기 위하여 높은 품질의 텍스쳐 필터링이 필요로 된다는 것이다. 에일리어싱은 특히 동적 화면에 대해 시청자를 크게 왜곡시킬 수 있다.
하드웨어로 구현되는 텍스쳐 필터링에 공통으로 사용되는 방법은 밉매핑(mipmapping)이고, 삼선형 밉매핑(trilinear mipmapping) 형태에서, 이는 상대적으로 높은 품질의 필터링을 제공한다. 이의 단점은 오버블러링(overblurring)이 생성될 수 있다는 것이다. 그러나, 이는 에일리어싱에 비해 바람직할 수 있다는 점에 유의하여야 한다. 밉매핑은 예를 들어, Lance Williams 발표한 "Pyramidal Parametrics"(Computer Graphic, SIGGRAPH'83 Proceedings, pp. 1--11, July 1983)에 서술되어 있고, 이 문헌의 개시 내용이 전반적으로 본원에 참조되어 있다.
삼선형 밉매핑은 사용되는 한 컬러로 필터링되는 8개의 텍셀을 필요로 하는데, 이로 인해, 최악의 경우에, 8개의 메모리 판독(memory reads)이 필터링된 컬러가 획득되기 전 필요로 될 수 있다. 프리페칭과 더불어 텍스쳐 캐쉬(texture caches)는 이 문제를 감출 수 있지만, 이와 같은 하드웨어의 비용을 높게할 수 있다.
이방성 필터링 방식은 예를 들어 여러 삼선형 밉맴 샘플을 필터링함으로써 오버블러링을 감소시키거나 제거할 수 있다. 최종 목표는, 이들 모두가 픽셀을 텍스쳐 공간으로 투영함으로써 획득되는 4변형을 완전하게 커버할 수 있도록 하는 것이다. 품질을 증가시키는 동안, 다수의 메모리 판독은 급격하게 증가할 수 있다. 통상적인 개수의 범위는 16-128 텍셀 판독이다.
렌더링, 텍스쳐 필터링, 텍스쳐 매핑, 및/또는 파라메트릭의 양상은 이하의 참조문헌, Akenine-Moller, Tomas 및 Eric Haines가 발표한 " Real-Time Rendering, 2nd edition, June 2002"; Beers, Andrew C., Maneesh Agrawlar 및 Navin Chaddha가 발표한 "Rendering from Compressed Textures, Computer Graphics(SIGGRAPH 96 Proceedings), pp.373-378, August 1996; Behrens, Uwe가 발표한 "Averaged Area Tables for Texture Filtering, SIGGRAPH 2001 Conference Abstracts and Applications, p. 150, 2001"; Crow, Franklin C.가 발표한 " Summed-Area Tables for Texture Mapping, Computer Graphics(SIGGRAPH'84 Proceedings), pp. 207-212, July 1984"; McCabe, Dan, and John Brothers가 발표한 "DirectX 6 Texture Map Compression, Game Developer Magazine, vol.5, no.8, pp.42-46, August 1998"; 및 Williams, Lance가 발표한 "Pyramidal Parametrics," Computer Graphics(SIGGRAPH'83 Proceedings), pp.1--11, July 1983"에 서술되어 있다. 이들 참조문헌들 각각의 개시내용이 본원에 전반적으로 참조되어 있다.
이동 플랫폼의 경우에, 메모리 액세스는 대단히 많은 비용을 수반할 수 있다. 표준 컴퓨터 그래픽 아키텍쳐에서, 2/3 이상의 메모리 액세스는 텍스쳐링에 의한 것일 수 있다. 예를 들어, 삼선형 밉매핑의 예에서, 텍스쳐링은 8개의 메모리 액세스를 필요로 하는 반면에, 래스터라이저(rasterizer)의 나머지는 또 다른 3개(z-판독, z-기록, 및 컬러버퍼 기록)를 필요로 할 수 있다. 픽셀 당 11개의 메모리 액세스로 인해, 적절한 수행성능을 획득하기 위하여 클럭 주파수는 매우 높게될 필요가 있다. 높은 클럭 속도는 많은 전력을 소모할 수 있어 이동 플랫폼에 적합하지 않을 수 있다. 따라서, 밉매핑과 유사한 텍스쳐 품질을 유지하면서 텍스쳐링하는데 필요로 되는 메모리 액세스 수를 감소시키는 것이 바람직하다.
텍스쳐 압축은 그래픽 하드웨어의 대역폭을 절약하기 위하여 종종 사용되는 수단이다. 이 개념은, 텍셀 값(이는 텍스쳐를 포함할 수 있다)이 메모리에 압축 포맷으로 저장되어 텍스쳐가 버스를 통해서 전송될 때 필요로 되는 대역폭을 감소시킬 수 있다는 것이다. 데이터가 수신지에 도달할 때, 하드웨어 메커니즘은 텍셀 데이터를 압축해제 할 수 있다.
Andrew C.Beers 등이 발표한 "Rendering from Compressed Textures"(Computer Graphics, SIGGRAPH 96 Proceedings, pp.373-378, August 1996)에 이에 대한 첨단 작업이 서술되었는데, 이 문헌의 개내용이 전반적으로 본원에 참조되어 있다. Beer 등은 벡터 양자화를 사용하여 다수의 영상을 사용하여 벡터 집합을 트레인닝하는 것을 서술하였다. 가장 관심을 끈 방법을 S3TC라 한다.
본 발명의 일부 실시예를 따르면, 픽셀은 제1 텍셀 기준값, 제2 텍셀 기준값 및 텍셀을 3-투플(3-tuple)의 제1 텍셀 기준값, 제2 텍셀 기준값 및 제3 텍셀 기준값에 매핑시키도록 동작하는 텍셀 값을 저장하여 텍셀의 블록을 표시함으로써 텍스쳐링된다. 이 픽셀에 대한 픽셀 값은 저장된 텍셀 값으로부터 생성되고, 이 픽셀은 생성된 픽셀 값에 응답하여 디스플레이된다. 제3 텍셀 기준값은 제1 및 제2 텍셀 기준 값에 의해 수학적으로 결정될 수 있으며, 예를 들어, 제3 텍셀 기준값은 제1 및 제2 텍셀 기준값의 산술 평균을 표시할 수 있다. 텍셀 값은 예를 들어, RGB 컬러 값, 그레이 스케일 값 또는 다른 그래픽 표현을 포함할 수 있다.
본 발명의 또 다른 실시예에서, 각각 다수의 텍셀 기준값 및 이에 매핑되는 텍셀 값은 다수의 중첩하는 텍셀 블록들 중 각 블록에 대하여 저장된다. 일부 실시예에서, 픽셀 맵 내의 픽셀에 대한 픽셀 값은 다수의 중첩하는 텍셀 블록 내의 가장 근접한 이웃 텍셀의 세트에 대한 저장된 텍셀 값으로부터 생성될 수 있는데, 여기서 텍셀 블록은 중첩되어 픽셀 맵 내의 임의의 픽셀에 대한 컬러 값을 생성는데 하나 이상의 텍셀 블록에 대한 저장된 텍셀 값을 필요로 하도록 한다. 또 다른 실시예에서, 픽셀 값은 다수의 중첩하는 텍셀 블록 내에서 가장 근접한 이웃 텍셀의 세트에 대한 저장된 텍셀 값으로부터 픽셀 맵 내의 픽셀에 대해 생성될 수 있는데, 여기서 텍셀 블록은 중첩되어 픽셀 맵 내의 임의의 픽셀에 대한 컬러 값을 생성하는데 2개의 텍셀 블록에 대한 저장된 텍셀 값을 필요로 하도록 한다.
본 발명의 또한 다른 실시예를 따르면, 픽셀에 대한 제1 밉맵 값(mipmap value)은 가장 근접한 이웃 텍셀의 세트에 대한 검색된 텍셀 값으로부터 쌍선형 보간된다. 이 픽셀에 대한 제2 밉맵 값은 가장 근접한 이웃 텍셀에 대한 검색된 텍셀 값을 평균화함으로써 생성된다. 픽셀에 대한 픽셀 값은 제1 및 제2 밉맵 값 간을 보간함으로써 생성된다.
본 발명을 따른 텍스쳐 압축, 블록 중첩 및 텍스쳐 필터링 기술은 개별적으로 및/또는 조합하여 사용될 수 있다. 본 발명은 방법, 장치 및 컴퓨터 프로그램 제품으로서 구현될 수 있다. 예를 들어, 본 발명은 무선 단말기, 개인 휴대 정보 단말기(PDA) 등과 같은 휴대 장치에 사용하는데 유용할 수 있다.
도1은 본 발명의 일부 실시예를 따른 텍셀 블록에 대한 저장 표현을 도시한 도면.
도2는 본 발명의 다른 실시예를 따른 전형적인 3진 텍셀 값을 도시한 도면.
도3은 전형적인 픽셀/텍셀 관계를 도시한 도면.
도4는 본 발명의 일부 실시예를 따른 중첩하는 텍셀 블록 배열을 도시한 도면.
도5는 본 발명의 일부 실시예를 따른 전형적인 가장 근접한 이웃 텍셀의 세트를 도시한 도면.
도6은 본 발명의 일부 실시예를 따른 텍스쳐 처리를 제공하도록 구성된 무선 단말기를 도시한 도면.
도7은 본 발명의 다른 실시예를 따른 전형적인 텍스쳐 처리 동작을 도시한 순서도.
본 발명이 지금부터, 본 발명의 전형적인 실시예를 도시한 첨부 도면을 참조하여 보다 상세하게 설명될 것이다. 이 응용이 철저하고 완전하게 되도록 이들 실 시예가 제공된다. 동일한 요소들에는 동일한 참조번호가 병기되어 있다.
본원에 서술된 본 발명의 각종 실시예를 따르면, 대역폭 사용을 크게 감소시킬 수 있는 텍스쳐 필터링에 대한 신규 방법들이 제공된다. 본 발명의 양상들은 다음을 포함할 수 있다:
텍스쳐 압축; 및/또는
텍스쳐 블록 중첩; 및/또는
텍스쳐 필터링
이들 3가지 양상들은 본 발명의 실시예를 따라서 조합되어, POOMA(Poor Man's Texture Filtering System)을 제공한다. 이와 같은 시스템의 전형적인 실시예에 대한 간략한 요약이 우선 제공될 것이고, 본 발명의 양상을 구현할 수 있는 보다 상세한 내용이 이어질 것이다.
본 발명의 일부 실시예에서, 텍스쳐 영상은 소형 블록(예를 들어, 3×2 텍셀)으로 분할되고, 텍스쳐 압축은 이와 블럭을 페치하는데 필요로 되는 메모리 대역폭을 전형적으로 하나의 32-비트 메모리 판독에 이르기 까지 감소시키는데 사용될 수 있다. 다음 단계, 즉 텍스쳐 중첩은 블록을 중첩시켜, 모두 4-이웃 텍셀 그룹이 항상 블록들 중 한 블록에 완전히 포함되도록 한다. 이는 하나의 메모리 액세스로 쌍선형 필터링을 행할 수 있게 한다. 본원에 서술된 바와 같은 텍스쳐 필터링은 4개의 텍셀을 필터링하여 픽셀의 컬러를 획득하는 방법을 제공한다. 밉매핑의 경우에서 처럼, 4개의 픽셀에 대한 쌍선형 필터링은 최하부 밉매핑 레벨에 대해 사용될 수 있다. 그러나, 상부 밉맵 레벨로부터 텍셀을 페치하는 대신에, 4개의 최근 판독 텍셀의 평균이 계산되어 이 값이 대신 사용된다. 이 결과는 가장 근접한 이웃 밉매핑을 사용하는 것 보다 훨씬 양호한 텍스쳐링을 제공할 수 있고 거의 삼선형 밉매핑 만큼 양호한 결과를 발생시킬 수 있다. 이 비용은 가장 근접한 이웃 밉매핑(열악한 품질)당 2개 및 삼선형 밉매핑(고품질)당 8개와 비교하면 필터링된 컬러당 단지 하나의 32비트 메모리 판독일 수 있다.
A. 텍스쳐 압축
본원에 서술된 본 발명의 실시예에 따른 텍스쳐 압축 디코더의 양상은 대중적인 S3TC 방식과 유사할 수 있는데, 이는 단지 하나의 32-비트 메모리 트랜스퍼에서 전체 블록을 판독할 수 있도록 수정한 것이다. 32-비트 아키텍쳐의 예에서, 이하의 수정은 단독으로 또는 조합하여 비율 1 블록/메모리 트랜스퍼를 허용한다:
블록 크기는 상당히 작은데, 예를 들어, 2×3 픽셀이다;
3개의 컬러(2개의 기준 컬러 이외에도 이들 컬러간의 1컬러)가 4개 대신에 사용된다;
기준 컬러는 16개 대신에 컬러당 11 비트로 코딩되며; 및/또는
3개의 컬러는 (2진 표현과 대향되는) 3진 표현으로 코딩된다.
이들 수정은 하나의 32-비트 메모리 트랜스퍼(4 바이트)에서 전체 블록을 판독할 수 있다.
텍셀의 2×3 블록은 도1에 도시된 바와 같은 데이터 요소(100)를 사용하여 표현될 수 있다. 도1에서, rL, gL, 및 bL은 "좌"에서 처럼 "L"로 표현된 바와 같이 제1 기준 컬러의 적, 녹 및 청색 성분을 표현한다. 동일한 방식으로, rR, gR, 및 bR은 "우"에서 "R"로 표현된 바와 같이 제2 기준 컬러를 표시한다. 이들 2개의 컬러로부터, "중간" 기준 색은 R 및 L의 산술 평균을 취함으로써 생성된다. 이 새로운 기준 컬러는 "중간"에서 "M"으로 표시된다. R 및 L이 4+4+3 비트로 저장되는 반면, 5+5+4 비트는 M을 표시하는데 사용될 수 있다.
게다가, 도1에서 x로 표시된 비트는 블록 내의 텍셀 중 3개의 텍셀의 컬러를 표시한다. 예를 들어, 최상부 3개의 텍셀이 x로부터 자신들의 컬러를 획득하고 최하부 텍셀들은 y로 제어되는 것이라고 선택할 수 있다. x 및 y 둘 다는 표1을 사용함으로써 3개의-투플 L, M 및 R에 매핑된다.
Figure 112004057572699-pct00001
예를 들어, x=23(10111) 및 y=0(00000)이면, 블록(200)은 도2에 도시된 바와 같이 디코딩되는데, 여기서 최좌측 픽셀은 "우" 기준값을 획득할 것이고, 다음 픽셀은 "중간" 값 등을 획득할 것이다. 27 내지 31 범위는 사용되지 않는다. 일반적으로, ceiling(log(3^k)/log(2)) 비트를 사용하여 k3-투플을 코딩할 수 있다. 이는 2×3=6 픽셀 값이 단지 하나의 32 비트 메모리 트랜스퍼에서 판독되도록 할 수 있다. 픽셀 당 2 바이트와 비교하면, 압축비는 2×4:6×4, 즉 1:3이다. 텍스쳐가 확대되면, 다음 픽셀이 동일한 블록을 처리할 보다 큰 기회가 있다는 점에 유의하라. 따라서, 제로 메모리 트랜스퍼는 픽셀의 텍스쳐링을 위하여 필요로 될 수 있다.
B. 텍스쳐 블록 중첩
종래의 쌍선형 보간을 행할 때, 텍스쳐 맵 내의 동일한 지점에 가장 근접한 4개의 텍셀이 필요로 될 수 있다. 예를 들어, 도3에 도시된 바와 같이, 픽셀이 그레이 에리어(310) 내에 있다면, 가장 근접한 이웃 텍셀 컬러 값 중 모두 4개의 컬러 값이 동일한 블록 내에서 발견되고, 단지 하나의 메모리 트랜스퍼가 필요로 된다. 그러나, 모든 가장 근접한 이웃들을 획득하기 위해선 최대 4개의 블록을 거의 자주 페치할 필요가 있다.
도4는 본 발명의 실시예에 따라서 중첩 방식으로 블록을 펼쳐, 쌍선형 보간을 위한 부가적인 판독을 피하도록 하는 방법을 도시한 것이다. 따라서, 실선으로 표시된 블록(400a)은 정사각형 점선(우측으로)으로 표시된 블록(400b) 및 둥근 점선(아래)으로 표시된 블록(400c) 둘 다와 중첩한다. 이 방식으로, 어떤 픽셀의 모두 4개의 이웃들을 포함하는 하나의 블록을 항상 찾을 수 있다. 따라서, 4개의 이웃들은 단지 하나의 메모리 페치에서 펼쳐질 수 있다.
이는 x-방향에서 데이터를 1.5배 확장시키고 y-방향에서 2배 확장시키는 댓가를 치루고 이루어질 수 있다. 그러나, 텍스쳐 압축의 압축비가 3:1이기 때문에, 텍스쳐 압축도 텍스쳐 중첩도 사용되지 않으면, 결국 동일한 메모리 요구조건으로 될 것이다.
중첩은 한 방향으로 제한될 수 있다. 예를 들어, 단지 x-방향에서만 중첩됨으로써, 데이터는 단지 1.5의 팩터로 확장된다. (압축을 포함하여, 전체 저장은 단 지 원래의 0.5에 불과하다). 그 후, 이 경우들의 50%에서, 모두 4개의 픽셀은 블록 내에 존재하게 된다. 나머지 경우에서, 또 다른 블록이 판독되어야만 된다. 표2는 어떤 메모리 요구조건들 및 어떤 평균 대역폭이 필요로 되는지를 도시한 것이다.
Figure 112004057572699-pct00002
C. 텍스쳐 필터링
픽셀의 4개의 텍셀 이웃들이 페치되면, 텍스쳐링이 시작될 수 있다. 도5에 도시된 바와 같이 A, B, C 및 D로 4개의 가장 근접한 텍셀을 표시하면, A, B, C 및 D에 대해 쌍선형 보간을 사용함으로써, 제1의 하위 레벨 밉맵 값(Q)이 획득될 수 있다. A, B, C 및 D를 평균화함으로써, 제2 상위 레벨 밉맵 값(P)이 획득될 수 있다. 선형 보간은 제1 및 제2 밉맵값(Q 및 P)간에서 수행되어 픽셀이 하위 및 상위-밉맵 레벨에 얼마나 근접하는지에 따라 픽셀에 대한 값을 결정한다.
A, B, C 및 D가 텍셀 맵 내에서 균일한 위치에 존재한다면, P는 밉맵 계층에서 대응하는 텍셀이 될것이라는 점에 유의하라. 이 경우에, 이 결과는 하위 밉맵 레벨에서 쌍선형 보간 및 보다 높은 밉맵 레벨에서 가장 근접한 이웃 보간을 사용하는 것과 동일하게 될 것이다. 그러나, A, B, C 및 D가 균일한 위치상에 있지 않으면, 보다 높은 밉맵 레벨에서 가장 근접한 이웃을 사용하는 것보다 정확한 값이 획득될 수 있다. 따라서, 이 수행성능은 하위 레벨에서 쌍선형 및 상위 레벨에서 가장 근접한 이웃을 사용하는 것에 비해서 개선될 수 있다.
때때로, 상술된 POOMA 텍스쳐 필터링의 결과는 삼선형 필터링 보다 훨씬 양호하게 보이는데, 그 이유는 오버블러링이 심하게되지 않기 때문이다. 이 텍스쳐링 필터링은 텍스쳐 압축 및 텍스쳐 블록 중첩과 관계없이 메모리 트랜스퍼의 수의 1/2이될 수 있다는 점에 유의하라.
본 발명의 양상을 따르면, 텍셀의 표현에서 비트를 얻기 위한 성능은 4개의 레벨 대신에 3개의 레벨(L, M 및 R)에 의해 제공될 수 있다. 3진 표현은 4개의 레벨이 사용될 때 필요로 될 수 있는 2*k 비트 대신에, k개의 텍셀당 ceil(log(3^k)/log(2))만을 사용할 수 있다. 이는 블록 당 압축 효율성을 증가시킬 수 있다. 다른 양상을 따르면, 중첩 블록의 사용은 액세스될 필요가 있는 평균 블록의 수를 낮춰 픽셀이 픽셀 당 하나의 32-비트 메모리 액세스에 이르도록 한다. 또한 부가적인 양상을 따르면, 4개의 이웃 픽셀의 필터링은 사용되어, 픽셀 컬러를 산출하는데 사용될 수 있다. 이는 삼선형 밉매핑의 경우에서 처럼 2개 대신에 단지 하나의 밉-맵 레벨이 픽셀 당 액세스됨으로써, 필요로 되는 메모리 액세스의 수를 1/2이 되도록 하는 것을 의미한다. 이들 특징들은 각종 조합 및/또는 별도로 사용될 수 있는 것을 인지할 것이다.
D. 전형적인 구현방식
본 출원에서, 도6 및 도7은 본 발명의 실시예를 따른 전형적인 장치 및 동작을 도시한 도면이다. 전체 도면에 도시된 동작 및 이의 조합이 무선 통신 시스템의 구성요소 또는 무선 단말기에 포함되는 회로와 같은 하나 이상의 전자 회로를 사용하여 구현될 수 있다는 것을 이해할 것이다. 일반적으로 도면에 도시된 동작 및 이의 조합이 하나 이상의 이산 전자 부품, 하나 이상의 집적 회로(ICs), 하나 이상의 주문형 반도체(ASICs) 및 특수 응용 회로 모듈과 같은 하나 이상의 전자 회로 뿐만 아니라 마이크로프로세서 또는 디지털 신호 프로세서(DSP)와 같은 컴퓨터 또는 다른 데이터 처리 장치에 의해 구현되어, 컴퓨터 또는 다른 프로그램가능한 데이터 처리 장치를 실행하는 명령이 전자 회로 또는 특정 동작을 구현하는 다른 수단을 생성하도록 하는 기계를 제조한다. 컴퓨터 프로그램 명령은 또한, 하나 이상의 컴퓨터 또는 다른 데이터 처리 장치에 대해 실행되어 일련의 작용이 컴퓨터 또는 다른 프로그램가능한 장치에 의해 수행되도록 하여, 특정 동작을 포함하는 컴퓨터 구현되는 공정을 발생시키도록 한다.
컴퓨터 프로그램 명령은 또한, 명령 실행 시스템에 의해 사용하거나 이와 관련하는 매체 내에서 구현되는 컴퓨터-판독가능한 저장 매체내의 컴퓨터 프로그램 제품 형태로 구현될 수 있다. 컴퓨터-판독가능한 저장 매체는 전자, 자기, 광학 또는 자기 또는 광 디스크 또는 집적 회로 메모리 장치와 같은 다른 저장 매체로 국한되지 않는다. 예를 들어, 컴퓨터 프로그램 명령은 무선 통신 장치의 구성요소 내에 포함되는 메모리 및/또는 이와 같은 메모리를 프로그램하도록 동작가능한 저장 매체에서 구현될 수 있다. 따라서, 도6 및 도7의 개요적인 블록도는 전자 회로및 특정 동작을 수행하는 다른 장치를 지원하며, 특정 동작 및 이 특정 동작을 수행하도록 구성된 컴퓨터 프로그램 제품을 수행하도록 작용한다.
도6은 본 발명을 구현할 수 있는 무선 단말기(600)를 도시한다. 이 단말기(600)는 마이크로프로세서, 마이크로제어기, 디지털 신호 처리기(DSP) 또는 그래픽 처리기 및 관련 메모리(630)에 의해 제어되는 디스플레이(610)를 포함한다. 프로세서(620)로 구현되는 바와 같이 도시된 텍스쳐 프로세서 회로(622)는 메모리(630) 내에 텍셀 블록 정보를 저장하고 이로 부터 이를 검색한다. 프로세서(620) 내에 구현되는 것으로 도시된 디스플레이 생성기 회로(624)는 또한 텍스쳐 프로세서 회로(622)에 응답하여 디스플레이(610)를 제어한다. 텍스쳐 프로세서(622) 회로는 본원에 서술된 텍스쳐 압축, 블록 중첩 및 텍스쳐 필터링 기술을 수행하도록 구성될 수 있다.
도6의 장치는 전형적인 목적을 위하여 제공되고, 본 발명은 여러가지 다른 형태로 구현될 수 있다는 것을 알 수 있을 것이다. 예를 들어, 본 발명은 데스크톱 PCs 및 워크스테이션, 랩탑, 노트북, 태블릿 및 다른 휴대용 컴퓨터, 개인 휴대 정보 단말기(PDAs), 및 이-북 판독기 및 다른 휴대용 그래픽 장치를 포함한, 그래픽 디스플레이를 생성시키는 다른 유형의 장치에서 응용에 마찬가지로 따를 수 있다. 도6에 도시된 그래픽 처리 아키텍쳐가 단지 전형적이고 그래픽 디스플레이를 생성시키기 위하여 특수용도의 전용 그래픽 하드웨어를 사용하는 아키텍쳐와 같은 각종 아키텍쳐가 본 발명에 사용될 수 있다는 것을 또한 알 수 있을 것이다. 본 발명의 각종 실시예를 따르면, 본원에 서술된 텍스쳐 압축, 텍셀 블록 배열 및 텍스쳐 필터링은 개별적으로 또는 조합하여 사용될 수 있고, 이들 동작들은 도6의 무선 단말기(600)에 도시된 바를 포함하여 다수의 상이한 그래픽 처리 환경 중 임의의 환경에 적용될 수 있다.
도7은 예를 들어 도6의 무선 단말기의 프로세서(620) 및 메모리(630)에 의해 구현될 수 있는 본 발명의 일부 실시예를 따른 전형적인 텍스쳐 처리 동작을 도시한다. 각 데이터 요소(예를 들어, 상술된 바와 같은 RGB 컬러 정보를 포함하는 32-비트 워드)는 다수의 중첩 텍셀 블록(블록 710) 중 각 블록에 대하여 저장된다. 각 데이터 요소는 제1 및 제2 텍셀 기준 값 및 블록 내의 텍셀에 대한 하나 이상의 텍셀 값을 포함하는데, 여기서 상기 하나 이상의 텍셀 값은 텍셀을 3-투플의 제1 및 제2 텍셀 기준 값과 예를 들어 상기 제1 및 제2 기준값의 산술 평균으로서 상기 제1 및 제2 기준 값에 의해 결정되는 제3 텍셀 기준값에 매핑한다. 텍셀 값은 RGB 컬러 값, 그레이 스케일 값 및/또는 그래픽 응용에 통상적으로 사용되는 다른 표현 형태를 포함할 수 있지만 이에 국한되지 않는다.
가장 근접한 이웃 텍셀, 예를 들어, 픽셀에 대한 가장 근접한 4개의 이웃을 포함하는 텍셀 블록 도는 블록들과 관계된 데이터 요소 또는 요소들의 검색으로 시작된다(블록 720). 그 후, 검색된 데이터 요소(들) 내의 텍셀 값은 3-투플의 텍셀 기준값에 매핑된다(블록 730). 제1 밉맵 값은 가장 근접한 이웃 텍셀에 대한 텍셀 값으로부터 쌍선형 복간되고(블록 740) 제2 밉맵 값은 가장 근접한 이웃 텍셀에 대한 텍셀 평균을 평균화함으로써 생성된다(블록 750). 픽셀에 대한 픽셀값은 제1 및 제2 밉맵값으로부터 선형 보간되고(블록 760), 생성된 픽셀 값은 픽셀을 디스플레이하는데 사용된다(블록 770).
도7은 본 발명의 새로운 텍스쳐 압축, 중첩 텍셀 블록 배열 및 텍스쳐 필터 링 기술의 조합된 사용을 도시하지만, 종래 기술과의 조합시 이들 기술의 서브셋 사용이 본 발명의 영역내에 있다는 것을 인지할 것이다. 예를 들어, 본 발명의 새로운 텍스쳐 압축 기술은 종래의 비중첩하는 텍셀 블록 배열 및 종래의 쌍선형, 삼선형 또는 다른 텍스쳐 필터링 기술과 함께 사용될 수 있다. 유사하게, 종래의 텍스쳐 저장 및/또는 압축과 종래의 텍스쳐 필터링 기술은 본 발명의 새로운 텍셀 블록 배열과 함께 사용될 수 있다. 최종적으로, 종래의 텍스쳐 저장 및/또는 압축 기술과 종래의 텍셀 블록 배열은 본 발명의 새로운 텍스쳐 필터링 기술과 함께 사용될 수 있다.
도면 및 명세서에서, 본 발명의 전형적인 실시예가 기술되었다. 특정 용어가 사용되었지만, 이들은 일반적으로 설명을 위한것이지 제한하고자 하는 것이 아니다.

Claims (33)

  1. 픽셀을 텍스쳐링하는 방법에 있어서:
    텍셀 블록을 표시하기 위해서, 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑 값을 저장하는 단계로서, 상기 각각의 텍셀 매핑 값은 상기 제1 텍셀 기준값 및 상기 제2 텍셀 기준값으로부터 유도될 수 있는 k-투플의 텍셀 기준값으로 k개의 텍셀 값을 매핑하는, 저장 단계;
    상기 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 상기 픽셀에 대한 픽셀 값을 생성시키는 단계; 및
    상기 생성된 픽셀 값에 응답하여 상기 픽셀을 디스플레이하는 단계를 포함하는 픽셀을 텍스쳐링하는 방법.
  2. 제 1 항에 있어서,
    상기 k-투플의 텍셀 기준값이 상기 제1 및 제2 텍셀 기준값에 의해 수학적으로 결정되는 제3 텍셀 기준값을 포함하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  3. 제 2 항에 있어서,
    상기 제3 텍셀 기준값은 상기 제1 및 제2 텍셀 기준값들의 산술 평균을 표시하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  4. 제 1 항에 있어서,
    상기 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑값을 저장하는 단계는 제1 RGB 컬러 기준값, 제2 RGB 컬러 기준값 및 텍셀의 2x3 블록에 대한 두 개의 텍셀 매핑값을 저장하는 단계를 포함하는데, 두 개의 텍셀 매핑값 각각은 3-투플의 상기 제1 RGB 컬러 기준값, 상기 제2 RGB 컬러 기준값 및 제3 RGB 컬러 기준값으로 세 개의 텍셀을 매핑하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  5. 제 4 항에 있어서,
    상기 제1 RGB 컬러 기준값, 제2 RGB 컬러 기준값 및 두 개의 텍셀 매핑값을 저장하는 단계는 상기 제1 RGB 컬러 기준값, 상기 제2 RGB 컬러 기준값 및 단일 32-비트 워드에서 텍셀의 2×3 블록에 대한 2개의 텍셀 값을 저장하는 단계를 포함하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  6. 제 1 항에 있어서,
    상기 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑값을 저장하는 단계는 다수의 중첩하는 텍셀 블록들 중 각각의 블록의 각각의 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑값을 저장하는 단계를 포함하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  7. 제 1 항에 있어서,
    상기 제1 텍셀 기준값, 제2 텍셀 기준값, 및 하나 이상의 텍셀 매핑값을 저장하는 단계는 다수의 텍셀 블록들 중 각각의 블록의 각각의 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑값을 저장하는 단계를 포함하고,
    상기 픽셀에 대한 픽셀값을 생성시키는 단계는:
    상기 픽셀에 대한 가장 근접한 이웃 텍셀의 세트에 대한 텍셀값을 획득하기 위하여 적어도 하나의 텍셀 블록에 대한 저장된 텍셀 기준값 및 텍셀 매핑값을 프로세싱하는 단계;
    상기 픽셀에 대한 제1 밉맵 값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 텍셀 값으로부터 쌍선형 보간을 수행하는 단계;
    제2 밉맵값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 텍셀값을 평균화하는 단계; 및
    상기 픽셀에 대한 상기 픽셀값을 생성시키기 위하여 상기 제1 및 제2 밉맵 값 간을 보간하는 단계를 포함하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  8. 픽셀을 텍스쳐링하는 방법에 있어서:
    다수의 중첩하는 텍셀 블록 중 각각의 블록에 대한 각각의 다수의 텍셀 기준값, 및 상기 기준값에 매핑되는 텍셀 매핑값을 저장하는 단계;
    상기 저장된 텍셀 기준값 및 매핑값으로부터 상기 픽셀에 대한 픽셀값을 생성시키는 단계; 및
    상기 생성된 픽셀 값에 응답하는 상기 픽셀을 디스플레이하는 단계를 포함하는 픽셀을 텍스쳐링하는 방법.
  9. 제 8 항에 있어서,
    상기 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 상기 픽셀에 대한 픽셀값을 생성시키는 단계는 상기 다수의 중첩하는 텍셀 블록에서 가장 근접한 이웃 텍셀의 세트에 대한 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 픽셀 맵에서 픽셀에 대한 픽셀값을 생성시키는 단계를 포함하고,
    상기 픽셀 맵에서 임의의 픽셀에 대한 픽셀 값을 생성시키는 단계가 단지 하나의 텍셀 블록에 대한 저장된 텍셀 기준값 및 텍셀 매핑값을 필요로 하도록 텍셀 블록이 중첩되는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  10. 제 8 항에 있어서,
    상기 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 픽셀에 대한 픽셀 값을 생성시키는 단계는 상기 다수의 중첩하는 텍셀 블록에서 가장 근접한 이웃 텍셀의 세트에 대한 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 픽셀 맵에서 픽셀에 대한 픽셀값을 생성시키는 단계를 포함하고,
    상기 픽셀 맵에서 임의의 픽셀에 대한 픽셀값을 생성시키는 단계가 단지 2개의 텍셀 블록에 대한 저장된 텍셀 기준값 및 텍셀 매핑값을 필요로 하도록 상기 텍셀 블록이 중첩되는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  11. 제 8 항에 있어서,
    상기 텍셀 블록은 2개의 직교 방향에서 중첩하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  12. 제 8 항에 있어서,
    상기 텍셀 블록은 단지 한 방향에서 중첩하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  13. 제 8 항에 있어서,
    상기 픽셀에 대한 픽셀 값을 생성시키는 단계는:
    상기 픽셀에 대한 가장 근접한 이웃 텍셀의 세트에 대한 텍셀값을 획득하기 위하여 하나 이상의 텍셀 블록에 대한 저장된 텍셀 기준값 및 텍셀 매핑값을 프로세싱하는 단계;
    상기 픽셀에 대한 제1 밉맵 값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 텍셀값으로부터 쌍선형 보간을 수행하는 단계;
    제2 밉맵 값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 텍셀값을 평균화하는 단계; 및
    상기 픽셀에 대한 상기 픽셀값을 생성시키기 위하여 상기 제1 및 제2 밉맵 값 간을 보간하는 단계를 포함하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  14. 픽셀을 텍스쳐링하는 방법에 있어서:
    픽셀에 대한 가장 근접한 이웃 텍셀의 세트에 대한 저장된 텍셀값을 검색하는 단계;
    상기 픽셀에 대한 제1 밉맵값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 검색된 텍셀값으로부터 쌍선형 보간을 수행하는 단계;
    제2 밉맵값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 검색된 텍셀값을 평균화하는 단계;
    상기 픽셀에 대한 픽셀 값을 생성시키기 위하여 상기 제1 및 제2 밉맵 값 간을 보간하는 단계; 및
    상기 생성된 픽셀 값에 응답하여 상기 픽셀을 디스플레이하는 단계를 포함하는 픽셀을 텍스쳐링하는 방법.
  15. 제 14 항에 있어서,
    상기 가장 근접한 이웃 텍셀의 세트는 4개의 가장 근접한 이웃 텍셀로 이루어지는 것을 특징으로 하는 픽셀을 텍스쳐링하는 방법.
  16. 픽셀을 텍스쳐링하는 장치에 있어서:
    디스플레이;
    텍셀 블록을 표시하기 위해서, 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑 값을 저장하는 수단으로서, 상기 각각의 텍셀 매핑 값은 상기 제1 텍셀 기준값 및 상기 제2 텍셀 기준값으로부터 유도될 수 있는 k-투플의 텍셀 기준값으로 k개의 텍셀 값을 매핑하는, 저장 수단;
    상기 저장된 제1 텍셀 기준값, 제2 텍셀 기준값 및 텍셀 매핑 값들로부터 상기 픽셀에 대한 픽셀값을 생성시키는 수단; 및
    상기 생성된 픽셀값에 응답하여 상기 디스플레이상에 상기 픽셀을 디스플레이하는 수단을 포함하는 픽셀을 텍스쳐링하는 장치.
  17. 제 16 항에 있어서,
    상기 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑값을 저장하는 수단는 제1 RGB 컬러 기준값, 제2 RGB 컬러 기준값 및 하나 이상의 텍셀 매핑 값을 저장하는 수단을 포함하는데, 각각의 텍셀 매핑값은 3-투플의 상기 제1 RGB 컬러 기준값, 상기 제2 RGB 컬러 기준값 및 제3 RGB 컬러 기준값으로 세 개의 텍셀을 매핑하는 것을 특징으로 하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 장치.
  18. 제 16 항에 있어서,
    상기 픽셀을 텍스쳐링하는 장치는 상기 저장 수단, 상기 픽셀값 생성 수단 및 상기 디스플레이 수단이 구현되는 무선 단말기를 포함하는 특징으로 하는 픽셀을 텍스쳐링하는 장치.
  19. 픽셀을 텍스쳐링하는 장치에 있어서:
    디스플레이;
    다수의 중첩하는 텍셀 블록 중 각각의 블록에 대한 각각의 다수의 텍셀 기준값 및 상기 기준값에 매핑되는 텍셀 매핑값을 저장하는 수단;
    상기 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 상기 픽셀에 대한 픽셀값을 생성시키는 수단; 및
    상기 생성된 픽셀값에 응답하여 상기 디스플레이상에 상기 픽셀을 디스플레이 하는 수단을 포함하는 픽셀을 텍스쳐링하는 장치.
  20. 제 19 항에 있어서,
    상기 픽셀을 텍스쳐링하는 장치는 상기 저장 수단, 상기 픽셀값 생성 수단, 및 상기 디스플레이 수단이 구현되는 무선 단말기를 포함하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 장치.
  21. 픽셀을 텍스쳐링하는 장치에 있어서:
    디스플레이;
    픽셀에 대한 가장 근접한 이웃 텍셀의 세트에 대한 텍셀 값을 획득하기 위하여 하나 이상의 텍셀 블록에 대한 저장된 텍셀값을 검색하는 수단;
    상기 픽셀에 대한 제1 밉맵값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 검색된 텍셀값으로부터 쌍선형 보간을 수행하는 수단;
    제2 밉맵값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 검색된 텍셀값을 평균화하는 수단;
    상기 픽셀에 대한 픽셀값을 생성시키기 위하여 상기 제1 및 제2 밉맵값 간을 보간하는 수단; 및
    상기 생성된 픽셀값에 응답하여 상기 디스플레이상에 상기 픽셀을 디스플레이하는 수단을 포함하는 픽셀을 텍스쳐링하는 장치.
  22. 제 21 항에 있어서,
    상기 픽셀을 텍스쳐링하는 장치는 상기 검색 수단, 상기 쌍선형 보간 수행 수단, 상기 평균화 수단, 상기 보간 수단 및 상기 디스플레이 수단이 구현되는 무선 단말기를 포함하는 것을 특징으로 하는 픽셀을 텍스쳐링하는 장치.
  23. 픽셀을 텍스쳐링하는 컴퓨터 프로그램 제품을 저장하는 컴퓨터 판독가능한 저장 매체에 있어서:
    상기 컴퓨터 프로그램 제품이 상기 컴퓨터-판독가능한 프로그램 저장 매체에서 구현되는 컴퓨터-판독가능한 프로그램 코드를 포함하고, 상기 컴퓨터-판독가능한 프로그램 코드는:
    텍셀 블록을 표시하기 위해서, 제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑 값을 저장하도록 구성되는 프로그램 코드로서, 상기 각각의 텍셀 매핑 값은 상기 제1 텍셀 기준값 및 상기 제2 텍셀 기준값으로부터 유도될 수 있는 k-투플의 텍셀 기준값으로 k개의 텍셀 값을 매핑하는, 프로그램 코드;
    상기 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 상기 픽셀에 대한 픽셀값을 생성시키도록 구성되는 프로그램 코드; 및
    상기 생성된 픽셀값에 응답하여 상기 픽셀을 디스플레이하도록 구성되는 프로그램 코드를 포함하는, 컴퓨터 판독가능한 저장 매체.
  24. 제 23 항에 있어서,
    제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 매핑값을 저장하도록 구성되는 상기 프로그램 코드는 다수의 중첩하는 텍셀 블록 중 각각의 블록의 텍셀에 대한 각각의 제1 텍셀 기준값, 제2 텍셀 기준값 및 텍셀에 대한 텍셀 매핑값을 저장하도록 구성되는 프로그램 코드를 포함하는 것을 특징으로 하는 컴퓨터 판독가능한 저장 매체.
  25. 제 23 항에 있어서,
    제1 텍셀 기준값, 제2 텍셀 기준값 및 하나 이상의 텍셀 매핑값 저장하도록 구성되는 상기 프로그램 코드는 다수의 텍셀 블록들 중 각각의 블록의 텍셀에 대한 각각의 제1 텍셀 기준값, 제2 텍셀 기준값, 및 텍셀 매핑값을 저장하도록 구성되는 프로그램 코드를 포함하며,
    상기 픽셀에 대한 픽셀값을 생성시키도록 구성되는 상기 프로그램 코드는:
    상기 픽셀에 대한 가장 근접한 이웃 텍셀의 세트에 대한 텍셀값을 획득하기 위하여 하나 이상의 텍셀 블록에 대한 저장된 텍셀 기준값 및 매핑값을 프로세싱하도록 구성되는 프로그램 코드;
    상기 픽셀에 대한 제1 밉맵 값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 검색된 텍셀값으로부터 쌍선형 보간을 수행하도록 구성되는 프로그램 코드;
    제2 밉맵 값을 생성시키기 위하여 가장 근접한 이웃 텍셀의 세트에 대한 상기 텍셀 값을 평균화하도록 구성되는 프로그램 코드;
    상기 픽셀에 대한 픽셀값을 생성시키기 위하여 상기 제1 및 제2 밉맵 값 간을 보간하도록 구성되는 프로그램 코드를 포함하는 것을 특징으로 하는 컴퓨터 판독가능한 저장 매체.
  26. 픽셀을 텍스쳐링하는 컴퓨터 프로그램 제품을 저장하는 컴퓨터 판독가능한 저장 매체에 있어서:
    상기 컴퓨터 프로그램 제품이 상기 컴퓨터-판독가능한 프로그램 저장 매체에서 구현되는 컴퓨터-판독가능한 프로그램 코드를 포함하고, 상기 컴퓨터-판독가능한 프로그램 코드는:
    다수의 중첩하는 텍셀 블록들 중 각각의 블록에 대한 각각의 다수의 텍셀 기준값 및 상기 기준값에 매핑되는 텍셀 매핑값을 저장하도록 구성되는 프로그램 코드;
    상기 저장된 텍셀 기준값 및 텍셀 매핑값으로부터 픽셀에 대한 픽셀값을 생성시키도록 구성되는 프로그램 코드; 및
    상기 생성된 픽셀값에 응답하여 상기 픽셀을 디스플레이하도록 구성되는 프로그램 코드를 포함하는 컴퓨터 판독가능한 저장 매체.
  27. 제 26 항에 있어서,
    상기 픽셀에 대한 픽셀값을 생성시키도록 구성되는 상기 프로그램 코드는:
    상기 픽셀에 대한 가장 근접한 이웃 텍셀의 세트에 대한 텍셀값을 획득하기 위하여 하나 이상의 텍셀 블록에 대한 저장된 텍셀 기준값 및 텍셀 매핑값을 프로세싱하도록 구성되는 프로그램 코드;
    상기 픽셀에 대한 제1 밉맵값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 텍셀값으로부터 쌍선형 보간을 수행하도록 구성되는 프로그램 코드;
    제2 밉맵 값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 텍셀 값을 평균화하도록 구성되는 프로그램 코드;
    상기 픽셀에 대한 픽셀값을 생성하기 위하여 상기 제1 및 제2 밉맵 값 간을 보간하도록 구성되는 프로그램 코드를 포함하는 것을 특징으로 하는 컴퓨터 판독가능한 저장 매체.
  28. 픽셀을 텍스쳐링하는 컴퓨터 프로그램 제품을 저장하는 컴퓨터 판독가능한 저장 매체에 있어서:
    상기 컴퓨터 프로그램 제품이 상기 컴퓨터-판독가능한 프로그램 저장 매체에서 구현되는 컴퓨터-판독가능한 프로그램 코드를 포함하고, 상기 컴퓨터-판독가능한 프로그램 코드는:
    상기 픽셀에 대한 가장 근접한 이웃 텍셀의 세트에 대한 텍셀값을 획득하도록 하나 이상의 텍셀 블록에 대한 저장된 텍셀값을 검색하도록 구성되는 프로그램 코드;
    상기 픽셀에 대한 제1 밉맵값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 검색된 텍셀값으로부터 쌍선형 보간을 수행하도록 구성되는 프로그램 코드;
    제2 밉맵 값을 생성시키기 위하여 상기 가장 근접한 이웃 텍셀의 세트에 대한 상기 검색된 텍셀 값을 평균화하도록 구성되는 프로그램 코드;
    상기 픽셀에 대한 픽셀값을 생성하기 위하여 상기 제1 및 제2 밉맵 값 간을 보간하도록 구성되는 프로그램 코드; 및
    상기 생성된 픽셀값에 응답하여 상기 픽셀을 디스플레이하도록 구성되는 프로그램 코드를 포함하는 컴퓨터 판독가능한 저장 매체.
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
KR1020047019919A 2002-06-07 2003-06-02 텍스쳐 정보를 엔코딩하는 방법 및 장치 KR101034925B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US38704902P 2002-06-07 2002-06-07
US60/387,049 2002-06-07
US10/326,849 US6940511B2 (en) 2002-06-07 2002-12-20 Graphics texture processing methods, apparatus and computer program products using texture compression, block overlapping and/or texture filtering
US10/326,849 2002-12-20
PCT/EP2003/005747 WO2003105090A1 (en) 2002-06-07 2003-06-02 Method and apparatus for encoding texture information

Publications (2)

Publication Number Publication Date
KR20050004915A KR20050004915A (ko) 2005-01-12
KR101034925B1 true KR101034925B1 (ko) 2011-05-17

Family

ID=29714997

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047019919A KR101034925B1 (ko) 2002-06-07 2003-06-02 텍스쳐 정보를 엔코딩하는 방법 및 장치

Country Status (10)

Country Link
US (2) US6940511B2 (ko)
EP (2) EP1768059B1 (ko)
JP (2) JP4648701B2 (ko)
KR (1) KR101034925B1 (ko)
CN (1) CN1659595B (ko)
AT (2) ATE349743T1 (ko)
AU (1) AU2003245901A1 (ko)
DE (2) DE60310720T2 (ko)
ES (2) ES2277086T3 (ko)
WO (1) WO2003105090A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170035154A (ko) * 2015-09-22 2017-03-30 삼성전자주식회사 텍스쳐를 처리하는 방법 및 장치

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6819793B1 (en) * 2000-06-30 2004-11-16 Intel Corporation Color distribution for texture and image compression
US7082217B2 (en) * 2002-10-28 2006-07-25 Web Technology Corp. Method and apparatus for image compression in block units
KR100995022B1 (ko) 2003-12-13 2010-11-19 엘지디스플레이 주식회사 디스플레이 및 그 구동방법
JP2008510213A (ja) * 2004-08-11 2008-04-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ストライプに基づく画像データ記憶方法
JP4444180B2 (ja) * 2005-07-20 2010-03-31 株式会社東芝 テクスチャ符号化装置、テクスチャ復号化装置、方法、およびプログラム
US20070177553A1 (en) * 2006-01-31 2007-08-02 Nokia Corporation Apparatus, method and computer program product providing efficient signaling of user allocations in an optimum manner
US7683910B2 (en) 2006-06-29 2010-03-23 Microsoft Corporation Strategies for lossy compression of textures
US7714873B2 (en) 2006-06-29 2010-05-11 Microsoft Corporation Strategies for compressing textures
US9418450B2 (en) 2006-08-31 2016-08-16 Ati Technologies Ulc Texture compression techniques
US7760936B1 (en) * 2006-09-12 2010-07-20 Nvidia Corporation Decompressing image-based data compressed using luminance
US8594441B1 (en) * 2006-09-12 2013-11-26 Nvidia Corporation Compressing image-based data using luminance
US8311347B2 (en) 2006-11-10 2012-11-13 Microsoft Corporation Image compression based on parameter-assisted inpainting
US8724895B2 (en) 2007-07-23 2014-05-13 Nvidia Corporation Techniques for reducing color artifacts in digital images
US8780128B2 (en) 2007-12-17 2014-07-15 Nvidia Corporation Contiguously packed data
US8165393B2 (en) 2008-06-05 2012-04-24 Microsoft Corp. High dynamic range texture compression
US8508543B2 (en) * 2008-06-18 2013-08-13 Microsoft Corporation Layered texture compression architecture
US20090322777A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Unified texture compression framework
BRPI0822815A2 (pt) 2008-06-27 2015-06-30 Thomson Licensing Método e aparelho para compressão de textura utilizando síntese de textura de amostragem baseada em patch
GB2462589B (en) * 2008-08-04 2013-02-20 Sony Comp Entertainment Europe Apparatus and method of viewing electronic documents
US8373718B2 (en) 2008-12-10 2013-02-12 Nvidia Corporation Method and system for color enhancement with color volume adjustment and variable shift along luminance axis
EP2380353B1 (en) * 2009-01-19 2017-11-08 Telefonaktiebolaget LM Ericsson (publ) Image processing for memory compression
US9153064B2 (en) * 2009-12-23 2015-10-06 Intel Corporation Grouping pixels to be textured
US9626730B2 (en) 2011-05-05 2017-04-18 Arm Limited Method of and apparatus for encoding and decoding data
GB2495301B (en) 2011-09-30 2018-01-17 Advanced Risc Mach Ltd Method of and apparatus for encoding data
GB2503691B (en) 2012-07-04 2019-08-14 Advanced Risc Mach Ltd Methods of and apparatus for encoding and decoding data
US9177415B2 (en) 2013-01-30 2015-11-03 Arm Limited Methods of and apparatus for encoding and decoding data
US10147202B2 (en) 2013-03-15 2018-12-04 Arm Limited Methods of and apparatus for encoding and decoding data
WO2015035129A2 (en) * 2013-09-09 2015-03-12 Lynx Laboratories Inc. Rendering engine for multi-dimensional tracking, reconstruction and mapping
US9619898B2 (en) * 2013-12-28 2017-04-11 Intel Corporation Angle-dependent anisotropic filtering
KR20160032597A (ko) * 2014-09-16 2016-03-24 삼성전자주식회사 텍스쳐를 처리하는 방법 및 장치
CN111515149B (zh) * 2020-04-26 2020-12-29 广东弓叶科技有限公司 人机协作分选系统及其机器人的抓取位置获取方法
CN115943421A (zh) * 2020-09-17 2023-04-07 华为技术有限公司 单通道的渲染和后处理滤波

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956431A (en) 1997-10-02 1999-09-21 S3 Incorporated System and method for fixed-rate block-based image compression with inferred pixel values
US6304268B1 (en) 1997-06-26 2001-10-16 S3 Graphics Co., Ltd. Trilinear texture filtering of two levels of detail based on a single level of detail

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2440768C3 (de) 1974-08-26 1982-03-18 Philips Patentverwaltung Gmbh, 2000 Hamburg Verfahren und Vorrichtung zur Datenkompression für die Faksimile-Übertragung graphischer Information
JPH0944695A (ja) 1995-07-25 1997-02-14 Matsushita Electric Ind Co Ltd テクスチャマッピング方法およびテクスチャマッピング装置
US6236405B1 (en) * 1996-07-01 2001-05-22 S3 Graphics Co., Ltd. System and method for mapping textures onto surfaces of computer-generated objects
US6366290B1 (en) * 1997-03-31 2002-04-02 Cirrus Logic, Inc. Dynamically selectable texture filter for a software graphics engine
US6459433B1 (en) * 1997-04-30 2002-10-01 Ati Technologies, Inc. Method and apparatus for compression of a two dimensional video object
US5920495A (en) * 1997-05-14 1999-07-06 Cirrus Logic, Inc. Programmable four-tap texture filter
US6016152A (en) * 1997-08-01 2000-01-18 Avid Technology, Inc. Apparatus and method for non-uniform image scaling
US6181347B1 (en) * 1997-09-17 2001-01-30 Cirrus Logic, Inc. Selectable mode smoothing texture filter for computer graphics
JP2001507823A (ja) 1997-10-28 2001-06-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像の圧縮及び復元
US6184893B1 (en) * 1998-01-08 2001-02-06 Cirrus Logic, Inc. Method and system for filtering texture map data for improved image quality in a graphics computer system
JP3365293B2 (ja) * 1998-02-12 2003-01-08 株式会社日立製作所 Dram,ロジック混載lsiを使ったキャッシュメモリ及びそれを用いたグラフィックスシステム
US6259460B1 (en) * 1998-03-26 2001-07-10 Silicon Graphics, Inc. Method for efficient handling of texture cache misses by recirculation
US6469700B1 (en) 1998-06-24 2002-10-22 Micron Technology, Inc. Per pixel MIP mapping and trilinear filtering using scanline gradients for selecting appropriate texture maps
US6292193B1 (en) * 1998-07-30 2001-09-18 Compaq Computer Corporation Techniques for anisotropic texture mapping using multiple space-invariant filtering operations per pixel
GB2343599B (en) * 1998-11-06 2003-05-14 Videologic Ltd Texturing systems for use in three dimensional imaging systems
JP2000155851A (ja) 1998-11-20 2000-06-06 Sony Corp テクスチャ・マッピング装置及びこれを具備したレンダリング装置、並びに情報処理装置
US6452603B1 (en) * 1998-12-23 2002-09-17 Nvidia Us Investment Company Circuit and method for trilinear filtering using texels from only one level of detail
US7050063B1 (en) * 1999-02-11 2006-05-23 Intel Corporation 3-D rendering texture caching scheme
JP2001126084A (ja) * 1999-10-28 2001-05-11 Sega Corp テクスチャ表示装置、テクスチャ表示方法及び記録媒体
JP2003115056A (ja) * 1999-12-16 2003-04-18 Sega Corp 画像生成方法及びこれを用いた画像生成装置
US6819793B1 (en) * 2000-06-30 2004-11-16 Intel Corporation Color distribution for texture and image compression
US6919903B2 (en) * 2001-03-02 2005-07-19 Mitsubishi Electric Research Laboratories, Inc. Texture synthesis and transfer for pixel images
US20020180749A1 (en) * 2001-06-01 2002-12-05 Chien-Chung Hsiao Method of bilinear texture filtering
TW544636B (en) * 2001-11-22 2003-08-01 Silicon Integrated Sys Corp Method of texture mapping
US7336284B2 (en) * 2004-04-08 2008-02-26 Ati Technologies Inc. Two level cache memory architecture

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6304268B1 (en) 1997-06-26 2001-10-16 S3 Graphics Co., Ltd. Trilinear texture filtering of two levels of detail based on a single level of detail
US5956431A (en) 1997-10-02 1999-09-21 S3 Incorporated System and method for fixed-rate block-based image compression with inferred pixel values

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170035154A (ko) * 2015-09-22 2017-03-30 삼성전자주식회사 텍스쳐를 처리하는 방법 및 장치
KR102477264B1 (ko) 2015-09-22 2022-12-13 삼성전자주식회사 텍스쳐를 처리하는 방법 및 장치

Also Published As

Publication number Publication date
JP4648701B2 (ja) 2011-03-09
CN1659595B (zh) 2010-05-12
EP1768059B1 (en) 2009-08-05
ATE438903T1 (de) 2009-08-15
DE60310720T2 (de) 2007-10-11
EP1520259B1 (en) 2006-12-27
JP2005531833A (ja) 2005-10-20
CN1659595A (zh) 2005-08-24
ATE349743T1 (de) 2007-01-15
WO2003105090A1 (en) 2003-12-18
JP5091220B2 (ja) 2012-12-05
AU2003245901A1 (en) 2003-12-22
DE60310720D1 (de) 2007-02-08
US6940511B2 (en) 2005-09-06
DE60328733D1 (de) 2009-09-17
ES2277086T3 (es) 2007-07-01
EP1768059A3 (en) 2007-06-27
EP1768059A2 (en) 2007-03-28
US20050264573A1 (en) 2005-12-01
US20030227462A1 (en) 2003-12-11
EP1768059A8 (en) 2007-06-20
US7633507B2 (en) 2009-12-15
ES2331327T3 (es) 2009-12-29
JP2010102729A (ja) 2010-05-06
KR20050004915A (ko) 2005-01-12
EP1520259A1 (en) 2005-04-06

Similar Documents

Publication Publication Date Title
KR101034925B1 (ko) 텍스쳐 정보를 엔코딩하는 방법 및 장치
US7184059B1 (en) Graphics system with copy out conversions between embedded frame buffer and main memory
US7616218B1 (en) Apparatus, system, and method for clipping graphics primitives
KR100908779B1 (ko) 프레임 버퍼 병합
US20070268289A1 (en) Graphics system with dynamic reposition of depth engine
TWI498850B (zh) 訊框緩衝區歸併的方法、電腦可讀取記憶體、與電腦系統
US9111328B2 (en) Texture compression and decompression
WO2016022281A1 (en) High order filtering in a graphics processing unit
WO2017222633A1 (en) Image rotation method and apparatus
US20050225557A1 (en) Method and apparatus for reading texture data from a cache
US6756989B1 (en) Method, system, and computer program product for filtering a texture applied to a surface of a computer generated object
KR20060116916A (ko) 텍스쳐 캐쉬 및 이를 구비한 3차원 그래픽 시스템, 그리고그것의 제어 방법
EP3178062A1 (en) High order filtering in a graphics processing unit
US7492373B2 (en) Reducing memory bandwidth to texture samplers via re-interpolation of texture coordinates
US6819320B2 (en) Reading or writing a non-super sampled image into a super sampled buffer
US7295212B2 (en) Method, system, and computer program product for blending textures in a texture paging scheme
US8207978B2 (en) Simplification of 3D texture address computation based on aligned, non-perspective objects
US7382377B1 (en) Render to texture cull
EP1182617A2 (en) Graphics system with reconfigurable embedded frame buffer and copy out conversions between embedded frame buffer and main memory
JPH10307925A (ja) 画像処理装置及び画像処理方法
US7417639B2 (en) Drawing device and information processing apparatus
CN116957900A (zh) 图形处理器、系统、电子装置、设备及图形处理方法
GB2387520A (en) Graphics system with a buddy/quad mode for faster writes

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20140423

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150424

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160425

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170425

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180425

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190424

Year of fee payment: 9