KR19980079985A - 에러 확산을 이용한 영상 처리 방법 - Google Patents

에러 확산을 이용한 영상 처리 방법 Download PDF

Info

Publication number
KR19980079985A
KR19980079985A KR1019980007470A KR19980007470A KR19980079985A KR 19980079985 A KR19980079985 A KR 19980079985A KR 1019980007470 A KR1019980007470 A KR 1019980007470A KR 19980007470 A KR19980007470 A KR 19980007470A KR 19980079985 A KR19980079985 A KR 19980079985A
Authority
KR
South Korea
Prior art keywords
image
intensity level
pixel
error
pixels
Prior art date
Application number
KR1019980007470A
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 KR19980079985A publication Critical patent/KR19980079985A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/405Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels
    • H04N1/4051Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size
    • H04N1/4052Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size by error diffusion, i.e. transferring the binarising error to neighbouring dot decisions
    • H04N1/4053Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a dispersed dots halftone pattern, the dots having substantially the same size by error diffusion, i.e. transferring the binarising error to neighbouring dot decisions with threshold modulated relative to input image data or vice versa

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Abstract

본 발명은 픽셀(pixel)당 8 비트의 컬러 영상을 잉크젯 프린터와 같은 표준 하드카피 출력 장치의 출력에 적합한 이진(binary)(컬러마다 픽셀당 1 비트) 영상으로 변환하는 고속 에러 확산 알고리즘(fast error diffusion algorithm)을 개시한다. 본 발명의 방법은 비교적 낮은 일련의 임계값(thresholds)을 갖는 2항 에러 확산(two-term error diffusion)을 이용한다. 일련의 임계값들은 블루 노이즈(blue noise)를 이용하여 형성된다. 영상의 행(row)은 서펜틴 방식(serpentine manner)으로 처리되며, 인접한 행은 다른 방향으로 처리된다.

Description

