(57)【要約】【課題】単に画像データの順番を前後入れ替えているだけだと、ＹＣを伴うカラー画像データに対して順番の入れ替えを行う場合、正しい並び替えを行うことができない。【解決手段】ラインメモリ１７，１８を有し、２つのラインメモリ１７，１８の一方に画像データを書き込んでいるときに他方から画像データを読み出す際に、画像データを書き込んだときと逆の順に読み出すことによって画像データの水平方向の順番を左右入れ替える画像処理装置において、画像データの読み出しの際に、ダウンカウンタ値dn_cntの下位２ビットについて、ワード変換回路１４で４ワードを単位として値の組替えによってダウンカウンタ値dn_cnt2に変換し、この組替え後のダウンカウンタ値dn_cnt2を読み出しアドレス値として用いることにより、４ワードを単位として画像データの入れ替えを行うときに、４ワード内でのデータの入れ替えも同時に行うようにする。【選択図】図１
2005086470.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号に同期して記憶手段へ複数の画像データを取り込む画像処理装置であって、
入力される前記画像データの水平走査期間の開始から水平有効期間の終了までの間、前記クロック信号のクロック数をカウントする計数手段と、
前記計数手段によるカウント値を書き込みアドレスとして前記複数の画像データを前記記憶手段へ書き込むと共に、前記カウント値を並び替えた値を読み出しアドレスとして前記記憶手段から前記複数の画像データを読み出す制御手段と
を備えたことを特徴とする画像処理装置。
【請求項２】
クロック信号に同期して画像データを取り込む画像処理装置であって、
２つの記憶手段と、
入力される画像データの水平走査期間の開始から水平有効期間の終了までの間、前記クロック信号のクロック数をカウントする第１の計数手段と、
前記第１の計数手段により得られた最大カウント値を初期値とし、前記水平走査期間の開始から前記水平有効期間の終了までの間、前記クロック信号のクロック数に応じてカウントダウンする第２の計数手段と、
前記第２の計数手段によるカウント値の下位ｎビット（ｎは２以上の整数）について、２n ワードを単位として当該２n ワード内で前記カウント値を入れ替える変換手段と、
前記第１の計数手段によるカウント値と前記変換手段で変換されたカウント値のいずれか一方を選択して前記２つの記憶手段の一方にアドレス値として与える第１の選択手段と、
前記第１の計数手段によるカウント値と前記変換手段で変換されたカウント値のいずれか一方を選択して前記２つの記憶手段の他方にアドレス値として与える第２の選択手段と、
前記２つの記憶手段の一方に前記カウント値をアドレスとして前記画像データを書き込んでいるときに、前記２つの記憶手段の他方から前記変換されたカウント値をアドレスとして前記画像データを読み出す制御手段と
を備えたことを特徴とする画像処理装置。
【請求項３】
前記第１の選択手段は、前記第１の計数手段によるカウント値と前記変換手段で変換されたカウント値とを水平走査期間ごとに交互に選択し、
前記第２の選択手段は、前記第１の選択手段が前記第１の計数手段によるカウント値を選択しているときに前記変換手段で変換されたカウント値を、前記第１の選択手段が前記変換手段で変換されたカウント値を選択しているとき前記第１の計数手段によるカウント値をそれぞれ選択する
ことを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記記憶手段はラインメモリである
ことを特徴とする請求項２記載の画像処理装置。
【請求項５】
クロック信号に同期して記憶手段へ複数の画像データを取り込む画像処理方法であって、
入力される前記画像データの水平走査期間の開始から水平有効期間の終了までの間、前記クロック信号のクロック数をカウントする第１のステップと、
前記第１のステップでカウントされたカウント値を書き込みアドレスとして前記複数の画像データを前記記憶手段へ書き込むと共に、前記カウント値を並び替えた値を読み出しアドレスとして前記記憶手段から前記複数の画像データを読み出す第２のステップと
を有することを特徴とする画像処理方法。
【請求項６】
２つの記憶手段を含む画像処理装置へクロック信号に同期して画像データを取り込む画像処理方法であって、
入力される前記画像データの水平走査期間の開始から水平有効期間の終了までの間、前記クロック信号のクロック数をカウントする第１のステップと、
前記第１のステップにより得られた最大カウント値を初期値とし、前記水平走査期間の開始から前記水平有効期間の終了までの間、前記クロック信号のクロック数に応じてカウントダウンする第２のステップと、
前記第２のステップにより得られたカウント値の下位ｎビット（ｎは２以上の整数）について、２n ワードを単位として当該２n ワード内で前記カウント値を入れ替える第３のステップと、
前記２つの記憶手段の一方に前記第１のステップで得られたカウント値をアドレスとして前記画像データを書き込んでいるときに、前記２つの記憶手段の他方から前記第３のステップで得られたカウント値をアドレスとして前記画像データを読み出す第４のステップと
を有することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
監視カメラなど、モニター用の撮像装置の画像処理では、カラー画像データとして、ＲＧＢカラーモードの画像データが広く使われている。しかし、画像の圧縮処理、例えばＪＰＥＧの圧縮処理などにおいては、画像データをＲＧＢカラーモードからＹＣＣカラーモード（ＹＣｒＣｂ）に変換した上で、色信号Ｃｒと色信号Ｃｂのチャンネルの画素情報を間引くことによって画像圧縮を実現している。したがって、画像処理装置としては、ＲＧＢデータではなく、ＹＣｒＣｂデータに対応した処理が必要となる。この画像データの処理の１つとして、画像データの水平方向を左右反転（ミラー機能）させる処理がある。この処理を実現する技術として、従来、２つのラインメモリを用いて画像データを水平方向で左右反転させる技術が知られている（例えば、特許文献１参照）。
【０００３】
【特許文献１】特開平１１−２５０２３６号公報
【０００４】
図１１に、特許文献１記載の従来例に係る画像処理装置の構成例を示す。図１１に示すように、従来例に係る画像処理装置は、書き込みカウンタ１０１、読み出しカウンタ１０２、セレクタ１０３，１０４、２つのラインメモリ１０５，１０６およびセレクタ１０７を有する構成となっている。
【０００５】
かかる構成の従来例に係る画像処理装置における画像データの流れについて述べる。入力画像データＤＩについて、１ライン目のデータをラインメモリ１０５に書き込み、次の２ライン目のデータをラインメモリ１０６に書き込む。この２ライン目のデータの書き込み中に、ラインメモリ１０５に格納している１ライン目のデータを読み出す。そして、３ライン目のデータをラインメモリ１０５に書き込む。そのとき、ラインメモリ１０６に格納している２ライン目のデータを読み出す。すなわち、入力画像データＤＩを１ラインごとに交互に２つのラインメモリ１０５，１０６に書き込むと同時に、書き込んでいない方のラインメモリからデータを読み出すようにしている。
【０００６】
この一連の動作を実現するために、１ラインごとに論理（“１”／“０”）が切り替わる制御信号ＳＥＬ（例えば、１ライン目で“１”、２ライン目で“０”、以降、交互に繰り返す）を使用して、ラインメモリ１０５，１０６へのライトイネーブル信号ＷＥ（例えば、正論理）を、図１２に示すライトイネーブル信号分配回路１１０で分配する。具体的には、ラインメモリ１０５へのライトイネーブル信号ＷＥ１とラインメモリ１０６へのライトイネーブル信号ＷＥ２とが１ラインごとに交互に“１”になるように、ＡＮＤ回路１１１，１１２を用いてライトイネーブル信号ＷＥを分配する。
【０００７】
ラインメモリ１０５，１０６からデータを読み出すときに、データを書き込んだときとは逆の順に読み出すことにより、例えば、順方向アドレスの小さい方から順［順方向］に書き込んだ場合、アドレスの大きい方から順［逆方向］に読み出すことにより、画像データの順番の入れ替えを行う。
【０００８】
そして、ラインメモリ１０５，１０６から読み出した画像データについてはセレクタ１０７を使って、読み出されている方の画像データを選択するように、制御信号ＳＥＬの反転信号を入力する。一例として、ＳＥＬ＝１のときには、ラインメモリ１０５が書き込み動作中なので、ラインメモリ１０６を読み出し動作させる。このとき、セレクタ１０７はラインメモリ１０６からの出力データｄｏ２を選択する。ＳＥＬ＝０のときは、ラインメモリ１０６が書き込み動作中なので、ラインメモリ１０５を読み出し動作させる。このとき、セレクタ１０７はラインメモリ１０５からの出力データｄｏ１を選択し、出力画像データＤＯとする。
【０００９】
次に、このラインメモリ１０５，１０６への書き込み／読み出し動作時に、画像データの順番入れ替えを行うためのアドレス生成方法について述べる。
【００１０】
書き込みカウンタ１０１はラインメモリ１０５，１０６への書き込み動作時のアドレスを生成し、読み出しカウンタ１０２はラインメモリ１０５，１０６への読み出し動作時のアドレスを生成する。これらカウンタ１０１，１０２への入力値Ａは、カウント動作の初期アドレスである。そして、書き込みカウンタ１０１はアップカウンタとして動作し、読み出しカウンタ１０２はアップ・ダウンカウンタとして動作し、入力信号ＵＤの値によってアップ／ダウンを切り替える。例えば、ＵＤ＝０のときアップカウンタ動作、ＵＤ＝１のときダウンカウンタ動作とする。
【００１１】
その際、先ず、水平方向のデータを入れ替えない場合は、読み出しカウンタ１０２をアップカウンタとして動作させ、初期値Ａからクロックごとに１つずつカウントアップさせる。書き込みカウンタ１０１も同時に動作させることにより、書き込みカウンタ１０１のカウント値wr_cntと読み出しカウンタ１０２のカウント値rd_cntは共に、数の小さい方からの並びになる。セレクタ１０３，１０４は、ＳＥＬ＝１のときは、書き込みカウンタ値wr_cntをラインメモリ１０５のアドレスとして入力させ、読み出しカウンタ値rd_cntをラインメモリ１０６のアドレスとして入力させる。
【００１２】
また、ＳＥＬ＝０のときは、書き込みカウンタ値wr_cntと読み出しカウンタ値rd_cntをＳＥＬ＝１のときとは反対のラインメモリのアドレスとして入力させるので、１ラインごとに切り替わる制御信号ＳＥＬを使えば、１ラインごとに書き込みアドレスと読み出しアドレスを交互にそれぞれのラインメモリに入力できる。ラインメモリ１０５，１０６の読み出し時は、画像データが順方向（アドレスの小さい方から順）に書き込まれている状態で同じく順方向に読み出すので、出力画像データＤＯは、水平方向のデータが入れ替わらないデータとなる。
【００１３】
水平方向のデータを入れ替えてミラー機能を実現する場合は、読み出しカウンタ１０２をダウンカウンタとして動作させ、アップカウント動作時の最大カウント値からクロックごとに１つずつカウントダウンさせる。書き込みカウンタ１０１は、アップカウント動作をするため、書き込みカウンタ１０１のカウント値wr_cntは数の小さい方からの並びとなるが、読み出しカウンタ１０２のカウント値rd_cntは、数の大きい方からの並びになる。この場合、ラインメモリ１０５，１０６への書き込み時にはアドレスの小さい方から書き込み（順方向書き込み）、読み出し時にはアドレスの大きい方から読み出す（逆方向読み出し）ため、出力画像データＤＯは、水平方向のデータが入れ替わるデータとなる。
【００１４】
以上のことは、読み出しカウンタ１０２をアップカウント固定とし、書き込みカウンタ１０１の方をアップ・ダウンカウンタとした場合でも同様に実現できる。
【００１５】
但し、例えばＣＣＤ(Charge Coupled Device)カラーカメラ等で使用されているＣｂＹＣｒＹ８ｂｉｔパラレル入出力の画像データのように、Ｙ（輝度）Ｃ（色）を伴う画像データの場合には、水平方向反転後の正しい色再現性を実現する観点からすれば、図１３に示すように、１画素“ＣｂＹ(1) ＣｒＹ(2) ”（８ｂｉｔ×４）［(1),(2) は便宜上順番を付与］を単位として、順序を反転させるとともに、画素内をさらに“ＣｂＹ(2) ＣｒＹ(1) ”の順で入れ替える必要がある。すなわち、輝度信号Ｙと色信号Ｃとを別々に扱い、輝度信号Ｙについては、そのデータの入る位置（本例では、偶数番目）間で左右の順番を入れ替える。色信号Ｃについては、Ｃｒ，Ｃｂが対になって左右の順番を入れ替える。但し、ＣｒとＣｂとの間の順番は入れ替えない。
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、上記従来例に係る画像処理装置では、単に画像データの順番を前後入れ替えているだけであるため、ＹＣを伴うカラー画像データに対して順番の入れ替えを行うものとすると、図１４に示すように、単純に順序を逆にするだけの処理が行われ、正しい並び替えを行うことができない。このように、単純にＹＣｒＣｂデータの左右の順番を入れ替えることで、輝度信号Ｙ（モノクロ部）と色信号Ｃ（カラー部）の位置が入れ替わったり（奇数番目と偶数番目とが入れ替わったり）、色信号ＣでもＣｒとＣｂとが入れ替わったりすると、画像表示時に色が変わってしまい、水平方向反転後の正しい色再現性が得られなくなるという問題がある。
【００１７】
本発明は、上記課題に鑑みてなされたものであって、その目的とするところは、画像データの水平方向の反転処理を行うに当たって、ＹＣを伴うカラー画像データにも柔軟に対応可能な画像処理装置および画像処理方法を提供することにある。
【課題を解決するための手段】
【００１８】
上記目的を達成するために、本発明では、クロック信号に同期して記憶手段へ複数の画像データを取り込むと共に、前記記憶手段に書き込んだ画像データを読み出すに当たり、入力される前記画像データの水平走査期間の開始から水平有効期間の終了までの間、前記クロック信号のクロック数をカウントし、当該カウント値を書き込みアドレスとして前記複数の画像データを前記記憶手段へ書き込むと共に、前記カウント値を並び替えた値を読み出しアドレスとして前記記憶手段から前記複数の画像データを読み出すようにする。
【００１９】
記憶手段への複数の画像データの書き込みアドレスとなるカウント値を並び替えて、この並び替えた値を読み出しアドレスとして前記記憶手段から複数の画像データを読み出すことにより、書き込みアドレスごとに書き込まれる画像データ内でデータの入れ替えが行われる。
【発明の効果】
【００２０】
本発明によれば、書き込みアドレスごとに書き込まれる画像データ内でデータの入れ替えが行われることにより、画像データをＹＣの並びまで考慮した水平方向のデータ反転を実現できるため、画像データの水平方向の反転処理を行うに当たって、ＹＣを伴うカラー画像データにも柔軟に対応できることになる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００２２】
図１は、本発明の一実施形態に係る画像処理装置の構成例を示すブロック図である。図１に示すように、本実施形態に係る画像処理装置は、アップカウンタ１１、ダウンカウンタ１２、最大値検出回路１３、ワード変換回路１４、セレクタ１５，１６、記憶手段であるラインメモリ１７，１８およびセレクタ１９を有する構成となっている。
【００２３】
アップカウンタ１１は、初期値“０”で、画像データＤＩのライン（水平走査期間）ごとの先頭パルス信号（先頭エッジ）edgeを検出後、１クロックごとにカウントアップ動作を行う。アップカウンタ１１のカウント値をアップカウンタ値up_cntと呼ぶこととする。最大値検出回路１３は、アップカウンタ１１の最大値を取り出してアップカウンタ最大値up_cntmaxとして出力する。ダウンカウンタ１２は、画像データＤＩの１ラインごとの先頭パルス信号edgeを検出後、最大値検出回路１３が検出したアップカウンタ最大値up_cntmaxを初期値とし、以後１クロックごとにカウントダウン動作を行う。ダウンカウンタ１２のカウント値をダウンカウンタ値dn_cntと呼ぶこととする。
【００２４】
ワード変換回路２４は、画素内のデータの並べ替えを実現するために、ダウンカウント値dn_cntの組替え調整を行って第２のダウンカウント値dn_cnt2を生成する。このワード変換回路２４の具体的な構成については後述する。セレクタ１５は、アップカウンタ値up_cntと第２のダウンカウンタ値dn_cnt2とを２入力とし、制御信号ＳＥＬ１による制御によってアップカウンタ値up_cntと第２のダウンカウンタ値dn_cnt2のいずれか一方を選択してラインメモリ１７にアドレス値として与える。同様に、セレクタ１６は、アップカウンタ値up_cntと第２のダウンカウンタ値dn_cnt2とを２入力とし、制御信号ＳＥＬ２による制御によってアップカウンタ値up_cntと第２のダウンカウンタ値dn_cnt2のいずれか一方を選択してラインメモリ１８にアドレス値として与える。
【００２５】
制御信号ＳＥＬ１，ＳＥＬ２は、図２に示す制御信号分配回路２０から与えられる。この制御信号分配回路２０は、２つのＮＡＮＤ回路２１，２２によって構成され、１ラインごとに“１”／“０”が交互に切り替わる制御信号ＳＥＬを、セレクタ１５の制御信号ＳＥＬ１とセレクタ１６の制御信号ＳＥＬ２として分配する。図２において、ＮＡＮＤ回路２１は、制御信号ＳＥＬを一方の入力（逆相入力）とし、反転命令信号ＩＲＯＴを他方の入力としている。ＮＡＮＤ回路２２は、制御信号ＳＥＬを一方の入力とし、反転命令信号ＩＲＯＴを他方の入力としている。
【００２６】
ラインメモリ１７は、外部から与えられる画像データＤＩをデータ（Ｄ）入力とし、セレクタ１５から与えられるアップカウンタ値up_cntまたはダウンカウンタ値dn_cnt2をアドレス（Ａ）入力とし、ライトイネーブル信号ＷＥ１が与えられることによって画像データＤＩの書き込みを行う。同様に、ラインメモリ１８は、外部から与えられる画像データＤＩをデータ入力とし、セレクタ１６から与えられるアップカウンタ値up_cntまたはダウンカウンタ値dn_cnt2をアドレス入力とし、ライトイネーブル信号ＷＥ２が与えられることによって画像データＤＩの書き込みを行う。
【００２７】
ライトイネーブル信号ＷＥ１，ＷＥ２は、図３に示すライトイネーブル信号分配回路３０から与えられる。ライトイネーブル信号分配回路３０は、２つのＡＮＤ回路３１，３２によって構成され、例えば正論理のライトイネーブル信号ＷＥを、ラインメモリ１７へのライトイネーブル信号ＷＥ１とラインメモリ１８へのライトイネーブル信号ＷＥ２として分配する。図３において、ＡＮＤ回路３１は、ライトイネーブル信号ＷＥを一方の入力とし、制御信号ＳＥＬを他方の入力としている。ＡＮＤ回路３２は、ライトイネーブル信号ＷＥを一方の入力とし、制御信号ＳＥＬを他方の入力（逆相入力）としている。
【００２８】
セレクタ１９は、ラインメモリ１７からの出力データｄｏ１を一方の入力とし、ラインメモリ１８からの出力データｄｏ２を他方の入力とし、これら出力データｄｏ１，ｄｏ２を制御信号ＳＥＬの反転信号に応じて１ラインごとに切り替えることによって出力画像データＤＯとする。
【００２９】
続いて、上記構成の本実施形態に係る画像処理装置の回路動作について、図４のタイミングチャートを用いて説明する。ここでは、一例として、画像データＤＩは有効画素を３２２画素（１２８８クロック長）とし、１クロックにつき１ワードずつ入力されるものとする（１画素＝４ワード）。
【００３０】
ラインメモリ１７に入力するアドレスａｄｒ１とラインメモリ１８に入力するアドレスａｄｒ２とを生成するために、先ずアップカウンタ１１は、画像データＤＩのライン（水平走査期間）ごとの先頭パルス信号（先頭エッジ）edgeの検出時にカウントリセットをかけ、その後はクロックｄｃｋの入力ごとにカウントアップし、有効データ区間（水平有効期間）終了後ブランキング期間（ブランキング期間イネーブル信号ｈｂｌｋ＝“１”）に入ると、カウント動作を止める。すなわち、アップカウンタ１１は、水平走査期間の開始から水平有効期間の終了までの間カウントアップ動作を行う。最大値検出回路１３は、このブランキング期間中のアップカウンタ１１のカウンタ値up_cnt[10:0]、本例では“１２８７”（１０進数）を、アップカウンタ最大値up_cntmax[10:0]として格納しておく。
【００３１】
次に、ダウンカウンタ１２は、画像データＤＩのラインの先頭パルス信号edgeを検出時にカウントリセットをかけ、最大値検出回路１３が検出したアップカウンタ最大値up_cntmax[10:0]を初期値とする。その後、ダウンカウンタ１２は、クロックｄｃｋの入力ごとにカウントダウン動作を行い、有効データ区間が終了し、ブランキング期間に入ることでカウント動作を止める。すなわち、ダウンカウンタ１２は、水平走査期間の開始から水平有効期間の終了までの間カウントダウン動作を行う。ここで、アップカウンタ値up_cntが“［１］［２］［３］［４］”（この数字は、理解を容易にするために１画素内における４ワードに対して仮に付した番号）の順に変化するのに対し、ダウンカウンタ値dn_cntは“［４］［３］［２］［１］”と逆の変化となる。ダウンカウンタ値dn_cnt[10:0]は、有効データ区間（水平有効期間）に４つごとのワード単位の変換を行うためにワード変換回路１４に送られる。
【００３２】
ワード変換回路１４は、ダウンカウンタ値dn_cnt[10:0]を下位２ビットのみについて値の変換を行う。図５は、ワード変換回路１４の具体的な構成の一例を示す概念図である。この概念図に示すように、ワード変換回路１４は、ダウンカウンタ値dn_cnt[10:0]からビット分離部４１で分離された下位２ビットの値dn_cnt[1:0]について、データ“１１”をデータ“００”に変換する変換部４２と、データ“１０”をデータ“１１”に変換する変換部４３と、データ“０１”をデータ“１０”に変換する変換部４４と、データ“００”をデータ“０１”に変換する変換部４５とを有し、これら変換部４２〜４５で変換された後の下位２ビットの値dn_cnt2[1:0]をビット合成部４６で上位９ビットの値dn_cnt[10:2]に合成して最終的に１１ビットのダウンカウンタ値dn_cnt2[10:0]とする。
【００３３】
ワード変換回路１４での変換処理について、図６に示す数値例をもってより具体的に説明するならば、ダウンカウンタ値dn_cntが“１２８７”のとき変換部４２で下位２ビット“１１”を“００”に、ダウンカウンタ値dn_cntが“１２８６”のとき変換部４３で下位２ビット“１０”を“１１”に、ダウンカウンタ値dn_cntが“１２８５”のとき変換部４４で下位２ビット“０１”を“１０”に、ダウンカウンタ値dn_cntが“１２８４”のとき変換部４５で下位２ビット“００”を“０１”にそれぞれ変換する。以降、同様にして、４ワード単位でダウンカウンタ値dn_cntから第２のダウンカウンタ値dn_cnt2への変換が行われる。その結果、ワード変換回路１４からは、“［４］［３］［２］［１］”の順のダウンカウンタ値dn_cntが、“［１］［４］［３］［２］”の順のダウンカウンタ値dn_cnt2に組み替えられて出力される。
【００３４】
この変換後のダウンカウンタ値dn_cnt2とアップカウンタ値up_cntとはセレクタ１５，１６の各２入力となる。セレクタ１５，１６は、制御信号分配回路２０から与えられる制御信号ＳＥＬ１，ＳＥＬ２による切り替え制御により、ダウンカウンタ値dn_cnt2とアップカウンタ値up_cntのいずれか一方が選択し、ラインメモリ１７，１８にアドレス信号adr1,adr2として与えられる。制御信号分配回路２０の真理値表を図７に示す。
【００３５】
図７から明らかなように、反転命令信号ＩＲＯＴ＝“１”のときには、１ラインごとに“１”／“０”を交互に切り替える制御信号ＳＥＬの値によって、ラインメモリ１７へのアドレスセレクタ１５の制御信号ＳＥＬ１とラインメモリ１８へのアドレスセレクタ１６の制御信号ＳＥＬ２とが１ラインごとに交互に“１”／“０”を切り替えるようになる。このことにより、ＳＥＬ＝１では、図８に示すように、ＳＥＬ１が“１”（アップカウンタ値up_cnt選択）でＳＥＬ２が“０”（調整後ダウンカウンタ値dn_cnt2選択）となり、ＳＥＬ＝０では、図９に示すように、ＳＥＬ１が“０”（調整後ダウンカウンタ値dn_cnt2選択）でＳＥＬ２が“１”（アップカウンタ値up_cnt選択）となるので、２つのラインメモリ１７，１８間で書き込みと読み出しとをラインごとに交互に繰り返す動作を実現できる。
【００３６】
次に、２つのラインメモリ１７，１８の読み出し／書き込みの各動作の制御方法について説明する。
【００３７】
ラインメモリ１７，１８のうち必ず一方がアップカウンタ値up_cntをアドレス入力として選択されており、そのときに画像データの書き込みを行う。このとき、もう一方のラインメモリからは画像データを読み出す。この読み出し／書き込みの制御をメモリ制御手段であるライトイネーブル信号分配回路３０によって行う。ライトイネーブル信号分配回路３０の真理値表を図１０に示す。
【００３８】
図１０から明らかなように、ＳＥＬ＝“１”のとき（このときラインメモリ１７の方がアドレス値としてアップカウンタ値up_cntを選択）、ラインメモリ１７へのライトイネーブル信号ＷＥ１の方に、元のライトイネーブル信号ＷＥが供給されることにより、ラインメモリ１７では書き込み動作になる。また逆に、ＳＥＬ＝“０”のとき（このときラインメモリ１８の方がアドレス値としてアップカウンタ値up_cntを選択）、ラインメモリ１８へのライトイネーブル信号ＷＥ２の方に、元のライトイネーブル信号ＷＥが供給されることにより、ラインメモリ１８の方が書き込み動作になる。
【００３９】
よって、図８、図９に示すように、アップカウンタ値up_cntが入力されるラインメモリには常に順方向（アドレスの小さい方から順）に画像データが書き込まれる。そして、書き込みを行わない方のラインメモリには、調整後ダウンカウンタ値dn_cnt2が入力され、逆方向（アドレスの大きい方から順）に画像データが読み出される。このことにより、ラインメモリ１７，１８からの出力データｄｏ１，ｄｏ２は水平方向に４ワード単位で反転した画像データとなる。
【００４０】
次に、ラインメモリ１７，１８のうち、読み出しを行う方のラインメモリのデータを選択して、出力画像データＤＯとする。この制御は、図８，図９に示すように、制御信号ＳＥＬの反転信号に応じたセレクタ１９による切り替えによって行われる。すなわち、セレクタ１９は、ＳＥＬ＝“１”のときは、ラインメモリ１８の画像データを読み出しているため出力データｄｏ２を選択して出力画像データＤＯとし、ＳＥＬ＝“０”のときは、逆にラインメモリ１７の画像データを読み出しているため出力データｄｏ１を選択して出力画像データＤＯとする。
【００４１】
なお、水平方向の反転をしない場合は、反転命令信号ＩＲＯＴ＝“０”とすれば良い。この場合、図７に示すように、制御信号分配回路２０が２つのラインメモリ１７，１８共にアドレス値としてアップカウンタ値up_cntを選択する。このように、２つのラインメモリ１７，１８に対してアップカウンタ値up_cntをアドレス値として与えることにより、ラインメモリ１７，１８において、書き込み時も読み出し時も順方向（アドレスの小さい方から順）にアクセスすることになるため、出力画像データＤＯは水平方向に反転することなく出力される。
【００４２】
上述したように、記憶手段への複数の画像データの書き込みアドレスとなるカウント値を並び替えて、この並び替えた値を読み出しアドレスとして前記記憶手段から複数の画像データを読み出すことにより、書き込みアドレスごとに書き込まれる画像データ内でデータの入れ替えを行うことができ、その結果、画像データをＹＣの並びまで考慮した水平方向のデータ反転を実現できるため、画像データの水平方向の反転処理を行うに当たって、ＹＣを伴うカラー画像データにも柔軟に対応できることになる。
【００４３】
特に、２つの記憶手段、本例ではラインメモリ１７，１８を有し、２つのラインメモリ１７，１８の一方に画像データを書き込んでいるときに他方から画像データを読み出す際に、画像データを書き込んだときと逆の順に読み出すことによって画像データの水平方向の順番を左右入れ替える画像処理装置において、画像データの読み出しの際に、ダウンカウンタ値dn_cntの下位ｎビット（本例では、下位２ビット）について、ワード変換回路１４で４ワードを単位として値の組替えによってダウンカウンタ値dn_cnt2に変換し、この組替え後のダウンカウンタ値dn_cnt2を読み出しアドレス値として用いることにより、４ワードを単位として画像データの入れ替えを行うときに、当該単位内でのデータの入れ替えも同時に行うことができる。
【００４４】
すなわち、例えばＣＣＤカラーカメラ等で使用されているＣｂＹＣｒＹ８ｂｉｔパラレル入出力の画像データのように、ＹＣを伴う画像データの場合に、図１３に示すように、１画素“ＣｂＹ(1) ＣｒＹ(2) ”（８ｂｉｔ×４）［(1),(2) は便宜上順番を付与］を単位として、順序を反転させるとともに、画素内をさらに“ＣｂＹ(2) ＣｒＹ(1) ”の順で入れ替えることができる。すなわち、輝度信号Ｙと色信号Ｃとを別々に扱い、輝度信号Ｙについては、そのデータの入る位置（本例では、偶数番目）間で左右の順番を入れ替えるようにする。色信号Ｃについては、Ｃｒ，Ｃｂが対になって左右の順番を入れ替える。但し、ＣｒとＣｂとの間の順番は入れ替えない。これにより、水平方向反転後の正しい色再現性を実現できる。
【００４５】
本例では、入力画像データはＣｂＹ(1)ＣｒＹ(2)としていますため、出力画像データはＣｂＹ(2)ＣｒＹ(1)となりますが、輝度信号Ｙと色信号Ｃの順番を入れ換え、入力画像データをＹ(1)ＣｂＹ(2)Ｃｒとした場合は、出力画像データをＹ(2)ＣｂＹ(1)Ｃｒと出力するようにすれば、その後の画像表示時の処理で色が変わることなく、即ち正しい色再現性で表示できることになる。よって、本発明は、輝度信号Ｙと色信号Ｃを分離して左右反転のデータ入れ換えができることがポイントとなり、入力画像データの順番がもし上記のように変えた場合でも、４ワード内での入れ換えをワード変換回路１４で行い、入力データがＣｂＹ(1)ＣｒＹ(2)と入った場合、その並びをＣｂＹ(2)ＣｒＹ(1)の並びにもＹ(2)ＣｂＹ(1)Ｃｒにもできます。
【００４６】
なお、本実施形態では、出力時はＣｂＹ(2)ＣｒＹ(1)の並びとなる場合を例に挙げて説明したが、パラメータを設けて、そのパラメータ値によって、いろいろな並びの出力画像データとすることもできる。よって、画像データの種類によって切り替え、正しい色再現での表示ができることになる。
【００４７】
また、上記実施形態では、ラインメモリ１７，１８に対し、書き込みアドレスとしてアップカウンタ値up_cntを使用し、読み出しアドレスとして水平方向反転時に調整後のダウンカウンタ値dn_cnt2を使用し、反転しない場合にアップカウンタ値up_cntを使用するものとしたが、これは逆に書き込みアドレスをダウンカウンタ値dn_cnt2とし、読み出しアドレスとしては、反転する場合はアップカウンタ値up_cnt、反転しない場合はダウンカウンタ値dn_cnt2という使用もできる。
【００４８】
また、ワード変換回路１４については、アップカウンタ１１とダウンカウンタ１２のどちら側につけても構わない。但し、その場合、ワード変換回路１４における変換方法については変更する必要がある。例えば、書き込み時に順方向（アドレスの小さい方から順）にアクセスし、読み出し時に逆方向（アドレスの大きい方から順）にアクセスする。そして、アップカウンタ１１の後ろ側に配置した場合、画像データを４ワード単位で“［１］［２］［３］［４］”のところを、ワード変換回路１４で“［２］［３］［４］［１］”とした上で書き込み、読み出し時はそのまま逆方向（アドレスの大きい方から順）アクセスを行えば、“［１］［４］［３］［２］”と出力することができる。このような論理変更を行えば、先に説明した読み出し時に“［４］［３］［２］［１］”の“［１］［４］［３］［２］”への変更の考え方も、画像データによってはこれ以外の組み合わせも下位２ビットのみ値を変換する考え方で実現できる。
【００４９】
さらに、上記実施形態では、下位２ビットについて４ワードを単位として４ワード内での組替えを行う場合を例に挙げて説明したが、下位２ビットに限定されるものではなく、例えば下位３ビットについて８ワードを単位として８ワード内での組替えを行うというように、下位ｎビット（ｎは２以上の整数）について２n ワードを単位として当該２n ワード内で組替えを行うことが可能である。
【００５０】
また、制御信号分配回路２０としては、図２に示すように２つのＮＡＮＤ回路２１，２２からなる回路構成のものを用いたが、この回路構成は一例に過ぎず、１ラインごと交互にセレクタ１５，１６の一方を“１”、他方を“０”に切り替えることが実現できる回路構成のものであれば良い。
【図面の簡単な説明】
【００５１】
【図１】本発明の一実施形態に係る画像処理装置の構成例を示すブロック図である。
【図２】制御信号分配回路の構成の一例を示すブロック図である。
【図３】ライトイネーブル信号分配回路の構成の一例を示すブロック図である。
【図４】本発明の一実施形態に係る画像処理装置の回路動作に説明に供するタイミングチャートである。
【図５】ワード変換回路の具体的な構成の一例を示す概念図である。
【図６】ワード変換回路の変換処理の動作説明図である。
【図７】制御信号分配回路の真理値表を示す図である。
【図８】ＳＥＬ＝“１”の時の信号の流れを示す図である。
【図９】ＳＥＬ＝“０”の時の信号の流れを示す図である。
【図１０】ライトイネーブル信号分配回路の真理値表を示す図である。
【図１１】従来例に係る画像処理装置の構成例を示すブロック図である。
【図１２】従来例に係るライトイネーブル信号分配回路の構成例を示すブロック図である。
【図１３】１画素“ＣｂＹ(1) ＣｒＹ(2) ”（８ｂｉｔ×４）を単位として、順序を反転させるとともに、画素内をさらに“ＣｂＹ(2) ＣｒＹ(1) ”の順で入れ替えたときの画像データの構成を示す図である。
【図１４】単純に順序を左右逆にしたときの画像データの構成を示す図である。
【符号の説明】
【００５２】
１１…アップカウンタ、１２…ダウンカウンタ、１３…最大値検出回路、１４…ワード変換回路、１５，１６，１９…セレクタ、１７，１８…ラインメモリ
【図１】
2005086470.tif 000003
【図２】
2005086470.tif 000004
【図３】
2005086470.tif 000005
【図４】
2005086470.tif 000006
【図５】
2005086470.tif 000007
【図６】
2005086470.tif 000008
【図７】
2005086470.tif 000009
【図８】
2005086470.tif 000010
【図９】
2005086470.tif 000011
【図１０】
2005086470.tif 000012
【図１１】
2005086470.tif 000013
【図１２】
2005086470.tif 000014
【図１３】
2005086470.tif 000015
【図１４】
2005086470.tif 000016