(57)【要約】【課題】比較的簡素な装置構成で無駄なく、極めて短時間且つ低消費電力で画像処理を行うことを可能とする画像処理装置及び画像処理方法を提供する。【解決手段】所定列のメモリユニット１０の第１のメモリセル１に記憶された画素データに対して行演算部４０で演算を行って、その演算結果を第２のメモリセル２に記憶し、続いて、所定行のメモリユニット１０の第２のメモリセル２に記憶された処理データに対して列演算部５０で演算を行って、その演算結果を第３のメモリセル３に記憶するようにして、当該演算結果に基づいてフィルタ処理を行うようにする。【選択図】        図３
2004246683.tif 000002
【特許請求の範囲】
【請求項１】
二次元の画素データに行列状の係数を乗算し、その乗算結果の総和に基づいて前記画素データにフィルタ処理を施す画像処理装置であって、少なくとも、前記画素データを記憶する第１のメモリセルと、第２のメモリセルと、第３のメモリセルとを有するメモリユニットが複数行列状に配置されたメモリユニットアレイと、
前記メモリユニットアレイの行方向に列数個配設され、前記メモリユニットアレイの所定列の前記画素データに対して演算を行って前記第２のメモリセルに記憶するための第１の処理データを求める第１の演算手段と、
前記メモリユニットアレイの列方向に行数個配設され、前記メモリユニットアレイの所定行の前記第１の処理データに対して演算を行って前記第３のメモリセルに記憶するための第２の処理データを求める第２の演算手段とを含み、
前記第２の演算手段の演算結果に基づいて前記フィルタ処理を行うことを特徴とする画像処理装置。
【請求項２】
前記第１の処理データは、前記所定列のメモリユニットのうち、中央の行に位置するメモリユニットに記憶され、前記第２の処理データは、前記所定行のメモリユニットのうち、中央の列に位置するメモリユニットに記憶されることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画素データを記憶する複数のメモリユニットが行列状に配置されたメモリユニットアレイと、
前記メモリユニットアレイの行方向に列数個配設された第１の演算手段と、
前記メモリユニットアレイの列方向に行数個配設された第２の演算手段とを有する画像処理装置における画像処理方法であって、
前記メモリユニットアレイの所定列の画素データに対して演算を行って第１の処理データを求め、当該第１の処理データを前記メモリユニット内の前記画素データが記憶されている第１のメモリセルとは独立した第２のメモリセルに記憶する第１のステップと、
前記メモリユニットアレイの所定行における前記第１の処理データに対して演算を行って第２の処理データを求め、当該第２の処理データを前記メモリユニット内の第３のメモリセルに記憶する第２のステップとを含むことを特徴とする画像処理方法。
【請求項４】
前記第１の処理データを前記所定列のメモリユニットのうち、中央の行に位置するメモリユニットに記憶し、前記第２の処理データを前記所定行のメモリユニットのうち、中央の列に位置するメモリユニットに記憶することを特徴とする請求項３に記載の画像処理方法。
【請求項５】
前記第１のステップを行をずらして演算を行い、続いて、前記第２のステップを列をずらして演算を行うことを特徴とする請求項３又は４に記載の画像処理方法。
【請求項６】
前記第２のステップを列をずらして演算を行い、続いて、前記第１のステップを行をずらして演算を行うことを特徴とする請求項３又は４に記載の画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、二次元画像に所定の処理を施して画像変換や画像強調等を行うための画像処理装置及び方法に関する。
【０００２】
【従来の技術】
従来、二次元画像を処理して画像変換や画像強調等を行うには、各画素毎に、その画素を囲む複数の画素の画素データを加工する処理を逐一実行していた。
具体的には、図７に示すように、二次元画像に対応して行列状に配置された多数の画素１０１毎に、例えばこの画素１０１を囲むカーネルブロック内における８個の近傍画素１０２の画素データＸ１〜Ｘ８に係数Ａ１〜Ａ８をそれぞれ対応させて乗算し、総和をとって得られたＡ１Ｘ１＋Ａ２Ｘ２＋…＋Ａ８Ｘ８を画素１０１の処理データとする。カーネルを１画素毎に移動させてゆき、上記の一連の作業を、必要とする画素全てについて逐一実行する。
【０００３】
【発明が解決しようとする課題】
しかしながら、上述の画像処理法は、必要とする画素全てについて１画素毎に逐一演算処理することを要するために膨大な演算量となり、極めて演算負荷及び消費電力の高い処理である。即ちこの場合、１回の演算処理を行う度に必要な画素データをメモリセルからプロセッサに転送し、カーネル内における複数の近傍画素のデータを全てダウンロードしなければならず、しかもカーネルが二次元画像全体を走査する間に何度も同じ画素に対してアクセスが発生するという深刻な問題がある。
【０００４】
本発明は、このような問題を解決するために成されたものであり、比較的簡素な装置構成で無駄なく、極めて短時間且つ低消費電力で画像処理を行うことを可能とする画像処理装置及び画像処理方法を提供することを目的とする。
【０００５】
【課題を解決するための手段】
本発明者は、鋭意検討の結果、以下に示す発明の諸態様に想到した。
【０００６】
本発明の画像処理装置は、二次元の画素データに行列状の係数を乗算し、その乗算結果の総和に基づいて前記画素データにフィルタ処理を施す画像処理装置であって、少なくとも、前記画素データを記憶する第１のメモリセルと、第２のメモリセルと、第３のメモリセルとを有するメモリユニットが複数行列状に配置されたメモリユニットアレイと、前記メモリユニットアレイの行方向に列数個配設され、前記メモリユニットアレイの所定列の前記画素データに対して演算を行って前記第２のメモリセルに記憶するための第１の処理データを求める第１の演算手段と、前記メモリユニットアレイの列方向に行数個配設され、前記メモリユニットアレイの所定行の前記第１の処理データに対して演算を行って前記第３のメモリセルに記憶するための第２の処理データを求める第２の演算手段とを含み、前記第２の演算手段の演算結果に基づいて前記フィルタ処理を行うことを特徴とするものである。
【０００７】
本発明の画像処理装置は、前記画素データを記憶する複数のメモリユニットが行列状に配置されたメモリユニットアレイと、前記メモリユニットアレイの行方向に列数個配設された第１の演算手段と、前記メモリユニットアレイの列方向に行数個配設された第２の演算手段とを有する画像処理装置における画像処理方法であって、前記メモリユニットアレイの所定列の画素データに対して演算を行って第１の処理データを求め、当該第１の処理データを前記メモリユニット内の前記画素データが記憶されている第１のメモリセルとは独立した第２のメモリセルに記憶する第１のステップと、前記メモリユニットアレイの所定行における前記第１の処理データに対して演算を行って第２の処理データを求め、当該第２の処理データを前記メモリユニット内の第３のメモリセルに記憶する第２のステップとを含むことを特徴とするものである。
【０００８】
【発明の実施の形態】
図１は、本実施形態による画像処理装置の概略構成図である。
この画像処理装置は、複数個のメモリセルを有するメモリユニット１０が行列状に配置されたメモリユニットアレイ１００と、メモリユニットアレイ１００に対してデータを読み出す行を選択する行選択部２００と、メモリユニットアレイ１００に対してデータを読み出す列を選択する列選択部３００と、行選択部２００で選択されたメモリユニット１０のデータに対して演算を行う行演算ユニット４００と、列選択部３００で選択されたメモリユニット１０のデータに対して演算を行う列演算ユニット５００とを備えて構成されている。
【０００９】
また、行演算ユニット４００は、メモリユニットアレイ１００の列にそれぞれ対応して設けられた列数個の行演算部４０を備えて構成されており、各行におけるメモリユニット１０からのデータに対して、それぞれ並列的に演算を行えるように構成されている。同様に、列演算ユニット５００は、メモリユニットアレイ１００の行にそれぞれ対応して設けられた行数個の列演算部５０を備えて構成されており、各列におけるメモリユニット１０からのデータに対して、それぞれ並列的に演算を行えるように構成されている。
【００１０】
メモリユニット１０には、少なくとも、画素データを記憶する第１のメモリセルの他に、行演算ユニット４００で演算した結果求められた第１の処理データを記憶する第２のメモリセルと、列演算ユニット５００で演算した結果求められた第２の処理データを記憶する第３のメモリセルとを有している。
【００１１】
本実施形態における画像処理装置は、行列状のカーネルとの演算を行うときに、列方向のみの演算結果と、行方向のみの演算結果とを組み合せることにより行うことを特徴としている。そして、これらの演算結果をメモリユニット１０の第２のメモリセル及び第３のメモリセルに記憶しておくことで、必要とする画素全てについて１画素毎に逐一演算処理を行う必要がない。
【００１２】
図２は、本実施形態における画像処理方法を示す概略図である。フィルタ処理の具体的な例として、３×３のカーネルの係数が全て１である平滑化処理を行う場合について説明する。
【００１３】
まず、図２（ａ）では、行選択部２００で選択された行のメモリユニット１０に記憶されている画素データを行演算ユニット４００に順次読み出す。ここで、各行演算部４０では、行選択部２００で選択された行を中央にしてその上下の行を含む３行分の画素データに対して所定の演算を行う。
【００１４】
図３は、行演算部４０の演算処理の流れを示す概略図である。
各メモリユニット１０は、列方向にはコラム・バス５を介して接続されており、また、行方向にはロウ・バス６を介して接続されている。
第１のメモリセル１に記憶されている画素データがコラム・バス５を介して電流値として足し合わされて、行演算部４０に入力される。行演算部４０では、第１のメモリセル１の３つの画素データの合計を３等分した演算結果を中央の行におけるメモリユニット１０の第２のメモリセル２に記憶する。
【００１５】
続いて、図２（ｂ）に示すように、列選択部３００で選択された列のメモリユニット１０の第２のメモリセル２に記憶されている第１の処理データを列演算ユニット５００に順次読み出す。ここで、各列演算部５０では、列選択部３００で選択された列を中央にしてその左右の列を含む３列分の画素データに対して所定の演算を行う。
【００１６】
具体的には、図３に示す中央の行における３つのメモリユニット１０の第２のメモリセル２に蓄積されている第１の処理データがロウ・バス６を介してそれぞれ電流値として足し合わされて、列演算部５０に入力される。列演算部５０では、第２のメモリセル２の３つの第１の処理データの合計を３等分した演算結果を中央の列におけるメモリユニット１０の第３のメモリセル３に記憶する。
【００１７】
上述した処理を行うことにより、図３に示す９つのメモリユニット１０における画素データの平均値を第３のメモリセル３に記憶することができる。
メモリユニットアレイ１００の全ての行に対して上述の行演算ユニット４００の各行演算部４０で演算を行って、それぞれ各メモリユニット１０のメモリセル２に演算結果を記憶させ、さらに、メモリユニットアレイ１００の全ての列に対して上述の列演算ユニット５００の各列演算部５０で演算を行うことで、全てのメモリユニット１０の第３のメモリセル３に演算結果を記憶する。
【００１８】
上述したように、メモリユニットアレイ１００に対して各行演算部４０及び各列演算部５０での演算結果をメモリユニット１０の各メモリセルに記憶させ、それらを組み合せることにより、図４に示すラプラシアンフィルタのような複雑なフィルタ処理も実現することができる。また、メモリユニットアレイ１００の行列方向の演算を複数回行った場合には、その演算結果を第４のメモリセルに記憶することもできる。
【００１９】
図５は、メモリユニット１０内の各メモリセルの等価回路図である。
図５に示すように、各メモリセルは６つのトランジスタ（Ｍ１〜Ｍ６）で構成されている。各メモリセルには、読み書き用のポート（Ｉ／Ｏ  ｐｏｒｔ）と、読み出し用のポート（Ｏｕｔｐｕｔ  ｐｏｒｔ）との２つのポートを備え、それぞれ、図３に示したコラム・バス５及びロウ・バス６のいずれかに接続されている。ここで、メモリユニット１０の４つのメモリセルのうち、２つはコラム・バス５に読み書き用のポートが接続され、残りの２つはロウ・バス６に読み書き用のポートが接続される。
【００２０】
書き込みを行う場合には、トランジスタＭ３、Ｍ４及びＭ５をオンにして、トランジスタＭ１及びＭ２を流れる電流の合計が画素データとなるようにする。また、トランジスタＭ２及びＭ４は、いわゆるクロックフィールドスルーを補償するために設けられたものである。
【００２１】
図６は、行演算部４０及び列演算部５０の等価回路図である。
各演算部は、アキュームレート回路、減算回路、乗算／除算回路を有して構成されている。
乗算回路については、基本はカレントミラーであり、出力側トランジスタのサイズを１倍、２倍、４倍のゲート幅にすることで、１倍〜７倍の定数倍乗算を行うことができる。また、アキュームレート回路及び入出力端との間にスイッチを入れることで、１倍〜１／７倍まで可能な乗算も同時に可能な回路構成となっている。
【００２２】
以上説明したように、本実施形態によれば、メモリユニットアレイ１００の行方向及び列方向の一次元で演算を行うことにより、膨大な演算処理を行うことなく、また、何度も同じ画素に対してアクセスを行う必要がなくなるため、非常に効率のよい演算を行うことができる。
【００２３】
【発明の効果】
本発明によれば、比較的簡素な装置構成で無駄なく、極めて短時間且つ低消費電力で画像処理を行うことを可能とする画像処理装置及び画像処理方法を提供することができる。
【図面の簡単な説明】
【図１】本実施形態における画像処理装置の概略図である。
【図２】本実施形態における画像処理方法を示す概略図である。
【図３】行演算部の演算処理の流れを示す概略図である。
【図４】ラプラシアンフィルタにおける処理方法を示した図である。
【図５】メモリユニット内の各メモリセルの等価回路図である。
【図６】行演算部及び列演算部の等価回路図である。
【図７】従来の画像処理法を説明するための概略図である。
【符号の説明】
１〜４  メモリセル
５  コラム・バス
６  ロウ・バス
１０  メモリユニット
２０  メモリユニット領域
４０  行演算部
５０  列演算部
１００  メモリユニットアレイ
２００  行選択部
３００  列選択部
４００  行演算ユニット
５００  列演算ユニット
【図１】
2004246683.tif 000003
【図２】
2004246683.tif 000004
【図３】
2004246683.tif 000005
【図４】
2004246683.tif 000006
【図５】
2004246683.tif 000007
【図６】
2004246683.tif 000008
【図７】
2004246683.tif 000009