JP6855722B2 - 画像処理装置およびプログラム - Google Patents

画像処理装置およびプログラム Download PDF

Info

Publication number
JP6855722B2
JP6855722B2 JP2016183633A JP2016183633A JP6855722B2 JP 6855722 B2 JP6855722 B2 JP 6855722B2 JP 2016183633 A JP2016183633 A JP 2016183633A JP 2016183633 A JP2016183633 A JP 2016183633A JP 6855722 B2 JP6855722 B2 JP 6855722B2
Authority
JP
Japan
Prior art keywords
image processing
order
point
data
data string
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2016183633A
Other languages
English (en)
Other versions
JP2018050143A (ja
Inventor
玉谷 光之
光之 玉谷
和雄 山田
和雄 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2016183633A priority Critical patent/JP6855722B2/ja
Priority to US15/456,910 priority patent/US10694194B2/en
Priority to CN201710321425.6A priority patent/CN107864381B/zh
Publication of JP2018050143A publication Critical patent/JP2018050143A/ja
Application granted granted Critical
Publication of JP6855722B2 publication Critical patent/JP6855722B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、画像処理装置およびプログラムに関する。
カラー画像などの画像データの符号化処理として、面順符号化処理と点順符号化処理が知られている。例えば特許文献1には、画像データを中間コードに変換するソースコーダにおける処理を点順で行い、中間コードを符号データに変換するエントロピーコーダを並列化することにより、符号化処理の処理時間を短縮し、複数の色成分の共通情報と各色成分に固有の個別情報に分解して符号化することにより、面順で復号化できる画像データの符号量を小さくする装置が開示されている。
特開2007−214997号公報
面順符号化処理と点順符号化処理には各々に一長一短があり、例えば面順符号化処理と点順符号化処理の両者の長所を活かした新たな符号化の登場が期待されている。
本発明は、複数データ列に共通する共通ラン長を用いた各データ列の符号化を実現することにある。
請求項1に係る発明は、複数の色成分に対応し、各データが各画素の色成分の画素値を表す複数データ列において、全てのデータ列それぞれにおいて同じ画素値が連続する部分の1より大きいラン長である共通ラン長の個数であるラン長個数を用いて、前記複数データ列の各データ列を画素値とラン長個数の組み合わせによるベクタ形式に符号化するベクタ化処理部と、前記ベクタ形式の各データ列内のラン長個数を維持し、画素値を変更する面順画像処理部と、前記ベクタ形式の各データ列内の画素値をその画素値のラン長個数倍に展開することにより、点順画像処理用の各データ列を得る点順前処理部と、前記点順画像処理用の各データ列の画素値を変更する点順画像処理部と、を備えることを特徴とする画像処理装置である。
請求項に係る発明は、請求項に記載の画像処理装置において、前記ベクタ形式の各データ列内の画素値を共通ラン長と当該画素値のラン長個数から得られるラン長倍に展開することにより、前記ベクタ形式の各データ列をラスタ形式に復号化するラスタ化処理部をさらに有することを特徴とする画像処理装置である。
請求項に係る発明は、請求項に記載の画像処理装置において、前記点順画像処理用の各データ列を画素値とラン長個数の組み合わせによるベクタ形式に再ベクタ化することにより、面順画像処理用の各データ列を得る面順前処理部をさらに有することを特徴とする画像処理装置である。
請求項に係る発明は、コンピュータ複数の色成分に対応し、各データが各画素の色成分の画素値を表す複数データ列において、全てのデータ列それぞれにおいて同じ画素値が連続する部分の1より大きいラン長である共通ラン長の個数であるラン長個数を用いて、前記複数データ列の各データ列を画素値とラン長個数の組み合わせによるベクタ形式に符号化するベクタ化処理部と、前記ベクタ形式の各データ列内のラン長個数を維持し、画素値を変更する面順画像処理部と、前記ベクタ形式の各データ列内の画素値をその画素値のラン長個数倍に展開することにより、点順画像処理用の各データ列を得る点順前処理部と、前記点順画像処理用の各データ列の画素値を変更する点順画像処理部と、として機能させる、ことを特徴とするプログラムである。
請求項1に係る発明により、複数データ列に共通する共通ラン長を用いた各データ列の符号化が実現される。
請求項に係る発明により、共通ラン長の個数であるラン長個数を用いてベクタ形式に符号化された複数データ列がラスタ形式に復号化される。
請求項に係る発明により、面順画像処理用の各データ列を得る前処理が実現される。
請求項に係る発明により、複数データ列に共通する共通ラン長を用いた各データ列の符号化を実現するプログラムが提供される。
本発明の実施において好適な画像処理装置の具体例を示す図である。 面順画像処理の具体例を説明するための図である。 点順画像処理の具体例を説明するための図である。 面順画像処理と点順画像処理が混在する画像処理の比較例を示す図である。 図1の画像処理装置によるベクタ化処理を説明するための図である。 各データ列内でラン長が変化する場合のベクタ化処理を説明するための図である。 図1の画像処理装置による画像処理の具体例1を示す図である。 図1の画像処理装置による画像処理の具体例2を示す図である。 図1の画像処理装置による画像処理の具体例3を示す図である。 図1の画像処理装置による画像処理の具体例4を示す図である。
図1は、本発明の実施において好適な画像処理装置の具体例を示す図である。図1の画像処理装置100は、画像処理ブロックを備えており、画像データ(文字や数字や記号のみのデータを含む)に対して画像処理を実行する。
図1に示す画像処理ブロックは、ベクタ化処理部10と点順前処理部20と点順画像処理部30と面順前処理部40と面順画像処理部50とラスタ化処理部60で構成される。画像処理ブロックは、入力データ(画像データ)に対して各種処理を実行し、処理後の画像データを出力データとして出力する。画像処理ブロック内の各部が実行する処理の具体例については後に詳述する。
画像処理ブロックの内部構成(符号を付した各部)は、各種のハードウェアを利用して実現することができる。例えばDRP(Dynamic Reconfigurable Processor:動的再構成可能プロセッサ)などを利用して画像処理ブロック内の少なくとも一部が実現される。また、例えばPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)などを利用して画像処理ブロック内の少なくとも一部が実現されてもよい。なお、画像処理ブロックの内部構成を実現するための上述したハードウェアはあくまでも一例に過ぎず、他のハードウェアが利用されてもよい。
例えば、画像処理ブロック内の少なくとも一部がCPUやメモリ等のハードウェアとそれらの動作を規定するプログラムとの協働により、つまりコンピュータにより実現されてもよい。画像処理ブロック内の機能をコンピュータにより実現する場合には、後に詳述する画像処理ブロック内の各部の処理に対応したプログラムが、例えば、ディスクやメモリなどのコンピュータが読み取り可能な記憶媒体に記憶され、その記憶媒体を介してコンピュータに提供される。もちろん、インターネット等の電気通信回線を介して当該プログラムがコンピュータに提供されてもよい。そして、コンピュータが備えるCPUやメモリ等のハードウェア資源と、提供された当該プログラム(ソフトウェア)との協働により、画像処理ブロックの機能が実現される。
また、画像処理装置100は、図1に示す画像処理ブロックの他に、例えば、画像読み取り機能(スキャン機能)等を備え、画像読み取り機能を介して紙などの媒体から得られた画像データを処理対象とする。また、画像処理装置100による画像処理後の画像データに対応した画像が紙などの媒体に印刷されてもよいし、画像処理後の画像データが外部の装置に提供されてもよい。画像処理装置100の好適な具体例には、複写機、印刷機、ファクシミリ(FAX)などが含まれる。さらに、複写機、印刷機、ファクシミリのうちのいずれか複数の機能を兼ね備えた複合機も画像処理装置100の好適な具体例である。もちろん、例えばコンピュータ等の外部の装置から得られる画像データを画像処理装置100が画像処理してもよい。
図1の画像処理装置100の全体構成は以上のとおりである。次に、画像処理装置100により実現される処理や機能の具体例について説明する。なお、図1に示した構成(符号を付した各部)については、以下の説明において図1の符号を利用する。
画像処理装置100は、画像データに対して面順画像処理と点順画像処理を実行する機能を備えている。そこで、まず面順画像処理と点順画像処理の具体例について説明する。
図2は、面順画像処理の具体例を説明するための図である。図2には、YMCKの4つの色成分に対応した4つの入力データ(データ列)に対する面順画像処理の具体例が図示されている。なお、4つの色成分は、それぞれ、Y(イエロー),M(マゼンダ),C(シアン),K(ブラック)である。
面順画像処理では、各色成分の入力データに対する画像処理結果を、他の色成分の入力データの影響を受けずに得ることができる。例えば、MCK成分のデータ値(画素値)とは無関係に、Y成分のデータ値(画素値)に応じてY成分の画像処理結果が得られる。
そこで、面順画像処理用のベクタ化として、各色成分ごとに他成分の影響を受けない面順ベクタ化(面順用のベクタ化)が可能になる。図2の具体例では、面順画像処理の前に面順ベクタ化が行われる。
面順ベクタ化では、例えば、図2に示す具体例のように、YMCKの各色成分ごとに同じ画素値の連続数であるラン長が決定され、各色成分の入力データ(データ列)が画素値とラン長の組み合わせによるベクタ形式に符号化される。
面順ベクタ化は点順ベクタ化(図3)よりもベクタ化率(圧縮率)が高い。そのため、面順画像処理では、点順ベクタ化よりも面順ベクタ化の方が画像処理時間が短くなる。しかし、面順ベクタ化をそのまま点順画像処理(図3)に適用することはできず、点順画像処理では点順ベクタ化が必要になる。
図3は、点順画像処理の具体例を説明するための図である。図3には、図2と同じ入力データ、つまりYMCKの4つの色成分に対応した4つの入力データ(データ列)に対する点順画像処理の具体例が図示されている。
点順画像処理では、各色成分の入力データに対する画像処理結果を得るにあたり、他の色成分の入力データが必要になる。例えば、Y成分のデータ値(画素値)に関する点順画像処理結果を得るために、Y成分のデータ値(画素値)と同じ画素位置に対応したMCK成分のデータ値(画素値)が必要になる。
そこで、点順画像処理用のベクタ化として、同じ画素位置に対応した4つの色成分(YMCK)のデータ値(画素値)が同じタイミングで処理できるように、点順ベクタ化(点順用のベクタ化)が行われる。図3の具体例では、点順画像処理の前に点順ベクタ化が行われる。
点順ベクタ化では、例えば、図3に示す具体例のように、同じ画素位置に対応した4つの色成分のラン長が同じになるように、各色成分のラン長が決定され、各色成分の入力データ(データ列)が画素値とラン長の組み合わせによるベクタ形式に符号化される。
点順ベクタ化は点順画像処理にも面順画像処理にも適用することができる。しかし、点順ベクタ化は面順ベクタ化(図2)よりもベクタ化率(圧縮率)が低い。そのため、面順画像処理では、点順ベクタ化よりも面順ベクタ化の方が画像処理時間の面で有利である。
図4は、面順画像処理と点順画像処理が混在する画像処理の比較例を示す図である。図4には、YMCKの4つの色成分に対応した4つの入力データ(データ列)に対し、面順画像処理(A〜C)を実行してから点順画像処理を実行し、YMCKの4つの色成分に対応した4つの出力データ(データ列)を得る具体例が図示されている。
比較例1では、まず、YMCKの4つの入力データが点順ベクタ化され、点順ベクタ化された4つの入力データに対して、面順画像処理(A〜C)と点順画像処理が実行され、画像処理後の4つの入力データがラスタ化されて、YMCKの4つの出力データとして出力される。
比較例2では、まず、YMCKの4つの入力データが面順ベクタ化され、面順ベクタ化された4つの入力データに対して面順画像処理(A〜C)が実行される。そして、面順画像処理後の4つの入力データが点順ベクタ化され、点順ベクタ化された4つの入力データに対して点順画像処理が実行され、画像処理後の4つの入力データがラスタ化されて、YMCKの4つの出力データとして出力される。
ベクタ化処理に注目すると、比較例1では、ベクタ化処理が点順ベクタ化のみであるのに対し、比較例2では、面順ベクタ化と点順ベクタ化の2つのベクタ化処理が行われる。したがって、比較例1の方が比較例2よりもベクタ化処理の回路規模が小さくて済む。
面順画像処理に注目すると、比較例1では、点順ベクタ化されたデータに対して面順画像処理が実行されるのに対し、比較例2では、面順ベクタ化されたデータに対して面順画像処理が実行される。したがって、比較例2の方が比較例1よりも面順画像処理の処理時間が短くなる。
図2,図3を利用して説明したように、面順ベクタ化と点順ベクタ化には各々に一長一短がある。また、図4を利用して説明したように、面順画像処理と点順画像処理が混在する場合には、面順ベクタ化と点順ベクタ化の順序が回路規模や画像処理性能に影響を及ぼしてしまう。そこで、図1の画像処理装置100は、以下に説明する新方式のベクタ化(符号化)を実現する。
図5は、図1の画像処理装置100によるベクタ化処理を説明するための図である。画像処理装置100は、各データ列内で連続する同じ画素値のラン情報として、複数データ列に共通する共通ラン長の個数を用いて、複数データ列の各データ列を符号化(ベクタ化)する。図5には、画像処理装置100のベクタ化処理部10により実行されるベクタ化処理の具体例が図示されている。
ベクタ化処理部10は、複数データ列の各データ列内で連続する同じ画素値の連続数であって複数データ列同士で等しくなるように区切られた連続数を共通ラン長とする。そして、ベクタ化処理部10は、共通ラン長の個数であるラン長個数を用いて、複数データ列の各データ列を画素値とラン長個数の組み合わせによるベクタ形式に符号化する。
図5には、YMCKの4つの色成分に対応した4つの入力データ(データ列)に対するベクタ化処理部10によるベクタ化処理の具体例が図示されている。図5に示す具体例では、Y成分のデータ列がラン長2の画素値で構成され、M成分のデータ列がラン長4の画素値で構成され、C成分のデータ列がラン長8の画素値で構成され、K成分のデータ列がラン長16の画素値で構成されている。
図5の具体例では、YMCKの4つのデータ列で互いに等しくなるように区切られた連続数(ラン長)が、ラン長2,ラン長4,ラン長8,ラン長16の最公約数であるラン長2となる。そこで、図5の具体例では、ラン長2が共通ラン長とされる。
そして、YMCKの各データ列が、共通ラン長の個数であるラン長個数を用いて、画素値とラン長個数の組み合わせによるベクタ形式に符号化される。例えば、Y成分のデータ列(入力データ)は、ラン長2の画素値で構成されており、ラン長2が共通ラン長(ラン長2)の1個分である。そこで、Y成分のデータ列は、画素値とラン長個数1の組み合わせによるベクタ形式に符号化される。
また、例えば、M成分のデータ列(入力データ)は、ラン長4の画素値で構成されており、ラン長4が共通ラン長(ラン長2)の2個分である。そこで、M成分のデータ列は、画素値とラン長個数2の組み合わせによるベクタ形式に符号化される。また、C成分とK成分のデータ列(入力データ)は、それぞれ、ラン長8とラン長16の画素値で構成されており、それぞれ、共通ラン長(ラン長2)の4個分と8個分である。そこで、C成分とK成分のデータ列は、それぞれ、ラン長個数4とラン長個数8によりベクタ形式に符号化される。
図6は、各データ列内でラン長が変化する場合のベクタ化処理を説明するための図である。図6に示す具体例において、Y成分のデータ列(入力データ)のラン長が200,100,300,400と変化し、M成分のデータ列(入力データ)のラン長が300,700と変化し、C成分のデータ列(入力データ)のラン長が200,800と変化する。K成分のデータ列(入力データ)のラン長は1000である。
そこで、図6の具体例において、ベクタ化処理部10は、各データ列内のラン長の変化に応じて、第1の共通ラン長(1)のラン長を200、第2の共通ラン長(2)のラン長を100、第3の共通ラン長(3)のラン長を300、第4の共通ラン長(4)のラン長を400とし、共通ラン長を変化させる。
そして、Y成分の画素値A1のラン長は200であり、共通ラン長(1)の1個分に等しいため、画素値A1に対してラン長個数1が対応付けられる。また、Y成分の画素値A2のラン長は100であり、共通ラン長(2)の1個分に等しいため、画素値A2に対してラン長個数1が対応付けられる。同様に、Y成分の画素値A3のラン長は共通ラン長(3)の1個分であるため、画素値A3に対してラン長個数1が対応付けられ、Y成分の画素値A4のラン長は共通ラン長(4)の1個分であるため、画素値A4に対してラン長個数1が対応付けられる。
M成分の画素値B1のラン長は300であり、ラン長200の共通ラン長(1)とラン長100の共通ラン長(2)の2個分に等しい。そのため、画素値B1に対してラン長個数2が対応付けられる。また、M成分の画素値B2のラン長は700であり、ラン長300の共通ラン長(3)とラン長400の共通ラン長(4)の2個分に等しいため、画素値B2に対してラン長個数2が対応付けられる。
C成分の画素値C1のラン長は200であり、ラン長200の共通ラン長(1)の1個分に等しい。そのため、画素値C1に対してラン長個数1が対応付けられる。また、C成分の画素値C2のラン長は800であり、ラン長100の共通ラン長(2)とラン長300の共通ラン長(3)とラン長400の共通ラン長(4)の3個分に等しい。そのため、画素値C2に対してラン長個数3が対応付けられる。
そして、K成分の画素値D1のラン長は1000であり、ラン長200の共通ラン長(1)とラン長100の共通ラン長(2)とラン長300の共通ラン長(3)とラン長400の共通ラン長(4)の4個分に等しい。そのため、画素値D1に対してラン長個数4が対応付けられる。
ベクタ化処理部10は、図6に示す具体例のように、各データ列内でラン長が変化する場合には、必要に応じて共通ラン長を変化させて、画素値とラン長個数の組み合わせによるベクタ形式への符号化を実現する。
図7は、図1の画像処理装置100による画像処理の具体例1を示す図である。図7の具体例1では、YMCKの4つの色成分に対応した4つの入力データ(データ列)に対して、画像処理として面順画像処理のみが実行される。
まず、ベクタ化処理部10により、YMCKの各入力データ(各データ列)が、共通ラン長の個数であるラン長個数を用いて、画素値とラン長個数の組み合わせによるベクタ形式に符号化される(図5参照)。
次に、面順画像処理部50は、ベクタ化処理部10によりベクタ化された各入力データ(各データ列)に対して面順画像処理を実行する。面順画像処理において、例えば、各入力データのラン長個数はそのまま維持され、画素値のみが処理内容に応じて変更される。
そして、面順画像処理された各入力データ(各データ列)は、ラスタ化処理部60によりラスタ形式に復号化される。ラスタ化処理部60は、面順画像処理後の各入力データ、つまりベクタ形式の各データ列内の画素値を共通ラン長とその画素値のラン長個数から得られるラン長倍に展開することにより、ベクタ形式の各データ列をラスタ形式に復号化して出力データとして出力する。
例えば、図7の具体例において、面順画像処理後におけるK成分のデータ列が画素値とラン長個数8のベクタ形式の場合、ラスタ化処理部60は、共通ラン長2とラン長個数8からラン長16(=2×8)を得ることにより、ベクタ形式であるK成分の画素値を16倍(ラン長倍)に展開(コピー)して、同じ画素値が16個連続するラスタ形式のデータ列に復号化する。共通ラン長が変化する場合には、変化する共通ラン長をラン長個数分だけ加算することにより、ラン長が算出される(図6参照)。
なお、図7には代表例としてK成分のデータ列に対する処理のみを図示しているが、YMCの各データ列(各入力データ)に対しても、ベクタ化処理部10によるベクタ化処理と、面順画像処理部50による面順画像処理と、ラスタ化処理部60によるラスタ化処理が実行される。また、図7の具体例において、共通ラン長とラン長個数は、ベクタ化処理部10からラスタ化処理部60に転送される。
図7の具体例1によれば、面順画像処理部50において処理されるデータ数(画素値の個数)が、図2の具体例における面順ベクタ化の場合と同じであるため、面順ベクタ化の場合と同程度に画像処理が高速化される。
図8は、図1の画像処理装置100による画像処理の具体例2を示す図である。図8の具体例2では、YMCKの4つの色成分に対応した4つの入力データ(データ列)に対して、画像処理として点順画像処理のみが実行される。
まず、ベクタ化処理部10により、YMCKの各入力データ(各データ列)が、共通ラン長の個数であるラン長個数を用いて、画素値とラン長個数の組み合わせによるベクタ形式に符号化される(図5参照)。
次に、点順前処理部20により点順前処理が実行される。点順前処理部20は、ベクタ化処理部10によりベクタ化された各入力データ(各データ列)内の画素値をその画素値のラン長個数倍に展開することにより、点順画像処理用の各データ列を得る前処理を実行する。例えば、図8の具体例において、ベクタ化されたK成分のデータ列が画素値とラン長個数8のベクタ形式の場合、点順前処理部20は、K成分の画素値を8倍(ラン長個数倍)に展開(コピー)して、同じ画素値が8個連続するデータ列を形成する。
こうして、点順前処理により、ベクタ形式の共通ラン長を維持しつつ、全ての画素値のラン長個数が1となる各データ列が形成される。つまり、図8の点順前処理により、図3の点順ベクタ化の場合と同様に、YMCKの4つの入力データ(データ列)のデータ長(画素値の数)が揃えられる。
次に、点順画像処理部30は、点順前処理された各入力データ(各データ列)に対して点順画像処理を実行する。点順画像処理により、例えば、各入力データのラン長個数は1のまま維持され、画素値のみが処理内容に応じて変更される。
そして、点順画像処理された各入力データ(各データ列)は、ラスタ化処理部60によりラスタ形式に復号化される。ラスタ化処理部60は、点順画像処理後の各入力データ(各データ列内)の画素値を共通ラン長とその画素値のラン長個数から得られるラン長倍に展開することにより、ベクタ形式の各データ列をラスタ形式に復号化して出力データとして出力する。
なお、図8の具体例では、点順画像処理された4つの色成分に対応した4つのデータ列内において、全ての画素値のラン長個数が1であるため、ラスタ化処理部60による復号化における画素値のラン長は共通ラン長に等しい。そのため、図8の具体例では、点順前処理部20から点順画像処理部30へのデータ転送と、点順画像処理部30からラスタ化処理部60へのデータ転送において、各データ列の画素値のみを転送してラン長個数の転送を省略してもよい。また、共通ラン長は例えばベクタ化処理部10からラスタ化処理部60に転送される。
図8の具体例2によれば、点順画像処理部30の前段に、比較的シンプルな回路構成で実現できる点順前処理部20を追加することにより、点順画像処理が可能になる。
図9は、図1の画像処理装置100による画像処理の具体例3を示す図である。図9の具体例3では、YMCKの4つの色成分に対応した4つの入力データ(データ列)に対して、画像処理として、面順画像処理の実行後に点順画像処理が実行される。
まず、ベクタ化処理部10により、YMCKの各入力データ(各データ列)が、共通ラン長の個数であるラン長個数を用いて、画素値とラン長個数の組み合わせによるベクタ形式に符号化される(図5参照)。
次に、面順画像処理部50は、ベクタ化処理部10によりベクタ化された各入力データ(各データ列)に対して面順画像処理を実行する。面順画像処理において、例えば、各入力データのラン長個数はそのまま維持され、画素値のみが処理内容に応じて変更される。
そして、面順画像処理された各入力データ(各データ列)は、点順前処理部20により点順前処理を施される。点順前処理部20は、ベクタ化された面順画像処理後の各入力データ(各データ列)内の画素値をその画素値のラン長個数倍に展開することにより、点順画像処理用の各データ列を得る前処理を実行する。例えば、図9の具体例において、ベクタ化された面順画像処理後のK成分のデータ列が画素値とラン長個数8のベクタ形式の場合に、点順前処理部20は、K成分の画素値を8倍(ラン長個数倍)に展開(コピー)して同じ画素値が8個連続するデータ列を形成する。
こうして、点順前処理により、ベクタ形式の共通ラン長を維持しつつ、全ての画素値のラン長個数が1となる各データ列が形成される。つまり、図9の点順前処理により、図3の点順ベクタ化の場合と同様に、YMCKの4つの入力データ(データ列)のデータ長(画素値の数)が揃えられる。
そして、図8の具体例2と同様に、図9の具体例3においても、点順画像処理部30が点順前処理された各入力データ(各データ列)に対して点順画像処理を実行し、点順画像処理された各入力データがラスタ化処理部60によりラスタ形式に復号化される。
なお、図9の具体例3において、点順前処理部20から点順画像処理部30へのデータ転送と、点順画像処理部30からラスタ化処理部60へのデータ転送において、各データ列の画素値のみを転送してラン長個数の転送を省略してもよい。また、共通ラン長は例えばベクタ化処理部10からラスタ化処理部60に転送される。
図9の具体例3によれば、面順ベクタ化と同程度に面順画像処理が高速化され、比較的シンプルな回路(点順前処理部20)の追加により点順画像処理が実行可能になる。
図10は、図1の画像処理装置100による画像処理の具体例4を示す図である。図10の具体例4では、YMCKの4つの色成分に対応した4つの入力データ(データ列)に対して、画像処理として、面順画像処理の実行後に点順画像処理が実行され、さらに、点順画像処理の実行後に面順画像処理が実行される。
図10の具体例4におけるベクタ化処理部10から点順画像処理部30までの処理は、図9の具体例3におけるベクタ化処理部10から点順画像処理部30までの処理と同じである。
つまり、図10の具体例4においても、まず、ベクタ化処理部10により、YMCKの各入力データ(各データ列)が、共通ラン長の個数であるラン長個数を用いて、画素値とラン長個数の組み合わせによるベクタ形式に符号化される(図5参照)。その後、面順画像処理部50による面順画像処理と、点順前処理部20による点順前処理と、点順画像処理部30による点順画像処理が順に実行される。
図10の具体例4では、点順画像処理後の各入力データが面順前処理部40により面順前処理を施される。面順前処理部40は、点順画像処理用の各入力データ(各データ列)を画素値とラン長個数の組み合わせによるベクタ形式に再ベクタ化することにより、面順画像処理用の各データ列を得る前処理を実行する。
例えば、図10の具体例において、点順画像処理後のY成分は、同じ画素値が1個ずつのデータ列であるため、画素値とラン長個数1の組み合わせによるベクタ形式に再ベクタ化される。点順画像処理後のM成分は、同じ画素値が2個連続するデータ列であるため、画素値とラン長個数2の組み合わせによるベクタ形式に再ベクタ化される。また、点順画像処理後のC成分は、同じ画素値が4個連続するデータ列であるため、画素値とラン長個数4の組み合わせによるベクタ形式に再ベクタ化され、点順画像処理後のK成分は、同じ画素値が8個連続するデータ列であるため、画素値とラン長個数8の組み合わせによるベクタ形式に再ベクタ化される。
そして、面順画像処理部50は、再ベクタ化された各入力データ(各データ列)に対して面順画像処理を実行する。面順画像処理において、例えば、各入力データのラン長個数はそのまま維持され、画素値のみが処理内容に応じて変更される。その後、面順画像処理された各入力データ(各データ列)は、ラスタ化処理部60によりラスタ形式に復号化される。
なお、図10の具体例4において、点順前処理部20から点順画像処理部30へのデータ転送と、点順画像処理部30から面順前処理部40へのデータ転送において、各データ列の画素値のみを転送してラン長個数の転送を省略してもよい。また、共通ラン長は例えばベクタ化処理部10からラスタ化処理部60に転送される。
図10の具体例4によれば、面順ベクタ化と同程度に面順画像処理が高速化され、比較的シンプルな回路(点順前処理部20と面順前処理部40)の追加により、点順画像処理と面順画像処理が交互に混在する画像処理が実行可能になる。
以上、本発明の好適な実施形態を説明したが、上述した実施形態は、あらゆる点で単なる例示にすぎず、本発明の範囲を限定するものではない。本発明は、その本質を逸脱しない範囲で各種の変形形態を包含する。
10 ベクタ化処理部、20 点順前処理部、30 点順画像処理部、40 面順前処理部、50 面順画像処理部、60 ラスタ化処理部、100 画像処理装置。

