JP2017060072A - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP2017060072A
JP2017060072A JP2015184701A JP2015184701A JP2017060072A JP 2017060072 A JP2017060072 A JP 2017060072A JP 2015184701 A JP2015184701 A JP 2015184701A JP 2015184701 A JP2015184701 A JP 2015184701A JP 2017060072 A JP2017060072 A JP 2017060072A
Authority
JP
Japan
Prior art keywords
pixels
vector
line
format
image processing
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
JP2015184701A
Other languages
English (en)
Other versions
JP6631119B2 (ja
Inventor
和雄 山田
Kazuo Yamada
和雄 山田
玉谷 光之
Mitsuyuki Tamaya
光之 玉谷
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
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 filed Critical Fuji Xerox Co Ltd
Priority to JP2015184701A priority Critical patent/JP6631119B2/ja
Priority to US15/042,269 priority patent/US9886777B2/en
Publication of JP2017060072A publication Critical patent/JP2017060072A/ja
Application granted granted Critical
Publication of JP6631119B2 publication Critical patent/JP6631119B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Abstract

【課題】画像データの複数画素を画像処理の処理単位となる処理枠に適合したデータ形式とする。
【解決手段】画像処理装置100により処理される画像データ(処理前)は、ベクタ形式を含むデータ形式であり、画像処理装置100は、その画像データに対してウィンドウ処理を実行する。ケース判定部20は、ウィンドウにより纏めて処理される複数画素の配列状態が複数ケースのうちの何れに該当するのかを判定する。再ベクタ化処理部30は、各ケースごとに定められた修正パターンのうちの、判定された各ケースに対応した修正パターンにより、複数画素をウィンドウに適合したデータ形式に再ベクタ化する。
【選択図】図1

Description

本発明は、画像処理装置に関する。
画像データに対して画像処理を施す画像処理装置が広く知られている。画像データは、例えばラスタ形式やベクタ形式などのデータ形式の複数画素で構成される。また、画像処理としては、例えば、処理対象となる注目画素のみからその出力値を得ることができる処理の他に、注目画素の周辺にある複数画素を利用して注目画素の出力値を得るウィンドウ処理(Window処理)などが知られている。
ちなみに、特許文献1には、色ごとの符号データを基に最小のラン長を抽出し、抽出された最小のラン長を基に新たな符号データを生成する画像処理装置が記載されている。
特開2008−312107号公報
本発明の目的は、画像データの複数画素を画像処理の処理単位となる処理枠に適合したデータ形式とすることにある。
請求項1に係る発明は、画像処理の処理単位となる処理枠により纏めて処理される複数画素の配列状態を判定する判定部と、前記配列状態に応じた修正により画像データの前記複数画素を前記処理枠に適合したデータ形式とする適合部と、を有することを特徴とする画像処理装置である。
請求項2に係る発明は、請求項1に記載の画像処理装置において、前記適合部は、前記複数画素のデータ形式のうちのベクタ形式を前記処理枠に適合したベクタ形式に再ベクタ化する、ことを特徴とする画像処理装置である。
請求項3に係る発明は、請求項2に記載の画像処理装置において、再ベクタ化されたベクタ形式の前記複数画素をベクタ形式のまま前記処理枠に適用して画像処理する処理部をさらに有する、ことを特徴とする画像処理装置である。
請求項4に係る発明は、請求項1から3のいずれか1項に記載の画像処理装置において、前記適合部は、前記処理枠により纏めて処理される複数画素の各ラインごとの画素数が複数ラインにおいて互いに等しくなるように各ラインのデータ形式を修正する、ことを特徴とする画像処理装置である。
請求項5に係る発明は、請求項1から4のいずれか1項に記載の画像処理装置において、前記判定部は、前記処理枠により纏めて処理される複数画素の配列状態が、前記複数画素のデータ形式がベクタ形式のみであり前記処理枠内でベクタ形式が一定となる第1ケースと、前記複数画素のデータ形式がベクタ形式のみであり前記処理枠内でベクタ形式が切り替わる第2ケースと、前記複数画素のデータ形式がラスタ形式を含む第3ケースと、を含む複数ケースのうちの何れに該当するのかを判定し、前記適合部は、前記複数ケースの各ケースごとに定められた修正パターンのうちの前記判定された各ケースに対応した修正パターンにより前記複数画素を前記処理枠に適合したデータ形式とする、ことを特徴とする画像処理装置である。
請求項1に係る発明によれば、画像データの複数画素が画像処理の処理単位となる処理枠に適合したデータ形式となる。
請求項2に係る発明によれば、複数画素のベクタ形式が処理枠に適合するように再ベクタ化される。
請求項3に係る発明によれば、ベクタ形式の複数画素がベクタ形式のまま処理枠により画像処理される。
請求項4に係る発明によれば、処理枠により纏めて処理される複数画素の各ラインごとの画素数が複数ラインに亘って揃えられる。
請求項5に係る発明によれば、複数ケースの各ケースごとに定められた修正パターンにより処理枠に適合したデータ形式が得られる。
本発明の実施形態として好適な画像処理装置の具体例を示す図である。 画像データのデータ形式を説明するための図である。 ウィンドウ処理を説明するための図である。 ウィンドウ内における複数画素の配列状態を説明するための図である。 ケース1の再ベクタ化を説明するための図である。 ケース2の再ベクタ化を説明するための図である。 ケース3の再ベクタ化を説明するための図である。 各ケースに応じたウィンドウ処理を説明するための図である。 ベクタ形式ラインバッファの内部構成例を示す図である。 本実施形態により得られる効果の具体例を示す図である。
図1は、本発明を実施するための形態として好適な画像処理装置100の具体例を示す図である。図1の画像処理装置100は、画像データ(文字や数字や記号のみのデータを含む)に対して画像処理を実行する。
画像処理装置100は、例えば、画像読み取り機能(スキャン機能)等を備え、画像読み取り機能を介して紙などの媒体から得られた画像データを処理対象とする。また、画像処理装置100による画像処理後の画像データに対応した画像が紙などの媒体に印刷されてもよいし、画像処理後の画像データが外部の装置に提供されてもよい。画像処理装置100の好適な具体例には、複写機、印刷機、ファクシミリ(FAX)などが含まれる。さらに、複写機、印刷機、ファクシミリのうちのいずれか複数の機能を兼ね備えた複合機も画像処理装置100の好適な具体例である。もちろん、例えばコンピュータ等の外部の装置から得られる画像データを画像処理装置100が画像処理してもよい。
図1には画像処理装置100が備える主な内部構成(符号を付した複数のブロック)が図示されている。図1に示す内部構成は、各種のハードウェアを利用して実現することができる。例えばDRP(Dynamic Reconfigurable Processor:動的再構成可能プロセッサ)などを利用して図1の内部構成の少なくとも一部が実現されてもよい。また、例えばPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)などを利用して図1に示す内部構成の少なくとも一部が実現されてもよい。なお、画像処理装置100の内部構成を実現するための上述したハードウェアはあくまでも一例に過ぎず、他のハードウェアが利用されてもよい。さらに、画像処理装置100の内部構成の少なくとも一部がCPUやメモリ等のハードウェアとそれらの動作を規定するプログラムとの協働により実現されてもよい。
図2は、画像データのデータ形式を説明するための図である。図2には、図1の画像処理装置100により画像処理される画像データのデータ形式であるラスタ形式<A>とベクタ形式<B>の具体例が図示されている。
図2に示すデータ形式は、識別子と画素数と画素データで構成される。識別子は、データ形式がラスタ形式「0」であるのかベクタ形式「1」であるのかを示す1ビットのデータである。画素数は、画像データ内において連続する複数画素の個数を示す15ビットのデータである。画素データは、各画素の画素値を示す8ビットのデータで構成される。
ラスタ形式は、画素値が同一ではない連続する複数画素を取り扱うのに適したデータ形式であり、ラスタ形式における画素数は、画素値が同一ではない(不一致の)複数画素の個数を示す。また、ラスタ形式における画素データは、画素数で示される個数の複数画素に関する複数の画素値で構成される。
一方、ベクタ形式は、画素値が同一の連続的な複数画素を取り扱うのに適したデータ形式であり、ベクタ形式における画素数は、画素値が同一である(一致する)複数画素の個数を示す。ベクタ形式の画素数はラン長(RUN長)と呼ばれる。また、ベクタ形式における画素データは、画素数で示される個数の複数画素に関する同一の画素値(一つの画素値)で構成される。
図1の画像処理装置100により処理される画像データ(処理前)は、図2に示すラスタ形式とベクタ形式を含むデータ形式であり、画像処理装置100は、その画像データに対してウィンドウ処理を実行する。
図3は、ウィンドウ処理を説明するための図である。ウィンドウ処理におけるウィンドウ(Window)は、画像処理の処理単位となる処理枠の具体例である。
図3(1)には、ウィンドウの具体例として3×3のウィンドウが図示されている。このウィンドウによる画像処理では、注目画素Pの周辺にある複数画素A〜Hを利用して注目画素Pの出力値P´が得られる。
画像データは複数のラインで構成され、各ラインは一次元的に配列された複数画素で構成される。図3において、画像データのライン方向(各ライン上における複数画素の配列方向)がX方向であり、複数ラインの配列方向(ライン方向に垂直な方向)がY方向である。図3(1)のウィンドウは、X方向に3画素、Y方向に3画素の合計9画素を処理対象とする。
例えば、図3(1)のウィンドウは、ラインn(nは自然数)上の3画素F〜Hと、ライン(n+1)上の3画素D,P,Eと、ライン(n+2)上の3画素A〜Cを処理対象とする。3つのラインに対応した複数画素は、ラインバッファ1〜3から出力される。
図3(2−1)には、ラインバッファにおける処理の具体例が図示されている。ラインバッファ1〜3には、まず、画像データの先頭のライン1とそれに続くライン2,3の複数画素が次々に記憶される。そして、記憶された3ラインの複数画素は、ラインバッファ1〜3から読み出されて後段の処理に利用される。
ライン1〜3に係る処理が終了すると、ラインバッファ1〜3には、ライン2〜4の複数画素が記憶される。つまり、ライン2の複数画素がラインバッファ2からラインバッファ1にシフトされ、ライン3の複数画素がラインバッファ3からラインバッファ2にシフトされ、ラインバッファ3にライン4の複数画素が記憶される。
さらに、ライン2〜4に係る処理が終了すると、ラインバッファ1〜3には、ライン3〜5の複数画素が記憶される。つまり、ライン3の複数画素がラインバッファ2からラインバッファ1にシフトされ、ライン4の複数画素がラインバッファ3からラインバッファ2にシフトされ、ラインバッファ3にライン5の複数画素が記憶される。
こうして、ラインバッファ1〜3には、画像データを構成する複数ラインの複数画素が各ラインごとに段階的にシフトされる。
ところが、各ライン内にベクタ形式の複数画素が含まれていると、各ライン内におけるベクタ数(ベクタ形式のデータ数)が複数ラインにおいて異なる場合がある。そのため、ベクタ形式ラインバッファ10(図1)は、各ライン内におけるベクタ数を考慮しつつ、ラインバッファ1〜3におけるシフト処理を行う必要がある。なお、ベクタ形式ラインバッファ10の具体例については、後に図9を利用して詳述する。
また、各ライン内にベクタ形式の複数画素が含まれていると、ベクタ形式における画素数(ラン長)はベクタごとに異なる場合があるため、例えば、図3(2−2)に示すように、複数画素のデータ形式がウィンドウのサイズに適合しない場合がある。そこで、図1の画像処理装置100は、ウィンドウにより纏めて処理される複数画素の配列状態を判定し、その配列状態に応じた修正により複数画素をウィンドウに適合したデータ形式に再ベクタ化する。
図4は、ウィンドウ内における複数画素の配列状態を説明するための図である。図4には、ウィンドウ内におけるラインn,ライン(n+1),ライン(n+2)の3ラインに関する複数画素の配列状態が図示されている。その配列状態は、ケース1〜3の配列パターンに分類される。
ケース1は、ウィンドウ内の3ライン全ての複数画素がベクタ形式であり、3ライン全てにおいてベクタのラン長がウィンドウサイズ(3画素分)以上であり、ウィンドウ内でベクタ形式が一定となる配列パターンである。
ケース2は、ウィンドウ内の3ライン全ての複数画素がベクタ形式であり、ウィンドウ内において、少なくとも1つのラインのベクタが変化してベクタ形式が切り替わる配列パターンである。
ケース3は、ウィンドウ内において少なくとも1つのラインにラスタ形式の複数画素が含まれる配列パターンである。
図1のケース判定部20は、ベクタ形式ラインバッファ10の3つのラインバッファ1〜3(B1〜B3)から得られる3ラインに関する複数画素の配列状態が、ケース1〜ケース3の何れに該当するのかを判定する。そして、再ベクタ化処理部30は、ケース1〜ケース3の各ケースごとに定められた修正パターンのうち、ケース判定部20により判定された各ケースに対応した修正パターンにより、3ラインの複数画素をウィンドウに適合したデータ形式に再ベクタ化する。
図5は、ケース1の再ベクタ化を説明するための図である。ケース1では、ウィンドウ内の3ライン全ての複数画素がベクタ形式であり、3ライン全てにおいてベクタのラン長がウィンドウサイズ(3画素分)以上である。そこで、ウィンドウの処理対象となる3ラインのうち、ベクタ(入力ベクタ)のラン長が最小となるラインに合わせて他ラインのベクタのラン長が修正される。
例えば、図5に示す具体例のように、ラインnの入力ベクタのラン長が30、ライン(n+1)の入力ベクタのラン長が20、ライン(n+2)の入力ベクタのラン長が10である場合に、ラン長が最小となるライン(n+2)の入力ベクタと同じラン長となるように、ラインnとライン(n+1)の入力ベクタが修正される。具体的には、図5に示すように、ラインnのラン長30で画素値3の入力ベクタがラン長10で画素値3のベクタ1とラン長20で画素値3のベクタ2に再ベクタ化され、ライン(n+1)のラン長20で画素値2の入力ベクタがラン長10で画素値2のベクタ1とラン長10で画素値2のベクタ2に再ベクタ化される。なお、ライン(n+2)の入力ベクタはそのままベクタ1とされ、ライン(n+2)における次の入力ベクタ(NEXTベクタ)がベクタ2とされる。
図5には、再ベクタ化処理部30(図1)が実行するケース1における再ベクタ化処理のフローチャートが示されている。まず、ウィンドウの処理対象となる3ラインのうち、ベクタ(入力ベクタ)のラン長が最小である最小ラン長が抽出され(S1)、各ラインのラン長が最小ラン長とされる(S2)。
次に、ウィンドウのラン長(windowラン長)が算出される(S3)。ウィンドウのラン長は、ウィンドウによる画像処理後の出力値のラン長(画素数)であり、次式により算出される。windowラン長=最小ラン長−(windowサイズ−1)
また、後の画像処理における振り分けがケース1とされ(S4)、最小ラン長と3ライン全ての識別子とラン長が読み出され(S5)、最小ラン長となったライン以外の他のラインに関するラン長が再計算され(S6)、入力ベクタが再ベクタ化される。例えば、図5に示す具体例のように、入力ベクタが再ベクタ化されてベクタ1とベクタ2に分解されて再ベクタ化処理が終了する。
図6は、ケース2の再ベクタ化を説明するための図である。ケース2では、ウィンドウ内の3ライン全ての複数画素がベクタ形式であり、ウィンドウ内において、少なくとも1つのラインのベクタが変化してベクタ形式が切り替わる。ケース2では、再ベクタ化によるベクタの修正(分解)が行われない。
例えば、図6に示す具体例のように、ウィンドウ内において、ラインnとライン(n+1)とライン(n+2)の入力ベクタがベクタ1からベクタ2に切り替わる場合に、ケース2であると判定される。
図6には、再ベクタ化処理部30(図1)が実行するケース2における再ベクタ化処理のフローチャートが示されている。ケース2では、まず、ウィンドウのラン長(windowラン長)が算出される(S1)。ウィンドウのラン長は、ウィンドウによる画像処理後の出力値のラン長(画素数)であり、ケース2では、出力値の不一致画素数となり、次式により算出される。windowラン長=(windowサイズ−1)
そして、後の画像処理における振り分けがケース2とされ(S2)、入力ベクタの修正が行われずに再ベクタ化処理が終了する。
図7は、ケース3の再ベクタ化を説明するための図である。ケース3では、ウィンドウ内において少なくとも1つのラインにラスタ形式の複数画素が含まれる。そして、ケース3では、入力ベクタに含まれるラスタ形式のラン長(不一致画素数)に合わせて他ラインのベクタのラン長が修正される。
例えば、図7に示す具体例のように、ライン(n+2)の入力ベクタにラスタ形式のデータが含まれる場合に、つまりライン(n+2)のベクタ2がラスタ形式である場合に、そのラスタ形式のラン長(不一致画素数)と同じラン長となるように、ラインnとライン(n+1)の入力ベクタが修正される。具体的には、図7に示すように、ラインnの入力ベクタであるベクタ2(ラン長20,画素値3)が、ラン長5で画素値3のベクタ2とラン長15で画素値3のベクタ3に再ベクタ化され、ライン(n+1)の入力ベクタであるベクタ2(ラン長10,画素値2)が、ラン長5で画素値2のベクタ2とラン長5で画素値2のベクタ3に再ベクタ化される。なお、ライン(n+2)の入力ベクタであるベクタ2はラスタ形式のままベクタ2とされ、ライン(n+2)における次の入力ベクタ(NEXTベクタ)がベクタ3とされる。
図7には、再ベクタ化処理部30(図1)が実行するケース3における再ベクタ化処理のフローチャートが示されている。まず、ウィンドウの処理対象となる3ラインに含まれるラスタ形式の不一致画素数が抽出され(S1)、次に、ウィンドウのラン長(windowラン長)が算出される(S2)。ウィンドウのラン長は、ウィンドウによる画像処理後の出力値のラン長(画素数)であり、ケース3では、出力値の不一致画素数となり、次式により算出される。なお、次式右辺の不一致画素数は、入力ベクタに含まれるラスタ形式の不一致画素数である。windowラン長=不一致画素数+windowサイズ−1
そして、後の画像処理における振り分けがケース3とされ(S3)、3ライン全ての入力ベクタ(NEXTベクタを含む)の識別子とラン長が読み出され(S4)、ラスタ形式が含まれるライン以外の他のラインに関するベクタのラン長が再計算され(S5)、入力ベクタが再ベクタ化される。例えば、図7に示す具体例のように、入力ベクタであるベクタ2が再ベクタ化されてベクタ2とベクタ3に分解されて再ベクタ化処理が終了する。
図1の再ベクタ化処理部30により再ベクタ化された画像データは、画像処理選択部40を介して、画像処理部51〜53に送られる。画像処理選択部40は、再ベクタ化された画像データを、ケース1の場合に画像処理部51へ送り、ケース2の場合に画像処理部52へ送り、ケース3の場合に画像処理部53へ送る。そして、画像処理部51〜53において各ケースに応じた画像処理(ウィンドウ処理)が実行される。
図8は、各ケースに応じたウィンドウ処理を説明するための図である。図8には、3×3のウィンドウを利用した画像処理の基本処理と各ケース(ケース1〜3)ごとの処理例が図示されている。
基本処理では、3×3のウィンドウ内における9画素の各々の画素値に、ウィンドウ内の画像位置に応じた係数が乗算され、9画素から得られる9個の乗算結果が加算されて出力値が得られる。
例えば、図8に示す具体例のように、ウィンドウ内の注目画素Pと画素A〜Hに、各画素位置に対応した係数K11〜K33が乗算され、9画素から得られる9個の乗算結果が加算されることにより出力値P´が算出される。
ケース1においては、ウィンドウ内の3ライン全てにおいてベクタのラン長がウィンドウサイズ(3画素分)以上であり、ウィンドウ内において各ラインの3画素が同じ画素値となる。そこで、画像処理部51(図1)は、各ラインごとに代表1画素の画素値を利用して基本処理に対応した処理結果を得る。例えば、図8に示す具体例のように、各ラインごとに1画素のみ、つまり、ライン(n+2)の画素Aとライン(n+1)の画素Dとラインnの画素Fが利用されて出力値P´が算出される。
ケース2では、ウィンドウ内において、少なくとも1つのラインのベクタが変化してベクタ形式が切り替わる。そこで、画像処理部52(図1)は、各ラインごとに同一のベクタに属する複数画素について、それらのうちの代表1画素の画素値を利用して、基本処理に対応した処理結果を得る。なお、ケース2では、図8に示す具体例のように、ウィンドウの位置に応じてステップ1(STEP1)とステップ2(STEP2)の計算式が利用される。
ケース3では、ウィンドウ内において、少なくとも1つのラインにラスタ形式の複数画素が含まれる。そこで、画像処理部53(図1)は、ラスタ形式が含まれるラインについては基本処理と同様に3画素の各々の画素値を利用し、ベクタ形式で構成されるラインの同一ベクタに属する複数画素については、それらのうちの代表1画素の画素値を利用して基本処理に対応した処理結果を得る。例えば、図8に示す具体例のように、ラスタ形式が含まれるライン(n+2)については画素A〜Cの画素値が利用され、ベクタ形式で構成されるライン(n+1)とラインnについては、代表1画素である画素Dと画素Fの画素値が利用されて出力値P´が算出される。
図1の画像処理部51〜53により画像処理(ウィンドウ処理)されたデータは、セレクタ60を介してマージ処理部70に送られる。セレクタ60は、画像処理部51〜53において画像処理(ウィンドウ処理)が実行される度に、画像処理が実行された各画像処理部51〜53から得られる画像処理後のデータ(出力値P´)をマージ処理部70へ出力する。
マージ処理部70は、セレクタ60を介して各画像処理部51〜53から得られる画像処理後のデータと、再ベクタ化処理部30から得られる識別子とwindowラン長を利用して、画像処理後の画像データを形成する。
マージ処理部70は、例えば、画像処理部51から得られるケース1のウィンドウ処理結果である出力値P´(図8参照)を画素値とし、再ベクタ化処理部30から得られる識別子(ベクタ「1」)とケース1におけるwindowラン長(図5参照)を利用して、識別子と画素数(=windowラン長=一致画素数)と画素データで構成されるデータ形式(図2のベクタ形式)の画像データを形成する。
また、マージ処理部70は、例えば、画像処理部52から得られるケース2のウィンドウ処理結果である各ステップの出力値P´(図8参照)を画素値とし、再ベクタ化処理部30から得られる識別子(ラスタ「0」)とケース2におけるwindowラン長(図6参照)を利用して、識別子と画素数(=windowラン長=不一致画素数)と画素データで構成されるデータ形式(図2のラスタ形式)の画像データを形成する。
そして、マージ処理部70は、例えば、画像処理部53から得られるケース3のウィンドウ処理結果である出力値P´(図8参照)を画素値とし、再ベクタ化処理部30から得られる識別子(ラスタ「0」)とケース3におけるwindowラン長(図7参照)を利用して、識別子と画素数(=windowラン長=不一致画素数)と画素データで構成されるデータ形式(図2のラスタ形式)の画像データを形成する。
こうして、マージ処理部70により、画像処理後(ウィンドウ処理後)の画像データが形成される。
図9は、ベクタ形式ラインバッファ10(図1)の内部構成例を示す図である。図9に示す具体例において、ベクタ形式ラインバッファ10は、ベクタ書き込み(Write)アドレスカウンタ(1)〜(3)と、ベクタ読み出し(Read)アドレスカウンタ(1)〜(3)と、ランダムアクセスメモリであるRAM(1)〜(3)を備えている。
処理前(ウィンドウ処理前)の画像データはベクタ形式とラスタ形式を含むデータ形式(図2)であり、画像データの先頭ラインから各ラインごとに次々にベクタ形式ラインバッファ10に入力される。
ベクタ書き込みアドレスカウンタ(1)〜(3)は、各々に対応するRAM(1)〜(3)へのデータの書き込み(Write)を制御する。ベクタ書き込みアドレスカウンタ(1)〜(3)は、各ラインごとに次々にRAMに書き込まれる複数画素のデータ形式のラン長、つまりラスタ形式の不一致画素数とベクタ形式の一致画素数を累積的に加算し、ラン長(画素数)の累積加算がラインサイズ(1ラインの画素数)に達するとライトアドレスカウンタ(WADD)を初期化(カウント値0)する。これにより、各RAM(1)〜(3)には、ライトアドレスカウンタが初期化されてから次の初期化までの1ライン分を単位とするデータ(ラスタ形式とベクタ形式のデータ)が書き込まれる。
一方、ベクタ読み出しアドレスカウンタ(1)〜(3)は、各々に対応するRAM(1)〜(3)からのデータの読み出し(Read)を制御する。ベクタ読み出しアドレスカウンタ(1)〜(3)は、各ラインごとに次々にRAMから読み出される複数画素のデータ形式のラン長、つまりラスタ形式の不一致画素数とベクタ形式の一致画素数を累積的に加算し、ラン長(画素数)の累積加算がラインサイズ(1ラインの画素数)に達するとリードアドレスカウンタ(RADD)を初期化(カウント値0)する。これにより、各RAM(1)〜(3)から、ライトアドレスカウンタが初期化されてから次の初期化までの1ライン分を単位とするデータ(ラスタ形式とベクタ形式のデータ)が読み出される。
こうして、画像データの先頭ラインから各ラインごとに次々にベクタ形式ラインバッファ10に入力されたデータは、各ラインごとに段階的にラインバッファ3(B3),ラインバッファ2(B2),ラインバッファ1(B1)にシフトされる。
例えば、RAM(2)にラインnのデータが記憶され、RAM(3)にライン(n+1)のデータが記憶されている状態で、ライン(n+2)のデータがベクタ形式ラインバッファ10に入力される場合、RAM(2)に記憶されたラインnのデータが読み出されてRAM(1)に書き込まれることによりラインnのデータがシフトされ、そのシフトと並行的に、RAM(3)に記憶されたライン(n+1)のデータが読み出されてRAM(2)に書き込まれることによりライン(n+1)のデータがシフトされる。
さらに、ラインn,ライン(n+1)のシフトと並行的に、ライン(n+2)のデータがRAM(3)に書き込まれる。その結果として、RAM(1)に対応したラインバッファ1(B1)からラインnのデータが出力され、RAM(2)に対応したラインバッファ2(B2)からライン(n+1)のデータが出力され、RAM(3)に対応したラインバッファ3(B3)からライン(n+2)のデータが出力される。
図10は、本実施形態(図1の画像処理装置100)により得られる効果の具体例を示す図である。図10には、ケース1〜3の各ケースごとに、通常のWindow処理(ウィンドウ処理)と比較した場合における効果の具体例が図示されている。
通常のWindow処理とは、処理対象となる全ての画素の各画素ごとにウィンドウ処理を適用する処理であり、図10の具体例では、3ラインの各ラインが8K個(8000個)の画素で構成されており、1画素あたりのウィンドウ処理が1クロック(CLK)であると、1CLK×8K画素×3ライン=24KCLKの処理時間が必要になる。
これに対し、ケース1では、1ライン上の全画素が同一の画素値であるため、各ラインごとに1画素分の処理のみとなり、1CLK×1画素×3ライン=3CLKの処理時間で済む。したがって、通常のWindow処理と比較して、処理時間が24K/3=8000倍に高速化する。
また、ケース2において2K個の画素ごとに画素値が変化する(ベクタが変化する)場合には、ステップ1とステップ2でそれぞれ6画素の合計12画素の処理が必要になるため(図8参照)、1CLK×12個×3ライン=36CLKの処理時間が必要になる。したがって、通常のWindow処理と比較して、処理時間が24K/36=667倍に高速化する。
なお、ケース3において、互いに隣接する画素の画素値が全て異なる場合には、全ての画素の各画素ごとにウィンドウ処理を適用する必要があるため、通常のWindow処理と同様に、1CLK×8K画素×3ライン=24KCLKの処理時間が必要になる。このように、互いに隣接する画素の画素値が全て異なる場合においても、通常のWindow処理と同じ処理時間で済む。
以上、本発明の好適な実施形態を説明したが、上述した実施形態は、あらゆる点で単なる例示にすぎず、本発明の範囲を限定するものではない。本発明は、その本質を逸脱しない範囲で各種の変形形態を包含する。
10 ベクタ形式ラインバッファ、20 ケース判定部、30 再ベクタ化処理部、40 画像処理選択部、51,52,53 画像処理部、60 セレクタ、70 マージ処理部、100 画像処理装置。

