JP2021094798A - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP2021094798A
JP2021094798A JP2019228366A JP2019228366A JP2021094798A JP 2021094798 A JP2021094798 A JP 2021094798A JP 2019228366 A JP2019228366 A JP 2019228366A JP 2019228366 A JP2019228366 A JP 2019228366A JP 2021094798 A JP2021094798 A JP 2021094798A
Authority
JP
Japan
Prior art keywords
image
processing
image processing
image data
unit
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.)
Pending
Application number
JP2019228366A
Other languages
English (en)
Inventor
史暁 杉山
Fumiaki Sugiyama
史暁 杉山
順一 内山
Junichi Uchiyama
順一 内山
努 長岡
Tsutomu Nagaoka
努 長岡
木村 進
Susumu Kimura
進 木村
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
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 Fujifilm Business Innovation Corp filed Critical Fujifilm Business Innovation Corp
Priority to JP2019228366A priority Critical patent/JP2021094798A/ja
Priority to US16/851,671 priority patent/US11798133B2/en
Publication of JP2021094798A publication Critical patent/JP2021094798A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

【課題】処理対象の画像データの特徴に基づいて、回路規模の増大を抑制しながらデータ量の削減を実現する。【解決手段】回路構成が再構成可能な回路再構成デバイス200により構成された画像処理を行うプロセッサを備え、このプロセッサは、画像データを走査線の1ラインごとに取得し、取得した1ライン分の画像データの特徴を判定し、得られた小領域ごとの画像データの特徴に応じて回路構成を選択して処理を実行し、処理された小領域ごとの画像データである描画情報を一次記憶部300に保持させることを特徴とする。【選択図】図2

Description

