KR20060089926A - 알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지처리 방법 - Google Patents

알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지처리 방법 Download PDF

Info

Publication number
KR20060089926A
KR20060089926A KR1020050010041A KR20050010041A KR20060089926A KR 20060089926 A KR20060089926 A KR 20060089926A KR 1020050010041 A KR1020050010041 A KR 1020050010041A KR 20050010041 A KR20050010041 A KR 20050010041A KR 20060089926 A KR20060089926 A KR 20060089926A
Authority
KR
South Korea
Prior art keywords
value
alpha
image
bits
result data
Prior art date
Application number
KR1020050010041A
Other languages
English (en)
Inventor
김영완
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020050010041A priority Critical patent/KR20060089926A/ko
Publication of KR20060089926A publication Critical patent/KR20060089926A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B09DISPOSAL OF SOLID WASTE; RECLAMATION OF CONTAMINATED SOIL
    • B09BDISPOSAL OF SOLID WASTE NOT OTHERWISE PROVIDED FOR
    • B09B3/00Destroying solid waste or transforming solid waste into something useful or harmless
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B09DISPOSAL OF SOLID WASTE; RECLAMATION OF CONTAMINATED SOIL
    • B09BDISPOSAL OF SOLID WASTE NOT OTHERWISE PROVIDED FOR
    • B09B2101/00Type of solid waste
    • B09B2101/02Gases or liquids enclosed in discarded articles, e.g. aerosol cans or cooling systems of refrigerators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C18/00Disintegrating by knives or other cutting or tearing members which chop material into fragments
    • B02C18/0084Disintegrating by knives or other cutting or tearing members which chop material into fragments specially adapted for disintegrating garbage, waste or sewage
    • B02C18/0092Disintegrating by knives or other cutting or tearing members which chop material into fragments specially adapted for disintegrating garbage, waste or sewage for waste water or for garbage
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C18/00Disintegrating by knives or other cutting or tearing members which chop material into fragments
    • B02C18/06Disintegrating by knives or other cutting or tearing members which chop material into fragments with rotating knives
    • B02C18/08Disintegrating by knives or other cutting or tearing members which chop material into fragments with rotating knives within vertical containers
    • B02C18/12Disintegrating by knives or other cutting or tearing members which chop material into fragments with rotating knives within vertical containers with drive arranged below container
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B02CRUSHING, PULVERISING, OR DISINTEGRATING; PREPARATORY TREATMENT OF GRAIN FOR MILLING
    • B02CCRUSHING, PULVERISING, OR DISINTEGRATING IN GENERAL; MILLING GRAIN
    • B02C2/00Crushing or disintegrating by gyratory or cone crushers
    • B02C2/02Crushing or disintegrating by gyratory or cone crushers eccentrically moved
    • B02C2/04Crushing or disintegrating by gyratory or cone crushers eccentrically moved with vertical axis
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B07SEPARATING SOLIDS FROM SOLIDS; SORTING
    • B07BSEPARATING SOLIDS FROM SOLIDS BY SIEVING, SCREENING, SIFTING OR BY USING GAS CURRENTS; SEPARATING BY OTHER DRY METHODS APPLICABLE TO BULK MATERIAL, e.g. LOOSE ARTICLES FIT TO BE HANDLED LIKE BULK MATERIAL
    • B07B1/00Sieving, screening, sifting, or sorting solid materials using networks, gratings, grids, or the like