Claims (5)

  1. 画像処理の処理単位となる処理枠により纏めて処理される複数画素の配列状態を判定する判定部と、
    前記配列状態に応じた修正により画像データの前記複数画素を前記処理枠に適合したデータ形式とする適合部と、
    を有する、
    ことを特徴とする画像処理装置。
  2. 請求項1に記載の画像処理装置において、
    前記適合部は、前記複数画素のデータ形式のうちのベクタ形式を前記処理枠に適合したベクタ形式に再ベクタ化する、
    ことを特徴とする画像処理装置。
  3. 請求項2に記載の画像処理装置において、
    再ベクタ化されたベクタ形式の前記複数画素をベクタ形式のまま前記処理枠に適用して画像処理する処理部をさらに有する、
    ことを特徴とする画像処理装置。
  4. 請求項1から3のいずれか1項に記載の画像処理装置において、
    前記適合部は、前記処理枠により纏めて処理される複数画素の各ラインごとの画素数が複数ラインにおいて互いに等しくなるように各ラインのデータ形式を修正する、
    ことを特徴とする画像処理装置。
  5. 請求項1から4のいずれか1項に記載の画像処理装置において、
    前記判定部は、前記処理枠により纏めて処理される複数画素の配列状態が、前記複数画素のデータ形式がベクタ形式のみであり前記処理枠内でベクタ形式が一定となる第1ケースと、前記複数画素のデータ形式がベクタ形式のみであり前記処理枠内でベクタ形式が切り替わる第2ケースと、前記複数画素のデータ形式がラスタ形式を含む第3ケースと、を含む複数ケースのうちの何れに該当するのかを判定し、
    前記適合部は、前記複数ケースの各ケースごとに定められた修正パターンのうちの前記判定された各ケースに対応した修正パターンにより前記複数画素を前記処理枠に適合したデータ形式とする、
    ことを特徴とする画像処理装置。