Claims (4)

  1. 複数の色成分に対応し、各データが各画素の色成分の画素値を表す複数データ列において、全てのデータ列それぞれにおいて同じ画素値が連続する部分の1より大きいラン長である共通ラン長の個数であるラン長個数を用いて、前記複数データ列の各データ列を画素値とラン長個数の組み合わせによるベクタ形式に符号化するベクタ化処理部と、
    前記ベクタ形式の各データ列内のラン長個数を維持し、画素値を変更する面順画像処理部と、
    前記ベクタ形式の各データ列内の画素値をその画素値のラン長個数倍に展開することにより、点順画像処理用の各データ列を得る点順前処理部と、
    前記点順画像処理用の各データ列の画素値を変更する点順画像処理部と、
    を備えることを特徴とする画像処理装置。
  2. 請求項に記載の画像処理装置において、
    前記ベクタ形式の各データ列内の画素値を共通ラン長と当該画素値のラン長個数から得られるラン長倍に展開することにより、前記ベクタ形式の各データ列をラスタ形式に復号化するラスタ化処理部、
    をさらに有する、
    ことを特徴とする画像処理装置。
  3. 請求項に記載の画像処理装置において、
    前記点順画像処理用の各データ列を画素値とラン長個数の組み合わせによるベクタ形式に再ベクタ化することにより、面順画像処理用の各データ列を得る面順前処理部、
    をさらに有する、
    ことを特徴とする画像処理装置。
  4. コンピュータ
    複数の色成分に対応し、各データが各画素の色成分の画素値を表す複数データ列において、全てのデータ列それぞれにおいて同じ画素値が連続する部分の1より大きいラン長である共通ラン長の個数であるラン長個数を用いて、前記複数データ列の各データ列を画素値とラン長個数の組み合わせによるベクタ形式に符号化するベクタ化処理部と、
    前記ベクタ形式の各データ列内のラン長個数を維持し、画素値を変更する面順画像処理部と、
    前記ベクタ形式の各データ列内の画素値をその画素値のラン長個数倍に展開することにより、点順画像処理用の各データ列を得る点順前処理部と、
    前記点順画像処理用の各データ列の画素値を変更する点順画像処理部と、
    として機能させる、
    ことを特徴とするプログラム。