本発明は、画像処理装置に関する。
回路再構成デバイス(DRP、FPGA等)を用いて画像処理装置の画像処理手段を構成することが行われている。
特許文献1には、回路構成が再構成可能な再構成可能回路と、前記再構成可能回路内の回路として構成され、画像メモリにアクセスすることで画像データに表されたオブジェクトを前記画像メモリに描画する描画処理手段と、前記画像データを解釈することで継続して異なるオブジェクトを前記画像メモリに描画するよう前記描画処理手段に指示するためのコマンドを生成するコマンド生成手段と、を有する画像処理装置が開示されている。
ところで、回路再構成デバイス(DRP、FPGA等)では、現在の有限回路規模を超える機能実装を行おうとする場合に、デバイスを要請される機能実装を満たす回路規模のデバイスに変更するか、または、動的に回路を再構成可能なデバイスの特性を利用したアルゴリズムの構築および回路の再構成により有限回路規模内での機能実装を実現することが行われていた。
特許第6160317号公報
システムの構成要素の条件に応じて、そのシステムの処理におけるボトルネック箇所は異なる。そのため、システム設計においては、システムの構成要素の条件に合せて処理対象のデータ量を削減することが求められる。このとき、データ量の削減を優先すると、システムの回路規模の増大を招く。反対に、回路規模の縮小を優先すると、データ量の削減が抑制される。
本発明は、処理対象の画像データの特徴に基づいて、回路規模の増大を抑制しながらデータ量の削減を実現することを目的とする。
請求項1に係る本発明は、
回路構成が再構成可能な回路再構成デバイスにより構成された画像処理を行うプロセッサを備え、
前記プロセッサは、
画像データを小領域単位で取得し、
取得した前記小領域ごとの前記画像データの特徴を判定し、
得られた前記小領域ごとの前記画像データの前記特徴に応じて回路構成を選択して処理を実行し、
処理された前記小領域ごとの前記画像データである描画情報を記憶装置に保持させることを特徴とする、画像処理装置である。
請求項2に係る本発明は、
前記小領域は、画像の走査線ごとの画素列であることを特徴とする、請求項1に記載の画像処理装置である。
請求項3に係る本発明は、
前記小領域ごとの前記画像データの前記特徴は、前記走査線ごとの前記画素列において同一の画素値を有する画素の連続個数の平均値に基づいて判定されることを特徴とする、請求項2に記載の画像処理装置である。
請求項4に係る本発明は、
前記判定結果に基づき、前記小領域における前記同一の画素値を有する画素の連続個数の平均値が第1の閾値よりも大きい場合、画素値および当該同一の画素値を有する画素の連続個数により画像を表現するコマンドを生成し、当該同一の画素値を有する画素の連続個数の平均値が当該第1の閾値よりも小さい場合、当該小領域を構成する各画素の画素値に基づく処理方法で画像処理が実行されることを特徴とする、請求項3に記載の画像処理装置である。
請求項5に係る本発明は、
前記小領域における前記同一の画素値を有する画素の連続個数の平均値が前記第1の閾値よりも大きい値である第2の閾値よりも大きい場合、許容される当該連続個数の長さの最大値が第1長さである第1処理方法で画像処理が実行され、当該同一の画素値を有する画素の連続個数の平均値が当該第1の閾値よりも大きく、かつ当該第2の閾値よりも小さい場合、許容される当該連続個数の長さの最大値が当該第1長さよりも短い第2長さである第2処理方法で画像処理が実行されることを特徴とする、請求項4に記載の画像処理装置である。
請求項6に係る本発明は、
前記プロセッサは、前記画像データの特徴を判定する回路と、前記画像処理を実行する回路とを、別回路として構成することを特徴とする、請求項1に記載の画像処理装置である。
請求項7に係る本発明は、
前記画像処理を実行する回路は、前記画像データの特徴を判定する回路とは別に画像データを取得し、画像処理を実行することを特徴とする、請求項6に記載の画像処理装置である。
請求項8に係る本発明は、
前記プロセッサは、
前記記憶装置から前記描画情報を取得し、
前記小領域ごとに前記描画情報に対して行われた画像処理の種類を判定し、
得られた画像処理の種類に応じて回路構成を選択して描画処理を実行し、
描画処理により得られた画像を画像出力装置へ送信することを特徴とする、請求項1に記載の画像処理装置である。
請求項9に係る本発明は、
前記プロセッサは、前記小領域ごとの前記画像データの前記特徴に加え、前記記憶装置から前記描画情報を取得する処理以降の処理に用いられる回路の内部メモリの容量に応じて、前記画像処理を実行する回路構成を選択することを特徴とする、請求項8に記載の画像処理装置である。
請求項10に係る本発明は、
前記プロセッサは、前記小領域ごとの前記画像データの前記特徴に加え、前記記憶装置から前記描画情報を取得する処理以降の処理に用いられる回路の演算器の数に応じて、前記画像処理を実行する回路構成を選択することを特徴とする、請求項8に記載の画像処理装置である。
請求項1の発明によれば、固定的な回路により画像処理を行う場合と比較して、処理対象の画像データの特徴に基づいて、回路規模の増大を抑制しながらデータ量の削減を実現することができる。
請求項2の発明によれば、固定的な回路により画像処理を行う場合と比較して、処理対象の画像データの特徴に基づいて、画像の走査線ごとに回路構成を選択し、回路規模の増大を抑制しながらデータ量の削減を実現することができる。
請求項3の発明によれば、固定的な回路により画像処理を行う場合と比較して、画像の走査線ごとに、同一の画素値を有する画素の出現傾向に基づいて回路構成を選択し、処理対象のデータ量を削減することができる。
請求項4の発明によれば、固定的な回路により画像処理を行う場合と比較して、画像の走査線ごとに、同一の画素値を有する画素の連続個数の平均値に基づいて回路構成を選択し、効率の良い処理を実行することができる。
請求項5の発明によれば、固定的な回路により画像処理を行う場合と比較して、画像の走査線ごとに、同一の画素値を有する画素の連続個数の平均値に基づいて回路構成を選択し、さらに効率の良い処理を実行することができる。
請求項6の発明によれば、画像データの特徴を判定する回路と画像処理を実行する回路とを一つの回路で構成する場合と比較して、回路規模を縮減することができる。
請求項7の発明によれば、画像データの特徴を判定する回路と画像処理を実行する回路とを一つの回路で構成する場合と比較して、判定後に画像処理を実行するまで画像データを保持するバッファを削減することにより、回路規模をさらに縮減することができる。
請求項8の発明によれば、固定的な回路により画像処理を行う場合と比較して、処理対象の画像データに対して小領域ごとに選択的に行われた処理の種類に基づいて回路構成を選択し、効率の良い描画処理を実行することができる。
請求項9の発明によれば、固定的な回路により画像処理を行う場合と比較して、処理を実行する回路の内部メモリの容量に基づいて、効率の良い処理を選択して実行することができる。
請求項10の発明によれば、固定的な回路により画像処理を行う場合と比較して、処理を実行する回路の演算器の数に基づいて、効率の良い処理を選択して実行することができる。
本実施形態が適用される画像処理装置の構成を示す図である。 前段処理部として構成された回路再構成デバイスを示す図である。 後段処理部として構成された回路再構成デバイスを示す図である。 前段処理部の動作を示すフローチャートである。 同一画素値の画素の連続と各処理方法との関係の具体例を示す図である。 前段処理部を再構成する場合の構成例を示す図であり、図6(A)はライン判定回路を示す図、図6(B)は変換回路を示す図である。
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
<画像処理装置の構成>
図1は、本実施形態が適用される画像処理装置の構成を示す図である。画像処理装置100は、通信部110と、画像形成部120と、画像読み取り部130と、制御部140と、画像処理部150と、記憶部160と、ユーザ・インターフェイス(UI)部170とを備える。
通信部110は、ネットワークを介して画像処理装置100と接続し、データ交換を行うためのネットワーク・インターフェイスである。通信部110におけるネットワークの接続手段は特に限定されず、通信回線は有線であっても無線であっても良い。
画像形成部120は、IOT(Image Output Terminal)である。画像形成部120は、いわゆるプリンタ装置により構成され、記録材の一例である用紙に対して、画像形成材を用いて画像データに基づく画像を形成する。記録材に画像を形成する方式としては、例えば、感光体に付着させたトナーを記録材に転写して像を形成する電子写真方式や、インクを記録材上に吐出して像を形成するインクジェット方式等が用いられる。
画像読み取り部130は、IIT(Image Input Terminal)である。画像読み取り部130は、いわゆるスキャナ装置により構成され、セットされた原稿上の画像を光学的に読み取り、読み取り画像(画像データ)を生成する。画像の読み取り方式としては、例えば、光源から原稿に照射した光に対する反射光をレンズで縮小してCCD(Charge Coupled Devices)で受光するCCD方式や、LED(Light Emitting Diode)光源から原稿に順に照射した光に対する反射光をCIS(Contact Image Sensor)で受光するCIS方式が用いられる。
制御部140は、画像処理装置100の動作を制御する。具体的には、制御部140は、例えば、通信部110を用いた外部装置との通信、画像形成部120や画像読み取り部130を用いて行われる処理の実行、UI部170を用いたユーザへの情報提示およびユーザの操作の受け付け等の動作を制御する。制御部140は、演算手段であるCPU(Central Processing Unit)と、記憶手段である主記憶装置とを備える。CPUは、プログラムを主記憶装置に読み込んで実行する。そして、CPUがプログラムを実行することにより、上述した各種の制御および処理が実行される。
画像処理部150は、画像形成部120や画像読み取り部130により実行される処理に関して、処理対象である画像に対して、色補正や階調補正等の画像処理を実行する。本実施形態の画像処理部150は、画像形成部120による画像形成処理が行われる際、画像処理を行った後に処理対象の画像をデータ変換して一時記憶手段に保持させ、必要なタイミングで一時記憶手段から画像データを読み出して描画処理し、画像形成部120へ送る。
記憶部160は、各種のデータやプログラムを記憶する。具体的には、記憶部160は、処理対象の画像等のデータ、画像形成部120や画像読み取り部130の動作履歴データ、画像処理装置100の動作を制御するプログラム等が記憶される。記憶部160としては、例えば、磁気ディスク装置やSSD(Solid State Drive)等の不揮発性の記憶手段が用いられる。
UI部170は、操作画面や情報提示画面等の画面を表示する表示手段と、操作者による入力操作が行われる入力手段とを備える。表示手段に表示された操作画面にしたがって入力手段による入力操作が行われることにより、各種の制御命令や制御データが入力される。表示手段としては、例えば液晶ディスプレイが用いられる。入力手段としては、例えばハードウェア・キーやタッチセンサが用いられる。一例として、表示手段である液晶ディスプレイと入力手段であるタッチセンサとを組み合わせたタッチ・パネルを用いてUI部170を構成しても良い。
<画像処理部150の構成>
画像処理部150をハードウェアにより実装した場合、画像処理部150の処理能力に影響するいくつかのポイントがある。例えば、制御部140と画像処理部150との間のデータ転送、記憶部160に対するデータの読み書き、画像処理後のデータをスプールした記憶手段から読み出して画像形成部120へ送る際のデータ転送等である。これらのポイントには、転送速度に関してはベストエフォートとされ、それよりもハードウェアの回路規模の縮小が重要な課題となるものもある。一方で、データ転送の帯域が重視され、回路規模の縮小も無視できないが、それよりもデータ転送の速度が重要な課題となるものもある。そこで、これらのバランスを取りながら回路設計がなされることが望まれる。ここでは、回路構成を再構成可能なデバイス(回路再構成デバイス)により画像処理部150を実現し、処理の場面や処理対象の画像の特徴に応じて回路構成を選択することにより、有限の回路規模の範囲内で処理速度の向上を図ることを考える。回路再構成デバイスの例としては、DRP(Dynamic Reconfigurable Processor)やFPGA(Field-Programmable Gate Array)等がある。
図2および図3は、画像処理部150の構成を示す図である。画像処理部150は、回路再構成デバイス200により実現される。回路再構成デバイス200は、処理の段階に応じて、前段処理部210と、後段処理部220とに再構成される。図2は、前段処理部210として構成された回路再構成デバイス200を示し、図3は、後段処理部220として構成された回路再構成デバイス200を示す。
<前段処理部210の構成>
図2に示すように、前段処理部210は、入力制御部211と、ライン判定部212と、ラインバッファ213と、処理切り替え部214と、FILL処理部215と、sFILL処理部216と、DTCOPY処理部217と、出力制御部218とを備える。また、前段処理部210は、一時保持部300に接続されている。ここで、FILL処理部215、sFILL処理部216およびDTCOPY処理部217は、同時に存在するのではなく、回路再構成デバイス200の機能に基づき、何れかが選択的に構成される。したがって、以下の説明では、FILL処理部215、sFILL処理部216およびDTCOPY処理部217を区別しない場合、処理部215、216、217と記載する。
入力制御部211は、記憶部160から処理対象の画像を小領域単位で取得する。ここでは、小領域を、画像に対する走査線の1ラインとする。すなわち、小領域単位の画像とは、1ラインごとの画素列を意味する。したがって、入力制御部211は、処理対象の画像を1ラインずつ順次取得する。
ライン判定部212は、入力制御部211により取得された1ラインごとの画像データの特徴を判定する。ここで、画像データの特徴は、1ラインにおいて同一の画素値を有する画素の連続個数の平均値に基づいて判定される。また、ライン判定部212は、判定結果である画像データの特徴に応じて、画像データを一時保持部300に保持させる際の変換処理の種類を決定する。ここでは、DTCOPY処理と、FILL系処理に含まれるFILL処理およびsFILL処理の何れかに決定される。
DTCOPY処理は、1ラインの各画素の画素値に基づく処理方法であり、DTCOPY形式の画像データを生成する。FILL系処理は、画素値および同一画素値の画素の連続個数に基づく処理方法であり、FILL系のコマンドを生成する。FILL系処理は、FILL処理と、sFILL処理とに分けられ、FILL処理は、許容される連続個数の長さの最大値が第1長さであるFILL形式のコマンドを生成する。sFILL処理は、許容される連続個数の長さの最大値が第1長さよりも短い第2長さであるsFILL形式のコマンドを生成する。
ライン判定部212は、1ラインにおける同一画素値の画素の連続個数の平均値が第1の閾値よりも小さい場合、画像データの変換処理としてDTCOPY処理を行うと決定する。また、ライン判定部212は、1ラインにおける同一画素値の画素の連続個数の平均値が第1の閾値よりも大きく、かつ、第1の閾値よりも大きい値に設定された第2の閾値よりも小さい場合、画像データの変換処理としてsFILL処理を行うと決定する。また、ライン判定部212は、1ラインにおける同一画素値の画素の連続個数の平均値が第2の閾値よりも大きい場合、画像データの変換処理としてFILL処理を行うと決定する。
ラインバッファ213は、入力制御部211が取得した1ラインごとの画像データを保持する。また、ラインバッファ213は、ライン判定部212による判定結果および実行する処理の決定結果を、画像データに対応付けて保持しても良い。
処理切り替え部214は、1ラインごとに、ライン判定部212による処理の決定結果にしたがって、処理部215、216、217の回路構成を選択し、FILL処理部215、sFILL処理部216およびDTCOPY処理部217の何れかに再構成する。そして、処理切り替え部214は、画像データをラインバッファ213から読み出して、再構成したFILL処理部215、sFILL処理部216またはDTCOPY処理部217に処理させる。処理切り替え部214は、1ラインごとに処理部215、216、217を再構成するので、1ラインの途中で処理方法を変えることはない。すなわち、1ラインの画像データを処理する際、処理部215、216、217は、FILL処理部215、sFILL処理部216およびDTCOPY処理部217の何れか一つとして動作し、複数の相異なる種類の処理部215、216、217が併存することはない。
FILL処理部215は、処理切り替え部214による切り替え制御にしたがって構成される。FILL処理部215は、FILL処理を実行して、1ライン分の画像を表現するFILL形式のコマンドを生成する。FILL形式のコマンドには、同じ画素値が何画素連続するかという情報が記述される。すなわち、FILL形式のコマンドでは、いわゆるRUN形式で画像が表現される。したがって、1ラインのうちで、画素値が変わるたびに、画素値の情報と連続個数の情報を含むコマンドが個別に記述される。また、FILL形式では、個々のコマンドに、コマンドの種類を示す情報が記録される。
sFILL処理部216は、処理切り替え部214による切り替え制御にしたがって構成される。sFILL処理部216は、sFILL処理を実行して、1ライン分の画像を表現するsFILL形式のコマンドを生成する。sFILL形式のコマンドは、FILL形式のコマンドからコマンドの種類を示す情報が省略された形式である。コマンドの種類を示す情報は、1ラインごとに、各コマンドとは別に記録される。また、sFILL形式のコマンドは、1つのコマンドで表現する画像における画素の連続個数の上限が、FILL形式のコマンドよりも短く設定されている。
DTCOPY処理部217は、処理切り替え部214による切り替え制御にしたがって構成される。DTCOPY処理部217は、DTCOPY処理を実行して、画素ごとに画素値とタグ情報とを組にして記述したDTCOPY形式の画像データを生成する。DTCOPY形式の画像データは、いわゆるraw形式のデータである。DTCOPY形式の画像データに含まれるタグ情報には、画像で表現されるオブジェクトの属性情報が記述される。属性情報とは、画素が表す画像の種類(イメージ、文字など)を示す情報である。
出力制御部218は、処理部215、216、217の処理により生成された1ラインごとのFILL系コマンドまたはDTCOPY形式の画像データを出力し、一時保持部300に格納する。一時保持部300は、いわゆるスプール媒体であり、例えば、記憶部160により実現される。以下の説明において、FILL系コマンドおよびDTCOPY形式の画像データをまとめて描画情報と呼ぶ。
<後段処理部220の構成>
図3に示すように、後段処理部220は、入力制御部221と、受信バッファ222と、ライン判定部223と、描画用バッファ224と、描画切り替え部225と、FILL系描画部226と、DTCOPY描画部227と、出力制御部228とを備える。また、後段処理部220は、一時保持部300に接続されている。ここで、後段処理部220は、回路再構成デバイス200の機能に基づき、前段処理部210から回路構成を再構築して実現される。また、FILL系描画部226およびDTCOPY描画部227は、回路再構成デバイス200の機能に基づき、何れかが選択的に構成される。したがって、以下の説明では、FILL系描画部226とDTCOPY描画部227とを区別しない場合、描画部226、227と記載する。
入力制御部221は、一時保持部300から1ラインごとに描画情報を取得する。受信バッファ222は、入力制御部221により取得された1ラインごとの描画情報を保持する。
ライン判定部223は、受信バッファ222から1ラインごとに描画情報を読み出し、読み出した描画情報に対して前段処理部210で行われた処理の種類(描画情報がFILL系コマンドかDTCOPY形式の画像データか)を判定する。描画用バッファ224は、ライン判定部223により判定された描画情報を保持する。
描画切り替え部225は、ライン判定部223の判定結果にしたがって描画部226、227の回路構成を選択し、FILL系描画部226およびDTCOPY描画部227の何れかに再構成する。そして、描画切り替え部225は、描画情報を描画用バッファ224から読み出して再構築したFILL系描画部226またはDTCOPY描画部227に処理させる。描画切り替え部225は、1ラインごとに描画部226、227を再構成するので、1ラインの途中で処理方法を変えることはない。すなわち、1ラインの描画情報を処理する際、描画部226、227は、FILL系描画部226およびDTCOPY描画部227の何れか一方として動作し、FILL系描画部226とDTCOPY描画部227とが併存することはない。
FILL系描画部226は、FILL系コマンド(FILL形式のコマンドまたはsFILL形式のコマンド)に基づき、1ラインごとの画像を描画する。DTCOPY描画部227は、DTCOPY形式の画像データに基づき、1ラインごとの画像を描画する。
出力制御部228は、FILL系描画部226またはDTCOPY描画部227により描画された画像を画像形成部120へ出力する。画像形成部120は、取得した画像を用紙等の媒体上に形成する。
<前段処理部210の動作>
図4は、前段処理部210の動作を示すフローチャートである。前段処理部210において、入力制御部211が処理対象の画像の画素値とタグ情報とを取得すると(S401)、ライン判定部212が、取得した画像データの1ラインに対し、同一画素値の画素の連続個数の平均値を求める(S402)。
S402で求めた値が、上述した第2の閾値よりも大きい場合(S403でYES)、ライン判定部212は、この画像データに対してFILL処理を行うと決定する。この決定に応じて、処理切り替え部214がFILL処理部215を構成し、画像データを処理して描画情報であるFILL形式のコマンド(図では、FILL形式に変換したデータと記載)を生成する。生成された描画情報は、出力制御部218を介して出力され(S405)、一時保持部300に保持される。
S402で求めた値が、上述した第2の閾値よりも小さく、第1の閾値よりも大きい場合(S403でNO、S404でYES)、ライン判定部212は、この画像データに対してsFILL処理を行うと決定する。この決定に応じて、処理切り替え部214がsFILL処理部216を構成し、画像データを処理して描画情報であるsFILL形式のコマンド(図では、sFILL形式に変換したデータと記載)を生成する。生成された描画情報は、出力制御部218を介して出力され(S406)、一時保持部300に保持される。
S402で求めた値が、上述した第1の閾値よりも小さい場合(S403でNO、S404でNO)、ライン判定部212は、この画像データに対してDTCOPY処理を行うと決定する。この決定に応じて、処理切り替え部214がDTCOPY処理部217を構成し、画像データを処理して描画情報であるDTCOPY形式の画像データ(図では、DTCOPY形式に変換したデータと記載)を生成する。生成された描画情報は、出力制御部218を介して出力され(S407)、一時保持部300に保持される。
S405、S406またはS407において描画情報が生成されると、出力制御部218は、1ラインの終了を示すENDコマンドを生成された描画情報に付加して出力し(S408)、一時保持部300に保持させる。この後、処理対象の画像の全てのラインに対して処理が完了したか否かが判断され、未処理のラインがあれば(S409でNO)、次の1ライン分の画像データに対してS402〜S408の処理が行われる。全てのラインに対して処理が完了したならば(S409でYES)、処理を終了する。
<描画情報の比較>
FILL形式のコマンド、sFILL形式のコマンドおよびDTCOPY形式の画像データについて、さらに詳細に説明する。まず、FILL系コマンドとDTCOPY形式の画像データとの差異について説明する。FILL系コマンドでは、同一画素値が連続する複数画素をまとめて、決まったサイズのコマンドとして記述する。そして、画素値が変わるたびに、その新しい画素値を有する画素を新規のコマンドで記述する。これに対し、DTCOPY形式の画像データでは、画素ごとに画素値とタグ情報とを組にして記述する。したがって、画素値の変化が少ない場合、多くの画素の情報を一つのコマンドで表現できるFILL系コマンドの方が、1ラインの画像に対するデータ量が少ない。一方、画素値の変化が多い場合、FILL系コマンドではコマンドの数が増えるため、DTCOPY形式のデータの方が、1ラインの画像に対するデータ量が少なくなる。
次に、同じFILL系コマンドであるFILL形式のコマンドとsFILL形式のコマンドの差異について説明する。FILL形式のコマンドは、同一画素値の画素の連続個数の最大値が第2長さである。第2長さは、通常、1ライン分の画素が全て入るのに十分なサイズである。したがって、1ラインの全画素が同一画素値の場合、1コマンドで表現することができる。1コマンド中には、画素値およびタグ情報からなる画素情報と、コマンドの種類の情報(このコマンドがFILL形式のコマンドであることを示す情報)とを含む。FILL形式のコマンドは、画素値が変わるたびに、コマンドの種類の情報を含む新規のコマンドで新しい画素値の画素を記述する。
これに対し、sFILL形式のコマンドは、同一画素値の画素の連続個数の最大値が第2長さよりも短い第1長さである。第1長さは、通常、1ライン分の画素数よりも短い。したがって、通常は、1ラインに対して複数のsFILLデータが記録される。また、sFILL形式のコマンドでは、1ラインに対して一つのコマンドの種類を示す情報を記録し、各コマンドには画素値およびタグ情報からなる画素情報のみを記述する。
したがって、1コマンドのサイズは、FILL形式のコマンドよりも小さい。このため、画素値の変化が少ない場合、少ないコマンド数で記述できるFILL形式のコマンドの方が、1ラインの画像に対するデータ量が少ない。一方、画素値の変化が多いと、FILL形式、sFILL形式ともにコマンド数は増えるが、コマンドごとにコマンドの種類を示す情報を含むFILL形式のコマンドの方が、1コマンドのサイズが大きいため、1ラインの画像に対するデータ量が多くなる。
図5は、同一画素値の画素の連続と各処理方法との関係の具体例を示す図である。図5に示す例において、平均RUN長は、1ラインにおける同一画素値を有する画素の連続個数の平均値である。図5において、平均RUN長は、2のべき乗で示されている。FILL数は、平均RUN長に応じて1ライン分の画像の記録に必要なFILL形式のコマンドの数である。sFILL数は、平均RUN長に応じて1ライン分の画像の記録に必要なsFILL形式のコマンドの数である。FILL処理は、平均RUN長に応じて1ラインをFILL形式のコマンドで記述した場合のデータ量である。sFILL処理は、平均RUN長に応じて1ラインをsFILL形式のコマンドで記述した場合のデータ量である。DTCOPY処理は、1ラインをDTCOPY形式で記述した場合のデータ量である。
また、図5に示す例において、1ラインの画素数を14080とし、1画素の画素情報を12bitで表現するものとする。そして、FILL形式のコマンドは、コマンドのサイズが4バイト(32bit)であり、同一画素値の画素の連続個数の情報を20bit(=32bit−12bit)で表現するものとする。また、sFILL形式のコマンドは、コマンドのサイズが2バイト(16bit)であり、同一画素値の画素の連続個数の情報を4bit(=16bit−12bit)で表現するものとする。また、DTCOPY形式の画像データは、12bitの画素情報を1画素ごとに表現する。
この場合、平均RUN長が1のとき、FILL数およびsFILL数は14080となる。そして、平均RUN長が14080のとき、FILL数は1となる。また、sFILL形式のコマンドは、表現可能な同一画素値の画素の連続個数が15個(4bit)であるため、平均RUN長が14080であってもsFILL数は複数である。図5を参照すると、平均RUN長が1のとき、DTCOPY形式の画像データのデータ量が最小である。平均RUN長が2〜8のとき、sFILL形式のコマンドのデータ量が最小である。平均RUN長が16以上のとき、FILL形式のコマンドのデータ量が最小である。したがって、図4のS403、S404に示したライン判定部212の判断では、上記の平均RUN長に応じてFILL処理部215、sFILL処理部216、DTCOPY処理部217の何れを使用するかが決定される。
<他の構成例>
図2に示した構成例では、ライン判定部212で処理部215、216、217の判定を行った後、1ラインごとの画像データを一度ラインバッファ213に保持させ、処理切り替え部214により処理部215、216、217の再構成を行った。ここで、処理部215、216、217だけでなく、前段処理部210自体を再構成することが考えられる。すなわち、処理対象の1ラインの画像データに対し、まず処理部215、216、217の判定を行い、この後、前段処理部210を再構成してFILL処理部215、sFILL処理部216、DTCOPY処理部217の何れかによる処理を実行する。
図6は、前段処理部210を再構成する場合の構成例を示す図である。図6(A)は、ライン判定回路を示す図、図6(B)は、変換回路を示す図である。図6(A)に示すライン判定回路230は、入力制御部211と、ライン判定部212とを備える。図6(B)に示す変換回路240は、処理切り替え部214と、FILL処理部215と、sFILL処理部216と、DTCOPY処理部217と、出力制御部218とを備える。ライン判定回路230および変換回路240の各機能部の機能は、図2に示した前段処理部210の各機能部と同一であるので、同一の符号を付して説明を省略する。図2に示した前段処理部210と同様に、変換回路240のFILL処理部215、sFILL処理部216およびDTCOPY処理部217は、同時に存在するのではなく、回路再構成デバイス200の機能に基づき、処理切り替え部214の制御に従って何れかが選択的に構成される。すなわち、図6(A)に示すライン判定回路230および図6(B)に示す変換回路240は、図2に示した前段処理部210を、ライン判定部212による処理を行うまでの部分と、画像データをFILL系コマンドまたはDTCOPY形式のデータに変換する部分とに分けて別回路で構成したものである。
図6(A)に示すライン判定回路230において、ライン判定部212による処理の決定結果は、一時的に外部のメモリに保持される。そして、ライン判定回路230から図6(B)に示す変換回路240に再構成されると、処理切り替え部214が外部のメモリからライン判定部212の決定結果を取得し、FILL処理部215、sFILL処理部216およびDTCOPY処理部217の何れかを再構成して変換処理を実行する。この場合、処理対象の画像データは、ライン判定回路230による取得とは別に、変換回路240が処理を行う際に改めて取得すれば良い。このため、図2に示した前段処理部210のように、ライン判定部212による判定の後に1ラインの画像データを保持しておくラインバッファ213を設ける必要がない。
また、上記の実施形態では、ライン(小領域)ごとの画像データの特徴に基づいて処理部215、216、217による処理の種類を決定したが、画像データの特徴に加え、回路再構成デバイス200の回路規模を考慮して、処理部215、216、217による処理の種類を決定しても良い。回路再構成デバイス200は、回路構成を変更可能であるものの、内部メモリの記憶容量や演算器の数等の回路規模を決定する要素は変更できない。すなわち、画像処理部150として使用する回路再構成デバイス200の種類が決まると、回路規模は固定される。一方、上述したように、画像処理後のデータをスプールした記憶手段(一時保持部300)から読み出して画像形成部120へ送る際のデータ転送は、画像処理部150の処理能力に影響するポイントの一つである。そして、このポイントは、データ転送の帯域が重視されるポイントである。したがって、一時保持部300から描画情報を読み出して処理し画像形成部120へ転送する後段処理部220において、回路再構成デバイス200の回路規模の範囲内で、データ転送の速度を向上させるように構成することが考えられる。
使用可能な内部メモリの容量が制限される場合は、上記の実施形態で説明したように、前段処理部210において、描画情報のデータ量が最小となるように、FILL系処理およびDTCOPY処理が選択される。これにより、後段処理部220で必要となる受信バッファ222の容量を削減し、内部メモリの容量の制限に対応し得る。一方、使用可能な演算器が少ない場合、描画情報のデータ量が増大することを許容して、後段処理部220を構成する演算器を削減することが必要となる。
一例として、使用可能な演算器が少ない場合に、FILL系コマンドから画像を描画する処理とDTCOPY形式の画像データから画像を描画する処理の一方のみを実行するように後段処理部220を構成することが考えられる。例えば、前段処理部210においてFILL系処理のみを行い、DTCOPY処理を行わないようにすることで、後段処理部220がFILL系コマンドのみを受け取り、DTCOPY形式の画像データを受け取らないようにすることができる。このようにすれば、後段処理部220では、FILL系コマンドから画像を描画する処理のみを行うこととなるため、ライン判定部223、描画切り替え部225、DTCOPY描画部227等を設ける必要がなく、その分の演算器が不要となる。前段処理部210においてFILL系処理のみを行い、DTCOPY処理を行わないようにするには、ライン判定部212による判定において、第1の閾値の設定を変更することにより、DTCOPY処理が選択されないようにする。なお、第1の閾値の設定変更に応じて、第2の閾値も変更しても良い。
また、FILL系コマンドから画像を描画する処理と、DTCOPY形式の画像データから画像を描画する処理とを比較すると、後者の方が処理を実行するのに多くのメモリ容量を要する傾向がある。そのため、後段処理部220として構成した際に使用可能な内部メモリの容量に余裕がある場合は、DTCOPY形式の画像データが多い方が処理の効率が良く、使用可能な内部メモリの容量が制限される場合は、FILL系コマンドが多い方が処理の効率が良い。そこで、使用可能な内部メモリの容量に余裕がある場合は、後段処理部220でDTCOPY形式の画像データから画像を描画する処理が多くなるように、前段処理部210のライン判定部212による判定で用いる第1の閾値を小さい値に設定し、使用可能な内部メモリの容量が制限される場合は、後段処理部220でFILL系コマンドから画像を描画する処理が多くなるように、第1の閾値を大きい値に設定することが考えられる。なお、この場合、第1の閾値の設定変更に応じて、第2の閾値も変更しても良い。
反対に、FILL系コマンドから画像を描画する処理と、DTCOPY形式の画像データから画像を描画する処理との比較では、前者の方が処理を実行するのに多くの演算器を要する傾向がある。そのため、後段処理部220として構成した際に使用可能な演算器が多い場合は、FILL系コマンドが多い方が処理の効率がよく、使用可能な演算器が少ない場合は、DTCOPY形式の画像データが多い方が処理の効率が良い。そこで、使用可能な演算器が多い場合は、後段処理部220でFILL系コマンドから画像を描画する処理が多くなるように、前段処理部210のライン判定部212による判定で用いる第1の閾値を大きい値に設定し、使用可能な演算器が少ない場合は、後段処理部220でDTCOPY形式の画像データから画像を描画する処理が多くなるように、第1の閾値を小さい値に設定することが考えられる。なお、この場合、第1の閾値の設定変更に応じて、第2の閾値も変更しても良い。
以上、本発明の実施形態について説明したが、本発明の技術的範囲は上記実施形態には限定されない。本発明の技術思想の範囲から逸脱しない様々な変更や構成の代替は、本発明に含まれる。例えば、図4を参照して説明した動作例では、画像データの1ラインにおける同一画素値の画素の連続個数の平均値と、第1の閾値および第2の閾値との比較結果に基づいて、画像データに対する処理を選択することとした。これに対し、同一画素値の画素の連続個数を判定に直接用いるのではなく、1ラインの画像データに対してFILL処理を行った場合に必要となるコマンド数(FILL数)と、1ラインの画像データに対してsFILL処理を行った場合に必要となるコマンド数(sFILL数)とを用いて処理の選択を行うようにしても良い。
具体的に説明すると、上述したようにライン判定部212において、1ラインにおける同一画素値の画素の連続個数の平均値が第2の閾値よりも大きい場合は、画像データの変換処理としてFILL処理が行われる。また、1ラインにおける同一画素値の画素の連続個数の平均値が第1の閾値よりも大きく、かつ、第1の閾値よりも大きい値に設定された第2の閾値よりも小さい場合は、画像データの変換処理としてsFILL処理が行われる。したがって、FILL数およびsFILL数は、1ラインにおける同一画素値の画素の連続個数に基づいて特定される値であり、ライン判定部212による判定に関して、同一画素値の画素の連続個数に代えてFILL数およびsFILL数を用いても良い。また、同一画素値の画素の連続個数に代えてFILL数およびsFILL数を用いたことに伴い、判定条件として、第1の閾値および第2の閾値ではなく、FILL数およびsFILL数に対してそれぞれ定められた閾値を用いる。
FILL数に対して定められた閾値をFILL数閾値と呼び、sFILL数に対して定められた閾値をsFILL数閾値と呼ぶことにする。そして、ライン判定部212は、処理対象のラインから得られたFILL数をFILL数閾値と比較し、sFILL数をsFILL数閾値と比較し、これらの比較結果に応じて、このラインの画像データに対する処理を選択する。具体的にFILL数およびsFILL数と第1の閾値および第2の閾値との関係を示すと、同一画素値の画素の連続個数が第1の閾値よりも小さい場合、FILL数はFILL数閾値よりも大きく、sFILL数はsFILL数閾値よりも大きい。また、同一画素値の画素の連続個数が第1の閾値よりも大きく第2の閾値よりも小さい場合、FILL数はFILL数閾値よりも大きく、sFILL数はsFILL数閾値以下となる。また、同一画素値の画素の連続個数が第1の閾値よりも小さい場合、FILL数はFILL数閾値以下となり、sFILL数はsFILL数閾値以下となる。
そして、図4のS403、S404の判断を、同一画素値の画素の連続個数の平均値と第1の閾値および第2の閾値との比較で行うのではなく、FILL数とFILL数閾値との比較およびsFILL数とsFILL数閾値との比較で行う。具体的には、FILL数がFILL数閾値以下である場合、ライン判定部212は、FILL処理を行うと決定する。FILL数がFILL数閾値よりも大きく、かつ、sFILL数がsFILL数閾値以下である場合、ライン判定部212は、sFILL処理を行うと決定する。FILL数がFILL数閾値よりも大きく、かつ、sFILL数がsFILL数閾値よりも大きい場合、ライン判定部212は、DTCOPY処理を行うと決定する。
100…画像処理装置、110…通信部、120…画像形成部、130…画像読み取り部、140…制御部、150…画像処理部、160…記憶部、170…ユーザ・インターフェイス(UI)部、200…回路再構成デバイス、210…前段処理部、211…入力制御部、212…ライン判定部、213…ラインバッファ、214…処理切り替え部、215…FILL処理部、216…sFILL処理部、217…DTCOPY処理部、218…出力制御部、220…後段処理部、221…入力制御部、222…受信バッファ、223…ライン判定部、224…描画用バッファ、225…描画切り替え部、226…FILL系描画部、227…DTCOPY描画部、228…出力制御部、300…一時保持部

