JP6775558B2 - 画像伸長装置及びその制御方法及びプログラム - Google Patents

画像伸長装置及びその制御方法及びプログラム Download PDF

Info

Publication number
JP6775558B2
JP6775558B2 JP2018174190A JP2018174190A JP6775558B2 JP 6775558 B2 JP6775558 B2 JP 6775558B2 JP 2018174190 A JP2018174190 A JP 2018174190A JP 2018174190 A JP2018174190 A JP 2018174190A JP 6775558 B2 JP6775558 B2 JP 6775558B2
Authority
JP
Japan
Prior art keywords
data
decompression
coded data
coded
image
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
JP2018174190A
Other languages
English (en)
Other versions
JP2020048041A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2018174190A priority Critical patent/JP6775558B2/ja
Priority to EP19195066.6A priority patent/EP3627834A1/en
Priority to US16/569,812 priority patent/US10803368B2/en
Priority to CN201910870455.1A priority patent/CN110913223B/zh
Priority to KR1020190113880A priority patent/KR102568052B1/ko
Publication of JP2020048041A publication Critical patent/JP2020048041A/ja
Application granted granted Critical
Publication of JP6775558B2 publication Critical patent/JP6775558B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1867Post-processing of the composed and rasterized print image
    • G06K15/1886Storage of the print image data or of parts thereof
    • 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
    • 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/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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • 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
    • 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

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)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Storing Facsimile Image Data (AREA)

Description

