(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-03-23
(45)【発行日】2023-03-31
(54)【発明の名称】画像処理装置
(51)【国際特許分類】
H04N 1/387 20060101AFI20230324BHJP
G06T 1/60 20060101ALI20230324BHJP
【FI】
H04N1/387
G06T1/60 450D
(21)【出願番号】P 2019115917
(22)【出願日】2019-06-21
【審査請求日】2022-06-20
(73)【特許権者】
【識別番号】000006150
【氏名又は名称】京セラドキュメントソリューションズ株式会社
(74)【代理人】
【識別番号】100114971
【氏名又は名称】青木 修
(72)【発明者】
【氏名】里見 星輝
【審査官】花田 尚樹
(56)【参考文献】
【文献】特開2009-025896(JP,A)
【文献】特開2015-222932(JP,A)
【文献】特開2015-069619(JP,A)
【文献】特開2011-248447(JP,A)
【文献】特開2002-108801(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/38 - 1/393
G06T 1/00
1/60
(57)【特許請求の範囲】
【請求項1】
ブロック画像の位置およびサイズを示す入力ブロックディスクリプターを所定のメモリーから読み出し、前記入力ブロックディスクリプターに基づいてページ画像の一部である前記ブロック画像を抽出し出力するブロック出力部と、
前記ブロック画像に対して所定の画像処理を実行する演算処理回路と、
ブロック画像の位置およびサイズを示す出力ブロックディスクリプターを前記所定のメモリーから読み出し、前記出力ブロックディスクリプターに基づいて、前記演算処理回路から前記画像処理後の前記ブロック画像を読み出して出力するデータ読出回路と、
前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを生成し前記所定のメモリーに記憶するブロックディスクリプター生成部とを備え、
前記演算処理回路は、入力バンド要求に従って1バンド分の前記ブロック画像の前記画像処理を実行し、
前記データ読出回路は、出力バンド要求に従って1バンド分の前記ブロック画像を出力し、
前記ブロックディスクリプター生成部は、前記入力バンド要求または前記出力バンド要求のタイミングに合わせて、少なくとも1バンド分の前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを前記所定のメモリーに記憶すること、
を特徴とする画像処理装置。
【請求項2】
前記ブロックディスクリプター生成部は、(a)前記演算処理回路の入力の1バンドあたりの前記ブロック画像数が前記演算処理回路の出力の1バンドあたりの前記ブロック画像数より少ない場合、前記入力バンド要求のタイミングに合わせて、少なくとも1バンド分の前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを生成し前記所定のメモリーに記憶し、(b)前記演算処理回路の出力の1バンドあたりの前記ブロック画像数が前記演算処理回路の入力の1バンドあたりの前記ブロック画像数より少ない場合、前記出力バンド要求のタイミングに合わせて、少なくとも1バンド分の前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを生成し前記所定のメモリーに記憶することを特徴とする請求項1記載の画像処理装置。
【請求項3】
前記ブロックディスクリプター生成部は、(a)前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを前記所定のメモリーにおける所定サイズのメモリー領域に記憶し、また、(b)所定の固定バンド数分ずつ、または、前記メモリー領域内に書込可能な数ずつ、前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを繰り返し生成して前記メモリー領域に記憶することを特徴とする請求項1または請求項2記載の画像処理装置。
【請求項4】
前記ブロックディスクリプター生成部は、複数バンド分ずつ、前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを繰り返し生成して前記メモリー領域に記憶することを特徴とする請求項3記載の画像処理装置。
【請求項5】
前記ブロックディスクリプター生成部は、前記演算処理回路の前記画像処理に並行して、前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを生成することを特徴とする請求項1から請求項4のうちのいずれか1項記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置に関するものである。
【背景技術】
【0002】
ある画像処理装置は、所定ライン数のストライブ画像をブロック画像に分割し、ブロック画像に対して画素密度変換を行っており、ブロック分割アドレス制御部で、ストライブ画像からブロック画像へのブロック分割処理のタイミングやアドレス信号を生成している(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、ページ画像全体のブロック分割を連続的に行う場合、ブロック分割処理のアドレス情報を予め計算しメモリー領域に記憶しておく必要があるため、アドレス情報を記憶しておくために、大サイズのメモリー領域が要求される。
【0005】
本発明は、上記の問題に鑑みてなされたものであり、ブロック分割処理で使用されるディスクリプターのためのメモリー領域が比較的小サイズで済む画像形成装置を得ることを目的とする。
【課題を解決するための手段】
【0006】
本発明に係る画像処理装置は、ブロック画像の位置およびサイズを示す入力ブロックディスクリプターを所定のメモリーから読み出し、前記入力ブロックディスクリプターに基づいてページ画像の一部である前記ブロック画像を抽出し出力するブロック出力部と、前記ブロック画像に対して所定の画像処理を実行する演算処理回路と、ブロック画像の位置およびサイズを示す出力ブロックディスクリプターを前記所定のメモリーから読み出し、前記出力ブロックディスクリプターに基づいて、前記演算処理回路から前記画像処理後の前記ブロック画像を読み出して出力するデータ読出回路と、前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを生成し前記所定のメモリーに記憶するブロックディスクリプター生成部とを備える。そして、前記演算処理回路は、入力バンド要求に従って1バンド分の前記ブロック画像の前記画像処理を実行し、前記データ読出回路は、出力バンド要求に従って1バンド分の前記ブロック画像を出力し、前記ブロックディスクリプター生成部は、前記入力バンド要求または前記出力バンド要求のタイミングに合わせて、少なくとも1バンド分の前記入力ブロックディスクリプターおよび前記出力ブロックディスクリプターを前記所定のメモリーに記憶する。
【発明の効果】
【0007】
本発明によれば、ブロック分割処理で使用されるブロックディスクリプターのためのメモリー領域が比較的小サイズで済む画像処理装置が得られる。
【0008】
本発明の上記又は他の目的、特徴および優位性は、添付の図面とともに以下の詳細な説明から更に明らかになる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本発明の実施の形態に係る画像処理装置の構成を示すブロック図である。
【
図2】
図2は、実施の形態1に係る画像処理装置の動作について説明するタイミングチャートである。
【
図3】
図3は、実施の形態2に係る画像処理装置の動作について説明するタイミングチャートである。
【発明を実施するための形態】
【0010】
以下、図に基づいて本発明の実施の形態を説明する。
【0011】
実施の形態1.
【0012】
図1は、本発明の実施の形態に係る画像処理装置の構成を示すブロック図である。
図1に示す画像処理装置は、例えば、スキャナー、コピー機、ファクシミリ機、複合機などであって、原稿から原稿画像を光学的に読み取り、ハードウェア処理で、その原稿画像を回転させる。
【0013】
図1に示す画像処理装置は、画像読取部1、ブロック出力部2、演算処理回路3、データ読出回路4、出力バンドバッファー5、およびコントローラー6を備える。
【0014】
画像読取部1は、プラテングラス、自動原稿送り器、画像読取光学系、撮像素子、画像データ生成回路などを備え、プラテングラスに載置された原稿、または自動原稿送り器により搬送されてきた原稿の原稿画像を、画像読取光学系によって撮像素子に撮像させ、画像データ生成回路によって、撮像素子により読み取られた原稿画像(入力画像)の画像データを出力する。ここでは、撮像素子はラインセンサーであり、画像読取部1は、1画素ラインずつ入力画像の画像データを出力する。
【0015】
ブロック出力部2は、画像読取部1から出力される画像データを入力ページ画像の1画素ラインずつ受け付け入力バンドバッファー2aに記憶し、リード回路2bで入力バンドバッファー2aから入力ブロック画像を順番に読み出し、出力する。具体的には、入力バンドバッファー2aは、入力画像(ここではページ画像)を分割して得られる1または複数の入力バンド(所定数の画素ライン)を記憶する。また、リード回路2bは、入力バンドバッファー2aに記憶されている入力バンドから入力ブロック画像を読み出し、入力ブロック画像の1画素ラインずつ順番に所定画素ライン数の入力ラインバッファー3aに出力する。
【0016】
ブロック出力部2は、入力ブロックディスクリプターを所定のメモリー(後述のメモリー11)から読み出し、その入力ブロックディスクリプターに基づいてページ画像の一部である所定サイズのブロック画像(入力ブロック画像)を抽出し出力する。入力ブロックディスクリプターは、入力ブロック画像の位置(メモリーにおけるアドレス)およびサイズを示すデータである。ブロック画像は、幅および高さが所定画素数の部分画像である。
【0017】
なお、互いに隣接する入力ブロック画像は、所定画素数だけオーバーラップしていてもよいし、オーバーラップしてなくてもよい。
【0018】
演算処理回路3は、入力ラインバッファー3aから入力ブロック画像の画素ラインを順番に読み出して、演算部3bで入力ブロック画像に対する所定の画像処理(変倍、回転など)を実行し、出力ブロック画像の画素ラインを順番に、出力ラインバッファー3cに記憶する。
【0019】
データ読出回路4は、出力ブロックディスクリプターを所定のメモリー(後述のメモリー11)から読み出し、その出力ブロックディスクリプターに基づいて、出力ラインバッファー3cから画像処理後のブロック画像(出力ブロック画像)を読み出して、出力バンドバッファー5に記憶する。出力ブロックディスクリプターは、出力ブロック画像の位置(メモリーにおけるアドレス)およびサイズを示すデータである。
【0020】
なお、図示せぬ後段の処理回路は、出力バンドバッファー5から画像データを順次読み出して所定の画像処理などを実行する。
【0021】
ここでは、入力バンドバッファー2aおよび出力バンドバッファー5は、図示せぬダイナミックRAMにおいて確保されたメモリー領域であり、入力ラインバッファー3aおよび出力ラインバッファー3cは、図示せぬスタティックRAMにおいて確保されたメモリー領域である。
【0022】
1つの入力バンドは、縦V1個横H1個の入力ブロック画像からなり(V1>0,H1>1)、1つの出力バンドは、縦V2個横H2個の出力ブロック画像からなる(V2>0,H2>1)。
【0023】
なお、ブロック出力部2、演算処理回路3、およびデータ読出回路4は、並行に動作し、パイプライン処理を行う。
【0024】
コントローラー6は、画像読取部1、ブロック出力部2、演算処理回路3、データ読出回路4などを制御する。コントローラー6は、RAMなどのメモリー11、およびプログラムに従って動作するプロセッサーを備え、プロセッサーでプログラムを実行することで、ブロックディスクリプター生成部12として動作する。ブロックディスクリプター生成部12は、入力ブロックディスクリプターおよび出力ブロックディスクリプターを生成し所定のメモリー11に記憶する。このように、ブロック出力部2、演算処理回路3、およびデータ読出回路4は、それぞれ独立したハードウェア回路であって、コントローラー6は、それらを制御するソフトウェア処理部である。
【0025】
演算処理回路3は、入力バンド要求に従って入力バンドバッファー2aにおける1バンド分の入力ブロック画像の画像処理を実行し、データ読出回路4は、出力バンド要求に従って出力バンドバッファー5へ1バンド分の出力ブロック画像を出力する。そして、ブロックディスクリプター生成部12は、その入力バンド要求または出力バンド要求のタイミングに合わせて、少なくとも1バンド分の入力ブロックディスクリプターおよび出力ブロックディスクリプターを所定のメモリー11に記憶する。
【0026】
なお、入力バンド要求および出力バンド要求は、ブロック出力部2によって生成され、入力バンド要求は、対応する入力ブロックディスクリプター(バンドの先頭の入力ブロック画像のための入力ブロックディスクリプター)に含められて演算処理回路3に伝達され、出力バンド要求は、対応する出力ブロックディスクリプター(バンドの先頭の出力ブロック画像のための出力ブロックディスクリプター)に含められてデータ読出回路4に伝達される。
【0027】
実施の形態1では、ブロックディスクリプター生成部12は、(a)演算処理回路3の入力の1バンドあたりのブロック画像数が演算処理回路3の出力の1バンドあたりのブロック画像数より少ない場合、入力バンド要求のタイミングに合わせて、少なくとも1バンド分の入力ブロックディスクリプターおよび出力ブロックディスクリプターを生成し所定のメモリー11に記憶し、(b)演算処理回路3の出力の1バンドあたりのブロック画像数が演算処理回路3の入力の1バンドあたりのブロック画像数より少ない場合、出力バンド要求のタイミングに合わせて、少なくとも1バンド分の入力ブロックディスクリプターおよび出力ブロックディスクリプターを生成し所定のメモリー11に記憶する。
【0028】
また、実施の形態1では、ブロックディスクリプター生成部12は、所定の固定バンド数分ずつ、入力ブロックディスクリプターおよび出力ブロックディスクリプターを繰り返し生成してメモリー領域に記憶する。
【0029】
また、コントローラー6は、演算処理回路3に入力ブロック画像のサイズなどのパラメーターの値を指定する。
【0030】
次に、実施の形態1に係る画像処理装置の動作について説明する。
図2は、実施の形態1に係る画像処理装置の動作について説明するタイミングチャートである。
図2(A)は、入力ブロック画像に対して出力ブロック画像が等倍である場合のタイミングチャートであり、
図2(B)は、入力ブロック画像に対して出力ブロック画像が縮小されている場合のタイミングチャートであり、
図2(C)は、入力ブロック画像に対して出力ブロック画像が拡大されている場合のタイミングチャートである。
【0031】
等倍の場合、1バンド分の入力ブロックディスクリプターおよび1バンド分の出力ブロックディスクリプターが、入力バンド要求に合わせて一括して生成されてメモリー11に記憶される。その際、不要になった入力ブロックディスクリプターおよび出力ブロックディスクリプターが、新たに生成された入力ブロックディスクリプターおよび出力ブロックディスクリプターで上書きされる。
【0032】
縮小の場合、入力バンドにおけるブロック画像数が出力バンドにおけるブロック画像数より少ないので、1バンド分の入力ブロックディスクリプターおよび1バンド分の出力ブロックディスクリプターが、入力バンド要求に合わせて一括して生成されてメモリー11に記憶される。その際、不要になった入力ブロックディスクリプターおよび出力ブロックディスクリプターが、新たに生成された入力ブロックディスクリプターおよび出力ブロックディスクリプターで上書きされる。
【0033】
例えば、入力ブロック画像のサイズが128×128画素であり、縮小率が1/8であり、出力ブロック画像のサイズが16×16画素であり、縮小前のページ画像のサイズが7040×4096画素であり(600dpiでA4)、縮小後のページ画像のサイズが880×512画素である場合、入力バンドにおけるブロック画像数は55(=55×1)となり、出力バンドにおけるブロック画像数は440(=55×8)となる。したがって、縮小の場合、入力バンドにおけるブロック画像数は、出力バンドにおけるブロック画像数より少ない。
【0034】
拡大の場合、出力バンドにおけるブロック画像数が入力バンドにおけるブロック画像数より少ないので、1バンド分の入力ブロックディスクリプターおよび1バンド分の出力ブロックディスクリプターが、出力バンド要求に合わせて一括して生成されてメモリー11に記憶される。その際、不要になった入力ブロックディスクリプターおよび出力ブロックディスクリプターが、新たに生成された入力ブロックディスクリプターおよび出力ブロックディスクリプターで上書きされる。
【0035】
例えば、入力ブロック画像のサイズが16×16画素であり、拡大率が8倍であり、出力ブロック画像のサイズが128×128画素であり、拡大前のページ画像のサイズが880×512画素であり、拡大後のページ画像のサイズが7040×4096画素である(600dpiでA4)場合、入力バンドにおけるブロック画像数は440(=55×8)となり、出力バンドにおけるブロック画像数は55(=55×1)となる。したがって、拡大の場合、出力バンドにおけるブロック画像数は、入力バンドにおけるブロック画像数より少ない。
【0036】
このようにすることで、メモリー11において、入力ブロックディスクリプターおよび出力ブロックディスクリプターを記憶するメモリー領域のサイズが小さくて済む。例えば、ユーザーなどによって設定される変倍率(縮小率または拡大率)に応じて、入力バンド要求および出力バンド要求のいずれかに合わせて、ブロックディスクリプターが生成され記憶される。これにより、上述のメモリー領域のサイズを最小化することができる。
【0037】
なお、ブロックディスクリプター生成部12は、複数バンド分ずつ、入力ブロックディスクリプターおよび出力ブロックディスクリプターを繰り返し生成してメモリー領域に記憶するようにしてもよい。
【0038】
以上のように、上記実施の形態1によれば、ブロック出力部2は、入力ブロックディスクリプターに基づいてページ画像の一部であるブロック画像を抽出し出力する。演算処理回路3は、そのブロック画像に対して所定の画像処理を実行する。データ読出回路4は、出力ブロックディスクリプターに基づいて、画像処理後のブロック画像を演算処理回路3から読み出して出力する。演算処理回路3は、入力バンド要求に従って入力バンドバッファー2aにおける1バンド分のブロック画像の画像処理を実行し、データ読出回路4は、出力バンド要求に従って出力バンドバッファー5へ1バンド分のブロック画像を出力する。そして、ブロックディスクリプター生成部12は、入力バンド要求または出力バンド要求のタイミングに合わせて、少なくとも1バンド分の入力ブロックディスクリプターおよび出力ブロックディスクリプターを所定のメモリー11に記憶する。
【0039】
これにより、ページ画像全体のブロックディスクリプターを事前に生成し記憶しておくことなく、所定数のバンドごとに、ブロックディスクリプターが繰り返し生成され記憶されるため、ブロック出力部2におけるブロック分割処理で使用されるブロックディスクリプターのためのメモリー領域が比較的小サイズで済む。
【0040】
実施の形態2.
【0041】
実施の形態2では、ブロックディスクリプター生成部12は、メモリー11の所定サイズ(固定サイズ)のメモリー領域内に書込可能な数ずつ、入力ブロックディスクリプターおよび出力ブロックディスクリプターを繰り返し生成してそのメモリー領域に記憶する。
【0042】
実施の形態2では、ブロックディスクリプター生成部12は、複数バンド分ずつ、入力ブロックディスクリプターおよび出力ブロックディスクリプターを繰り返し生成してメモリー領域に記憶する。
【0043】
図3は、実施の形態2に係る画像処理装置の動作について説明するタイミングチャートである。
図3(A)は、入力ブロック画像に対して出力ブロック画像が等倍である場合のタイミングチャートであり、
図3(B)は、入力ブロック画像に対して出力ブロック画像が縮小されている場合のタイミングチャートであり、
図3(C)は、入力ブロック画像に対して出力ブロック画像が拡大されている場合のタイミングチャートである。
【0044】
ブロックディスクリプター生成部12は、入力バンド要求および出力バンド要求をカウントし、上述のメモリー領域内における所定数のバンド(例えば入力バンドおよび出力バンドで合計5バンド)についての入力ブロックディスクリプターおよび出力ブロックディスクリプターが不要になった時点で、入力ブロックディスクリプターおよび出力ブロックディスクリプターを生成し、不要になった入力ブロックディスクリプターおよび出力ブロックディスクリプターを、新たに生成した入力ブロックディスクリプターおよび出力ブロックディスクリプターで上書きする。
【0045】
また、ブロックディスクリプター生成部12は、新たに生成した入力ブロックディスクリプターまたは出力ブロックディスクリプターを生成する直前に、上述のメモリー領域の空き容量を確認し、空き容量が十分であり、新たに生成した入力ブロックディスクリプターまたは出力ブロックディスクリプターを書き込み可能な場合には、入力ブロックディスクリプターまたは出力ブロックディスクリプターを生成し上述のメモリー領域に記憶し、空き容量が十分ではなく、新たに生成した入力ブロックディスクリプターまたは出力ブロックディスクリプターを書き込み可能ではない場合には、入力ブロックディスクリプターまたは出力ブロックディスクリプターの生成を中断する。
【0046】
なお、実施の形態2に係る画像処理装置のその他の構成および動作については実施の形態1と同様であるので、その説明を省略する。
【0047】
以上のように、上記実施の形態2によれば、複数バンドごとに一括してブロックディスクリプターを生成するため、ソフトウェア処理部としてのブロックディスクリプター生成部12の起動回数(呼び出し回数)が少なくなり、起動時のオーバーヘッド時間が短くて済む。
【0048】
なお、上述の実施の形態に対する様々な変更および修正については、当業者には明らかである。そのような変更および修正は、その主題の趣旨および範囲から離れることなく、かつ、意図された利点を弱めることなく行われてもよい。つまり、そのような変更および修正が請求の範囲に含まれることを意図している。
【0049】
例えば、上記実施の形態において、ブロックディスクリプター生成部12は、演算処理回路4の画像処理完了後に、入力バンド要求または出力バンド要求のタイミングまでに、入力ブロックディスクリプターおよび出力ブロックディスクリプターを生成してもよいし、演算処理回路3の画像処理に並行して、入力ブロックディスクリプターおよび出力ブロックディスクリプターを生成してもよい。
【産業上の利用可能性】
【0050】
本発明は、例えば、複合機などの画像形成装置に適用可能である。
【符号の説明】
【0051】
2 ブロック出力部
3 演算処理回路
4 データ読出回路
11 メモリー
12 ブロックディスクリプター生成部