Claims (10)

  1. 回路構成が再構成可能な回路再構成デバイスにより構成された画像処理を行うプロセッサを備え、
    前記プロセッサは、
    画像データを小領域単位で取得し、
    取得した前記小領域ごとの前記画像データの特徴を判定し、
    得られた前記小領域ごとの前記画像データの前記特徴に応じて回路構成を選択して処理を実行し、
    処理された前記小領域ごとの前記画像データである描画情報を記憶装置に保持させることを特徴とする、画像処理装置。
  2. 前記小領域は、画像の走査線ごとの画素列であることを特徴とする、請求項1に記載の画像処理装置。
  3. 前記小領域ごとの前記画像データの前記特徴は、前記走査線ごとの前記画素列において同一の画素値を有する画素の連続個数の平均値に基づいて判定されることを特徴とする、請求項2に記載の画像処理装置。
  4. 前記判定結果に基づき、前記小領域における前記同一の画素値を有する画素の連続個数の平均値が第1の閾値よりも大きい場合、画素値および当該同一の画素値を有する画素の連続個数により画像を表現するコマンドを生成し、当該同一の画素値を有する画素の連続個数の平均値が当該第1の閾値よりも小さい場合、当該小領域を構成する各画素の画素値に基づく処理方法で画像処理が実行されることを特徴とする、請求項3に記載の画像処理装置。
  5. 前記小領域における前記同一の画素値を有する画素の連続個数の平均値が前記第1の閾値よりも大きい値である第2の閾値よりも大きい場合、許容される当該連続個数の長さの最大値が第1長さである第1処理方法で画像処理が実行され、当該同一の画素値を有する画素の連続個数の平均値が当該第1の閾値よりも大きく、かつ当該第2の閾値よりも小さい場合、許容される当該連続個数の長さの最大値が当該第1長さよりも短い第2長さである第2処理方法で画像処理が実行されることを特徴とする、請求項4に記載の画像処理装置。
  6. 前記プロセッサは、前記画像データの特徴を判定する回路と、前記画像処理を実行する回路とを、別回路として構成することを特徴とする、請求項1に記載の画像処理装置。
  7. 前記画像処理を実行する回路は、前記画像データの特徴を判定する回路とは別に画像データを取得し、画像処理を実行することを特徴とする、請求項6に記載の画像処理装置。
  8. 前記プロセッサは、
    前記記憶装置から前記描画情報を取得し、
    前記小領域ごとに前記描画情報に対して行われた画像処理の種類を判定し、
    得られた画像処理の種類に応じて回路構成を選択して描画処理を実行し、
    描画処理により得られた画像を画像出力装置へ送信することを特徴とする、請求項1に記載の画像処理装置。
  9. 前記プロセッサは、前記小領域ごとの前記画像データの前記特徴に加え、前記記憶装置から前記描画情報を取得する処理以降の処理に用いられる回路の内部メモリの容量に応じて、前記画像処理を実行する回路構成を選択することを特徴とする、請求項8に記載の画像処理装置。
  10. 前記プロセッサは、前記小領域ごとの前記画像データの前記特徴に加え、前記記憶装置から前記描画情報を取得する処理以降の処理に用いられる回路の演算器の数に応じて、前記画像処理を実行する回路構成を選択することを特徴とする、請求項8に記載の画像処理装置。