本発明は、圧縮符号化され画像データの伸長技術に関するものである。
近年、静止画や動画の高精細化、高解像度化が進んでいる。画像が高解像度になればなるほどそのデータ量は膨大になる。それ故、より少ないメモリ資源で画像データを記憶するため、より短時間でネットワーク転送するために、符号化による画像圧縮技術が重要になってくる。また、その一方で、画像圧縮技術には画像品位を損なわないことも求められており、画像品位を損なわない符号化方式の開発が続けられている。
一般に、既に販売された製品が対応する符号化方式は販売時の技術レベルに依存するので、販売後に開発された新しいフォーマットの符号化データに対応するのは難しい。
かかる点で、特許文献1は既存のデコードプログラムにより伸長不可な新規の画像規格であると判別された場合に、符号化データに含められたデコードプログラム情報を取得して、新規の符号化方式で符号化された符号データを伸長する技術を開示している。
また、特許文献2は、符号データを送る際に、符号データが新規の符号方式であることを通知するとともに、新規の符号方式のフォーマット情報を符号データに含めて送信する。これによって、符号伸長装置が新しいフォーマット情報を用いて動的に動作を変えることで新規の符号方式を伸長する技術を開示している。
また、その他の技術として、新規の符号方式で符号化された符号データとして検出された部分についてはプロセッサで処理し、従来の符号方式で符号化された符号データは符号伸長装置で高速に処理する手法が知られている。
特開2004−236226号公報 特開平10−322216号公報
特許文献1では、新しい符号化データに新しい方式の伸長プログラムの情報を含めることで、伸長側が新しい符号化データの伸長を行えるようにしている。つまり、特許文献1は、新しい符号化データについては、その伸長処理をソフトウェアで処理することを前提にしている。それ故、装置に、それ以前の方式に適用したハードウェアとしての伸長回路があったとしても、それを有効活用しているとは言えない。
特許文献2に開示された技術は、再構成可能なハードウェア構成を前提としている。そのため、固定化されたハードウェアで構成された装置には適用できない。
本発明は上記を鑑みてなされたものであり、新しい符号化データについて、新しいソフトウェアのみで伸長するのではなく、既存の固定化された伸長にかかる構成を有効利用し、もってソフトウェアのみの対応と比較して、速度低下を抑制する技術を提供しようとするものである。
この課題を解決するため、例えば本発明の画像伸長装置は以下の構成を備える。すなわち、
符号化画像データを伸長する画像伸長装置であって、
予め設定された種類の符号化データを伸長可能な第1の伸長手段と、
該第1の伸長手段が非対応の種類の符号化データの伸長処理を行う第2の伸長手段と、
入力した符号化画像データのブロック単位に符号化データの種類を識別する識別手段と、
該識別手段により識別された着目ブロックの符号化データの種類が、前記第1の伸長手段の伸長可の種類である場合には前記着目ブロックの符号化データを所定のメモリに格納し、
前記第1の伸長手段の伸長不可の種類である場合には、前記第1の伸長手段が伸長可の所定の符号化データを前記メモリに格納することで、前記第1の伸長手段が伸長可能な符号化画像データを作成する作成手段と、
該作成手段で作成された符号化データを前記第1の伸長手段を制御して伸長することで仮の画像データを生成させた後、前記第2の伸長手段を制御して前記第1の伸長手段の伸長不可の符号化データの伸長し、当該伸長結果で前記仮の画像データを更新することで出力用の画像データを生成する制御手段とを有する。
本発明によれば、新しい符号化データについて、新しいソフトウェアのみで伸長するのではなく、既存の固定化された伸長にかかる構成を有効利用し、もってソフトウェアのみの対応と比較して、速度低下を抑制することが可能になる。
第1の実施形態が適用する画像形成装置のブロック構成図。 画像データをブロック単位に複数種類の符号化方式の1つを用いて符号化する様を説明しるための図。 符号方式を判別しながら伸長処理を切り替えて手法を説明するための図。 第1の実施形態における新符号化伸長部の構成とRAMとの関係を示す図。 第1の実施形態における新符号化伸長部の処理を示すフローチャート。 第1の実施形態における新符号化伸長部の処理とRAM内のデータ構造を示す図。 第2の実施形態における新符号化伸長部の処理を示すフローチャート。 第2の実施形態における新符号化伸長部の処理とRAM内のデータ構造を示す図。 受信する符号化データのデータ構造の例を示す図。
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。なお、以下に示す実施形態における構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
図1は、第1の実施形態における画像伸長装置(画像復号)が適用される画像形成装置100のブロック構成図である。この画像形成装置100は、CPU101、ROM102、RAM103、入力部104、符号伸長部105、画像処理部106、印刷処理部107から構成され、これらは内部バスにより互いに接続されている。
ROM102は、書き換えが可能な不揮発性のメモリであり、格納されている制御プログラムの追加、変更が可能である。CPU101は、ROM102に格納された制御プログラムを読み出し実行することにより、演算処理や符号伸長装置内の各部の動作を統括的に制御する。なお、ROM102は書き換え可能であればその種類は特に問わないが、フラッシュメモリやEEPROMなどでよい。RAM103は、読み出し及び書き込み可能なメモリであり、画像データなどの各種データを一時的に格納するための記憶媒体である。入力部104は、ホストPCやサーバ(不図示)から転送されてくる符号化画像データを受信し、RAM103に格納する。符号伸長部105は、入力部104が受信し、RAM103に格納された、所定の種類の符号化画像データを伸長(復号)して圧縮前の画像データを生成する。画像処理部106は、符号伸長部105による伸長処理で得た画像データを印刷処理部107の特性に好適な画像データへの変換(RGB→YMCK変換、ハーフトーン処理)し、印刷処理部107の入力データフォーマットに変換して印刷データを生成する。印刷処理部107は、電子情報である印刷データに基づいて、記録媒体(記録紙)上に画像を形成する。実施形態における画像形成はインク液を記録媒体上に吐出するタイプとするが、電子写真方式のようにトナーを利用するものでも良く、画像形成方式は特に問わない。
CPU101は、ROM102に格納された制御プログラムをアップデートすることで、新しい制御プログラムを実行することが出来る。このような新しいプログラムへのアップデートは、以下の手順で行われる。画像形成装置100は、入力部104を通じてホストPCやサーバ(不図示)から、通常の印刷データとは識別できる形式で、新しい制御プログラムを受信し、RAM103に保存する。そして、CPU1は、ROM102内の予め設定されたアドレス位置(書き換えしないアドレス位置)に格納された書き換えプログラムを実行することで、受信した新しい制御プログラムをROM102上に上書きする。上書きが完了すると、CPU101は、一旦リセットし、上書きされた新しい制御プログラムを実行することで、画像形成装置100におけるバージョンアップした制御プログラムに従って画像伸長や画像形成処理が行うことになる。
一般に、画像データを符号化する場合、その画像データを複数の矩形ブロック(又はタイル)の画像データに分割して、各矩形ブロックの画像データの特徴に応じて適した符号方式を選択して符号化する手法がよく用いられる。ここで、矩形ブロックの画像データの特徴とは、例えばそのブロック内に出現する色数、自然画のように似通った色の画素が多くふくまれているか否かなどの特徴が符号方式の選択に用いられる。矩形ブロックごとにこれらの特徴を解析し、より符号化効率のよい符号方式が選択される。
図2(a)は、画像データを複数の符号方式で符号化する例を示す図である。図2(a)を用いて、複数の符号方式が画像の特徴に応じて適応的に選択されることを説明する。
参照符号201は、符号化対象の画像データであり、ここでは、1ページの画像データは水平方向448画素、垂直方向128画素(以下、この水平、垂直の関係を単に448×128画素と記す)のサイズであるとする。この画像データ201は、64×64画素で構成される矩形ブロックに分割される。すると図示のごとく、画像データ201は、7×2個の矩形ブロックへの分割されることになる。なお、画像のサイズや、1ブロックのサイズは具体例を示すことで理解を用意するためであって、これらの数値に限定されるものではない。
ここで、参照符号202の白地の部分は背景領域、参照符号203のハッチがかかった部分は自然画領域、参照符号204は単一色で描画されたテキスト領域、そして、参照符号205は単一色のグラフィック領域であるとする。
参照符号206乃至209は、画像の種類別の矩形ブロックを示している。矩形ブロック206の画像は、単一色のグラフィック領域のみから構成されているので、単一色領域の符号化に適したロスレス符号化(可逆符号化)方式である方式Aで符号化される。
矩形ブロック207の画像は、複数色の領域に分かれているものの、出現する色の種類は少ない。故に、この矩形ブロック207は、ロスレス符号方式である方式Bで符号化するのが適している。方式Bは同一色が連続する画素数を符号化して圧縮する方式であるランレングス符号方式を用いて符号化される。あるいは、予め決められた数の色を登録したパレットテーブルを用いて、テーブルのインデックスを符号化するパレット符号方式を用いてもよい。
矩形ブロック208の画像は、オブジェクトの存在しない背景領域と自然画領域から構成されるので、自然画の画質劣化を抑えながら効率よく圧縮できるロッシー符号化(非可逆符号化)方式であるJPEG方式を用いた方式Cで符号化される。方式Cで用いられる符号方式は、例えばJPEG2000などのJPEG以外の方式であってもよい。
矩形ブロック209の画像は、自然画領域とテキスト領域が混在している画像となっている。このような特徴の画像に対しては、方式CはJPEG方式を用いたロッシーの符号方式であるため、自然画領域に対しては画質劣化が目立ちにくいが、テキスト領域に対してはエッジがぼやけるなどの画質劣化が目立ちやすい。このため、テキスト領域についてはロスレスの方式Bの符号方式を用いて符号化し、自然画領域については、ロッシーの方式Cの符号方式を用いて符号化することのできる、方式Bと方式Cの2つの方式のデータ構造を持つ符号方式である方式Dで符号化される。
以上のように、矩形画像の特徴に応じて、最適な符号方式が選択されて、各方式で符号化される。7×2個の矩形ブロックと、それぞれの符号化方式との関係を示すと、図2(b)の通りである。
図9は、図2(b)に示す符号化データに対応する、外部から受信する符号化画像データ900のデータ構造を示している。符号化データ900は、ファイルヘッダ901、および、それに後続するブロック910、911、912、913…の構造を有する。ファイルヘッダ901には、1画素が何ビットで構成されているか、その画像データの色空間の種類、さらには、画像が7×2個のブロックで構成される等の伸長に必要な情報が格納されている。ブロック910、911…の並びは、図2(b)に示すブロックを単位とするラスタースキャンであるものとする。したがって、ブロック910の符号化データは、図2(b)の左上隅の矩形ブロックに対応する。ブロック910の符号化データは、ブロックヘッダ910aと、ペイロードである符号化データ910bで構成される。ブロックヘッダ910aには、該当するブロックが「方式A」で符号化されていることを特定する識別ビット、並びに、このブロックが64×64画素であることを示す情報等の各種制御情報が含まれている。これは他のブロック911,912、913…でも同じである。なお、ファイルヘッダに1ブロックが64×64画素であることを示す情報が格納されるものとしても良い。
さて、実施形態における符号伸長部105は、方式A,B,Cの符号化データを伸長することはできるものの、方式Dの符号化データは伸長できないものとする。つまり、符号伸長部105が、方式A,B,Cに対応するが、方式Dには未対応であるとする。
本実施形態では、ROM102内の制御プログラムを更新することで、図2(b)又は図9に示す符号化データ900を正しく伸長する。
まず、その際の伸長処理を、図3を参照して説明する。矩形領域301から306は、CPU101、もしくは符号伸長部105のどちらかで伸長処理を行う処理単位である。図3(a)は、画像201と矩形領域301から306を重ねて示している。図3(b)は、画像201が矩形領域301から306に分けて処理される例を示すイメージ図であり、斜線で塗られた矩形領域は符号伸長部105で直接には伸長することのできない符号方式Dの領域である。
まず同図(a)、(b)を用いて、伸長処理を切り替えて行う場合に発生するオーバーヘッドについて説明する。
一般的に、プロセッサで伸長プログラムを実行して伸長する場合の処理性能はハードウェアデコーダで構成された符号伸長部105の処理性能よりも大きく劣ることが多い。そのため、矩形ブロック単位に符号化された画像201の符号データを、矩形ブロック単位に解析して符号方式を判別することによって、符号伸長部105で伸長できるか否かを判別する。判別結果に応じて、符号伸長部105で伸長することのできない部分のみをCPU101によって伸長プログラムで伸長させることで、処理時間のかかる伸長プログラムで伸長処理をさせる符号データの処理量を必要最小限にすることができる。
図3(b)の矩形領域301は、3つの矩形ブロックを含む領域である。これら3つの矩形ブロックは、図2で説明したように符号方式AまたはBで圧縮されるので、符号伸長部105で伸長させることができる領域であり、高速に伸長できる。
矩形領域302は、3つの矩形ブロックを含む領域で、方式Dの新方式で符号化される。故に、CPU101で伸長プログラムを実行して伸長する必要がある領域である。
矩形領域303は、1つの矩形ブロックを含む領域で、符号方式Cで符号化されている。故に、この矩形領域303は、符号伸長部105で伸長させることができる。
矩形領域304は、3つの矩形ブロックを含む領域である。これらの矩形ブロックが方式AまたはBで符号化されているので符号伸長部105で伸長することができる。
矩形領域305は、2つの矩形ブロックを含む領域である。これら矩形ブロックは方式Dで符号化されているので、CPU101で伸長する必要がある。
そして、矩形領域306は、2つの矩形ブロックを含む領域で、符号方式Cで符号化されているので、符号伸長部105で伸長させることができる。
このように、矩形領域ごとに符号方式を解析し、矩形領域301から306の6つの部分領域ごとに符号伸長部105による伸長処理と、伸長プログラムによる伸長処理を切り替えて伸長処理を実行する必要がある。一般に、符号データの伸長処理は、伸長する符号データに関する制御情報および、出力データに関する制御情報が必要である。符号データに関する制御情報とは、符号データがRAM103上のどこに保存されているかを示す開始アドレス、および符号データサイズもしくは、終了アドレスなどである。出力データに関する制御情報とは、伸長データをRAM103上のどこに出力するかを示す出力アドレスなどである。
さて、符号伸長部105と伸長プログラムによって伸長する場合の処理のシーケンスは次の通りとなる。
(1)領域301を符号伸長部105により伸長する。
(2)領域302を伸長プログラムにより伸長する。
(3)領域303を符号伸長部105により伸長する。
(4)領域304を符号伸長部105により伸長する。
(5)領域305を伸長プログラムにより伸長する。
(6)領域306を伸長プログラムにより伸長する。
上記の通り、画像201を6つの部分領域に分けて、CPU101で6回の判断処理を行う。そして、上記のような制御情報をブロック毎に算出し、設定する必要がある。このため、処理時間のかかる伸長プログラムによる伸長処理を必要最小限の領域に限定しても、符号伸長部105と伸長プログラムとの切り替えの際のオーバーヘッドが大きく、性能劣化が大きくなる。また、符号伸長部105が伸長すべき符号化データは、RAM103の不連続のアドレスに存在するため、CPU101は複数回に分けて符号伸長部105への設定処理を行う必要があり、かかる点でも処理性能の低下は避けられない。
そこで、本第1の実施形態では、本実施形態では、図4に示す構成によって、符号化単位ごとに、伸長プログラムと符号伸長部105による伸長処理の切り替えに起因するオーバーヘッドを無くし、効率よく符号化画像データを伸長する。
図4は、ROM102の更新後の制御プログラムをCPU101が実行した場合の機能部、及び、既存の符号伸長部105で構成される新符号伸長部400と、RAM103に記憶されるデータの構成の一例を示すブロック図である。
新符号伸長部400における、符号方式解析部401、変換符号作成部402、および、方式D伸長部403は、更新後の制御プログラムを実行するCPU101により実現される機能部である。符号伸長部105は、画像形成装置100がもともと有するハードウェアであって、方式A、B,Cの符号化データを伸長するものである。RAM103には、受信した符号化画像データ領域405、変換符号データ領域406、および、伸長処理の出力用としての伸長データ領域407が予め確保されている。
以下、新符号伸長部400の動作を、図5のフローチャート、および、図6を参照して説明する。図6は、RAM103における領域405乃至407のデータの格納状態を示している。
新符号伸長部400は、外部から受信した符号化データの、RAM103の符号化画像データ領域405への格納処理が終えると、この伸長処理を開始する。
まず、S501にて、新符号伸長部400は、符号方式解析部401を制御し、符号化画像データ領域405から1つのブロック(以下、着目ブロック)のヘッダを解析させ、その符号方式を判定させる。次に、S502にて、新符号伸長部400は、判定した符号方式が符号伸長部105で伸長可能な符号方式(方式A乃至C)であるか否かを判定する。言い換えれば、新符号伸長部400は、実施形態における符号伸長部105が着目ブロックの伸長に対応しているか、それとも非対応かを判定する。符号伸長部105で伸長できる方式であると判定した場合、新符号伸長部400は処理をS503に進め、着目ブロックの符号化データ(ブロックヘッダを含む)をそのままコピーし、変換符号データ領域406に保存する。
また、着目ブロックの符号化データが符号伸長部105で伸長できない方式(方式D)であると判定した場合、新符号伸長部400は、処理をS504に進める。S504にて、新符号伸長部400は変換符号作成部402を制御し、符号伸長部105が伸長可能な、予め設定されたダミーの固定の符号化データを、変換符号データ領域406に保存させる。実施形態において、このダミーの固定の符号化データは、最も単純で、符号長も最短となる方式Aの符号化データとした。
そして、新符号伸長部400は、S505にて、全ブロックについての判定処理を終えたか否かを判定し、否の場合には処理をS501に戻す。
上記のようにして、全ブロックの符号判定処理を終えると、変換符号データ領域406には、方式A乃至Cのみの符号化データが、ブロック順に連続して格納されることになる。つまり、見かけ上、変換符号データ領域406には、符号伸長部105によって伸長できる形式の符号化データが、ブロック順に連続して格納されることになる。
そこで、S506にて、新符号伸長部400は、変換符号データ領域406に格納された各ブロックの符号化データを、符号伸長部105により伸長処理させ、伸長データ領域407に画像データとして格納する。
そして、この後、新符号伸長部400は、処理をS507に進める。このS507にて、新符号伸長部400は、方式D伸長部403を制御し、符号化画像データ領域405に格納された、方式Dの符号化データが存在する限り、その伸長を行わせ、得られたブロックの画像データを、伸長データ領域407内の該当するブロックに上書きする、ことを繰り返す。
この後は、伸長データ領域407の画像データに対する画像処理部106による画像処理、印刷処理が行われることになる。
以上、説明したように第1の実施形態によれば、新しい符号方式の符号化データ(実施形態では、方式Dの符号化データ)が存在したとしても、第1段階にて、これまで利用していた符号伸長部105が伸長可能な連続したブロックの符号化データを構築し、一気に伸長させる。そして、第2段階にて、ソフトウェアによる新しい符号化データの伸長を行う。このように、符号化データの種類に応じて、ブロック単位の伸長符号化部105とソフトウェアによる伸長処理の切換に起因するオーバーヘッドが無くなり、高速に伸長することが出来る。この結果、伸長処理の遅延量を少なくでき、印刷にかかる遅延を少なくできる。
[第2の実施形態]
上記第1の実施形態では、符号伸長部105は、単独の種類の符号化データを伸長できるものとした。そして、第1の実施形態では、符号伸長部105で伸長可能な符号化データは、そのコピーを変換符号データ領域406に格納し、符号伸長部105で伸長不可の方式Dの符号化データの場合は、それとは無関係の方式Aの固定のダミーの符号データを変換符号データ領域406に格納することとで、全ブロックについて符号伸長部105による伸長可能な符号化データを構築した。
しかし、ダミーの固定データを変換符号データ領域406に格納するのではなく、元の方式Dの符号化データをもとに、符号伸長部105が伸長できる符号データを変換する構成としてもよい。本第2の実施形態では、かかる点を説明する。
本第2の実施形態では、方式Dが、異なる2種類の符号方式を組み合わせたハイブリッド型符号化データであることに鑑み、変換符号作成部402が、方式Dの符号データを符号伸長部105で伸長することのできる符号方式Cのデータ構造に変換する。
図7は、第2の実施形態における新符号伸長部400の処理手順を示すフローチャートである。また、図8は、第2の実施形態におけるRAM103内の領域405乃至407のデータの格納状態を示している。
外部から受信した符号化データがRAM103の符号化画像データ領域405へ格納されると、本処理が開始する。
まず、S701にて、新符号伸長部400は、符号方式解析部401を制御し、符号化画像データ領域405から1つのブロック(以下、着目ブロック)のヘッダを解析させ、その符号方式を判定させる。次に、S702にて、新符号伸長部400は、判定した符号方式が符号伸長部105で伸長可能な符号方式(方式A乃至C)であるか否かを判定する。言い換えれば、新符号伸長部400は、実施形態における符号伸長部105が着目ブロックの伸長に対応しているか、それとも非対応かを判定する。符号伸長部105で伸長できる方式であると判定した場合、新符号伸長部400は処理をS703に進め、着目ブロックの符号化データ(ブロックヘッダを含む)をそのままコピーし、変換符号データ領域406に保存する。
また、着目ブロックの符号化データが符号伸長部105で伸長できない方式(方式D)であると判定した場合、新符号伸長部400は、処理をS704に進める。S704にて、新符号伸長部400は変換符号作成部402を制御し、着目ブロックの符号化データから、符号伸長部105で伸長できる符号データに変換する。図8を用いて、本実施形態におけるS704における符号データの変換方法を詳細に説明する。
図8の参照符号801は、符号方式解析部401で検出された符号伸長部105で伸長できないハイブリッド形式の符号方式Dで符号化されたブロックの符号データを示している。参照符号802は、ハイブリッド形式の符号方式Dのデータ構造を示している。データ構造802は、ヘッダと、ロスレス符号化データ、ロッシー符号化データから構成される。ヘッダは、符号化単位ごとに符号データに付与されているデータで、本符号データが符号化されている符号方式を知ることが出来る。符号方式Dは、ロスレス符号を用いる方式Bとロッシー符号を用いる方式Cのハイブリッド型の符号方式であるので、ロスレス符号、ロッシー符号のデータ構造はそれぞれ方式B,Cと同じ構造となっている。
参照符号803は、変換符号作成部で変換されたロッシー符号を用いる方式Cの符号データを示している。参照符号804は、方式Cのデータ構造を示しており、ヘッダとロッシー符号データからなる。
変換符号作成部402は、方式Dの符号化データから、ロスレス符号データを削除してロッシー符号だけを残し、かつ、ヘッダを方式Cに書き換えることで、方式Dのロッシー部分を方式Cに変更し、その変更結果、つまり、方式Cの符号化データとして変換符号データ領域406に保存する。
本実施形態では、ロスレス符号データを削除してロッシー符号だけを残す構成としているが、ロッシー符号化データを削除してロスレス符号符号化データだけを残す構成としてもよい。また、ヘッダを書き換えることによって、伸長されなくなるロスレスもしくはロッシーの符号化データを符号伸長部105が無視できる場合は、削除しないでヘッダのみを書き換える構成としてもよい。
そして、新符号伸長部400は、S705にて、全ブロックについての判定処理を終えたか否かを判定し、否の場合には処理をS701に戻す。
S705にて、全ブロックの判定処理が終了したと判定された場合、RAM3の変換符号データ領域406には、符号伸長部105が伸長できる、全ブロックに対する有意な符号化データが格納されていることになる。
そこで、新符号伸長部400は、S706にて、符号伸長部105を制御し、RAM3の変換符号データ領域406に格納された符号化データの伸長処理を実行させ、伸長データ領域407に伸長結果の画像データを格納させる。
図8の参照805は、S706の処理が完了した時点での、伸長データ領域407に格納された伸長データの出力例を示している。この時点では、符号化画像データ領域405内の方式Dにおける、ロッシー符号化データが示す背景部分の自然画のみが伸長されることになる。
この伸長処理を終えると、新符号伸長部400は、S707に処理を進め、方式D伸長部403を制御して、符号化画像データ領域405内の方式Dの符号データの情報を受け取って、符号データをソフトウェアデコードする。本実施形態では、既に符号伸長部105によりロッシー符号の部分については伸長している。したがって、方式D伸長部403は符号方式Dのロスレス符号化データの部分をデコードして得た画像データで、伸長データ領域407の該当する位置に合成することになる。
以上説明したように、本第2の実施形態によれば、既存の符号伸長装置で伸長できない新しい符号方式の符号データを変換して、従来の符号方式として処理することで新しい符号方式の伸長処理の一部を既存の符号伸長装置で伸長することができる。これによって、新たに開発された符号方式で符号化されたデータを高速に伸長することが出来る。
なお、上記第2の実施形態では、方式Dは、2種類の符号方式の符号化データの混在を示すものとして説明したが、複数種類であれば良いので、種類の数が2に限定されるものではない。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100…画像形成装置、101…CPU、102…ROM、103…RAM、104…入力部、105…符号伸長部、106…画像処理部、107…印刷処理部

