JP2013121026A - 画像処理装置および画像処理方法 - Google Patents

画像処理装置および画像処理方法 Download PDF

Info

Publication number
JP2013121026A
JP2013121026A JP2011267521A JP2011267521A JP2013121026A JP 2013121026 A JP2013121026 A JP 2013121026A JP 2011267521 A JP2011267521 A JP 2011267521A JP 2011267521 A JP2011267521 A JP 2011267521A JP 2013121026 A JP2013121026 A JP 2013121026A
Authority
JP
Japan
Prior art keywords
data
image
image processing
processing
decoding
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.)
Granted
Application number
JP2011267521A
Other languages
English (en)
Other versions
JP6019573B2 (ja
Inventor
Masatoshi Matsudaira
正年 松平
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2011267521A priority Critical patent/JP6019573B2/ja
Priority to US13/706,118 priority patent/US8982426B2/en
Publication of JP2013121026A publication Critical patent/JP2013121026A/ja
Application granted granted Critical
Publication of JP6019573B2 publication Critical patent/JP6019573B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

【課題】画像処理に要する時間を短縮する。
【解決手段】印刷対象のJPEGデータをブロック毎にハフマン復号化してハフマン復号データとしてハフマン復号データ記憶部71に格納し、ハフマン復号データに後段の復号化処理(グループ復号化,ランレングス復号化,逆量子化,逆DCT)を施して画像データを生成し、生成した画像データに基づいて画像を表示部52に表示させる表示処理を実行し、この表示処理の過程で生じるハフマン復号データを符号化しながら1ストライプ幅分の間隔でRSTマーカーを挿入してJPEGデータを再構築して再構築JPEGデータ記憶部75に格納しておく。そして、回転印刷が指示されると、格納した再構築JPEGデータをRSTマーカーを用いて復号化しながら回転させる回転復号化を行なうと共に回転復号化により得られた画像データから印刷用データを作成して印刷処理を実行する。
【選択図】図2

Description

本発明は、可変長符号化処理を含む圧縮処理により圧縮された圧縮データを復号化して画像データを生成し、該生成した画像データを処理する画像処理装置および画像処理方法に関する。
従来、この種の画像処理装置としては、画像を8×8画素に分割したブロック毎に周波数成分に変換しハフマン符号化などの可変長符号化により圧縮した圧縮画像を復号化しながら回転処理するものが提案されている(例えば、特許文献1参照)。この装置では、回転処理に用いるリスタートマーカーが挿入されていない圧縮画像を取得すると、まず、圧縮画像を一旦ハフマン復号化して、ブロック毎に再び符号化すると共に所定数のブロックの符号化が完了する度にリスタートマーカーを挿入し、これにより、1ストライプ幅(所定数のブロック)毎にリスタートマーカーが挿入された圧縮画像を生成する。この圧縮画像の回転処理は、所定数のブロックを復号化してリスタートマーカーが現れる度に予め定められた数のリスタートマーカー分のデータを読み飛ばして同一ストライプ内の1段下のブロックを復号化する処理を繰り返し、1ストライプ幅分のすべてのブロックを復号化してから、復号化したブロックを回転させることにより行なわれる。そして、1ストライプ幅分の復号化と回転処理とが完了すると、次のストライプ幅のブロックに移ってストライプ幅単位で同じ処理を繰り返すことにより、圧縮画像を復号化しながら回転する。これにより、可変長符号化により符号化後の各ブロックのデータ長が異なるものにおいても、圧縮画像を1ストライプ幅分のブロックずつ順に復号化して回転させることができるとしている。
特開平9−247423号公報
ところで、上述した画像処理装置では、回転処理の前処理として、リスタートマーカーを挿入するために圧縮画像を一旦ハフマン復号化して再度ハフマン符号化する必要があるため、この前処理も含めると、回転処理に長時間を要する。例えば、印刷装置において、印刷対象の画像を表示装置で表示した上でユーザーからの指示を待って画像を回転させて印刷する回転印刷を行なう場合を考えると、圧縮画像を復号化して表示用画像を作成して表示装置に表示させる表示処理を実行して待機し、回転印刷が指示されると、圧縮画像に対して上述した前処理を実行してリスタートマーカーを挿入した圧縮画像を作成した上でこの圧縮画像をリスタートマーカーを用いて1ストライプ幅分ずつ復号化して回転させ、回転させた画像から印刷データを作成して印刷処理を実行するため、ユーザーにより回転印刷が指示されてから実際に印刷されるまでに長時間を要してしまう。
本発明の画像処理装置および画像処理方法は、画像処理に要する時間を短縮することを主目的とする。
本発明の画像処理装置および画像処理方法は、上述の主目的を達成するために以下の手段を採った。
本発明の画像処理装置は、
可変長符号化処理を含む圧縮処理により圧縮された圧縮データを復号化して画像データを生成し、該生成した画像データを処理する画像処理装置であって、
データを記憶する記憶手段と、
前記圧縮データの可変長符号に対して可変長符号復号化処理を施して中間データを生成して前記記憶手段に記憶する可変長符号復号化手段と、
前記中間データに対して後段の復号化処理を施して画像データを生成し、該生成した画像データを処理する第1の画像処理を実行する第1の画像処理手段と、
前記中間データに対して前記可変長符号化処理を施すと共に所定数の符号化単位毎にリスタートマーカーを挿入して再圧縮データとして前記記憶手段に記憶する再圧縮化手段と、
前記再圧縮データの可変長符号に対して前記リスタートマーカーを用いて前記可変長符号復号化処理を施すと共に前記後段の復号化処理を施して画像データを生成し、該生成した画像データを処理する第2の画像処理を実行する第2の画像処理手段と、
を備え、
前記第1の画像処理手段と前記再圧縮手段は、前記記憶手段に記憶された中間データを共用して処理を実行する手段である
ことを要旨とする。
この本発明の画像処理装置では、圧縮データの可変長符号に対して可変長符号復号化処理を施して中間データを生成して記憶手段に記憶し、記憶された中間データに対して後段の復号化処理を施して画像データを生成すると共に生成した画像データを処理する第1の画像処理を実行し、記憶された中間データを共用してこの中間データに対して可変長符号化処理を施すと共に所定数の符号化単位毎にリスタートマーカーを挿入して再圧縮データとして記憶手段に記憶し、記憶された再圧縮データの可変長符号に対してリスタートマーカーを用いて可変長符号復号化処理を施すと共に後段の復号化処理を施して画像データを生成し、生成した画像データを処理する第2の画像処理を実行する。これにより、第1の画像処理の実行過程で生じる中間データを用いてリスタートマーカーを挿入した再圧縮データを作成することができるから、第2の画像処理の実行を開始する際に、改めて再圧縮データを作成する必要がなく、第2の画像処理の実行時間を短縮することができる。ここで、「第1の画像処理」には、生成した画像データに基づいて画像を表示装置に表示させる表示処理が含まれ、「第2の画像処理」には、リスタートマーカーを用いて圧縮データを部分的に復号化して部分画像を生成すると共に生成した部分画像を回転する処理を繰り返し実行する回転処理が含まれる。
こうした本発明の画像処理装置において、前記第1の画像処理手段と前記再圧縮手段は、並列処理により処理を実行する手段であるものとすることもできる。こうすれば、画像処理に要する時間をさらに短縮することができる。
また、本発明の画像処理装置において、前記圧縮処理は、前記可変長符号化処理の前段にDCT演算処理と量子化処理とを含む処理であり、前記後段の復号化処理は、前記可変長符号復号化処理の後段に逆量子化処理と逆DCT演算処理とを含む処理であるものとすることもできる。
本発明の画像処理方法は、
可変長符号化処理を含む圧縮処理により圧縮された圧縮データを復号化して画像データを生成し、該生成した画像データを処理する画像処理方法であって、
(a)前記圧縮データの可変長符号に対して可変長符号復号化処理を施して中間データを生成して記憶し、
(b)前記ステップ(a)で記憶した中間データに対して後段の復号化処理を施して画像データを生成すると共に該生成した画像データを処理する第1の画像処理を実行し、
(c)前記ステップ(a)で記憶した中間データを共用し、該中間データに対して前記可変長符号化処理を施すと共に所定数の符号化単位毎にリスタートマーカーを挿入して再圧縮データとして記憶し、
(d)前記ステップ(c)で記憶した再圧縮データの可変長符号に対して前記リスタートマーカーを用いて前記可変長符号復号化処理を施すと共に前記後段の復号化処理を施して画像データを生成し、該生成した画像データを処理する第2の画像処理を実行する
ことを要旨とする。
この本発明の画像処理方法では、圧縮データの可変長符号に対して可変長符号復号化処理を施して中間データを生成して記憶し、記憶された中間データに対して後段の復号化処理を施して画像データを生成すると共に生成した画像データを処理する第1の画像処理を実行し、記憶された中間データを共用してこの中間データに対して可変長符号化処理を施すと共に所定数の符号化単位毎にリスタートマーカーを挿入して再圧縮データとして記憶し、記憶された再圧縮データの可変長符号に対してリスタートマーカーを用いて可変長符号復号化処理を施すと共に後段の復号化処理を施して画像データを生成し、生成した画像データを処理する第2の画像処理を実行する。これにより、第1の画像処理の実行過程で生じる中間データを用いてリスタートマーカーを挿入した再圧縮データを作成することができるから、第2の画像処理の実行を開始する際に、改めて再圧縮データを作成する必要がなく、第2の画像処理の実行時間を短縮することができる。
プリンター20の構成の概略を示す構成図。 メインコントローラー60の機能ブロックを示すブロック図。 印刷処理ルーチンの一例を示すフローチャート。 JPEG再構築処理の一例を示すフローチャート。 再構築処理されたJPEGデータの画像の様子を示す説明図。 変形例の印刷処理ルーチンを示すフローチャート。
次に、本発明の実施の形態を図面に基づいて説明する。図1は、本発明の画像処理装置の一実施形態であるプリンター20の構成の概略を示す構成図である。本実施形態のプリンター20は、図示するように、給紙トレイ23から搬送された用紙に印刷用データに基づいてシアン(C),マゼンタ(M),イエロー(Y),ブラック(K)のCMYKの各色のインクを印刷ヘッドから吐出することにより印刷を実行し排紙トレイ24に排紙するインクジェット方式のプリンターユニット30と、図示しないガラス台に載置された原稿に向かって発光した後の反射光をレッド(R)、グリーン(G)、ブルー(B)のRGBの各色に分解して画像データとするフラットベッド式のスキャナーユニット35と、メモリーカードスロット40aに挿入されたメモリーカードMCとの間でデータを格納したファイルの読み書きを行なうカードコントローラー40と、各種モードの設定画面や印刷の設定画面などを表示部52に表示したり各種モードの設定や印刷の設定に関する指示などをユーザーによるボタン群54の操作を介して入力したりする操作パネル50と、装置全体の制御を司るメインコントローラー60とを備える。このプリンター20では、プリンターユニット30やスキャナーユニット35,カードコントローラー40,メインコントローラー60がバス69を介して互いに各種制御信号やデータのやり取りをすることができるよう構成されている。
カードコントローラー40は、メインコントローラー60からの読み出し指令に基づいてメモリーカードMCからファイルを読み出してメインコントローラー60に送信したり、メインコントローラー60からの書き込み指令に基づいてメモリーカードMCにファイルを書き込んだりする。
このメモリーカードMCには、デジタルカメラなどで撮影されてJPEG方式により圧縮されたJPEGデータを格納したファイルなどが記憶されている。このJPEG方式による圧縮では、詳細については省略するが、撮影された画像の各8ビットのRGB値を輝度成分と色差成分とを示すYCbCr値に変換し、8×8画素(64画素)の最小符号化ユニット(1MCU(Minimum Coded Unit),以下、ブロックとする)に分割して、ブロック単位で離散コサイン変換(DCT演算)して周波数成分の大きさを表す8×8成分(64成分)のDCT係数に変換し、変換したDCT係数を量子化して、量子化後のDCT係数をランレングス符号化やグループ符号化,ハフマン符号化などによりエントロピー符号化することで、画像を圧縮している。なお、各ブロックのDCT係数は、ブロックの左上隅の成分がブロック内で変化がなくブロック内の平均値を示すDC係数(直流成分)であり、残りの63成分がブロック内の変化を示すAC係数(交流成分)となる。DC係数は、隣接するブロックのDC係数と値が近いことが多いため、隣接するブロックのDC係数との差分値に関する情報が符号化される。具体的には、差分値がその出現頻度に応じて予め定められたグループのうちいずれのグループに属するかの情報や属するグループ内でいずれの差分値に該当するかの情報が、それぞれ対応するハフマン符号化やグループ符号化により符号化される。また、AC係数は、ブロック内の変化が小さく量子化により値0となるものが多いため、値0の連続する個数(ランレングス数)と値0の連続を止める値0でない係数とをセットにした情報が符号化される。具体的には、値0でない係数がその出現頻度に応じて予め定められたグループのうちいずれのグループに属するかの情報や属するグループ内でいずれの係数に該当するかの情報,ランレングス数の情報が、それぞれ対応するハフマン符号化やグループ符号化,ランレングス符号化により符号化される。ここで、ハフマン符号化は出現頻度が高いものほど符号化長の短い符号を割り当てる可変長符号化であるため、圧縮対象の画像が通常の人物画像や風景画像などであれば、符号化後の1ブロック当たりのデータ長はブロック毎に異なるものとなる。
メインコントローラー60は、CPU62を中心とするマイクロプロセッサーとして構成されており、各種処理プログラムや各種データ、各種テーブルなどを記憶したROM64と、一時的に各種データなどを記憶するRAM66とを備える。このメインコントローラー60は、プリンターユニット30やスキャナーユニット35,カードコントローラー40からの各種動作信号や各種検出信号を入力したり、操作パネル50のボタン群54からの操作信号を入力したりする。また、メモリーカードMCからのファイルの読み出し指令をカードコントローラー40に出力したり、印刷指令をプリンターユニット30に出力したり、ボタン群54からのスキャン指示に基づいて原稿の読み取り指令をスキャナーユニット35に出力したり、表示部52に画像データの表示指令を出力したりする。
また、メインコントローラー60は、メモリーカードMCから入力したJPEGデータを表示部52で表示するための表示用データに変換する際には、JPEGデータを上述した圧縮と逆の順即ちハフマン復号化やグループ復号化,ランレングス復号化からなるエントロピー復号化,逆量子化,逆DCTの順に復号化(解凍)し、復号化により得られたYCbCr値をRGB各8ビットのデータに色変換し、RGB各8ビットのデータを表示部52で表示可能な所定のビット数に減らす処理などが行なわれる。また、JPEGデータをプリンターユニット30で印刷するための印刷用データに変換する際には、表示用データと同様にJPEGデータを復号化してRGB各8ビットのデータに色変換してから、さらに、CMYK各8ビットのデータに色変換し、CMYK各8ビットのデータをディザ法や誤差拡散法などにより各2ビットのデータ(2値化データ)に変換する処理などが行なわれる。
このプリンター20では、画像の色補正や画像の向きなどに関する各種設定が可能となっており、例えば、画像の向きを回転させる回転処理をしてから印刷する回転印刷などが設定可能となっている。ここで、回転処理は、対象となる画像がJPEGデータの場合には、JPEGデータに所定数のブロック毎(1ストライプ幅ともいう)に挿入されたリスタートマーカー(RSTマーカー)を用いて行なわれる。なお、RSTマーカーは、JPEGの規格で定められた2バイトのコードであり、FFD0〜FFD7で表される。RSTマーカーを用いた回転処理では、所定数のブロックを復号化してリスタートマーカーが現れる度に予め定められた数のリスタートマーカー分のデータを読み飛ばして同一ストライプ内の1段下のブロックを復号化する処理を繰り返し、1ストライプ幅分のすべてのブロックを復号化すると、復号化したブロックを回転させることにより行なわれる。そして、1ストライプ幅分の回転処理が完了すると、次のストライプ幅分のブロックに移ってストライプ幅単位で同じ処理を繰り返すことにより、圧縮画像を復号化しながら回転する。ここで、JPEGデータは可変長符号化であるハフマン符号化により圧縮されており、各ブロックの符号化後のデータ長は通常は一定とならないものである。このため、各ブロックの境の位置も一定とはならないため、1ストライプ幅に含まれるブロックだけを復号化するのは困難である。そこで、JPEGデータを一旦ハフマン復号化し、得られたハフマン復号データを再度ハフマン符号化しながら1ストライプ幅分の間隔でRSTマーカーを挿入してJPEGデータを再構築しておくことにより、この再構築JPEGデータをRSTマーカーを用いて1ストライプ幅分ずつブロック群単位で復号化できるようにし、ストライプ幅単位でのJPEGデータの回転復号化を可能としている。
図2は、メインコントローラー60の機能ブロックを示すブロック図である。なお、図2には、メインコントローラー60の機能ブロックの他にカードコントローラー40や表示部52も図示している。なお、図中の実線矢印はJPEGデータを表示用データに変換する際のデータの流れを示し、図中の点線矢印はJEPGデータを回転復号化を伴って印刷用データに変換する際のデータの流れを示す。メインコントローラー60は、メモリーカードMCに保存されているJPEGデータをカードコントローラー40を介して読み出すと共に読み出したJPEGデータにハフマン復号化を施してハフマン復号データ記憶部71に書き込むハフマン復号化部72と、ハフマン復号データ記憶部71からハフマン復号データを読み出すと共に読み出したハフマン復号データにグループ復号化やランレングス復号化,逆量子化,逆DCTなどのハフマン復号化よりも後段の各種復号化を施すことにより画像データを生成して画像データ記憶部73に書き込むJPEG後段復号化部74と、ハフマン復号データ記憶部71からハフマン復号データを読み出すと共に読み出したハフマン復号データに対してハフマン復号化を施しながらRSTマーカーを挿入することにより再構築JPEGデータを生成して再構築JPEGデータ記憶部75に書き込むハフマン符号化部76と、画像データ記憶部73に記憶されている画像データを読み出すと共に読み出した画像データに基づいて印刷用データを作成する印刷処理部77と、各部の処理を管理する制御部78とにより構成されている。ここで、本実施形態では、ハフマン復号化部72とJPEG後段復号化部74とハフマン符号化部74と印刷処理部77と制御部78は、ROM64に記憶されているプログラムをCPU62に実行させることにより一体となって機能する。また、ハフマン符号化部76は、例えば専用のハードウエアにより構成され、ハフマン復号化部72やJPEG後段復号化部74,ハフマン符号化部74,印刷処理部77,制御部78の処理に対して並列処理が可能となっている。なお、ハフマン復号データ記憶部71や画像データ記憶部73,再構築JPEGデータ記憶部75は、コントローラー60のRAM66に設けられている。
次に、こうして構成された本実施形態のプリンター20の動作、特に、回転印刷を実行する際の動作について説明する。図3は、CPU62により実行される印刷処理ルーチンの一例を示すフローチャートである。このルーチンは、メモリーカードMCがメモリーカードスロット40aに挿入されたときに表示部52に表示される選択画面からボタン群54の操作により印刷対象の画像が選択されたときに実行される。
この印刷処理ルーチンが実行されると、メインコントローラー60のCPU62は、まず、印刷対象の圧縮データ(ここではJPEGデータとする)を入力し(ステップS100)、入力したJPEGデータの1ブロック分をハフマン復号化して(ステップS110)、ハフマン復号化した1ブロック分のハフマン復号データをハフマン復号データ記憶部71に格納する(ステップS120)。ハフマン復号データがハフマン復号データ記憶部71に格納されると、ハフマン符号化部76によりそのハフマン復号データをRSTマーカー入りのJPEGデータに再構築するJPEG再構築処理が実行される。ここで、印刷処理ルーチンの説明を中断し、JPEG再構築処理について説明する。
図4は、JPEG再構築処理の一例を示すフローチャートであり、図5は、再構築処理されたJPEGデータの画像の様子を示す説明図である。このJPEGデータの再構築処理では、まず、上述した印刷処理ルーチンのステップS110でハフマン復号化した1ブロック分のハフマン符号データ(係数)を入力し(ステップS300)、入力した係数をハフマン符号化してJPEGデータを再構築する(ステップS310)。そして、再構築したブロック単位のJPEGデータを再構築JPEGデータ記憶部75に格納し(ステップS320)、再構築用バッファーに1ストライプ幅分のデータが格納されたか否かを判定する(ステップS330)。上述したように、1ストライプ幅は、所定数のブロックに相当するから、この判定は所定数のブロックの再構築処理が完了したか否かを判定するものとなる。なお、所定数のブロックとしては、例えば、8ブロックや16ブロック,32ブロックなどとすることができ、本実施形態では16ブロックとした。ステップS330で1ストライプ幅分のデータが格納されていないと判定したときには、ステップS310に戻って次のブロックに対してハフマン符号化してJPEGデータを再構築する処理を繰り返す(ステップS310,S320)。所定数のブロックの処理が完了してステップS330で1ストライプ幅分のデータが格納されたと判定すると、1ストライプ幅分(所定数のブロック)のデータの末尾にRSTマーカーを挿入(付加)して(ステップS340)、本処理を終了する。このRSTマーカーは、上述したように、回転処理に用いられる。この再構築処理により、図5に示すように、所定数のブロック毎に即ち1ストライプ幅毎にRSTマーカーが挿入されたマーカー挿入済みのJPEGデータが再構築されることになる。なお、例えば、画素数が縦1920画素×横2560画素(約500万画素)の場合、ブロック数が縦240ブロック×横320ブロックとなり、1ストライプ幅を16ブロックとすれば、1ブロックラインに20個のRSTマーカーが挿入されることになる。以上、JPEG再構築処理について説明した。
図3の印刷処理ルーチンのステップS120に戻って、ハフマン復号データが得られると、得られたハフマン復号データに対して後段の復号化処理、即ち、グループ符号化とランレングス符号化と逆量子化と逆DCTとをこの順に施し(ステップS130)、後段の復号化処理により得られたYCbCr値をRGB値に色変換し(ステップS140)、RGB値を表示部52の表示サイズに合わせてリサイズし(ステップS150)、画像データ記憶部73(表示用バッファー)に格納する(ステップS160)。こうしたステップS110〜S160の処理の全てのブロックについて処理が完了するまで繰り返し実行し(ステップS170)、全てのブロックが処理済みとなると、印刷対象の画像を表示部52に表示するUI表示を行なって(ステップS180)、ユーザーにより印刷の開始が指示されるのを待つ(ステップS190)。印刷指示がなされると、例えば回転印刷の設定がなされているか否かによって印刷対象の画像を回転させる必要があるか否かを判定する(ステップS200)。画像を回転させる必要がない場合には、メモリーカードMCに保存されているJPEGデータを入力して回転を伴わずにそのまま復号化し(ステップS210)、画像を回転させる必要がある場合には、再構築JPEGデータ記憶部75に格納した再構築JPEGデータをRSTマーカーを用いて復号化しながら回転させる回転復号化を行なう(ステップS220)。ここで、回転復号化は、上述したように、RSTマーカーを用いて1ストライプ幅分の全てのブロックを復号化してから回転させる処理を、ストライプ幅単位で繰り返し実行することにより行なうことができる。こうしてJPEGデータを復号化すると、復号化により得られたYCbCr値をRGB値に色変換し(ステップS230)、RGB値をCMYK値に変換したりCMYK値を2値化データに変換することにより印刷用データを作成し(ステップS240)、作成した印刷用データに基づいてプリンターユニット30を制御する印刷処理を実行して(ステップS250)、本ルーチンを終了する。
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のRAM66(ハフマン復号データ記憶部71や再構築JPEGデータ記憶部75)が本発明の「記憶手段」に相当し、図3の印刷処理ルーチンのステップS110,S120のハフマン復号化を実行するメインコントローラー60(ハフマン復号化部72)が「可変長符号復号化手段」に相当し、印刷処理ルーチンのステップS130〜S180の表示処理を実行するメインコントローラー60が「第1の画像処理手段」に相当し、図4のJPEG再構築処理を実行するハフマン符号化部76が「再圧縮化手段」に相当し、印刷処理ルーチンのステップS220〜S250の回転印刷を実行するメインコントローラー60が「第2の画像処理手段」に相当する。
以上説明した本実施形態のプリンター20によれば、印刷対象のJPEGデータをブロック毎にハフマン復号化してハフマン復号データとしてハフマン復号データ記憶部71に格納し、ハフマン復号データに後段の復号化処理(グループ復号化,ランレングス復号化,逆量子化,逆DCT)を施して画像データを生成し、生成した画像データに基づいて画像を表示部52に表示させる表示処理を実行し、この表示処理の過程で生じるハフマン復号データを符号化しながら1ストライプ幅分の間隔でRSTマーカーを挿入してJPEGデータを再構築して再構築JPEGデータ記憶部75に格納しておく。そして、回転印刷が指示されると、格納した再構築JPEGデータをRSTマーカーを用いて復号化しながら回転させる回転復号化を行なうと共に回転復号化により得られた画像データから印刷用データを作成して印刷処理を実行する。即ち、JPEGデータをハフマン復号化して得られるハフマン復号データを、表示処理とJPEG再構築処理とで共用するから、ハフマン復号化の回数を減らすことができる。この結果、回転印刷の実行時間を短縮することができる。しかも、印刷処理ルーチンにおけるステップS130〜S180の表示処理とJPEG再構築処理とを並列処理により実行するから、回転印刷の実行時間を更に短縮することができる。
上述した実施形態では、印刷処理ルーチンにおけるステップS130〜S180の表示処理とJPEG再構築処理とを並列処理により実行するものとしたが、これに限られず、表示処理とJEPG再構築処理とを順番に実行する逐次処理によるものとしてもよい。この場合でも、表示処理とJEPG再構築処理とでハフマン復号データを共用することができるから、回転印刷の実行時間を短縮することができる。
上述した実施形態では、表示処理を実行する過程で生じるハフマン復号データをJPEG再構築処理で共用する場合を例として説明するものとしたが、これに限定されるものではなく、例えば、人物の顔色を補正する顔色補正などの色補正処理を実行する過程で生じるハフマン復号データをJPEG再構築処理で共用するものとしてもよい。この場合の変形例の印刷処理ルーチンを図6に示す。この変形例の印刷処理ルーチンは、印刷対象の画像が選択されて印刷の開始が指示されたときに実行される。変形例の印刷処理ルーチンでは、まず、色補正設定の有無や回転印刷の設定の有無などの印刷情報を入力すると共に(ステップS400)、印刷対象の圧縮データ(JPEGデータ)を入力する(ステップS410)。続いて、JPEGデータの1ブロック分をハフマン復号化してハフマン復号データ記憶部71に格納する(ステップS420,S430)。これにより、ハフマン符号化部76(図4のJPEG再構築処理)により並列処理によってRSTマーカーが挿入された再構築JPEGデータが生成され、再構築JPEGデータ記憶部75に格納される。そして、得られたハフマン復号データに対して間引き復号してサンプリングを行なう(ステップS430)。ここで、間引き復号は、グループ復号化とランレングス復号化と逆量子化とを順に施して8×8成分のDCT係数に変換し、変換したDCT係数のうちAC成分を縦横それぞれ1/2や1/4,1/8に間引いてから逆DCT演算することにより行なう。AC成分の間引きは、例えば、1/2間引きでは16個のDCT係数が残存し、1/4間引きでは4個のDCT係数が残存し、1/8間引きでは全てのAC成分が間引かれDC成分のみが残存する。したがって、これを逆DCT演算することにより得られる画像は、1/2間引きではフル画像に対して縦横がそれぞれ1/2間引かれて全体ではフル画像の1/4となり、1/4間引きではフル画像に対して縦横がそれぞれ1/4間引かれて全体ではフル画像の1/16となり、1/8間引きではフル画像に対して縦横がそれぞれ1/8間引かれて全体ではフル画像の1/64となる。こうした間引き復号によりYCbCrの各成分毎に間引き画像が生成されることになる。そして、間引き復号により得られたYCbCr値をRGB値とHLS値(色相,明度,彩度)に変換する色変換処理を実行し(ステップS440)、後述する顔認識に必要なサイズまでリサイズ(縮小)して(ステップS450)、RAM66に設けられた色補正用バッファーに格納すると共に(ステップS460)、得られたRGB値とHLS値のそれぞれについてヒストグラムを計算する(ステップS480)。こうしたステップS420〜S470の処理の全てのブロックについて処理が完了するまで繰り返し実行し(ステップS480)、全てのブロックが処理済みとなると、色補正用バッファーに格納した画像に基づいて顔認識を行ない(ステップS490)、画像中に顔が含まれているか否かを判定する(ステップS500)。なお、顔認識については、目や鼻の特徴を抽出し標準化した顔データと比較するなどの周知の顔認識アルゴリズムを用いて行なうことができる。画像中に顔が含まれている場合には顔色が最適となるようにエンハンスパラメーターを設定し(ステップS510)、画像中に顔が含まれていない場合には画像全体の色が最適となるようエンハンスパラメーターを設定する(ステップS520)。ここで、エンハンスパラメーターの設定は、例えば、RGB値やHLS値の各ヒストグラムから色のパラメーターの特徴量を抽出し、抽出した特徴量が画像中の顔の有無に応じてそれぞれ予め定められた最適な特徴量に近づくようにエンハンスパラメーターを設定することにより行なう。そして、印刷対象の画像を回転させる必要があるか否かを判定し(ステップS530)、画像を回転させる必要がない場合には、メモリーカードMCに保存されているJPEGデータを入力して回転を伴わずにそのまま復号化し(ステップS540)、画像を回転させる必要がある場合には、再構築JPEGデータ記憶部75に格納した再構築JPEGデータをRSTマーカーを用いて復号化しながら回転させる回転復号化を行なう(ステップS550)。こうしてJPEGデータを復号化すると、復号化により得られたYCbCr値をRGB値に色変換し(ステップS560)、ステップS510,S520のいずれかで設定されたエンハンスパラメータに基づいてエンハンス処理を実行し(ステップS570)、エンハンス後のRGB値から印刷用データを作成し(ステップS580)、作成した印刷用データに基づいてプリンターユニット30を制御する印刷処理を実行して(ステップS590)、本ルーチンを終了する。
上述した実施形態では、図3の印刷処理ルーチンのステップS200で画像を回転させる必要がないと判定された場合には、メモリーカードMCに保存されているJPEGデータを用いて復号化するものとしたが、再構築JPEGデータを用いて復号化するものとすればよい。この場合、画像を回転させる必要はないから、RSTマーカーを無視してそのまま復号化すればよい。
上述した実施形態では、再構築JPEGデータをRSTマーカーを使った回転復号化の処理(回転印刷)に用いるものとしたが、これに限定されるものではなく、圧縮データを部分的に復号化して画像をトリミングしたり圧縮データを部分的に復号化して色補正するなどRSTマーカーを使って圧縮データを復号化するものに用いることができれば、他の如何なる処理にも適用することが可能である。
上述した実施形態では、圧縮画像をJPEGデータを例として説明したが、これに限られず、ハフマン符号化などの可変長符号化を伴って圧縮された圧縮画像であればよく、例えばMPEGデータなどとしてもよい。
上述した実施形態では、本発明をプリンター機能(プリンターユニット30)とスキャナー機能(スキャナーユニット35)とを備えるプリンター20に適用して説明したが、これに限られず、さらにFAX機能を備えるものとしてもよいし、あるいは、スキャナー機能を備えないプリンターとしてもよい。また、可変長符号化を伴う圧縮方式で圧縮された圧縮画像を解凍して画像処理を施すことができる装置であれば、プリンターに限られず、パーソナルコンピューターやデジタルカメラ,ゲーム機器,携帯電話など如何なる装置に適用するものとしてもよい。
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
20 プリンター、23 給紙トレイ、24 排紙トレイ、30 プリンターユニット、35 スキャナーユニット、40 カードコントローラー、40a メモリーカードスロット、50 操作パネル、52 表示部、54 ボタン群、60 メインコントローラー、62 CPU、64 ROM、66 RAM、69 バス、71 ハフマン復号データ記憶部、72 ハフマン復号化部、73 画像データ記憶部、74 JEPG後段復号化部、75 再構築JPEGデータ記憶部、76 ハフマン符号化部、77 印刷処理部、78 制御部、MC メモリーカード。

Claims (5)

  1. 可変長符号化処理を含む圧縮処理により圧縮された圧縮データを復号化して画像データを生成し、該生成した画像データを処理する画像処理装置であって、
    データを記憶する記憶手段と、
    前記圧縮データの可変長符号に対して可変長符号復号化処理を施して中間データを生成して前記記憶手段に記憶する可変長符号復号化手段と、
    前記中間データに対して後段の復号化処理を施して画像データを生成し、該生成した画像データを処理する第1の画像処理を実行する第1の画像処理手段と、
    前記中間データに対して前記可変長符号化処理を施すと共に所定数の符号化単位毎にリスタートマーカーを挿入して再圧縮データとして前記記憶手段に記憶する再圧縮化手段と、
    前記再圧縮データの可変長符号に対して前記リスタートマーカーを用いて前記可変長符号復号化処理を施すと共に前記後段の復号化処理を施して画像データを生成し、該生成した画像データを処理する第2の画像処理を実行する第2の画像処理手段と、
    を備え、
    前記第1の画像処理手段と前記再圧縮手段は、前記記憶手段に記憶された中間データを共用して処理を実行する手段である
    ことを特徴とする画像処理装置。
  2. 請求項1記載の画像処理装置であって、
    前記第1の画像処理手段と前記再圧縮手段は、並列処理により処理を実行する手段である
    ことを特徴とする画像処理装置。
  3. 請求項1または2記載の画像処理装置であって、
    前記圧縮処理は、前記可変長符号化処理の前段にDCT演算処理と量子化処理とを含む処理であり、
    前記後段の復号化処理は、前記可変長符号復号化処理の後段に逆量子化処理と逆DCT演算処理とを含む処理である
    画像処理装置。
  4. 表示装置に接続された請求項1ないし3いずれか1項に記載の画像処理装置であって、
    前記第1の画像処理は、前記生成した画像データに基づいて画像を前記表示装置に表示させる表示処理であり、
    前記第2の画像処理は、前記リスタートマーカーを用いて前記圧縮データを部分的に復号化して部分画像を生成すると共に該生成した部分画像を回転する処理を繰り返し実行する回転処理である
    を備える画像処理装置。
  5. 可変長符号化処理を含む圧縮処理により圧縮された圧縮データを復号化して画像データを生成し、該生成した画像データを処理する画像処理方法であって、
    (a)前記圧縮データの可変長符号に対して可変長符号復号化処理を施して中間データを生成して記憶し、
    (b)前記ステップ(a)で記憶した中間データに対して後段の復号化処理を施して画像データを生成すると共に該生成した画像データを処理する第1の画像処理を実行し、
    (c)前記ステップ(a)で記憶した中間データを共用し、該中間データに対して前記可変長符号化処理を施すと共に所定数の符号化単位毎にリスタートマーカーを挿入して再圧縮データとして記憶し、
    (d)前記ステップ(c)で記憶した再圧縮データの可変長符号に対して前記リスタートマーカーを用いて前記可変長符号復号化処理を施すと共に前記後段の復号化処理を施して画像データを生成し、該生成した画像データを処理する第2の画像処理を実行する
    画像処理方法。
JP2011267521A 2011-12-07 2011-12-07 記録装置および画像処理方法 Active JP6019573B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011267521A JP6019573B2 (ja) 2011-12-07 2011-12-07 記録装置および画像処理方法
US13/706,118 US8982426B2 (en) 2011-12-07 2012-12-05 Image processing apparatus, printing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011267521A JP6019573B2 (ja) 2011-12-07 2011-12-07 記録装置および画像処理方法

Publications (2)

Publication Number Publication Date
JP2013121026A true JP2013121026A (ja) 2013-06-17
JP6019573B2 JP6019573B2 (ja) 2016-11-02

Family

ID=48571721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011267521A Active JP6019573B2 (ja) 2011-12-07 2011-12-07 記録装置および画像処理方法

Country Status (2)

Country Link
US (1) US8982426B2 (ja)
JP (1) JP6019573B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015041652A1 (en) * 2013-09-19 2015-03-26 Entropic Communications, Inc. A progressive jpeg bitstream transcoder and decoder
JP6350069B2 (ja) * 2014-07-22 2018-07-04 富士ゼロックス株式会社 情報処理システム、情報処理装置およびプログラム
US10257394B2 (en) 2016-02-12 2019-04-09 Contrast, Inc. Combined HDR/LDR video streaming
US10264196B2 (en) 2016-02-12 2019-04-16 Contrast, Inc. Systems and methods for HDR video capture with a mobile device
JP7081835B2 (ja) 2016-08-09 2022-06-07 コントラスト, インコーポレイテッド 車両制御のためのリアルタイムhdrビデオ
US10951888B2 (en) 2018-06-04 2021-03-16 Contrast, Inc. Compressed high dynamic range video
WO2020036957A1 (en) * 2018-08-14 2020-02-20 Contrast, Inc. Image compression

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1075345A (ja) * 1996-06-26 1998-03-17 Fuji Xerox Co Ltd 画像処理装置
JP2000083214A (ja) * 1998-09-03 2000-03-21 Olympus Optical Co Ltd 画像処理装置及び方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09247423A (ja) 1996-03-04 1997-09-19 Canon Inc 画像処理装置およびその方法
GB0412647D0 (en) * 2004-06-07 2004-07-07 Silver Fox Ltd Register control for printing labels
JP2006313984A (ja) 2005-05-06 2006-11-16 Fuji Photo Film Co Ltd 画像処理装置
US7602974B2 (en) * 2005-10-21 2009-10-13 Mobilic Technology (Cayman) Corp. Universal fixed-pixel-size ISP scheme

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1075345A (ja) * 1996-06-26 1998-03-17 Fuji Xerox Co Ltd 画像処理装置
JP2000083214A (ja) * 1998-09-03 2000-03-21 Olympus Optical Co Ltd 画像処理装置及び方法

Also Published As

Publication number Publication date
US8982426B2 (en) 2015-03-17
US20130148139A1 (en) 2013-06-13
JP6019573B2 (ja) 2016-11-02

Similar Documents

Publication Publication Date Title
JP6019573B2 (ja) 記録装置および画像処理方法
JP5132517B2 (ja) 画像処理装置および画像処理方法
JP4902569B2 (ja) 画像符号化装置及びその制御方法
JP2000278685A (ja) 可変長符号化バイナリ・ビットストリームの処理方法
JP2006180456A (ja) 画像圧縮装置と画像復号装置と画像変換装置と画像処理方法
US8406517B2 (en) Image processing apparatus and image processing method
JP2008104164A (ja) 画像処理装置及び画像処理方法
US7720293B2 (en) Image processing apparatus, printing apparatus and image processing method
US7373000B2 (en) Image processing apparatus
JP2013120999A (ja) 画像処理装置および画像処理方法
JP2011199432A (ja) 画像処理装置およびプログラム
JP4486847B2 (ja) 圧縮画像から中間調画像を作成する方法と装置
US7257260B2 (en) Method and a device for processing digital image
JP2013121100A (ja) 画像処理装置および画像処理方法
JP4975770B2 (ja) 画像復号方法及び装置
JP3347488B2 (ja) 画像処理装置およびその方法
CN117014557B (zh) 文档图像的压缩方法、装置、电子设备及存储介质
US8837848B2 (en) Image processing device and image processing method
JP4363291B2 (ja) 画像処理装置およびこれを備えるプリンタ、画像処理装置の制御方法
JP4262145B2 (ja) 画像処理装置及びその制御方法
JP2013106123A (ja) 画像処理装置および画像処理方法
JP2012095227A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2002057890A (ja) 画像処理装置及び画像処理方法並びに記憶媒体
JP2000333019A (ja) 画像圧縮装置及びその方法、並びにその画像圧縮装置を備えたプリンタ装置
JP5538985B2 (ja) 画像符号化装置及びその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160407

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: 20160906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160919

R150 Certificate of patent or registration of utility model

Ref document number: 6019573

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150