JP2015184701A 2015-09-18 2015-09-18 画像処理装置 Expired - Fee Related JP6631119B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015184701A JP6631119B2 (ja) 2015-09-18 2015-09-18 画像処理装置
US15/042,269 US9886777B2 (en) 2015-09-18 2016-02-12 Image processing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015184701A JP6631119B2 (ja) 2015-09-18 2015-09-18 画像処理装置

Publications (2)

Publication Number Publication Date
JP2017060072A true JP2017060072A (ja) 2017-03-23
JP6631119B2 JP6631119B2 (ja) 2020-01-15

Family

ID=58282772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015184701A Expired - Fee Related JP6631119B2 (ja) 2015-09-18 2015-09-18 画像処理装置

Country Status (2)

Country Link
US (1) US9886777B2 (ja)
JP (1) JP6631119B2 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1013686A (ja) * 1996-06-26 1998-01-16 Fuji Xerox Co Ltd 画像処理装置
JP2004343400A (ja) * 2003-05-15 2004-12-02 Fuji Photo Film Co Ltd 画像処理装置および方法並びにプログラム
JP2007243730A (ja) * 2006-03-09 2007-09-20 Canon Inc 画像処理装置およびその制御方法、および画像処理システム
JP2008301029A (ja) * 2007-05-30 2008-12-11 Fuji Xerox Co Ltd 画像処理装置及びプログラム
JP2009284508A (ja) * 2009-07-14 2009-12-03 Canon Inc 画像処理装置及びその制御方法、プログラム
JP2011065204A (ja) * 2009-09-15 2011-03-31 Fuji Xerox Co Ltd 画像処理装置及び画像処理プログラム
JP2013055509A (ja) * 2011-09-05 2013-03-21 Fuji Xerox Co Ltd 画像処理装置及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6539120B1 (en) * 1997-03-12 2003-03-25 Matsushita Electric Industrial Co., Ltd. MPEG decoder providing multiple standard output signals
JP4821712B2 (ja) 2007-06-18 2011-11-24 富士ゼロックス株式会社 画像処理装置、画像符号化装置、画像復号化装置、および画像処理プログラム
TW201101800A (en) * 2009-06-22 2011-01-01 Novatek Microelectronics Corp Image processing apparatus and method thereof
JP5649338B2 (ja) * 2010-06-16 2015-01-07 キヤノン株式会社 画像処理装置及び画像処理方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1013686A (ja) * 1996-06-26 1998-01-16 Fuji Xerox Co Ltd 画像処理装置
JP2004343400A (ja) * 2003-05-15 2004-12-02 Fuji Photo Film Co Ltd 画像処理装置および方法並びにプログラム
JP2007243730A (ja) * 2006-03-09 2007-09-20 Canon Inc 画像処理装置およびその制御方法、および画像処理システム
JP2008301029A (ja) * 2007-05-30 2008-12-11 Fuji Xerox Co Ltd 画像処理装置及びプログラム
JP2009284508A (ja) * 2009-07-14 2009-12-03 Canon Inc 画像処理装置及びその制御方法、プログラム
JP2011065204A (ja) * 2009-09-15 2011-03-31 Fuji Xerox Co Ltd 画像処理装置及び画像処理プログラム
JP2013055509A (ja) * 2011-09-05 2013-03-21 Fuji Xerox Co Ltd 画像処理装置及びプログラム

