KR100681108B1 - 컬러 이미지를 프린트하기 위한 오차 확산 하프톤 방법 - Google Patents

컬러 이미지를 프린트하기 위한 오차 확산 하프톤 방법 Download PDF

Info

Publication number
KR100681108B1
KR100681108B1 KR1020000024176A KR20000024176A KR100681108B1 KR 100681108 B1 KR100681108 B1 KR 100681108B1 KR 1020000024176 A KR1020000024176 A KR 1020000024176A KR 20000024176 A KR20000024176 A KR 20000024176A KR 100681108 B1 KR100681108 B1 KR 100681108B1
Authority
KR
South Korea
Prior art keywords
color
value
dot
tone
printed
Prior art date
Application number
KR1020000024176A
Other languages
English (en)
Other versions
KR20010020817A (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 KR20010020817A publication Critical patent/KR20010020817A/ko
Application granted granted Critical
Publication of KR100681108B1 publication Critical patent/KR100681108B1/ko

Links

Images

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
    • 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/46Colour picture communication systems
    • H04N1/52Circuits or arrangements for halftone screening

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color, Gradation (AREA)
  • Image Processing (AREA)
  • Color Image Communication Systems (AREA)

Abstract

톤 종속 면 종속 오차 확산 하프톤 기법(tone dependent plane dependent error diffusion halftoning)은 임의의 컬러면 내의 도트의 배치를 결정할 때 다수의 컬러면을 고려하고 있다. 상관된 컬러면에 대한 조합 톤과 누적 오차값이 비교되는 임계값 레벨(64)을 결정하는데 상관된 컬러면의 조합 톤들이 사용된다. 또한, 톤 종속 오차 가중값들은 상관된 컬러면(64)의 조합된 톤에 기초하여 결정된다. 이 톤 종속 오차 가중값들은 각각의 컬러면(72)에 대한 최종의 누적 오차값을 확산시키는데 사용된다. 사전렌더링된 중간 톤 비트맵 기법은 중간 톤에서 발생하는 임의의 구조화된 패턴을 분쇄하는데 사용된다. 이러한 기법을 사용하게 되면, 두 개 이상의 컬러의 프린트된 도트들은 두 개 이상의 컬러의 현저한 도트 클럼핑(clumping of dot)을 방지하여 보다 균일한 패턴을 제공하고 컬러들의 부주의한 중첩을 방지하도록 분산된다. 이러한 기법은 임의의 기존의 오차 확산 방법을 향상시키는데 사용된다.

Description

컬러 이미지를 프린트하기 위한 오차 확산 하프톤 방법{TONE DEPENDENT PLANE DEPENDENT ERROR DIFFUSION HALFTONING}
도 1은 시안 및 마젠타 도트들의 배열을 도시한 종래의 도트 패턴 도시도,
도 2는 시안 및 마젠타 도트들의 면 종속 하프톤 배열을 도시한 도트 패턴 도시도,
도 3은 바람직한 오차 확산 방법의 일부 혹은 모두를 수행하기 위한 처리 회로를 포함하고 있는 컬러 잉크젯 프린터의 도시도,
도 4는 본 발명에 따른 오차 확산 방법을 수행할 경우에 잉크젯 프린터에 접속된 컴퓨터를 도시한 도면,
도 5는 도 4의 컴퓨터 및 프린터에 의해 수행되는 일반적인 방법을 도시한 도면,
도 6은 하프톤 방법에 의해 재생되는 3×3의 픽셀 블록과 그 톤 값을 도시한 도면,
도 7은 도 6에 도시된 3×3의 픽셀 블록을 도시하되 톤 값들의 시안 성분의 세기들을 확인하기 위한 도면,
도 8은 도 6에 도시된 3×3의 픽셀 블록을 도시하되 톤 값들의 마젠타 성분 의 세기들을 확인하기 위한 도면,
도 9 및 도 10은 본 발명에 따라 컴퓨터, 혹은 프린터 혹은 그 모두에 의해 수행되는 톤 종속 면 종속 오차 하프톤 방법을 기술하는 플로우차트,
도 11은 도트 위치와 그 도트 위치에 인접한 곳으로 확산되는 오차부를 도시한 도면,
도 12는 도 10과 마찬가지로, 중간 톤 범위에서의 가시적인 결함을 방지하기 위해 사전렌더링된 중간 톤 비트맵이 사용되는 톤 종속 면 종속 오차 확산 하프톤 방법의 다른 실시예를 도시한 도면,
도 13은 도 12의 방법에서 사용될 수 있는 사전렌더링된 중간 톤 비트맵의 일 실시예의 그래프도,
도 14는 동일한 밝은 청색 톤 값을 생성하기 위한 도 1 및 도 2의 도트 패턴과 대조될 본 발명의 오차 확산 방법을 사용하여 프린트된 시안 및 마젠타 도트의 도트 패턴의 일례를 도시한 도면이다.
도면의 주요 부분에 대한 부호의 설명
10 : 컬러 잉크젯 프린터 11 : 커버
12 : 페이퍼 트레이 15 : 출력 트레이
16 : 컬러 프린트 카트리지 18 : 스캐닝 캐리지
20 : 슬라이드 바 22 : 호스트 컴퓨터
23 : 모니터 24 : 프린터
25 : 3색 잉크젯 프린트 카트리지
26: 흑색 잉크젯 프린트 카트리지 28: 프린터 컨트롤러
본 발명은 컬러 이미지 처리 방법에 관한 것으로, 구체적으로는, 상이한 컬러면 및 톤(tone)으로부터 프린트된 도트(dot)들을 상관시켜 시각적으로 보다 만족스러운 상이한 컬러 도트들의 조합과, 보다 우수한 도트 배열을 생성하기 위한 오차 확산 하프톤 방법에 관한 것이다.
차트, 도면, 및 그림과 같은 이미지들은 2차원의 픽처 소자(픽셀) 매트릭스로 표현될 수 있다. 각 픽셀에 대한 공간 해상도와 톤 레벨은 사용되는 특정 출력 장치에 대응하도록 선택된다. 가령, 전형적인 컴퓨터 모니터는 인치당 75개의 도트, 즉, 75 DPI로 이미지를 디스플레이하며, 각 컬러에 대해 256 레벨의 세기를 갖는다. 그러한 모니터는 가색(additive primary colors), 즉, 적색, 녹색, 및 청색(RGB)을 사용하며, 이들은 수백만의 컬러를 생성하고 또한 흑색을 만들기 위해 조합될 수 있다.
잉크젯 프린터와 같은 전형적인 하드카피(hardcopy) 출력 장치는 바이너리 장치(binary device)로서, 이 장치는 프린트 매체 상의 이용가능한 도트 위치 혹은 각 픽셀에 대해 두 개의 레벨, 즉, 온 혹은 오프로만 프린트할 수 있다. 따라서, 컬러 이미지의 모니터 기반 버전(컬러당 256 톤 레벨)이나 컬러 이미지의 다른 버전을 이진 버전(컬러당 2레벨)으로 변환하는 소정 수단이 제공되어야 한다. 이러한 변환 방법들은 통상적으로 하프톤 방법(halftoning)이라고 지칭된다. 하프톤 방법은 로버트 울리치니(Robert Ulichney)의 문헌, "디지털 하프톤 방법(Digital Halftoning)", The MIT Press, 1987에 기재되어 있는데, 이는 본 명세서에서 참고로 인용되고 있다.
하프톤에 대한 한 가지 주요 방법은 오차 확산법이다. 도트의 프린트 여부에 관한 판정은 그 픽셀에 대한 "이상적인" 세기(즉, 256개의 가능한 세기 중의 하나)뿐 아니라 사전에 처리된 픽셀에 대해서 이전에 발생하였던 것에도 토대를 두고 있다.
아래의 설명에서는 0과 255 사이의 범위에는 256개의 픽셀 세기가 존재하고 있음을 가정하고 있다. 종래의 오차 확산법에서, 도트가 프린트될 수 있는 각각의 포인트(point)에서 0과 255 사이의 원본 이미지 픽셀 세기 플러스 누적 오차값은 사전 선택된 임계값과 비교된다. 만약 이미지 픽셀 세기가 임계값을 초과한다면, 그 픽셀에는 도트(255 세기)가 할당된다. 만약 그렇지 않다면, 도트(0의 세기)가 할당되지 않는다. 여하튼, 그 포인트에 대해 할당된 실제의 도트값(0 또는 255)과 이상적 픽셀 세기 플러스 누적 오차값 간의 세기 차이가 도출되고, 이 차이는 다른 후속적으로 처리될 픽셀에 확산되는 오차항이 된다. 다시 말해서, 확산된 오차항은 이미지 픽셀 세기 플러스 다른 후속 처리되는 픽셀의 누적 오차값에 부가되며, 그 후 이 전체 최종적인 이미지 픽셀 세기가 오차 확산 임계값에 비교되어 도트가 프린트되어야 하는지가 판정된다. 프린트된 출력의 최종적인 결과에 대해 가장 시각적인 효과가 있는 오차 확산 하프톤에서의 파라미터들은 임계값, 오차 가중값 및 오차 확산의 방향이 된다.
전형적으로, 오차 확산 임계값은 정적이며, 가령 이론적인 최대 이미지 픽셀 세기의 50퍼센트가 된다. 가령, 픽셀당 256개의 톤 레벨(0내지 255)이 존재한다면, 128의 레벨이 임계값으로서 선택될 수도 있다. 그러나, 로버트 울리치니(Robert Ulichney)의 문헌 "디지털 하프톤 방법(Digital Halftoning)", MIT Press, 1987, page 265에 기재되어 있는 바와 같이 임계값을 랜덤하게 변화시킴으로써, 프린트된 출력의 품질에 대한 개선점이 달성될 수 있다.
또한, 전형적인 오차 확산 방법은 일정 가중 계수를 사용하여 각각의 주변 픽셀에 확산되는 오차의 비율을 계산한다. 널리 알려져 있는 오차 확산 방법은 알 플로이드(R. Floyd) 및 엘 스테인버그(L. Steinberg)의 논문 "공간 그레이 스케일에 대한 적응성 알고리즘(Adaptive Algorithm for Spatial Grey Scale)", SID Int'l. Sym. Digest of Tech. Papers, pp. 36-37(1975)에 기재되어 있는데, 이는 본 명세서에서 참고로 인용되고 있다. 플로이드 및 스테인버그의 오차 확산 방법은 오차를 한 세트의 4개 주변 픽셀로 확산시킨다. 또한, 네 개의 항보다는 높은 항을 갖는 오차 확산 방법도 사용될 수 있다. 본 출원인의 미국 특허 제 5,313,287호는 다른 오차 확산 방법을 개시하고 있으며, 이는 본 명세서에서 참고로 인용되고 있다.
톤 종속 오차 확산 방법으로 알려진 다른 형태의 오차 확산 방법은, 처리중인 픽셀의 세기 혹은 톤에 따라, 오차 확산 임계값 및 오차 가중값을 변화시키고 있다. 톤 종속 오차 확산 방법은 에쉬바취(Eschbach, E.)의 논문 "입력 종속 가중 수단에 의한 오차 확산에서의 결함 감소(Reduction of Artifacts in Error Diffusion by Means of Input-Dependent Weights)", Journal of Electronic Imaging, vol.2(4), October 1993, 슈 제이(Shu, J.)의 논문 "오차 확산 품질 개선을 위한 적응성 필터링(Adaptive Filtering for Error Diffusion Quality Improvement)", SID Digest of Technical Papers, May 1995, 미국 특허 번호 제 5,737,453호 및 제 5,757,976호에 개시되는데, 이들은 모두 본 명세서에 참고로 인용되고 있다. 톤 종속 오차 확산 방법은 전형적으로 단색성이다.
컬러 이미지를 프린트할 때, 시안, 마젠타 및 황색과 같은 멀티 컬러에 대한 도트들은 다양한 조합으로 프린트되어 원본 컬러 이미지를 재생시키기 위한 소정의 컬러 톤을 형성한다. 수 많은 주지의 오차 확산 방법은 한 번에 하나의 컬러면(가령, 시안, 마젠타 혹은 황색) 상에서 동작한다. 이러한 형태의 오차 확산 방법은 각 개별의 컬러에 대해서, 나머지 컬러에 대한 도트들의 패턴과는 무관하게 시각상 만족스런 도트 패턴(즉, 분산된 도트)을 생성하고자 한다. 랜덤한 기회로 인해, 이러한 중첩하는 컬러 도트 패턴들은 도 1에 도시된 바와 같이 필연적으로 상이한 두 개 이상의 컬러를 서로 인접하게 하거나 중첩시키는데, 이는 육안에 의해 도트의 클럼핑(clumping)으로서 인식되고 있다.
도 1은 마젠타 도트(4) 및 시안 도트(6)를 사용하여 종래의 멀터 컬러의 도트 패턴의 일례를 도시하고 있다. 전체의 톤은 밝은 청색이다. 시안 및 마젠타 면이 중첩하는 경우, 인접한 시안 및 마젠타 도트(가령, 위치 7에서)로 인한 만족스럽지 못한 도트 패턴이 랜덤한 기회로 인해 형성될 수 있다.
다른 주지의 오차 확산 방법은 동시에 멀티 컬러면상에서 동작하는데, 이러한 것은 면 종속성으로서 알려져 있으며, 이는 본 출원인이 1997년 6월 3일에 "오차 확산 하프톤을 위한 시안 및 마젠타 면의 상관(Correlating Cyan and Magenta Planes for Error Diffusion Halftoning)"이라는 명칭으로 출원한 미국 특허 출원 제 08/880,475호에 개시되고 있으며, 이 또한 본 명세서에 참고로 인용되고 있다. 멀티 컬러면, 가령, 시안 및 마젠타 면은 상관되어, 조합된 100퍼센트의 충진시까지 서로의 상부면상에는 나타나지 않는 도트 패턴을 생성한다. 그 결과, 보다 어두운 "청색" 도트(마젠타와 중첩하는 시안은 어두운 청색을 생성함)의 발생이 회피되어, 다른 방법으로 입상성(grainness)을 지각하게 하는 백색 공간을 채운다. 따라서, 보다 시각적으로 만족스러운 도트 패턴이 생성된다.
도 2는 면 종속 오차 확산 방법을 사용하여 프린트되는 시안 및 마젠타 도트들의 도트 패턴의 일례를 도시하고 있다. 도시된 바와 같이, 도 2는 인접하거나 중첩한 시안 및 마젠타 도트들이 존재하지 않기 때문에 도 1보다 개선된 것이다.
그러나, 도 2에 도시된 바와 같이, 면 종속 하프톤의 결점은 밝은 톤에서의 도트들의 상대적인 공간 배치가 최적화되어 있지 않다는 것이다. 그 결과, 밝은 톤 또는 중간 톤에서, 패턴들이 프린트된 출력으로 전개될 수 있다. 이러한 패턴들은, 오차가 이미지를 통해 캐스케이드할 수 있는 방식 때문에 발생하여 프린트된 도트들의 곡선을 재생한다. 이러한 이형(anomalies)은 이미지에서 작고 가느다란 벌레와 유사하기 때문에 "웜(worms)"이라고 지칭된다.
전술한 바와 같이, 만족스러운 도트 패턴을 생성하는 데에 톤 종속 오차 확산 방법이 사용되었지만, 톤 종속 오차 확산 방법은 단색성이다. 결과적으로, 컬러 이미지를 갖는 톤 종속 오차 확산 방법의 사용은, 각각의 컬러가 개별적으로 만족스러운 패턴을 가질 수 있지만 조합될 경우 랜덤으로 중첩되는 이미지를 발생시킨다.
따라서, 컬러의 부주의한 중첩이 없이 균일한 패터닝을 생성하도록 상관되는 다수의 컬러를 갖는 프린트된 출력을 제공하는 컬러 하프톤 방법이 필요하다.
본 발명은 이미지 픽셀로 구성되는 이미지를 처리하기 위한 방법 및 시스템을 제공하며, 각각의 이미지 픽셀은 소정의 톤 레벨을 갖는다. 본 발명의 방법은 톤 종속 면 종속 오차 확산 하프톤 방법을 이용하여 프린터와 같은 디지털 출력 장치상에 출력하기 위한 이미지를 처리한다. 톤 종속 면 종속 오차 확산 하프톤 방법은 임의의 컬러면에서의 도트의 배열을 결정할 때 시안 및 마젠타와 같은 여러 개의 컬러면을 고려하고 있다. 상관된 컬러면의 조합된 톤은 상관된 컬러면의 조합 톤 및 누적 오차값이 비교될 임계값을 결정하는 데 사용된다. 또한, 톤 종속 오차 가중값들은 상관된 컬러면의 조합 톤에 기초하여 결정된다. 톤 종속 오차 가중값은 각각의 컬러면에 대한 최종의 누적 오차값을 확산시키는데 사용된다. 이러한 기법을 사용하게 되면, 현저한 도트 클럼핑을 방지하기 위해 두 개 이상의 컬러들의 프린트된 도트들이 분산되어 더욱 균일한 패턴이 제공되고, 컬러들의 의도되지 않은 중첩이 방지된다.
본 발명에 따른 방법은, 각각의 픽셀 위치에 대해, 도트를 프린트하지 않는지, 상관된 컬러면 중의 한 도트를 프린트하는지, 혹은 두 개의 도트를 프린트하는지를 결정한다. 두 개의 도트들은 만약 (1) 면 종속 컬러로부터의 조합 톤이 전체의 세기 임계값(100퍼센트 충진)을 초과하는 경우, 즉, 도트가 프린트되어야 함을 나타내는 톤 값을 픽셀이 갖는 경우와 (2) 면 종속 컬러로부터의 조합 톤 및 누적 오차값이 톤 종속 임계값을 초과하는 경우에 프린트된다. 프린트되는 두 개의 도트들은 바람직하게는 동일한 컬러는 아니다. 하나의 도트는 만약 (1) 혹은 (2) 중의 어느 하나가 사실인 경우에 프린트되고, 만약 (1)이나 (2) 중의 어느 것도 사실이 아니라고 하면 어떠한 도트도 프린트되지 않는다. 컬러면들이 상관되기 때문에, 상관된 컬러의 도트 프린트는 프린트된 도트들이 의도되지 않게 중첩할 가능성이 감소한다.
따라서, 오차 확산 방법은, 픽셀을 나타내는 데 도트를 프린트하지 않을 것인지, 하나의 도트를 프린트할 것인지, 혹은 두 개의 도트를 프린트할 것인지를 결정할 때, 픽셀의 톤 레벨 및 다수의 컬러면을 고려하고 있다. 이러한 방법은 대부분의 기존 오차 확산 방법을 향상시키는데 사용될 수 있다. 바람직한 방법에서, 마젠타와 시안 컬러면 간의 상관만이 수행되고 황색면과의 상관은 수행되지 않는다. 이러한 것은 시안 및 마젠타면이 황색면보다 더 어둡기 때문이며, 인접하거나 중첩하는 시안 및 마젠타 도트들이 황색 도트에 인접하는 시안 혹은 마젠타보다 훨씬 더 현저하기 때문이다. 그러나, 세 개 이상의 컬러면과의 상관은 본 명세서에서 설명한 방법을 사용하여 수행될 수 있다.
도 3은 본 명세서에서 설명한 모든 혹은 일부의 오차 확산 방법을 실행하기 위한 처리 회로를 포함하는 한 종류의 컬러 잉크젯 프린터(10)를 도시하고 있다. 컬러 잉크젯 프린터는 커버(11), 원지(virgin paper)(14)를 보유하는 페이퍼 트레이(12), 프린트된 페이지를 수용하기 위한 출력 트레이(15), 컬러 프린트 카트리지(16), 및 도트들이 페이퍼 상에 프린트되는 동안 슬라이드 바(20)를 따라 슬라이딩하기 위한 스캐닝 캐리지(scanning carriage)(18)를 포함하고 있다. 컬러 프린트 카트리지(16)는 여러 개의 잉크, 가령, 시안(C), 마젠타(M), 황색(Y) 및 흑색(K) 잉크를 포함하고 있다.
도 4는 호스트 컴퓨터(22), 모니터(23)(가령, CRT), 프린터(24)를 포함하는 프린팅 시스템의 개략적 도면을 나타내고 있다. 프린터(24)는 스캐닝 캐리지 내의 흑색 잉크젯 프린트 카트리지(26)와, 3색 컬러(CMY) 잉크젯 프린트 카트리지(25) 혹은 다수의 개별적인 컬러 잉크젯 프린트 카트리지를 사용하는 컬러 잉크젯 프린터의 한 종류이다. 도 3의 프린터(10)는 컴퓨터(22)에 접속될 수도 있다. 프린터(24)는 프린트 카트리지(25, 26)에 의하여 도트의 프린트를 제어하는 프린터 컨트롤러(28)를 포함하고 있다. 프린트 카트리지는 300 DPI, 600 DPI, 혹은 임의의 다른 해상도로 프린트할 수 있다.
도 5는 컴퓨터(22)로부터 프린터(24)로의 이미지 정보의 표준 흐름을 도시하고 있다. 먼저, 이미지가 생성되거나 컴퓨터(22)의 메모리로 입력된다. 이 이미지를 컴퓨터 모니터(23)상에 디스플레이하기 위해서, 이 이미지는 가법 RGB 컬러 공간에 표시된다. 스크린 상의 각 픽셀의 위치는 256(0 내지 255) 레벨의 세기 혹은 톤 중의 임의의 하나의 레벨로 적색, 녹색 및 청색으로 조사될 수 있다. 256 레벨(28=256)을 나타내는 데에는 8비트가 필요하다. 3원색 각각은 8비트를 필요로 하기 때문에, RGB 컬러 모니터는 통상적으로 24-비트 컬러(3×8=24)를 생성하는 것으로 간주된다. 이러한 이미지는 특정 모니터의 공간 해상도에 표시된다. 전형적인 모니터는 수직 및 수평 방향으로 75 DPI를 갖는다.
단계 30에서, 24-비트 RGB 컬러 이미지는 모니터(23) 상에 디스플레이될 수 있도록 컴퓨터(22)의 메모리 내에 저장된다.
단계 32에서, 메모리 내의 이미지는 프린터의 해상도에서 24-비트 RGB 이미지로 변환된다. 전형적인 잉크젯 프린터는 300, 600, 혹은 1200 DPI의 해상도를 갖는다. 프린터가 전형적으로 CMY 혹은 CMYK 감법 컬러로 프린트하지만, 단계 32에서의 이미지 처리 목적을 위해서는 상기 프린터가 RGB 장치인 것으로 간주하는 것이 편리하다. 이것은, 컬러 모니터의 RGB 값을 CMY로 사후 직접 변환하는 것이 통상적으로 색도 정합(colorimetric match)을 만들기 때문이다. 그러나, 모든 정합 값이 동일한 이미지 품질을 만드는 것은 아니다. 일부 선택은 다른 것보다 더 많은 시각적 잡음을 가질 수 있지만, 다른 선택은 이미지의 하프톤 전이에 바람직하지 않은 불연속을 초래할 수도 있다.
단계 34에서, 프린터 RGB 컬러 이미지는 참조표 혹은 다른 종래의 변환 수단을 사용하여 CMY 컬러 공간으로 변환된다. 물론, RGB 컬러 이미지는 유사한 방식으로 CMYK 컬러 공간으로 변환될 수 있다.
단계 36에서, CMY 이미지는 3면(CMY)의 컬러당 8-비트의 이미지를 프린터의 DPI 해상도로 바이너리 컬러(온 혹은 오프 도트)의 3면으로 변환하도록 하프톤된다. 다시 말해서, 각 픽셀 위치에서의 컬러 및 톤(0 내지 255)은 프린트될 C, M, 또는 Y 도트(0 또는 255의 세기)의 온 혹은 오프 패턴으로 변환된다. 이러한 하프톤 이미지(이는 전체 이미지의 일부분일 수 있음)는 메모리 내에 저장된다. 단계 36은 나중에 보다 상세히 설명된다.
단계 38에서, 하프톤 이미지는 통상적으로 휴렛 팩카드 캄파니의 프린터 제어 언어(PCL)에서 확인된 것과 같은 에스케이프 시퀀스(escape sequence)와 같은 효율적인 통신 기법을 사용하여 프린터로 송신된다. 단계 36에서 생성된 이미지는 페이지 상의 각 픽셀 위치와 도트들의 위치들에서 프린트될 각각의 컬러의 도트의 수가 얼마나 되는지에 관한 모든 정보를 포함하고 있다. 프린터 컨트롤러(28)(도 4)는 이러한 도트들이 언제 프린트되어야 하는지(즉, 단일 경로로 혹은 다중 경로로)를 결정한다. 잉크젯 프린트의 특성으로 인해, 가끔은 도트들을 하나 이상의 경로에 위치시켜 임의의 형태의 체커보드 혹은 다른 적은 빈도의 패턴에서의 개별적인 경로를 프린트하는 것이 유리하다. 또한, 이러한 간극 패턴(interstitial pattern)을 갖는 경로들을 중첩시켜 줄(swath)간에 발생할 수도 있는 결함을 숨기는 것이 유리하다. 도트들이 위치할 경로와 패턴을 결정하는 이러한 과정은 "프린트 모드"라고 지칭된다.
하프톤 단계 36은 나머지 도면을 참조로 하여 상세히 설명된다. 따라서, 도 5의 단계 34는 완료되었으며 이제 하프톤 단계가 수행되어야 한다고 가정된다.
프린터에 따라, 도 5와 관련하여 논의되는 기능들은 호스트 컴퓨터(처리 기능들을 수행하도록 프로그래밍됨) 혹은 프린터에 의해 수행될 수 있다. 가령, "스마트 프린터(smart print)"에서, 단계 32 내지 단계 38은 모두 프린터에서 수행될 수 있다. 한편, 프린터에서 메모리 코스트를 절약하기 위해, 모든 혹은 일부의 기능 32 내지 38은 호스트 컴퓨터에서 수행될 것이다.
하프톤 단계 이전에, 전색 이미지에 대한 별도의 이미지 표현이 프린트될 주요 컬러(C, M, 혹은 Y)의 각각의 면에 저장된다. 이러한 것은 도 6 내지 도 8과 관련하여 기술된다.
도 6은 컴퓨터 모니터의 해상도에서의 전색 이미지의 40개 픽셀을 3×3 블록으로 도시하고 있다. 각각의 픽셀은 밝은 청색(LB)으로서 인식되는 컬러 세기를 갖는다. 다음의 가정은 모든 범위의 컬러 세기를 전달하기 위해 픽셀당 톤의 범위가 0 내지 255의 범위에 있다는 것이다. 도 7 및 도 8은 도 6과 동일한 3×3 픽셀 블록을 나타내지만, 전체의 밝은 청색 세기를 생성하기 위해 각각의 픽셀 영역에 필요한 시안 톤(도 7)을 255 중의 44로 나타내고, 마젠타 톤(도 8)을 33으로서 나타내고 있음을 보여준다. 두 개의 면에서 시안 및 마젠타 톤의 조합은 최종의 바람직한 컬러 톤을 생성한다. 시안 및 마젠타 톤은, 세기 255가 시안 혹은 마젠타 도트로 완전히 충진된 영역의 도트의 수에 비례한다. 원래의 픽셀 위치당 실질적인 도트 수는 원본 이미지의 해상도(픽셀 세기)와 프린터의 해상도(DPI)에 따라 달라진다.
오차 확산 방법은, 잠재적인 도트 위치를 나타내는 각각의 포인트에 대해, 통상적으로 하드 카피 출력 장치가 프린트할 것(가령, 0 또는 255 톤의 시안 도트)과 실제의 이미지 픽셀 톤(가령, 44 톤의 시안 도트) 사이의 차이를 식별하고자 한다. 이러한 오차가 존재하지 않는 경우 오직 이미지 픽셀 톤이 정확히 255(도트가 프린트되어야 함) 혹은 0(도트가 프린트되지 않아야 함)인 경우이다. 그러나, 그러한 환경은 드물다. 결과적으로, 통상적으로는 오차가 존재한다. 만약 도트가 프린트되고 톤 레벨이 255미만인 경우 오차는 포지티브이다(즉, 이미지 픽셀에 의해 실제로 요구되었던 것보다 큰 톤 레벨이 프린트된다). 만약 도트가 프린트되지 않고 이미지 픽셀 톤이 제로를 초과한다면, 오차는 네가티브이다(즉, 이미지 픽셀에 의해 요구되었던 것보다 작은 톤 레벨이 프린트된다). 오차 확산 방법은 이러한 오차를 인접하는 픽셀에 분산시키고자 한다.
아래의 예에서의 가정은, 재생될 도 6의 밝은 청색 톤이 도 7 및 도 8에 도시된 시안 및 마젠타 톤과 함께, 시안 및 마젠타 도트들의 조합을 필요로 하고 있다는 것이다.
본 발명의 방법은 처리되는 각 픽셀에 대해 시안 및 마젠타 모두를 프린트할 수 있다. 이전에 프린트된 시안 도트들의 누적 오차값에 기초하여, 시안 도트를 프린트할지의 여부를 평가하는 표준 오차 확산 방법 대신에, 보다 바람직한 오차 확산 방법은, 이전의 시안 및 마젠타 도트의 조합된 오차값에 기초하여, 어떠한 도트도 프린트되지 않는 것인지, 시안 및 마젠타 중의 하나의 단일 도트가 프린트되어야 하는지, 혹은 시안 및 마젠타로 구성되는 두 개의 도트가 프린트되어야 하는지를 결정한다. 본 발명의 방법은, 각 픽셀에서의 컬러의 톤 레벨에 기초하여 최적의 임계값과 오차 가중값을 결정하는 단계를 수반한다. 일 실시예에서, 중간 톤에서 발생할 수도 있는 현저한 구조의 패턴을 방지하는 데에는 사전 렌더링된 중간 톤 비트맵이 사용된다. 만약 사용된다면, 사전 렌더링된 비트맵은 보다 상세히 후술되는 바와 같이 톤 종속 임계값에 링크된다.
최적의 톤 종속 오차 확산 임계값과 오차 가중값은, 각각의 톤에 대한 패치 세트를 상이한 파라미터 범위에 걸쳐 프린트하고 시각적으로 가장 만족스럽게 보이는 패치 및 대응하는 파라미터를 선택함으로써, 수작업으로 결정될 수 있다. 필요에 따라, 톤 종속 임계값과 오차 가중값을 생성시키는 다른 방법이 사용될 수도 있다.
본 발명은, 톤 종속 및 면 종속의 조합을 사용하여, 각 픽셀에 대해 도트를 프린트하지 않거나 하나의 도트 혹은 두 개의 도트를 프린트한다. 두 개의 도트는 만약 (1) 면 종속 컬러로부터의 조합된 톤이 전체 세기 임계값, 즉, 100퍼센트의 충진 임계값을 초과하는 경우와, (2) 면 종속 컬러로부터의 조합된 톤과 누적 오차값이 톤 종속 임계값을 초과하는 경우에 프린트된다. 프린트되는 두 개의 도트들은 바람직하게는 동일한 컬러가 아니다. 따라서, 가령, 시안 도트가 프린트되고 그 후속하여 마젠타 도트가 프린트되어(혹은 그 반대로 되어) 어두운 청색 도트를 형성한다. 하나의 도트는 (1) 혹은 (2) 중의 어느 하나가 진실인 경우에 프린트되고, (1)과 (2) 어떠한 것도 사실이 아니라면 어떠한 도트도 프린트되지 않는다. 톤 종속 오차 가중값을 사용하게 되면, 면 종속 컬러에 대한 누적 오차값이 분산된다.
도 9 및 도 10은 본 발명의 일 실시예에 따른 톤 종속 면 종속 확산 하프톤 방법에서의 기본적인 단계를 나타내는 플로우차트이다.
도 9에 도시된 바와 같이, 단계 34로부터 변환된 CMY 이미지는 단계 50, 51, 52에 의해 수신된다. 단계 50, 51, 52에서, 상이한 컬러에 대한 톤 레벨은 처리되는 특정 픽셀에 대해 식별된다. 예를 들어, 시안, 마젠타 및 황색 톤이 결정된다. 단계 50 내지 52는 종래의 방법을 사용하여 동시에 수행될 수 있다. 가령, 처리되는 픽셀에 대한 8-비트 RGB 세기는, 참조표 혹은 다른 종래의 수단을 사용하여 CMY 컬러면에 대해 0 내지 255 톤 레벨로 상호 참조될 수 있다. CMY 톤을 결정하기 위한 단계는 도 5의 단계 34의 부분에서 수행된다.
단계 50 내지 52와 동시에 수행될 수도 있는 단계 54에서, 종속 컬러면에 대한 톤 레벨은 합산된다. 따라서, 시안 및 마젠타 면이 종속되는 경우, 시안 및 마젠타 톤 레벨의 입력 합산값(c+m)이 생성된다. 입력 합산값(c+m)이 0 내지 255의 범위내에 존재하는 개개의 c와 m 톤을 가산함으로써 획득되기 때문에, 입력 합산값(c+m)의 범위는 0 내지 510이 된다.
단계 56에서, 처리되는 픽셀에 대한 입력 합산값(c+m)은 100퍼센트 충진 임계값, 즉, 전체 세기 임계값인 255 미만인지의 여부가 결정된다. 픽셀은 100퍼센트 충진된다. 즉, 픽셀이 255 이상의 톤 값을 가질 때 픽셀에 대한 도트가 프린트될 것이다. 따라서, 만약 입력 합산값(c+m)이 전체 세기 임계값 255이상이라면, 면 종속 컬러 중의 하나의 도트를 프린트한다는 결정이 행해지며 처리는 단계 58로 이동한다.
단계 58에서, 컬러에 대한 현재의 전체값이 처리되는 픽셀에서 그 컬러에 대한 톤 레벨과 모든 누적 오차값의 합인 경우, 시안 및 마젠타에 대한 현재의 전체값을 비교함으로써, 시안 도트 혹은 마젠타 도트가 프린트되어야 하는지에 대한 결정이 행해진다. ce와 me가 사전 처리된 픽셀로부터의 시안 및 마젠타에 대한 각각의 누적 오차값인 경우, 시안에 대한 현재의 전체값(c+ce)이 마젠타에 대한 현재의 전체값(m+me)을 초과하거나 동일하다면, 단계 60에서 시안 도트가 프린트된다. 그러나, 이 시점에서 오차는 확산되지는 않는다. 대신에, 시안 도트가 단계 60에서 프린트되기 때문에, 수정된 누적 오차값(ce')은 사전 누적 오차값(ce) 마이너스 255와 동일한 값으로 생성된다. 단계 60에서는 마젠타 도트가 프린트되지 않기 때문에, 마젠타에 대한 수정된 누적 오차값(me')은 사전 누적 오차값(me)과 동일하다. 발광 플래그는 1로 설정되어, 제 1 도트가 그 픽셀에 대해 프린트되었음을 나타낸다.
한편, 시안에 대한 전체값(c+ce)이 마젠타에 대한 전체값(m+me) 미만인 경우, 단계 62에서 마젠타 도트가 프린트될 것이다. 마젠타 도트가 단계 62에서 발광되기 때문에, 마젠타에 대한 수정된 누적 오차값(me')은 사전 누적 오차값(me) 마이너스 255와 동일하게 생성된다. 시안 도트가 단계 62에서 프린트되지 않기 때문에, 시안에 대한 수정된 누적 오차값(ce')는 사전 누적 오차값(ce)와 동일하게 된다. 다시 발광된 플래그가 1로 설정되어, 도트가 프린트되었음을 나타낸다. 단계 60에서 시안 도트가 프린트되거나 단계 62에서 마젠타 도트가 프린트되는 경우, 처리는 도 10의 단계 64로 이동한다.
단계 56에서, 입력 합산값(c+m)이 100퍼센트 충진 임계값(255) 미만인 경우, 이 공정의 시점에서는 도트를 프린트하지 않는 것으로 결정된다. 도트가 발광되지 않았기 때문에, 단계 57에서, 발광된 플래그는 0으로 설정되며, 마젠타에 대한 수정된 누적 오차값((me')과 시안에 대한 수정된 누적 오차값(ce')은 각각 마젠타와 시안에 대해 사전 누적 오차값(me, ce)과 동일하게 규정된다. 다음에 처리는 도 10의 단계 64로 이동한다.
도 10에 도시된 바와 같이, 수정된 입력 합산값(m+c)'은 단계 64에서 생성된다. 수정된 입력 합산값(m+c)'은 원래의 입력 합산값(m+c) 마이너스 발광된 플래그의 값과 255의 곱과 동일하다. 따라서, 시안이나 마젠타 중의 하나가 단계 60 혹은 단계 62에서 프린트된다면, 발광된 플래그는 1이되며, 수정된 입력 합산값(m+c)'는 원래의 입력 합산값(m+c) 마이너스 255와 동일하며, 만약 그렇지 않다면, 수정된 입력 합산값(m+c)'은 원래의 입력 합산값(m+c)와 동일하다. 결과적으로, 도트가 이미 프린트되었건 그렇지 않던 간에, 수정된 입력 합산값(m+c)은 0 내지 255의 범위내에 존재할 것이다.
단계 64에서 톤 종속 참조표로부터 5개의 값을 수집하는 데에는 수정된 입력 합산 값(m+c)이 사용된다. 톤 종속 참조표는 톤 종속 임계값 레벨과, 네 개의 톤 종속 오차 가중값(W1, W2, W3, W4)을 제공하는데, 이들은 나중에 상세히 설명될 오차 분산에 사용될 것이다.
단계 66에서, 임계값 레벨은 발광된 플래그가 1이 되는 경우, 즉, 시안 혹은 마젠타 도트들이 단계 60 혹은 62에서 프린트된 경우에 수정되어, 픽셀에 대한 다른 도트를 프린트하는 것을 보다 곤란하게 만든다. 임계값 레벨은 임계값 레벨을 소정의 수, 가령, 실험적으로 결정된 80만큼 증가시킴으로써 수정된다. 물론, 원한다면, 임계값 레벨은 수정될 필요가 없거나 다른 소정의 양만큼 수정될 수도 있으며, 혹은 수정된 입력 합산값(m+c)'의 크기 및/또는 누적 오차값 ce' 및 me'의 크기와 같은 인자 뿐만 아니라 임의의 다른 유용한 인자에 종속하는 가변량만큼 수정될 수도 있다.
면 종속 컬러의 시안 및 마젠타에 대한 톤 레벨과 수정된 누적 오차값은 단계 68에서 함께 합산되어 수정된 전체 합산값(c+ce'+m+me')을 생성한다. 단계 70에서, 수정된 전체 합산값(c+ce'+m+me')은 톤 종속 임계값 레벨과 비교된다. 만약 수정된 전체 합산값(c+ce'+m+me')이 임계값 미만인 경우, 이 공정의 이 시점에서는 어떠한 도트도 프린트되지 않으며, 이 공정은 단계 72의 오차값 확산으로 이동한다. 그러나, 수정된 전체 합산값(c+ce'+m+me')이 임계값을 초과한다면, 도트를 프린트하는 결정이 이루어지며 처리는 단계 76으로 이동한다.
단계 76에서, 시안에 대한 수정된 전체값(c+ce')은 시안의 톤 레벨 플러스 시안에 대한 수정된 누적 오차값이 되며, 마젠타에 대한 톤 레벨 플러스 마젠타에 대한 수정된 누적 오차값이 되는 마젠타의 수정된 전체값(m+me')과 비교된다. 시안에 대한 수정된 전체값(c+ce')이 마젠타에 대한 수정된 전체값(m+me')을 초과하거나 같다면, 단계 78에서 시안 도트가 프린트되며, 그렇지 않을 경우 단계 80에서 마젠타 도트가 프린트된다. 단계 78에 도시된 바와 같이, 시안 도트가 프린트되기 때문에, 시안 누적 오차값은 다시 수정되어, 사전 수정된 누적 오차값(ce') 플러스 시안의 입력 톤(c) 마이너스 255와 동일한 시안의 최종 분산 오차값(ce'')를 생성하게 한다. 마젠타의 최종 분산 오차값(me'')은 사전 수정된 누적 오차값(me') 플러스 마젠타의 입력 톤(m)과 동일하다. 단계 80에서, 마젠타 도트가 프린트되기 때문에, 마젠타의 최종 분산 오차값(me'')은 사전 수정된 마젠타 오차값(me') 플러스 입력 톤(m) 마이너스 255와 동일하게 생성되는 한편, 시안에 대한 최종 분산 오차값(ce'')은 사전 수정된 오차값(ce') 플러스 입력 톤(c)과 동일하다. 다음에 처리는 단계 72에서 최종의 분산 오차값을 확산시킨다.
따라서, 도트를 프린트하는 결정이, 면 종속 컬러의 톤 레벨이 100퍼센트 충진 임계값을 초과하는지의 여부에 기초하여, 단계 56에서 이루어진다. 임의의 컬러의 도트가 프린트되었는지의 여부에 기초하여 면 종속 컬러의 톤의 합산값을 적절히 수정한 후, 수정된 입력 합산값에 기초하여 톤 종속 임계값 레벨이 결정된다. 도트를 프린트하는 다른 결정은, 면 종속 컬러의 톤 레벨 플러스 그들의 누적 오차값이 톤 종속 임계값을 초과하는지의 여부에 기초하여, 단계 70에서 이루어진다. 따라서, 단계 56 및 70은 도트를 프린트하지 않는지, 하나의 도트를 프린트하는지, 두 개의 도트를 프린트하는지를 결정할 수 있다.
단계 60 혹은 62에서 마젠타와 시안에 대한 누적 오차값이 수정되어 있기 때문에, 두 개의 도트가 프린트되는 경우, 동일한 컬러가 두 번 프린트되지 않는다. 따라서, 마젠타 도트는 단계 62에서 프린트되며, 그에 후속하여 단계 78에서 시안 도트가 프린트되거나, 단계 60에서 시안 도트가 프린트되고 그에 후속하여 단계 80에서 마젠타 도트가 프린트되지만, 본 실시예에서 두 개의 시안 도트 혹은 두 개의 마젠타 도트들이 프린트되지는 않는다. 중첩한 시안 및 마젠타 도트들은, 어두운 청색 도트를 생성하는데, 이는 특정 픽셀에서의 세기가 높을 때 적절할 수 있다. 두 개의 도트들이 중첩하는 것으로 기술되었지만, 프린트 카트리지의 연속적인 스캐닝으로 인해 도트들이 완전하게 중첩하지 않을 수 있다는 것을 이해해야 한다.
만약 단계 70에서, 수정된 전체 합산값(c+ce'+m+me')이 임계값 미만인 경우, 이 과정의 이 시점에서 도트는 프린트되지 않는다. 따라서, 픽셀은 도트가 없는 것으로 표시되거나, 만약 도트가 단계 60 혹은 62에서 프린트되었다면, 즉, 픽셀이 100퍼센트 충진되었다면 단지 하나의 도트만을 표시할 것이다. 도트가 프린트되지 않았기 때문에, 단계 81에서 시안에 대한 최종의 분산 오차값(ce')과 마젠타에 대한 최종의 분산 오차값(me')은 수정된 누적 오차값 플러스 시안의 입력 톤(ce')과 수정된 누적 오차값 플러스 마젠타에 대한 입력 톤(m+me')과 각각 동일한 것으로 규정된다. 다음에 처리는 단계 72로 이동한다.
단계 72에서, 단계 78, 80, 혹은 81로부터 시안 및 마젠타에 대한 최종 분산 오차값(ce'', me'')은 단계 64에서 결정된 톤 종속 오차 가중값 W1, W2, W3, W4로 승산된다. 다음에 시안 및 마젠타에 대한 가중된 오차값은 도 11에 도시된 바와 같이 근처의 픽셀로 확산된다.
본 발명의 일 실시예에 따르면, 도 11에 도시된 바와 같이, 4-항 오차 확산값이 사용된다. 따라서, 처리되는 현재의 픽셀로부터 유도되는 최종의 분산 오차값은 후속하는 수평 픽셀(95)과 다음의 행의 픽셀, 즉, 픽셀(96, 97, 98)로 확산된다. 이러한 인접하는 각각의 픽셀로 확산되는 오차값의 비율은 톤 종속 오차 가중값 W1, W2, W3, W4를 사용하여 결정된다. 후속하는 픽셀의 위치 95 내지 98에 대해 프린트되는 제로, 하나, 혹은 두 개의 도트의 결정은 그러한 픽셀에 대한 소정의 톤 레벨과, 픽셀(94)로부터의 분산 오차값 및 다른 픽셀로부터의 임의의 누적 분산 오차값에 기초를 두고 있다.
바람직한 실시예에서, 이미지의 각 행이 처리된 후, 처리의 방향은 오차 확산 방법이 사행 처리 시스템(serpentine processing system)을 사용하도록 반전된다. 따라서, 도 11의 미러 이미지는 처리 방향이 반전될 때 사용된다. 원할 경우 두 개의 사행 경로 처리 시스템 혹은 비사행 처리 시스템이 사용될 수도 있다.
황색 도트를 프린트하기 위한 결정은 시안 및 마젠타 도트들을 프린트하는 단계와 동시에 수행될 수 있다. 시안 및 마젠타 면과 황색 면을 상관시키게 되면, 시안 및 마젠타 도트들이 황색 도트들보다 더 어둡기 때문에 이익이 거의 없다. 황색 도트를 프린트하기 위한 결정은 도 11과 관련하여 기술된 오차 확산 방법을 사용하며, 단계 84, 86, 88, 90 및 92와 같은 도 9에서 도시된 단계들을 포함하고 있다. 마찬가지로, 흑색은 시안 및 마젠타로부터 별도로 하프톤될 수 있으며 여기서 흑색 도트는 시안 혹은 마젠타 도트와는 상이한 크기로 된다. 단계 64에 사용된 동일한 톤 종속 표는 황색 면(단계 84에서) 혹은 흑색 면 상에서 황색 혹은 흑색 면의 단일 값을 수정된 입력 합산값(m+c)'에 대해 대체함으로써 독립적으로 사용될 수 있다. 원한다면, 황색 면 및/또는 흑색 면은, 예를 들어, 시안 및 마젠타 도트와 동일한 크기인 흑색 도트를 사용하는 제품 내에서 도 9 및 도 10에서 기술된 방법을 스케일링함으로써 시안 및 마젠타 면과 상관될 수 있다.
의사 코드에서, 톤 종속 면 종속 오차 확산 하프톤 방법은 다음과 같다.
m=현재의 마젠타 입력값
c=현재의 시안 입력값
c_total=c+ 시안의 누적 오차값;
m_total=m+ 마젠타의 누적 오차값;
Input_sum=m+c:
Fired=0;
if(Input_sum≥255.0){//합산값을 체크하고, 그것이 만약 255를 초과한다면 그것을 발광함!
Fired=1;
if(m_total〉c_total)
{
마젠타 도트를 발광
m_total=m_total-255;
}
else
{
시안 도트를 발광
c_total=c_total-255;
}
}///end sum〉255
//이 시점에서 발광된 하나의 도트를 가질 수 있음
Input_sum=Input_sum-(FIRED*255);//만약 발광된 도트를 갖는다면, 합산값을 수정
Threshold_level=t[Input_sum][0];//톤 종속 표를 사용
Weight1=t[Input_sum][1];
Weight2=t[Input_sum][2];
Weight3=t[Input_sum][3];
Weight4=t[Input_sum][4];
if(fired)//이미 발광되었다면, 다시 발광하는 것을 보다 더 어렵게 만듦
{
Threshold_level=Threshold_level+80;
}
fired=0;
modified_sum=c_total+m_total;
if(Threshold_level〈Modified_sum//어떠한 면이 가장 높은 값을 갖는지를 알기 위해 체크하고 그것을 발광시킴
{
if(m_total〉c_total)
마젠타를 발광;
Else
시안을 발광;
}
마젠타의 오차값을 계산하고 W1,W2,W3,W4를 사용하여 배분
시안에 대한 오차값을 계산하고 W1,W1,W3,W4를 사용하여 배분.
전술한 오차 확산 공정 플러스 톤 종속을 갖는 면 종속 공정을 사용하게 되면 보다 우수한 도트 배치와 균일한 패터닝을 갖는 이미지를 생성하는 컬러 오차 확산 하프톤 방법을 생성할 수가 있다.
본 발명의 다른 실시예에서, 면 종속 톤 종속 오차 확산 하프톤 방법은 중간 톤, 즉, 대략 50퍼센트의 톤에 대한 사전 렌더링된 비트맵의 사용을 포함한다. 오차 확산 방법은 때때로 중간 톤의 이미지에서 구조화된 패턴을 생성한다. 사전 렌더링된 50퍼센트의 비트맵은 중간 톤에서 시각적 결함을 없애는데 사용된다.
사전 렌더링된 50 퍼센트의 비트맵을 사용하기 위해, 오차 확산 방법은 수정된 전체 합산값(c+ce'+m+me')이 중간 톤 범위 내에 존재하는지를 결정하며, 만약 그러하다면 비트맵이 이용되어 도트가 프린트되는지의 여부를 결정한다. 픽셀의 위치는 비트맵과 비교되며, 만약 비트맵이 1의 값을 갖는다면 도트는 프린트되고, 그렇지 않다면 도트는 프린트되지 않는다. 만약 수정된 전체 합산값(c+ce'+m+me')이 중간 톤 범위를 초과한다면, 도트는 프린트되고, 만약 수정된 전체 합산값(c+ce'+m+me')이 중간 톤 범위 미만이면 도트는 프린트되지 않는다.
사전 렌더링된 50 퍼센트의 비트맵을 사용하는 면 종속 톤 종속 오차 확산 방법은 도 12에 도시된다. 도 12는 도 9를 뒤따르며, 동일한 부호가 동일한 단계를 나타내는 바와 같이 도 10과 유사하다.
도 12에 도시된 바와 같이, 수정된 입력 합산값(m+c)'은 도 10에 도시된 단계 64와 동일한 방식으로 단계 65에서 생성된다. 수정된 입력 합산값(m+c)'은 다음에 톤 종속 참조표로부터 6개의 값을 수집하는 데 사용된다. 톤 종속 참조표는 두 개의 임계 레벨, 즉, 낮은 임계 레벨(threshold_low)과 높은 임계 레벨(threshold_high)과, 네 개의 오차 가중값(W1,W2,W3,W4)을 제공한다.
톤 종속 임계값 참조표의 일례는 부록 A(Appendix A)로서 본 명세서에 첨부되는데, 여기서 톤 레벨은 "그레이(gray)" 레벨이며, 상측 임계값은 "tu"이고 하측 임계값은 "tl"이다. 부록 A의 톤 종속 임계값 참조표는 도 10을 참조하여 논의된 바와 같이 가령 상측 임계값, 하측 임계값, 혹은 상측 및 하측 임계값의 평균 중의 어느 하나를 사용함으로써 단일의 임계값 레벨을 제공하는 데 사용될 수 있다.
톤 종속 오차 가중 참조표는 부록 B로서 본 명세서에 첨부되며, 여기서 톤 레벨은 그레이 레벨이고, w[0,1]은 도 11의 픽셀 95를 나타내고, w[1-1]은 도 11의 픽셀 98을 나타내고, w[1,0]은 도 11의 픽셀 97을 나타내고, w[1,1]은 도 11의 픽셀 96을 나타낸다. 물론, 부록 A의 톤 종속 임계값 참조표와 부록 B의 톤 종속 오차 가중 참조표는 하나의 표로 조합될 수 있다는 것을 이해해야 한다.
단계 67에서, 하측 및 상측 임계값 레벨은 도 10에 도시된 단계 66과 마찬가지로, 발광된 플래그가 1과 동일한 경우에 수정된다.
수정된 전체 합산값(c+ce'+m+me')이 단계 68에서 생성되며, 단계 71에서는 수정된 전체 합산값(c+ce'+m+me')이 하측 임계값과 비교된다. 만약 수정된 전체 합산값(c+ce'+m+me')이 하측 임계값 미만인 경우, 도트는 프린트되지 않으며, 처리는 단계 81을 통해 단계 72의 오차 확산으로 이동한다. 그러나, 만약 수정된 전체 합산값(c+ce'+m+me')이 하측 임계값을 초과한다면, 수정된 전체 합산값(c+ce'+m+me')은 단계 74에서 상측 임계값과 비교된다. 만약 수정된 전체 합산값(c+ce'+m+me')이 상측 임계값을 초과한다면, 처리는 도 10과 관련하여 위에서 기술된 단계 76으로 이동한다.
단계 74에서, 수정된 전체 합산값(c+ce'+m+me')이 상측 임계값을 초과하지 않고 따라서 그 수정된 전체 합산값(c+ce'+m+me')이 중간 톤 범위, 즉, 하측 임계값과 상측 임계값 사이에 존재한다면, 단계 82는 사전 렌더링된 중간 톤 비트맵을 사용하여 도트가 프린트되어야 하는지를 결정한다. 만약 비트맵이 픽셀 위치에서 1의 값을 갖는다면, 도트는 프린트되고, 단계 76은 시안 혹은 마젠타 도트를 프린트하는지의 여부를 결정하는데 사용된다. 한편, 픽셀 위치에서 비트맵의 값이 0인 경우, 도트는 프린트되지 않으며, 처리는 단계 72로 이동한다.
유용한 사전 렌더링된 중간 톤 비트맵의 프린트된 이미지는 도 13에 도시된다. 도 13의 비트맵은 본 기술 분야의 숙련가에게 잘 알려진 바와 같은 직접 바이너리 탐색 방법을 사용하여 생성되었다. 도 13의 비트맵은 프린트되는 전체 이미지를 커버하는 데 필요한 만큼 타일링(tile)될 수 있다. 물론, 원한다면 도 13에 도시된 것과는 다른 사전 렌더링된 중간 톤 비트맵이 사용될 수 있다. 또한, 원한다면, 사전결정된 임계값의 매트릭스를 사용하는 스크리닝(screening) 과정이 상기 사전 렌더링된 중간 톤 비트맵 대신에 사용될 수도 있다. 스크리닝은 본 기술분야의 숙련가에는 잘 알려진 기술이다.
따라서, 단계 71 및 단계 74는 수정된 전체 합산값(c+ce'+m+me')이 중간 톤 범위 내, 즉, 상측 및 하측 임계값 사이에 존재하는지 혹은 그 범위의 상측이나 하측에 존재하는지를 결정한다. 도 12는 두 개의 단계, 즉, 단계 71 및 단계 74에서 발생하는 과정을 도시하고 있으며, 이러한 결정이 하나의 단계 및/또는 임의의 순서로 행해질 수 있음을 이해해야 한다.
의사 코드에서, 전술한 과정은 다음과 같다.
m=현재의 마젠타 입력값
c=현재의 시안 입력값
c_total=c+ 시안의 누적 오차값;
m_total=m+ 마젠타의 누적 오차값;
Input_sum=m+c:
Fired=0;
if(Input_sum≥255.0){//합산값을 체크하고, 그것이 만약 255를 초과한다면 그것을 발광함!
Fired=1;
if(m_total〉c_total)
{
마젠타 도트를 발광
m_total=m_total-255;
}
else
{
시안 도트를 발광
c_total=c_total-255;
}
}///end sum〉255
//이 시점에서 발광된 하나의 도트를 가질 수 있음
Input_sum=Input_sum-(FIRED*255);//만약 발광된 도트를 갖는다면, 합산값을 수정
Threshold_low=t[Input_sum][0];//톤 종속 표를 사용
Threshold_high=t[Input_sum][1];
Weight1=t[Input_sum][2];
Weight2=t[Input_sum][3];
Weight3=t[Input_sum][4];
Weight4=t[Input_sum][5];
if(fired)//이미 발광되었다면, 다시 발광하는 것을 보다 더 어렵게 만듦
{
Threshold_low=Threshold_low+80;
Threshold_high=Threshold_high+80;
}
fired=0;
modified_sum=c_total+m_total;
if(Threshold_low〈Modified_sum〈Threshold_high)//비트맵을 사용
{
if(mid_tone_bitmap[at current location}==1)
fired=1;
}
else if(sum〉T1)
fired=1;
if(fired)//어떠한 면이 가장 높은 값을 갖는지를 알기 위해 체크하고 그것을 발광시킴
{
if(m_total〉c_total)
마젠타를 발광;
Else
시안을 발광;
}
마젠타의 오차값을 계산하고 W1,W2,W3,W4를 사용하여 배분
시안에 대한 오차값을 계산하고 W1,W1,W3,W4를 사용하여 배분.
본 발명이 시안, 마젠타, 및 황색을 참고하여 기술되고 있지만, 본 발명이 임의의 수의 컬러 잉크를 사용할 수 있다는 것을 이해할 수 있다. 따라서, 재생될 톤은 중간 시안 및 중간 마젠타 외에도, 밝은 시안, 밝은 마젠타, 어두운 시안, 및 어두운 마젠타와 같은 부가적인 면들의 조합에 의해 생성될 수 있다. 일부의 프린터는 시안, 마젠타, 황색, 오렌지색, 녹색, 및 흑색의 컬러면을 사용한다. 본 발명은 컬러 그룹 내의 인접하는 도트들이 프린트될 확률을 감소시키고 구조화된 패턴의 제거를 위해 모든 면들의 조합에 적용될 수도 있다.
바람직한 실시예에서, 참조표 및 오차 확산 과정을 제어하는 방법은 프린터 드라이버로서의 마이크로디스켓 혹은 플로피 디스켓과 같이, 컴퓨터 판독가능 매체 상에 제공된다. 이러한 프린터 드라이버는 다음에 도 4의 컴퓨터(22)와 같은 컴퓨터 내로 인스톨되고, 그에 따라 프로그램은 컴퓨터의 RAM에 설치된다. 그러한 프로그램은 또한 프린터에 설치될 수 있으며, 본 실시예에서는 프린터 내의 펌웨어에 설치될 수 있다. 이러한 프로그램은 프린트 모드 혹은 프린트헤드 파라미터뿐 아니라 다른 인자에 따라 달라질 수도 있다. 모든 논리 함수는 하드웨어 혹은 소프트웨어로 구현될 수 있다. 만약 하드웨어가 사용되면, 버스선을 통해 하프톤 방법을 구축하는 회로에 다양한 표 값이 이용될 수 있다. 이러한 방법은 또한 다양한 논리 장치 및 참조표뿐 아니라 이미지 비트맵으로의 데이터의 전송 및 타이밍을 제어하는 ASIC에 의해 수행될 수도 있으며, 이러한 것은 본 명세서를 통해 본 기술분야의 숙련가라면 충분히 이해할 수 있을 것이다.
도 14는 면 종속성의 장점과 톤 종속 파라미터의 우수한 도트 배치를 얻기 위해 본 발명에 따른 시안 도트(6)와 마젠타 도트(4)의 조합을 사용하여 프린트된 밝은 청색의 일례를 도시하고 있다.
비록 본 발명이 여분의 참조표와 이전의 하프톤 방법보다 더 계산적으로 복잡하게 하는 약간의 동작을 필요로 하지만, 전체 성능은 하프톤에 대한 다른 오차 확산 방법보다 단지 조금 더 저속으로 된다. 보다 우수한 도트 분포에서의 장점은 복잡성이 추가로 될 가치가 있다.
본 발명이 특정 실시예를 통해 기술되었지만, 본 기술 분야의 숙련가는 보다 넣은 의미에서 본 발명의 범위를 벗어나지 않는 범위 내에서 다양한 수정 및 변형을 가할 수 있음을 이해하며, 따라서 첨부된 특허청구범위는 본 발명의 사상 및 범위 내에 존재하는 모든 변형 및 수정을 포함할 것이다.
본 발명에 따르면, 두 개 이상의 컬러의 프린트된 도트들은 두 개 이상의 컬러의 현저한 도트 클럼핑(clumping of dot)을 방지하여 보다 균일한 패턴을 제공하고 컬러들의 부주의한 중첩을 방지할 수 있어, 임의의 기존의 오차 확산 방법을 향상시킬 수 있다.

Claims (10)

  1. 컬러 이미지를 프린트하기 위한 오차 확산 하프톤 방법(error diffusion halftoning)에 있어서,
    상기 컬러 이미지의 한 픽셀에서 다수의 컬러의 톤을 식별하는 단계(50-52)와,
    상기 다수의 컬러의 톤을 조합하여 입력 합산값을 생성하는 단계(54)와,
    상기 입력 합산값을 사용하여 임계값 레벨을 결정하는 단계(64)와,
    상기 픽셀에서의 상기 다수의 컬러에 대한 누적 오차값과 상기 다수의 컬러의 톤을 조합하여 전체 합산값을 생성하는 단계(68)와,
    상기 전체 합산값과 상기 임계값 레벨을 비교하여 상기 다수의 컬러 중의 하나의 도트를 프린트할 것인지의 여부를 결정하는 단계(70)를 포함하는
    오차 확산 하프톤 방법.
  2. 제 1 항에 있어서,
    상기 전체 합산값이 상기 임계값 레벨보다 더 큰 경우 어떠한 컬러의 도트를 프린트할 것인지를 결정하는 단계를 더 포함하며,
    상기 어떠한 컬러의 도트를 프린트할 것인지를 결정하는 단계는,
    제 1 컬러의 톤과 상기 제 1 컬러에 대한 누적 오차값을 합산하여 제 1 전체 합산값을 생성하는 단계와,
    제 2 컬러의 톤과 상기 제 2 컬러에 대한 누적 오차값을 합산하여 제 2 전체 합산값을 생성하는 단계와,
    상기 제 1 전체 합산값과 상기 제 2 전체 합산값을 비교하여 더 큰 전체 합산값을 갖는 컬러를 결정하는 단계(76)와,
    상기 더 큰 전체 합산값을 갖는 컬러의 도트를 프린트하는 단계(78, 80)를 포함하는 오차 확산 하프톤 방법.
  3. 제 2 항에 있어서,
    상기 입력 합산값을 사용하여 적어도 두개의 오차 가중값을 결정하는 단계(64)와,
    각각의 컬러 및 상기 도트가 프린트된 경우(단계(78, 80)) 그 컬러에 대한 누적 오차값에 기초하여 각각의 컬러에 대한 최종 분산 오차값을 생성하는 단계와,
    상기 적어도 두 개의 오차 가중값을 사용하여 각각의 컬러에 대한 상기 최종 분산 오차값을 확산시키는 단계(72)를 더 포함하는 오차 확산 하프톤 방법.
  4. 제 1 항에 있어서,
    상기 픽셀에 대한 전체 세기 임계값과 상기 입력 합산값을 비교하여 상기 다수의 컬러들 중의 하나의 제 1 도트를 프린트할 것인지를 결정하는 단계(56)를 더 포함하는 오차 확산 하프톤 방법.
  5. 제 4 항에 있어서,
    상기 다수의 컬러 중의 하나의 제 1 도트는 상기 입력 합산값이 상기 전체 세기 임계값보다 더 큰 경우 프린트되며, 상기 전체 합산값과 상기 임계값 레벨을 비교하는 단계는 상기 다수의 컬러들 중의 하나의 제 2 도트를 프린트할 것인지를 결정하는 오차 확산 하프톤 방법.
  6. 제 5 항에 있어서,
    상기 입력 합산값이 상기 전체 세기 임계값보다 더 큰 경우 어떠한 컬러의 제 1 도트를 프린트할 것인지를 결정하는 단계를 더 포함하며,
    상기 어떠한 컬러의 제 1 도트를 프린트할 것인지를 결정하는 단계는,
    제 1 컬러의 톤과 상기 제 1 컬러에 대한 누적 오차값을 합산하여 제 1 전체합산값을 생성하는 단계와,
    제 2 컬러의 톤과 상기 제 2 컬러에 대한 누적 오차값을 합산하여 제 2 전체 합산값을 생성하는 단계와,
    상기 제 1 전체 합산값과 제 2 전체 합산값을 비교하여 더 큰 전체 합산값을 갖는 컬러를 결정하는 단계(58)와,
    상기 더 큰 전체 합산값을 갖는 컬러의 제 1 도트를 프린트하는 단계(60, 62)를 포함하는 오차 확산 하프톤 방법.
  7. 제 6 항에 있어서,
    상기 입력 합산값으로부터 상기 전체 세기 임계값을 감산함으로써 상기 입력 합산값을 수정하여 수정된 입력 합산값을 생성하고, 상기 수정된 입력 합산값을 사용하여 상기 임계값 레벨을 결정하는 단계(64)와,
    각각의 컬러 및 제 1 도트가 프린트된 경우(60, 62)에는 그 컬러에 대한 상기 누적 오차값에 기초하여, 각각의 컬러에 대한 수정된 누적 오차값을 생성하고, 상기 다수의 컬러의 톤을 상기 다수의 컬러에 대한 상기 수정된 누적 오차값과 조합하여 상기 전체 합산값을 생성하는 단계(68)를 더 포함하는 오차 확산 하프톤 방법.
  8. 제 5 항에 있어서,
    상기 다수의 컬러들 중의 하나의 제 1 도트는 프린트되고, 상기 다수의 컬러들 중의 다른 하나의 제 2 도트는 프린트되며, 상기 제 1 도트와 제 2 도트는 적어도 부분적으로 중첩하도록 프린트되는 오차 확산 하프톤 방법.
  9. 제 7 항에 있어서,
    상기 전체 합산값이 임계값 레벨보다 더 큰 경우 어떠한 컬러의 제 2 도트를 프린트할 것인지를 결정하는 단계를 더 포함하며,
    상기 어떠한 컬러의 제 2 도트를 프린트할 것인지를 결정하는 단계는,
    제 1 컬러의 톤과 상기 제 1 컬러에 대한 수정된 누적 오차값을 합산하여 제 1 수정된 전체값을 생성하는 단계와,
    제 2 컬러의 톤과 상기 제 2 컬러에 대한 수정된 누적 오차값을 합산하여 제 2 수정된 전체값을 생성하는 단계와,
    상기 제 1 수정된 전체값과 제 2 수정된 전체값을 비교하여 더 큰 전체값을 갖는 컬러를 결정하는 단계(76)와,
    상기 더 큰 전체값을 갖는 컬러의 제 2 도트를 프린트하는 단계(78, 80)를 포함하는 오차 확산 하프톤 방법.
  10. 제 9 항에 있어서,
    상기 수정된 입력 합산값을 사용하여 적어도 두개의 오차 가중값을 결정하는 단계(64)와,
    각각의 컬러 및 상기 프린트된 제 2 도트(단계(78, 80))의 컬러에 대한 수정된 누적 오차값 및 입력 톤에 기초하여 각각의 컬러에 대한 최종 분산 오차값을 생성하는 단계와,
    상기 적어도 두 개의 오차 가중값을 사용하여 각각의 컬러에 대한 상기 최종 분산 오차값을 확산시키는 단계(72)를 더 포함하는 오차 확산 하프톤 방법.
KR1020000024176A 1999-05-07 2000-05-06 컬러 이미지를 프린트하기 위한 오차 확산 하프톤 방법 KR100681108B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/307,064 US6501564B1 (en) 1999-05-07 1999-05-07 Tone dependent plane dependent error diffusion halftoning
US09/307,064 1999-05-07
US9/307,064 1999-05-07

Publications (2)

Publication Number Publication Date
KR20010020817A KR20010020817A (ko) 2001-03-15
KR100681108B1 true KR100681108B1 (ko) 2007-02-08

Family

ID=23188092

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000024176A KR100681108B1 (ko) 1999-05-07 2000-05-06 컬러 이미지를 프린트하기 위한 오차 확산 하프톤 방법

Country Status (5)

Country Link
US (2) US6501564B1 (ko)
JP (1) JP2000354172A (ko)
KR (1) KR100681108B1 (ko)
BR (1) BR0001730A (ko)
GB (1) GB2352353B (ko)

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000244737A (ja) * 1999-02-24 2000-09-08 Fujitsu Ltd 中間調処理方法
US7054038B1 (en) * 2000-01-04 2006-05-30 Ecole polytechnique fédérale de Lausanne (EPFL) Method and apparatus for generating digital halftone images by multi color dithering
US6721063B1 (en) * 2000-01-19 2004-04-13 Xerox Corporation Image rendering system and method using sum and difference error diffusion with arbitrary and redundant colors
US8692844B1 (en) 2000-09-28 2014-04-08 Nvidia Corporation Method and system for efficient antialiased rendering
US6870645B1 (en) 2000-10-03 2005-03-22 Hewlett-Packard Development Company, L.P. Plane dependent matrix based halftoning
JP2002127393A (ja) * 2000-10-23 2002-05-08 Canon Inc 記録システムおよび記録方法
US7099046B2 (en) * 2000-11-30 2006-08-29 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US6995868B2 (en) * 2001-06-29 2006-02-07 Hewlett-Packard Development Company, L.P. Halftoning algorithm adapted to prevent unaesthetic output
JP2003110861A (ja) * 2001-09-28 2003-04-11 Seiko Instruments Inc カラー階調画像の階調再現方法および装置
JP2003116015A (ja) 2001-10-04 2003-04-18 Canon Inc 画像処理装置及び方法及びコンピュータプログラム及びコンピュータ可読記憶媒体
US7002708B2 (en) * 2001-10-29 2006-02-21 Hewlett-Packard Development Company, Lp. Delayed decision dot placement for plane-dependent CMYK error diffusion
US7199905B2 (en) * 2001-12-04 2007-04-03 Xerox Corporation Systems and methods for halftoning multiple color separation layers by interlayer error diffusion
US20030179410A1 (en) * 2002-03-21 2003-09-25 Velde Koen Van De Multilevel colour error-diffusion providing reduced sensitivity to printing process variability errors
JP3943981B2 (ja) * 2002-04-10 2007-07-11 キヤノン株式会社 画像処理装置及び方法
JP4047119B2 (ja) 2002-09-20 2008-02-13 キヤノン株式会社 画像処理装置及び画像処理方法
JP2004142388A (ja) * 2002-10-28 2004-05-20 Fuji Photo Film Co Ltd プリントシステム及びプリンタ
US20050219623A1 (en) * 2003-07-23 2005-10-06 Konica Minolta Holdings, Inc. Image processing apparatus and image processing method
EP1507404B1 (en) * 2003-08-14 2018-05-02 Sicpa Holding Sa Tone-dependent halftoning with optimized lookup tables
US8732644B1 (en) 2003-09-15 2014-05-20 Nvidia Corporation Micro electro mechanical switch system and method for testing and configuring semiconductor functional circuits
US8775997B2 (en) 2003-09-15 2014-07-08 Nvidia Corporation System and method for testing and configuring semiconductor functional circuits
US8768642B2 (en) 2003-09-15 2014-07-01 Nvidia Corporation System and method for remotely configuring semiconductor functional circuits
KR100601646B1 (ko) * 2003-11-26 2006-07-14 삼성전자주식회사 컬러오차확산 방법 및 장치
US8711161B1 (en) 2003-12-18 2014-04-29 Nvidia Corporation Functional component compensation reconfiguration system and method
US7362472B2 (en) * 2004-03-05 2008-04-22 Eastman Kodak Company Color error diffusion
US20050225806A1 (en) * 2004-03-17 2005-10-13 Niranjan Damera-Venkata Error diffusion using sub-pixel modulation
JP4293044B2 (ja) * 2004-04-21 2009-07-08 ブラザー工業株式会社 画像形成装置、画像形成方法及び画像形成プログラム
KR100611981B1 (ko) * 2004-05-01 2006-08-11 삼성전자주식회사 이미지의 하프토닝 방법 및 장치
US8723231B1 (en) 2004-09-15 2014-05-13 Nvidia Corporation Semiconductor die micro electro-mechanical switch management system and method
US8711156B1 (en) 2004-09-30 2014-04-29 Nvidia Corporation Method and system for remapping processing elements in a pipeline of a graphics processing unit
US7733532B2 (en) 2004-10-27 2010-06-08 Marvell International Technology Ltd. Laser print apparatus with dual halftones
US7639887B2 (en) * 2004-12-14 2009-12-29 Intel Corporation Error diffusion-based image processing
CN100364780C (zh) * 2005-01-07 2008-01-30 北京北大方正电子有限公司 一种随机使用多种图元对象进行图像光栅化的方法
US7626729B2 (en) * 2005-03-02 2009-12-01 Xerox Corporation Halftoning with color error diffusion of one separation based on color error diffusion of a previous separation
US8159720B2 (en) * 2005-04-08 2012-04-17 Xerox Corporation Color error diffusion
US7440140B2 (en) * 2005-04-29 2008-10-21 Hewlett-Packard Development Company, L.P. Sequential color error diffusion with forward and backward exchange of information between color planes
US7580074B2 (en) * 2005-05-10 2009-08-25 Primax Electronics Ltd. Digital halftoning technique based on 1-D multi-scale dot assignment
US8427496B1 (en) 2005-05-13 2013-04-23 Nvidia Corporation Method and system for implementing compression across a graphics bus interconnect
US7457015B2 (en) 2005-05-18 2008-11-25 Xerox Corporation Color printing
US8154777B2 (en) * 2005-08-09 2012-04-10 Xerox Corporation Color compensation of images
US7483029B2 (en) * 2005-12-15 2009-01-27 Nvidia Corporation GPU having raster components configured for using nested boustrophedonic patterns to traverse screen areas
US8698811B1 (en) 2005-12-15 2014-04-15 Nvidia Corporation Nested boustrophedonic patterns for rasterization
US8390645B1 (en) 2005-12-19 2013-03-05 Nvidia Corporation Method and system for rendering connecting antialiased line segments
US9117309B1 (en) 2005-12-19 2015-08-25 Nvidia Corporation Method and system for rendering polygons with a bounding box in a graphics processor unit
JP4622932B2 (ja) * 2006-05-11 2011-02-02 村田機械株式会社 画像処理方法、画像処理装置、コンピュータプログラム及び記録媒体
US8928676B2 (en) * 2006-06-23 2015-01-06 Nvidia Corporation Method for parallel fine rasterization in a raster stage of a graphics pipeline
US7564589B2 (en) * 2006-08-31 2009-07-21 Eastman Kodak Company Color error diffusion with error signal offsets
US8237738B1 (en) 2006-11-02 2012-08-07 Nvidia Corporation Smooth rasterization of polygonal graphics primitives
US8427487B1 (en) 2006-11-02 2013-04-23 Nvidia Corporation Multiple tile output using interface compression in a raster stage
US8482567B1 (en) 2006-11-03 2013-07-09 Nvidia Corporation Line rasterization techniques
US7679916B2 (en) * 2006-12-08 2010-03-16 GE Intelligent Platforms Embedded Systems, Inc. Method and system for extracting heat from electrical components
US7808512B1 (en) 2006-12-19 2010-10-05 Nvidia Corporation Bounding region accumulation for graphics rendering
US20080181092A1 (en) * 2007-01-26 2008-07-31 Mcclellan Paul J Halftoning curved images
JP4838769B2 (ja) * 2007-07-10 2011-12-14 キヤノン株式会社 画像処理装置および画像処理方法、並びに、インクジェット記録装置
US8724483B2 (en) 2007-10-22 2014-05-13 Nvidia Corporation Loopback configuration for bi-directional interfaces
US9064333B2 (en) 2007-12-17 2015-06-23 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US8780123B2 (en) 2007-12-17 2014-07-15 Nvidia Corporation Interrupt handling techniques in the rasterizer of a GPU
US8442959B2 (en) * 2007-12-19 2013-05-14 Verizon Patent And Licensing Inc. Methods and systems for automated processing of fallout orders
JP5137558B2 (ja) * 2007-12-20 2013-02-06 キヤノン株式会社 画像処理装置および画像処理方法
US7978371B2 (en) * 2008-02-05 2011-07-12 Xerox Corporation Vector half-toning with minimum luminance variation dot formation
US7952764B2 (en) * 2008-02-05 2011-05-31 Xerox Corporation Hierarchical color error diffusion in a CMYKRGB domain
JP5053903B2 (ja) 2008-03-31 2012-10-24 キヤノン株式会社 画像処理装置およびその方法
JP5121535B2 (ja) 2008-03-31 2013-01-16 キヤノン株式会社 画像処理装置およびその方法
US8923385B2 (en) 2008-05-01 2014-12-30 Nvidia Corporation Rewind-enabled hardware encoder
US8681861B2 (en) 2008-05-01 2014-03-25 Nvidia Corporation Multistandard hardware video encoder
US8179568B2 (en) * 2008-07-24 2012-05-15 Xerox Corporation Minimizing dot graininess in dot-on-dot printing devices
US7916349B2 (en) * 2008-10-27 2011-03-29 Xerox Corporation Color pixel error diffusion in a CMYK input color space
US8760725B1 (en) * 2008-11-12 2014-06-24 Marvell International Ltd. Tone dependent threshold perturbation error diffusion halftone
US8169665B2 (en) * 2009-03-30 2012-05-01 Silitek Electronic (Guangzhou) Co., Ltd. Tone dependent green-noise error diffusion method and printing device thereof
US8294964B2 (en) * 2009-04-08 2012-10-23 Xerox Corporation CMYK to CMYKKpRGB transform for halftone dot overlap control
JP2011055284A (ja) * 2009-09-02 2011-03-17 Seiko Epson Corp 画像処理装置、画像処理方法、および、プログラム
JP5487813B2 (ja) * 2009-09-02 2014-05-14 セイコーエプソン株式会社 画像処理装置、画像処理方法、および、プログラム
US20110063304A1 (en) * 2009-09-16 2011-03-17 Nvidia Corporation Co-processing synchronizing techniques on heterogeneous graphics processing units
US9530189B2 (en) 2009-12-31 2016-12-27 Nvidia Corporation Alternate reduction ratios and threshold mechanisms for framebuffer compression
US8391647B1 (en) 2010-02-17 2013-03-05 Hewlett-Packard Development Company, L.P. Pixel replacement
US9331869B2 (en) 2010-03-04 2016-05-03 Nvidia Corporation Input/output request packet handling techniques by a device specific kernel mode driver
US9171350B2 (en) 2010-10-28 2015-10-27 Nvidia Corporation Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up
US8681382B1 (en) * 2010-11-09 2014-03-25 Marvell International Ltd. Threshold matrix diffusion halftoning
JP5825856B2 (ja) * 2011-06-03 2015-12-02 キヤノン株式会社 画像形成装置、画像形成方法、および、プログラム
JP5825857B2 (ja) 2011-06-03 2015-12-02 キヤノン株式会社 画像形成装置、画像形成方法、および、プログラム
JP5773532B2 (ja) * 2012-06-19 2015-09-02 株式会社Screenホールディングス 画像データ生成方法、画像記録方法、画像データ生成装置および画像記録装置
US9591309B2 (en) 2012-12-31 2017-03-07 Nvidia Corporation Progressive lossy memory compression
US9607407B2 (en) 2012-12-31 2017-03-28 Nvidia Corporation Variable-width differential memory compression
US8922802B2 (en) 2013-02-21 2014-12-30 Ricoh Company, Ltd. Method and system for halftoning using energy minimization
US9710894B2 (en) 2013-06-04 2017-07-18 Nvidia Corporation System and method for enhanced multi-sample anti-aliasing
JP6130272B2 (ja) * 2013-08-29 2017-05-17 株式会社Screenホールディングス 画像データ生成方法、画像記録方法、画像データ生成装置および画像記録装置
CN105900412B (zh) * 2013-10-15 2018-11-06 惠普发展公司,有限责任合伙企业 使用基于内容的加权抖动进行图像处理的方法、图像处理器和打印机
JP6145031B2 (ja) * 2013-11-21 2017-06-07 株式会社Screenホールディングス 画像記録装置および画像記録方法
US9832388B2 (en) 2014-08-04 2017-11-28 Nvidia Corporation Deinterleaving interleaved high dynamic range image by using YUV interpolation
US10326911B2 (en) 2014-10-14 2019-06-18 Hewlett-Packard Development Company, L.P. Mitigating dot placement errors for a print job

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980079885A (ko) * 1997-03-06 1998-11-25 오오히라 아끼라 액정의 정제 방법
JPH1110918A (ja) 1997-06-23 1999-01-19 Hewlett Packard Co <Hp> 誤差拡散ハーフトーンの色相関補正方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5313287A (en) 1993-04-30 1994-05-17 Hewlett-Packard Company Imposed weight matrix error diffusion halftoning of image data
JPH07307866A (ja) * 1994-05-10 1995-11-21 Fuji Photo Film Co Ltd 画像信号2値化処理装置および方法
US6427030B1 (en) * 1994-08-03 2002-07-30 Xerox Corporation Method and system for image conversion utilizing dynamic error diffusion
JP3381755B2 (ja) 1994-10-11 2003-03-04 セイコーエプソン株式会社 画像の粒状性を減らすための改良された適応性のあるフィルタリングおよび閾値設定の方法及び装置
CA2169902A1 (en) 1995-03-16 1996-09-17 Allan Chiwan Cheung Combined color halftoning
US5737453A (en) 1996-05-17 1998-04-07 Canon Information Systems, Inc. Enhanced error-diffusion method for color or black-and-white reproduction
US6172768B1 (en) * 1998-02-05 2001-01-09 Canon Kabushiki Kaisha Halftoning with changeable error diffusion weights

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980079885A (ko) * 1997-03-06 1998-11-25 오오히라 아끼라 액정의 정제 방법
JPH1110918A (ja) 1997-06-23 1999-01-19 Hewlett Packard Co <Hp> 誤差拡散ハーフトーンの色相関補正方法

Also Published As

Publication number Publication date
KR20010020817A (ko) 2001-03-15
US6870644B2 (en) 2005-03-22
GB2352353B (en) 2003-07-23
US6501564B1 (en) 2002-12-31
GB0009598D0 (en) 2000-06-07
GB2352353A (en) 2001-01-24
JP2000354172A (ja) 2000-12-19
US20030090728A1 (en) 2003-05-15
BR0001730A (pt) 2001-01-02

Similar Documents

Publication Publication Date Title
KR100681108B1 (ko) 컬러 이미지를 프린트하기 위한 오차 확산 하프톤 방법
EP0887998B1 (en) Correlating cyan and magenta planes for error diffusion halftoning
US5973803A (en) Combined color halftoning
US6393148B1 (en) Contrast enhancement of an image using luminance and RGB statistical metrics
US7417771B2 (en) Error diffusion halftoning system
US6600573B2 (en) Fast green/magenta dithering of color images
US7268919B2 (en) Image data processing apparatus, method, and program that diffuses gradiation error for each pixel in target block
US5966507A (en) Image resolution enhancement technology (IRET) for dual dye-load inkjet printer
US5930010A (en) Method and apparatus for color halftoning using different halftoning techniques for halftoning different dot planes
US6778299B2 (en) Error diffusion with partial dots method and system
EP0791895B1 (en) Halftoning pixel processing method by dithering
EP1553753B1 (en) Color printing
EP1416716A1 (en) Multitoning a digital image having at least one group of similar color channels
US6373594B1 (en) Color printer halftoning method and apparatus
JP2004135317A (ja) カラー画像処理装置およびカラー画像処理方法
US7002708B2 (en) Delayed decision dot placement for plane-dependent CMYK error diffusion
EP0863661A2 (en) Fast error diffusion algorithm
EP1122943B1 (en) Continuous tone reproduction using improved ink jet droplet dispersion techniques
JP4027719B2 (ja) カラー階調画像の階調再現装置
EP1126390A2 (en) Simulation program having generic attribute access schema
KR20050106314A (ko) 화상 형성 장치의 화질 개선 방법 및 그 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee