KR101490215B1 - 화상처리장치 및 그 처리 방법 - Google Patents

화상처리장치 및 그 처리 방법 Download PDF

Info

Publication number
KR101490215B1
KR101490215B1 KR1020127009193A KR20127009193A KR101490215B1 KR 101490215 B1 KR101490215 B1 KR 101490215B1 KR 1020127009193 A KR1020127009193 A KR 1020127009193A KR 20127009193 A KR20127009193 A KR 20127009193A KR 101490215 B1 KR101490215 B1 KR 101490215B1
Authority
KR
South Korea
Prior art keywords
color
data
color data
blocks
divided blocks
Prior art date
Application number
KR1020127009193A
Other languages
English (en)
Other versions
KR20120065394A (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 KR20120065394A publication Critical patent/KR20120065394A/ko
Application granted granted Critical
Publication of KR101490215B1 publication Critical patent/KR101490215B1/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/41Bandwidth or redundancy reduction
    • 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/64Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor
    • H04N1/644Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor using a reduced set of representative colours, e.g. each representing a particular range in a colour space
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • 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/41Bandwidth or redundancy reduction
    • H04N1/411Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
    • H04N1/413Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
    • H04N1/415Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information in which the picture-elements are subdivided or grouped into fixed one-dimensional or two-dimensional blocks
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)
  • Color Image Communication Systems (AREA)
  • Facsimile Image Signal Circuits (AREA)

Abstract

화상 데이터를 미리 정해진 화소수의 블록들로 분할하고, 상기 분할된 블록들 각각을 순차적으로 처리하는 화상처리장치에서는, 처리 대상의 블록내의 화소들의 색 데이터를 비교하여, 그 블록에 포함된 상기 색 데이터의 배치 패턴에 대응하는 패턴 플래그를 식별한다. 상기 식별된 패턴 플래그와, 상기 블록에 포함된 컬러 수분의 색 데이터를 출력하고, 상기 블록에 있어서의 미리 정의된 위치에서의 화소에 대응하는 상기 출력 수단으로부터 출력된 색 데이터를 제1색 데이터라고 가정하는 경우, 상기 분할된 블록들 각각에 대해서 출력된 상기 패턴 플래그, 상기 제1색 데이터 및 다른 색 데이터를, 각각 다른 메모리 영역에 일괄적으로 격납한다.

Description

화상처리장치 및 그 처리 방법{IMAGE PROCESSING APPARATUS AND PROCESSING METHOD THEREFOR}
본 발명은, 화상을 소정의 블록 단위로 압축하는 기술과 블록 단위로 압축된 화상의 화상처리와 복원 처리를 행하는 기술에 관한 것이다.
종래, 고해상도의 컬러화상의 수요는 높고, 고화질로의 요구에 맞도록 디지털 복합기에서는 1200dpi 이상의 해상도의 더욱더 많은 화상을 취급한다. 디지털 복합기뿐만 아니라, 디지털 카메라나 팩시밀리 장치등의 화상처리 장치도, 메모리/하드 디스크 용량의 절약이나 그것들에의 기록 시간을 단축하기 위해서, 컬러화상 데이터를 압축하여서, 저비용화와 고속화를 실현하고 있다.
컬러 정지화상의 압축 방식의 일반적으로 사용된 예들로서는, 이산 코사인변환을 이용한 JPEG방식과 웨이브릿(Wavelet)변환을 이용한 방식이 다른 방식이 있다. 이러한 종류의 부호화방식은, 일반적으로 화상을 소정의 블록(예를 들면, 8×8이나 16×16화소단위)으로 부호화하고, 이산 코사인 변환, 양자화 및 엔트로피 부호화를 행하여 높은 압축 효율을 달성하고 있다. 이러한 종류의 부호화 방식은, 가변길이 부호화 방식이므로, 부호화대상의 화상마다 부호량이 변화되는 것이다.
이렇게, 블록 단위의 가변 길이 부호화 방식의 사용 때문에, 참조를 위해 작은 에어리어에 랜덤 액세스하기가 어렵다. 그 부호량이 화상에 의해 다름에 따라서 복호대상 블록이 중간의 위치(메모리 어드레스)를 가지므로, 그 블록 위치를 결정하는 어떠한 수단과 블록 단위의 복호화 처리는 랜덤 액세스에 필요하다.
JPEG에서의 이산 코사인 변환에서는, 블록 사이즈로서, 보통 8×8화소를 필요로 한다. 이 블록 단위에서의 이산 코사인 변환 처리를 고속으로 행하기 위해서는, 고속연산기와 그것의 전용 하드웨어가 필요하고, 또한, 버퍼용 메모리가 필요하다.
랜덤 액세스성과 처리의 복잡도 등의 과제에 대한 일 해결책으로서, 블록 사이즈가 작고 고정된 압축율이 사용되는 화상압축기술(예를 들면, 일본국 공개특허공보 특개2004-104621호)이 개시되어 있다.
또한, 상기한 바와 같이 해상도가 계속 높아짐에 따라서 화상처리를 필요로 하는 화소수가 비약적으로 증가하고, 그 처리 부하가 증대하고 있다고 하는 다른 과제도 있다. 예를 들면, 600dpi로부터 1200dpi로 해상도가 2배가 되는 경우에, 처리해야 할 화소수는 4배가 된다. 상술한 화상압축을 사용하는 경우, 그 화소 데이터를 참조하여, 그 화소 데이터를 변환하기 위해서는, 압축 데이터의 복호처리가 필요할 것이다. 즉, 압축된 데이터인채로 화상처리를 행할 수 없고, 항상 복호처리가 필요하게 되어서, 고해상도 데이터 모두의 화소에 대하여 화소 단위로 처리를 행하는 것이 필요하게 되어, 처리 시간의 증대를 초래한다.
화소 데이터를 부호화하지 않고 압축 처리를 행하는 개시된 기술의 예들로서는, 화소 데이터와 그 연속 화소수를 기억하는 공지의 런길이 압축 방식과, 블록 단위로 엣지를 검출하고, 그 엣지에서의 2색을 기억함으로써 압축하는 기술(예를 들면, 일본국 공개특허공보 특개평10-257488호)이 있다.
상기한 바와 같이, 이산 코사인 변환을 이용한 JPEG방식과 웨이브릿 변환방식으로는, 블록마다 필요로 하는 계산량이 많아, 처리 시간이 길고, 또한, 고가의 처리 하드웨어가 필요해진다고 하는 문제가 있다.
또한, 압축된 데이터에 대해 행해진 화상처리가 항상 복호처리가 필요하므로, 처리해야 할 화소수에 따라 방대한 처리 시간이 걸린다고 하는 문제도 있다.
예를 들면, 화상 데이터의 용도에 따라 고해상도 데이터가 항상 필요하지는 않지만, 저해상도 데이터를 얻기 위해서는, 고해상도 데이터를 저해상도 데이터로 축소할 필요가 있다. 즉, 예를 들어 JPEG형식으로 압축 및 부호화된 고해상도 데이터로부터 저해상도 데이터를 작성하기 위해서는, 복호처리와 별도의 축소 처리가 항상 필요하다.
본 발명은, 처리 비용을 감소시키면서 화상 데이터를 압축하는 장치 및 방법을 제공한다.
본 발명의 일 국면에서는, 화상 데이터를 미리 정해진 화소들의 수의 블록들로 분할하고, 그 분할된 블록들 각각을 순차적으로 처리하는 화상처리장치로서, 상기 분할된 블록들의 각각에 대하여, 상기 분할된 블록들 각각에 포함된 색 데이터의 배치 패턴에 대응하는 패턴 플래그를 식별하는 식별 수단; 상기 식별 수단에 의해 상기 분할된 블록들의 각각에 대하여 식별된 상기 패턴 플래그와 상기 분할된 블록들 각각에 포함된 색 데이터를 출력하고, 상기 분할된 블록들 각각에 대하여 출력된 상기 색 데이터는 상기 분할된 블록들 각각의 미리 정의된 위치에서의 화소에 대응하는 적어도 제1색 데이터를 포함하고, 상기 분할된 블록들 각각에 대하여 출력된 상기 색 데이터는 상기 분할된 블록들 각각이 다른 색 데이터를 포함하는 경우, 상기 제1색 데이터와는 다른 상기 색 데이터를 더 포함하는 출력 수단; 및 상기 출력 수단에 의해 상기 분할된 블록들에 대하여 출력된 복수의 상기 패턴 플래그들을 제1 메모리 영역에 격납하고, 상기 출력 수단에 의해 상기 분할된 블록들에 대하여 출력된 상기 제1색 데이터의 값을 연속해서 제2 메모리 영역에 격납하며, 상기 출력 수단에 의해 상기 분할된 블록들에 대하여 출력된 상기 다른 색 데이터의 값들을 제3 메모리 영역에 격납하는 격납 수단을 구비한, 화상처리장치가 제공된다.
본 발명의 또 다른 특징들은, 첨부도면을 참조하여 아래의 예시적 실시예들의 설명으로부터 명백해질 것이다.
도 1은, 제1의 실시예에 따른 화상처리장치의 구성의 일례를 도시하는 블록도다.
도 2는, 도 1에 나타낸 콘트롤러의 구성 예를 도시하는 도면이다.
도 3은, 2×2화소의 블록에 있어서의 4색의 가능한 모든 패턴의 수를 도시한 도면이다.
도 4는, 도 3에 나타낸 패턴과 패턴 플래그간의 관계를 도시한 도면이다.
도 5는, 다른 화소의 수와 패턴 플래그를 식별하는 처리를 나타내는 흐름도다.
도 6은, 화소값이 다른 화소의 위치를 판정하는 처리를 설명하기 위한 도면이다.
도 7은, DMAC에 의한 화상 데이터의 메모리 공간에의 기록의 예를 나타내는 도면이다.
도 8은, 제2의 실시예에 따른 압축 처리를 나타내는 흐름도다.
도 9는, 새로운 패턴 플래그를 추가하는 경우의 입출력의 관계를 도시한 도면이다.
도 10은, 제4의 실시예에 따른 압축 처리를 나타내는 흐름도다.
도 11은, 제4의 실시예에 따른 화상 데이터의 메모리 공간에의 기록의 일례를 나타내는 도면이다.
도 12는, 제5의 실시예에 따른 압축 처리를 나타내는 흐름도다.
도 13은, 페이지, 32×32화소의 타일, 및 2×2화소의 블록의 관계를 도시한 도면이다.
도 14는, 패킹된 데이터의 데이터 구조를 도시한 도면이다.
도 15는, 패킷 관리 테이블의 구조의 일례를 도시한 도면이다.
도 16은, 메모리 공간에 기록된 패킷들의 어드레스를 나타내는 도면이다.
이하, 첨부 도면을 참조하여 본 발명의 실시예들을 상세하게 설명한다. 본 발명의 실시예들에서는, 화상처리장치로서, 스캔, 프린트 및 카피등의 다기능을 갖는 디지털 복합기(MFP)를 예로 들어 설명한다.
[제1의 실시예]
도 1에 나타나 있는 바와 같이, 콘트롤러(101)는, 화상입력 기기인 스캐너(102)와 화상출력 기기인 프린터(103)와 접속된다. 또한, 콘트롤러(101)는 LAN이나 공중망(WAN)등의 네트워크(104)와 접속되어 화상정보와 디바이스 정보를 입출력하고, PDL데이터의 화상 복원(decompression)을 행한다.
CPU(lO5)는, 후술하는 HDD기억부(107)에 격납된 프로그램에 따라서 MFP전체를 제어하는 프로세서다. 메모리(106)는, CPU(lO5)가 동작하기 위한 시스템 워크 메모리이며, 화상 데이터를 일시적으로 기억하기 위한 화상 메모리이기도 하다. HDD기억부(107)는, 하드디스크 드라이브이며, 시스템 소프트웨어, 컴퓨터 프로그램, 화상 데이터 등을 기억한다.
다음에, 도 2에 나타낸 콘트롤러(101)의 구성 예를 참조해서 콘트롤러(101)에서 행해진 각 부의 상세한 처리 과정을 설명한다. 우선, 스캐너(102)에 의해 스캔된 화상 데이터를 판독하는 경우를 설명한다. 스캐너(102)에서 스캔된 3색, 즉 RGB(레드, 그린, 블루)의 화상 데이터를 스캐너용 화상처리부(201)가 받고, 그 화상 데이터에 대하여 셰이딩(shading) 처리와 필터 처리 등의 화상처리를 행하고 나서, 압축부(202)가 화상압축처리를 행한다. 그리고, 압축된 데이터(압축 데이터)를 직접 메모리 액세스 콘트롤러(DMAC)(203)가 화상 메모리 버스를 거쳐서 메모리(106)에 격납한다.
다음에, 스캔된 화상 데이터를 프린트할 경우, 메모리(106)에 격납된 압축 데이터를 DMAC(211)가 화상 메모리 버스를 거쳐서 색처리부(212)에 전송한다. 그리고, 색처리부(212)는, 그 압축 데이터를 CMYK(시안, 마젠타, 옐로, 블랙)색공간으로 변환한다. 그 후에, 색처리부(212)는 상기 CMYK의 각 값에 대하여 농도조정과 프린터 감마 보정 등의 색처리를 추가로 행한 후, 상기 색처리된 데이터를 DMAC(211)가 화상 메모리 버스를 거쳐서 다시 메모리(106)에 격납한다. 그 후, 프린트용의 화상처리를 행하기 위해서, DMAC(221)가 화상 메모리 버스를 거쳐서 메모리(106)에 격납된 압축 데이터를 판독하고, 복원부(222)가 그 데이터를 래스터(raster) 화상 데이터로 복원한다. 그리고, 프린터용 화상처리부(223)는 그 CMYK 래스터 화상 데이터를 받고, 디더법(dithering)이나 오차확산법에 의한 면적 수속 변조를 행하여, 프린터(103)에 출력한다.
또한, 스캔된 화상 데이터를 네트워크에 송신하는 경우, 메모리(106)에 격납된 압축 데이터를 DMAC(211)가 화상 메모리 버스를 거쳐서 색처리부(212)에 전송한다. 그리고, 색처리부(212)가 디스플레이 감마 조정이나 용지 바탕색 조정 등의 처리를 행한 후, YCbCr(휘도, 블루색 차이, 레드색 차이)색공간으로 변환한다. 그리고, 해당 색처리부(212)로 처리된 데이터를 다시 DMAC(211)가 화상 메모리 버스를 거쳐서 메모리(106)에 격납한다. 그 후에, 송신용 화상처리를 실행하기 위해서, DMAC(231)가 화상 메모리 버스를 거쳐서 메모리(106)에 격납된 압축 데이터를 복원부(decompression unit)(232)에 전송한다. 그리고, 복원부(232)가 그 압축 데이터를 래스터 화상 데이터로 복원한다. 그 후에, YCbCr 래스터 화상 데이터에 대하여 송신 처리부(233)가 컬러 화상송신이면 JPEG압축 처리를 행하거나 흑백 2값 화상송신이면 Y데이터에 대하여 2값화 및 JBIG 압축 등을 행하고, 그 압축 데이터를 네트워크(104)에 출력한다.
또한, 스캔된 화상 데이터를 보존하는 경우, 메모리(106)에 격납된 압축 데이터를 DMAC(241)가 화상 메모리 버스를 거쳐서 디스크 스풀(spool) 고압축/복원부(242)에 전송한다. 디스크 스풀 고압축/복원부(242)에서는, HDD에의 기록 스피드가 메모리에 대하여 느리므로, 더욱 고압축의 JPEG압축을 실행한다. 그 후, 디스크 액세스 콘트롤러(243)를 거쳐서 HDD기억부(107)에 그 압축 데이터를 보존한다. 또한, HDD기억부(107)에 보존되어 있는 압축 데이터를 다시 메모리(106)에 전송하는 경우에는, 상술한 처리를 반대로 행하면 좋다.
이하에서는 도 1에 나타낸 네트워크(104)를 거쳐서 접속된 또 다른 장치로부터 전송된 PDL데이터를 메모리(106)에 기록하는 경우를 설명한다. 도 2에는 PDL해석부가 도시되어 있지 않았지만, PDL해석부로서 기능하는 CPU(lO5)가 PDL 데이터를 해석하고, 그 결과의 디스플레이 리스트를 메모리(106)에 출력한다. 그 후에, 메모리(106)에 격납된 디스플레이 리스트를 렌더링부(251)가 RGB 래스터의 화상데이터로 렌더링하고, 압축부(252)가 화상압축처리를 행한다. 그리고, 압축 데이터를 DMAC(253)가 화상 메모리 버스를 거쳐서 메모리(106)에 격납한다.
이때, PDL데이터를 프린트, 네트워크에 송신, 또는 보존하는 처리는, 스캔된 화상 데이터의 경우와 같은 처리를 행함으로써 실현 가능하다.
다음에, 본 발명의 특징들의 하나인 래스터 화상 데이터의 압축 처리를 상세하게 설명한다. 이때, 본 실시예에 있어서, 압축부 252는 PDL데이터로부터 생성된 래스터 화상을 압축하고, 압축부 202는 스캔하여 얻어진 래스터 화상을 압축하지만, 본 발명은 이러한 구성에 한정하는 것이 아니다. 예를 들면, 도 2에 나타낸 바와 같이 압축부(202, 252)를 개별적으로 설치하는 것이 아니고, 공통의 압축부를 설치하도록 구성해도 된다.
본 실시예에서는, 우선 페이지 단위의 래스터 화상 데이터를, 2×2화소 블록들로 분할하고, 그 분할해서 추출된 블록 각각에 대해 데이터 압축처리를 행한다.
압축 처리를 설명하기 전에, 2×2, 즉 4화소 데이터내에 포함된 컬러수에 따라 가능한 색 조합의 수를 생각한다. 화소수가 4이므로, 이들 화소에 포함된 컬러 수는 최대 4색이 되어, 블록내에서 단지 1색∼4색의 조합밖에 존재하지 않는다. 도 3은 그 4색의 가능한 모든 패턴의 수를 나타낸다.
우선, 블록이 1색을 포함하는 경우에, 4화소 모두가 동일색으로 구성되어 있게 되므로, 하나의 패턴만 있다. 다음에, 블록에 2색이 존재하는 경우를 생각한다. 도 3에 나타나 있는 바와 같이, 2색이 4화소내에 배치되는 경우와, 좌측위의 화소의 색을 제1색이라고 하고, 다른쪽 색을 제2색으로서 생각하면, 좌측위의 화소이외 나머지의 3화소는 제1색 혹은 제2색을 가지므로, 4화소 모두가 동일색을 갖는 경우를 제외하면, 전부 7개의 가능한 패턴이 생각된다는 것이 분명하다.
그리고, 블록이 3색을 포함하는 경우를 생각한다. 3색이 4화소 내에 배치되는 경우의 수는, 3색 중 1색만 2회 사용되어지는 경우의 수로서 바꾸어 말하는 것이 가능해서, 4화소의 좌표 중, 2화소가 같은 색이 될 경우의 수를 구하면 좋다. 즉, 3색의 가능한 패턴의 수는, 4개의 좌표로부터 2개의 좌표를 선택하는 조합의 수와 같으므로 전부 6이 된다. 마지막으로, 블록이 4색을 포함하는 경우에는, 1색의 경우와 같이 1패턴만 있다.
1색∼4색의 모든 가능한 패턴의 수를 합함으로써, 전부 15개의 패턴이 생각된다. 또한, 이것들 모두의 패턴을 식별하기 위해서 플래그(식별자)를 부여하는 것을 생각하면, 플래그의 데이터양에 대해서는 또 다른 4비트가 필요하다. 이 15개의 패턴과 플래그간의 관계를 도 4에 나타나 있는 바와 같이 정의하고, 이후, 이 플래그를 "패턴 플래그"라고 부른다.
상술한 바와 같이, 2×2화소의 모든 가능한 패턴을 고려하여, 압축부(202, 252)에서 행해지는 처리를, 도 5를 참조하여 설명한다. RGB가 입력으로서 각각 8비트 또는 256레벨을 갖고, 이러한 8비트 데이터가 점 순차로 배치되어, 데이터로서 화소당 24비트의 화상을 형성하는 경우를 예로 들어 설명한다.
우선, 2×2화소의 블록을 입력하고(S501), 그 블록내의 모든 쌍의 2화소를 그들의 24비트에 대해 비교한다(S502). 그 비교 결과, 전체 비트가 일치하는 경우에는, 1을 출력하고, 불일치하는 경우에는 0을 출력한다.
여기에서, 2×2화소는, 좌상, 우상, 좌하 및 우하의 순서로, 각각 좌표1, 2, 3, 4를 갖는다(도 4에 401로 나타냄). 2화소 좌표의 가능한 조합의 수가 모두 6개, 즉 1-2, 1-3, 1-4, 2-3, 2-4, 3-4(도 4에 402로 나타냄)이므로, 6회 비교를 행할 필요가 있음에 따라서, 결과적으로 6비트를 출력한다. 도 4의 비교 결과로 나타낸 것처럼, 전체 화소가 동일색이면, 모든 비교 결과가 1을 출력하고, 반대로 4화소가 모두 다른 화소값을 가지면, 모든 비교 결과가 0을 출력한다.
본 예에서는, 4화소의 색 일치로 일어날 수 있는 가능한 패턴의 수가 15개이므로, 도 4에 나타나 있는 바와 같이 6비트의 비교 결과에 따라, 4비트의 패턴 플래그를 식별한다(S503). 다음에, 4화소내에서 출현한 컬러 수 및 색 데이터를 추출한다(S504). 도 4에 나타나 있는 바와 같이, 4비트의 패턴 플래그(또는 6비트의 비교 결과)와, 블록내에서의 색(들)의 배치(들)를 나타내는 각 패턴이 관련되므로, 각 블록에 있어서의 컬러 수와 색 데이터를 식별하는 것이 가능하다. 또한, 도 4에 나타낸 본 실시예에서는, 모든 패턴에 있어서, 좌상의 화소의 색(화소값)이 제1색(제1 색 데이터)이 되도록 정의하고 있다. 패턴 플래그가 0일 경우에는, 컬러 수가 1이어서, 좌상의 화소의 색(화소값)을 제1색으로서 추출한다. 패턴 플래그가 1∼7 중 임의의 것인 경우에는, 컬러 수가 2이어서, 좌상의 화소의 색(화소값)을 제1색으로서 추출하고, 또한, 패턴 플래그에 의해 정의되어 있는 제2색(제2 색 데이터)이 존재하는 위치의 화소의 색(화소값)을 추출한다. 예를 들면, 패턴 플래그가 1일 경우에는, 우상의 화소의 색을 제2색으로서 추출한다. 또한, 패턴 플래그가 8∼D 중 임의의 것일 경우에는, 컬러 수가 3이어서, 좌상의 화소의 색(화소값)을 제1색으로서 추출하고, 또한, 패턴 플래그에 의해 정의되어 있는 제2색(제2 색 데이터) 및 제3색(제3 색 데이터)이 존재하는 위치의 화소의 색(화소값)을 추출한다. 예를 들면, 패턴 플래그가 8일 경우에는, 우상의 화소의 색(화소값)을 제2색으로서 추출하고, 우하의 화소의 색(화소값)을 제3색으로서 추출한다. 패턴 플래그가 E일 경우에는, 좌상의 화소의 색을 제1색, 우상의 화소의 색을 제2색, 좌하의 화소의 색을 제3색, 및 우하의 화소의 색을 제4색으로서 추출한다.
즉, 패턴 플래그(또는 비교 결과)에 의거하여, 블록내의 컬러 수가 식별되어(S505, S507, S509), 각 블록에 대응한 패턴 플래그와 색 데이터가 출력된다(S506, S508, S510, S511). 이 출력된 데이터를, 도 6을 참조하여 설명한다.
도 6에 나타나 있는 바와 같이, 예를 들면, 패턴 플래그가 0(즉, 4화소가 1색으로 구성되어 있다)의 경우(S505에서 YES), 2번째 색 이후는 존재하지 않으므로, 패턴 플래그의 4비트와 첫 번째 색의 화소값(24비트의 색 데이터)을 출력한다(S506). 패턴 플래그가 1∼7 중 임의의 것(즉, 4화소가 2색으로 구성되어 있다)의 경우(S507에서 YES), 2번째 색이 존재하는 화소의 좌표를 패턴 플래그로 산출하고, 패턴 플래그의 4비트와 2색분의 화소값(48비트의 색 데이터)을 출력한다(S508). 패턴 플래그가 8∼D 중 임의의 것(즉, 3색)의 경우(S509에서 YES), 패턴 플래그의 4비트와 3색분의 화소값(72비트의 색 데이터)을 출력한다(S510). 그리고, 패턴 플래그가 E(즉, 4색)의 경우(S509에서 NO), 패턴 플래그의 4비트와 4색분의 화소값(96비트의 색 데이터)을 출력한다(S511). 바꿔 말하면, 각 블록으로부터 출력되는 색 데이터는, 블록내의 좌표(좌상, 우상, 좌하 및 우하의 순서로 1부터 4까지) 순서로 주사했을 경우에, 출현하지 않고 있었던 색 데이터가 제1색으로부터 순차적으로 출력되는 것에 해당한다.
이렇게, 2×2화소의 블록내의 4색의 입력 데이터(96비트)를 4비트의 패턴 플래그와, 거기에 존재하는 컬러 수에 대한 화소값을 출력하는 것에 의해, 비교적 간단한 처리로 출력 데이터량을 삭감하는 것이 가능하게 된다. 특히, 화소들이 동일색을 갖는 다수의 2×2화소의 블록(즉, 컬러 수가 적은 블록)을 포함하는 래스터 화상에 대해, 출력 데이터량은 높은 압축률을 가질 것이다. 또한, 패턴 플래그를 참조함으로써 그 블록내의 컬러 수를 식별하는 것이 가능하다. 이러한 처리를 화상 블록 모두에 대하여 행함으로써, 화상 데이터 전체를 압축 가능하게 된다.
다음에, 상술한 것처럼 얻어진 패턴 플래그와 색 데이터를, DMAC(203, 253)가 메모리에 기록하는 처리(메모리 격납 처리)를 행한다. 여기서, DMAC는, 패턴 플래그와 제1색의 데이터와 제2색, 제3색, 제4색의 데이터를 다른 위치에 기록한다. DMAC에는, 3개의 어드레스, 즉 패턴 플래그를 기록하기 위한 메모리 선두 어드레스, 제1색 데이터를 기록하기 위한 메모리 선두 어드레스, 및 제2색 이후의 데이터를 기록하기 위한 메모리 선두 어드레스를 지정한다. 다시 말해, 각 블록의 패턴 플래그는, 메모리의 패턴 플래그 격납부(패턴 플래그를 격납하기 위한 메모리 영역)에 일괄적으로 격납된다. 각 블록의 제1 색 데이터는, 상기 메모리의 제1 색 격납부(각 블록의 제1 색 데이터를 격납하기 위한 메모리 영역)에 일괄적으로 격납된다. 또한, 각 블록의 제2, 제3 및 제4의 색 데이터는, 메모리의 제2, 제3, 제4색 격납부(각 블록의 제2, 제3 및 제4의 색 데이터를 격납하기 위한 메모리 영역)에 일괄적으로 격납된다.
도 7은, DMAC에 의한 화상 데이터의 메모리 공간에의 기록 예를 나타내는 도면이다. 이때, M×N화소의 RGB 각색 8비트의 화상을 압축부에 입력하는 경우, 패턴 플래그의 데이터가 격납되는 패턴 플래그 격납부의 데이터 사이즈는, (M×N×4/8)바이트가 된다. 제1색의 데이터가 격납되는 제1색 격납부의 데이터 사이즈는, (M×N×24/8)바이트가 된다. 또한, 제2색, 제3색, 제4색의 데이터가 격납되는 제2, 3, 4색 격납부의 데이터 사이즈는, 처리 대상이 되는 각 래스터 화상에 따라 다르다. 이것은, 제2색, 제3색, 및/또는 제4색이 존재하는 블록의 수가 화상에 따라 다르기 때문이다.
여기에서, 제1색 기록 선두 어드레스 이후의 메모리 영역(제1색 격납부, 및 제2, 제3, 제4색 격납부)에 관해서는, 각 화소의 색 데이터가 그대로의 비트 수로 격납되어 있다. 다시 말해, JPEG형식등의 압축 데이터와는 달리, 압축 데이터를 래스터 화상으로 디코딩하지 않고, 각 화소의 색(화소값)을 식별할 수 있다. 따라서, 1화소 입력 1화소 출력으로 완결하는 색처리, 이를테면, LUT를 사용한 색 변환이나 감마 보정처리, 행렬 연산을 사용한 색공간 변환 처리 등을 행하는 경우, 원래의 래스터 화상으로 되돌릴 필요는 없고, 도 7과 같이 격납된 데이터에 대하여 직접 처리를 행하는 것이 가능하게 된다. 도 2에 나타낸 색처리부(212)가 화소단위의 화상처리를 행하는 경우에는, 메모리(106)에서의 제1색 기록 선두 어드레스 이후의 화소 데이터를 DMAC(211)를 거쳐 판독하고, 화소단위의 처리를 끝낸 후에, 메모리(106)에 재기록한다. 여기서, 어떠한 종류의 화소단위처리에 의해 화소당 비트수가 변하지 않는 경우에는, 같은 장소에 데이터를 덮어쓰는 것으로 메모리(106)의 공간도 절약 가능하다.
이처럼 압축 데이터를 직접 사용함으로써, 메모리 버스의 전송 효율이 향상하고, 또한, 오리지날 래스터 화상의 화소수보다도 적은 수의 색 데이터에 대하여 처리하므로, 처리속도를 증가시킬 수 있다.
또한, 도 7에 나타나 있는 바와 같이 화상 데이터를, 패턴 플래그, 제1색 및 그 밖의 색으로 나누고, 이산적으로 메모리에 격납하고 있다. 따라서, 제1색 격납부에는, 래스터 화상을 2×2화소의 블록으로 분할하고, 각 블록의 좌상의 좌표의 화소를 샘플링하여 얻어진 화소값(색 데이터)을 연속해서 격납된다.
또한, MFP는, 축적한 PDL화상 데이터나 스캔 화상 데이터의 프리뷰하는 것과, 상술한 네트워크 송신등의 기능도 갖는다. 예를 들면, 프린트 해상도가 600dpi이라고 할지라도, 프리뷰나 송신에 그러한 고해상도가 보통 필요하지 않고, 이 때 300dpi나 그 이하의 해상도가 충분할 것이다. 이렇게, 축소 데이터를 얻을 필요가 있는 경우에는, 제1색 격납부에 격납된 제1색 데이터만을 일괄적으로 추출함으로써 간단하게 반정도의 사이즈의 래스터 화상을 얻을 수 있다.
예를 들면, 600dpi의 래스터 화상이 도 7과 같은 데이터로 변환되어서 축적되어 있었을 경우의 사이즈 축소 및 송신에 대해 아래에 설명한다. 송신되는 화상의 해상도로서 300dpi가 지정된 경우에는, 제1색 격납부에 격납된 데이터를 그대로 추출해서 송신하면 좋다. 400dpi 등, 제1색 격납부에 샘플링되어 있는 300dpi의 해상도보다 높은 해상도가 지정되어 있는 경우에는, 다음의 처리를 행한다. 구체적으로, 패턴 플래그 격납부와, 제1색 격납부와, 제2, 제3, 제4색의 격납부에 격납된 데이터에 근거하여 압축 데이터를 복원하고, 공지의 변배처리를 사용해서 그 압축 데이터를 변배하고, 그 변배된 화상을 송신한다. 또한, 300dpi보다 낮은 송신 해상도가 지정된 경우에는, 제1색 격납부에 격납된 데이터만을 사용하여, 그 지정된 해상도를 얻기 위해 변배처리를 행한다. 이렇게, 원하는 화상 사이즈에 따라 전환하면서 데이터를 판독하면 좋다.
다음에, 압축부(202, 252)로 쌍을 이룬 복원부(222, 232)를 설명한다. 이때, 복원부(222, 232)에서는, 상술한 바와 같은 패턴 플래그와 색 데이터를, 래스터 화상 데이터로 회복시키는 처리를 행한다. 3개의 어드레스, 즉, 메모리(106)에 도 7에 나타나 있는 바와 같이 배치되어 있는 압축 데이터에 대한 패턴 플래그 기록 기억 어드레스, 제1색 기록 선두 어드레스, 및 제2, 제3, 제4색 기록 선두 어드레스는, DMAC(221, 231)에 지정된다. DMAC(221, 231)는 3개의 어드레스로부터 데이터를 판독하여, 복원부(222, 232)에 전송한다.
복원부(222, 232)에서는, 우선 4비트의 패턴 플래그를 해석하고, 그 블록내의 컬러 수를 산출한다. 그들은, 제1색 데이터와 아울러, 컬러 수에 따라 제2, 제3, 및/또는 제4색 데이터를 판독하고, 각 패턴 플래그마다 미리 정의되어 있는 색 데이터의 배치 패턴(도 4)에 따라서, 제1색, 및 제2, 제3 및 제4의 색 데이터를 재배치한다. 이렇게 함으로써, 각 2×2화소 블록을 복원하고, 복호한다.
복원부(222, 232)가 화상 사이즈를 1/2로 축소하는 경우에는, 상기한 바와 같이, 패턴 플래그와 제2, 제3, 및 제4의 색 데이터를 필요로 하지 않으므로, DMAC(221, 231)에는 제1색 기록 선두 어드레스만 지정한다. 이에 따라서, 메모리(106)로부터 제1색 데이터만이 판독되어, 화상을 구성한다. 이렇게 처리함으로써 메모리 버스의 대역을 절약하는 것이 가능하게 된다.
제1의 실시예에 의해, 비교적 단순한 압축 방식으로 메모리 용량과 메모리 버스 대역폭의 절약이 가능하게 될 뿐만 아니라, 화소단위의 화상처리나 사이즈 축소 및 변배처리시에 처리부하도 삭감하는 것도 가능하게 된다.
이때, 제1의 실시예에서는 색 데이터의 배치를 나타내는 패턴과 패턴 플래그를 도 4에 나타낸 것처럼 관련시켰지만, 본 발명은 이것에 한정하는 것이 아니다. 예를 들면, 각 2×2화소 블록의 우하 화소의 화소값이 제1색이 되도록, 색 데이터의 배치를 나타내는 패턴과 패턴 플래그간의 관련을 관련시켜서 미리 정의해도 된다. 또한, 제1의 실시예에서는 블록 사이즈가 2×2화소인 것을 가정하여 설명해 왔지만, 본 발명은 이것에 한정하는 것이 아니다. 또한, 압축은 각각 8비트를 갖는 RGB의 화상 데이터를 예로 들어 설명해 왔지만, 화상 데이터는 CMYK의 색공간에 있어도 되거나, 그레이 스케일의 데이터이어도 되거나, 8비트이외의 화소값을 가져도 된다.
[제2의 실시예]
다음에, 도면을 참조하면서 본 발명에 따른 제2의 실시예를 상세하게 설명한다. 제2의 실시예에서는, 스캔된 화상 데이터의 압축 처리를 설명한다. 이때, 제2의 실시예에서도 화상처리장치로서, 제1의 실시예와 같이, MFP를 예로 들어 설명한다.
제1의 실시예의 압축 방식으로 고압축이 되는 것이 기대되는 화상은, 화상내에서 인접화소값이 단일 레벨의 차이도 갖지 않는 많은 영역을 포함하는 화상들이다. 구체적으로, 고해상도의 PDL데이터로서 렌더링된 래스터 화상 데이터(예를 들면, 워드 프로세싱 소프트웨어로 작성한 문서화상)는, 높은 압축률을 가질 가능성이 있다. 한편, 스캔된 입력 화상은, 스캐너에서의 노이즈 성분이 화상에 중첩될 가능성이 있어, 인접화소값이 수 레벨의 차이를 갖는 많은 영역을 포함할 수 있다.
이러한 경우에, 압축 데이터의 2×2화소의 블록이 4색이라고 판단되는 경우가 보다 많아져, 압축 후에, 데이터량이 삭감되지 않을 뿐만 아니라, 패턴 플래그의 추가에 의해 데이터양이 증가해버릴 가능성이 보다 높다. 그렇지만, 일부의 화상에서는, 2×2화소의 블록내에서의 수 레벨의 차이가 시각적으로 인식 가능하지 않은 경우도 많고, 이 경우에는 그 수 레벨의 차이는 중복 데이터라고 말할 수 있다.
그래서, 제2의 실시예에서는 스캔된 화상 데이터의 고압축도 가능하게 하는 방법을 설명한다. 상기한 바와 같이, 블록내의 화소가 수 레벨의 차이만 갖는 경우, 그들은 동일색으로서 간주하고, 각 블록에 관해 감색(color-reduction)처리를 행함으로써, 4색이라고 판단되는 블록들의 수를 감소시키고, 압축률을 향상시킬 수 있다. 각 블록에 관해 감색처리를 행한 후, 제1의 실시예의 도 4와 같이 2×2화소의 가능한 모든 패턴에 근거하여, 화상 압축처리를, 도 8을 참조하여 설명하겠다. 이 입력으로서는, 제1의 실시예와 같이, RGB 각색이 8비트 또는 256레벨을 갖는 경우에 대해서 설명을 행한다.
우선, 처리 대상이 되는 2×2화소의 블록을 입력해(S801), 4화소값으로부터 1색을 얻는 감색처리를 행한다(S802). 여기에서, 예를 들면, 4화소의 평균 화소값을 산출함으로써 1색을 얻기 위한 감색처리를 실현할 수 있다. 구체적으로, 그 감색처리에 의해 얻어진 화소값과 입력된 4화소값간의 차이를 산출하고(S803), 그 차이의 대소를 판정한다(S804). 예를 들면, 입력된 화소값과 감색처리 후의 RGB값간의 차이의 절대치의 합을 구하고, 그 합이 역치이하일 경우에는, 그 차이가 작다고 판단될 수 있다.
구체적으로, 그 차이가 작다고 판정되었을 경우에는, 컬러 수를 단색으로 감소할 수 있다고 판단하여, 상기 패턴 플래그를 0으로서 식별하고(S805), 그 감색처리에 의해 얻어진 단일의 화소값과 패턴 플래그를 출력한다(S806).
상기 차이가 크다고 판정되었을 경우에는, 다른 감색처리를 행하여 2색을 얻는다(S807). 여기에서는, 예를 들면, 4화소 중 RGB값의 차이가 가장 큰 2개의 화소A, B를 추출하고, 어느쪽에 더 유사한지에 따라 나머지의 2화소를 2화소A와 B중 어느 한쪽으로 클러스터링(clustering) 하고 나서, 클러스터 각각에서의 평균치를 구함으로써, 컬러의 수를 2f 감소할 수 있다. 그리고, 2개의 컬러 화소값과 입력된 4화소값간의 차이를 산출하고(S808), 그 차이의 대소를 판정한다(S809). 여기에서, 그 차이가 작다고 판정되었을 경우에는, 제1의 실시예에 기재된 것처럼 동일한 방식으로 도 4와 같은 대응관계에 근거하여, 컬러 수를 2로 감소시킨 후의 화소값의 위치에 따라 패턴 플래그가 식별된다(S810). 그리고, 감색처리에 의해 얻어진 2색의 화소값과 패턴 플래그를 출력한다(S811).
또한, 여기에서, 차이가 크다고 판정되었을 경우에는, 다른 감색처리를 행하여 3색을 얻는다(S812). 여기에서는, 예를 들면, 4화소 중 가장 RGB값의 차이가 작은 2화소를 추출하고, 그 2화소값의 평균치를 구하고, 이 평균치를 그 이외의 2화소값과 합하여 3색을 갖도록 함으로써, 컬러 수는 3으로 감소시킬 수 있다. 그리고, 그 3색 화소값과 입력된 4화소값간의 차이를 산출해(S813), 차이의 대소를 판정한다(S814). 그 차이가 작다고 판정되었을 경우에는, 제1의 실시예와 같은 방식으로 도 4와 같은 대응관계에 근거하여, 컬러 수를 3으로 감소한 후의 화소값의 위치에 따라 패턴 플래그를 식별한다(S815). 그리고, 감색처리에 의해 얻어진 3색의 화소값과 패턴 플래그를 출력한다(S816).
또한, 여기에서, 상기 차이가 크다고 판정되었을 경우에는, 상기 블록에 관해 감색처리를 행함으로서 시각적으로 문제가 일어날 수 있다고 판단하여서, 패턴 플래그를 E로서 식별하여(S817), 4화소값 모두와 패턴 플래그를 출력한다(S818).
이렇게 하여 출력된 패턴 플래그와 화소값(색 데이터)은, 도 7에 도시된 것처럼, 패턴 플래그가 격납되는 영역, 제1 색 데이터가 격납되는 영역, 및 제1 색 데이터 이외의 제2, 제3 및 제4의 색 데이터가 격납되는 영역에 나누어서 격납된다.
제2의 실시예에 의하면, 유사 색을 동일색으로서 취급하는 것에 의해, 스캔 화상으로 대표되는 것 같은 화소값간의 수 레벨의 차이에 의해 압축률이 극적으로 나빠져버릴 수 있는 화상에 대하여도 압축률의 향상을 꾀하는 것이 가능하게 된다. 또한, 상기의 차이 판정에 사용된 역치를 적절하게 설정하여 상기 압축률과 화질을 조정하는 것도 가능하다. 예를 들면, 허용오차가 허용되지 않으면(즉, 그 역치는 0으로 설정된다), 완전 무손실 화상 압축이 행해진다. 한편, 무한값을 허용 오차로서 설정하면, 각 블록이 단색으로 표현되는 것으로 되고, 해상도를 반 정도로 하는 것과 등가가 되어, 데이터량을 1/4로 감소시킬 수 있는 것을 보증한다. 이러한 역치를 설정하기 위한 유저 인터페이스를 제공함에 의해, 각 유저가 원하는 화질과 압축률을 설정할 수 있다.
제2의 실시예에서는 감색처리를 사용한 압축 방법을 설명했지만, 압축 방법이 감색처리를 수반한 것인가 아닌가를 고려하기 위해 복원처리를 행하는 경우에는 필요하지 않아서, 상기 제1의 실시예에서 사용된 것과 완전히 같은 구성을 사용할 수 있다.
또한, 제2의 실시예에서 설명한 감색처리를 사용한 압축 방법은 일례일뿐이며, 임의의 다른 공지의 감색처리를 사용해서 실시하는 것도 가능하다. 예를 들면, 공지의 색차이를 구하는 별도의 기술로 대체하는 것도 가능하다.
[제3의 실시예]
다음에, 도면을 참조하면서 본 발명에 따른 제3의 실시예를 상세하게 설명한다. 제3의 실시예에서는, 상기 제1 및 제2의 실시예에서 설명한 것처럼 압축된 래스터 화상 데이터와 아울러, 화소와 관련된 속성 데이터를 압축하는 경우를 설명한다. 이때, 제3의 실시예에서도 화상처리장치로서, 제1 및 제2의 실시예와 같이, MFP를 예로 들어 설명한다.
PDL 데이터를 렌더링하여 생성된 래스터 화상에서, 각 화소에 속성을 부여할 수 있다. 속성의 예들로는, 문자, 사진, 그래픽, 배경, 및 그레이 보상이 있다. 이러한 속성을 갖는 화상에 대하여는, 속성마다 그 처리의 내용을 바꾸면서 적합한 화상처리를 행함으로써, 최적의 화상을 얻는 것이 가능해진다. 예를 들면, 문자의 속성을 갖는 화소에 대하여는, 가독성을 높게 하기 위해서 콘트라스트를 향상시키는 처리를 행하고, 또 사진의 속성을 갖는 화소에 대하여는, 색조를 풍부하게 하는 처리를 행하는 것도 생각할 수 있다.
이러한 속성정보와 관련된 화상은, 도 2에 나타낸 렌더링부(251)에서 생성되어, 그 화상의 데이터는 상술한 바와 같이, 압축부(252)와 DMAC(253)를 경유해서 메모리(106)에 기억된다.
색처리부(212)는, 속성 데이터를 포함하는 화상을 메모리(106)로부터 DMAC(211)를 거쳐 판독했을 경우에는, 그 속성 데이터에 따라 화상처리를 바꾸면서 화소값의 변환 처리를 행한다.
이와 같이, 제3의 실시예에서는 제1 및 제2의 실시예에서 설명한 압축 방법으로 속성 데이터를 포함한 화상 데이터를 양호하게 압축 가능하게 하는 방법을 설명한다. 이때, 제1 및 제2의 실시예에서와 같이, 2×2화소의 가능한 모든 패턴에 의거하여 행해진 화상압축처리를 설명한다. 기본적으로, 대략적인 과정은, 제1 및 제2의 실시예와 같으므로, 같은 도면을 참조하여 설명한다. 입력이, RGB 각색 8비트 또는 256레벨과 아울러, 화소당 8비트의 속성 데이터를 갖는 것으로 가정한다. 여기에서, 8비트의 속성 데이터는, 이를테면, 문자이면 값A, 사진이면 값B와 같이 인덱스 값으로서 기억되는 것으로 한다. 또한, 속성 데이터는 복수의 의미를 가지기도 하고, 그 속성은, 예를 들면, 문자와 그레이 보상을 의미할 수 있다.
제1의 실시예와 같이, 단일 레벨의 차이도 허용하지 않는 압축 방법이면, 속성 데이터도 화소값 데이터와 마찬가지로 취급하고, RGB 24비트의 비교를 RGB와 속성 양쪽의 32비트 비교로 확장하면 좋다. 그렇지만, 감색처리를 사용한 압축의 경우에, 속성 데이터가 인덱스 값이므로 단순한 확장에서는 문제가 생길 것이다.
상술한 실시예에서는, 화소들의 화소값들의 24비트를 비교하여 동일색인지를 판정하고, 그들 24비트의 차이를 산출하여 화소간의 차이로서 취급하였다. 즉, 동일색의 정의는, 화소값이 같거나, 또는 감색처리의 경우에, 같다고 간주하기에 충분히 유사하다는 것이다. 이 화소값이 속성 데이터 8비트를 단순하게 늘리고, 32비트의 화소값으로서 취급되는 경우, 동일색이 다른 의미를 갖는다. 이것은, 속성 데이터의 값이 인덱스를 의미하므로, 유사 또는 비유사의 여부를 값의 차이만으로 판단할 수 없기 때문이다. 그 때문에, 속성정보가 그 화소값에 추가되는 경우에, 화소값만을 사용한 방법으로부터 감색처리 또는 차이 산출의 방법을 변경하는 것이 필요하다.
상술한 압축 처리의 감색처리에 관해서 속성 데이터를 더한 경우를 설명한다. 속성 데이터가 상술한 바와 같이 인덱스에 의미를 갖기 때문에, 단순하게 평균치등을 얻을 수는 없다. 그 때문에, 속성에, 예를 들면, 배경의 속성보다도 우선도가 높을만한 가치가 있는 문자 속성 등의 우선도를 할당하고, n화소의 평균을 얻는 경우에는, 그들 화소의 속성은 그들 중에서 가장 우선도가 높은 속성으로 대체된다. 이러한 방법으로, 컬러 색조를 나타내는 화소값 24비트에 관해서는 상술한 감색처리를 행하는 반면에, 속성 데이터의 감색처리에는 우선도를 고려한 대체를 행한다. 이에 따라 속성 데이터를 포함하는 화소 데이터의 감색처리를 가능하게 한다.
다음에, 상술한 압축 처리에 있어서의 차이 산출 처리에 관해서 설명한다. 이 차이 산출에서는, 24비트 화소값에 대한 차이의 절대치의 합을 구하고, 또한, 속성 데이터간의 차이는, 화소값의 차이의 절대치에 스케일을 적용한 일종의 평가를 행한 후 그 합에 가산한다. 예를 들면, 화소값의 속성이 사진으로부터 문자로 변경하는 경우, 그 변화량은 화소값이 30레벨 바뀐 것과 등가라고 해서, 절대치의 합에 더하여 역치와 비교를 행한다.
이러한 속성 데이터의 차이는 계산하기 어려우므로, 테이블에 기억되어도 된다. 이러한 테이블에 의하면, 예를 들면, 단일 화소의 속성도 변화를 허용하지 않도록 하는 경우에는, 테이블내의 모든 값으로 최대값을 설정함으로써 속성을 변화시킬 수 있는 감색처리는 행해지지 않을 것이다. 반대로, 화소값이 동일한 화소가 속성이 다르기는 하나 동일색으로서 간주할 필요가 있는 경우에는, 0을 테이블내의 모든 값으로 설정할 수 있어, 속성의 어떠한 변화에 상관없이 속성의 어떠한 차이도 0으로서 취급되고, 감색처리의 여부는 화소값간의 차이에만 좌우될 것이다.
제3의 실시예에 의하면, 각 화소에 속성 데이터를 할당한 화상 데이터를 취급하는 경우에도 압축 처리가 가능하다. 여기에서는 PDL의 화상에 착안해서 속성 데이터의 압축에 관해서 설명했지만, 스캔된 화상에 대하여도 화상인식에 의해 할당된 속성 데이터로 유사한 압축 처리를 행할 수 있다. 또한, 속성 데이터는, 화소당 8비트에 한정하는 것이 아니고, 1비트, 4비트, 또는 16비트 등의 임의의 비트 수를 포함하여도 된다.
[제4의 실시예]
다음에, 도면을 참조하여 본 발명에 따른 제4의 실시예를 상세하게 설명한다. 제4의 실시예에서는, 제1 및 제2의 실시예에서 설명한 래스터 화상 데이터를 압축하는 별도의 처리를 설명한다. 이때, 제4의 실시예에서도 화상처리장치로서, 제1의 실시예와 같이, MFP를 예로 들어 설명한다.
상술한 실시예들의 압축 방법으로 고압축이 되는 것이 기대되는 화상은, 화상내에서 인접화소값이 동일색을 나타내거나, 또는 감색처리를 행해 같다고 간주하기에 충분히 작은 레벨만큼만 다른, 영역이 많은 화상이다. 그러한 화상영역에 착안하면, 2×2화소의 블록 내부뿐만 아니라, 인접하는 2×2화소의 블록을 포함하는 영역에서의 화소값은, 동일색을 나타내거나, 동일색으로서 간주되기에 충분히 작은 레벨만큼만 다른 경우가 많다.
이와 같이, 제4의 실시예에서는 상술한 실시예들에서 설명한 블록내에서 압축에만 착안한 압축 방법과 아울러, 인접 블록의 유사성에 착안한 압축 방법을 설명한다. 도 4에서, 2×2화소 블록에 대해 가능한 15종류의 패턴 플래그는, 4비트로 표현된다. 4비트로 16종류의 패턴을 표현 가능하므로, 1종류보다 많은 패턴을 기술하기 위한 공간이 아직 남아 있다, 즉 패턴 플래그가 중복성을 갖는다.
이에 따라, 현재 처리된 블록의 이전의 블록의 화소값을 그 공간에 기억해두고, 또 전체의 화소가 현재의 블록의 화소와 일치한다(혹은 감색처리한 후 충분히 유사하다)고 판단할 수 있을 경우, 그 현재의 블록이 이전의 것과 같다는 것을 나타내는 플래그는, 화소값(색 데이터)을 출력하지 않고, 설정된다. 이 패턴 플래그를 나머지 4비트의 패턴에 할당함으로써, 상술한 실시예들에서 설명한 패턴 플래그의 비트수를 변화시키지 않고, 데이터를 더욱 압축할 수 있다.
도 9는, 새로운 패턴 플래그로서, 현재의 블록이 이전의 블록과 같은 패턴인 것을 나타내는 플래그(이후, "리피트(repeat) 플래그"라고 칭한다)를 추가했을 경우의 비트수를 도시한 도면이다. 본 예에서는, 그 패턴 플래그 "F"를, 이전의 블록과 일치(즉, 새로운 화소값을 출력하지 않는다)를 의미하도록 추가하고 있다. 도 9에 나타나 있는 바와 같이, 패턴 플래그F를 갖는 블록은, 4비트의 패턴 플래그로 나타낼 수 있다. 다시 말해, 패턴 플래그F를 갖는 블록은, 이전의 블록의 화소값(색 데이터)과 패턴 플래그를 참조해서 복원될 수 있어, 그 화소값(색 데이터)을 격납할 필요가 없어, 압축률을 향상시킨다.
제4의 실시예에 따른 압축 처리를 도 10을 참조하여 상세하게 설명한다. 우선, 래스터 화상 데이터를 입력해(S1OO1), 거기로부터 2×2화소의 블록을 추출한다(S1OO2). 다음에, 그 추출된 블록이 최초의 블록이면(S1OO3에서 YES), 사전에 블록은 없기 때문에, 상술한 실시예와 마찬가지로 압축 처리를 행한다(S1OO7). 한편, 상기 추출된 블록이 S1OO3에서 최초의 블록이 아니라고 판정되었을 경우, 이전에 처리되어 기억된 블록과의 차이를 산출한다(S1OO4). 이 처리는, 예를 들면, 같은 좌표위치에서의 화소값간의 차이의 절대치의 합을 구하여서 행해질 수 있다. 여기에서, 그 차이가 역치보다 작은 경우에는, 최후에 기억되었던 이전의 블록과 같은 데이터를 사용 가능하다고 판단한다(S1OO5에서 YES). 그리고, 현재의 블록이 이전 블록과 같은 것을 나타내는 "F"로서 패턴 플래그를 식별하여(S1OO6), 화소값(색 데이터)의 출력은 생략한다. 다시 말해, 처리 대상의 블록과 그 전에 처리 대상이 된 블록간의 차이가 작다고 판단한 경우에는, 해당 처리 대상의 블록에 대해서는, 이전의 블록의 반복을 나타내는 패턴 플래그F(리피트 플래그)를 출력한다.
그 차이가 S1OO5에서 역치보다 작지 않은 경우에는, 이전의 블록과의 차이가 크기 때문에 이전의 블록의 데이터를 재이용할 수 없다고 판단하고, 상술한 실시예들과 같이 일반적인 압축 처리를 행한다(S1OO7). 그 후에, 그 데이터를 복원해(S1OO8), 그 복원된 2×2화소의 블록을 갱신된 "이전의 블록 데이터"로서 기억해둔다(S1OO9). 본 실시예에서는, S1OO7에서 압축 처리를 실행한 후에, S1OO8 및 S1OO9에서 상기 이전의 블록 데이터를 갱신하고 있지만, 본 발명은 이것에 한정하는 것이 아니다. 예를 들면, S1OO7에서 압축 처리를 행하기 전에, 해당 처리 대상의 블록의 화소값을 사용해서 이전의 블록의 데이터를 갱신해도 된다.
다음에, 기억된 블록과의 차이가 역치보다 작지 않은 블록에 대하여는 S1OO7에서 일반적인 압축 처리의 결과로서 얻어진 패턴 플래그와 색 데이터를 출력하는 반면에, 그 차이가 작은 블록에 대하여는, 패턴 플래그F만을 출력한다(S1O1O). 이 처리를 최후의 블록까지 되풀이함으로써(S1O11에서 YES), 화상 전체의 압축 처리를 종료한다.
패턴 플래그의 비트수가 증가하지 않고 같게, 즉 4비트를 유지하고 있으므로, 상술한 실시예들의 경우와 비교해서 확실하게 압축률을 향상시키는 것이 가능하지만, 제1색 데이터는 제2, 제3 및 4색의 데이터와 같이 부정의 화상 사이즈를 갖는다(화상에 따라 다르다).
따라서, 도 11에 나타나 있는 바와 같이, 제1색 데이터와, 제2, 제3 및 제4색의 데이터를 연속적인 메모리 공간에 격납할 수 없고, 제1색 데이터와, 제2, 제3 및 제4색의 데이터를 이산적으로 격납할 필요가 있다. 이전의 설명에서는, 도 2에 나타낸 색처리부(212)에서는, 메모리(106)에서의 제1색 기록 선두 어드레스 이후의 화소 데이터를 DMAC(211)를 거쳐 판독하고, 화소단위 처리를 끝낸 후에 메모리(106)에 되받아 쓸 수 있다. 그러나, 제4의 실시예에서는, 제1색 데이터와, 제2, 제3 및 제4색의 데이터가 연속적인 메모리 공간에 기억되지 않으므로, 제1색의 어드레스와 아울러, 제2, 제3 및 제4색의 기록 선두 어드레스를 색처리부(212)의 DMAC(211)에 지정하는 것이 필요하다.
본 예시에서는, 이전의 왼쪽의 블록을 이전의 블록으로서 정의하고, 그 블록과의 일치나 불일치의 상태를 기억하고 있지만, 본 발명은 이것에 한정하는 것이 아니다. 예를 들면, 패턴 플래그의 비트수를 일치시키거나 확장하기 위한 상부의 블록을 사용하여서 보다 넓은 에어리어와의 일치를 규정할 수 있다.
다음에, 압축 처리와 쌍을 이룬 복원 처리에 대해서 설명한다. 복원 처리는, 상술한 바와 같은 패턴 플래그와 화소 데이터를 래스터 화상 데이터로 회복시키는 처리다. 메모리(106)에 도 11에 나타나 있는 바와 같이 배치된 압축 데이터의 3개의 어드레스, 즉, 패턴 플래그 기록 선두 어드레스, 제1색 기록 선두 어드레스와, 제2, 제3 및 4색의 기록 선두 어드레스를 DMAC(221, 231)에 지정한다. 주목 블록이 패턴 플래그를 참조하여 이전의 블록과 같다고 식별되는 경우에, 그 주목 블록의 출력은 이전의 블록의 출력 바로 그것을 사용하고, 그 패턴 플래그가 그 이외의 플래그인 경우에는, 상술한 것과 같은 방식으로 복원을 행한다. 이 때에, 데이터의 단일 블록은, 다음 블록에 이용될 가능성도 있기 때문에 버퍼링될 필요가 있다.
그렇지만, 복원 처리로 화상 사이즈를 1/2로 축소하는 경우에는, 상술한 바와 같이 메모리(106)로부터 제1색 데이터만을 판독하고 화상을 형성하여서, 인접 블록과 일치하는 데이터를 복원할 수 없다. 그 때문에, 제4의 실시예에 따른 복원 처리에서는, 패턴 플래그를 참조하여, 제1색 데이터에 의거하여 1/2사이즈로 회복시킨다. 이 경우에, 제2, 제3 및 제4색의 데이터를 사용할 필요가 없다. 구체적으로는, 패턴 플래그를 참조하여 주목 블록이 이전의 블록과 같다고 식별된 경우에는, 제1색 데이터중 이전의 색 데이터를 반복적으로 출력함으로써 복원이 가능하게 된다. 이에 따라 메모리 버스의 대역폭을 절약하는 것이 가능하게 된다.
제4의 실시예에 의하면, 인접 블록간의 유사성에 착안하는 것으로 블록간의 중복을 감소시킬 수 있고, 압축률을 높일 수 있어, 상술한 실시예에서 설명한 1화소 입력과 1화소 출력으로 완료될 수 있는 색처리를 실시하는 경우에 관찰된 것들과 같은 효과를 얻을 수 있다.
[제5의 실시예]
다음에, 도면을 참조하여 본 발명에 따른 제5의 실시예를 상세하게 설명한다. 제5의 실시예에서는, 상술한 실시예들에서의 래스터 화상 데이터의 압축 처리에서의 램덤 액세스성을 높인 것이다. 이때, 제5의 실시예에서도 화상처리장치로서, 제1의 실시예와 같이, MFP를 예로 들어 설명한다.
상술한 바와 같이, 압축 처리는 화상 데이터에 의존하고, 그 압축 데이터 사이즈가 가변하는 가변길이 압축 처리다. 그 때문에 압축 데이터는, 랜덤 액세스성이 없고, 화상의 일부을 추출하여 처리하는 등의 목적에 알맞지 않는다.
다음에, 상기의 실시예들에서 설명한 방법에 비교하여, 랜덤 액세스성을 향상시키는 것에 착안한 압축 방법을, 도 12를 참조하여 상세하게 설명한다. 우선, 도 13에 나타낸 페이지 단위로 래스터 화상 데이터를 입력한다(S1201). 그리고, 화상 데이터의 페이지마다 1개의 페이지 배경 화소를 설정한다(S1202). 이것은, 압축 처리시에 최초의 기억 블록으로서 사용되기 위한 화소 데이터이고, 보통 화이트(RGB 각색 8비트 화상인 경우에는 255이거나, CMYK화상인 경우에는 0)다. 다음에, 압축부의 입력으로서 화상 데이터를 소정의 크기의 블록으로 분할한다(S1203). 제5의 실시예에서의 블록 사이즈는, 32×32화소다. 이하의 설명에서는, 상술한 2×2화소의 블록과 구별하기 위해서, 이들 블록을 "타일"이라고 부른다. 1개의 타일은, 각기 2×2화소 블록인 16×16개 블록을 포함한다. 도 13은, 페이지와, 32×32화소의 타일과, 2×2화소의 블록과의 관계를 도시한 도면이다.
다음에, 각 타일에 소정의 고정길이의 헤더 정보를 할당한다(S1204). 이 헤더 정보는, 예를 들면, 페이지ID, 타일 좌표, 색공간, 화소 데이터의 비트수, 타일의 데이터 사이즈, 속성정보의 유무, 및 압축 플래그를 포함한다. 여기에서, 페이지ID는, 각 페이지에 할당된 유니크(unique) ID번호다. 타일 좌표는, 이 타일이 페이지 단위의 래스터 화상내 타일의 위치를 나타내는 좌표 정보다. 여기에서는, 2차원, 즉 Ⅹ좌표와 Y좌표로 좌표가 기술된다. 색공간은, 이 타일이, RGB화상, CMYK화상 또는 그레이 스케일 화상인지를 식별하기 위한 식별자를 나타내는 정보다. 화소 데이터의 비트수는, 타일내의 화소당 비트 길이를 나타내는 정보다. 데이터 사이즈는, 이 타일의 제1색 데이터의 사이즈와, 제2, 제3 및 제4색의 데이터의 사이즈를 나타내는 바이트 단위의 정보다. 속성정보의 유무는, 화상 데이터에 문자나 사진등의 속성정보가 각 화소에 할당되어 있는 것인가 아닌가를 나타내는 정보다. 압축 플래그는, 이 타일이 압축된 데이터인가, 비압축된 데이터인가를 나타내는 플래그의 정보다. 또한, 이 압축 플래그에 관해서는, 보다 상세하게 후술한다.
다음에, 상기의 타일에 압축 처리를 적용한다(S1205). 이 압축 처리는, 상술한 실시예에서 설명한 압축 처리와 같아서, 여기서는 그 설명하지 않았다. 이때, 제1의 2×2화소 블록을 압축할 때 기억 블록으로서 최초의 기억 블록을 정의하여, 배경화소로 채워진 블록을 사용한다. 이에 따라 각 타일에 제1의 2×2화소 블록의 화소 데이터를 출력할 필요성이 없음에 따라서, 그들 블록에 대한 데이터량을 삭감할 수 있다. 이것은, 일반적인 원고화상일 경우에 화이트로 생길 가능성이 높은데, 그것은 배경화소가 화이트로 설정되기 때문이다.
그리고, 압축 처리된 타일 데이터의 데이터 사이즈를 산출한다. 이것은, 패턴 플래그 사이즈, 제1색 데이터 사이즈, 및 제2, 제3 및 제4색의 데이터 사이즈의 합이다. 패턴 플래그를 항상 추가하므로, 오리지날 화상 데이터의 데이터 사이즈로부터 데이터 사이즈를 축소시킬 보증은 없다. 그 때문에, 만약 압축후의 타일 데이터의 데이터 사이즈가 오리지날 타일 데이터의 데이터 사이즈를 초과하는 경우에는, 전반적인 메모리 효율면에서 오리지날 화상 데이터를 출력하는 것이 좋다. 따라서, 압축된 데이터 사이즈와 오리지날 데이터 사이즈를 비교해(S1206), 그 압축된 데이터 사이즈가 오리지날 데이터 사이즈를 초과하면, 헤더의 압축 플래그를 0으로 설정하고(S1207), 초과하지 않으면 그 압축 플래그를 1로 설정한다(S1209).
그리고, 상기의 비교 결과를 고려하여, 압축된 타일 데이터 혹은 오리지널의 타일 데이터 중 어느 한쪽을, 해당 타일의 헤더 정보와 함께 1개의 데이터에 패킹한다(S1208, S1210). 이 패킹된 데이터의 데이터 구조를 도 14에 나타낸다. 이후, 상기의 헤더를 포함하는 상기 데이터의 단위를, "패킷"이라고 부른다. 이러한 패킷은, 타일 단위로 압축처리가 종료하고, 데이터 사이즈가 결정된 후, 제1색 격납부와 제2, 제3 및 제4색의 격납부의 사이에 남은 공간이 없는 데이터를 패킹하여서 생성된다. 그 후에, 그 패킷은, DMAC를 거쳐서 메모리에 출력된다(S1211). 그리고, 이 패킷의 좌표와 사이즈를 리스트를 만들어, 패킷 관리 테이블을 작성한다(S1212). 이러한 패킷 관리 테이블의 일례를 도 15에 나타낸다. 상기의 처리를 최후의 타일까지 반복함으로써(S1213에서 YES), 페이지 단위의 래스터 화상의 압축 처리를 종료한다.
이때, 상기의 타일 단위로 데이터를 메모리에 기록하면, 도 16에 나타나 있는 바와 같이 패킷마다 사이즈가 다르고, 그 패킷들의 선두 어드레스가 이산적으로 배치된다. 그 때문에, 도 15에 나타낸 것과 같은 패킷 관리 테이블을 사용해서 임의의 좌표에서의 패킷의 선두 어드레스를 탐색한다. 따라서, 제1 패킷의 기록 어드레스가 기지이면, 패킷 관리 테이블에 기재되어 있는 좌표까지 데이터 사이즈를 오프셋함으로써 임의의 패킷의 선두 어드레스를 구할 수 있다. 예를 들면, 도 16에 나타낸 제3패킷을 판독하는 경우에는, 제1, 제2패킷의 사이즈 합계는, 패킷 관리 테이블로부터 얻어지고, 제1 패킷의 어드레스로부터 오프셋되어 제3패킷의 어드레스를 산출한다. 그리고, 거기에서 데이터를 판독하는 것으로, 제3패킷의 데이터를 취득하는 것이 가능하게 된다.
상술한 것처럼, 타일 단위로 임의의 데이터를 액세스할 수 있어서, 화상의 부분적인 처리가 가능하게 된다. 예를 들면, 화상내의 일 영역을 추출해서 처리하고 싶은 경우에는, 해당 영역에 대응하는 패킷 데이터를 취득해서 처리하면 좋다.
또한, 복원 처리는, 각 패킷에 헤더가 할당되므로, 그 헤더에 기재되어 있는 정보를 사용해서 복원처리를 행한다. 우선, 압축 플래그가 비압축된 데이터를 나타내는 경우에는, 헤더를 배제한 데이터를 출력하고, 그렇지 않은 경우에는 복원 처리를 행한다. 이 복원 처리에서는, 헤더로부터 패턴 플래그 격납 위치, 제1색의 데이터 격납 위치, 및 제2, 제3 및 제4색의 데이터 격납 위치를 구하고, 그 후에, 데이터는, 순차로 상술한 실시예들과 같이 타일 화상 데이터로 복원된다.
예를 들면, 패턴 플래그의 위치는, 헤더가 고정길이를 가지므로, 오프셋하여서 구해질 수 있다. 제1색의 데이터는, 타일 사이즈가 32×32화소일 때, 패턴 플래그의 사이즈가 32×32비트로 고정되므로, 패턴 플래그의 위치로부터 오프셋되어서 구해질 수 있다. 최후에, 상기 제2, 제3 및 제4색의 데이터는, 제1색의 데이터가 부정 길이를 가지므로, 헤더에 기재되어 있는 제1색의 데이터의 데이터 사이즈를 참조하여, 제1색의 데이터의 위치로부터 오프셋되어서 구해질 수 있다.
제5의 실시예에 의하면, 화상 데이터에 의존하고, 그 압축 데이터에 대한 데이터 사이즈가 가변하는 가변길이 압축 처리에서도, 압축 데이터에 대한 랜덤 액세스성을 향상시키고, 타일 단위로 화상의 일부를 추출하여 처리하는 것이 가능하다.
(기타의 실시예)
또한, 본 발명의 국면들은, 메모리 디바이스에 기록된 프로그램을 판독 및 실행하여 상기 실시예들의 기능들을 수행하는 시스템 또는 장치(또는 CPU 또는 MPU 등의 디바이스들)의 컴퓨터에 의해서, 또한, 시스템 또는 장치의 컴퓨터에 의해 수행된 단계들, 예를 들면, 메모리 디바이스에 기록된 프로그램을 판독 및 실행하여 상기 실시예들의 기능들을 수행하는 방법에 의해, 실현될 수도 있다. 이를 위해, 상기 프로그램은, 예를 들면, 네트워크를 통해 또는, 여러 가지 형태의 메모리 디바이스의 기록매체(예를 들면, 컴퓨터 판독 가능한 매체)로부터, 상기 컴퓨터에 제공된다.
본 발명을 예시적 실시예들을 참조하여 기재하였지만, 본 발명은 상기 개시된 예시적 실시예들에 한정되지 않는다는 것을 알 것이다. 아래의 청구항의 범위는, 모든 변형, 동등한 구조 및 기능을 포함하도록 아주 넓게 해석해야 한다.
본 출원은, 여기서 전체적으로 참고로 포함된, 2009년 9월 25일에 제출된 일본국 특허출원번호 2009-221444의 이점을 청구한다.