JP2019228366A 2019-12-18 2019-12-18 画像処理装置 Pending JP2021094798A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019228366A JP2021094798A (ja) 2019-12-18 2019-12-18 画像処理装置
US16/851,671 US11798133B2 (en) 2019-12-18 2020-04-17 Image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019228366A JP2021094798A (ja) 2019-12-18 2019-12-18 画像処理装置

Publications (1)

Publication Number Publication Date
JP2021094798A true JP2021094798A (ja) 2021-06-24

Family

ID=76430219

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019228366A Pending JP2021094798A (ja) 2019-12-18 2019-12-18 画像処理装置

Country Status (2)

Country Link
US (1) US11798133B2 (ja)
JP (1) JP2021094798A (ja)

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006140601A (ja) * 2004-11-10 2006-06-01 Canon Inc 画像処理装置及び画像処理装置の制御方法
JP5534426B2 (ja) * 2010-03-25 2014-07-02 富士ゼロックス株式会社 画像形成装置およびそのプログラム
JP5776306B2 (ja) * 2011-04-25 2015-09-09 富士ゼロックス株式会社 画像データ処理装置及びプログラム
JP5699778B2 (ja) 2011-04-25 2015-04-15 富士ゼロックス株式会社 画像処理装置およびプログラム
JP5786434B2 (ja) * 2011-04-28 2015-09-30 富士ゼロックス株式会社 画像データ処理装置及びプログラム
JP5051327B1 (ja) * 2012-03-22 2012-10-17 富士ゼロックス株式会社 画像処理装置及びプログラム
JP6128782B2 (ja) * 2012-09-07 2017-05-17 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、プログラム、及び記憶媒体
JP6160317B2 (ja) 2013-07-09 2017-07-12 富士ゼロックス株式会社 画像処理装置及びプログラム
JP2015130640A (ja) * 2014-01-09 2015-07-16 富士ゼロックス株式会社 データ伸張装置、プログラムおよび記録媒体
JP2015149025A (ja) * 2014-02-07 2015-08-20 キヤノン株式会社 画像処理装置およびその制御方法、並びにプログラム
JP6370063B2 (ja) * 2014-03-04 2018-08-08 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム
JP6308821B2 (ja) * 2014-03-13 2018-04-11 キヤノン株式会社 画像処理装置
JP2015198405A (ja) * 2014-04-02 2015-11-09 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム
JP6489757B2 (ja) * 2014-04-08 2019-03-27 キヤノン株式会社 画像処理装置、その制御方法及びプログラム
JP6323209B2 (ja) 2014-06-24 2018-05-16 富士ゼロックス株式会社 画像処理装置及びプログラム
JP2016035692A (ja) * 2014-08-04 2016-03-17 キヤノン株式会社 画像処理装置、システム、情報処理方法及びプログラム
JP6478525B2 (ja) * 2014-08-25 2019-03-06 キヤノン株式会社 画像処理装置と、その制御方法、及びプログラム

