KR19990087564A - 컴퓨터 그래픽 디스플레이 장치에서 화소값 및 알파값의 보간 - Google Patents

컴퓨터 그래픽 디스플레이 장치에서 화소값 및 알파값의 보간 Download PDF

Info

Publication number
KR19990087564A
KR19990087564A KR1019980707002A KR19980707002A KR19990087564A KR 19990087564 A KR19990087564 A KR 19990087564A KR 1019980707002 A KR1019980707002 A KR 1019980707002A KR 19980707002 A KR19980707002 A KR 19980707002A KR 19990087564 A KR19990087564 A KR 19990087564A
Authority
KR
South Korea
Prior art keywords
pixel
value
alpha
image
pixels
Prior art date
Application number
KR1019980707002A
Other languages
English (en)
Inventor
지안-쉰 천
알렉산더 지. 맥킨니스
Original Assignee
파워티브이, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 파워티브이, 인코포레이티드 filed Critical 파워티브이, 인코포레이티드
Publication of KR19990087564A publication Critical patent/KR19990087564A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

화소 반복(404) 및 평균(412) 기술을 사용하여 매우 높은 해상도 화상(414)으로 낮거나 중간 해상도 화상(413)을 보간하기 위하여 장치가 제공된다. 제1 디스플레이 해상도의 화소를 갖는 오버레이 화상과 혼합의 정도를 표시하는 값(413)과 배경 화상을 혼합하는 다수의 알파가 배경 화상(414)의 해상도로 보간된다. 보간 화소값에 추가하여, 알파 혼합값은 배경 화상과 혼합되기 이전에 대응하는 오버레이 화소값들에 의해 보간되고 승산된다.

Description