Claims (8)

  1. 符号化画像データを伸長する画像伸長装置であって、
    予め設定された種類の符号化データを伸長可能な第1の伸長手段と、
    該第1の伸長手段が非対応の種類の符号化データの伸長処理を行う第2の伸長手段と、
    入力した符号化画像データのブロック単位に符号化データの種類を識別する識別手段と、
    該識別手段により識別された着目ブロックの符号化データの種類が、前記第1の伸長手段の伸長可の種類である場合には前記着目ブロックの符号化データを所定のメモリに格納し、
    前記第1の伸長手段の伸長不可の種類である場合には、前記第1の伸長手段が伸長可の所定の符号化データを前記メモリに格納することで、前記第1の伸長手段が伸長可能な符号化画像データを作成する作成手段と、
    該作成手段で作成された符号化データを前記第1の伸長手段を制御して伸長することで仮の画像データを生成させた後、前記第2の伸長手段を制御して前記第1の伸長手段の伸長不可の符号化データの伸長し、当該伸長結果で前記仮の画像データを更新することで出力用の画像データを生成する制御手段と
    を有することを特徴とする画像伸長装置。
  2. 符号化画像データを伸長する画像伸長装置であって、
    ブロック単位であって、予め設定された種類の符号化データを伸長可能な第1の伸長手段と、
    複数種類の符号化データが混在したブロックの符号化データを伸長可能な第2の伸長手段と、
    入力した符号化画像データのブロック単位に符号化データの種類を識別する識別手段と、
    該識別手段により識別された着目ブロックの符号化データの種類が、前記第1の伸長手段の伸長可の単独の種類である場合には前記着目ブロックの符号化データを所定のメモリに格納し、
    前記第1の伸長手段の伸長不可の複数種類の符号化データが含まれる場合には、前記着目ブロックの符号化データにおける前記第1の伸長手段で伸長できる単独の種類の符号化データを、前記着目ブロックの符号化データとして前記メモリに格納することで、前記第1の伸長手段が伸長可能な符号化画像データを作成する作成手段と、
    該作成手段で作成された符号化データを前記第1の伸長手段を制御して伸長することで仮の画像データを生成させた後、前記第2の伸長手段を制御して前記第1の伸長手段の伸長不可となった残りの種類の符号化データの伸長し、当該伸長結果で前記仮の画像データを更新することで出力用の画像データを生成する制御手段と
    を有することを特徴とする画像伸長装置。
  3. 前記第1の伸長手段はハードウェアであって、前記第2の伸長手段はソフトウェアであることを特徴とする請求項1又は2に記載の画像伸長装置。
  4. 前記第2の伸長手段は、ロスレス符号化データとロッシー符号化データの2種類が混在した符号化データを伸長することを特徴とする請求項2に記載の画像伸長装置。
  5. 更に、前記制御手段で得た画像データに従って印刷する印刷手段を有することを特徴とする請求項1乃至4のいずれか1項に記載の画像伸長装置。
  6. 符号化画像データを伸長する画像伸長装置の制御方法であって、
    予め設定された種類の符号化データを伸長可能な第1の伸長工程と、
    該第1の伸長工程が非対応の種類の符号化データの伸長処理を行う第2の伸長工程と、
    入力した符号化画像データのブロック単位に符号化データの種類を識別する識別工程と、
    該識別工程により識別された着目ブロックの符号化データの種類が、前記第1の伸長工程の伸長可の種類である場合には前記着目ブロックの符号化データを所定のメモリに格納し、
    前記第1の伸長工程の伸長不可の種類である場合には、前記第1の伸長工程が伸長可の所定の符号化データを前記メモリに格納することで、前記第1の伸長工程が伸長可能な符号化画像データを作成する作成工程と、
    該作成工程で作成された符号化データを前記第1の伸長工程を制御して伸長することで仮の画像データを生成させた後、前記第2の伸長工程を制御して前記第1の伸長工程の伸長不可の符号化データの伸長し、当該伸長結果で前記仮の画像データを更新することで出力用の画像データを生成する制御工程と
    を有することを特徴とする画像伸長装置の制御方法。
  7. 符号化画像データを伸長する画像伸長装置の制御方法であって、
    ブロック単位であって、予め設定された種類の符号化データを伸長可能な第1の伸長工程と、
    複数種類の符号化データが混在したブロックの符号化データを伸長可能な第2の伸長工程と、
    入力した符号化画像データのブロック単位に符号化データの種類を識別する識別工程
    と、
    該識別工程により識別された着目ブロックの符号化データの種類が、前記第1の伸長工程の伸長可の単独の種類である場合には前記着目ブロックの符号化データを所定のメモリに格納し、
    前記第1の伸長工程の伸長不可の複数種類の符号化データが含まれる場合には、前記着目ブロックの符号化データにおける前記第1の伸長工程で伸長できる単独の種類の符号化データを、前記着目ブロックの符号化データとして前記メモリに格納することで、前記第1の伸長工程が伸長可能な符号化画像データを作成する作成工程と、
    該作成工程で作成された符号化データを前記第1の伸長工程を制御して伸長することで仮の画像データを生成させた後、前記第2の伸長工程を制御して前記第1の伸長工程の伸長不可となった残りの種類の符号化データの伸長し、当該伸長結果で前記仮の画像データを更新することで出力用の画像データを生成する制御工程と
    を有することを特徴とする画像伸長装置の制御方法。
  8. コンピュータが読み込み実行することで、前記コンピュータに、請求項1乃至5のいずれか1項に記載の画像伸長装置の各手段として機能させるためのプログラム。