Also Published As

Publication number Publication date
US20210192691A1 (en) 2021-06-24
US11798133B2 (en) 2023-10-24

Similar Documents

Publication Publication Date Title
JP6649750B2 (ja) 画像処理装置、画像処理方法
US10122883B2 (en) Image processing apparatus including circuit configuration and method of controlling the same
JP2011077837A (ja) 画像処理装置
US9786250B2 (en) Control apparatus, image processing apparatus, control method, and non-transitory computer-readable storage medium
US20120121176A1 (en) Image compression apparatus and image compression method
JP7338002B2 (ja) 画像処理装置および画像処理方法、およびプログラム
JP2015149025A (ja) 画像処理装置およびその制御方法、並びにプログラム
JP2021094798A (ja) 画像処理装置
JP4086556B2 (ja) 画像処理装置およびその制御方法
JP6544905B2 (ja) 画像処理装置、画像処理方法、プログラム
JP2012234458A (ja) 画像処理装置、画像処理装置の制御方法及びプログラム
JP5560785B2 (ja) 情報処理装置、画像形成装置及び情報処理方法
JP2008018560A (ja) 画像形成装置
JP7137135B2 (ja) コンピュータプログラム、および、制御装置
JP2019041332A (ja) 画像処理システム、画像処理プログラム及び画像処理装置の制御方法
JP4997128B2 (ja) 画像処理装置、画像処理方法
JP5277651B2 (ja) 画像処理装置、画像処理方法、及び、コンピュータプログラム
JP2018118477A (ja) 画像処理装置とその制御方法、及びプログラム
JP6707903B2 (ja) 出力装置、および、コンピュータプログラム
JP2007306445A (ja) 画像データ変換装置
JP6379757B2 (ja) 画像処理装置および画像形成装置
JP6711003B2 (ja) データ処理装置およびプログラム
JP4516336B2 (ja) 画像処理装置、画像形成装置、画像処理方法、コンピュータプログラム及び記録媒体
US20100165385A1 (en) Image processing apparatus and control method therefor
JP2013016005A (ja) 情報処理装置、その制御方法、および制御プログラム