Landscapes

  • Engineering & Computer Science (AREA)
  • Food Science & Technology (AREA)
  • Environmental & Geological Engineering (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Dispersion Chemistry (AREA)
  • Thermal Sciences (AREA)
  • Image Processing (AREA)

Abstract

오차없이 빠른 패스 딜레이를 갖는 알파 블렌딩 회로와 알파 블렌딩 방식을 이용한 이미지 처리 방법이 제공된다. 상기 알파 블렌딩 회로는 알파값, 제1 이미지값 및 제2 이미지값을 입력받아 상기 알파값에 1을 더하여 상기 제1 이미지 값과 상기 제2 이미지값을 상기 알파값에 1을 더한 값의 비율에 따라 혼합된 제3 이미지값을 생성한다. 상기 알파 블렌딩 회로는 제 1 승산기, 제 1 감산기, 제 2 승산기 및 제 1 가산기를 포함하여 구성된다. 따라서, 상기 소정의 알파값에 1을 더하여 적용한 알파 블렌딩 회로는 오차가 발생하지 않는 최종의 혼합이미지를 생성할 수 있으며, 종래 알파 블렌딩 회로의 구성에 포함됐던 먹스를 제거함으로써 개선된 패스 딜레이를 제공한다.

Description

알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지 처리 방법 {ALPHA BLENDING CIRCUIT AND METHOD OF PROCESSING IMAGE USING THE ALPHA BLENDING CIRCUIT}
도 1은 종래의 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 2는 본 발명의 제 1 실시예에 따른 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 3은 도 2에서 도시된 알파 블렌딩 회로에서 수행되는 연산의 일례를 나타낸 회로도이다.
도 4는 본 발명의 제 2 실시예에 따른 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 5는 본 발명의 제 3 실시예에 따른 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 6은 본 발명의 일 실시예에 따른 알파 블렌딩 회로의 동작을 나타낸 순서도이다.
<도면의 주요부분에 대한 부호의 설명>
110,210,310,410 : 감산기
122,124,222,224322,324,422,424 : 승산기
130,230,330,430 : 가산기
140,150 : 먹스
본 발명은 알파 블렌딩(alpha blending) 회로에 관한 것으로, 더욱 상세하게는 오차 없이 빠른 패스 딜레이(path delay)를 가지는 알파 블렌딩(alpha blending) 회로에 관한 것이다.
알파 블렌딩 회로는 이미지를 처리하는 회로에서 필수적으로 사용되는 회로 중 하나이다. 알파 블렌딩은 두 이미지를 혼합하기 위하여 사용하는 일반적인 방법으로 이미지 A와 B를 혼합하여 이미지 C를 만드는 경우 다음과 같은 수학식으로 표현된다.
C = A × alpha + B × (1 - alpha)
디지털 회로에서는 트루 컬러 이미지(true color image)에 대해 이러한 수학식을 구현하는데 있어 일반적으로 8비트의 알파값(alpha value)을 사용하며, 값의 범위는 0부터 255까지가 된다. 알파값이 0인 경우는 완전 투명한 효과를 주며, 알 파값이 255인 경우는 불투명을 나타낸다.
따라서 [수학식 1]은 다음 [수학식 2]와 같은 형태로 디지털 로직에 의해 구현하게 된다.
C = (A × alpha + B × (255 - alpha)) >> 8
이와 같이 구현된 로직은 알파값이 1에서 254중의 소정의 알파값에 의해 혼합된 이미지 C를 생성할 경우, 그 발생되는 오차가 육안으로 분별하기 어렵고 유의미한 문제가 되지 않는다.
그러나, 알파값이 0일때 혼합된 이미지 C는 B를 원래 그대로 표현해야 하나 (B-1)값으로 표현되고(B가 255인 경우 254로 표현됨), 알파값이 255인 경우에는 A를 원래 그대로 표현해야 하나 (A-1)값으로 표현되는 오차가 발생한다. 따라서, 이러한 오차를 없애기 위해 아래의 조건식이 추가된다.
if (alpha == 0) C = B; else if (alpha == 255) C = A; else C = A × alpha + B × (255 - alpha)) >> 8
그러나, 상기와 같이 구현된 회로는 도 1과 같이 알파값에 따라 먹스(MUX; 140, 150)로직을 거쳐야 하므로 패스 딜레이(path delay)가 그만큼 길어지게 되는 단점이 발생한다.
도 1은 종래의 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 1을 참조하면, 종래의 알파 블렌딩 회로는 8비트로 구성된 이미지 A의 값과 소정의 알파값(0내지 255중의 값)이 제 1 승산기(multiplier; 122)에 의해 곱해 져 16비트로 구성된 제 1 결과데이터를 생성한다.
동시에, 감산기(110)를 통하여 값 255에서 상기 알파값(0내지 255중의 값)이 감산되어 감산결과 데이터를 생성한 후, 8비트로 구성된 이미지 B의 값과 상기 감산 결과데이터가 제 2 승산기(multiplier; 124)에 의해 곱해져 16비트로 구성된 제 2 결과데이터를 생성한다.
상기 제 1 승산기(122) 및 제 2 승산기(124)를 통해 생성된 16비트로 구성된 제 1 및 제 2 결과데이터가 가산기(130)를 통해 다시 16비트의 혼합된 이미지 값을 생성한다.
상기 가산기(130)를 통해 생성된 16비트의 결과데이터는 0번째에서 7번째 비트는 버리고, 8번째에서 15번째 비트에 해당하는 데이터만을 추출하여 제 1 먹스(MUX; 140) 및 제 2 먹스(MUX; 150)를 거쳐 최종의 혼합된 이미지 C를 생성한다.
여기서, 상기 제 1 먹스(MUX; 140)에서 알파값이 0인 경우에, 상기 조건식의 로직을 가진 비교기(comparator; 미도시)에 의해서 최종 이미지 C는 B의 이미지와 동일하게 생성된다.
또한, 상기 제 2 먹스(MUX; 150)에서 알파값이 255인 경우에, 상기 조건식의 로직을 가진 비교기(comparator; 미도시)에 의해서 최종 이미지 C는 A의 이미지와 동일하게 생성된다.
도 1에서, 상기 먹스(MUX)들을 제거하기 위해 [수학식 2]를 모든 알파값에 대해 적용하게 되면, 예를 들어 A=255, B=(0에서 255중의 소정의 값), 알파=255인 경우, 최종 이미지 C는 A의 이미지와 같은 255가 계산되어야 하나, 254로 계산되어 원래의 A이미지를 그대로 생성하지 못하는 오차가 발생한다.
마찬가지로, A=(0에서 255중의 소정의 값), B= 255, 알파=0인 경우, 최종 이미지 C는 B의 이미지와 같은 255가 계산되어야 하나, 254로 계산되어 원래의 B이미지를 그대로 생성하지 못하는 오차가 발생한다.
본 발명은 상술한 종래의 문제점을 해결하고자 고안된 발명으로서, 본 발명의 제1 목적은 오차없이 빠른 패스 딜레이를 구현하는 알파 블렌딩 회로를 제공하는 것이다.
또한, 본 발명의 제2 목적은 오차없이 빠른 패스 딜레이를 구현하는 알파 블렌딩 방식을 이용한 이미지 처리 방법을 제공하는 것이다.
상기 제1 목적을 달성하기 위하여 본 발명의 알파 블렌딩 회로는 알파값, 제1 이미지값 및 제2 이미지값을 입력받아 상기 알파값에 1을 더하여 상기 제1 이미지 값과 상기 제2 이미지값을 상기 알파값에 1을 더한 값의 비율에 따라 혼합된 제3 이미지값을 생성한다.
본 발명의 일실시예에 따르면, 상기 알파값은 6비트, 8비트 또는 10비트로 구성된 것을 특징으로 한다.
본 발명의 일실시예에 따르면, 본 발명의 알파 블렌딩 회로는 제 1 승산기, 제 1 감산기, 제 2 승산기 및 제 1 가산기를 포함한다.
상기 제 1 승산기는 상기 제 1 이미지 값과 상기 알파값에 1을 더한 결과값 을 승산하여 제 1 승산 결과 데이터를 생성한다.
상기 제 1 감산기는 상기 소정의 알파값에 1을 더한 결과값을 2N 값-상기 N은 상기 알파값을 구성하는 소정의 비트수를 나타내며 자연수임-에서 감산하여 제 1 감산 결과 데이터를 생성한다.
상기 제 2 승산기는 상기 제 1 감산 결과 데이터 및 상기 제 2 이미지 값을 승산하여 제 2 승산 결과 데이터를 생성한다.
상기 제 1 가산기는 상기 제 1 승산 결과 데이터 및 상기 제 2 승산 결과 데이터를 가산하여 제 1 가산 결과 데이터를 생성한다.
상기 제 1 가산 결과 데이터 중 하위 N비트를 버리고 남은 상위 비트들을 취하여 혼합된 이미지를 생성한다.
본 발명의 일실시예에 따르면, 상기 제 3의 혼합된 이미지는 상기 제 1 가산 결과 데이터에 대하여 상기 하위 N비트를 버리고 남은 상위 비트들을 취하여 생성하는 것을 특징으로 한다.
상기 제2 목적을 달성하기 위하여 본 발명의 알파 블렌딩 방식을 이용한 이미지 처리 방법은 소정의 알파값에 1을 더하여 입력하는 단계; 제 1 이미지 값과 상기 (소정의 알파값 +1)의 값을 승산하여 제 1 승산 결과 데이터를 생성하는 단계; 상기 (소정의 알파값 + 1)의 값을 2N 값에서 감산하여 제 1 감산 결과 데이터를 생성하는 단계; 상기 제 1 감산 결과 데이터 및 제 2 이미지 값을 승산하여 제 2 승산 결과 데이터를 생성하는 단계; 상기 제 1 승산 결과 데이터 및 상기 제 2 승 산 결과 데이터를 가산하여 제 1 가산 결과 데이터를 생성하는 단계; 및 상기 제 1 가산 결과 데이터 중 하위 N비트를 버리고 남은 상위 비트들을 취하여 상기 제 1 및 제 2 이미지가 혼합된 제 3 이미지 값을 생성하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 일실시예에 따르면, 상기 제 3의 혼합된 이미지는 상기 제 1 가산 결과 데이터에 대하여 상기 하위 N비트를 버리고 남은 상위 비트들을 취하여 생성하는 것을 특징으로 한다.
본 발명의 일실시예에 따르면, 상기 N은 상기 알파값을 구성하는 소정의 비트수를 나타내는 자연수인 것을 특징으로 한다.
본 발명의 일실시예에 따르면, 상기 알파값은 6비트, 8비트 또는 10비트로 구성된 것을 특징으로 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예들을 설명한다.
도 2는 본 발명의 제 1 실시예에 따른 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 2를 참조하면, 이미지 A의 값과 함께 승산되는 알파값에 1을 더하여 입력하는 점, 종래의 255값에서 알파값을 감산하는 것이 아니라 256값에서 (alpha + 1)의 값을 감산하여 입력하는 점, 8 ×8 승산기(multiplier) 대신 8 ×9 승산기(multiplier)를 사용한다는 점, 종래의 알파 블렌딩 회로에서 뒷단에 위치했던 먹스들을 제거했다는 점 및 알파값이 0인 경우와 255인 경우의 비교를 통해 최종 이 미지 C를 선택하기 위한 비교기(comparator; 미도시)가 제거되었다는 점 등이 도 1에서 도시한 알파 블렌딩 회로와 다른점들이다.
상기한 바와 같이, 알파값에 미리 1을 더하여 사용함으로써 알파 블렌딩 회로 뒷단의 먹스 로직을 제거할 수 있다. 여기서, 알파값에 미리 1을 더하는 방법은 사용자에 의해 미리 세팅하거나, 메모리로부터 읽혀진 알파값에 미리 1을 더하여 구현할 수 있다.
즉, 알파값이 사용자에 의하여 레지스터에 세팅된 경우에는 패스 딜레이(path delay)에 전혀 영향을 주지 않으며 간단한 인크리먼트(increment) 회로에 의해 (alpha + 1)값이 생성 될 수 있다.
또한 메모리로부터 로드될 경우에도 로드됨과 동시에 간단한 인크리먼트(increment) 회로를 통해 (alpha + 1)을 미리 생성 할 수 있다.
상기와 같은 본 발명의 실시 예에 따른 알파 블렌딩 회로는 (alpha + 1)의 값을 사용하므로 상기 [수학식 2]에서 (255 - alpha)부분이 (256-(alpha +1))로 수정된다.
전체 수학식은 다음의 수학식 3과 같다.
C = (A × (alpha+1) + B × (256 -( alpha + 1)) ) >> 8
위 수학식은 알파값이 0이나 255인 경우에도 정확하게 이미지 A나 B값을 출력으로 생성할 수 있으며, 2-입력 먹스(MUX) 두개(도 1의 140, 150)를 줄인만큼 패스 딜레이(path delay)가 빨라지게 된다.
도 2의 알파 블렌딩 회로는 8비트로 구성된 이미지 A의 값과 (소정의 알파값 + 1) 값이 제 1 승산기(multiplier; 222)에 의해 곱해져 16비트로 구성된 제 1 결과 데이터를 생성한다.
동시에, 감산기(210)를 통하여 값 256 에서 상기 (소정의 알파값 + 1)값이 감산되어 감산결과데이터를 생성한 후, 8비트로 구성된 이미지 B의 값과 상기 감산결과데이터가 제 2 승산기(multiplier; 224)에 의해 곱해져 16비트로 구성된 제 2 결과 데이터를 생성한다.
상기 제 1 승산기(222) 및 제 2 승산기(224)를 통해 16비트로 구성된 제 1 및 제 2 결과 데이터가 가산기(230)에 의해 합해져 다시 16비트의 혼합된 이미지 값을 생성한다.
상기 가산기(230)를 통해 생성된 16비트의 결과 데이터 중 0번째에서 7번째 비트는 버리고, 8번째에서 15번째 비트에 해당하는 데이터만을 추출하여 최종의 혼합된 이미지 C를 생성한다.
도 3은 도 2에서 도시된 알파 블렌딩 회로에서 수행되는 연산의 일례를 나타낸 회로도이다.
도 3을 참조하면, 이미지 A, B 및 알파값이 각각 255의 값을 가질때, 상기 [수학식 3]에 기초하여 알파 블렌딩 회로에서 연산되는 과정을 나타내고 있다.
이미지 A의 값인 '11111111'과 (알파값+1)의 값인 '100000000'이 제 1 승산기(222)에 의해 곱해져 제 1 결과 데이터('1111111100000000')를 생성한다.
동시에, 감산기(210)를 통하여 값 256(or '100000000')에서 상기 (알파값+1) 의 값인 '100000000'이 감산되어 감산 결과 데이터('000000000')를 생성한후, 8비트로 구성된 이미지 B의 값('11111111')과 상기 감산결과 데이터('000000000')값이 제 2 승산기(224)에 의해 곱해져 16비트로 구성된 제 2 결과 데이터('0000000000000000')가 생성된다.
상기 제 1 결과 데이터('1111111100000000')와 상기 제 2 결과 데이터('0000000000000000')가 가산기(230)에 의해 가산되어 가산 결과 데이터 '1111111100000000'을 생성한다.
가산기(230)에 의해 총 16비트로 생성된 가산 결과 데이터 중 하위 8비트를 버리고 남은 상위 8비트를 취해 총 8비트로 구성된 혼합된 최종 이미지 C('11111111')를 출력한다.
따라서, 도 1에서 도시한 종래의 알파 블렌딩 회로에서 알파값이 255를 가질 경우, A이미지가 원래 그대로 출력되어야 하나 254의 값으로 출력되던 오차가 발생하였으나, 본 발명의 실시예에 따른 도 3의 알파 블렌딩 회로는 알파값이 255일때, A이미지가 원래 그대로 255의 값으로 오차없이 출력되는 것을 알 수 있다.
도 4는 본 발명의 제 2 실시예에 따른 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 4를 참조하면, 도 2에서와 같이 8비트로 구성된 알파값과 이미지를 이용한 것이 아니라 6비트로 구성된 알파값과 이미지를 이용하여 알파 블렌딩 회로를 구현한 실시예이다.
따라서, 상기의 수학식 3은 알파값과 이미지가 도 2의 8비트가 아닌 6비트로 구성됨에 따라 다음의 수학식 4로 표현된다.
C = (A × (alpha+1) + B × (64 -( alpha + 1)) ) >> 6
도 4의 알파 블렌딩 회로는 6비트로 구성된 이미지 A의 값과 소정의 알파값 (0내지 63중의 값)에 1을 추가하여 7비트로 구성된 값이 제 1 승산기(multiplier; 322)에 의해 곱해져 12비트로 구성된 제 1 결과 데이터를 생성한다.
동시에, 감산기(310)를 통하여 값 64 에서 상기 7비트로 구성된 (소정의 알파값 + 1)값이 감산되어 감산 결과 데이터를 생성한후, 6비트로 구성된 이미지 B의 값과 상기 감산 결과데이터가 제 2 승산기(multiplier; 324)에 의해 곱해져 12비트로 구성된 제 2 결과 데이터를 생성한다.
상기 제 1 승산기(322) 및 제 2 승산기(324)를 통해 12비트로 구성된 제 1 및 제 2 결과 데이터가 가산기(330)를 통해 다시 12비트의 혼합된 이미지 값을 생성한다.
상기 가산기(330)를 통해 생성된 12비트의 결과 데이터 중 0번째에서 5번째 비트는 버리고, 6번째에서 11번째 비트에 해당하는 데이터만을 추출하여 6비트로 구성된 최종의 혼합된 이미지 C를 생성한다.
도 5는 본 발명의 제 3 실시예에 따른 알파 블렌딩 회로의 구조를 개략적으로 나타낸 회로도이다.
도 5를 참조하면, 도 4에서와 같이 10비트로 구성된 알파값과 이미지 A, B 및 C가 8비트가 아닌 10비트로 구성된 경우의 알파 블렌딩 회로를 구현한 실시예이 다.
따라서, 도 5는 상기의 수학식 4를 통해 혼합된 이미지 C를 생성할 수 있다.
도 5의 알파 블렌딩 회로는 10비트로 구성된 이미지 A의 값과 소정의 알파값(0내지 1023중의 값)에 1을 추가하여 11비트로 구성된 값이 제 2 승산기(multiplier; 422)에 의해 곱해져 20비트로 구성된 제 1 결과 데이터를 생성한다.
동시에, 감산기(410)를 통하여 값 1024 에서 상기 11비트로 구성된 (소정의 알파값 + 1)값이 감산되어 감산결과 데이터를 생성한후, 10비트로 구성된 이미지 B의 값과 상기 감산 결과데이터가 제 2 승산기(multiplier; 424)에 의해 곱해져 20비트로 구성된 제 2 결과 데이터를 생성한다.
상기 제 1 승산기 및 제 2 승산기를 통해 20비트로 구성된 제 1 및 제 2 결과 데이터가 가산기(430)를 통해 다시 20비트의 혼합된 이미지 값을 생성한다.
상기 가산기(430)를 통해 생성된 20비트의 결과 데이터 중 0번째에서 9번째 비트는 버리고, 10번째에서 19번째 비트에 해당하는 데이터만을 추출하여 10비트로 구성된 최종의 혼합된 이미지 C를 생성한다.
도 6은 본 발명의 실시예에 따른 알파 블렌딩 회로의 동작을 나타낸 순서도이다.
본 발명의 실시예에 따른 알파 블렌딩 회로는 도 2 내지 5를 통해 다음과 같은 수학식으로 정리할 수 있다.
C = (A × (alpha+1) + B × (2N -( alpha + 1)) ) >> N
여기서, A는 소스 이미지를 나타내고, B는 타겟 이미지를 그리고 C는 소정의 알파값에 따라 상기 소스 이미지 A와 상기 타겟 이미지 B가 알파 블렌딩 회로를 통하여 혼합된 최종 이미지를 나타낸다.
또한, N은 N비트로 구성된 알파값을 나타낸다. 예를 들어 알파값이 6비트로 구성된 경우에 2N는 64가 되고, 알파값이 8비트로 구성된 경우에 2N는 256이 되고, 알파값이 10비트로 구성된 경우에 2N는 1024가 된다. 따라서, N이 6일 경우 상기 수학식 5의 alpha값은 0에서 63값 중의 하나가 되고, N이 8일 경우 상기 수학식 5의 alpha값은 0에서 255값 중의 하나가 되고, N이 10일 경우 상기 수학식 5의 alpha값은 0에서 1023값 중의 하나가 될 수 있다.
상기 [수학식 5]의 마지막 부분의 ">> N"은 하위 N비트를 버리고 남은 상위 비트들을 취하는 것을 의미한다. 따라서, 알파값을 구성하는 N비트만큼 하위 비트를 버리고 남은 상위 비트들을 추출하여 최종의 혼합된 이미지 C를 얻게 된다.
따라서, 본 발명에 따른 알파 블렌딩 회로의 동작은 하기와 같은 단계로 수행된다.
소정의 알파값에 1만큼 가산연산이 수행된다.(S501)
예를 들어, 알파값에 1을 더하는 방법은 사용자에 의해 미리 세팅하거나, 메모리로부터 읽혀진 알파값에 미리 1을 더하여 생성할 수 있다.
즉, 알파값이 사용자에 의하여 레지스터에 세팅된 경우에는 간단한 인크리먼 트(increment) 회로에 의해 (alpha + 1)값이 생성 될 수 있다. 또한 메모리로부터 로드될 경우에도 로드됨과 동시에 간단한 인크리먼트(increment) 회로를 통해 (alpha + 1)을 미리 생성 할 수 있다.
이미지 A값과 상기 (알파값 +1)값이 제 1 승산기(multiplier)에 의해 곱해져 승산연산이 수행되고, 동시에, 상기 (알파값 + 1)의 값이 2N 값에서 감산 연산되어 이미지 B값과 함께 제 2 승산기(multiplier)에 의해 곱해져 승산연산이 수행된다. (S503)
상기 제 1 승산기 및 제 2 승산기를 통해 연산된 결과값이 제 1 가산기(adder)에 의해 가산연산이 수행된다. (S505)
상기 제 1 가산기에 의해 연산된 결과값에 대해 하위 N비트를 버리고 남은 상위 비트들을 취해 혼합된 이미지 C를 생성한다. (S507)
본 발명은 종래의 알파 블렌딩 회로에서 먹스 2단을 줄이는 방법을 제시하여 오차가 발생하지 않고 패스 딜레이(path delay)가 개선된 알파 블렌딩 회로를 제공한다.
실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (8)

  1. 알파 블렌딩 회로에 있어서,
    알파값, 제1 이미지값 및 제2 이미지값을 입력받아 상기 알파값에 1을 더하여 상기 제1 이미지 값과 상기 제2 이미지값을 상기 알파값에 1을 더한 값의 비율에 따라 혼합된 제3 이미지값을 생성하는 것을 특징으로 하는 알파 블렌딩 회로.
  2. 제 1항에 있어서, 상기 알파값은 6비트, 8비트 또는 10비트로 구성된 것을 특징으로 하는 알파 블렌딩 회로.
  3. 제 1항에 있어서,
    상기 제 1 이미지 값과 상기 알파값에 1을 더한 결과값을 승산하여 제 1 승산 결과 데이터를 생성하기 위한 제 1 승산기;
    상기 소정의 알파값에 1을 더한 결과값을 2N 값-상기 N은 상기 알파값을 구성하는 소정의 비트수를 나타내며 자연수임-에서 감산하여 제 1 감산 결과 데이터를 생성하기 위한 제 1 감산기;
    상기 제 1 감산 결과 데이터 및 상기 제 2 이미지 값을 승산하여 제 2 승산 결과 데이터를 생성하기 위한 제 2 승산기;
    상기 제 1 승산 결과 데이터 및 상기 제 2 승산 결과 데이터를 가산하여 제 1 가산 결과 데이터를 생성하기 위한 제 1 가산기; 및
    상기 제 1 가산 결과 데이터 중 하위 N비트를 버리고 남은 상위 비트들을 취하여 혼합된 이미지를 생성하는 것을 특징으로 하는 알파 블렌딩 회로.
  4. 제 1항에 있어서, 상기 제 3의 혼합된 이미지는
    상기 제 1 가산 결과 데이터에 대하여 상기 하위 N비트를 버리고 남은 상위 비트들을 취하여 생성하는 것을 특징으로 하는 알파 블렌딩 회로.
  5. 소정의 알파값에 1을 더하여 입력하는 단계;
    제 1 이미지 값과 상기 (소정의 알파값 +1)의 값을 승산하여 제 1 승산 결과 데이터를 생성하는 단계;
    상기 (소정의 알파값 + 1)의 값을 2N 값에서 감산하여 제 1 감산 결과 데이터를 생성하는 단계;
    상기 제 1 감산 결과 데이터 및 제 2 이미지 값을 승산하여 제 2 승산 결과 데이터를 생성하는 단계;
    상기 제 1 승산 결과 데이터 및 상기 제 2 승산 결과 데이터를 가산하여 제 1 가산 결과 데이터를 생성하는 단계; 및
    상기 제 1 가산 결과 데이터 중 하위 N비트를 버리고 남은 상위 비트들을 취하여 상기 제 1 및 제 2 이미지가 혼합된 제 3 이미지 값을 생성하는 단계를 포함 하는 것을 특징으로 하는 알파 블렌딩 방식을 이용한 이미지 처리 방법.
  6. 제 5항에 있어서, 상기 제 3의 혼합된 이미지는
    상기 제 1 가산 결과 데이터에 대하여 상기 하위 N비트를 버리고 남은 상위 비트들을 취하여 생성하는 것을 특징으로 하는 알파 블렌딩 방식을 이용한 이미지 처리 방법.
  7. 제 5항에 있어서, 상기 N은 상기 알파값을 구성하는 소정의 비트수를 나타내는 자연수인 것을 특징으로 하는 알파 블렌딩 방식을 이용한 이미지 처리 방법.
  8. 제 5항에 있어서, 상기 알파값은 6비트, 8비트 또는 10비트로 구성된 것을 특징으로 하는 알파 블렌딩 방식을 이용한 이미지 처리 방법.