컴퓨터 그래픽 디스플레이 장치에서 화소값 및 알파값의 보간
1. 기술 분야
본 발명은 일반적으로 컴퓨터 그래픽 디스플레이에 화소값을 보간하기 위한 기술에 관한 것이다. 특히, 본 발명은 서브스크립션(subscription) 텔레비젼 시스템에 사용된 것과 같은 단말기에서 외관상의 디스플레이 해상도를 증가시키는 효과적인 방법을 제공한다.
2. 종래 기술
서브스크립션 텔레비젼 시스템에서, 부호화된 텔레비젼 신호는 통상적으로 흔히 "셋-톱 단말기"(set-top terminal)라고 부르는 장치에 의해 텔레비젼 스크린 상에 디스플레이하기 위하여 부호화되고 포맷된다. 그런 단말기들은 최근에 텔레비젼 스크린 상에 컴퓨터-생성 그래픽 화상을 디스플레이하는 비디오 게임들을 제공하는 기능과 같은 부가 기능들을 갖추고 있다.
컴퓨터 그래픽을 디스플레이하기 위하여 사용될 때, 그런 단말기들은 일반적으로 320×240 화소 또는 640×480 화소와 같은 하나 이상의 비디오 디스플레이 표준에 따라 그래픽을 포맷한다. 중간 해상도 디스플레이 화상(예를 들어, 320×240 화소)의 사용은 그래픽 성능을 증가시키고 실질적인 화소 처리를 요하는 비디오 게임 및 다른 고성능 응용 분야에 대한 메모리 요구 사항들을 감소시키는 데, 그 이유는 더 적은 화소들이 처리되고 저장되어야 하기 때문이다. 그러나, 중간 해상도 화상은 디스플레이 목적으로는 양호하지 못하고, 더 높은 해상도(예를 들어, 640×480 화소)에서 화상을 디스플레이하는 것이 양호하다. 따라서, 낮거나 중간 해상도 포맷에서 그래픽 화상을 생성 및 처리하고 그런 다음 디스플레이를 위해 더 높은 해상도로 화상을 "업스케일"하는 것이 바람직하다.
종래 기술은 추가적인 스캔 라인들을 형성함으로써 비디오 디스플레이의 해상도를 증가시키기 위한 다양한 기술들을 제공한다. 예를 들어, Ott에 의해 출원되고 발명의 명칭이 "Graphics Video Resolution Improvement Apparatus"인 미국 특허 제4,484,188호는 인접한 스캔 라인들을 조합하여 추가적 스캔 라인들을 형성함으로써 비디오 화상의 해상도를 증가시키는 시스템을 개시하고 있다. 상기 기술은 보간 스캔 라인들을 생성함으로써 수평 해상도 및 수직 해상도를 개선한다. 그러나, 그런 시스템들은 상대적으로 복잡한 회로들을 요구함에 따라 그런 회로들을 갖춘 단말기들의 비용이 상승된다.
종래의 컴퓨터 그래픽 디스플레이 시스템들은 종종 배경 비디오상으로 화상을 오버레이하는 기능을 포함한다. 예를 들어, 스폿 스코어들은 축구 게임의 이동 화상의 바닥에서 2중으로 인화될 수 있다. 그런 시스템에서, 각 화소는 불투명한(모든 화소가 단지 오버레이드된 화상의 값을 취함), 반투명한(배경 화상이 오버레이를 "간파"할 수 있도록 오버레이드된 화상 및 배경 화상이 혼합될 수 있음), 또는 투명한(단지 배경 화상이 디스플레이됨)것으로서 3개의 방법 중 하나로 행해질 수 있다.
다른 예시로서, 볼륨 제어 표시기와 같은 그래픽 제어 오브젝트는 텔레비젼 디스플레이 상의 라이브 비디오 화상으로 2중으로 인화될 수 있다. 도 1a에 도시된 바와 같이, 예를 들어, 라이브 비디오 화상(101)은 결과적인 화상(103)이 2개의 화상들을 포함하는 방식으로, 즉 사용자가 오버레이되기전에 볼 수 있었던 라이브 비디오와 오버레이된 화상 자체의 2층의 스크린 화상들을 볼 수 있는 방식으로 볼륨 제어 표시기(102)로 조합될 수 있다.
전술한 예들에서 혼합량을 제어하기 위하여, 종래의 시스템들은 전형적으로 오버레이 및 배경으로부터의 화소들이 혼합될 정도를 표시하는 각 화소에 다수의 추가적 비트들을 할당한다. 예를 들어, 각 화소에 대한 그러한 "혼합" 비트들의 그룹은 배경 화상과 조합되기 전에 오버레이 화소값으로 곱해질 수 있으므로, 오버레이 부분 또는 배경 화상이 결과로서 생긴 화상을 통제할 지 여부를 제어하게 된다.
도 1b에 도시된 바와 같이, 예를 들어 오버레이 화상(102)의 각 화소값(104)이 결과적 화소(108)을 생성하도록 오버레이를 배경 화상 화소(106)과 혼합하기 위하여 오버레이 화소값으로 곱해지는 "혼합" 팩터(105)(다수의 비트들을 포함)과 관련될 수 있다. 이들 동작들은 도 1a의 화상(103)과 같은 혼합된 화상을 생성하기 위하여 사용될 수 있다.
디스플레이의 각 화소에 대한 오버레이 화상 및 배경 화상을 혼합하기 위한 전통적인 수학식은 다음과 같다.
α*(오버레이 화소값) + (1-α)*(배경 화소값)
여기에서, α는 오버레이 화상 내의 각 화소와 관련된 혼합값을 나타내고 "*"는 곱셈"을 나타낸다. 16비트(5개의 적색, 6개의 녹색, 5개의 청색)를 포함하는 적색-녹색-청색(RGB) 화소값에 대해, 각 칼라 성분은 결과적인 화상을 생성하기 위하여 별도로 혼합된다.
그러나, 낮은 해상도 화상이 높은 해상도("업스케일된") 화상으로 보간된다면, 어려움이 생긴다. "혼합" 비트들의 관련 그룹을 각각 갖는 화소들을 포함하는 오버레이 화상이 화소값을 보간함으로써 디스플레이를 위해 업스케일되고 그런 다음 배경 화상과 조합된다면, 결과적인 화상은 성능이 저하될 것이다. 예를 들어, 오버레이 화소는 투명하지만 인접한 오버레이 화소가 불투명하다면, 2개의 오버레이 화소들 사이의 보간은 잘못된 디스플레이값을 초래할 것이다. 이러한 것은 종래의 방법에 따라서는 보간된 화소가 불투명한(가시의)값과 투명한(보이지 않는)값의 혼합이 될 것이지만, 반면 보간된 혼합값은 1(불투명한) 및 0(투명한)의 (이러한 경우에서의) 평균이될 것이기 때문이다. 따라서, 보간된 혼합값은 정확하지만, 보간된 화소가 성분 중의 하나가 완전하게 보이지 않게 되므로 정확하지 않게 된다. 특정한 예에서, 투명한 화소는 밝고 자극적인 칼라를 가질 수 있는 반면, 가시적 화소는 어둡고 엷을 수 있다. 보간된 값은 이들의 혼합일 것이며, 반면에 바람직한 보간된 값은 어둡고 희미할 것이다. 따라서, 혼합 화상들의 종래의 기술들은 비디오 업스켈링과 관련하여 사용될 수 없다.
<발명의 개요>
본 발명은 디스플레이 화상의 해상도를 증가시키고 업스케일된 화상에 대한 소위 알파 "혼합 비트들"을 조절하기 위하여 저비용 기술을 제공함으로써 전술한 문제점들을 해결한다. 본 발명은 화소 복제 및 시프팅 계획을 이용하여 수평적이고 수직적으로 화소값들을 보간하고, 화소값들 뿐만 아니라 알파 혼합값들도 보간한다.
본 발명의 다른 특성들 및 이점들은 다음의 상세한 설명, 도면들 및 첨부된 청구항들을 통해 명백해질 것이다.
관련 출원
본 출원은 주제에 있어서 다음의 계류중인 동일자로 출원된 본 출원인 소유의 출원과 관련된다: "Blending of Video Images in a Home Communications Terminal"(출원 번호 제______호). 전술한 출원은 본 명세서에서 참조로 내포된다.
도 1a는 혼합된 화상을 생성하기 위하여 오버레이 화상과 배경 비디오 화상을 조합하는 종래의 방법을 도시하는 도면.
도 1b는 오버레이 화상 내의 각 화소와 관련된 혼합값(105)을 사용하여 화소들을 혼합하기 위한 종래의 기술을 도시하는 도면.
도 2는 중간 또는 낮은 해상도 화상에서의 화소들이 매우 높은 해상도 화상내에 새로운 화소들을 생성하기 위하여 보간될 수 있는 방법을 도시하는 도면.
도 3a는 수평적으로 보간된 화소들의 라인을 효과적으로 생성하기 위하여 사용될 수 있는 수평적 화소 보간 회로를 도시하는 도면.
도 3b는 수평적으로 보간된 화소들의 라인을 생성하기 위하여 실행될 수 있는 다양한 단계들을 도시하는 도면.
도 4는 각 화소에 대한 알파값뿐만 아니라 각 화소에 대한 적색, 녹색, 및 청색 구성 요소들을 별도로 보간하는 수평적 화소 보간 회로를 도시하는 도면.
도 5는 입력 화상의 2개의 라인들이 수평적 보간기에 제공된 보간된 라인을 생성하기 위하여 수직적으로 평균될 수 있는 방법을 도시하는 도면.
도 6은 알파 혼합과 공동하여 수직 및 수평적 보간을 구현하기 위하여 사용될 수 있는 회로를 도시하는 도면.
도 7은 도 6의 회로에 번호 적힌 원들에 대응하는 타이밍도.
도 8은 중간 해상도 오버레이 화상(801)이 배경 화상(804)을 가진 혼합된 오버레이를 형성하기 위하여 매우 높은 해상도 배경 화상(803)으로 업스케일될 수 있고 혼합될 수 있는 방법을 도시하는 도면.
도 9는 화상에서의 2개의 수평 라인들이 대응하는 알파값에 의해 계산하는 화소들을 포함하는 제3 라인을 생성하기 위하여 효과적으로 평균되는 방법을 도시하는 도면.
도 2는 중간 또는 낮은 해상도 화상에서의 화소들이 매우 높은 해상도 화상 내에 새로운 화소들을 생성하기 위하여 보간될 수 있는 방법을 도시한다. 화상이 240(수직 라인들) 화소들에 의해 320(수평 요소들)을 포함한다고 가정하고, 그런 화상(예를 들어, 3개의 요소들에 의한 3개의 라인들)의 9개의 요소 부분으로 간주한다고 가정한다. 도 2에 도시된 바와 같이, 제1 라인 L1은 각각의 그런 화소가 오리지널 입력 화상에서 나오는 것을 표시하기 위하여 사각안에 표시된 화소 P1, P3 및 P5들을 포함한다. 홀수 번호들이 이들 화소들을 식별하기 위하여 사용된 이유는 간단하고 분명해질 것이다.
라인 L1상의 오리지널 화소 P1, P3 및 P5들 사이에 산재된 것은 화소들 P1/P3 및 P3/P5를 각각 평균함으로써 얻어지는 화소 P2 및 P4들이다. 각 보간된 화소는 입력 화상 내의 오리지널 화소들로부터 그것을 구별하기 위하여 원안에 도시된다. 라인 L1내의 각 화소사이에 보간된 화소값들을 삽입함으로써, 라인의 수평 해상도는 예를 들어, 320에서 640화소들로 두배가 된다.
오리지널 화상의 라인 L3는 사각안에 표시된 화소들 P1, P3 및 P5를 유사하게 포함하고 오리지널 라인 L5는 사각안에 표시된 화소들 P1, P3 및 P5를 유사하게 포함한다. 각 화소는 종래의 것과 같이 상이한 값을 취할 수 있다
오리지널 라인들 L1과 L3 사이에 산재된 것은 라인들 L1과 L3로부터 대응하는 화소들을 보간함으로써 삽입된 새로운 라인들을 표시하기 위하여 괄호로 표시된 새로운 라인 L2이다. 유사하게, 새로운 라인 L4는 라인들 L3와 L5로부터 대응하는 화소들을 보간함으로써 생긴다. 라인 L2 및 라인 L4 내의 각 화소은 2개의 주위 화소들의 값들을 평균함으로써 결정된 화소값을 표시하기 위하여 원으로 표시된다. 라인 L2 내의 화소들 P2 및 P4와 같은 몇개의 화소들이 보간된 화소(각각 P1/P3 및 P3/P5)들을 평균함으로써 생성된다는 것을 주목해야 한다.
또한, 각 화소와 관련된 것은 화소와 다른 화상(즉, 배경 비디오 화상)에서의 대응 화소 사이에서 실행될 혼합의 정도를 나타내는 알파값α이다. 각 알파값은 8비트를 포함할 수 있거나 명세서 및 공동 계류중인 제목 "Blending of Video Images in a Home Communications Terminal"(출원 번호 제 _______호)에서 더욱 상세히 설명된 바와 같이, 알파값들의 테이블과 함께 사용될 적은 수의 비트들을 대신 포함할 수 있다.
도 2에 도시된 각 화소는 라인수 및 화소수에 의해 식별될 것이다. 예를 들어, 기호식 L1P1은 오리지널 화상의 라인 L1내의 제1 화소로 간주되고, 기호식 L5P3는 오리지널 화상(즉, 무시하는 보간 화소들)의 제3 라인 내의 제2 화소로 간주된다. 다른 예시로서, 기호식 L1P4는 보간된(출력) 화상의 제1 라인 내의 제4 화소로 간주되고, L4P3는 보간된(출력) 화상의 제1 라인 내의 제3 화소로 간주된다.
유사하게, 도 2의 각 알파값은 화소수에 대응하는 라인수 및 알파값 수에 의해 식별될 것이다. 따라서, 화소 P1과 관련된, 라인 L1내의 제1 알파값은 L1α1으로 간주될 것이다.
도 2의 각 보간 화소의 값은 다음과 같이 결정될 수 있다.
L1P2 = AVG(L1P1*L1α1, L1P3*L1α3)
L1P4 = AVG(L1P3*L1α3, L1P5*L1α5)
L2P1 = AVG(L1P1*L1α1,L3P1*L3α1)
L2P2 = AVG(L2P1, L2P3), 등
모든 결과적 보간 화소값들이 각각의 알파값들에 의해 미리 곱해짐에 주목해야 한다. 예를 들어, L1P2는 미리 곱해진 형태로 존재한다. 따라서, 결과적인 화상은 각각의 알파값들에 의해 곱해진 주위의 화소값들을 평균함으로써 결정된 중간 화소값들로 "적힌" 중간 해상도 화상으로 이루어져 있다. L2P2를 생성하기 위하여 L1P2와 L3P2를 평균하는 것과 같은 다른 접근들이 가능해진다.
RGB16 포맷과 같은 포맷 내의 칼라를 디스플레이할 때, 각 화소값은 종래 다음과 같이 맵된 3개의 분리된 칼라 구성 요소값들을 포함한다.
5비트 = 적색값
6비트 = 녹색값
5비트 = 청색값
추가적으로, 알파 비트들이 화상들을 조합할 때 혼합의 정도를 표시하기 위하여 각 화소의 칼라값과 관련될 때, 화소 당 8비트와 같은 추가 비트들은 각각의 상기 칼라 구성 요소값으로 저장될 수 있고 결과적으로 화소 당 전체 24비트를 초래한다. 대안적으로, 공동 계류 중인 "Blending of Video Images in a Home Communication Terminal"(출원 번호 제________호)에 기술된 바와 같이 하나 이상의 알파 제어 비트는 각 화소에 대해 사용될 수 있고 테이블에서의 알파값은 혼합될 화소들에 인가될 수 있다.
본 발명의 다양한 양상에 따라, 각각의 칼라 구성 요소들 및 알파값들은 출력 화상을 생성하기 위하여 각 화소에 보간된다. 각각의 알파값에 의해 먼저 곱해진 화소들 사이의 평균이 행해진다. 따라서, 예를 들어 매우 높은 해상도 출력 화상 내의 L1P2의 값을 계산하기 위하여 화소들 L1P1과 L1P3(각 칼라 구성 요소가 평균되기 이전의 각각의 알파값에 의해 미리 곱해지는 점에 주목해야함) 사이의 5비트의 적색값을 평균한다. 유사하게, 보간된 화소 L1P2를 생성하기 위하여 6비트의 녹색값, 5비트의 청색값 및 8비트의 알파값을 각각 평균한다.
도 3a는 최소 구성 요소의 수를 사용하여 수평적으로 보간된 화소들의 라인을 효과적으로 생성하기 위하여 사용될 수 있는 수평 화소 보간 회로를 도시한다. 따라서, 도 3a에 도시된 회로는 오리지널 화소들 L1P1, L1P3 및 L1P5에 기초하여 도 2의 라인 L1내의 모든 화소들을 생성하기 위하여 사용될 수 있다.
도 3a에서, 화소 304들의 제1열은 클럭율 R에서 생성된다. 도 3a에서 각 화소에 대한 첨자들은 클럭된 화소들에 대한 시간 주기를 식별한다. 따라서, 화소열(304)에서 화소(Pn)은 입력 화상(예를 들어, L1P1)의 수평 라인으로부터 판독된 제1 화소이다. Pn+1은 다음 화소(뒤에 클럭율, 예를 들어 L1P3)이고 Pn+2는 제3 화소(뒤에 2개의 클럭 사이클, 예를 들어 L1P5)이다. 화소 복제기(301)는 반복되는 제1열(304)의 각 소자 내의 화소(305)들의 제2열을 생성한다. 이러한 것은 클럭율 2R에서 제1 화소열을 "더블 클럭킹"함으로써 실행될 수 있다.
제2 화소열(305)은 하나의 클럭 사이클(2R 클럭율에 대해 지연됨)에 의해 지연된 각 화소를 제외한 화소열(305)과 동일한 지연 화소열(306)을 생성하는 지연 소자(302)로 공급된다. 그런 후에, 2개의 화소열(305 및 306)들은 사이에 삽입된 보간된 값과 함께 오리지널 화소(Pn, Pn+1및Pn+2)들을 포함하는 평균 화소열(307)을 생성하기 위하여 화소열(305 및 306)내의 대응하는 회소들을 평균하는 평균 회로(303)에 공급된다. 평균 회로(303)는 평균 기능을 달성하는 1-비트 시프터에 의해 수반된 가산기를 사용함으로써 매우 효과적으로 구성될 수 있다.
지연 소자(302)때문에, 어떤 화소값들은 그 자체로 평균될 것이다. -- 따라서 오리지널 화소값을 재생성함 -- 반면 다른것은 그 주위의 화소로 평균될 것이다. 따라서, 도 3a의 회로는 도 2의 라인 L1과 같은 수평적으로 보간된 화소들의 라인을 생성하기 위한 최대한의 효과적인 기술을 제공한다. 화소들 L1P1, L1P3 및 L1P5이 도 3에 도시된 바와 같이 열(304) 내에서 연속적으로 클럭되고, 따라서 화소열(307)은 보간된 화소들 L1P2 및 L1P4[보간된 값(307a)은 버려질 수 있음]을 포함하는 L1의 바람직한 전체 라인을 포함할 것이라고 가정한다. 따라서, 화소들 L1P1, L1P3 및 L1P5을 포함하는 입력 화상의 오리지널 라인L1이 보간된 화소들을 포함하기 위하여 "확장된다"고 보여질 수 있다.
도 3b는 최소의 구성 요소들을 사용하여 수평적으로 보간된 화소들의 라인을 효과적으로 생성하는 방법을 도시한다. 따라서, 도 3b에 도시된 방법은 도 2의 라인 L1을 생성하기 위하여 사용될 수 있다. 단계 320에서, 제1 화소열은 입력 화상내의 수평 라인에 대응하여 생성된다. 단계 321에서, 제2 화소열은 바람직하게 제1 화소열을 2중 클럭킹함으로써 제1 화소열 내의 화소들을 반복하여 생성된다. 그런 후에, 단계 322에서 제2 화소열은 한 클럭 사이클(즉, 2중 클럭에 대해 지연됨)에 의해 지연된다. 단계 323에서, 지연된 화소열과 제2 화소열은 평균되고, 단계 324에서 결과적인 화소열은 입력 화상의 새로운(보간됨) 수평 라인으로서의 출력이다.
도 4를 참조하면, 본 발명의 다양한 실시예에 따라 알파 혼합값은 상기 설명된 기술들을 사용하여 보간될 수 있다. 따라서, 예를 들어 입력 화상 내의 각 화소와 관련된 알파 혼합값들을 포함하는 입력 화소열(413)은 평균된 값으로 산재된 오리지널 알파 혼합값들을 포함하는 보간 알파 혼합값 열(414)을 생성하기 위하여 화소 복제기(404), 지연 회로(408) 및 평균 회로(412)를 통해 처리된다.
또한, 상기 기술된 바와 같이 RGB16과 같은 칼라 모드에서 동작하고 알파값을 사용할 때, 각 칼라 구성 요소 및 알파값은 각각 보간된다. 따라서, 도 4에 도시된 바와 같이 화소 복제기(401에서 403)들은 각 화소(각 칼라 구성 요소는 각각의 알파값에 의해 미리 계산됨)에 대한 적색, 녹색 및 청색 구성 요소들에 대응하는 화소열을 반복한다. 유사하게, 지연 소자(405에서 407)들 및 평균 회로(409에서 411)들은 각 화소에 관련된 메모리에 대응하는 화소 구성 요소들 위치로 저장될 수 있는 대응 출력열을 생성하기 위하여 지연 및 평균 동작을 실행한다. 대안적으로, 이들 동작들은 잘 공지된 방법에 따라 시간이 승산된 단일 회로로 실행될 수 있다. 도 6은 도 4의 기능들을 실행하기 위한 1개의 가능 회로를 도시한다.
기준이 도 5에 만들어질 것이다. 다양한 실시예에서, 디스플레이 라인들을 먼저 수평적으로 보간하는 것이 바람직하고, 그런 다음 각각의 그런 라인에서 도 3a의 수평 보간 회로로 화소들을 공급하는 것이 바람직하다. 따라서, 예를 들어 다시 도 2를 참조하면, 라인들 L1 및 L3에서의 화소들은 L2(원들의 라인)을 생성하기 위하여 평균될 수 있고, 그런 다음 라인들 L1, L2 및 L3에서의 화소들은 도 3a 및 3b에 도시된 수평 보간 기술을 사용하여 수평적으로 "확장"될 수 있다. 도 5와 관련해서, 라인 L1에 대응하는 제1 화소열(501)은 라인 L2에 대응하는 화소열(503)을 생성하기 위하여 라인 L3에 대응하는 제2 화소열(502)로 평균되고, 그때 3개 라인 모두는 도 3a 및 도 3b의 기술을 사용하여 수평적으로 보간된다.
도 6은 본 발명의 다양한 특성들을 구현하기 위한 1개의 가능 회로 구성을 도시한다. 특히, 도 6의 회로는 오버레이 화소들과 알파값들을 부분적 혼합하는 것뿐만 아니라 수직 및 수평 화소 보간을 구현하기 위하여 사용될 수 있다.
다양한 실시예들에서, 도 6의 회로는 RGB이거나 CLUT(칼라 룩-업 테이블) 모드 중에서 동작하기 위하여 프로그램될 수 있음에 따라 실질적으로 동일한 회로가 화소 타입에 대해 사용될 수 있다. 도 6에 도시된 디자인은 성능을 향상시키고 부품의 수 줄이기 위하여 에이식(ASIC)을 사용하여 구현될 수 있다. 또한, 단일 알파 제어 비트가 각 오버레이 화소에 대해 사용될 수 있다고 생각될지라도, 다수의 알파 혼합 비트들은 가산된 메모리의 비용으로 사용될 수 있다. 오버레이 화상 내의 각 화소에 대한 알파 혼합값을 생성하기 위한 다양한 다른 수단이 본 명세서에 기술되고 공동 계류중인 "Blending of Video Images in a Home Communication Terminal"(출원 번호 제_________호)에 기술된다.
오버레이 화소들은 메모리 내의 다양한 포맷들 중의 임의의 포맷내에 저장될 수 있다(단일 화상에 대해 공동 포맷을 사용하는 것이 바람직함에도 불구하고).
예를 들어, 다음 3개의 화소 포맷들이 사용될 수 있다.
(1) RGB16: 각 화소값은 적색에 대해 5비트, 녹색에 대해 6비트 및 청색에 대해 5비트로서 코드된 16비트를 포함한다. 추가 비트(1, 2, 또는 그 이상)들은 알파 혼합값을 설정하기 위하여 추가될 수 있다.
(2) CLUT8: 각 화소값은 8비트를 포함하고 RGB값들의 구성을 기입하는 칼라 룩업 테이블에서 인덱스로서 서브한다. CLUT8 모드 내의 보간이 칼라 룩업 동작이 실행된 후에 RGB 도메인에서 실행된다. 추가 비트(1, 2 또는 그 이상)들은 알파값을 설정하기 위하여 추가될 수 있다.
(3) ACLUT 8: 각 화소값은 8비트를 포함하고, 또한 8비트의 알파 혼합값을 포함한다. 이러한 모드가 사용될 때 알파 제어 비트(들)는 쓸모없게 된다. 각 오버레이 화소의 투명성, 반투명성 또는 불투명성은 각 화소에 대해 부호화된 알파 혼합값에 의해 유일하게 결정된다. 다양한 다른 포맷들 중의 임의의 포맷은 물론 가능하고, 도 6의 회로는 화소 포맷 및 혼합값 포맷에 의존하는 다양한 모드들에서 동작하도록 사용될 수 있다고 생각된다.
도 6에 도시된 바와 같이, DRAM과 같은 메모리(601)는 오버레이 화상을 저장하기 위하여 사용될 수 있다. RGB16모드에서, 예를 들어 각 화소가 3개의 칼라 구성 요소내에 16비트 스플릿을 포함할 수 있는 반면 CULT8 모드에서, 예를 들어 각 화소값은 칼라 룩업 테이블 CLUT 607(RGB모드에서, CLUT는 바이패스된다)을 사용하여 RGB 값들에 맵되는 8비트를 포함한다. 오버레이 화소값과 일치할때 크로마 키잉값은 오버레이 화소가 완전히 투명해지도록 설정될 수 있다. 이러한 것은 알파 혼합값을 강제로 0으로 함으로써 이루어질 수 있다.
RGB16 모드는 크로마 키값이 크로마 레지스터(603)으로 정의되고 16 비트의 오버레이 화소값이 MUX(606), 라인 버퍼(604) 및 크로마 비교 회로(602)에 제공될 수 있다고 가정한다. 크로마 비교 회로(602)는 오버레이 화소값과 크로마 레지스터(603)에 저장된 값(또는 범위)을 비교한다. 만약, 오버레이 화소값이 투명하다면(즉, 크로마 비교가 유리하다), 그때 오버레이 및 배경 비디오의 혼합은 불가능하고 단지 배경 비디오 화소만이 디스플레이된다(즉, 오버레이 화소는 무시된다).
만약, 크로마 비교가 불리하다면(즉, 오바레이 화소는 투명하지 않음) 그때 알파 제어 비트는 MUX(606)를 통해 알파 레지스터(608)로부터 판독된 알파 혼합값을 따라 알파 생성 및 곱셈 회로(609)로 제공된다. 알파 생성 및 곱셈 회로(609)는 오버레이 화소에 대한 알파 제어 비트가 설정되는지의 여부를 알기 위하여 체크한다. 만약, 알파 제어 비트가 설정된다면, 그때 오버레이 화소는 혼합이 이루어지도록 알파 값으로 미리 곱해진다. 만약, 알파 제어 비트가 설정되지 않는다면, 효과적인 알파값은 "1"이고 단지 오버레이 화소만이 디스플레이 된다(즉, 오버레이 화소는 "불투명"하고 배경 화소는 무시된다).
ACLUT 8모드에서 동작할 때(즉, 화소 당 8비트), 8개의 추가 비트들은 각 화소에 대해 알파 혼합값으로 할당될 수 있다. 따라서, 단일 알파 제어 비트대신에, 8비트의 알파 혼합값이 사용될 수 있고, 투명값(불투명, 투명 또는 반투명)은 각 화소에 대해 부호화된 알파값에 의해 유일하게 결정될 수 있다. 따라서, 알파 레지스터(608)내의 임의의 알파 혼합값은 무시되고 8비트의 각 오버레이 화소가 칼라 룩업 테이블로부터 화소의 RGB를 룩업한 후 알파 혼합값의 화소의 8비트를 사용하여 혼합된다.
혼합 동작과 일치하여, 화소들은 각각 회로들 613 및 614에서 수평 및 수직적으로 보간될 수 있다. 추가로, 알파 혼합 비트들과 각 화소를 관련시킬때 2개의 보간 화소들의 알파값들은 자체적으로 보간된다.
혼합은 보간전의 단계 및 보간 후의 단계에서 일어날 수 있다. 즉, 오리지널 화소는 보간 전 알파에 의해 미리 곱해지고, 그때 화소들 및 알파값이 보간되고, 그런 다음 그 결과는 배경과 (1-α)를 곱하고 그 결과를 보간된 전경에 추가함으로써 배경 비디오와 혼합된다. 도 6에 도시된 바와 같이, 배경 비디오 화소들은 각 배경 화소를 (1-α)와 승산하는 승산기(620)에 제공된다. 그 결과는 배경 화소가 오버레이 화소에 가산되도록 하는 가산기(621)에 제공된다. 혼합은 보간 후에 실행될 수 있고 기술 분야에서 통상의 지식을 가진 자들이 신속하게 구별할 수 있는 다양한 다른 방법으로 실행될 수 있다.
공동 계류 중인 "Blending of Video Images in a Home Communication Terminal"(출원 번호 제________호)에 도시된 바와 같이, 알파값은 다음의 다양한 방법 중의 임의의 방법으로 각 오버레이 화소에 대해 생성될 수 있다. (1) 별개의 다중-비트 알파값을 오버레이 화상(예를 들어, 8 추과 비트들)내의 각 화소에 관련시키는 방법, (2) 하나 이상의 알파 제어 비트들을 오버레이 화상내의 각 화소에 관련시키고 테이블 또는 레지스터로부터 더 큰 알파값을 룩업하기 위하여 이들 비트들을 사용하는 방법, (3) 픽셀값을 크로마값과 비교함으로써 오버레이 화소가 투명할 것인지의 여부를 결정하는 크로마 키와 함께 하나 이상의 알파 제어 비트를 사용하는 방법, 및 (4) 알파 제어 비트가 아닌 것과 함께 크로마 키를 사용하는 방법. 이들 접근들의 조합을 물론 가능하다.
임의의 이들 방법에서, 오버레이 화상 내의 각 화소에 대한 알파값이 혼합 동작을 하기위하여 제공될 수 있다고 가정된다.
예를 들어, 8비트의 알파값과 함께 각 화소를 저장하는 것보다 오히려 예를 들어 2개의 비트값은 메모리 공간을 확보하기 위하여 각 화소값과 함께 저장될 수 있고, 여기에서 2비트의 각 가능한 조합은 선정된 알파값에 의해 곱해질 선정비에 대응한다. 따라서, 예를 들어 00의 이진값은 0혼합(즉, 0α)과 같을 수 있다. 01의 이진값은 0.25α(또는 임의의 다른 선정비)와 같을 수 있다. 10의 이진값은 0.75α(또는 임의의 다른 선정비)와 같을 수 있다. 11의 이진값은 1.0α 혼합과 같을 수 있다. 여기에서 α는 선정된 알파값이다. 다른 변경도 물론 가능하다. 대안적으로, 1개, 2개 또는 그 이상의 알파 제어 비트는 전체적으로 상이한 알파 혼합값으로 간주되어 부호화될 수 있다. 여기에서 각 알파값은 그것을 부호화하기 위하여 사용된 비트들보다 더 많은 비트들을 포함한다. 따라서, 예를 들어 00의 값은 제1 알파 혼합값으로 간주될 수 있다. 01의 값은 제2 알파 혼합값으로 간주될 수 있다. 이러한 방법으로, 작은 수의 알파 제어 비트는 더 많은 알파 혼합값 또는 충분한 메모리 공간 저장을 초래하는 값을 "룩업"하기 위하여 사용될 수 있다.
에이식(ASIC)으로 구현될 수 있는 도 6에 도시된 회로는 본 발명의 원리를 실행하기 위한 단지 하나의 가능한 접근이라고 여겨질 수 있다. 또한, 도 6에 도시된 회로 상의 다른 변경도 가능한다. 예를 들어, 크로마 비교 회로(602)는 화소값들이 라인 버퍼(604) 내에 저장된 후에 비교되도록 MUX(606) 아래에 위치될 수 있다.
임의의 다양한 디스플레이 해상도가 구현될 수 있다. 2개의 공동 중간 해상도 포맷은 320×240 및 384×288이다. 따라서, 더 큰 포맷을 조절하기 위하여 384화소보다 더 긴 라인 버퍼를 사용하는 것이 바람직하다.
RGB16포맷을 사용할 때, 각 화소는 16비트의 칼라값 및 알파 제어에 대한 1비트를 포함한다. 크로마 비교 회로(602)(전체 18비트)로부터 알파 제어 비트 전체 및 크로마 키잉 비트뿐만 아니라 모든 16비트의 칼라는 화소 당 18비트에 의해 384 화소들을 수용할 수 있는 라인 버퍼(604) 내에서 판독된다(384는 320×240보다 약간 짙은 384×288 해상도를 유지하기 위하여 사용될 수 있다). 또한, 16비트의 칼라 및 알파 제어 비트는 MUX(606)에 제공될 수 있다. 16비트의 칼라는 1비트 크로마 키잉 값을 생성하기 위하여 크로마 비교기(602)에 비교된다.
제1 라인은 라인 버퍼(604)내에 저장되고, 다음 라인은 MUX(606)에 제공된다. 2개의 곱셈 및 2개의 CLUT 테이블들을 가지기 위한 필요를 해소하기 위하여, MUX(606)는 교대로 라인들을 처리하도록 사용될 수 있다.
다음 장은 도 6의 회로가 디스플레이 포맷의 특정 타입에 의존하여 상이하게 동작될 수 있는 방법을 기술한다.
1. 고-해상 모드(보간 없음)
도 6의 회로는 보간없이 오버레이 화소들을 알파값과 혼합하기 위하여 사용될 수 있다(예를 들어, 배경 화상과 동일한 디스플레이 해상도를 가진 오버레이 화상을 사용할 때). 다음은 도 6의 회로가 각각의 다양한 화소 포맷에 대해 보간없이 혼합을 실행하도록 동작될 수 있는 법을 기술한다.
A. RGB 화소 포맷
RGB 화소값 및 1-비트 알파 제어 비트는 메모리(601)로부터 전달된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 최대 및 최소값들을 사용하여 실행된다. 만약, 오버레이 화소값이 이러한 범위내에 들어간다면, 그것은 투명하다는 의미이고 1-비트 크로마 비교 프래그가 이러한 것을 표시하기 위하여 설정된다. 크로마 비교 플래그가 설정된다면, 알파 제어 비트는 무시되고 알파 혼합값은 0으로 정의된다(즉, 오버레이 화소는 0으로 승산되어질것이고 따라서 투명해질 것이다).
만약 크로마 비교 플래그가 설정되지 않는다면, 1-비트 알파 제어 비트는 검사된다. 만약 이러한 비트가 "1"이라면, 알파값은 알파 레지스터(608)(즉, 선정된 알파값)의 값으로 정의되고 오버레이 화소는 반투명하다(즉, 그것은 혼합될 것이다). 만약, 알파 제어 비트가 "0"이라면, 화소는 불투명하다고 여겨지고 알파값은 "1"이다(즉, 오버레이 화소는 배경 화소를 어둡게 할것이다). 보간은 고해상 모드로 인해 바이패스되고, 오버레이 화소는 칼라 스페이스 컨버터(622)를 통과한다. 화소값들은 가산기(621) 내의 배경 화소값들로 혼합된다. 이러한 혼합은 동일한(RGB) 칼라 스페이스 또는 다른 (예를 들어,YCbCr) 칼라 스페이스내에서 발생될 수 있다. 후자의 경우에, 화소값은 배경 화소들로 혼합되기 전에 칼라 스페이스 컨버터(622)에 의해 변환된다.
B. CLUT8 화소 포맷
8-비트 화소값 및 1-비트 알파 제어 비트는 메모리(601)로부터 판독된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 크로마값을 사용하여 실행된다. 만약 화소값이 이러한 인덱스와 일치한다면, 화소값은 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하도록 설정된다. 만약 클로마 비교 플래그가 설정된다면, 알파 제어 비트는 무시되고 알파값은 0이다(즉, 오버레이 화소는 0에 승산되어질것이고 따라서 투명해질것이다).
크로마 비교 플래그가 설정되지 않는다면, 그때 1-비트 알파 제어 비트는 검사된다. 만약, 이러한 비트가 "1"이라면, 알파값은 알파 레지스터(608)내의 값으로 정의되고 오버레이 화소는 반투명하다. 만약 알파 제어 비트가 "0"이라면, 화소는 불투명한 것으로 간주되고 알파값은 "1"이다(즉, 오버레이 화소는 배경 화소를 어둡게 할것이다). 데이타의 CLUT부분은 RGB값들을 얻기 위하여 칼라 룩-업 테이블(607)을 통과한다. 보간이 고해상 모드내에 있는 관계로 바이패스되고 RGB 데이타는 알파에 곱해지고 칼라 스페이스 컨버터(622)를 통해 패스된 후에 배경(비디오) 데이타와 혼합된다.
C. ACLUT8 화소 포맷
8-비트 화소값 및 8비트 알파값은 메모리(601)로부터 판독된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 크로마값을 사용하여 실행된다. 만약 오버레이 화소값이 이러한 값과 일치한다면, 오버레이 화소값은 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하도록 설정된다. 만약 클로마 비교 플래그가 설정된다면, 알파값은 "0"으로 정의된다(즉, 오버레이 화소는 0에 승산되어질것이고 따라서 투명해질것이다).
크로마 비교 플래그가 설정되지 않는다면, 그때 라인 버퍼(604)로부터의 8-비트 알파값은 알파값으로서 사용된다. 데이타는 RGB값들을 얻기 위하여 칼라 룩-업 테이블(607)을 통과한다. 보간이 고해상 모드내에 있는 관계로 바이패스되고 RGB 데이타는 알파로 곱해지고 칼라 스페이스 컨버터(622)를 통해 패스된 후에 배경(비디오)데이타와 혼합된다.
2. 중간-해상 모드(상부)
엇갈린 디스플레이에 대해, 화상의 각 수평 라인은 디스플레이의 홀수부 또는 짝수 부상에 있고 각각 "상부" 및 "하부"로 간주된다. 중간 해상 모드에 대해, 데이타의 상부는 사용될 수 있는 수평 보간을 제외하고 고해상 모드에 유사하게 작용한다.
A. RGB 데이타 포맷
RGB 화소값과 1-비트 알파 제어 비트는 메모리(601)로부터 판독된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 최대 및 최소값들을 사용하여 실행된다. 만약, 화소값이 이러한 범위내에 들어간다면, 화소값은 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하기 위하여 설정된다. 만약, 크로마 비교 플래그가 설정된다면 알파 제어 비트는 무시되고 알파값은 0으로 정의된다(즉, 오버레이 화소는 0으로 승산되어질것이고 따라서 투명해질 것이다).
만약 크로마 비교 플래그가 설정되지 않는다면, 1-비트 알파 제어 비트는 검사된다. 만약 이러한 알파 제어 비트가 "1"이라면, 알파값은 알파 레지스터내의 값으로 정의되고 오버레이 화소는 반투명하다. 만약, 알파 제어 비트가 "0"이라면, 화소는 불투명한것으로 여겨지고 알파값은 "1"이다(즉, 오버레이 화소는 배경 화소를 어둡게 할것이다).
만약, 수평 보간이 가능해진다면, 수평 보간은 수평 보간부(614)에 의해 실행될것이다. 수직 보간이 상부에서 필요하지 않기 때문에 라인 버퍼는 바이패스된다. 알파 레지스터(608)내의 값은 데이타(즉, 각 화소의 RGB값의 각 구성 요소는 적당한 알파값으로 곱해진다)에 곱하기 위해 사용되고 그때 알파값 및 화소 데이타는 보간된다. 클로마 비교 플래그가 설정된 경우에 알파값은 0이다. 클로마 비교 플래그가 설정되지 않는 경우에 알파 제어 비트는 0이다. 크로마 비교 플래그가 설정되지 않고 알파 제어 비트가 1인 경우에 알파값은 알파 레지스터(608)내의 값이다. 이러한 것이 데이타의 상부(홀수 라인)이기 때문에 수직 보간 모듈은 바이패스된다. 수평 보간 모듈에 도착하면서, 혼합된 데이타의 1개의 가중된 카피는 수평 보간부(614) 내의 평균 논리 회로로 간다. 2개가 평균되고 데이타의 전체 라인을 생기게 한다. RGB 칼라 및 알파값들은 보간된다.
수평 보간전에, 각 오버레이 화소는 3개의 가능한 알파값 0, α 및 1을 가진다. 단지 수평 보간이 가능하다면, 보간된 알파값은 2개의 값의 평균이고, 각각은 0, α 및 1일 수 있다. NTSC 사각 화소 포맷의 경우에, 수평 보간은 320 화소들을 얻는 것과 같고 라인 당 640 화소들 얻기 위한 보간과 같다.
B. CLUT8 데이타 포맷
8-비트 화소값 및 1-비트 알파 제어 비트는 메모리(601)로부터 판독된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 크로마 키값을 사용하여 실행된다. 만약, 화소값이 이러한 값과 일치한다면, 화소값은 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하기 위하여 설정된다. 만약, 크로마 비교 플래그가 설정된다면 알파값은 0으로 정의된다(즉, 오버레이 화소는 0으로 승산되어질것이고 따라서 투명해질 것이다).
만약 크로마 비교 플래그가 설정되지 않는다면, 1-비트 알파 제어 비트는 검사된다. 만약 이러한 비트가 "1"이라면, 알파값은 알파 레지스터내의 값으로 정의되고 오버레이 화소는 반투명하다. 만약, 알파 제어 비트가 "0"이라면, 오버레이 화소는 불투명으로 여겨지고 알파값은 "1"이다(즉, 오버레이 화소는 배경 화소를 어둡게 할것이다).
오버레이 화소 데이타는 RGB로 변환하기 위하여 칼라 룩업 테이블(607)을 통과한다. 알파 레지스터(608)내의 값은 보간전에 데이타를 곱하기 위하여 사용된다. 수직 보간부(613)는 상부이기 때문에 바이패스된다. 수평 보간부(614)에 도착해서, 알파 곱해진 데이타의 한 카피가 수평 보간 레지스터(614)로 가고 다른 가중된 카피는 수평 보간부(614)내의 평균 논리 회로로 간다. 2개가 평균되어 데이타의 전체 라인이 생기게 된다. RGB 칼라 및 알파값은 보간된다.
수평 보간전에, 각 오버레이 화소는 3개의 가능한 알파값 0, α 및 1을 가진다. NTSC 사각 화소 포맷의 경우에, 수평 보간 320 화소들을 갖는 같고 라인당 640 화소들을 얻기 위한 보간과 같다.
C. ACLUT8 데이타 포맷
8-비트 화소값과 8-비트 알파값은 메모리(601)로부터 판독된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 크로마값을 사용하여 실행된다. 만약, 화소값이 이러한 인덱스와 일치한다면, 오버레이 화소는 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하기 위하여 설정된다. 만약, 크로마 비교 플래그가 설정된다면 알파 제어 비트는 무시되고, 알파값은 0으로 정의된다(즉, 오버레이 화소는 0으로 곱해질것이고 따라서 투명해질 것이다). 만약, 크로마 비교 플래그가 "0"이라면, 라인 버퍼로부터 8-비트 알파값은 알파값으로서 사용된다.
오버레이 화소 데이타는 RGB로 변환하기 위하여 칼라 룩업 테이블(607)을 통과한다. 라인 버퍼로부터 8-비트 알파값은 보간전에 화소값을 미리 곱하기 위하여 사용된다. 수직 보간부(613)는 상부이기 때문에 바이패스된다. 수평 보간부에 도착해서, 혼합된 데이타의 1개의 가중된 카피가 수평 보간부(617)로 가고, 반면 다른 가중된 카피는 수평 보간부(614)내의 평균 논리 회로로 간다. 2개가 평균되어 데이타의 전체 라인이 생기게 된다. NTSC 사각 화소 포맷의 경우에, 이러한 것은 320 화소들을 얻기 위한 것과 같고 라인당 640 화소들을 얻기 위하여 보간과 같다.
3. 중간 해상도(하부)
중간 해상 모드에 대해, 데이타(심지어 라인들)의 하부는 상이하게 작용한다. 만약, 보간이 불가능해진다면 그때 데이타는 상부와 동일해질 것이고 (NTSC 사각 화소 포맷의 경우에) 단지 320화소/라인일것이다. 상부 및 하부가 동일한 데이타를 가질것이기 때문에 "플루터(flutter)"가 보여질 것이다. 수직 보간은 가시적 플러터를 완화할것이다. 수평 보간전에 수식 보간을 행하는 것은 역전 보간 순서보다 덜 계산하게 한다. 보간이 완료된 후에, 데이타는 칼라 스페이스 컨버터(622)로 전송되고 그런 다음 디스플레이 제어기상으로 전송된다.
A. RGB 데이타 포맷
RGB 화소값과 1-비트 알파 제어 비트는 메모리(601)로부터 판독된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 최대 및 최소값들을 사용하여 실행된다. 만약, 오버레이 화소값이 이러한 범위내에 들어간다면, 화소값은 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하기 위하여 설정된다. 만약, 크로마 비교 플래그가 설정된다면 알파값은 0으로 정의된다(즉, 오버레이 화소는 0으로 승산되어질것이고 따라서 투명해질 것이다).
만약 크로마 비교 플래그가 설정되지 않는다면, 1-비트 알파 제어 비트는 검사된다. 만약 이러한 비트가 "1"이라면, 알파값은 알파 레지스터내의 값으로 정의되고 오버레이 화소는 반투명하다. 만약, 알파 제어 비트가 "0"이라면, 오버레이 화소는 불투명하다고 여겨지고 알파값은 "1"이다(즉, 오버레이 화소는 배경 화소를 어둡게 할것이다). 보간이 가능해질 때, 메모리(601) 및 크로마 비교(602)로부터의 데이타는 라인 버퍼(604)내로 들어간다. 부호화된 2비트(알파 제어 비트 및 크로마 키 비트)는 RGB 16 칼라 데이타에 추가된다.
처음으로, LINE 1(오버레이 화소 데이타의 제1 라인)은 라인 버퍼(604)로 들어간다. 그런 후에, LINE 3(오버레이 화소 데이타의 제2 라인)은 가산기에 실시간 입력이 되는 것뿐만 아니라 라인 버퍼내로 판독되고 기입된다. 제1 라인은 라인 버퍼를 남기고 가산기에 제2 입력이 된다. 수직 보간부(613)는 수직 보간(즉, 칼라 및 알파값을 평균함)을 실행한다. 그런 다음 수평 보간은 수평 보간부(614)에서 실행된다.
B. CLUT8 데이타 포맷
8-비트 화소값과 1-비트 알파 제어 비트는 메모리(601)로부터 판독된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 크로마값을 사용하여 실행된다. 만약, 화소값이 이러한 값과 일치한다면, 화소값은 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하기 위하여 설정된다. 만약, 크로마 비교 플래그가 설정된다면 알파값은 0으로 정의된다(즉, 오버레이 화소는 0으로 승산되어질것이고 따라서 투명해질 것이다).
만약 크로마 비교 플래그가 설정되지 않는다면, 1-비트 알파 제어 비트는 검사된다. 만약 이러한 비트가 "1"이라면, 알파값은 알파 레지스터내의 값으로 정의되고 오버레이 화소는 반투명하다. 만약, 알파 제어 비트는 "0"이라면, 화소는 불투명하다고 여겨지고 알파값은 "1"이다(즉, 오버레이 화소는 배경 화소를 어둡게 할것이다).
수직 보간이 가능해질 때, 메모리(601) 및 크로마 비교(602)로부터의 화소 데이타는 라인 버퍼(604)내로 들어간다. 2비트의 알파 제어 및 크로마 키잉은 CLUT8 칼라 데이타에 추가된다. 처음으로, LINE 1(오버레이 화소들의 제1 라인)은 라인 버퍼로 들어간다. 그런 후에, LINE 3(오버레이 화소들의 제2 라인)은 가산기에 실시간이 되는 것뿐만 아니라 라인 버퍼내로 판독되고 기입된다. 제1 라인은 라인 버퍼를 남기고 가산기에 제2 입력된다.
가산되기 전에, 2개의 신호들은 칼라 룩업 테이블(607)을 통해 RGB16으로 변환된다. 다양한 실시예들에서 단지 하나의 칼라 룩업 테이블이 있기 때문에, 멀티플렉서는 변환을 위한 시간에 가수(addend)가 데이블에 액세스하도록 사용된다. 이러한 멀티플렉싱은 중간 해상 모드에서 모든 화소가 2화소 클럭을 점유하기 때문에 실시간 내에 실행될 수 있다. 수직 보간부(613)는 수직 보간(즉, 칼라 및 알파값을 평균함)을 행한다. 그런 다음 수평 보간이 수평 보간부(614)에서 실행된다.
C. ACLUT8 데이타 포맷
8-비트 화소값 및 8-비트 알파값은 메모리(601)로부터 전달된다. 크로마 비교 동작은 크로마 레지스터(603)로부터 크로마값을 사용하여 실행된다. 만약, 오버레이 화소값이 이러한 값과 일치한다면, 오버레이 화소는 투명해질것으로 여겨지고 1-비트 플래그는 이러한 것을 표시하기 위하여 설정된다. 만약, 크로마 비교 플래그가 설정된다면 알파값은 0으로 정의된다.
만약 크로마 비교 플래그가 설정되지 않는다면, 메모리(601)로부터 8-비트 알파값은 알파값으로서 사용된다. 수직 보간이 가능해질 때, 메모리(601) 및 크로마 비교(602)로부터의 데이타는 라인 버퍼(604)를 기입한다. 처음으로, LINE 1(오버레이 화소들의 제1 라인)은 라인 버퍼를 기입한다. 그런 후에, LINE 3(오버레이 화소들의 제2 라인)은 가산기에 실시간을 입력이 되는것뿐만 아니라 라인 버퍼내로 판독되고 기입된다. LINE1(오버레이 화소들의 제1 라인)은 라인 버퍼를 남기고 가산기에 제2 입력이 된다.
평균되기전에, 2개의 신호들은 칼라 룩업 테이블(607)을 통해 RGB16으로 변환된다. 다양한 실시예들에서 단지 하나의 칼라 룩업 테이블이 있기 때문에, 멀티플렉서는 변환을 위한 시간에 가수(addend)가 테이블에 액세스하도록 사용된다. 이러한 멀티플렉싱은 중간 해상 모드에서 모든 화소가 2화소 클럭을 점유하기 때문에 실시간 내에 실행될 수 있다. 수직 보간부(613)는 수직 보간(즉, 칼라 및 알파값을 평균함)을 행한다. 그런 다음 수평 보간은 수평 보간부(614)에서 실행된다.
도 7은 도 6의 회로에 대응하는 타이밍도를 도시한다. 도 7에서 원안에 포함된 각 숫자는 도 6내의 대응하는 회로 포인트를 식별한다. 상기는 도 7에 보여질 수 있고, 라인 버퍼(604)(원 1)의 출력은 각 CLK320 클럭 사이클(CLK320은 "고해상" 화소율인 CLK640 레이트로 동작한다)에서 입력 화상의 라인 1 상의 오리지널 화소들과 같다. 반대로, 메모리601(원 2)의 출력은 각 CLK320 클럭 사이클에서 입력 화상의 라인(3)상의 오리지널 화소들과 같다. 멀티플렉서(606)의 출력[원 3, 승수후(610)]은 각 클럭 사이클CLK(640)에서 각 라인으로부터 화소들을 교체하고, 레지스터(611)(원 4)는 이로한 패턴을 반복하지만 하나의 CLk640 클럭 사이클에 의해 지연된다.
레지스터612(원 5)의 출력은 입력 화상의 라인 1로부터 화소들을 다시 재생성하지만 전체 CLK320클럭 사이클에 의해 오프셋된다. 반면, 레지스터615(원 6)의 출력은 입력 화상의 라인 3로부터 화소들을 다시 재생성하지만 전체 CLK320클럭 사이클에 의해 오프셋된다. 평균 논리 회로616(원 7) 다음에, 입력 화상의 라인 1 및 라인 3으로부터 대응하는 화소들의 평균은 생성된다(예를 들어, 수직 화소 평균을 통해 라인 2생성). 평균 논리 회로(618)(원 9) 다음에, 동일한 라인상의 개개의 화소들의 평균은 수직적으로 평균된 라인들로부터의 화소들의 클럭율에 2배에서 생성된다. L1P1 및 L1P4는 단지 상부에 대해서만 요구되고 수평 보간에 의해 생성된다. 도 7은 하부 파형을 도시한다. 여기에서 수직 및 수평 필터링이 필요하다. 따라서, L2P2 = AVG(L2P1, L2P3), 및 L2P4 = AVG(L2P3, L2P5)이다.
도 8은 중간 해상 오버레이 화상(801)이 업스케일될 수 있고 결과적인 화상(804)을 생성하기 위하여 고해상 배경 화상(803)과 혼합될 수 있다. 따라서, 도 8은 도 6의 회로가 혼합과 업스켈링 동작을 조합하는 방법을 도시한다.
도 8에서, 중간 해상 오버레이 화상(801)은 320×240 오버레이 화소들을 포함한다고 가정된다. 대응하는 알파값(α1 및 α3)을 갖는 2개의 수평적으로 인접한 화소들(P1 및 P3)에서, 각 화소는 화소의 알파값(이미 논의된 임의의 알파 생성 기술을 사용하여)으로 미리 곱해지고 대응하는 알파값들은 화상(802)에서 알파값(α2)과 함께 산재된 화소(U2)를 생성하기 위하여 평균된다. 추가적으로, 각 오버레이 화소값은 고해상 배경 화상(803)으로 혼합을 준비하여 이미 B1, B2 및 B3(예를 들어, 640×480 포맷)을 가지도록 가정된 알파 생성 회로(609)(예를 들어, U1 및 U3)를 사용하여 도 6의 회로에서 대응하는 알파값으로 계산될 수 있다.
따라서, 중간 해상 오버레이(801)로부터의 화소(P1)는 중간 화소U1(그것의 알파값, 그러나, 변화지는 못함)를 생성하기 위하여 그것의 알파값(α1)으로 곱해진다. 유사하게, 중간 해상 오버레이(801)으로부터 화소 P3는 중간 화소(U3)를 생성하기 위하여 그것의 알파값(α3)으로 곱해진다. 화상(802)에서 중간 "업스케일된" 화소값(U2)을 생성하기 위하여, 각 대응하는 이웃 화소값(U1 및 U3)의 화소값들이 평균되고(즉, 그것의 대응하는 알파값들로 곱해진 후 P1과 P3의 평균), U2의 알파값은 U1 및 U3의 알파값들로 평균되도록 결정된다. 이러한 동작이 전체 오버레이 화상(801)상에서 실행될 때, 중간 화상(802)은 배경 비디오 화상(803)으로서 동일한 해상도를 가진다.
그런 후에, 배경 화상(803)으로부터의 화소들은 중간 화상(802)으로부터 각 대응하는 화소의 알파값으로 곱해지고 중간 화상(802)으로부터 각 화소에 가산된다. 따라서, 화상(804) 내의 결과적 화소(R1)는 값 U1 + (1-α1)B1을 가지는 반면, 결과적 화소 R2는 값 U2 + (1-α2)B2을 가지고, 결과적 화소 R3는 값 U3 + (1-α3)B3을 가진다.
요약에서, 도 8에 도시된 화소 조작 계획은 고해상 배경 화상의 해상도를 일치하기 위하여 알파 생성 및 오버레이 화상 내의 각 화소에 대한 곱셈을 오버레이의 "업스켈링"과 조합한다. 알파 및 보간 기능[도 8의 "업스케일된" 화상(802)]들을 가진 사전 곱셈은 도 6의 회로(605, 613 및 614)를 사용하여 실행될 수 있다. 혼합 기능(도 8의 결과적 화상(804) 참조)은 도 6의 회로(620 및 621)를 사용하여 실행될 수 있다.
도 9는 화상으로부터의 2개의 수직 라인들이 대응 알파값에 의해 승산하는 픽셀들을 포함하는 제3 라인을 생성하기 위하여 효과적으로 평균될 수 있는 방법을 도시한다. 도 9에 도시된 기술은 일반적으로 기술된것과 도 6의 회로의 참조와 비교한다.
도 9에서, 입력 화상의 LINE1에 대응하는 제1 화소열(907)은 화소들(L1P1, L1P3 및 L1P5)을 포함한다. 유사하게, 입력 화상의 LINE3(즉, 제2 라인)에 대응하는 제2 화소열(906)은 화소들(L3P1, L3P3 및 L3P5)을 포함한다. 각 화소열은 각 라인으로부터 선택적 연속 화소들을 포함하는 단일 화소 스트림(908)을 생성하는 인터리버(901)에 제공된다. 인터리버의 사용은 칼라 룩-업(도 9에 미 도시됨)을 실행하기 위하여 요구된 구성 요소의 수및 승수(902)[도 6의 승수(610)와 같은]에 의한 곱셈의 수를 줄인다.
알파 결정 화로(904)는 화소열 리빙 승수(902)는 그것의 대응하는 알파값에 의해 곱해진 화소들을 포함하도록 이미 설명된 기술들에 따라 각 화소에 대한 알파값을 생성한다. 단일 화소열 리빙 승수(902)는 2개의 분리된 화소열(909 및 910) 뒤로 화소열을 분리하는 디인터리버(903)에 패스된다. 각각은 입력 화상의 수평 라인에 대응한다. 그런 후에, 2개의 화소열은 평균 회로(905)(도 6에서 소자(616)과 같은)에서 평균되고 평균된 화소들 및 알파값을 포함하는 출력 화소열(911)이 생성된다. 각각의 화소열(909, 910 및 911)은 도 3A에 도시된 바와 같은 수평 보간 회로에 연속적으로 제공될 수 있다.
본 발명의 많은 수정 및 변경이 가능하고, 특정값들에서 참조는 단지 예일 뿐이다. 한 예시로서, 다중 회로가 기능을 실행하기 위하여 설명되고 크레임되었다. 높은 클럭율로 다중 송신되는 적은 수의 회로를 사용하여 동일한 방법으로 동일한 기능을 이룰 수 있다. 따라서, 본 발명의 첨부된 청구항의 범위내에서 특별하게 기술되는 것보다 다른 방법으로 실행될 수 있다는 것이 이해될 것이다.