에러 확산을 이용한 영상 처리 방법
본 발명은 영상 처리 방법에 관한 것으로서, 특히, 임계값을 블루 노이즈(blue noise)로 변조하고, 영상의 행(row)을 서펜틴(serpentine) 방식으로 처리하는 2항 에러 확산(two-term error diffusion)에 관한 것이다.
도표, 그림 및 화상과 같은 영상은 화상의 엘리먼트(픽셀)의 2 차원 매트릭스로서 전자적으로 표현된다. 각각의 픽셀에 대한 공간 해상도(spatial resolution) 및 세기 레벨(intensity level)은 사용되는 소정의 출력 장치에 대응하도록 선택된다. 예를 들어, 전형적인 컴퓨터 모니터는 인치당 75 도트(75 dot per inch; DPI)로 영상을 디스플레이하며, 각각의 컬러당 256 레벨의 세기를 갖는다. 이러한 모니터는 기본 적색, 녹색 및 청색(RGB)의 색상을 이용하여, 이들 색상을 조합함으로써 수백만 가지의 색상 및 검정색을 생성할 수 있다.
(잉크젯 프린터와 같은) 전형적인 하드카피 출력 장치는 이진 장치이며, 이것은 프린트된 매체상의 각각의 픽셀 위치에 대해 단지 2 레벨, 즉, 온(on) 또는 오프(off)만으로 프린트할 수 있음을 의미한다. 따라서, 모니터기반의 영상 버전(컬러당 256 세기 레벨)을 이진 버전(컬러당 2 레벨)로 변환하기 위해서는 몇 가지 방법이 제공되어야 한다. 이들 변환 방법을 일반적으로 하프톤(halftoning)이라고 지칭한다. 하프톤 방식은 Ulichney, Digital Halftoning(1987년 MIT 발행)에 기술되어 있다.
하프톤의 기본적인 형태에는 디더링(dithering) 및 에러 확산(error diffusion)의 두 가지가 있다.
디더링은 도트가 프린트될 것인지의 여부에 상관없이 각각의 픽셀에 대해 결정이 이루어지고, 이러한 결정은 영상내의 임의의 다른 픽셀에 대해 독립적이므로 포인트(point) 처리라고 지칭된다. 디더링에서, 이전에 선택된 임계값의 2 차원 매트릭스가 영상위에 배치(tiled)된다. 영상내의 각각의 포인트에서 영상 픽셀의 세기는 디더링 셀(dithering cell)내의 대응하는 임계값과 비교된다. 영상 픽셀의 세기가 임계값보다 클 경우 도트가 프린트된다. 그렇지 않은 경우에는 도트가 프린트되지 않는다.
디더링 셀은 메모리에 저장되고, 전형적으로 2n정도의 크기를 가지며, 공통 셀은 예를 들어, 8, 16, 64 및 128 픽셀의 크기를 갖는다. 셀은 영상 픽셀에 대해 잠재적으로 가장 낮은 세기로부터 잠재적으로 가장 높은 세기까지의 범위를 갖는 임계값의 수치로 구성된다. 본 기술 분야에서는 블루 노이즈(이하 기술됨)를 이용하여 생성되는 임계값의 세미-랜덤 세트(semi-random set)를 이용하는 것에 대해 잘 알려져 있다. 디더 셀 기법은 사용된 실제 디더 셀에 의존하면서, 속도가 빠르고, 양호한 결과를 생성한다는 이점이 있다.
하프톤을 하는 주된 기법은 에러 확산이다. 디더링과는 달리, 에러 확산은 포인트 처리가 아니라 주변에 대해 작용하는 것이다. 도트를 프린트할지의 여부에 대한 결정은 그 픽셀에 대한 영상 픽셀 세기 뿐만아니라 이전에 처리된 픽셀에 대해 발생된 것을 기초로하여 정해진다. 본 발명은 에러 확산 기법에 관한 것이다.
에러 확산에서, 각각의 포인트에서의 영상 픽셀의 세기는 이전에 선택된 임계값과 비교된다. 영상의 픽셀 세기가 임계값보다 크면 그 픽셀에는 도트(100% 세기)가 할당된다. 그렇지 않으면, 도트가 할당되지 않는다(0% 세기). 두 경우에 있어서, 할당된 실제 값과 그 포인트에 대한 영상 픽셀의 세기 사이의 차이가 도출되며, 이러한 차이는 차후에 처리되는 다른 픽셀로 확산되는(diffused) 에러 항이 된다. 차후에 처리되는 픽셀에서, 다른 픽셀의 영상 픽셀의 세기에 에러 항이 더해지며, 결과적인 전체 픽셀의 세기는 에러 확산 임계값과 비교하는데 사용된다. 전형적인 임계값은 이론적인 최대 영상 픽셀 세기의 50%이다. 예를 들어, 픽셀당 256 세기 레벨(0 내지 255)이 있는 경우, 임계값으로서 128 레벨이 선택될 것이다.
잘 알려진 에러 확산 기법이 R. Floyd 및 L. Steinberg에 의해 Adaptive Algorithm for Spatial Grey Scale이란 명칭으로 SID Int'l. Sym. Digest of Tech. Paper, pp. 36-37(1975)의 문헌에 기술되어 있다. 플로이드 및 스테인베르그 에러 확산 기법(도 5에 도시됨)은 4 개의 주변 픽셀의 세트로 에러를 확산시킨다. 주변 픽셀로 확산되는 전체 에러의 비율은 도시된 바와 같이 각각의 픽셀에서 7/16, 1/16, 5/16 및 3/16이다. 에러가 4 개의 성분으로 분할되어 4 개의 서로 다른 픽셀로 전해지기 때문에, 이것을 4항 에러 확산이라고 지칭한다. 또한, 4항 이상의 에러 확산이 사용될 수도 있다.
에러 확산은 계산이 복잡하여 시간이 많이 소모된다는 문제점이 있다. 4항의 플로이드 및 스테인베르그 방식을 사용하더라도 임계값을 비교하고, 에러를 분할하여, 그 에러를 주변의 픽셀에 더하는 단계로 인해 전체 영상에 대해서는 수용하기 어려운 오랜 시간이 걸릴 수도 있다.
표준 에러 확산 알고리즘이 갖고 있는 다른 문제점은 프린트된 출력에서, 특히, 밝은 영역에서 가시적인 패턴이 발생될 수 있다는 것이다. 이들 패턴이 발생되는 이유는 프린트된 도트의 곡선형 라인을 생성하기 위해 에러가 영상을 통해 캐스케이드(cascade)할 수도 있기 때문이다. 이들 편차(anomaly)는 영상에서 작고 얇은 웜을 닮았기 때문에 때로는 웜(worms)라고 지칭된다.
에러 확산과 관련된 또 다른 문제점은 동작 개시 결함(start-up defects)이라고 지칭된다. 임계값이 128(최대값 256의 50%)인 전술한 방법에서, 결과적인 세기 레벨(원영상의 세기 + 소정의 에러 항)이 128 이상인 경우에만 도트가 프린트될 것이다. 따라서, 낮은 세기 레벨의 영상, 예를 들어, 최대값 256으로부터 레벨이 16인 영상의 경우, 결과적인(resultant) 영상 픽셀의 세기가 임계값을 초과하도록 하기 위해 충분한 에러가 형성되기 전에 몇 몇 도트를 처리해야 한다. 실제 영상에서, 이것은 결과적으로 영상의 좌측 상부에서 밝거나 하얀 영역이 된다(처리의 방향이 좌측에서 우측이라고 가정).
본 대리인에게 지정된 미국 특허 출원 제 5,313,287 호(바톤(Barton) 특허)에는 전술한 몇 가지 문제점들을 해결하도록 설계된 에러 확산 기법이 개시되어 있다. 이 특허는 영상의 행(row)의 처리 방향이 블루 노이즈에 의해 랜덤화되는 기법을 기술하고 있다. 다시 말하자면, 영상의 각각의 행을 엄격하게 좌측으로부터 우측으로, 혹은, 우측으로부터 좌측으로 처리하기 보다는 세미-랜덤 방식(semi-random manner)으로 처리한다. 처리의 방향이 순전히 랜덤하게 결정되면, 화이트 노이즈(white noise)를 기반으로하여 랜덤화가 될 것이다. 블루 노이즈는 고역 통과 필터(high pass filter) 처리된 화이트 노이즈이다. 전술된 기법에서, 블루 노이즈 필터는 동일한 방향에서 단지 3 행의 픽셀만을 처리한다. 화이트 노이즈가 좋지 않은 이유는 화이트 노이즈가 결과를 클럼핑(clumping)할 수도 있기 때문이다. 비록, 이것은 직관적으로 명백한 것은 아니지만, 허용된 수의 세트 사이에서의 순전히 랜덤한 선택은 근접한 시퀀스에서 동일한 결과가 항상 반복되도록 한다. 예를 들어, 처리의 방향을 순전히 랜덤하게 선택하면, 행이 동일한 방향으로 여러 번 처리되는 결과를 초래하여 프린트된 영상에서 가시적인 인공상(artifacts)이 발생된다.
바톤 방식의 다른 특징은 영상을 통해 동일한 임계값이 사용되지 않는다는 것이다. 그 대신에, 일련의 블루 노이즈 임계값이 사용된다. 이것은 일련의 임계값이 수용되는 범위상에서 랜덤화 되는 것을 의미하는데, 가까운 근처에서 동일한 임계값이 두 번 사용되는 것을 피하기 위해 필터가 사용된다. 예를 들어, 임계값 10이 일단 사용되면, 이 임계값이 사용될 때 건너 뛰도록(space out) 하기 위해, 블루 노이즈 필터는 다른 임계값이 사용되기 전까지 임계값으로 10을 다시 사용하지 않으려고 할 것이다. 임계값을 허용된 임계값의 세트로부터 순전히 랜덤하게 선택하면 화이트 노이즈가 발생될 것이다. 화이트 노이즈는 클럼핑을 발생시킬 수 있기 때문에 바람직하지 않다. 이 경우, 클럼핑은 가까운 근처에서 동일한 임계값이 한 번 이상 사용되도록하여 프린트된 영상에 웜 또는 다른 인공상을 발생시킬 가능성이 있다.
바톤의 특허에서는 임계값을 변조하는 것 이외에도 비교적 낮은 임계값을 사용하는 바안을 기술하고 있다. 낮은 임계값은 도트가 먼저 프린트되도록 하므로, 비교적 낮은 임계값을 사용하면 동작 개시 결함이 또한 감소된다. 즉, 픽셀이 임계값을 초과할 만큼의 세기값을 갖기 전에 형성되는 에러가 줄어든다. 마지막으로, 바톤 방식은 3항 에러 확산을 사용한다. 이것은 전형적인 플로이드 및 스테인베르그 에러 확산보다 1항이 적다. 에러 확산을 1항 감소시키면 처리 속도가 증가된다는 것을 알 수 있다.
현재, 이진 프린터의 시장은 경쟁이 치열하며, 영상의 품질 및 속도가 그러한 경쟁의 주된 요소이다. 프린터 개발자는 디더기반(dither-based) 하프톤을 이용하여 처리 속도를 보다 빠르게 향상시키고자 노력한다. 그러나, 개발자는 에러 확산으로 영상의 품질을 향상시키고자 또한 노력한다. 그러므로, 우수한 영상 품질을 달성하면서 처리 속도를 크게 향상시킬 수 있는 에러 확산 기법이 필요하다.
본 발명은 각각 사전결정된 세기 레벨을 갖는 영상 픽셀로 구성되는 영상을 처리하는 방법을 제공한다. 본 발명의 방법은 에러 확산 방식으로 영상을 처리하여 디지털 출력 장치상에 출력한다. 본 발명의 방법은 (a) 각각의 픽셀에 사전결정된 세기 레벨에 에러 항을 더하여 결정된 결과적인 세기 레벨을 제공하는 단계와, (b) 블루 노이즈 방식으로 변조된 일련의 임계값을 제공하는 단계와, (c) 하나의 영상 픽셀의 결과적인 세기 레벨과 블루 노이즈 임계값들 중 하나를 비교하는 단계와, (d) 결과적인 세기 레벨이 임계값을 초과하면 하나의 도트(100% 세기)의 이진 세기 레벨을 픽셀에 할당하고, 결과적인 세기 레벨이 임계값 미만이면 도트의 이진 세기 레벨을 할당하지 않는(0% 세기) 단계와, (e) 이진 세기 레벨과 결과적인 세기 레벨간의 차이를 찾는 단계와, (f) 상기 차이를 2 개의 에러 항으로 분할하여 2 개의 인접 픽셀로 확산시켜 에러 항을 인접 픽셀의 결과적인 세기 레벨에 더하는 단계 및 (g) 영상의 각각의 행내의 각각의 영상 픽셀에 대해 단계 (c) 내지 (f)를 수행하여 영상의 각각의 영상 픽셀을 처리하고, 인접한 행의 처리 방향을 교대로하여 서펜틴 방식으로 행을 처리하는 단계를 포함한다.
본 발명은 종래에 알려진 에러 확산 방식에 비해 처리 속도를 향상시키는 동시에 우수한 영상 품질을 제공한다.
도 1은 본 발명의 프린트 시스템의 개략도.
도 2는 전형적인 영상 처리 시스템의 개략적인 블럭도.
도 3은 세기 레벨이 175로 균일한 영상의 일부를 도시한 도면.
도 4는 세기 레벨이 16으로 균일한 영상의 일부를 도시한 도면.
도 5는 플로이드(Floyd) 및 스테인베르그(Steinberg) 에러 확산 방법을 도시한 도면.
도 6은 바톤(Barton) 에러 확산 방법을 도시한 도면.
도 7은 본 발명의 에러 확산 방법을 도시한 도면.
도면의 주요 부분에 대한 부호의 설명
10 : 호스트 컴퓨터 12 : 모니터
14 : 프린터 16 : 프린터 제어기
18, 20 : 프린트 카트리지
도 1은 본 발명의 프린트 시스템의 개략도이다. 이 시스템은 호스트 컴퓨터(10), 모니터(CRT)(12) 및 프린터(14)를 포함한다. 프린터(14)는 프린터 제어기(16) 및 프린트 카트리지(18 및 20)를 포함한다. 기술된 실시예에서, 프린트 카트리지(18 및 20)는 스캐닝 프린트 카트리지이다. 다시 말하자면, 이들 카트리지는 프린트 매체(예를 들어, 종이)상의 프린트 스워스(print swath)를 통해 앞 뒤로 구동되고, 프린트 매체는 프린터를 통해 구동된다. 이러한 방법으로, 문자 또는 그래픽으로 영역을 채우기 위해 페이지(page)의 전체 프린트 영역에 주소가 할당될 수 있다. 프린트 카트리지(18)는 3 가지 형태의 잉크, 즉, 시안(cyan)(C), 마젠타(magenta)(M) 및 황색(Y) 잉크를 포함하는 300 DPI의 3 챔버 카트리지이다. 프린트 카트리지(20)도 300 DPI로 프린트하며, 검정색(K) 잉크를 포함한다.
도 2는 컴퓨터(10)로부터 프린터(14)까지 영상 정보의 표준적인 흐름을 도시하고 있다. 우선, 컴퓨터(10)의 메모리에 영상이 생성되거나 입력된다. 이 영상은 추가적인 RGB 컬러 공간으로 표현되어 컴퓨터 모니터(12)상에 디스플레이된다. 스크린상의 각각의 픽셀은 각각의 적색, 녹색 및 청색의 색상으로 256(0 내지 255) 세기 레벨 중 임의의 하나로 조명될 수 있다. 이들 세 가지의 컬러는 그들 각각의 256 레벨에서 조합되어 각각의 픽셀에 1 천 6 백만가지 이상의 컬러를 생성할 수 있다. 이것은 256 레벨을 8 비트로 표현한다(28= 256). 세 가지의 기본 색상은 각각 8 비트가 필요하기 때문에 RGB 컬러 모니터는 일반적으로 24 비트 컬러(3 × 8 = 24)를 생성하는 것으로서 알려져 있다. 이 영상은 소정의 모니터의 공간 해상도로 표현된다. 전형적인 모니터는 수직 및 수평 방향으로 선형 인치당 75 픽셀(75 DPI)을 갖는다.
단계(30)에서, 24 비트 RGB 컬러 영상은 모니터(12)상에 디스플레이될 수 있도록 컴퓨터(10)의 메모리내에 유지된다. 단계(32)에서, 영상은 프린터의 해상도에서 24 비트의 RGB 영상으로 변환된다. 전형적으로 잉크젯 프린터는 300 DPI의 해상도를 갖는다. 그러나, 일부 잉크젯 프린터는 600 DPI 또는 심지어 1200 DPI의 해상도를 갖는다. 비록 프린터는 전형적으로 CMY 또는 CMYK 마이너스 컬러(subtractive colors)에서 프린트하지만, 그럼에도 불구하고, 프린터가 RGB 장치인 것을 고려하면, 단계(32)에서의 영상 처리에 편리하다. 이것은 장치의 컬러 공간을 기술하는데 3 차원이면 충분하기 때문이며, 컬러 모니터의 RGB 값을 CMYK에 직접 정합시키고자 한다면 색도 정합(colorimetric match)을 발생시킬 매우 다양한 CMYK 조합이 이루어질 것이다. 그러나, 정합된 값 모두가 동일한 영상 품질을 생성하는 것은 아니다. 일부 선택은 다른 것에 비해 가시적인 노이즈를 많이 갖게될 것이며, 반면에 다른 선택은 영상의 하프톤 전이에 있어서 바람직하지 않은 불연속성을 초래할 수도 있다.
단계(34)에서, 본 발명은 프린터의 RGB 컬러 영상을 CMYK 컬러 공간으로 변환한다. 단계(36)에서, 영상은 하프톤되어 컬러당 4 면 8 비트로부터 4 면 디지털 컬러로 변환된다. 단계(38)에서, 휴렛 패커드사의 프린터 제어 언어(PCL)에 의해 사용되는 것과 같은 이스케이프 시퀀스(escape sequences)를 이용하는 것과 같이, 전형적으로 효율적인 통신 프로세스를 이용하여 영상을 프린터로 전송한다. 단계(36)에서 생성된 영상은 페이지상의 각각의 픽셀에서의 각각의 컬러에 대해 얼마나 많은 도트가 프린트되었는가에 대한 모든 정보를 포함한다. 프린터 제어기는 이들 도트가 언제 프린트되어야 하는가를, 즉, 단일의 패스(pass)에서 혹은 복수의 패스에서 프린트 되어야 하는가를 결정한다. 잉크젯 프린터의 특성으로 인해 하나 이상의 패스에 도트를 위치시키는 것이 바람직하며, 몇 가지 종류의 체커보드(checkerboard) 또는 다른 성긴 패턴(sparse pattern)에 각각의 패스를 프린트하는 것이 바람직하다. 또한, 스워스(swath) 사이에 발생될 수도 있는 인공상을 감추기 위해 패스와 이들 틈이 있는 패턴(interstitial patterns)을 중첩시키는 것이 바람직하다. 어떤 패스 및 어떤 패턴에 도트를 위치시킬 것인지를 결정하는 절차를 프린트 모드(print modes)라고 지칭한다.
이제, 하프톤 단계(36)에 대해 기술한다. 도 1에서, 이론적으로 픽셀당 영상의 최대 세기는 255이다. 따라서, 0부터 255까지 표현될 수 있는 서로 다른 이용가능한 세기가 존재한다. 영상을 이진 프린터상에 하드카피로 프린트 출력하기 위해 영상을 전이하는데 있어서 픽셀당 256 세기 레벨로부터 픽셀당 단지 2 레벨로 어떻게 취하는가 하는 문제점이 있다. 하프톤은 이러한 전이를 하는데 사용되는 기법을 지칭한다. 하프톤은 크게 두 가지, 즉, 디더링 및 에러 확산으로 분류된다. 디더링에 관해서는 위에서 간단하게 기술하였다. 본 발명은 에러 확산에 관한 것이다.
도 2와 관련하여 기술된 여러 가지 기능들은 프린터에 따라, 호스트 컴퓨터 또는 프린터에서 수행된다. 예를 들어, 스마트(smart) 프린터에서, 단계(32 내지 38)는 모두 프린터에서 수행될 수 있다. 한편, 프린터에서의 메모리 비용을 절약하기 위해 슬리크(sleek) 프린터에서는 기능(30 내지 38)의 전부 혹은 일부가 호스트 컴퓨터에서 수행될 수 있다.
도 3 및 도 4는 컴퓨터 메모리에 저장된 영상의 일부를 도시하고 있다. 이 영상은 그래프, 도표, 화상 또는 문자일 수 있다. 예를 들어, 도시된 바와 같이 픽셀(40)은 균일한 세기 레벨 175를 갖고 있다. 도 4는 보다 가벼운 톤(tone)을 갖는 영상의 다른 부분을 도시하고 있으며, 세기 레벨은 16으로 균일하다. 전술한 바와 같이, 영상은 전형적으로 추가적인 적색, 녹색, 청색 포맷으로 컴퓨터 모니터상에 디스플레이 된다. 도시된 세기 레벨은 표현된 소정의 컬러에 대한 세기이다. 영상에 대한 분리된 영상 표현이 각각의 컬러에 대해 저장된다. 따라서, 영상은 3 평면에 있다고 말할 수 있으며, 각각의 컬러는 분리된 평면에 존재한다. 본 명세서에서는, 단지 단일의 세기만이 기술될 것이며, 다른 컬러에 대해서도 동일한 절차가 이어질 것이다. 실제로, 이 방법을, 예를 들어, 검정색의 단일 컬러 영상 시스템과 함께 사용할 수 있다.
에러 확산은 각각의 포인트에 대해 하드카피 출력 장치가 프린트하는 것과 실제 영상 픽셀 세기 사이에 차이가 존재하는지를 인식하려고 한다. 영상 픽셀 세기가 정확히 255(프린트되어야 할 도트) 또는 0(프린트될 도트가 없음)인 경우에만 이러한 에러가 존재하지 않는다. 그러나, 이러한 경우는 드물다. 따라서, 일반적으로 에러가 존재한다. 도트가 프린트되고, 세기 레벨이 255 이하이면 에러는 양(positive)이며, 영상 픽셀에 의해 실제로 요구되는 것보다 큰 톤의 레벨이 프린트된다. 도트가 프린트되지 않고, 영상 픽셀이 0 이상이면 에러는 음(negative)이며, 영상 픽셀에 의해 실제로 요구되는 것보다 작은 톤의 레벨이 프린트된다. 에러 확산은 이러한 에러를 주변의 픽셀로 퍼뜨린다.
도 5는 전형적인 플로이드 및 스테인베르그 에러 확산 기법을 도시하고 있다. 각각의 작은 사각형은 영상내의 하나의 픽셀을 나타낸다. 픽셀(50)은 처리되는 현재의 픽셀이다. 이 포인트에서, 이 방법은 실제 픽셀 세기와 임계값 세기 레벨을 비교한다. 일반적으로 임계값은 128이며, 이것은 256 레벨 세기 시스템에 대해 50%의 세기이다. 영상 픽셀의 세기가 이 임계값을 초과하면, 하나의 도트가 픽셀로 할당된다. 다시 말하자면, 프린터는 결국 그 포인트에 도트를 프린트할 것이다. (물론, 이 단계에서는 컴퓨터 혹은 프린터에 의해 영상이 처리된다. 프린트는 늦게될 것이다.) 영상 픽셀의 세기가 임계값 미만이면, 도트는 프린트되지 않을 것이다. 두 가지 경우에 있어서, 영상 픽셀 세기와 그 픽셀에서 실제로 발생되는 것과의 사이에는 에러가 발생될 것이다. 예를 들어, (도 3에서와 같이) 균일한 세기 레벨 175를 가정하면, 이 세기는 임계값 128을 초과하므로 픽셀(50)에는 도트가 프린트될 것이다. 도트를 프린트한다는 것은 255의 세기(100% 세기)가 그 픽셀에 실제로 할당된다는 것을 의미한다. 실제 영상 픽셀의 세기와 할당된 값 사이의 에러는 -80(175 - 255 = - 80)이다.
이 -80의 에러는 도시된 바와 같이 차후에 처리되는 주변의 픽셀들로 전해진다. 픽셀(52)은 이 에러의 7/16을, 픽셀(54)은 3/16을, 픽셀(56)은 5/16를, 픽셀(58)은 1/16을 받는다. 따라서, 픽셀(52)은 -35(7/16 × -80 = -35)의 에러 항을 받는다. 이 에러 항은 그 픽셀에 대한 실제의 영상 세기에 더해진다. 픽셀(52)에 대한 영상 세기 또한 175이므로, 이 방법은 할당된 에러 항을 더하여 픽셀(52)에 대한 결과적인 세기를 140(175 - 35 = 140)으로 만든다. 이 에러 항이 없었더라도 도트가 프린트되었을 것이다. 그러나, 이 경우 이전에 프린트된 도트로부터의 에러 항은 결과적인 영상 세기 레벨을 감소시켜 도트가 프린트되지 않게 된다. 이러한 방식으로, 이 기법은 프린트 장치의 이진 특성을 보상하려고 한다. 영상내의 각각의 픽셀은 영상이 완전히 처리될 때 까지 이러한 방식으로 처리된다.
이러한 에러 확산 기법은 영상의 각각의 행에서 좌측으로부터 우측으로 처리된다고 가정한다. 이 처리 방법은 동작 개시 결함이라고 알려진 문제점을 발생시킨다. 영상이 도 4에 도시된 바와 같이 균일한 레벨 16의 낮은 세기 레벨을 갖고 있다면, 16은 128보다 작기 때문에 처음으로 처리된 픽셀(픽셀(50))에는 도트가 프린트되지 않을 것이다(0% 세기). 에러는 16 - 0 = 16으로 될 것이다. 이 에러 7/16은 다음의 픽셀(54)에 더해지며, 이 픽셀(54)의 세기의 결과는 23(16 + 7 = 23)이 된다. 픽셀(52)이 처리될 때 도트는 여전히 프린트되지 않으므로, 에러는 23(23 - 0 = 23)이 된다. 이 에러의 7/16(= 10.06)은 다음의 픽셀(60)에 더해져 결과적인 전체 픽셀 세기는 26.6(16 + 10.6 = 26.6)이 된다. 이와 같이, 에러를 형성하기에 충분할 만큼의 개수의 도트를 취하면 픽셀의 세기는 임계값 128을 초과하게 된다. 이로 인해 영상의 행의 좌측에는 도트가 프린트되지 않는다. 이들 동작 개시 결함은 프린트된 영상의 좌측 상부 코너에 하얗거나 밝은 영역을 발생시키는 것으로 알려져 있다.
표준 에러 확산 알고리즘이 갖고 있는 다른 문제점은 프린트된 출력에서, 특히, 밝은 영역에서 가시적인 패턴이 발생될 수 있다는 것이다. 이들 패턴이 발생되는 이유는 프린트된 도트의 곡선형 라인을 생성하기 위해 에러가 영상을 통해 캐스케이드할 수도 있기 때문이다. 이들 편차는 영상에서 작고 얇은 웜을 닯았기 때문에 때로는 웜(worms)라고 지칭된다. 또한, 에러 확산은 계산이 복잡하여 시간이 많이 소모된다. 그러나, 현대의 프린터 시장에서는 보다 빠른 프린터를 요구한다.
도 6은 전술한 바톤 특허(미국 특허 출원 제 5,313,287 호)에 개시된 3항 에러 확산을 도시하고 있다. 이 기법은 일반적으로 에러 확산과 관련된 몇 가지 문제점들을 극복하고자 한다. 현재의 픽셀(픽셀(68))을 처리함으로써 발생되는 소정의 에러는 도시된 바와 같이 주변의 픽셀들 중 세 개의 픽셀로 확산된다. 에러는 다음의 수평 픽셀(70)에 8/16이, 인접한 수직 픽셀(76)에 5/16가, 대각선으로 인접한 픽셀(74)에 3/16이 확산된다. 3항 에러 확산을 이용하면, 4항 에러 확산과는 달리 처리 시간이 향상된다.
또한, 바톤 기법은 영상 처리의 방향을 랜덤화한다. 엄격하게 영상의 좌측으로부터 우측으로 처리하는 것과는 달리, 긴 항에 대해, 영상의 행의 대략 절반은 좌측으로부터 우측으로, 절반은 우측으로부터 좌측으로 처리가 되도록 처리의 방향이 세미-랜덤화된다. 이러한 랜덤화는 동작 개시 지연 및 웜의 문제를 해결하는데 도움이 된다.
랜덤화는 화이트 노이즈보다는 블루 노이즈를 이용한다. 이것은 처리의 방향은 랜덤하게 되지만, 블루 노이즈 필터는 동일한 방향으로부터 처리될 수 있는 시퀀스에서 3 행 이상을 허용하지 않는다는 것을 의미한다. 순수한 랜덤화는 화이트 노이즈를 생성할 것이다. 비록 이것은 직관적인 것과는 반대이지만, 화이트 노이즈는 어느 정도의 클럼핑을 발생시키며, 이것은 시간 및 공간에서 동일한 결과가 가까운 간격으로 될 수 있다는 것을 의미한다. 순수한 랜덤화는 동일하거나 매우 유사한 결과가 퍼지는 것을 보장하지 않는다. 본질적으로, 블루 노이즈는 클럼핑이 발생되지 않도록 보장하기 위해 고역 통과 필터(high pass filter) 처리된 화이트 노이즈이다.
또한, 바톤 방법은 비교적 낮은 임계값 레벨을 이용하며, 또한, 임계값은 블루 노이즈를 이용하여 랜덤화된다. 임계값이 낮으면, 낮은 영상 세기의 영역에서 임계값을 초과하여 도트를 프린트 하도록 형성되는 에러가 줄어들게 된다. 따라서, 동작 개시 결함은 감소될 것이다. 또한, 웜 및 다른 프린트 편차를 피하기 위해 임계값의 밀도는 랜덤화 된다.
도 7은 본 발명의 에러 확산 방법을 도시하고 있다. 도시된 바와 같이, 본 발명의 기법은 2항 에러 확산을 이용한다. 처리되는 피셀(예를 들어, 픽셀(80))로부터 발생된 소정의 에러는 다음의 수평 픽셀(82) 및 인접한 수직 픽셀(84)로 확산된다. 확산되는 에러의 비율은 이들 인접한 각각의 픽셀에 대해 8/16(50%)이다.
영상의 각각의 행이 처리된 후, 처리의 방향은 역으로 된다. 다시 말하자면, 개시된 방법은 순수한 서펜틴 처리 시스템을 이용한다. 바톤의 특허에서, 서펜틴 처리는 방향적인 히스테리시스(directional hysteresis)를 피하기 위한 방법으로서 제시되었지만, 서펜틴은 제공된 영상에 존재하지 않을 수도 있는 가시적인 패턴 또는 편차를 발생시킬 수 있다(열 1의 라인 38-51을 참조). 따라서, 블루 노이즈 래스터(raster)가 제안되었다. 바톤이 기술한 것과는 달리, 본 발명자는 본 발명의 다른 특징을 갖는 서펜틴 래스터는 매우 빠른 에러 확산 알고리즘을 동일한 시간에 제공하면서도, 매우 우수한 프린트 출력 영상 품질을 생성한다는 것을 알게 되었다.
개시된 방법에서, 임계값 레벨은 비교적 낮게 선택되며, 임계값 레벨은 블루 노이즈로 변조된다. 낮은 레벨의 임계값은 동작 개시 지연을 감소시키며, 변조된 임계값은 또한 임의의 웜을 제거한다. 임계값의 변조는 256 성분의 선형 배열 또는 전체 64 레벨에 대해 5 내지 68의 범위를 갖는 임의적인 임계값의 연속이다. 아래의 표 1은 사용된 임계값을 포함한다.
이 표는 2 차원 배열이 아니라, 한 번에 사용되는 임계값의 리스트 또는 계열이다. 일단 이 계열이 사용되면, 기술된 서펜틴 처리 방법을 이용하여 영상내의 각각의 픽셀과 임계값을 비교하기 위해 필요한 만큼 반복되어 사용된다. 이들 수는 모두 5와 68 사이이며, 각각의 수는 4 회 반복된다.
실제로 사용된 임계값의 수는, 임계값의 수가 영상내의 영상 픽셀의 수와 일치하지 않도록 선택하는 것이 바람직하다. 다시 말하자면, 사용된 픽셀의 수는 픽셀의 수를 갖는 반복 주기를 갖지 않는다. 그러한 불일치의 관계로 인해, 바람직하지 않은 인공상이 영상으로 유입되지 않는다. 이러한 256 임계값 레벨의 세트는 256과 일치하지 않는 소정의 영상의 픽셀 폭과 작용한다. 예를 들어, 1950 도트(300 DPI에서 6.5 인치)의 픽셀 폭을 갖는 영상은 256과 일치하지 않을 것이다.
이들 임계값의 평균적인 세기 레벨은 동작 개시 결함을 감소시키기 위해 비교적 낮게 선택된다. 이들 임계값에 대한 평균 세기 레벨은 36.5이며, 이것은 최대로 허용가능한 레벨인 256의 약 14%이다. 임계값에 대한 평균적인 세기 레벨은 대략 20% 미만인 것이 바람직하다. 임계값에 대한 평균적인 세기 레벨이 대략 15% 미만이면 더욱 바람직하다.
따라서, 본 발명은 단지 2항 에러 확산을 이용하여 매우 빠른 확산 알고리즘을 제공하며, 또한, 우수한 영상 품질을 제공하고, 동작 개시 결함 및 웜과 같은, 일반적으로 에러 확산과 관련된 프린트 결함을 최소화한다.
본 발명에 따른 에러 확산을 이용한 영상 처리 방법에 의하면, 비교적 낮은 일련의 임계값을 갖는 2항 에러 확산에 의해 픽셀당 8 비트의 컬러 영상을 잉크젯 프린터와 같은 표준 하드카피 출력 장치의 출력에 적합한 이진 영상으로 고속으로 변환하며, 우수한 프린트 출력 영상을 생성할 수 있다.

