JP6015374B2 - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP6015374B2
JP6015374B2 JP2012254058A JP2012254058A JP6015374B2 JP 6015374 B2 JP6015374 B2 JP 6015374B2 JP 2012254058 A JP2012254058 A JP 2012254058A JP 2012254058 A JP2012254058 A JP 2012254058A JP 6015374 B2 JP6015374 B2 JP 6015374B2
Authority
JP
Japan
Prior art keywords
block data
data
processing
block
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
JP2012254058A
Other languages
English (en)
Other versions
JP2014102675A (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.)
Socionext Inc
Original Assignee
Socionext 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 Socionext Inc filed Critical Socionext Inc
Priority to JP2012254058A priority Critical patent/JP6015374B2/ja
Publication of JP2014102675A publication Critical patent/JP2014102675A/ja
Application granted granted Critical
Publication of JP6015374B2 publication Critical patent/JP6015374B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Description

本願に開示の技術は、画像入力装置にて入力される画像データに対して画像処理を行うに際し、処理後の画像データを一時的にメモリに保存する処理を行う画像処理装置に関するものである。
従来、デジタルカメラ等の撮像装置は、CCD(Charge Coupled Devices)イメージセンサなどの撮像素子によって取得した画像データ(動画を含む)を複数の処理部を備える画像処理装置にて処理しメモリに格納する。メモリは、例えば、画像処理装置に対するデータの入出力がメモリコントローラにて制御される外部メモリ(例えば、SDRAM)である。処理部は、例えばローパスフィルタやノイズフィルタ等のフィルタ処理を実行する。画像処理装置は、各処理部にて画像データを適宜処理する際に、処理した画像データを外部メモリに一時的に格納する。
撮像装置は、例えばISO感度が高いモードでは、画像データに対するノイズの影響が増大するため画像データに対するフィルタ処理を複数回実行する。撮像装置は、フィルタ処理の回数が増加すると外部メモリのアクセス頻度が高くなり、メモリアクセスにおける帯域幅が増加することからアクセス頻度が抑えられる構成が望まれている。
これに対し、外部メモリに対するアクセス頻度を抑えるために、処理後の画像データを一時的に記憶する内部メモリが画像処理装置に備えられる撮像装置がある(特許文献1など)。この種の画像処理装置では、外部メモリに記憶される1フレームの画像データを複数のブロックデータに分割し、各処理部がブロックデータを順次入力して処理を実行する。各処理部は、対象となるデータ領域に対して処理を行う際、その周辺のデータ領域も参照して処理を行う。そのため、各処理部が必要とするブロックデータは、処理対象のデータ領域とその周辺のデータ領域を含んだものである。このブロックデータを単位としてデータを内部メモリに格納する。処理部が次のブロックデータを処理する際に、内部メモリに格納されたデータを参照することで外部メモリに対するアクセス頻度が抑えられる。
また、特許文献1に示す撮像装置では、処理部から出力されるブロックデータの領域が、入力されるブロックデータの範囲を越えて左側に広がっている。換言すれば、1ラインの水平方向において、入力されるブロックデータに対し出力されるブロックデータは左側に広がってずれた位置となっている。
特開2005−94212号公報(図4)
ところで、上記した画像処理装置では、各処理部にて処理されるブロックデータが同一のサイズとなっている。このため、ブロックデータを順次処理していくと、入出力されるブロックデータと処理対象のデータ領域との位置ずれが処理を繰り返す毎に増大する。具体的には、処理に先行したブロックデータが内部メモリに格納されることとなる。その結果、内部メモリには、処理には未だ必要とされないデータ領域を含むブロックデータも格納されるため、内部メモリに一時的に格納されるデータ量が増加し、内部メモリの最大容量の増大に繋がる。
一方で、位置ずれを補正するために、入出力されるブロックデータの数・位置等に応じて内部メモリへの格納を休止したり格納のタイミングをずらす等の処理を画像処理装置に実行させようとすると、処理内容が複雑となり負荷が増大する。
本願に開示される技術は、上記の課題に鑑み提案されたものであって、画像データを複数のブロックに分割し各ブロックデータに対し画像処理を実行する画像処理装置であって、ブロックデータを一時的に格納するメモリの容量の削減を図ることができる画像処理装置を提供することを目的とする。
本願に開示される技術に係る画像処理装置は、画像データを水平方向及び垂直方向に分割したブロックデータの単位で画像処理する画像処理装置であって、ブロックデータに含まれる処理対象領域にある注目画素のデータを順次選択して、注目画素に隣接して配置されている周辺画素のデータと共にフィルタ処理するフィルタ処理部と、フィルタ処理部での処理に応じてブロックデータを格納するメモリ部と、水平方向及び垂直方向に並ぶブロックデータの何れか一方向の一列をフィルタ処理部により処理する際、最初に処理される第1のブロックデータの処理方向のブロック幅を処理対象領域と周辺画素の領域とを加えたブロック幅とし、第1のブロックデータの次に処理される第2のブロックデータの処理方向のブロック幅を処理対象領域のブロック幅として、メモリ部を制御する制御部を備え、第1のブロックデータに含まれる周辺画素の領域は、第2のブロックデータに隣接する領域であり、第1のブロックデータにおける第2のブロックデータに隣接する第1の一部領域は、第2のブロックデータの処理対象領域とされ、第1のブロックデータの第1の一部領域に隣接する第2の一部領域及び第2のブロックデータの次に処理される第3のブロックデータに隣接する一部領域は、第2のブロックデータにおける処理対象領域の周辺画素の領域として使用され、第1及び第2の一部領域における処理方向のデータ幅は、周辺画素の領域のデータ幅であり、制御部は、フィルタ処理部によるフィルタ処理に応じて、処理対象領域のうち第1及び第2の一部領域を除いてメモリ部から消去し、新たなブロックデータをメモリ部に格納する
本願に開示される技術に係る画像処理装置によれば、ブロックデータを一時的に格納するメモリの容量の削減を図ることができる。
実施形態の撮像装置を示すブロック図。 画像処理装置及び外部メモリを示すブロック図。 入力画像を説明するための図。 判定部を示すブロック図。 出力画像を説明するための図。 複数段のフィルタ処理におけるブロックデータの状態を示す図。 処理したブロック数と内部メモリに格納されるデータ量の関係を示すグラフ。 比較例における入力画像を説明するための図。 比較例における複数段のフィルタ処理におけるブロックデータの状態を示す図。 比較例における処理したブロック数と内部メモリに格納されるデータ量の関係を示すグラフ。
図1を参照し、実施形態の撮像装置10の構成について説明する。
図1に示す撮像装置10は、例えばデジタルカメラであり、撮像部11、画像処理装置12、外部メモリ13、外部記憶媒体15、表示部16を有している。撮像部11は、撮像素子11a及びA/D変換回路11bを有している。撮像素子11aは、例えばCCDイメージセンサであり、色フィルタ成分{赤(R)、緑(G)、青(B)}がベイヤ配列されたカラーフィルタを介して入射光を受光する。撮像素子11aは、カラーフィルタを介して受光した入射光を撮像信号に変換してA/D変換回路11bに出力する。A/D変換回路11bは、撮像素子11aから入力されるRGB形式の撮像信号を画像データ(ベイヤ信号)に変換して画像処理装置12に出力する。
画像処理装置12は、撮像部11から入力されるベイヤ信号に対してノイズを除去するフィルタ処理やデータ形式の変換処理を施す。画像処理装置12は、各処理の所定段階で画像データを外部メモリ13に一時的に格納する。従って、外部メモリ13は作業メモリとして機能する。外部メモリ13は、例えばSDRAM(Synchronous Dynamic Random Access Memory)である。
また、画像処理装置12は、外部メモリ13に格納した画像処理後の画像データを外部記憶媒体15に格納したり、表示部16に出力したりする。外部記憶媒体15は、例えばSDメモリカード(登録商標)である。表示部16は、例えば液晶ディスプレイ(LCD)である。
次に、画像処理装置12の内部構成について説明する。
画像処理装置12は、プリプロセス処理部21、画像処理回路22、中央処理装置(CPU)24、調停回路26、記憶媒体用インターフェース回路27、表示用インターフェース回路28を有し、これら各回路が共有バス29によって互いに接続されている。この共有バス29は、アドレスバス、コントロールバス及びデータバスを有している。
プリプロセス処理部21は、撮像部11から入力される1フレームのベイヤ信号に対し、例えばホワイトバランス調整、ゲイン調整、欠陥信号の補正等の前処理を施す。プリプロセス処理部21は、処理後の画像データを外部メモリ13の所定の領域に格納する。
画像処理回路22は、外部メモリ13からプリプロセス処理部21により前処理された1フレームの画像データ(入力画像)を複数のブロックデータに分割して読み出し、各種の画像処理を施す。画像処理回路22は、処理後の画像データを外部メモリ13の所定の領域に格納する。
CPU24は、各回路等の動作を統括制御する制御装置であり、撮像装置10の撮影モード等に応じて、画像処理回路22の画像データに対する演算又は変換などの処理等を変更する。
図2に示すように、画像処理回路22は、画素補間処理部31、ノイズ補正処理部32、エッジ強調処理部33、解像度変換処理部34、コーデック処理部35、制御部38を有し、これら各回路が共有バス40によって互いに接続されている。例えば、各処理部31〜35が画像データに対して行う処理の一例について図2を用いて説明する。
画素補間処理部31は、プリプロセス処理部21により前処理された画像データにデモザイク(画素補間)処理とYCbCr形式への変換処理を実行する。ノイズ補正処理部32は、画素補間処理部31により変換処理された画像データに含まれるノイズを除去するフィルタ処理を実行する。エッジ強調処理部33は、ノイズ補正処理部32によりノイズ処理された画像データに対して画像の輪郭(エッジ)を強調するフィルタ処理を実行する。解像度変換処理部34は、エッジ強調処理部33により処理された画像データの画像サイズ(解像度)を拡大又は縮小する解像度変換処理を実行する。コーデック処理部35は、解像度変換処理部34によりリサイズ処理された画像データを所定の方式(例えば、JPEG方式)により符号化する。
図1に示す記憶媒体用インターフェース回路27は、外部記憶媒体15に対するデータ入出力を実行する。CPU24は、コーデック処理部35により変換されたJPEG方式の画像データを外部メモリ13から読み出し、記憶媒体用インターフェース回路27を介して外部記憶媒体15に格納する。表示用インターフェース回路28は、外部メモリ13から転送される画像データを、表示部16が対応し得る形式のデータに変換して該表示部16に出力する。
各処理回路21,22,27,28は、外部メモリ13にデータを書き込む又は読み出すために共有バス29の使用権を要求するための信号を調停回路26に出力する。調停回路26は、要求信号に応じて処理回路21,22,27,28に対して調停回路26の使用権を設定する。
ここで、CPU24は、撮影モード等に応じた所定の処理を実行するために、画像処理回路22に対してパラメータ等の設定情報を出力する。この設定情報は、図2に示す各処理部31〜35が画像データに対してパイプライン処理を行う順番や回数等を含む。例えば、CPU24は、ユーザによりISO感度設定が高いモードが設定・選択されると、外部メモリ13に格納される1フレームの入力画像100(図2参照)に対しノイズ補正処理部32によるフィルタ処理を複数回実行させる。
また、各処理部31〜35は、外部メモリ13に格納される入力画像100を所定のサイズに分割されたブロックデータとして入力し画像処理を実行する。制御部38は、CPU24から入力される設定情報に基づいて、外部メモリ13から内部メモリ41に入力画像100をブロックデータに分割して読み出す制御を実行する。例えば、制御部38は、データ転送量の整数倍がブロックデータとなるバースト転送を調停回路26に対して実行し、外部メモリ13から内部メモリ41にブロックデータを順次読み出す。
また、制御部38は、設定情報に基づいて、各処理部31〜35に対しパイプライン処理の順番に応じて内部メモリ41からブロックデータを読み出して処理を実行させる。この際に、例えば、ノイズ補正処理部32等のフィルタ処理を実行する処理部は、処理対象のデータ領域に含まれるデータとして、新たに内部メモリ41に格納されたブロックデータに含まれるデータと、一つ前のブロックデータの一部のデータ(後述するオーバラップORH,ORVのデータ)を内部メモリ41から読み出してフィルタ処理を実行する。そして、各処理部31〜35により処理されたブロックデータは、画像処理回路22から外部メモリ13に出力され出力画像101として格納される。制御部38は、各処理部31〜35の処理状況に応じて内部メモリ41に格納されたデータの削除あるいは上書きを実行する。
図3は、入力画像の一例である。図3に示す入力画像100は、フィルタ処理が施される一部の部分画像120が複数のブロックデータ122に分割されて処理される。ブロックデータ122は、図中に矢印で示すように、水平方向(ライン方向)の左から右、垂直方向の上から下に向かってラスタースキャンの順序に従って順次処理される。また、ブロックデータ122に含まれる画素は、上記した順序と同様に左上から右下に向かって処理される。
ブロックデータ122は、水平方向のサイズ(画素数)が互いに異なる。ブロックデータ122は、水平方向の最初(最も左側)のブロックデータの水平ブロック幅HS0が他のブロックデータの水平ブロック幅HS1に比べて大きい値が設定されている。また、ブロックデータ122は、垂直方向のサイズ(画素数)が互いに異なる。ブロックデータ122は、垂直方向の最初(最も上側)のブロックデータの垂直ブロック幅VS0が他のブロックデータの垂直ブロック幅VS1に比べて大きい値が設定されている。
図2に示す処理部31〜35は、フィルタ処理を実行する際に、上記したブロックデータ122に含まれる処理対象領域にある注目画素の位置を判定する判定部51を各々備える。図4に示すように、判定部51は、位置判定部52、選択部53、第1〜第3比較部55〜57、水平カウンタ58及び垂直カウンタ60を有している。選択部53は、第1選択部62と、第2選択部63を有している。位置判定部52は、処理部31〜35がブロックデータ122(図3参照)を読み込むのに同期して動作する。
第1選択部62は、水平方向に対応しており、制御部38から水平ブロック幅HS0,HS1が入力される。位置判定部52は、ブロックデータ122の位置に応じて、第1選択部62の出力信号が水平ブロック幅HS0又は水平ブロック幅HS1となるように制御する。位置判定部52は、ブロックデータ122の位置が部分画像120の水平方向の最初である場合に、第1選択部62に対し水平ブロック幅HS0を出力するように制御する。また、位置判定部52は、ブロックデータ122の位置が水平方向の最初でない場合に、第1選択部62に対し水平ブロック幅HS1を出力するように制御する。第1選択部62は、選択された水平ブロック幅HS0,HS1を第1比較部55に出力する。
また、第2選択部63は、垂直方向に対応しており、制御部38から垂直ブロック幅VS0,VS1が入力される。なお、制御部38は、後述する処理の段数(回数)に応じた水平ブロック幅及び垂直ブロック幅を第1及び第2選択部62,63に出力する。位置判定部52は、ブロックデータ122の位置に応じて、第2選択部63の出力信号が垂直ブロック幅VS0又は垂直ブロック幅VS1となるように制御する。例えば、位置判定部52は、ブロックデータ122の位置が部分画像120の垂直方向の最初である場合に、第2選択部63に対し垂直ブロック幅VS0を出力するように制御する。また、位置判定部52は、ブロックデータ122の位置が垂直方向の最初でない場合に、第2選択部63に対し垂直ブロック幅VS1を出力するように制御する。第2選択部63は、選択された垂直ブロック幅VS0,VS1を第2比較部56に出力する。
水平カウンタ58は、処理部31〜35が1画素(注目画素等)を処理するのに同期してカウントアップし、カウント数CT1を第1比較部55に出力する。第1比較部55は、カウント数CT1と第1選択部62から入力される水平ブロック幅HS0,HS1とを比較し、一致した場合に出力信号SI1を出力する。水平カウンタ58は、出力信号SI1の入力に応じてカウンタをリセットする。
垂直カウンタ60は、出力信号SI1の入力に応じてカウントアップし、カウント数CT2を第2比較部56に出力する。第2比較部56は、カウント数CT2と第2選択部63から入力される垂直ブロック幅VS0,VS1とを比較し、一致した場合に出力信号SI2を出力する。垂直カウンタ60は、出力信号SI2の入力に応じてカウンタをリセットする。
また、第1及び第2比較部55,56は、出力信号SI1,SI2を第3比較部57に出力する。第3比較部57は、出力信号SI1,SI2の両方の信号の入力に応じて出力信号SI3を位置判定部52に出力する。位置判定部52は、第3比較部57からの出力信号SI3に基づいて1つのブロックデータ122に対する画像処理が終了したことを検出する。例えば、処理部31〜35は、判定部51から出力される水平カウンタ58及び垂直カウンタ60のカウント数CT1,CT2に基づいて、ブロックデータ122の注目画素の位置を検出してフィルタ処理を実行する。また、制御部38は、全てのブロックデータ122の読み込みの終了、即ち1フレームの入力画像100における部分画像120(図3参照)の読み込みの終了に応じてリセット信号RSTを位置判定部52に出力し初期化処理を実行させる。
なお、図3において、部分画像120における水平方向の最後(図中の最も右側)のブロックデータ122に対する処理は、水平方向の画素数が水平ブロック幅HS1より小さい場合は、不足する画素値を隣接する画素から補間する又は画像処理を実行せずにそのまま出力する等、処理内容を適宜変更する。同様に、部分画像120における垂直方向の最後(図中の最も下側)のブロックデータ122に対する処理内容も変更する。
次に、フィルタ処理の一例として、複数段(本実施形態では3段)で接続されるノイズ補正処理部32により画像データに対してノイズを除去する処理を実行する場合について説明する。なお、画像処理回路22は、フィルタ処理の段数と同数のノイズ補正処理部32を有する構成とし、各ノイズ補正処理部32により並列に処理させてもよい。また、画像処理回路22は、1つのノイズ補正処理部32を用いて繰り返しフィルタ処理を実行してもよい。また、他の処理部(例えば、エッジ強調処理部33)におけるフィルタ処理の動作等は、ノイズ補正処理部32におけるフィルタ処理と同様であるため、説明を省略する。
図5は、複数回のフィルタ処理を実行した後の部分画像131を含む1フレームの出力画像130を示す。同図5に示すように、部分画像131は、水平方向及び垂直方向に分割された複数のブロックデータ133を含む。各ブロックデータ133は、水平方向に5つ、垂直方向に5つの画素134を含む。なお、図5において一点鎖線で囲まれる5つのブロックデータ133を、他のブロックデータ133と区別するために、処理される順番にブロックデータ133A,133B,133C,133D,133Eとする。
図6は、複数段のフィルタ処理におけるブロックデータを示しており、同図6の上側から順にフィルタ処理の1段目(1回目)、2段目、3段目の状態を示している。図6の最も下側のブロックデータ133A〜133Eは、図5に示す部分画像131として外部メモリ13(図2参照)に出力されるデータである。なお、図6では、図面が繁雑となるのを避けるため、各ブロックデータの周辺画素を適宜省略して示している。また、以下の説明では、主として図中におけるブロックデータ133Aの右側及び下側の周辺画素を読み込んで処理する場合について説明するが、他の上側及び左側についても同様に周辺画素を読み込んで処理してもよい。また、対応する周辺画素がない場合に、隣接する画素の画素値を用いて補間する処理等を実行してもよい。
ノイズ補正処理部32は、ブロックデータ133Aの注目画素(画素134)に対するフィルタ処理を、注目画素に隣接して1画素分の周辺にある周辺画素を用いて実行する。ノイズ補正処理部32は、注目画素と周辺画素とを含む全ての画素に重み係数を乗算した値を中央の注目画素の画素値として出力する。このため、図6に示すように、処理段階の各ブロックデータは、処理前に比べて周辺画素の1画素分処理後が小さいサイズとなる。換言すれば、処理されるブロックデータのサイズが処理の初段側に向かうにつれて、1段階当り1画素分大きくなっている。従って、ブロックデータのサイズは、フィルタ処理の回数(段数)と相関する関係にある。
例えば、3段目のフィルタ処理では、ブロックデータ133Aに対応するブロックデータ143Aが、ブロックデータ133Aに対して、水平方向に周辺画素SGを1画素分加えたものとなる。同様に、垂直方向にも1画素分加え、6×6個の画素144を含む。ここで、注目画素を含むフィルタ処理の対象領域をデータ領域とする。例えば、ブロックデータ133Aを出力するための水平方向のデータ領域は、図6のブロックデータ143Aに含まれるデータ領域R1となる。ブロックデータ143Aは、水平ブロック幅HS0及び垂直ブロック幅VS0がともに6となっている。
また、3段目のフィルタ処理では、ブロックデータ133Bに対応するブロックデータ143Bが5×6個の画素144を含む。従って、ブロックデータ143Bは、水平ブロック幅HS1が5、垂直ブロック幅VS0が6となっている。ブロックデータ133Bを出力するための水平方向のデータ領域は、図6に示すデータ領域R2となる。データ領域R2は、データ領域R1を処理する際に参照されるブロックデータ143A内の周辺画素SGを含む。つまり、ノイズ補正処理部32は、フィルタ処理を実行するブロックデータ143Aの次のブロックデータ143Bに隣接する一部の領域である周辺画素SGを、次のブロックデータ143Bの処理対象となるデータ領域R2として処理する。
また、データ領域R2に対するフィルタ処理では、上記したブロックデータ143Aに含まれる周辺画素SGを注目画素として処理するため、1番目のブロックデータ143A側(図中の左側)にさらに1画素分だけ広がった画素を周辺画素として参照する。このデータ領域R2を処理するのに参照されるブロックデータ143Aの一部を水平オーバラップORHとする。換言すれば、この水平オーバラップORHは、データ領域R1に対する周辺画素SGと、データ領域R2に対する周辺画素(水平オーバラップORHから周辺画素SGを除いた画素)とを含む。従って、水平オーバラップORHは、ブロックデータ143Aに含まれる周辺画素SGを含む2画素分のデータ幅となっている。また、ブロックデータ143Bの次のブロックデータ143Cに隣接する一部の領域(図6におけるブロックデータ143Bの最も右側の1画素分の領域)は、データ領域R2の周辺画素として処理される。なお、ブロックデータ133C〜133Eの各々に対応するブロックデータ143C〜143Eは、ブロックデータ143Bと同一のブロック幅となっている。
2段目のフィルタ処理では、ブロックデータ143Aに対応するブロックデータ153Aが、水平ブロック幅HS0及び垂直ブロック幅VS0がともに7となっている。また、2段目のフィルタ処理では、ブロックデータ143B〜143Eの各々に対応するブロックデータ153B〜153Eが、水平ブロック幅HS1が5、垂直ブロック幅VS0が7となっている。つまり、2段目のブロックデータ153B〜153Eと、3段目のブロックデータ143B〜143Eとは、水平ブロック幅HS1が同一のブロック幅となっている。
1段目のフィルタ処理では、ブロックデータ153Aに対応するブロックデータ163Aが、水平ブロック幅HS0及び垂直ブロック幅VS0がともに8となっている。また、1段目のフィルタ処理では、ブロックデータ153B〜153Eの各々に対応するブロックデータ163B〜163Eが、水平ブロック幅HS1が5、垂直ブロック幅VS0が8となる。つまり、1段目〜3段目の各ブロックデータは、各ラインの最初のブロックデータを除く他のブロックデータ(143B〜143E,153B〜153E,163B〜163E)の水平ブロック幅HS1が同一のブロック幅となっている。
次に、処理動作について説明する。まず、制御部38は、1段目のフィルタ処理として、ノイズ補正処理部32に、外部メモリ13から内部メモリ41に読み込まれたブロックデータ163Aを出力する制御を行う。ノイズ補正処理部32は、入力されたブロックデータ163Aのデータ領域R1に含まれる画素164を注目画素としてフィルタ処理を実行し、処理結果のデータをブロックデータ153Aとして内部メモリ41に出力する。
次に、ノイズ補正処理部32は、2段目のフィルタ処理として、1段目の処理結果であるブロックデータ153Aのデータ領域R1に含まれる画素154を注目画素としてフィルタ処理を実行し処理結果をブロックデータ143Aとして内部メモリ41に出力する。次に、ノイズ補正処理部32は、3段目のフィルタ処理として、2段目の処理結果であるブロックデータ143Aのデータ領域R1に含まれる画素144を注目画素としてフィルタ処理を実行し処理結果をブロックデータ133Aとして内部メモリ41に出力する。
次に、制御部38は、2回目の1段目のフィルタ処理として、外部メモリ13から内部メモリ41に読み込まれたブロックデータ163Aの次のブロックデータ163Bをノイズ補正処理部32に出力しフィルタ処理を実行させる。ここで、ノイズ補正処理部32は、ブロックデータ153Bを出力するフィルタ処理として、1回目のフィルタ処理のブロックデータ163Aに含まれる画素164のうち、水平オーバラップORHに含まれる画素を参照する。このため、制御部38は、ブロックデータ133Aを外部メモリ13に出力する処理を実行した後、内部メモリ41に格納されるデータのうちでブロックデータ133Aに対応する部分を削除し、ブロックデータ163Bを内部メモリ41に格納する処理を実行する。
詳述すると、まず水平方向のみを考慮した場合には、制御部38は、ブロックデータ163Aのうち水平オーバラップORHに含まれない画素(図中の水平オーバラップORHより左側部分に含まれる画素)のデータを削除できる。また、水平方向と同様に水平方向を考慮してブロックデータ163Aにおいて下側の2列の画素(図中の垂直オーバラップORVと示す部分)は、次のラインデータの処理の際に参照される部分であるため、当該ブロックデータが処理されるまで保持する必要がある。
従って、制御部38は、ブロックデータ133Aの出力後に、ブロックデータ163A(8×8=64画素)のうち、水平オーバラップORH及び垂直オーバラップORVを除く部分(6×6=36画素)を内部メモリ41から削除する処理を実行する。この場合、内部メモリ41に格納される画素数(データ量)は、28(=64−36)画素となる。同様に、各段においてブロックデータ153A,143Aのうち、水平オーバラップORH及び垂直オーバラップORVを除く部分を削除する。図6においてハッチングで示される部分の画素144,154,164は、5つ目のブロックデータ133Eの出力後に削除される画素を示している。なお、制御部38は、上記した段数に応じた水平ブロック幅HS0,HS1及び垂直ブロック幅VS0,VS1を判定部51(図4参照)の第1及び第2選択部62,63に出力する。
次に、図8〜図10を用いて比較例について説明する。
図8に示すように、1フレームの入力画像200のフィルタ処理が施される一部の部分画像220は、複数のブロックデータ222に分割されラスタースキャンの順に順次処理される。ブロックデータ222は、水平ブロック幅HSが、水平方向の最初のブロックデータを含む全てのブロックデータ(右端のブロックを除く)で同一のブロック幅となっている。また、ブロックデータ222は、垂直ブロック幅VSが、垂直方向の最初のブロックデータを含む全てのブロックデータ(下端のブロックを除く)で同一のブロック幅となっている。
図9は、上記したような同一のブロック幅のブロックデータで構成される画像データに対し複数回のフィルタ処理を実行した場合の処理状態を示している。図9における1段目の処理に示すように、ブロックデータ163Bを処理する場合のデータ領域R2は、1番目のブロックデータ163Aに対する水平オーバラップORHが図6に示す本実施形態と同様に2画素分のブロック幅となっている。
しかしながら、次のブロックデータ163Cを処理する場合のデータ領域R3では、2番目のブロックデータ163Bに対する水平オーバラップが3画素分のブロック幅となっている。この3画素分の水平オーバラップは、本実施形態のものとは異なるため、他の水平オーバラップと区別するために水平オーバラップORH2とする。この水平オーバラップORH2が生じるのは、ブロックデータを全て同一サイズとしたため、入出力されるブロックデータ163A,163B,163C・・・と、実際に処理されるデータ領域R1,R2,R3・・・との位置ずれが発生するためである。この位置ずれは、ブロックデータを水平方向に向かって処理する毎に増大する。
図9においてハッチングで示される部分に含まれる画素144,154,164は、5つ目のブロックデータ133Eを出力した後に内部メモリからデータが削除される画素を示している。図9に示すように、比較例においては、ブロックデータ133Eを処理した後の水平オーバラップORH2が6画素分のブロック幅まで増大している。その結果、内部メモリには、処理には未だ必要とされないデータ領域を含む水平オーバラップORH2が格納されるため、内部メモリに一時的に格納されるデータ量が増加し、内部メモリの最大容量の増大に繋がる。あるいは、このような位置ずれを補正するために、処理されるブロックデータの数・位置等に応じて内部メモリへの格納を休止したり格納のタイミングをずらす等の処理を画像処理装置に実行させようとすると、処理内容が複雑となり負荷が増大する。なお、このようなブロックデータの位置ずれから生じる内部メモリ内のデータ量の増加は、垂直方向の処理においても同様に生じる。
図10に示すグラフは、1ラインのフィルタ処理において、処理されるブロックデータの数と、内部メモリに格納されるデータ量との関係を示している。図10は、例えば、図5に示す部分画像131の水平方向の画素数を80pixel(水平方向のブロックデータ133の数が16個)とした場合のシミュレーション結果を示している。
図10に示すように、内部メモリに保持されるデータ量は、処理されるブロック数(時間)が増えるにつれて増加する。図10においては、ブロックデータを10個まで処理した際に、内部メモリに格納されるデータ量が最大(データ量Dmax)となっている。このデータ量Dmaxは、1ラインのフィルタ処理をする際に必要となる内部メモリの最大容量となる。因みに、図10に示すグラフの処理ブロック数が16、即ち1ラインのブロックデータを全て処理した際に内部メモリに格納されるデータ量Dendは、次のライン処理において参照される垂直オーバラップORVの総量を示している。
一方で、図6に示すように、本実施形態における処理では、上記したような水平オーバラップORH2に相当するデータが生じない。また、本実施形態では、図3に示すように、ブロックデータ122は、垂直方向の最初のブロックデータの垂直ブロック幅VS0が他のブロックデータの垂直ブロック幅VS1に比べて大きい値が設定されている。従って、垂直方向に対する処理においても、上記した水平オーバラップORH2に相当するデータが生じない。
図7は、本実施形態において、図10にグラフと同様のシミュレーションを実施した結果を示している。図7に示すように、内部メモリ41に保持されるデータ量は、処理されるブロック数(時間)が増えるにつれて増加する。しかし、本実施形態では、水平オーバラップORH2のようなデータが内部メモリ41に蓄積されることがない。このため、図10の比較例に比べてデータ量Dmaxが約100pixel程度小さくなっている。従って、本実施形態の構成によれば、水平方向及び垂直方向における最初に処理されるブロックデータのみを、フィルタ処理に必要な周辺画素を含むオーバラップ部分(ORH,ORV)含むサイズとしたことで、内部メモリ41に必要な最大容量の削減を図ることが可能となる。
以上、記述したように、実施形態によれば、以下の効果を奏する。
(1)本実施形態の画像処理回路22のノイズ補正処理部32は、外部メモリ13に格納される1フレームの入力画像100(図2参照)を複数のブロックに分割したブロックデータ143A〜143E,153A〜153E,163A〜163E(図6参照)に対してフィルタ処理を実行する。ノイズ補正処理部32は、ブロックデータに含まれる処理対象の領域(データ領域R1〜R3)にある注目画素(画素144等)の画素を順次選択して、注目画素に隣接して配置されている周辺画素(周辺画素SGを含む)の画素と共にフィルタ処理を実行する。制御部38は、ノイズ補正処理部32により処理する際、最初に処理される第1のブロックデータ143A,153A,163Aのブロック幅を、データ領域R1と周辺画素SGの領域とを加えた水平ブロック幅HS0とするように内部メモリ41に対する入出力を制御する。また、制御部38は、第1のブロックデータ以降に処理されるブロックデータ143B〜143E等のブロック幅をデータ領域R1と同じブロック幅の水平ブロック幅HS1とするように制御する。より具体的には、ノイズ補正処理部32は、最初のブロックデータ143A,153A,163Aに含まれる周辺画素SGを、次のブロックデータ143B,153B,163Bに隣接する画素の領域として処理している。
また、例えば、ノイズ補正処理部32は、フィルタ処理を実行するブロックデータ143Aの次のブロックデータ143Bに隣接する一部の領域である周辺画素SGを、次のブロックデータ143Bの処理対象となるデータ領域R2として処理する。また、ノイズ補正処理部32は、フィルタ処理を実行するブロックデータ143Aの周辺画素SGに隣接する一部の領域(水平オーバラップORHから周辺画素を除いた画素)、及びブロックデータ143Bの次のブロックデータ143Cに隣接する一部の領域を、ブロックデータ143Bのデータ領域R2の周辺画素として処理している。
このような構成では、水平方向及び垂直方向における最初に処理されるブロックデータのみを、フィルタ処理に必要な周辺画素を含むデータ幅としたことで、ブロックデータの処理対象の領域にずれが生じないため、内部メモリ41に必要な最大容量の削減を図ることができる。
さらに、図9及び図10に示すような比較例の構成と比べて、ノイズ補正処理部32と内部メモリ41との間のデータ転送量が低減できる。このため、制御部38における処理負荷を低減して、画像処理回路22における画像データの処理速度が向上できる。
(2)制御部38は、例えば、パイプライン処理の最終段のノイズ補正処理部32によるフィルタ処理に応じて、データ領域R1のうちオーバラップORH,ORVを除いて内部メモリ41から消去し、次のブロックデータを内部メモリ41に格納する処理を実行する。これにより、処理態様に応じた内部メモリ41に格納されるデータの管理を適切に行うことができる。
また、画像処理装置12は、画像処理装置の一例として、外部メモリ13及び内部メモリ41は、メモリ部の一例として、ノイズ補正処理部32及びエッジ強調処理部33は、フィルタ処理部の一例として、制御部38は、制御部の一例として、ブロックデータ143A,153A,163Aは、最初に処理される第1のブロックデータの一例として、ブロックデータ143B,153B,163Bは、第1のブロックデータの次に処理される第2のブロックデータの一例として、ブロックデータ143C,153C,163Cは、第2のブロックデータの次に処理される第3のブロックデータの一例として、水平ブロック幅HS0,HS1及び垂直ブロック幅VS0,VS1は、ブロック幅の一例として、水平オーバラップORHから周辺画素SGを除く領域は、第2の一部領域の一例として、データ領域R1〜R3は、処理対象領域の一例、周辺画素SGは、第1の一部領域の一例として挙げられる。
なお、本願に開示される技術は前記各実施形態に限定されるものではなく、趣旨を逸脱しない範囲内での種々の改良、変更が可能であることは言うまでもない。
例えば、上記実施形態において、制御部38における処理内容を他の処理部(CPU24等)にて処理してもよい。
また、上記実施形態における1フレームの入力画像に対するブロックデータの分割位置、処理の順番等は一例であり、適宜変更してもよい。例えば、図3に示す入力画像100を右下から左上に向かって処理してもよい。この場合、最初のブロックデータを、例えば右下のブロックデータとする。
また、上記実施形態において、制御部38は、例えばノイズ補正処理部32が処理するブロックデータを外部メモリ13に入出力してもよい。この場合、内部メモリ41を省略した構成とすることができる。
また、上記実施形態におけるフィルタ処理の内容・方法等は一例であり適宜変更する。例えば周辺画素SGの画素数を変更してもよい。
12 画像処理装置
13 外部メモリ
32 ノイズ補正処理部
33 エッジ強調処理部
38 制御部
41 内部メモリ
133A〜133E ブロックデータ
143A〜143E ブロックデータ
153A〜153E ブロックデータ
163A〜163E ブロックデータ
HS0,HS1 水平ブロック幅
VS0,VS1 垂直ブロック幅
SG 周辺画素
ORH 水平オーバラップ
ORV 垂直オーバラップ