KR1020050010041A 2005-02-03 2005-02-03 알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지처리 방법 KR20060089926A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050010041A KR20060089926A (ko) 2005-02-03 2005-02-03 알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050010041A KR20060089926A (ko) 2005-02-03 2005-02-03 알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지처리 방법

Publications (1)

Publication Number Publication Date
KR20060089926A true KR20060089926A (ko) 2006-08-10

Family

ID=37571354

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050010041A KR20060089926A (ko) 2005-02-03 2005-02-03 알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지처리 방법

Country Status (1)

Country Link
KR (1) KR20060089926A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8289320B2 (en) 2007-10-22 2012-10-16 Samsung Electronics Co., Ltd. 3D graphic rendering apparatus and method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8289320B2 (en) 2007-10-22 2012-10-16 Samsung Electronics Co., Ltd. 3D graphic rendering apparatus and method

Similar Documents

Publication Publication Date Title
KR20060086743A (ko) 전력 분석 공격에 안전한 논리 연산 장치 및 방법
KR850007899A (ko) 비회복형 디바이더
JPH0326946B2 (ko)
Juang et al. Improved area-efficient weighted modulo $2^{n}+ 1$ adder design with simple correction schemes
Molahosseini et al. A multifunctional unit for designing efficient RNS-based datapaths
TWI396130B (zh) 預飽和固定點乘法器
Wong et al. High-speed RLWE-oriented polynomial multiplier utilizing Karatsuba algorithm
US5162925A (en) Color image processor capable of performing masking using a reduced number of bits
Zarandi et al. An Efficient Component for Designing Signed Reverse Converters for a Class of RNS Moduli Sets of Composite Form $\{2^{k}, 2^{P}-1\} $
JPH1117954A (ja) 映像信号処理装置
KR20060089926A (ko) 알파 블렌딩 회로 및 알파 블렌딩 방식을 이용한 이미지처리 방법
US7167514B2 (en) Processing of quinary data
US10447983B2 (en) Reciprocal approximation circuit
Chen Character varieties of even classical pretzel knots
Li et al. Mean circuit design using correlated random bitstreams in stochastic computing
EP3934223A1 (en) Converting digital image data
Subathradevi et al. Modified architecture for distributed arithmetic with optimized delay using parallel processing
KR100335252B1 (ko) 비트 분리 구조의 고속 디지털 필터
JP2915445B2 (ja) 画像処理装置
Swann et al. Parallelization of the Shift and Add Reducer
Efstathiou et al. Handling zero in diminished-one modulo 2
Dasu et al. Implementation of Unbiased Rounding for 64-Bit Floating Point Adder
Tanaka et al. An efficient diminished-1 modulo 2n+ 1 multiplier using signed-digit number representation
Ravi et al. Pipelined C2 MOS register high speed modified Booth multiplier
JPH04149728A (ja) Rom式ディジタル演算回路

Legal Events

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