Claims (12)

  1. 행(row)의 매트릭스 패턴(matrix pattern)내에 배열되고, 사전결정된 세기 레벨(intensity level)을 갖는 영상 픽셀로 구성되는 영상을 처리하는 방법에 있어서, 상기 방법은 상기 영상을 처리하여 디지털 출력 장치에 출력하기 위해 에러 확산(error diffusion)을 이용하며,
    (a) 상기 각각의 영상 픽셀에 상기 사전결정된 세기 레벨과 에러 항(error term)을 더하여 결정된 결과의 세기 레벨을 제공하는 단계와,
    (b) 블루 노이즈(blue noise) 방식으로 변조된 일련의 임계값(thresholds)을 제공하는 단계와,
    (c) 상기 영상 픽셀들 중 하나의 결과의 세기 레벨과 상기 블루 노이즈 임계값들 중 하나를 비교하는 단계와,
    (d) 상기 결과의 세기 레벨이 상기 임계값을 초과하면 상기 픽셀에 하나의 도트(100% 세기)의 이진 세기 레벨을 할당하고, 상기 결과의 세기 레벨이 상기 임계값 미만이면 도트의 이진 세기 레벨을 할당하지 않는(0% 세기) 단계와,
    (e) 상기 이진 세기 레벨과 상기 결과의 세기 레벨 사이의 차를 검출하는 단계와,
    (f) 상기 차를 두개의 에러 항으로 분할하여, 상기 에러 항을 두개의 인접 픽셀로 확산하고, 상기 에러 항을 상기 인접 픽셀의 결과의 세기 레벨에 더하는 단계와,
    (g) 상기 영상의 각각의 행의 상기 각각의 영상 픽셀에 대해 단계 (c) 내지 단계 (f)를 수행하여 상기 영상의 각각의 영상 픽셀을 처리하고, 인접한 행의 처리 방향을 교체하여 상기 행을 서펜틴 방식(serpentine fashion)으로 처리하는 단계
    를 포함하는 에러 확산을 이용한 영상 처리 방법.
  2. 제 1 항에 있어서,
    상기 에러는 처리 방향의 인접한 수평 픽셀과, 현재 처리되는 픽셀 아래에 인접한 수직 픽셀로 확산되는 에러 확산을 이용한 영상 처리 방법.
  3. 제 1 항에 있어서, 상기 에러 중 1/2은 상기 인접한 수평 픽셀로 확산되고, 1/2은 상기 인접한 수직 픽셀로 확산되는 에러 확산을 이용한 영상 처리 방법.
  4. 제 1 항에 있어서, 상기 임계값은 상기 영상 픽셀에 대해 완전히 이용가능한 세기 레벨의 20% 미만의 평균 값을 갖는 에러 확산을 이용한 영상 처리 방법.
  5. 제 1 항에 있어서, 상기 임계값은 상기 영상 픽셀에 대해 완전히 이용가능한 세기 레벨의 15% 미만의 평균 값을 갖는 에러 확산을 이용한 영상 처리 방법.
  6. 제 1 항에 있어서, 상기 임계값의 수는 상기 임계값의 수와 일치하지 않는 에러 확산을 이용한 영상 처리 방법.
  7. 에러 확산을 이용한 영상 처리 방법에 있어서,
    (a) 일련의 수평 행에 배열되고, 각각 대응하는 영상 세기 레벨을 갖는, 영상 픽셀의 매트릭스로 구성되는 영상을 제공하는 단계와,
    (b) 상기 각각의 영상 픽셀에 상기 영상 세기 레벨과 에러 항을 더하여 이루어진 결과의 세기 레벨을 제공하는 단계와,
    (c) 블루 노이즈 방식으로 변조된 일련의 임계값을 제공하는 단계와,
    (d) 상기 영상의 상기 결과의 세기 레벨과 상기 계열내의 다음 임계값을 비교하여, 수평 시퀀스내의 상기 영상의 각각의 행의 각각의 픽셀을 처리하는 단계와,
    (e) 상기 결과의 세기가 상기 임계값을 초과하면 상기 픽셀에 100% 세기의 출력 세기 레벨을 할당하고, 상기 결과의 세기가 상기 임계값을 초과하지 않으면 0% 세기의 출력 세기 레벨을 할당하는 단계와,
    (f) 상기 출력 세기 레벨과 상기 결과의 세기 레벨 사이의 차를 결정하는 단계와,
    (g) 상기 차를 두개의 항으로 분할하고, 2항 에러 확산으로 상기 에러 항을 인접한 수평 및 수직 픽셀로 확산하는 단계와,
    (h) 상기 단계 (d) 내지 단계 (g)를 상기 행을 따라 교체 수평 방향으로 수행하여 상기 영상의 상기 행을 처리함으로써, 상기 영상의 상기 행을 서펜틴 방식(serpentine fashion)으로 처리하는 단계
    를 포함하는 에러 확산을 이용한 영상 처리 방법.
  8. 제 7 항에 있어서, 상기 에러는 처리 방향의 인접한 수평 픽셀과, 현재 처리되는 픽셀 아래에 인접한 수직 픽셀로 확산되는 에러 확산을 이용한 영상 처리 방법.
  9. 제 8 항에 있어서, 상기 에러 중 1/2은 상기 인접한 수평 픽셀로 확산되고, 1/2은 상기 인접한 수직 픽셀로 확산되는 에러 확산을 이용한 영상 처리 방법.
  10. 제 9 항에 있어서, 상기 영상 픽셀은 이론적인 최대값을 가지며, 상기 임계값은 상기 이론적인 최대값의 대략 20% 미만의 평균 세기 레벨을 갖는 에러 확산을 이용한 영상 처리 방법.
  11. 제 9 항에 있어서, 상기 영상 픽셀은 이론적인 최대값을 가지며, 상기 임계값은 상기 이론적인 최대값의 대략 15% 미만의 평균 세기 레벨을 갖는 에러 확산을 이용한 영상 처리 방법.
  12. 제 11 항에 있어서, 상기 일련의 임계값은 상기 영상의 상기 행내의 영상 픽셀의 수를 갖는 반복 주기를 갖지 않는 에러 확산을 이용한 영상 처리 방법.