Claims (35)

  1. 제1 디스플레이 해상도를 갖고 수평 라인들로 정렬된 다수의 화소값들을 포함하는 제1 화상을 제2 디스플레이 해상도를 갖는 제2 화상으로 변환시키기 위한 장치에 있어서,
    상기 제1 화상의 수평 라인들 중 하나의 수평 라인으로부터 화소값들을 포함하는 화소열을 수신하고 상기 하나의 수평 라인으로부터 복제된 화소값을 포함하는 복제된 화소열을 생성하는 화소 복제자(pixcel replicator);
    상기 화소 복제자에 결합되어, 지연 복제된 화소열을 생성하기 위하여 상기 복제된 화소열을 하나의 클럭 사이클 만큼 지연시키는 지연 소자;
    상기 복제된 화소열 및 상기 지연 복제된 화소열을 수신하고, 상기 복제된 화소열과 상기 지연 복제된 화소열로부터의 대응 화소값들을 평균하고, 상기 하나의 수평 라인으로부터의 평균 화소값들로 산재된 상기 하나의 수평 라인으로부터의 화소값들을 포함하는 평균 화소열을 출력하는 평균 회로
    를 포함하는 것을 특징으로 하는 변환 장치.
  2. 제1항에 있어서, 상기 화소 복제기에 의해 수신하기 이전에, 상기 화소열내의 각 화소값을 각각의 화소값의 투과성을 조절하는 알파 혼합값과 승산하기 위한 수단을 더 포함하는 것을 특징으로 하는 변환 장치.
  3. 제2항에 있어서, 상기 승산 수단은 각각의 화소값과 관련된 알파 제어 비트에 따라 알파 레지스터로부터 알파 혼합값을 검색하기 위한 수단을 포함하는 것을 특징으로 하는 변환 장치.
  4. 제2항에 있어서, 상기 승산 수단은 각 화소값과 관련된 다수의 부호화된 알파 제어 비트를 따라 룩업(look-up) 테이블로부터 알파 혼합값을 검색하기 위한 수단을 포함하는 것을 특징으로 하는 변환 장치.
  5. 제2항에 있어서, 각 화소값과 크로마 키잉(keying)값 간의 적절한 비교에 응답하여, 각 화소값의 승산이 0으로 되게 하는 수단을 더 포함하는 것을 특징으로 하는 변환 장치.
  6. 제1항에 있어서, 상기 제1 화상 내의 각각의 화소값들이 다수의 칼라 성분들을 포함하고, 상기 화소 복제기, 지연 소자, 및 평균 회로는 각각의 칼라 성분에 대해 별도의 평균 화소열이 생성되도록 각 칼라 성분에 대해 복제되는 것을 특징으로 하는 변환 장치.
  7. 제1항에 있어서,
    상기 제1 화상 내의 각각의 화소값은 화소값이 제3 화상으로부터의 대응하는 화소값과 혼합될 정도를 결정하는 알파 혼합값과 상호 관련되고,
    상기 제1 화상의 상기 하나의 수평 라인으로부터 알파 혼합값들을 포함하는 제2 화소열을 수신하고, 복제된 알파 혼합값을 포함하는 제2 복제된 화소열을 생성하기 위한 수단;
    상기 제2 화소 복제 수단에 결합되어, 지연 복제된 알파 혼합값열을 생성하기 위하여 하나의 클럭 사이클만큼 상기 복제된 알파 혼합값열을 지연시키기 위한 수단; 및
    상기 복제된 알파 혼합값열 및 상기 지연 복제된 알파 혼합값열을 수신하고, 상기 복제된 알파 혼합값열 및 상기 지연 복제된 알파 혼합값열로부터 대응 요소들을 평균하고, 상기 알파 혼합값열로부터의 평균 요소들로 분산된 상기 알파 혼합값열로부터의 요소들을 포함하는 평균 알파 혼합값열을 출력하기 위한 수단
    을 포함하는 것을 특징으로 하는 변환 장치.
  8. 제1항에 있어서, 상기 제1 화상 내의 각각의 다수의 화소들과 관련된 알파 혼합값들을 보간하여 보간된 알파 혼합값을 생성하기 위한 수단을 더 포함하는 것을 특징으로 하는 변환 장치.
  9. 제1항에 있어서, 상기 화소 복제기는 화소열 속도의 2배 속도로 클럭되는 레지스터를 포함하는 것을 특징으로 하는 변환 장치.
  10. 제1 디스플레이 해상도를 가지고 수평 라인으로 정렬된 다수의 화소값을 포함한 제1 화상을 제2 디스플레이 해상도를 가진 제2 화상으로 변환시키는 방법에 있어서,
    (1) 상기 제1 화상의 수평 라인들 중 하나의 수평 라인으로부터 화소값들을 포함하는 화소열을 복제하여 상기 하나의 수평 라인으로부터 복제된 화소값들을 포함하는 복제된 화소열을 생성하는 단계;
    (2) 지연 복제된 화소열을 생성하기 위하여 상기 복제된 화소열을 하나의 클럭 사이클만큼 지연시키는 단계; 및
    (3) 상기 복제된 화소열 및 상기 지연 복제된 화소열로부터의 대응 화소값들을 평균하고, 상기 하나의 수평 라인으로부터의 평균 화소값으로 분산된 상기 하나의 수평 라인으로부터의 화소값들을 포함하는 평균 화소열을 출력하는 단계
    를 포함하는 것을 특징으로 하는 변환 방법.
  11. 제10항에 있어서, 상기 화소 복제기에 의해 수신하기 전에, 상기 화소열 내의 각각의 화소값을 각각의 화소값의 투과성을 조절하는 알파 혼합값과 승산하는 단계를 더 포함하는 것을 특징으로 하는 변환 방법.
  12. 제11항에 있어서, 상기 승산 단계는 각각의 화소값과 관련된 알파 제어 비트에 따라 알파 레지스터로부터 알파 혼합값을 검색하는 단계를 포함하는 것을 특징으로 하는 변환 방법.
  13. 제11항에 있어서, 상기 승산 단계는 각 화소값과 관련된 다수의 부호화된 알파 제어 비트들에 따라 룩업(look-up) 테이블로부터 알파 혼합값을 검색하는 단계를 포함하는 것을 특징으로 하는 변환 방법.
  14. 제11항에 있어서, 각각의 화소값과 크로마 키잉값을 비교하고, 적절한 비교에 응답하여 각각의 화소값의 승산이 0으로 되게 하는 단계를 더 포함하는 것을 특징으로 하는 변환 방법.
  15. 제10항에 있어서, 상기 제1 화상 내의 각각의 화소값은 다수의 칼라 성분들을 포함하고, 단계 (1), (2) 및 (3)은 각각의 칼라 성분에 대해 별도의 평균 화소열이 생성되도록 각각의 칼라 성분에 대해 별도로 수행되는 것을 특징으로 하는 변환 방법.
  16. 제10항에 있어서,
    상기 제1 화상 내의 각각의 화소값은 화소값이 제3 화상으로부터의 대응하는 화소값과 혼합될 정도를 결정하는 알파 혼합값과 상호 관련되고,
    (4) 상기 제1 화상의 상기 하나의 수평 라인으로부터 알파 혼합값들을 포함하는 제2 화소열을 수신하고, 복제된 알파 혼합값을 포함하는 제2 복제된 화소열을 생성하는 단계;
    (5) 지연 복제된 알파 혼합값열을 생성하기 위하여 하나의 클럭 사이클만큼 상기 복제된 알파 혼합값 트레인을 지연시키는 단계; 및
    (6) 상기 복제된 알파 혼합값열과 상기 지연 복제된 알파 혼합값열을 수신하고, 상기 복제된 알파 혼합값열 및 상기 지연 복제된 알파 혼합값열로부터 대응 요소들을 평균하고, 상기 알파 혼합값열로부터의 평균 요소들로 분산된 상기 알파 혼합값열로부터의 요소들을 포함하는 평균 알파 혼합값열을 출력하는 단계
    를 더 포함하는 것을 특징으로 하는 변환 방법.
  17. 제10항에 있어서, 상기 제1 화상 내의 각각의 다수의 화소들과 관련된 알파 혼합값을 보간하여 보간된 알파 혼합값을 생성하는 단계를 더 포함하는 것을 특징으로 하는 변환 방법.
  18. 제10항에 있어서, 단계 (1)은 화소열을 정상 클럭율의 2배로 클럭하는 레지스터를 사용하는 단계를 포함하는 것을 특징으로 하는 전환 방법.
  19. 제10항에 있어서, 화소들의 평균 라인을 생성하기 위하여 상기 제1 화상의 2개의 상이한 수평 라인들로부터의 화소들을 평균하고, 화소들의 평균 라인을 단계 (1)에서 복제된 상기 하나의 수평 라인으로 이용하는 단계를 더 포함하는 것을 특징으로 하는 변환 방법.
  20. 제1 디스플레이 해상도를 가진 제1 화상으로부터의 화소들을 제2 디스플레이 해상도를 가진 제2 화상들로부터의 화소들과 조합하기 위한 장치에 있어서,
    상기 제1 화상 내의 각 화소의 투과성을 조절하는 알파값을 결정하기 위한 알파값 결정 수단;
    상기 제1 화상으로부터의 인접한 화소값들을 평균함으로써 상기 제1 화상으로부터의 보간된 화소값들을 생성하기 위한 화소 평균 수단;
    상기 알파값 결정 수단에 의해 결정된 대응하는 인접 알파값들을 평균함으로써 보간된 알파값들을 생성하기 위한 알파값 평균 수단 - 각각의 보간된 화소값은 관련된 보간 알파값을 가짐 -; 및
    각 보간된 화소값 및 그것의 관련된 보간 알파값과 상기 제2 화상으로부터의 대응 화소값을 혼합하기 위한 혼합 수단
    을 포함하는 것을 특징으로 하는 조합 장치.
  21. 제20항에 있어서, 상기 알파값 결정 수단은 상기 제1 화상 내의 각 화소와 관련된 메모리 특정 알파 혼합 비트들로부터 판독하는 것을 특징으로 하는 조합 장치.
  22. 제20항에 있어서, 상기 알파값 결정 수단은 선정된 알파값을 검색하기 위하여 상기 제1 화상 내의 각 화소와 관련된 알파 제어 비트를 사용하는 것을 특징으로 하는 조합 장치.
  23. 제20항에 있어서, 상기 제1 화상 내의 각 화소값과 크로마 키잉값을 비교하여, 일치가 있다는 판단에 응답하여, 대응 화소값에 대한 알파값이 0이 되게 하는 수단을 더 포함하는 것을 특징으로 하는 조합 장치.
  24. 제20항에 있어서, 상기 보간된 화소값들을 생성하기 이전에, 상기 제1 화상 내의 각 화소값에 이값에 관련된 알파값을 승산하기 위한 수단을 더 포함하는 것을 특징으로 하는 조합 장치.
  25. 제1 디스플레이 해상도를 가진 제1 화상으로부터의 화소들을 제2 디스플레이 해상도를 가진 제2 화상으로부터의 화소들과 조합하는 방법에 있어서,
    (1) 상기 제1 화상 내의 각 화소에 대해, 화소의 투과성을 조절하는 알파값을 결정하는 단계;
    (2) 상기 제1 화상으로부터의 화소값들을 평균함으로써 상기 제1 화상으로부터 보간 화소들을 생성하는 단계;
    (3) 단계 (1)에서 결정된 대응 알파 값들을 평균함으로써 상기 제1 화상으로부터 보간 알파값들을 생성하는 단계; 및
    (4) 단계 (3)에서 생성된 보간 화소들을 상기 제2 화상으로부터 대응하는 화소들과 혼합하는 단계
    를 포함하는 것을 특징으로 하는 조합 방법.
  26. 제25항에 있어서, 단계 (1)은 상기 제1 화상 내의 각 화소와 관련된 메모리 특정 알파 혼합 비트들로부터 판독하는 단계를 포함하는 것을 특징으로 하는 조합 방법.
  27. 제25항에 있어서, 단계 (1)은 선정된 알파값을 검색하기 위하여 상기 제1 화상 내의 각 화소와 관련된 알파 제어 비트를 사용하는 단계를 포함하는 것을 특징으로 하는 조합 방법.
  28. 제25항에 있어서, 상기 제1 화상 내의 각 화소값과 크로마 키잉값을 비교하여, 일치가 있다는 판단에 응답하여, 대응 화소값에 대한 알파값이 0이 되게 하는 단계를 더 포함하는 것을 특징으로 하는 조합 방법.
  29. 제25항에 있어서, 상기 보간된 화소값들을 생성하기 이전에, 상기 제1 화상 내의 각 화소값에 이값에 관련된 알파값을 승산하는 단계를 더 포함하는 것을 특징으로 하는 조합 방법.
  30. 다수의 화소들의 수평 라인들을 포함하는 디스플레이 화상 내의 화소들을 보간하기 위한 장치에 있어서,
    입력 화상의 제1 라인으로부터 화소들을 포함하는 제1 화소열 및 입력 화상의 제2 라인으로부터 화소들을 포함하는 제2 화소열을 수신하고 상기 제1 및 제2 화소열들로부터 인터리브된 화소들을 포함하는 인터리브된 화소열의 출력을 생성하는 인터리버;
    상기 인터리브된 화소열 내의 각 화소에 대해서 각 화소에 대한 투과도를 지정하는 알파 혼합값을 결정하기 위한 수단;
    상기 인터리브된 화소열 내의 각 화소를 그것의 결정된 알파 혼합값과 승산하고 미리 승산된 화소들을 포함하는 인터리브된 화소를 생성하는 승산기;
    미리 승산된 화소들을 포함하는 인터리브된 화소열을 디인터리브하여 제1의 미리 승산된 화소열 및 제2의 미리 승산된 화소열을 생성하는 디인터리버; 및
    상기 제1의 및 제2의 미리 승산된 화소열들로부터 대응하는 화소값들을 평균하고, 보간된 화소 라인들을 출력하는 평균 회로
    를 포함하는 것을 특징으로 하는 화소 보간 장치.
  31. 제1 다수의 화소들을 포함하는 제1 화상을 제2 다수의 화소들을 포함하는 제2 화상 - 상기 제1 다수의 화소 각각은 디스플레이 가능한 화소값과 이 화소값의 투과성을 제어하는 알파 제어 비트를 포함함 - 과 조합하기 위한 장치에 있어서,
    상기 제1 화상 내의 각 화소의 알파 제어 비트와 상기 제1 화상 내의 각 디스플레이 가능한 화소값에 응답하는 크로마 비교 회로에 응답하여, 0, 1 및 소정값 α로 구성된 세트로부터 선택된 값을 포함하는 알파값을 생성하기 위한 알파 생성 회로;
    알파 생성 회로에 결합되어, 각 생성된 알파값에 상기 제1 화상으로부터의 대응하는 디스플레이 가능한 화소값을 승산하고 미리 승산된 디스플레이 가능한 화소값을 생성하기 위한 승산 수단; 및
    상기 승산 수단에 결합되어, 2개의 미리 승산된 화소값으로부터 보간 화소들을 생성하고 2개의 알파값으로부터 보간 알파 값을 생성하기 위한 수평 보간 회로
    를 포함하는 것을 특징으로 하는 조합 장치.
  32. 제31항에 있어서, 상기 승산 수단과 상기 수평 보간 회로 사이에 결합되어, 2개의 미리 승산된 화소값들로부터 보간 화소들을 생성하기 위한 수직 보간 회로를 더 포함하는 것을 특징으로 하는 조합 장치.
  33. 제31항에 있어서, 상기 수평 보간 회로는 가산기, 및 입력되는 화소열 속도의 2배 속도로 클럭되는 레지스터를 포함하는 것을 특징으로 하는 조합 장치.
  34. 제31항에 있어서, 상기 수평 보간 회로의 출력에 결합되어, 각 보간 화소에 1-α가 미리 승산된 상기 제2 화상으로부터 대응하는 디스플레이 가능한 화소값을 가산하기 위한 가산기를 더 포함하는 것을 특징으로 하는 조합 장치.
  35. 제31항에 있어서,
    다음의 3가지 모드, 즉
    (1) 각 디스플레이 가능한 화소값이 적색, 녹색 및 청색의 각 칼라 성분을 포함하는 RGB 모드;
    (2) 각 디스플레이 가능한 화소값이 상기 승산 수단에 의해 승산되기 이전에 칼라 룩업 테이블을 이용해 RGB 성분으로 변환되는 칼라 비트들을 포함하는 CLUT 모드; 및
    (3) 상기 제1 화상 내의 각 화소가 투과성을 조절하기 위하여 상기 알파 생성 회로에 의해 생성된 알파값 대신에 사용된 다수의 알파 제어 비트들을 포함하는 ACLUT 모드
    중의 한 모드에서 동작할 수 있는
    것을 특징으로 하는 조합 장치.