Also Published As

Publication number Publication date
US9886777B2 (en) 2018-02-06
JP6631119B2 (ja) 2020-01-15
US20170084054A1 (en) 2017-03-23

Similar Documents

Publication Publication Date Title
JP2020129276A5 (ja)
TWI760657B (zh) 異常偵測模型的訓練方法及使用此方法的電子裝置
JP2018148280A5 (ja)
JP2017191572A (ja) 画像処理装置及びその方法、プログラム
US9015429B2 (en) Method and apparatus for an efficient hardware implementation of dictionary based lossless compression
JP6631119B2 (ja) 画像処理装置
CN111260559B (zh) 图像缩放显示方法、装置及终端设备
JP2017097226A (ja) 画像処理装置、その制御方法、およびプログラム
JP5575048B2 (ja) 画像処理装置および画像形成装置
JP4775161B2 (ja) 画像処理装置、画像処理プログラム
JP2012095173A (ja) 画像処理装置、画像形成装置、および画像処理方法
JP2013004031A (ja) 画像処理装置、画像処理方法
JP6855722B2 (ja) 画像処理装置およびプログラム
JP6589316B2 (ja) 画像圧縮装置および画像処理装置
JP6589642B2 (ja) データ処理装置およびプログラム
JP6226205B2 (ja) 画像処理装置
JP6960230B2 (ja) 画像処理装置およびその制御方法
JP6040145B2 (ja) 画像処理装置
JP2011070571A (ja) 画像処理装置、画像処理方法およびそのプログラム
JP7532087B2 (ja) 装置、方法、及びプログラム
JP2009044426A (ja) 画像処理装置
JP2012059131A (ja) Simd型マイクロプロセッサ及びその処理方法
JP2010045558A (ja) 画像処理装置
JP2008526055A (ja) 動的ワープマップ生成システムおよび方法
JP5892956B2 (ja) 画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180903

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190514

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190712

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191125

R150 Certificate of patent or registration of utility model

Ref document number: 6631119

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

LAPS Cancellation because of no payment of annual fees