Claims (14)

  1. 화상 데이터를 미리 정해진 화소들의 수의 블록들로 분할하고, 그 분할된 블록들 각각을 순차적으로 처리하는 화상처리장치로서,
    상기 분할된 블록들의 각각에 대하여, 상기 분할된 블록들 각각에 포함된 색 데이터의 배치 패턴에 대응하는 패턴 플래그를 식별하는 식별 수단;
    상기 식별 수단에 의해 상기 분할된 블록들의 각각에 대하여 식별된 상기 패턴 플래그와 상기 분할된 블록들 각각에 포함된 색 데이터를 출력하고, 상기 분할된 블록들 각각에 대하여 출력된 상기 색 데이터는 상기 분할된 블록들 각각의 미리 정의된 위치에서의 화소에 대응하는 적어도 제1색 데이터를 포함하고, 상기 분할된 블록들 각각에 대하여 출력된 상기 색 데이터는 상기 분할된 블록들 각각이 다른 색 데이터를 포함하는 경우, 상기 제1색 데이터와는 다른 상기 색 데이터를 더 포함하는 출력 수단; 및
    상기 출력 수단에 의해 상기 분할된 블록들에 대하여 출력된 복수의 상기 패턴 플래그들을 제1 메모리 영역에 격납하고, 상기 출력 수단에 의해 상기 분할된 블록들에 대하여 출력된 상기 제1색 데이터의 값을 연속해서 제2 메모리 영역에 격납하며, 상기 출력 수단에 의해 상기 분할된 블록들에 대하여 출력된 상기 다른 색 데이터의 값들을 제3 메모리 영역에 격납하는 격납 수단을 구비한, 화상처리장치.
  2. 제 1 항에 있어서,
    상기 분할된 블록들 각각에 대하여 감색(color-reduction)처리를 행하는 감색처리수단을 더 구비하고,
    상기 감색처리수단이 상기 감색처리를 행한 후, 상기 식별 수단은 상기 감색처리가 행해지는 상기 분할된 블록들 각각에 대한 상기 색 데이터의 상기 배치 패턴에 대응하는 상기 패턴 플래그를 식별하는, 화상처리장치.
  3. 제 2 항에 있어서,
    색 데이터를 동일색으로서 간주해서 감색처리를 행할지 아니할 지를 판단할 때에 상기 감색처리수단에서 사용된 역치를 설정하기 위한 유저 인터페이스를 제공하는 설정 수단을 더 구비한, 화상처리장치.
  4. 제 1 항에 있어서,
    이전에 처리된 이전 블록의 색 데이터를 기억해 두는 기억 수단을 더 구비하고,
    상기 출력 수단은, 상기 처리 대상의 블록의 색 데이터와, 상기 기억 수단에 기억된 상기 이전 블록의 색 데이터간의 차이가 미리 정해진 임계값보다 작은 경우, 상기 이전 블록의 반복을 나타내는 패턴 플래그를 출력하고, 상기 처리 대상의 블록의 상기 색 데이터를 출력하지 않는, 화상처리장치.
  5. 제 1 항에 있어서,
    상기 블록내의 각 화소에 속성을 나타내는 속성 데이터가 할당되는 경우에, 상기 출력 수단은 상기 속성 데이터를 추가로 출력하는, 화상처리장치.
  6. 제 1 항에 있어서,
    페이지 화상은 상기 블록들보다도 많은 화소들의 수를 갖는 타일들로 분할되고, 상기 분할된 타일들은 상기 화상 데이터로서 간주되며, 각각이 미리 정해진 화소들의 수의 블록들로 분할되고, 상기 분할된 블록들 각각이 순차적으로 처리되는, 화상처리장치.
  7. 제 1 항에 있어서,
    상기 블록들은 2×2화소 블록들인, 화상처리장치.
  8. 제 7 항에 있어서,
    상기 분할된 블록들 각각의 상기 제1색 데이터는, 상기 2×2화소 블록들 각각의 미리 정해진 위치에서 화소에 대응하는 색 데이터인 것을 특징으로 하는 화상처리장치.
  9. 제 1 항에 있어서,
    상기 색 데이터는 화소값인, 화상처리장치.
  10. 화상 데이터를 2×2 화소 블록들로 분할하고, 그 분할된 블록들 각각을 순차적으로 처리하는 화상처리장치로서,
    상기 분할된 블록들의 각각에 대하여, 상기 분할된 블록들 각각에 포함된 색 데이터의 배치 패턴과 컬러 수를 나타내는 패턴 플래그를 식별하는 식별 수단;
    상기 2×2화소 블록들 각각의 미리 정의된 위치에서의 화소에 대응하는 색 데이터를 제1색 데이터로서 추출하고, 또한, 상기 식별된 패턴 플래그에 의해 나타낸 컬러 수가 2 내지 4 중 어느 하나로서 판단되는 경우에는, 상기 식별된 패턴 플래그에 정의된 배치 패턴에 의거하여 제2 내지 제4색 데이터를 추출하는 추출 수단; 및
    상기 식별 수단에 의해 식별된 각 블록의 복수의 상기 패턴 플래그들을 제1 메모리 영역에 격납하고, 상기 추출 수단에 의해 추출된 블록의 상기 제1색 데이터의 값을 연속해서 제2 메모리 영역에 격납하며, 상기 추출 수단에 의해 추출된 각 블록의 상기 제2 내지 제4색 데이터의 값들을 제3 메모리 영역에 격납하는 격납 수단을 구비한, 화상처리장치.
  11. 화상 데이터를 미리 정해진 화소들의 수의 블록들로 분할하고, 그 분할된 블록들 각각을 순차적으로 처리하는 화상처리장치의 처리 방법으로서,
    상기 분할된 블록들의 각각에 대하여, 상기 분할된 블록들 각각에 포함된 색 데이터의 배치 패턴에 대응하는 패턴 플래그를 식별하는 식별 단계;
    상기 식별 단계에서 상기 분할된 블록들의 각각에 대하여 식별된 상기 패턴 플래그와 상기 분할된 블록들 각각에 포함된 색 데이터를 출력하고, 상기 분할된 블록들 각각에 대하여 출력된 상기 색 데이터는 상기 분할된 블록들 각각의 미리 정의된 위치에서의 화소에 대응하는 적어도 제1색 데이터를 포함하고, 상기 분할된 블록들 각각에 대하여 출력된 상기 색 데이터는 상기 분할된 블록들 각각이 다른 색 데이터를 포함하는 경우, 상기 제1색 데이터와는 다른 상기 색 데이터를 더 포함하는 출력 단계; 및
    상기 출력 단계에서 상기 분할된 블록들에 대하여 출력된 복수의 상기 패턴 플래그들을 제1 메모리 영역에 격납하고, 상기 출력 단계에서 상기 분할된 블록들에 대하여 출력된 상기 제1색 데이터의 값을 연속해서 제2 메모리 영역에 격납하며, 상기 출력 단계에서 상기 분할된 블록들에 대하여 출력된 상기 다른 색 데이터의 값들을 제3 메모리 영역에 격납하는 격납 단계를 포함한, 화상처리장치의 처리 방법.
  12. 화상 데이터를 2×2 화소의 블록들로 분할하고, 그 분할된 블록들 각각을 순차적으로 처리하는 화상처리장치의 처리 방법으로서,
    상기 분할된 블록들의 각각에 대하여, 상기 분할된 블록들 중 하나의 블록에 포함되는 색 데이터의 배치 패턴과 컬러 수를 나타내는 패턴 플래그를 식별하는 식별 단계;
    상기 2×2 화소의 블록들 각각의 미리 정의된 위치에서의 화소에 대응하는 색 데이터를 제1색 데이터로서 추출하고, 또한, 상기 식별된 패턴 플래그에 의해 나타낸 컬러 수가 2 내지 4 중 어느 하나로서 판단되는 경우에는, 상기 식별된 패턴 플래그에 정의된 배치 패턴에 의거하여 제2 내지 제4색 데이터를 추출하는 추출 단계; 및
    상기 식별 단계에서 식별된 각 블록의 복수의 상기 패턴 플래그들을 제1 메모리 영역에 격납하고, 상기 추출 단계에서 추출된 블록의 상기 제1색 데이터의 값을 연속해서 제2 메모리 영역에 격납하며, 상기 추출 단계에서 추출된 각 블록의 상기 제2 내지 제4색 데이터의 값들을 제3 메모리 영역에 격납하는 격납 단계를 포함한, 화상처리장치의 처리 방법.
  13. 삭제
  14. 삭제