Claims (1)

  1. 画像データを水平方向及び垂直方向に分割したブロックデータの単位で画像処理する画像処理装置であって、
    前記ブロックデータに含まれる処理対象領域にある注目画素のデータを順次選択して、前記注目画素に隣接して配置されている周辺画素のデータと共にフィルタ処理するフィルタ処理部と、
    前記フィルタ処理部での処理に応じて前記ブロックデータを格納するメモリ部と、
    前記水平方向及び前記垂直方向に並ぶ前記ブロックデータの何れか一方向の一列を前記フィルタ処理部により処理する際、最初に処理される第1のブロックデータの処理方向のブロック幅を前記処理対象領域と前記周辺画素の領域とを加えたブロック幅とし、前記第1のブロックデータの次に処理される第2のブロックデータの処理方向のブロック幅を前記処理対象領域のブロック幅として、前記メモリ部を制御する制御部とを備え
    前記第1のブロックデータに含まれる前記周辺画素の領域は、前記第2のブロックデータに隣接する領域であり、
    前記第1のブロックデータにおける前記第2のブロックデータに隣接する第1の一部領域は、前記第2のブロックデータの処理対象領域とされ、前記第1のブロックデータの前記第1の一部領域に隣接する第2の一部領域及び前記第2のブロックデータの次に処理される第3のブロックデータに隣接する一部領域は、前記第2のブロックデータにおける前記処理対象領域の周辺画素の領域として使用され、
    前記第1及び第2の一部領域における処理方向のデータ幅は、前記周辺画素の領域のデータ幅であり、
    前記制御部は、前記フィルタ処理部によるフィルタ処理に応じて、前記処理対象領域のうち前記第1及び第2の一部領域を除いて前記メモリ部から消去し、新たなブロックデータを前記メモリ部に格納することを特徴とする画像処理装置。