KR1019980007470A 1997-03-06 1998-03-06 에러 확산을 이용한 영상 처리 방법 KR19980079985A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US81277797A 1997-03-06 1997-03-06
US8/812,777 1997-03-06

Publications (1)

Publication Number Publication Date
KR19980079985A true KR19980079985A (ko) 1998-11-25

Family

ID=25210599

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980007470A KR19980079985A (ko) 1997-03-06 1998-03-06 에러 확산을 이용한 영상 처리 방법

Country Status (3)

Country Link
EP (1) EP0863661A2 (ko)
JP (1) JPH10257321A (ko)
KR (1) KR19980079985A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100421987B1 (ko) * 2001-12-06 2004-03-11 삼성전자주식회사 오차확산 처리방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7460275B2 (en) * 1999-12-02 2008-12-02 Texas Instruments Incorporated Odd/even error diffusion filter
US6588879B2 (en) * 2001-12-03 2003-07-08 Supersample Corporation Method for ink jet printing a digital image on a textile, the system and apparatus for practicing the method, and products produced by the system and apparatus using the method
CN112185312B (zh) * 2020-09-29 2021-11-16 珠海格力电器股份有限公司 图像数据的处理方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100421987B1 (ko) * 2001-12-06 2004-03-11 삼성전자주식회사 오차확산 처리방법