JP2016183633A 2016-09-21 2016-09-21 画像処理装置およびプログラム Active JP6855722B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016183633A JP6855722B2 (ja) 2016-09-21 2016-09-21 画像処理装置およびプログラム
US15/456,910 US10694194B2 (en) 2016-09-21 2017-03-13 Image processing apparatus, non-transitory computer readable storage medium, and image processing method
CN201710321425.6A CN107864381B (zh) 2016-09-21 2017-05-09 图像处理设备和图像处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016183633A JP6855722B2 (ja) 2016-09-21 2016-09-21 画像処理装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2018050143A JP2018050143A (ja) 2018-03-29
JP6855722B2 true JP6855722B2 (ja) 2021-04-07

Family

ID=61621482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016183633A Active JP6855722B2 (ja) 2016-09-21 2016-09-21 画像処理装置およびプログラム

Country Status (3)

Country Link
US (1) US10694194B2 (ja)
JP (1) JP6855722B2 (ja)
CN (1) CN107864381B (ja)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2145991T3 (es) * 1995-02-03 2000-07-16 Koninkl Philips Electronics Nv Codificacion de colores de imagen de video.
KR20020064913A (ko) * 2000-09-27 2002-08-10 코닌클리케 필립스 일렉트로닉스 엔.브이. 데이터 디코딩
US6832005B2 (en) * 2001-03-23 2004-12-14 Microsoft Corporation Adaptive encoding and decoding of bi-level images
JP3997851B2 (ja) * 2002-06-28 2007-10-24 富士ゼロックス株式会社 画像符号化装置および画像符号化プログラム
JP4618436B2 (ja) * 2006-02-10 2011-01-26 富士ゼロックス株式会社 符号化装置、復号化装置、符号化方法、復号化方法、及びプログラム
CN102984517B (zh) * 2012-11-21 2016-03-30 华为技术有限公司 视频数据压缩和解压缩的方法、装置、设备和***
US9860560B2 (en) * 2014-07-02 2018-01-02 Qualcomm Incorporated Method for palette mode coding
SG10201900004UA (en) * 2014-12-19 2019-02-27 Hfi Innovation Inc Methods of palette based prediction for non-444 color format in video and image coding