KR1019980707002A 1996-03-07 1997-03-05 컴퓨터 그래픽 디스플레이 장치에서 화소값 및 알파값의 보간 KR19990087564A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/612,105 US5914725A (en) 1996-03-07 1996-03-07 Interpolation of pixel values and alpha values in a computer graphics display device
US612,105 1996-03-07

Publications (1)

Publication Number Publication Date
KR19990087564A true KR19990087564A (ko) 1999-12-27

Family

ID=24451742

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980707002A KR19990087564A (ko) 1996-03-07 1997-03-05 컴퓨터 그래픽 디스플레이 장치에서 화소값 및 알파값의 보간

Country Status (6)

Country Link
US (1) US5914725A (ko)
EP (1) EP1012789B1 (ko)
KR (1) KR19990087564A (ko)
AU (1) AU2200697A (ko)
DE (1) DE69712799T2 (ko)
WO (1) WO1997033253A1 (ko)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5831604A (en) * 1996-06-03 1998-11-03 Intel Corporation Alpha blending palettized image data
JPH114367A (ja) * 1997-04-16 1999-01-06 Seiko Epson Corp 高速画像選択方法および高速画像選択機能付デジタルカメラ
US6002410A (en) * 1997-08-25 1999-12-14 Chromatic Research, Inc. Reconfigurable texture cache
US6489967B1 (en) * 1998-09-02 2002-12-03 Namco Limited Image formation apparatus and image formation method
US6636222B1 (en) 1999-11-09 2003-10-21 Broadcom Corporation Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
US6768774B1 (en) 1998-11-09 2004-07-27 Broadcom Corporation Video and graphics system with video scaling
US6661422B1 (en) 1998-11-09 2003-12-09 Broadcom Corporation Video and graphics system with MPEG specific data transfer commands
US6608630B1 (en) 1998-11-09 2003-08-19 Broadcom Corporation Graphics display system with line buffer control scheme
US6573905B1 (en) 1999-11-09 2003-06-03 Broadcom Corporation Video and graphics system with parallel processing of graphics windows
US7982740B2 (en) 1998-11-09 2011-07-19 Broadcom Corporation Low resolution graphics mode support using window descriptors
US6738526B1 (en) * 1999-07-30 2004-05-18 Microsoft Corporation Method and apparatus for filtering and caching data representing images
DE19951341B4 (de) * 1999-10-25 2012-02-16 Robert Bosch Gmbh Verfahren zur bewegungskompensierenden Prädiktion von Bewegtbildern sowie Einrichtung hierzu
US6717577B1 (en) 1999-10-28 2004-04-06 Nintendo Co., Ltd. Vertex cache for 3D computer graphics
US6618048B1 (en) 1999-10-28 2003-09-09 Nintendo Co., Ltd. 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components
US9668011B2 (en) 2001-02-05 2017-05-30 Avago Technologies General Ip (Singapore) Pte. Ltd. Single chip set-top box system
US6466226B1 (en) * 2000-01-10 2002-10-15 Intel Corporation Method and apparatus for pixel filtering using shared filter resource between overlay and texture mapping engines
US7119813B1 (en) * 2000-06-02 2006-10-10 Nintendo Co., Ltd. Variable bit field encoding
US6700586B1 (en) 2000-08-23 2004-03-02 Nintendo Co., Ltd. Low cost graphics with stitching processing hardware support for skeletal animation
US6707458B1 (en) 2000-08-23 2004-03-16 Nintendo Co., Ltd. Method and apparatus for texture tiling in a graphics system
US7538772B1 (en) 2000-08-23 2009-05-26 Nintendo Co., Ltd. Graphics processing system with enhanced memory controller
US6811489B1 (en) 2000-08-23 2004-11-02 Nintendo Co., Ltd. Controller interface for a graphics system
US6636214B1 (en) 2000-08-23 2003-10-21 Nintendo Co., Ltd. Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode
US7196710B1 (en) 2000-08-23 2007-03-27 Nintendo Co., Ltd. Method and apparatus for buffering graphics data in a graphics system
US7576748B2 (en) 2000-11-28 2009-08-18 Nintendo Co. Ltd. Graphics system with embedded frame butter having reconfigurable pixel formats
US6654025B1 (en) * 2000-08-28 2003-11-25 Ucentric Holdings, Inc. System and method providing translucent region over a video program for display by a video display device
US20030070132A1 (en) * 2001-08-16 2003-04-10 Christopher Pasqualino Flexible video encoding scheme supporting audio and auxiliary information
JP3529759B2 (ja) * 2001-01-26 2004-05-24 株式会社ソニー・コンピュータエンタテインメント 画像処理プログラム、画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体、プログラム実行装置、画像処理装置、及び画像処理方法
US7092035B1 (en) * 2001-07-09 2006-08-15 Lsi Logic Corporation Block move engine with scaling and/or filtering for video or graphics
US6876369B2 (en) * 2002-01-22 2005-04-05 International Business Machines Corp. Applying translucent filters according to visual disability needs in a network environment
US6771274B2 (en) * 2002-03-27 2004-08-03 Sony Corporation Graphics and video integration with alpha and video blending
US6801642B2 (en) * 2002-06-26 2004-10-05 Motorola, Inc. Method and apparatus for limiting storage or transmission of visual information
US6954215B2 (en) * 2002-06-28 2005-10-11 Microsoft Corporation System and method for employing non-alpha channel image data in an alpha-channel-aware environment
CA2515417C (en) * 2003-02-11 2009-04-28 Research In Motion Limited Display processing system and method
US20070109314A1 (en) * 2003-05-23 2007-05-17 Via Technologies, Inc. Adaptive pixel-based blending method and system
DE10325003A1 (de) * 2003-06-03 2004-12-30 Siemens Ag Visualisierung von 2D/ 3D-fusionierten Bilddaten für die Katheterangiografie
US7596284B2 (en) * 2003-07-16 2009-09-29 Hewlett-Packard Development Company, L.P. High resolution image reconstruction
JP2005107780A (ja) * 2003-09-30 2005-04-21 Sony Corp 画像混合方法および混合画像データ生成装置
US8063916B2 (en) 2003-10-22 2011-11-22 Broadcom Corporation Graphics layer reduction for video composition
TWI246326B (en) * 2004-08-16 2005-12-21 Realtek Semiconductor Corp Image processing circuit of digital TV
KR100476828B1 (ko) * 2004-09-24 2005-03-18 엠텍비젼 주식회사 복수의 영상 이미지를 이용한 합성 이미지 생성 방법 및장치
US7409102B2 (en) * 2005-03-23 2008-08-05 Microsoft Corporation Methods and systems for reducing ringing in composited user interface elements
FR2900527B1 (fr) * 2006-04-26 2008-09-26 Thales Sa Procede de codage d'une image numerique couleur comportant une information de ponderation
FR2901946B1 (fr) * 2006-06-06 2008-11-21 Thales Sa Procede de codage d'une image numerique couleur comportant une information de marquage
US9891435B2 (en) 2006-11-02 2018-02-13 Sensics, Inc. Apparatus, systems and methods for providing motion tracking using a personal viewing device
US10908421B2 (en) 2006-11-02 2021-02-02 Razer (Asia-Pacific) Pte. Ltd. Systems and methods for personal viewing devices
US8072465B2 (en) * 2008-05-21 2011-12-06 Mediatek Inc. Image processing method and system
US8213512B2 (en) * 2008-05-28 2012-07-03 Cyberlink Corp. Determining an intermediate image
US20090310947A1 (en) * 2008-06-17 2009-12-17 Scaleo Chip Apparatus and Method for Processing and Blending Multiple Heterogeneous Video Sources for Video Output
US20100253850A1 (en) * 2009-04-03 2010-10-07 Ej4, Llc Video presentation system
WO2011159757A2 (en) * 2010-06-15 2011-12-22 Sensics Inc. Systems and methods for personal viewing devices
US8717391B2 (en) * 2010-11-19 2014-05-06 Apple Inc. User interface pipe scalers with active regions
KR102246105B1 (ko) * 2014-09-25 2021-04-29 삼성전자주식회사 디스플레이 장치, 이의 제어 방법 및 이의 데이터 전송 방법
KR20230077016A (ko) * 2021-11-24 2023-06-01 삼성디스플레이 주식회사 표시 장치 및 표시 장치의 데이터 보상 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4694490A (en) * 1981-11-03 1987-09-15 Harvey John C Signal processing apparatus and methods
US4965825A (en) * 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4484188A (en) * 1982-04-23 1984-11-20 Texas Instruments Incorporated Graphics video resolution improvement apparatus
GB2199461B (en) * 1986-12-24 1991-03-13 Philips Electronic Associated Image display apparatus
US5109348A (en) * 1987-09-14 1992-04-28 Visual Information Technologies, Inc. High speed image processing computer
GB8811568D0 (en) * 1988-05-16 1988-06-22 Crosfield Electronics Ltd Producing half-tone images
GB8814288D0 (en) * 1988-06-16 1988-07-20 Crosfield Electronics Ltd Method & apparatus for generating composite images
US5025394A (en) * 1988-09-09 1991-06-18 New York Institute Of Technology Method and apparatus for generating animated images
US5097257A (en) * 1989-12-26 1992-03-17 Apple Computer, Inc. Apparatus for providing output filtering from a frame buffer storing both video and graphics signals
GB9012423D0 (en) * 1990-06-04 1990-07-25 Abekas Video Systems Video image transformation
JPH0445671A (ja) * 1990-06-12 1992-02-14 Sony Corp テレビジョン信号の輪郭強調回路
KR930009181B1 (ko) * 1990-12-22 1993-09-23 삼성전자 주식회사 영상신호의 2차원 경사상관 보간방법 및 회로
US5299028A (en) * 1991-10-29 1994-03-29 Eastman Kodak Company Method and apparatus for image data resolution conversion
US5406306A (en) * 1993-02-05 1995-04-11 Brooktree Corporation System for, and method of displaying information from a graphics memory and a video memory on a display monitor
US5446804A (en) * 1994-04-14 1995-08-29 Hewlett-Packard Company Magnifying digital image using edge mapping