JP2018174190A 2018-09-18 2018-09-18 画像伸長装置及びその制御方法及びプログラム Active JP6775558B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2018174190A JP6775558B2 (ja) 2018-09-18 2018-09-18 画像伸長装置及びその制御方法及びプログラム
EP19195066.6A EP3627834A1 (en) 2018-09-18 2019-09-03 Image decompressing apparatus, control method thereof, and computer program
US16/569,812 US10803368B2 (en) 2018-09-18 2019-09-13 Image decompressing apparatus, control method thereof, and non-transitory computer-readable storage medium
CN201910870455.1A CN110913223B (zh) 2018-09-18 2019-09-16 图像解压缩装置、其控制方法及计算机可读存储介质
KR1020190113880A KR102568052B1 (ko) 2018-09-18 2019-09-17 화상 신장장치, 그 제어방법 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018174190A JP6775558B2 (ja) 2018-09-18 2018-09-18 画像伸長装置及びその制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2020048041A JP2020048041A (ja) 2020-03-26
JP6775558B2 true JP6775558B2 (ja) 2020-10-28

Family

ID=67874227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018174190A Active JP6775558B2 (ja) 2018-09-18 2018-09-18 画像伸長装置及びその制御方法及びプログラム

Country Status (5)

Country Link
US (1) US10803368B2 (ja)
EP (1) EP3627834A1 (ja)
JP (1) JP6775558B2 (ja)
KR (1) KR102568052B1 (ja)
CN (1) CN110913223B (ja)

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10322216A (ja) 1997-05-15 1998-12-04 Sony Corp デコーダ
JP2000050084A (ja) * 1998-07-28 2000-02-18 Canon Inc 画像処理装置及び方法及び記憶媒体
JP2001027986A (ja) * 1999-05-10 2001-01-30 Canon Inc データ処理装置及び処理部選択方法
KR100533028B1 (ko) * 2003-06-03 2005-12-02 엘지전자 주식회사 모션벡터 및 매크로블록 타입 결정방법
JP2004236226A (ja) 2003-01-31 2004-08-19 Ricoh Co Ltd 画像伸長方法、画像伸長装置、プログラム及び記憶媒体
JP2005006001A (ja) * 2003-06-11 2005-01-06 Canon Inc 画像符号化装置及び方法、及びプログラムを記録した記憶媒体
JP4693603B2 (ja) * 2004-11-15 2011-06-01 キヤノン株式会社 画像符号化装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
CN101095284B (zh) * 2004-12-28 2012-04-18 卡西欧电子工业株式会社 用于有选择地压缩和解压缩数据的设备与方法
KR100723505B1 (ko) * 2005-10-06 2007-05-30 삼성전자주식회사 하이브리드 방식의 영상 데이터 처리 시스템 및 영상데이터 처리 방법
JP4795161B2 (ja) * 2006-08-08 2011-10-19 キヤノン株式会社 画像処理装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
KR20090002507A (ko) * 2007-06-29 2009-01-09 주식회사 휴맥스 동영상 데이터의 인코딩/디코딩 방법 및 장치
JP2009117967A (ja) * 2007-11-02 2009-05-28 Canon Inc 画像記録装置
CN102177715A (zh) * 2008-11-10 2011-09-07 松下电器产业株式会社 图像解码装置、图像解码方法、集成电路以及程序
US8392596B2 (en) * 2009-05-26 2013-03-05 Red Hat Israel, Ltd. Methods for detecting and handling video and video-like content in remote display system
JP5052569B2 (ja) * 2009-06-25 2012-10-17 シャープ株式会社 画像圧縮装置、画像圧縮方法、画像伸張装置、画像伸張方法、画像形成装置、コンピュータプログラム及び記録媒体
KR20110011361A (ko) * 2009-07-28 2011-02-08 삼성전자주식회사 샘플링을 이용한 영상 데이터 인코딩/디코딩 장치 및 인코딩/디코딩 방법
JP5538792B2 (ja) * 2009-09-24 2014-07-02 キヤノン株式会社 画像処理装置、その制御方法、及びプログラム
JP4991816B2 (ja) * 2009-09-30 2012-08-01 シャープ株式会社 画像処理装置
CN101783952A (zh) * 2010-03-01 2010-07-21 广东威创视讯科技股份有限公司 图像优化编码方法及优化编码装置
US8768078B2 (en) * 2010-04-07 2014-07-01 Apple Inc. Intelligent media decoding
CN102098507B (zh) * 2010-06-08 2013-12-25 同济大学 图像统合压缩方法及装置
JP2013219607A (ja) * 2012-04-10 2013-10-24 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
JP6742692B2 (ja) * 2015-01-30 2020-08-19 富士通株式会社 符号化プログラムおよび伸長プログラム
US9928452B2 (en) * 2015-06-05 2018-03-27 Canon Kabushiki Kaisha Image decoding apparatus and method therefor