KR1020127009193A 2009-09-25 2010-09-01 화상처리장치 및 그 처리 방법 KR101490215B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2009-221444 2009-09-25
JP2009221444A JP5558767B2 (ja) 2009-09-25 2009-09-25 画像処理装置及びその処理方法
PCT/JP2010/065359 WO2011037009A1 (en) 2009-09-25 2010-09-01 Image processing apparatus and processing method therefor

Publications (2)

Publication Number Publication Date
KR20120065394A KR20120065394A (ko) 2012-06-20
KR101490215B1 true KR101490215B1 (ko) 2015-02-05

Family

ID=43795761

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127009193A KR101490215B1 (ko) 2009-09-25 2010-09-01 화상처리장치 및 그 처리 방법

Country Status (6)

Country Link
US (1) US8660347B2 (ko)
EP (1) EP2481206B1 (ko)
JP (1) JP5558767B2 (ko)
KR (1) KR101490215B1 (ko)
CN (1) CN102577345B (ko)
WO (1) WO2011037009A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9530189B2 (en) * 2009-12-31 2016-12-27 Nvidia Corporation Alternate reduction ratios and threshold mechanisms for framebuffer compression
JP5501041B2 (ja) * 2010-03-15 2014-05-21 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP5393574B2 (ja) 2010-04-08 2014-01-22 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP5538993B2 (ja) 2010-04-28 2014-07-02 キヤノン株式会社 画像処理装置、画像処理方法、プログラム、および記憶媒体
JP5479225B2 (ja) 2010-05-27 2014-04-23 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP2011254405A (ja) 2010-06-03 2011-12-15 Canon Inc 画像処理装置及びその処理方法
JP2011259246A (ja) 2010-06-09 2011-12-22 Canon Inc 画像処理装置、画像処理方法、及びプログラム
JP5595151B2 (ja) 2010-07-13 2014-09-24 キヤノン株式会社 画像処理装置、画像処理装置における圧縮方法、および、プログラム
JP5643574B2 (ja) 2010-08-26 2014-12-17 キヤノン株式会社 画像処理装置及び画像処理方法
KR101868435B1 (ko) * 2011-12-05 2018-06-19 삼성전자주식회사 영상 압축 장치 및 이를 포함하는 영상 처리 장치
CN103729375A (zh) * 2012-10-16 2014-04-16 中兴通讯股份有限公司 一种终端相片处理方法和装置
US9607407B2 (en) 2012-12-31 2017-03-28 Nvidia Corporation Variable-width differential memory compression
US10043234B2 (en) 2012-12-31 2018-08-07 Nvidia Corporation System and method for frame buffer decompression and/or compression
US9591309B2 (en) 2012-12-31 2017-03-07 Nvidia Corporation Progressive lossy memory compression
JP6001010B2 (ja) 2014-06-11 2016-10-05 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
US10115177B2 (en) 2014-06-27 2018-10-30 Samsung Electronics Co., Ltd. Online texture compression and decompression in hardware
US9947071B2 (en) 2014-06-27 2018-04-17 Samsung Electronics Co., Ltd. Texture pipeline with online variable rate dictionary compression
US9832388B2 (en) 2014-08-04 2017-11-28 Nvidia Corporation Deinterleaving interleaved high dynamic range image by using YUV interpolation
KR20170102806A (ko) * 2016-03-02 2017-09-12 한국전자통신연구원 비디오 신호 부호화/복호화 방법 및 이를 위한 장치
JP6914027B2 (ja) * 2016-11-09 2021-08-04 キヤノン株式会社 画像形成装置、画像形成方法
US10860399B2 (en) 2018-03-15 2020-12-08 Samsung Display Co., Ltd. Permutation based stress profile compression
US10776957B2 (en) 2018-10-02 2020-09-15 Samsung Electronics Co., Ltd. Online image compression in hardware
US10803791B2 (en) 2018-10-31 2020-10-13 Samsung Display Co., Ltd. Burrows-wheeler based stress profile compression
US10909700B2 (en) * 2019-04-02 2021-02-02 Samsung Electronics Co., Ltd. Display apparatus and image processing method thereof
US11308873B2 (en) 2019-05-23 2022-04-19 Samsung Display Co., Ltd. Redundancy assisted noise control for accumulated iterative compression error
US11245931B2 (en) 2019-09-11 2022-02-08 Samsung Display Co., Ltd. System and method for RGBG conversion
GB2593708C (en) * 2020-03-30 2022-08-31 Imagination Tech Ltd Methods and decompression units for decompressing image data compressed using pattern-based compression
CN113473121A (zh) * 2020-03-30 2021-10-01 畅想科技有限公司 基于图案的图像数据压缩
GB2608260B (en) * 2020-03-30 2023-11-01 Imagination Tech Ltd Pattern-based image data compression
CN114359029B (zh) * 2022-03-21 2022-06-21 广州匠芯创科技有限公司 图像处理方法及其装置、系统、存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05316360A (ja) * 1992-05-14 1993-11-26 Fuji Xerox Co Ltd 画像信号の符号化復号装置
JPH10136179A (ja) * 1996-11-01 1998-05-22 Hitachi Ltd データ処理装置
KR20050014724A (ko) * 2003-07-30 2005-02-07 세이코 엡슨 가부시키가이샤 감색 처리 장치, 인쇄 드라이버, 인쇄 제어 장치, 감색방법 및 기록 매체
JP2008301373A (ja) 2007-06-01 2008-12-11 Canon Inc 画像符号化装置及び画像復号装置及びそれらの制御方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3436958B2 (ja) * 1993-12-08 2003-08-18 株式会社東芝 画像入力装置
JP3302862B2 (ja) * 1995-09-20 2002-07-15 株式会社日立製作所 カラー画像信号の圧縮方法、画像符号化復号化装置および画像処理システム
JPH09244832A (ja) * 1996-03-08 1997-09-19 Hitachi Ltd 画像処理システム
JPH1051642A (ja) * 1996-07-31 1998-02-20 Fuji Xerox Co Ltd 画像処理装置
US6731400B1 (en) * 1996-11-01 2004-05-04 Hitachi, Ltd. Color image processing apparatus which performs different image processings depending on region of color image
JPH10257488A (ja) * 1997-03-12 1998-09-25 Oki Data:Kk 画像符号化装置および画像復号化装置
JP4124910B2 (ja) * 1999-05-18 2008-07-23 キヤノン株式会社 画像データの復号化方法及びその装置
JP3629243B2 (ja) * 2002-02-13 2005-03-16 Necマイクロシステム株式会社 モデリング時の距離成分を用いてレンダリング陰影処理を行う画像処理装置とその方法
JP3790728B2 (ja) 2002-09-11 2006-06-28 株式会社東芝 画像符号化装置、画像復号化装置及びそれらの方法
JP2004153751A (ja) * 2002-11-01 2004-05-27 Ricoh Co Ltd 画像処理装置及び画像処理方法
WO2004068844A1 (ja) * 2003-01-30 2004-08-12 Fujitsu Limited 画像圧縮方法、画像復元方法、プログラム及び装置
JP2005303606A (ja) * 2004-04-09 2005-10-27 Ricoh Co Ltd 画像処理装置、画像処理方法およびプリンタドライバ
US8213727B2 (en) * 2007-06-20 2012-07-03 Canon Kabushiki Kaisha Image encoding apparatus and image decoding apparatus, and control method thereof
JP2009100026A (ja) * 2007-10-12 2009-05-07 Canon Inc 画像処理装置
JP4510069B2 (ja) * 2007-12-10 2010-07-21 シャープ株式会社 画像処理装置、画像表示装置、画像形成装置、画像処理方法、コンピュータプログラム及び記憶媒体
JP5241311B2 (ja) * 2008-05-08 2013-07-17 キヤノン株式会社 画像形成装置、画像形成方法およびプログラム
US8274710B2 (en) * 2008-06-25 2012-09-25 Canon Kabushiki Kaisha Image processing using count variation
US20100123721A1 (en) * 2008-11-18 2010-05-20 Hon Wah Wong Image device and data processing system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05316360A (ja) * 1992-05-14 1993-11-26 Fuji Xerox Co Ltd 画像信号の符号化復号装置
JPH10136179A (ja) * 1996-11-01 1998-05-22 Hitachi Ltd データ処理装置
KR20050014724A (ko) * 2003-07-30 2005-02-07 세이코 엡슨 가부시키가이샤 감색 처리 장치, 인쇄 드라이버, 인쇄 제어 장치, 감색방법 및 기록 매체
JP2008301373A (ja) 2007-06-01 2008-12-11 Canon Inc 画像符号化装置及び画像復号装置及びそれらの制御方法