Also Published As

Publication number Publication date
JPH10257321A (ja) 1998-09-25
EP0863661A2 (en) 1998-09-09

Similar Documents

Publication Publication Date Title
US6870644B2 (en) Tone dependent plane dependent error diffusion halftoning
EP0887998B1 (en) Correlating cyan and magenta planes for error diffusion halftoning
US5973803A (en) Combined color halftoning
EP0946049B1 (en) Processing images
US6393148B1 (en) Contrast enhancement of an image using luminance and RGB statistical metrics
JPH10224629A (ja) 画像提示機構を操作する方法及び装置
US5930010A (en) Method and apparatus for color halftoning using different halftoning techniques for halftoning different dot planes
JP4149269B2 (ja) 中間ドットを用いた誤差拡散方法及びシステム
US20090154831A1 (en) Method and apparatus for dithering a pixel value in image
US6600573B2 (en) Fast green/magenta dithering of color images
KR100354742B1 (ko) 화상 데이터 처리장치
US20040085553A1 (en) Multitoning a digital image having at least one group of similar colors channels
US6633412B1 (en) Smoothness enhancement in laser printing through periodic modulation of halftone cell
KR19980079985A (ko) 에러 확산을 이용한 영상 처리 방법
EP1271923A2 (en) Digital image multitoning method
US7002708B2 (en) Delayed decision dot placement for plane-dependent CMYK error diffusion
KR100381651B1 (ko) 칼라 중간조 처리 장치
JP2005295131A (ja) 画像処理装置、画像処理方法および画像処理プログラム
KR100522589B1 (ko) 적응형 칼라 오차 확산 방법
JP2023056117A (ja) 画像処理装置
JPH03204273A (ja) カラー画像処理装置
JP2003338944A (ja) カラー階調画像の階調再現装置

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