JP2012254058A 2012-11-20 2012-11-20 画像処理装置 Active JP6015374B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012254058A JP6015374B2 (ja) 2012-11-20 2012-11-20 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012254058A JP6015374B2 (ja) 2012-11-20 2012-11-20 画像処理装置

Publications (2)

Publication Number Publication Date
JP2014102675A JP2014102675A (ja) 2014-06-05
JP6015374B2 true JP6015374B2 (ja) 2016-10-26

Family

ID=51025133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012254058A Active JP6015374B2 (ja) 2012-11-20 2012-11-20 画像処理装置

Country Status (1)

Country Link
JP (1) JP6015374B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6350151B2 (ja) * 2014-09-11 2018-07-04 株式会社ソシオネクスト 画像処理装置及び画像処理方法
JP6241670B2 (ja) * 2014-10-15 2017-12-06 京セラドキュメントソリューションズ株式会社 画像処理装置
JP6395000B2 (ja) * 2016-04-13 2018-09-26 京セラドキュメントソリューションズ株式会社 画像処理装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3294065B2 (ja) * 1995-07-04 2002-06-17 キヤノン株式会社 画像処理装置および画像処理方法
JP2008192038A (ja) * 2007-02-07 2008-08-21 Mitsubishi Electric Corp 画像前処理装置