Also Published As

Publication number Publication date
WO2011037009A1 (en) 2011-03-31
US20110188750A1 (en) 2011-08-04
JP5558767B2 (ja) 2014-07-23
CN102577345A (zh) 2012-07-11
EP2481206A4 (en) 2013-09-04
JP2011071767A (ja) 2011-04-07
CN102577345B (zh) 2015-03-11
KR20120065394A (ko) 2012-06-20
EP2481206A1 (en) 2012-08-01
US8660347B2 (en) 2014-02-25
EP2481206B1 (en) 2018-04-18

Similar Documents

Publication Publication Date Title
KR101490215B1 (ko) 화상처리장치 및 그 처리 방법
US8553301B2 (en) Image processing apparatus, method, and program product to perform color-reduction processing for a block
US8452083B2 (en) Image processing apparatus, image processing method, and computer-readable medium
JP5595151B2 (ja) 画像処理装置、画像処理装置における圧縮方法、および、プログラム
JP5132517B2 (ja) 画像処理装置および画像処理方法
CN1756296B (zh) 图像处理装置和图像处理方法
JP3843581B2 (ja) 画像符号化装置、画像復号化装置および画像処理装置、並びに画像符号化方法、画像復号化方法および画像処理方法
JPH1051642A (ja) 画像処理装置
US8953220B2 (en) Image processing for rotation of compressed image data
US8780414B2 (en) Image processing apparatus, image processing method, and computer-readable medium for image data compression
US8406517B2 (en) Image processing apparatus and image processing method
JP2004112695A (ja) 画像処理装置及びその処理方法
US8494261B2 (en) Image processing apparatus, image processing method, and computer-readable medium
JP5643578B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP4047207B2 (ja) 画像符号化装置、画像符号化方法及びプログラム
JP5595142B2 (ja) 画像処理装置及び画像処理方法
JP5606223B2 (ja) 画像処理装置及びその処理方法
JP2013143609A (ja) 画像処理装置、符号化方法及び復号化方法
JP2013121154A (ja) 画像処理装置
JP2012074897A (ja) 画像処理装置、画像処理方法、およびプログラム

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171226

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190122

Year of fee payment: 5