Also Published As

Publication number Publication date
DE69712799T2 (de) 2002-11-21
EP1012789A4 (en) 2000-06-28
EP1012789A1 (en) 2000-06-28
AU2200697A (en) 1997-09-22
US5914725A (en) 1999-06-22
EP1012789B1 (en) 2002-05-22
WO1997033253A1 (en) 1997-09-12
DE69712799D1 (de) 2002-06-27

Similar Documents

Publication Publication Date Title
KR19990087564A (ko) 컴퓨터 그래픽 디스플레이 장치에서 화소값 및 알파값의 보간
JP3818662B2 (ja) 単一のフレームバッファを有する画像処理システム
US6023302A (en) Blending of video images in a home communications terminal
CA2114969C (en) System for, and method of, displaying information from a graphics memory and a video memory on a display monitor
US5227863A (en) Programmable digital video processing system
US5097257A (en) Apparatus for providing output filtering from a frame buffer storing both video and graphics signals
US5481275A (en) Resolution enhancement for video display using multi-line interpolation
US5966116A (en) Method and logic system for the rotation of raster-scan display images
US5742349A (en) Memory efficient video graphics subsystem with vertical filtering and scan rate conversion
JPH05225328A (ja) 多重ソース画像のリアルタイムミキシングおよびアンチエリアシングのための装置および方法
US6330002B1 (en) Image color blending processor
JPH0216881A (ja) スーパーインポーズ装置
US5900862A (en) Color generation and mixing device
US4707729A (en) System for the line-wise compression of binary data of a picture field in a compression device, decompression device for use in such a system, and display device including such a decompression device
JPH04204496A (ja) 表示制御方法
US6356310B1 (en) Signal converting apparatus and method for converting a first digital picture into a second digital picture having a greater number of pixels than the first digital picture
US6552750B1 (en) Apparatus for improving the presentation of graphics data on a television display
JPH02156294A (ja) テレテキスト復号器
US5488390A (en) Apparatus, systems and methods for displaying a cursor on a display screen
US6927781B1 (en) Method and apparatus for averaging sub-samples
JP2510019B2 (ja) 画像表示方法および装置
KR100884849B1 (ko) 데이터 세트를 처리하기 위한 집적 회로 및 그 방법
JPS6224298A (ja) 画素丸め処理方法および回路
AU667893B2 (en) A colour generation and mixing device
KR20000034360A (ko) 피디피 텔레비젼에서의 오에스디 생성 장치 및 그 생성 방법

Legal Events

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