Also Published As

Publication number Publication date
CN107864381B (zh) 2021-09-17
JP2018050143A (ja) 2018-03-29
US20180084259A1 (en) 2018-03-22
CN107864381A (zh) 2018-03-30
US10694194B2 (en) 2020-06-23

Similar Documents

Publication Publication Date Title
JP3400944B2 (ja) 併合データ要素を生成する方法およびその印刷データ処理パイプライン
JP6252225B2 (ja) 画像処理装置、画像処理方法及び画像形成装置
JP3461309B2 (ja) ハフマン符号化データ圧縮装置
KR101180098B1 (ko) 분할 런렝스 인코딩 방법 및 장치
JP2008311792A (ja) 画像符号化装置及びその制御方法
JP6855722B2 (ja) 画像処理装置およびプログラム
JP6127397B2 (ja) ランレングス符号化されたデータストリームのハーフトーン処理
JP6194903B2 (ja) 画像処理装置及び画像処理方法
JP2007060203A (ja) データ圧縮装置およびデータ圧縮プログラム
WO2015198983A1 (ja) 画像処理装置
JP2007300165A (ja) 画像処理装置、および画像処理方法
JP2013236234A (ja) 画像処理装置、画像処理システム及びプログラム
US9800760B1 (en) Fast drawing of unrotated delta row encoded images
JP6589642B2 (ja) データ処理装置およびプログラム
JP6623843B2 (ja) データ処理装置およびプログラム
US10182178B2 (en) Parallel fast drawing of unrotated delta row encoded images
JP6775558B2 (ja) 画像伸長装置及びその制御方法及びプログラム
JP2010074444A (ja) 画像圧縮装置、画像圧縮方法、画像復号装置、画像復号方法、及び、コンピュータプログラム
WO2015115211A1 (ja) 画像処理装置
JP3852237B2 (ja) 画像処理装置
JP4461481B2 (ja) 画像辞書作成装置、符号化装置、データファイル、復号化装置、符号化方法、復号化方法及びこれらのプログラム
JP2010220131A (ja) 画像符号化装置、及び、画像符号化方法
JP2008219302A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP5523177B2 (ja) 画像符号化装置及びその制御方法
JP2013098864A (ja) 画像符号化装置及び画像処理装置及びそれらの制御方法、ならびに、画像処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201012

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210216

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210301

R150 Certificate of patent or registration of utility model

Ref document number: 6855722

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350