Also Published As

Publication number Publication date
JP2014102675A (ja) 2014-06-05

Similar Documents

Publication Publication Date Title
US10868985B2 (en) Correcting pixel defects based on defect history in an image processing pipeline
JP6706985B2 (ja) 画像処理装置およびその制御方法
JP5740465B2 (ja) 撮像装置及び欠陥画素補正方法
US9262314B2 (en) Data transfer device
JP6284332B2 (ja) 画像処理装置、画像処理方法、および撮像装置
US20040257453A1 (en) Apparatus for and method of interfacing between an image sensor and an image processor
JP6015374B2 (ja) 画像処理装置
US20090167917A1 (en) Imaging device
US8369613B2 (en) Image processing circuit, image processing method, and camera
US20150170375A1 (en) Control apparatus, image processing apparatus, control method, and non-transitory computer-readable storage medium
JP4998312B2 (ja) 画像処理装置、撮像装置及び画像処理方法
JP4189252B2 (ja) 画像処理装置及びカメラ
JP6442867B2 (ja) 画像処理装置、撮像装置、及び画像処理方法
JP2007274504A (ja) デジタルカメラ
KR101364050B1 (ko) 이미지 처리 방법 및 장치
JP2010134743A (ja) 画像処理装置
US8537244B2 (en) Image processing apparatus and method, and computer-readable medium having stored thereon computer program for executing the method
US12133002B2 (en) Image processing method and electronic device
JP5676233B2 (ja) 画像処理装置、画像処理方法、及び撮像装置
US20040196380A1 (en) Image processing device, camera and image processing method
JP2016136660A (ja) 集積回路および集積回路による画像処理方法
US8416313B2 (en) Image processing device for inputting both still picture data and motion picture data and performing a data process
JP4464325B2 (ja) 画像処理装置
KR20130069347A (ko) 촬상 장치 및 촬상 방법
JP2013182218A (ja) 撮像装置、撮像方法、及びプログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20150605

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150727

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20151215

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20151217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160524

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160630

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160912

R150 Certificate of patent or registration of utility model

Ref document number: 6015374

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150