Also Published As

Publication number Publication date
EP3627834A1 (en) 2020-03-25
US20200090014A1 (en) 2020-03-19
JP2020048041A (ja) 2020-03-26
US10803368B2 (en) 2020-10-13
CN110913223A (zh) 2020-03-24
CN110913223B (zh) 2022-12-27
KR20200032648A (ko) 2020-03-26
KR102568052B1 (ko) 2023-08-18

Similar Documents

Publication Publication Date Title
EP0469851B1 (en) Image processing apparatus
JP2000295113A (ja) ハフマン符号化データ圧縮装置
US20040150840A1 (en) Methods and systems for structuring a raster image file for parallel streaming rendering by multiple processors
JP6775558B2 (ja) 画像伸長装置及びその制御方法及びプログラム
JP6741463B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP7040058B2 (ja) 符号化装置
JP2018058295A (ja) 画像処理装置、画像処理方法、及びプログラム
JP6675253B2 (ja) 画像復号装置およびその方法、並びに、画像処理装置
JP5441676B2 (ja) 画像処理装置及びその処理方法
JP2009044547A (ja) 画像処理装置および画像処理方法
JP2006352755A (ja) カラー画像生成装置
JP2020088694A (ja) 画像処理装置、画像処理方法
US10182178B2 (en) Parallel fast drawing of unrotated delta row encoded images
US9049404B2 (en) Image processing apparatus and method that perform multiple image processes, and storage medium storing a program thereof, for decompressing a compressed image according to first and second information indicating image processing to be performed
JP2001169120A (ja) 画像処理装置及びその方法、及び画像処理システム
JP3997851B2 (ja) 画像符号化装置および画像符号化プログラム
JPH11187261A (ja) 画像処理装置
JP3119387B2 (ja) 画像処理装置
JP6140973B2 (ja) 画像処理装置、画像処理方法ならびにプログラム
JPH11259243A (ja) 印刷システム
JP2000078415A (ja) 画像処理システム、画像圧縮装置、および、記録媒体
JP2016046597A (ja) 画像処理装置、および画像処理装置の制御方法、プログラム
JP2003234910A (ja) マルチファンクションシステム
JP2005244748A (ja) 画像処理方法及び画像処理装置
JPH09123541A (ja) 画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200818

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201006

R151 Written notification of patent or utility model registration

Ref document number: 6775558

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151