(57)【要約】【課題】  画像処理を迅速に実行することのできる技術を提供する。【解決手段】  画像処理方法は、（ａ）選択された注目ブロック画像に対して第１処理を実行し、処理済み注目ブロック画像を内蔵ＲＡＭ内に書き込む工程と、（ｂ）内蔵ＲＡＭに格納された処理済み注目ブロック画像とその周辺の処理済み周辺画像とを含む処理済み対象画像に対して第２処理を実行する工程と、を繰り返し実行する工程を含む。工程（ｂ）は、処理済み注目ブロック画像の一部を構成し、他のブロック画像のための第２処理で利用される重複利用画像を、外部ＲＡＭ領域に書き込む工程を含む。工程（ａ）は、外部ＲＡＭ領域から、他のブロック画像のための第２処理で既に利用され、注目ブロック画像のための第２処理で利用される重複利用画像を読み出して、処理済み周辺画像の一部として内蔵ＲＡＭ内に書き込む工程を含む。【選択図】  図７
2005276072.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
第１記憶領域と、
第２記憶領域と、
前記第１記憶領域と前記第２記憶領域とを用いて、元画像から順次選択されるブロック画像に対して画像処理を実行するための実行部であって、前記第２記憶領域よりも前記第１記憶領域に対して速くアクセス可能な前記実行部と、
を備え、
前記実行部は、
（ａ）選択された注目ブロック画像に対して第１処理を実行し、処理済み注目ブロック画像を前記第１記憶領域内に書き込む動作と、
（ｂ）前記第１記憶領域に格納され、前記第１処理が施された処理済み対象画像であって、前記処理済み注目ブロック画像と、前記処理済み注目ブロック画像の周辺の処理済み周辺画像と、を含む前記処理済み対象画像に対して第２処理を実行する動作と、
を繰り返し実行し、
前記動作（ｂ）は、さらに、
前記処理済み注目ブロック画像の一部を構成し、次回よりも後に選択されるブロック画像のための前記第２処理で利用される前記第１種の重複利用画像を、前記第２記憶領域に書き込む動作を含み、
前記動作（ａ）は、さらに、
前記第２記憶領域から、前回よりも前に選択されたブロック画像のための前記第２処理で既に利用され、前記注目ブロック画像のための前記第２処理で利用される第２種の重複利用画像を読み出して、前記処理済み周辺画像の少なくとも一部として前記第１記憶領域内に書き込む動作を含むことを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置であって、
前記実行部は、前記動作（ｂ）の後に、
（ｃ）前記第２処理の処理結果を前記第２記憶領域に書き込む動作を実行する、画像処理装置。
【請求項３】
請求項１または２記載の画像処理装置であって、
前記元画像は、複数のライン画像をそれぞれ含み、複数のブロック画像をそれぞれ含む複数のグループに区分され、
前記注目ブロック画像は、第１のグループに含まれるブロック画像であり、
前記次回よりも後に選択されるブロック画像は、前記第１のグループに隣接する第２のグループに含まれるブロック画像であり、
前記前回よりも前に選択されたブロック画像は、前記第１のグループに隣接する第３のグループに含まれるブロック画像である、画像処理装置。
【請求項４】
請求項３記載の画像処理装置であって、
前記第２記憶領域は、
前記注目ブロック画像に対応する前記第２種の重複利用画像を格納するための重複利用画像格納領域を含み、
前記重複利用画像格納領域は、１つの前記グループを構成する複数のブロック画像に対応する複数の前記第２種の重複利用画像に相当する容量を有する、画像処理装置。
【請求項５】
請求項１ないし４のいずれかに記載の画像処理装置であって、
前記実行部は、
前記第２記憶領域内の前記第２種の重複利用画像が格納されていた領域に、前記第１種の重複利用画像を書き込む、画像処理装置。
【請求項６】
請求項１ないし５のいずれかに記載の画像処理装置であって、
前記処理済み周辺画像は、さらに、
前回選択されたブロック画像に対して前記第１処理が施された処理済みブロック画像と、
前記前回選択されたブロック画像に対応する前記第２種の重複利用画像と、
を含む、画像処理装置。
【請求項７】
請求項１ないし６のいずれかに記載の画像処理装置であって、
前記実行部と前記第１記憶領域とは、第１のＣＰＵの内部に含まれており、
前記第２記憶領域は、前記第１のＣＰＵの外部に設けられた外部メモリである、画像処理装置。
【請求項８】
請求項７記載の画像処理装置であって、さらに、
前記実行部が前記動作（ａ）と前記動作（ｂ）とを繰り返し実行する間に、前記外部メモリにアクセスする第２のＣＰＵを備える、画像処理装置。
【請求項９】
請求項１ないし８のいずれかに記載の画像処理装置であって、
前記第２処理は、フィルタを用いるフィルタ処理である、画像処理装置。
【請求項１０】
第１記憶領域と第２記憶領域とを用いる画像処理方法であって、前記第１記憶領域は、前記第２記憶領域よりも速くアクセスされる、前記画像処理方法は、
元画像から順次選択されるブロック画像に対して画像処理を実行する実行工程を備え、
前記実行工程は、
（ａ）選択された注目ブロック画像に対して第１処理を実行し、処理済み注目ブロック画像を前記第１記憶領域内に書き込む工程と、
（ｂ）前記第１記憶領域に格納され、前記第１処理が施された処理済み対象画像であって、前記処理済み注目ブロック画像と、前記処理済み注目ブロック画像の周辺の処理済み周辺画像と、を含む前記処理済み対象画像に対して第２処理を実行する工程と、
を繰り返し実行する工程を含み、
前記工程（ｂ）は、さらに、
前記処理済み注目ブロック画像の一部を構成し、次回よりも後に選択されるブロック画像のための前記第２処理で利用される前記第１種の重複利用画像を、前記第２記憶領域に書き込む工程を含み、
前記工程（ａ）は、さらに、
前記第２記憶領域から、前回よりも前に選択されたブロック画像のための前記第２処理で既に利用され、前記注目ブロック画像のための前記第２処理で利用される第２種の重複利用画像を読み出して、前記処理済み周辺画像の少なくとも一部として前記第１記憶領域内に書き込む工程を含むことを特徴とする画像処理方法。
【請求項１１】
コンピュータに、第１記憶領域と第２記憶領域とを用いる画像処理を実行させるためのコンピュータプログラムであって、前記第１記憶領域は、前記第２記憶領域よりも速くアクセスされる、前記コンピュータプログラムは、
元画像から順次選択されるブロック画像に対して画像処理を実行する実行機能を前記コンピュータに実現させ、
前記実行機能は、
（ａ）選択された注目ブロック画像に対して第１処理を実行し、処理済み注目ブロック画像を前記第１記憶領域内に書き込む機能と、
（ｂ）前記第１記憶領域に格納され、前記第１処理が施された処理済み対象画像であって、前記処理済み注目ブロック画像と、前記処理済み注目ブロック画像の周辺の処理済み周辺画像と、を含む前記処理済み対象画像に対して第２処理を実行する機能と、
を繰り返し実行する機能を含み、
前記機能（ｂ）は、さらに、
前記処理済み注目ブロック画像の一部を構成し、次回よりも後に選択されるブロック画像のための前記第２処理で利用される前記第１種の重複利用画像を、前記第２記憶領域に書き込む機能を含み、
前記機能（ａ）は、さらに、
前記第２記憶領域から、前回よりも前に選択されたブロック画像のための前記第２処理で既に利用され、前記注目ブロック画像のための前記第２処理で利用される第２種の重複利用画像を読み出して、前記処理済み周辺画像の少なくとも一部として前記第１記憶領域内に書き込む機能を含むことを特徴とするコンピュータプログラム。
【請求項１２】
請求項１１記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理を迅速に実行するための技術に関する。
【背景技術】
【０００２】
画像処理装置は、通常、ＣＰＵと、ＣＰＵの外部に設けられた外部ＲＡＭと、を備えている。そして、ＣＰＵは、外部ＲＡＭにデータを書き込んだり、外部ＲＡＭからデータを読み出したりすることによって、画像処理を実行する。
【０００３】
【特許文献１】特開２００１−２４６８１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、画像処理を迅速に実行することが困難であるという問題があった。これは、外部ＲＡＭに対するアクセス（データの書き込みまたは読み出し）に比較的長い時間を要することに起因する。
【０００５】
この発明は、従来技術における上述の課題を解決するためになされたものであり、画像処理を迅速に実行することを目的とする。
【課題を解決するための手段】
【０００６】
上述の課題の少なくとも一部を解決するため、本発明の装置は、画像処理装置であって、
第１記憶領域と、
第２記憶領域と、
前記第１記憶領域と前記第２記憶領域とを用いて、元画像から順次選択されるブロック画像に対して画像処理を実行するための実行部であって、前記第２記憶領域よりも前記第１記憶領域に対して速くアクセス可能な前記実行部と、
を備え、
前記実行部は、
（ａ）選択された注目ブロック画像に対して第１処理を実行し、処理済み注目ブロック画像を前記第１記憶領域内に書き込む動作と、
（ｂ）前記第１記憶領域に格納され、前記第１処理が施された処理済み対象画像であって、前記処理済み注目ブロック画像と、前記処理済み注目ブロック画像の周辺の処理済み周辺画像と、を含む前記処理済み対象画像に対して第２処理を実行する動作と、
を繰り返し実行し、
前記動作（ｂ）は、さらに、
前記処理済み注目ブロック画像の一部を構成し、次回よりも後に選択されるブロック画像のための前記第２処理で利用される前記第１種の重複利用画像を、前記第２記憶領域に書き込む動作を含み、
前記動作（ａ）は、さらに、
前記第２記憶領域から、前回よりも前に選択されたブロック画像のための前記第２処理で既に利用され、前記注目ブロック画像のための前記第２処理で利用される第２種の重複利用画像を読み出して、前記処理済み周辺画像の少なくとも一部として前記第１記憶領域内に書き込む動作を含むことを特徴とする。
【０００７】
この装置では、実行部は、第１記憶領域に格納され、第１処理が施された処理済み注目ブロック画像を含む処理済み対象画像に対して第２処理を実行する。また、実行部は、他のブロック画像のための第２処理で利用するために、処理済み注目ブロック画像の一部を構成する第１種の重複利用画像を第２記憶領域に書き込む。すなわち、実行部は、処理済み注目ブロック画像の全部を第２記憶領域に書き込まずに済む。このため、アクセスが比較的遅い第２記憶領域に対するアクセス期間および／またはアクセス回数を低減させることができ、この結果、画像処理を迅速に実行することが可能となる。
【０００８】
上記の装置において、
前記実行部は、前記動作（ｂ）の後に、
（ｃ）前記第２処理の処理結果を前記第２記憶領域に書き込む動作を実行することが好ましい。
【０００９】
上記の装置において、
前記元画像は、複数のライン画像をそれぞれ含み、複数のブロック画像をそれぞれ含む複数のグループに区分され、
前記注目ブロック画像は、第１のグループに含まれるブロック画像であり、
前記次回よりも後に選択されるブロック画像は、前記第１のグループに隣接する第２のグループに含まれるブロック画像であり、
前記前回よりも前に選択されたブロック画像は、前記第１のグループに隣接する第３のグループに含まれるブロック画像であってもよい。
【００１０】
上記の装置において、
前記第２記憶領域は、
前記注目ブロック画像に対応する前記第２種の重複利用画像を格納するための重複利用画像格納領域を含み、
前記重複利用画像格納領域は、１つの前記グループを構成する複数のブロック画像に対応する複数の前記第２種の重複利用画像に相当する容量を有することが好ましい。
【００１１】
こうすれば、重複利用画像格納領域の容量を比較的小さくすることができる。
【００１２】
上記の装置において、
前記実行部は、
前記第２記憶領域内の前記第２種の重複利用画像が格納されていた領域に、前記第１種の重複利用画像を書き込むようにしてもよい。
【００１３】
上記の装置において、
前記処理済み周辺画像は、さらに、
前回選択されたブロック画像に対して前記第１処理が施された処理済みブロック画像と、
前記前回選択されたブロック画像に対応する前記第２種の重複利用画像と、
を含むようにしてもよい。
【００１４】
こうすれば、前回選択されたブロック画像に対する画像処理を実行する際に、第１記憶領域内に書き込まれた処理済みブロック画像と第２種の重複利用画像とを、注目ブロック画像に対する画像処理を実行する際に利用することができる。
【００１５】
上記の装置において、
前記実行部と前記第１記憶領域とは、第１のＣＰＵの内部に含まれており、
前記第２記憶領域は、前記第１のＣＰＵの外部に設けられた外部メモリであってもよい。
【００１６】
このように、第１記憶領域が第１のＣＰＵの内部に設けられていれば、画像処理をかなり迅速に実行することができる。
【００１７】
上記の装置において、
前記実行部が前記動作（ａ）と前記動作（ｂ）とを繰り返し実行する間に、前記外部メモリにアクセスする第２のＣＰＵを備えるようにしてもよい。
【００１８】
このように、２以上のＣＰＵが１つの外部メモリにアクセスする場合には、アクセスのタイミングが重なり、待ち時間が発生してしまう場合がある。しかしながら、この装置では、第１のＣＰＵによる外部メモリに対するアクセス期間および／またはアクセス回数が低減されている。このため、待ち時間の発生を抑制することができ、この結果、画像処理を迅速に実行することができる。
【００１９】
上記の装置において、
前記第２処理は、フィルタを用いるフィルタ処理であってもよい。
【００２０】
なお、この発明は、種々の形態で実現することが可能であり、例えば、画像処理装置および方法、該画像処理装置を備える印刷装置および方法、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００２１】
Ａ．第１実施例：
Ａ−１．プリンタの構成：
次に、本発明の実施の形態を実施例に基づき説明する。図１は、プリンタ１００を示す説明図である。プリンタ１００は、制御回路１１０と表示パネル１６０と操作パネル１７０と印刷実行部１８０とインタフェース部（Ｉ／Ｆ部）１９０とを備えている。
【００２２】
Ｉ／Ｆ部１９０は、外部に設けられた種々の機器との間でデータ通信を行う。例えば、Ｉ／Ｆ部１９０は、ケーブルを介してパーソナルコンピュータやデジタルカメラと接続され、印刷対象の画像データを取得する。
【００２３】
制御回路１１０は、ＣＰＵと、ＲＯＭやＲＡＭなどの内部記憶装置と、を備えており、印刷データ生成部１２０として機能する。印刷データ生成部１２０は、取得済み画像データを用いて印刷データを生成する。印刷データ生成部１２０の機能は、ＣＰＵが印刷データ生成プログラムを実行することによって実現される。
【００２４】
印刷実行部１８０は、印刷データに従って、インクジェット方式で印刷媒体（例えば印刷用紙）上に画像を印刷する。
【００２５】
なお、上述の印刷データ生成部１２０の機能を実現するコンピュータプログラムは、コンピュータ読み取り可能な記録媒体に記録された形態で提供されてもよい。このような記録媒体としては、コンピュータが読取り可能な種々の媒体を利用することができ、例えば、フレキシブルディスクや、ＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置等を利用することができる。
【００２６】
Ａ−２．印刷データ生成部の処理内容：
図２は、印刷データ生成部１２０の処理内容を示すフローチャートである。なお、本実施例では、取得済み画像データは、ＪＰＥＧデータである。
【００２７】
ステップＳ１０２では、取得済み画像データ（ＪＰＥＧデータ）に対して伸張処理が実行され、伸張済み画像データ（ＲＧＢデータ）が生成される。なお、本実施例における伸張済み画像が、本発明における元画像に相当する。
【００２８】
ステップＳ１０４では、ノイズ除去処理が実行される。本実施例では、ノイズ除去処理は、ＹＣｂＣｒ変換処理（以下「ＹＣＣ変換処理」とも呼ぶ）と、フィルタ処理と、を含んでいる。ＹＣＣ変換処理は、伸張済み画像データ（ＲＧＢデータ）に対して実行され、フィルタ処理は、ＹＣｂＣｒ変換済み画像データ（ＹＣｂＣｒデータ）に対して実行される。
【００２９】
ＪＰＥＧデータは、その圧縮率が高い場合には、ブロックノイズと呼ばれるブロック状の歪みが発生する。そして、ＹＣｂＣｒデータ（以下「ＹＣＣデータ」と呼ぶ）に対してフィルタ処理を実行する場合には、伸張済みＲＧＢデータに対してフィルタ処理を実行する場合と比較して、ブロックノイズをより低減させることができる。このため、本実施例では、ＹＣＣ変換処理とフィルタ処理とがこの順序で実行される。
【００３０】
ステップＳ１０６では、ノイズ除去済み画像データ（ＹＣＣデータ）に対してＲＧＢ変換処理が実行され、ＲＧＢ変換済み画像データ（ＲＧＢデータ）が生成される。
【００３１】
ステップＳ１０８では、ＲＧＢ変換済み画像データ（ＲＧＢデータ）に対して解像度変換処理が実行され、解像度変換済み画像データ（ＲＧＢデータ）が生成される。
【００３２】
ステップＳ１１０では、解像度変換済み画像データ（ＲＧＢデータ）に対して色変換処理が実行され、色変換済み画像データ（ＣＭＹＫデータ）が生成される。
【００３３】
ステップＳ１１２では、色変換済み画像データ（ＣＭＹＫデータ）に対してハーフトーン処理が実行され、印刷画素毎のドットの形成状態を表すドットデータすなわち印刷データが生成される。
【００３４】
なお、本実施例では、ステップＳ１０４のノイズ除去処理を迅速に実行することができるように工夫されている。
【００３５】
Ａ−３．制御回路の内部構成：
図３は、制御回路１１０の内部構成を示す説明図である。ただし、図３は、ステップＳ１０４のノイズ除去処理を実行するための構成に注目して描かれている。
【００３６】
図示するように、制御回路１１０は、第１ＣＰＵ２１０と、第２ＣＰＵ２２０と、２つのＣＰＵの外部に設けられた外部ＲＡＭ２５０と、を備えている。
【００３７】
第１ＣＰＵ２１０は、図示しない制御ユニットと内蔵ＲＡＭとを備えている。制御ユニットは、内部に格納された伸張処理プログラムに従って、内蔵ＲＡＭと外部ＲＡＭとを制御して、ステップＳ１０２の伸張処理を実行する。
【００３８】
第２ＣＰＵ２２０は、第１ＣＰＵ２１０と同様に、制御ユニット２３０と内蔵ＲＡＭ２４０とを備えている。制御ユニット２３０は、内部に格納されたノイズ除去処理プログラムに従って、内蔵ＲＡＭ２４０と外部ＲＡＭ２５０とを制御して、ステップＳ１０４のノイズ除去処理を実行する。
【００３９】
具体的には、第１ＣＰＵ２１０は、取得済み画像格納領域２５２から取得済み画像データ（ＪＰＥＧデータ）を読み出す。また、第１ＣＰＵ２１０は、取得済み画像データに対して伸張処理を実行し、伸張済み画像データ（ＲＧＢデータ）を伸張済み画像格納領域２５４に書き込む。
【００４０】
一方、第２ＣＰＵ２２０は、伸張済み画像格納領域２５４から伸張済み画像データ（ＲＧＢデータ）を読み出してＹＣＣ変換処理を実行し、ＹＣＣ変換済み画像データ（ＹＣＣデータ）を内蔵ＲＡＭ２４０内のワークバッファ２４２に書き込む。また、第２ＣＰＵ２２０は、ワークバッファ２４２に格納されたＹＣＣ変換済みデータに対してノイズ除去処理を実行し、ノイズ除去済み画像データ（ＹＣＣデータ）をテンポラリ領域２４４に書き込む。その後、第２ＣＰＵ２２０は、ノイズ除去済み画像データをテンポラリ領域２４４から読み出してノイズ除去済み画像格納領域２５８に書き込む。さらに、第２ＣＰＵ２２０は、内蔵ＲＡＭ２４０内のワークバッファ２４２からノイズ除去処理に利用されたＹＣＣ変換済み画像データの一部を読み出し、外部ＲＡＭ２５０内のワークバッファ２５６に書き込む。また、第２ＣＰＵ２２０は、外部ＲＡＭ２５０内のワークバッファ２５６に書き込まれた上記の一部のＹＣＣ変換済み画像データを読み出し、内蔵ＲＡＭ２４０内のワークバッファ２４２に書き込む。
【００４１】
なお、本実施例では、第１ＣＰＵ２１０による伸張処理（ステップＳ１０２）と、第２ＣＰＵ２２０によるノイズ除去処理（ステップＳ１０４）とは、並行して実行される。すなわち、第２ＣＰＵ２２０が外部ＲＡＭ２５０にアクセスしてノイズ除去処理を実行する間に、第１ＣＰＵ２１０は外部ＲＡＭ２５０にアクセスして伸張処理を実行する。
【００４２】
また、本実施例では、内蔵ＲＡＭ２４０はＳＲＡＭで構成されており、外部ＲＡＭ２５０はＤＲＡＭで構成されている。なお、内蔵ＲＡＭ２４０は、ＣＰＵ２２０内部に設けられたキャッシュメモリと異なる。具体的には、キャッシュメモリには最後に読み出されたデータが書き込まれるが、内蔵ＲＡＭ２４０には制御ユニット２３０によって指定されたデータが書き込まれる点で異なる。
【００４３】
Ａ−４．ノイズ除去処理の概要：
図４は、ノイズ除去処理の概要を示す説明図である。なお、図４では、伸張済み画像データ（ＲＧＢデータ）によって表される元画像が示されている。
【００４４】
本実施例では、元画像に対するノイズ除去処理は、ブロック画像毎に実行される。具体的には、図４に示す元画像は、複数のライン画像をそれぞれ含む複数のライングループに区分され、各ライングループは、複数のブロック画像に区分される。そして、元画像内の上端から下端に向かってライングループが順次選択され、各グループ内の左端から右端に向かってブロック画像が順次選択される。なお、元画像のサイズは（Ｖ×Ｈ）画素である。また、各ライングループのサイズは（６４×Ｈ）画素であり、各ブロック画像のサイズは（６４×３２）画素である。なお、各ブロック画像の垂直方向のサイズは、各ライングループの垂直方向のサイズと等しい。
【００４５】
前述のように、ノイズ除去処理は、ＹＣＣ変換処理と、フィルタ処理と、を含んでいる。ＹＣＣ変換処理は、選択されたブロック画像（注目ブロック画像）に対して施され、フィルタ処理は、ＹＣＣ変換済みのブロック画像（変換済み注目ブロック画像）に対して施される。フィルタ処理は、フィルタＦＬを変換済み注目ブロック画像内で順次走査させることによって実行される。フィルタとしては、平均値フィルタやメディアンフィルタなどの平滑化フィルタを利用することができる。なお、フィルタＦＬのサイズは、（２１×２１）画素であり、各ブロック画像のサイズよりも小さく設定されている。
【００４６】
図５は、図４の一部を拡大して示す説明図である。図５では、（ｍ，ｎ）番目のブロック画像ＢＬ(m,n) が、換言すれば、ｍ番目のライングループ内のｎ番目のブロック画像ＢＬ(m,n) が、注目ブロック画像として選択されている。
【００４７】
図５に示すように、各ブロック画像は、上方サブ画像と下方サブ画像とに区分される。例えば、注目ブロック画像ＢＬ(m,n) は、上方サブ画像ＳＵ(m,n) と下方サブ画像ＳＬ(m,n) とに区分される。各ブロック画像の上方サブ画像のサイズは（４４×３２）画素であり、下方サブ画像のサイズは（２０×３２）画素である。
【００４８】
ところで、変換済み注目ブロック画像を構成する全画素に対してフィルタ処理を実行する場合には、変換済み注目ブロック画像と、その周辺の変換済み周辺画像と、が必要となる。そこで、本実施例では、注目ブロック画像とその周辺の周辺画像とを含む対象画像に対してＹＣＣ変換処理を実行し、変換済み対象画像が内蔵ワークバッファ２４２に格納された状態で、変換済み対象画像に対するフィルタ処理が実行される。
【００４９】
具体的には、本実施例では、注目ブロック画像ＢＬ(m,n) と周辺画像ＰＰ(m,n) とを含む対象画像ＴＩ(m,n) に対してＹＣＣ変換処理が実行された後に、フィルタ処理が実行される。なお、周辺画像ＰＰ(m,n) は、以下の４つのサブ画像を含んでいる。
【００５０】
ａ）注目ブロック画像ＢＬ(m,n) の左側に隣接するブロック画像ＢＬ(m,n-1) に含まれる２つのサブ画像ＳＵ(m,n-1) ，ＳＬ(m,n-1) 。
ｂ）注目ブロック画像ＢＬ(m,n) の左上側に隣接するブロック画像ＢＬ(m-1,n-1) に含まれる下方サブ画像ＳＬ(m-1,n-1) 。
ｃ）注目ブロック画像ＢＬ(m,n) の上側に隣接するブロック画像ＢＬ(m-1,n) に含まれる下方サブ画像ＳＬ(m-1,n) 。
【００５１】
Ａ−５．ノイズ除去処理の具体的な内容：
図６は、ステップＳ１０４（図２）の具体的な処理内容を示すフローチャートである。なお、ステップＳ２０２〜ステップＳ２１０の処理は、第２ＣＰＵ２２０によって繰り返し実行される。
【００５２】
図７は、（ｍ，ｎ）番目の注目ブロック画像ＢＬ(m,n) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【００５３】
図７（Ａ）は、外部ＲＡＭ２５０内の伸張済み画像格納領域２５４に格納される画像データを示している。図示するように、伸張済み画像格納領域２５４は、１つのライングループのサイズと等しい（６４×Ｈ）画素分の容量を有している。図７（Ａ）では、伸張済み画像格納領域２５４には、注目ブロック画像ＢＬ(m,n) を含む複数のブロック画像が格納されている。
【００５４】
なお、後述するように、第２ＣＰＵ２２０は、伸張済み画像格納領域２５４からブロック画像を順次読み出す。このため、第１ＣＰＵ２１０は、取得済み画像格納領域２５２から、取得済み画像の一部の部分画像を順次読み出して伸張処理を実行し、伸張済み部分画像を伸張済み画像格納領域２５４内に順次書き込む。これにより、第２ＣＰＵ２２０は、第１ＣＰＵ２１０による伸張処理を待たずに、伸張済み画像格納領域２５４からブロック画像を順次読み出すことができる。
【００５５】
図７（Ｂ）は、外部ＲＡＭ２５０内のワークバッファ（以下「外部ワークバッファ」とも呼ぶ）２５６に格納される画像データを示している。図示するように、外部ワークバッファ２５６は、１つのライングループに含まれる複数の下方サブ画像のサイズと等しい（２０×Ｈ）画素分の容量を有している。なお、外部ワークバッファ２５６の容量は、フィルタＦＬの垂直方向のサイズをｆとすると、（（ｆ−１）×Ｈ）画素に設定されることが好ましい。こうすれば、外部ワークバッファ２５６の容量を比較的小さくすることができる。図７（Ｂ）では、外部ワークバッファには、変換済み下方サブ画像ＳＬｃ(m-1,n) を含む複数の下方サブ画像が格納されている。変換済み下方サブ画像ＳＬｃ(m-1,n) は、注目ブロック画像ＢＬ(m,n) の上側に隣接するブロック画像ＢＬ(m-1,n) に含まれる下方サブ画像ＳＬ(m-1,n) に対してＹＣＣ変換処理が施された画像である。
【００５６】
図７（Ｃ）は、内蔵ＲＡＭ２４０内のワークバッファ（以下「内蔵ワークバッファ」とも呼ぶ）２４２に格納される画像データを示している。図示するように、内蔵ワークバッファ２４２は、（８４×６４）画素分の容量を有している。内蔵ワークバッファ２４２には、図５に示す対象画像ＴＩ(m,n) に対してＹＣＣ変換処理が施された変換済み対象画像ＴＩｃ(m,n) が格納されている。変換済み対象画像ＴＩｃ(m,n) は、変換済み注目ブロック画像ＢＬｃ(m,n) と、変換済み周辺画像ＰＰｃ(m,n) と、を含んでいる。変換済み周辺画像は、４つの変換済みサブ画像ＳＬｃ(m-1,n-1) ，ＳＵｃ(m,n-1) ，ＳＬｃ(m,n-1) ，ＳＬｃ(m-1,n) を含んでいる。
【００５７】
ステップＳ２０２（図６）では、外部ＲＡＭ２５０から注目ブロック画像が読み出され、注目ブロック画像に対してＹＣＣ変換が実行された後に、変換済み注目ブロック画像が内蔵ＲＡＭ２４０に書き込まれる。具体的には、図７（Ａ），（Ｃ）に示すように、伸張済み画像格納領域２５４から、２つのサブ画像ＳＵ(m,n) ，ＳＬ(m,n) を含む注目ブロック画像ＢＬ(m,n) が読み出されて、ＹＣＣ変換処理が実行される。そして、２つの変換済みサブ画像ＳＵｃ(m,n) ，ＳＬｃ(m,n) を含む変換済み注目ブロック画像ＢＬｃ(m,n) が内蔵ワークバッファ２４２内の右下領域に書き込まれる。
【００５８】
ステップＳ２０４では、外部ＲＡＭ２５０から注目ブロック画像用の変換済み下方サブ画像が読み出され、内蔵ＲＡＭ２４０に書き込まれる。ここで、注目ブロック画像用の変換済み下方サブ画像は、注目ブロック画像のためのフィルタ処理で利用される予定の画像であり、本発明における第２種の重複利用画像に相当する。また、該変換済み下方サブ画像は、他のブロック画像のためのフィルタ処理で既に利用された画像であり、他のブロック画像に含まれる下方サブ画像に対してＹＣＣ変換処理が施された画像である。なお、他のブロック画像は、注目ブロック画像の上側に隣接し、前回よりも前に選択されたブロック画像である。具体的には、ステップＳ２０４では、図７（Ｂ），（Ｃ）に示すように、外部ワークバッファ２５６から、注目ブロック画像ＢＬ(m,n) 用の変換済み下方サブ画像ＳＬｃ(m-1,n) が読み出されて、内蔵ワークバッファ２４２内の右上領域に書き込まれる。
【００５９】
なお、ステップＳ２０２，Ｓ２０４が実行される際には、内蔵ワークバッファ２４２内の左側領域には、３つの変換済みサブ画像ＳＬｃ(m-1,n-1) ，ＳＵｃ(m,n-1) ，ＳＬｃ(m,n-1) が既に格納されている。該３つの変換済みサブ画像は、注目ブロック画像ＢＬ(m,n) の左側に隣接する前回選択されたブロック画像ＢＬ(m,n-1) を含む対象画像ＴＩ(m,n-1) のためのフィルタ処理に利用された画像である。
【００６０】
ステップＳ２０６では、内蔵ＲＡＭ２４０内の変換済み対象画像に対してフィルタ処理が実行される。具体的には、内蔵ワークバッファ２４２に格納された変換済み対象画像ＴＩｃ(m,n) に対してフィルタ処理が実行され、ノイズ除去済み対象画像が、内蔵ＲＡＭ２４０内のテンポラリ領域２４４に書き込まれる。
【００６１】
ステップＳ２０８では、ノイズ除去済み対象画像が外部ＲＡＭ内に保存される。具体的には、テンポラリ領域２４４からノイズ除去済み対象画像が読み出され、ノイズ除去済み画像格納領域２５８に書き込まれる。
【００６２】
ステップＳ２１０では、内蔵ＲＡＭ２４０から他のブロック画像用の変換済み下方サブ画像が読み出され、外部ＲＡＭ２５０に書き込まれる。ここで、他のブロック画像用の変換済み下方サブ画像は、他のブロック画像のためのフィルタ処理で利用される予定の画像であり、本発明における第１種の重複利用画像に相当する。該変換済み下方サブ画像は、注目ブロック画像のためのフィルタ処理で利用された画像であり、注目ブロック画像に含まれる下方サブ画像に対してＹＣＣ変換処理が施された画像である。なお、他のブロック画像は、注目ブロック画像の下側に隣接し、次回よりも後に選択されるブロック画像である。具体的には、ステップＳ２１０では、図７（Ｂ），（Ｃ）に示すように、内蔵ワークバッファ２４２から、他のブロック画像ＢＬ(m+1,n) 用の変換済み下方サブ画像ＳＬｃ(m,n) が読み出されて、外部ワークバッファ２５６内に書き込まれる。
【００６３】
本実施例では、変換済み下方サブ画像ＳＬｃ(m,n) は、ステップＳ２０４で外部ワークバッファ２５６から読み出された変換済み下方サブ画像ＳＬｃ(m-1,n) が格納されていた領域に書き込まれる。すなわち、他のブロック画像ＢＬ(m+1,n) 用の変換済み下方サブ画像ＳＬｃ(m,n) は、注目ブロック画像ＢＬ(m,n) 用の変換済み下方サブ画像ＳＬｃ(m-1,n) に代えて、外部ワークバッファ２５６内に格納される。
【００６４】
以上のように、（ｍ，ｎ）番目のブロック画像に関する処理が終了すると、（ｍ，ｎ＋１）番目のブロック画像に関する処理が実行される。
【００６５】
図８は、（ｍ，ｎ＋１）番目の注目ブロック画像ＢＬ(m,n+1) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【００６６】
ステップＳ２０２では、図８（Ａ），（Ｃ）に示すように、伸張済み画像格納領域２５４から、２つのサブ画像ＳＵ(m,n+1) ，ＳＬ(m,n+1) を含む注目ブロック画像ＢＬ(m,n+1) が読み出されて、ＹＣＣ変換処理が実行される。そして、２つの変換済みサブ画像ＳＵｃ(m,n+1) ，ＳＬｃ(m,n+1) を含む変換済み注目ブロック画像ＢＬｃ(m,n+1) が内蔵ワークバッファ２４２内の右下領域に書き込まれる。
【００６７】
ステップＳ２０４では、図８（Ｂ），（Ｃ）に示すように、外部ワークバッファ２５６から、注目ブロック画像ＢＬ(m,n+1) 用の変換済み下方サブ画像ＳＬｃ(m-1,n+1) が読み出されて、内蔵ワークバッファ２４２内の右上領域に書き込まれる。
【００６８】
なお、ステップＳ２０２，Ｓ２０４が実行される際には、内蔵ワークバッファ２４２内の左側領域には、３つの変換済みサブ画像ＳＬｃ(m-1,n) ，ＳＵｃ(m,n) ，ＳＬｃ(m,n) が既に格納されている。該３つの変換済みサブ画像は、注目ブロック画像ＢＬ(m,n+1) の左側に隣接する前回選択されたブロック画像ＢＬ(m,n) を含む対象画像ＴＩ(m,n) のためのフィルタ処理に利用された画像である。すなわち、該３つの変換済みサブ画像は、図７（Ｃ）において内蔵ワークバッファ２４２内の右側領域に格納されていた画像である。この説明から分かるように、第２ＣＰＵ２２０は、ステップＳ２０２，Ｓ２０４に先行して、内蔵ワークバッファ２４２の右側領域に格納されていた３つの変換済みサブ画像を左側領域に移動（コピー）する。
【００６９】
ステップＳ２０６では、内蔵ワークバッファ２４２に格納された変換済み対象画像ＴＩｃ(m,n+1) に対してフィルタ処理が実行され、ノイズ除去済み対象画像が、内蔵ＲＡＭ２４０内のテンポラリ領域２４４に書き込まれる。
【００７０】
ステップＳ２０８では、テンポラリ領域２４４からノイズ除去済み対象画像が読み出され、ノイズ除去済み画像格納領域２５８に書き込まれる。
【００７１】
ステップＳ２１０では、図８（Ｂ），（Ｃ）に示すように、内蔵ワークバッファ２４２から、他のブロック画像ＢＬ(m+1,n+1) 用の変換済み下方サブ画像ＳＬｃ(m,n+1) が読み出されて、外部ワークバッファ２５６内の注目ブロック画像ＢＬ(m,n+1) 用の変換済み下方サブ画像ＳＬｃ(m-1,n+1) が格納されていた領域に書き込まれる。
【００７２】
このようにして、ｍ番目のライングループを構成するすべてのブロック画像に関する処理が終了すると、（ｍ＋１）番目のライングループを構成する各ブロック画像に関する処理が実行される。
【００７３】
図９は、（ｍ＋１，ｎ）番目の注目ブロック画像ＢＬ(m+1,n) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【００７４】
ステップＳ２０２では、図９（Ａ），（Ｃ）に示すように、伸張済み画像格納領域２５４から、２つのサブ画像ＳＵ(m+1,n) ，ＳＬ(m+1,n) を含む注目ブロック画像ＢＬ(m+1,n) が読み出されて、ＹＣＣ変換処理が実行される。そして、２つの変換済みサブ画像ＳＵｃ(m+1,n) ，ＳＬｃ(m+1,n) を含む変換済み注目ブロック画像ＢＬｃ(m+1,n) が内蔵ワークバッファ２４２内の右下領域に書き込まれる。
【００７５】
ステップＳ２０４では、図９（Ｂ），（Ｃ）に示すように、外部ワークバッファ２５６から、注目ブロック画像ＢＬ(m+1,n) 用の変換済み下方サブ画像ＳＬｃ(m,n) が読み出されて、内蔵ワークバッファ２４２内の右上領域に書き込まれる。該変換済み下方サブ画像ＳＬｃ(m,n) は、図７で外部ワークバッファ２５６内に書き込まれた画像である。
【００７６】
なお、ステップＳ２０２，Ｓ２０４が実行される際には、内蔵ワークバッファ２４２内の左側領域には、３つの変換済みサブ画像ＳＬｃ(m,n-1)  ，ＳＵｃ(m+1,n-1) ，ＳＬｃ(m+1,n-1) が既に格納されている。該３つの変換済みサブ画像は、注目ブロック画像ＢＬ(m+1,n) の左側に隣接する前回選択されたブロック画像ＢＬ(m+1,n-1) を含む対象画像ＴＩ(m+1,n-1) のためのフィルタ処理に利用された画像である。
【００７７】
ステップＳ２０６では、内蔵ワークバッファ２４２に格納された変換済み対象画像ＴＩｃ(m+1,n) に対してフィルタ処理が実行され、ノイズ除去済み対象画像が、内蔵ＲＡＭ２４０内のテンポラリ領域２４４に書き込まれる。
【００７８】
ステップＳ２０８では、テンポラリ領域２４４からノイズ除去済み対象画像が読み出され、ノイズ除去済み画像格納領域２５８に書き込まれる。
【００７９】
ステップＳ２１０では、図９（Ｂ），（Ｃ）に示すように、内蔵ワークバッファ２４２から、他のブロック画像ＢＬ(m+2,n) 用の変換済み下方サブ画像ＳＬｃ(m+1,n) が読み出されて、外部ワークバッファ２５６内の注目ブロック画像ＢＬ(m+1,n) 用の変換済み下方サブ画像ＳＬｃ(m,n) が格納されていた領域に書き込まれる。
【００８０】
以上のように、（ｍ＋１，ｎ）番目のブロック画像に関する処理が終了すると、（ｍ＋１，ｎ＋１）番目のブロック画像に関する処理が実行される。
【００８１】
図１０は、（ｍ＋１，ｎ＋１）番目の注目ブロック画像ＢＬ(m+1,n+1) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【００８２】
ステップＳ２０２では、図１０（Ａ），（Ｃ）に示すように、伸張済み画像格納領域２５４から、２つのサブ画像ＳＵ(m+1,n+1) ，ＳＬ(m+1,n+1) を含む注目ブロック画像ＢＬ(m+1,n+1) が読み出されて、ＹＣＣ変換処理が実行される。そして、２つの変換済みサブ画像ＳＵｃ(m+1,n+1) ，ＳＬｃ(m+1,n+1) を含む変換済み注目ブロック画像ＢＬｃ(m+1,n+1) が内蔵ワークバッファ２４２内の右下領域に書き込まれる。
【００８３】
ステップＳ２０４では、図１０（Ｂ），（Ｃ）に示すように、外部ワークバッファ２５６から、注目ブロック画像ＢＬ(m+1,n+1) 用の変換済み下方サブ画像ＳＬｃ(m,n+1) が読み出されて、内蔵ワークバッファ２４２内の右上領域に書き込まれる。該変換済み下方サブ画像ＳＬｃ(m,n+1) は、図８で外部ワークバッファ２５６内に書き込まれた画像である。
【００８４】
なお、ステップＳ２０２，Ｓ２０４が実行される際には、内蔵ワークバッファ２４２内の左側領域には、３つの変換済みサブ画像ＳＬｃ(m,n) ，ＳＵｃ(m+1,n) ，ＳＬｃ(m+1,n) が既に格納されている。該３つの変換済みサブ画像は、注目ブロック画像ＢＬ(m+1,n+1) の左側に隣接する前回選択されたブロック画像ＢＬ(m+1,n) を含む対象画像ＴＩ(m+1,n) のためのフィルタ処理に利用された画像であり、図９（Ｃ）において内蔵ワークバッファ２４２内の右側領域に格納されていた画像である。
【００８５】
ステップＳ２０６では、内蔵ワークバッファ２４２に格納された変換済み対象画像ＴＩｃ(m+1,n+1) に対してフィルタ処理が実行され、ノイズ除去済み対象画像が、内蔵ＲＡＭ２４０内のテンポラリ領域２４４に書き込まれる。
【００８６】
ステップＳ２０８では、テンポラリ領域２４４からノイズ除去済み対象画像が読み出され、ノイズ除去済み画像格納領域２５８に書き込まれる。
【００８７】
ステップＳ２１０では、図１０（Ｂ），（Ｃ）に示すように、内蔵ワークバッファ２４２から、他のブロック画像ＢＬ(m+2,n+1) 用の変換済み下方サブ画像ＳＬｃ(m+1,n+1) が読み出されて、外部ワークバッファ２５６内の注目ブロック画像ＢＬ(m+1,n+1) 用の変換済み下方サブ画像ＳＬｃ(m,n+1) が格納されていた領域に書き込まれる。
【００８８】
このようにして、（ｍ＋１）番目のライングループを構成するすべてのブロック画像に関する処理が終了すると、（ｍ＋２）番目以降のライングループを構成する各ブロック画像に関する処理が実行される。
【００８９】
以上説明したように、本実施例では、第２ＣＰＵ２２０（より具体的には制御ユニット２３０）は、選択された注目ブロック画像ＢＬ(m,n) に対してＹＣＣ変換処理を実行し、変換済み注目ブロック画像ＢＬｃ(m,n) を内蔵ＲＡＭ２４０に書き込む（ステップＳ２０２）。次に、第２ＣＰＵ２２０は、外部ＲＡＭ２５０から、他のブロック画像ＢＬ(m-1,n) のためのフィルタ処理で既に利用され、注目ブロック画像ＢＬ(m,n) のためのフィルタ処理で利用される予定の変換済み下方サブ画像ＳＬｃ(m-1,n) を読み出して、変換済み周辺画像ＰＰｃ(m,n) の一部として内蔵ＲＡＭ２４０に書き込む（ステップＳ２０４）。さらに、第２ＣＰＵ２２０は、内蔵ＲＡＭ２４０に格納された変換済み注目ブロック画像ＢＬｃ(m,n) と変換済み周辺画像ＰＰｃ(m,n) とを含む変換済み対象画像ＴＩｃ(m,n) に対してフィルタ処理を実行する（ステップＳ２０６）。そして、第２ＣＰＵ２２０は、変換済み注目ブロック画像ＢＬｃ(m,n) の一部を構成し、他のブロック画像ＢＬ(m+1,n) のためのフィルタ処理で利用される予定の変換済み下方サブ画像ＳＬｃ(m,n) を、外部ＲＡＭ２５０に書き込む（ステップＳ２１０）。
【００９０】
この構成により、図７〜図１０で説明したように、元画像（伸張済み画像）に対してＹＣＣ変換処理が施された変換済み元画像のうちの一部の変換済み画素群のみが外部ＲＡＭ２５０に書き込まれる。具体的には、図７〜図１０に示すように、外部ワークバッファ２５６には、各変換済みブロック画像に含まれる変換済み下方サブ画像のみが格納される。また、各ブロック画像に対するノイズ除去処理のために、上記の一部の変換済み画素群のみが外部ＲＡＭ２５０から読み出される。
【００９１】
このため、変換済み元画像のすべての画素が外部ＲＡＭに書き込まれたり読み出されたりする場合と比較して、アクセスが比較的遅い外部ＲＡＭ２５０に対するアクセス期間および／またはアクセス回数を低減させることができ、この結果、ノイズ除去処理を迅速に実行することが可能となる。具体的には、１つのライングループを構成する６４個のライン画像のうちの２０個のライン画像に対応する一部の変換済み画素群のみを外部ＲＡＭに書き込んだり読み出したりすれば済むため、アクセス期間および／またはアクセス回数を約１／３に低減することができる。
【００９２】
また、本実施例では、第２ＣＰＵ２２０がノイズ除去処理を実行するために外部ＲＡＭ２５０にアクセスするのと並行して、第１ＣＰＵ２１０も伸張処理を実行するために外部ＲＡＭ２５０にアクセスする。このように、２以上のＣＰＵが１つのメモリにアクセスする場合には、アクセスのタイミングが重なり得る。このような場合には、待ち時間が発生し、この結果、ノイズ除去処理の完了までに比較的長い期間を要してしまう。しかしながら、本実施例では、第２ＣＰＵ２２０による外部ＲＡＭ２５０に対するアクセス期間および／またはアクセス回数が低減されているため、２つのＣＰＵ２１０，２２０によるアクセスタイミングの重なりを低減させることができる。すなわち、待ち時間の発生を抑制することができ、この結果、ノイズ除去処理を迅速に実行することができる。
【００９３】
Ｂ．第２実施例：
第１実施例では、内蔵ワークバッファ２４２は、図７に示すように、（８４×６４）画素分の容量を有しているが、内蔵ワークバッファの容量は変更されてもよい。本実施例では、以下の観点から、該容量が変更されている。
【００９４】
注目ブロック画像ＢＬ(m,n) を構成する全画素に対応する全ノイズ除去済み画素は、図７〜図１０で説明した４つのブロック画像ＢＬ(m,n) ，ＢＬ(m,n+1) ，ＢＬ(m+1,n) ，ＢＬ(m+1,n+1) に対するノイズ除去処理が完了することによって、生成される。
【００９５】
具体的には、変換済み上方サブ画像ＳＵｃ(m,n) は、図７では、内蔵ワークバッファ２４２内の右中央領域に格納される。このため、図７では、該画像ＳＵｃ(m,n) の左側部分に対応するノイズ除去済み画素群が生成される。また、変換済み上方サブ画像ＳＵｃ(m,n) は、図８では、内蔵ワークバッファ２４２内の左中央領域に格納される。このため、図８では、該画像ＳＵｃ(m,n) の右側部分に対応するノイズ除去済み画素群が生成される。すなわち、図７，図８でのノイズ除去処理によって、変換済み上方サブ画像ＳＵｃ(m,n) の全画素に対応する全ノイズ除去済み画素群が得られる。
【００９６】
一方、変換済み下方サブ画像ＳＬｃ(m,n) は、図７では、内蔵ワークバッファ２４２内の右下領域に格納される。このため、図７では、該画像ＳＵｃ(m,n) の左上部分に対応するノイズ除去済み画素群が生成される。また、変換済み下方サブ画像ＳＬｃ(m,n) は、図８では、内蔵ワークバッファ２４２内の左下領域に格納される。このため、図８では、該画像ＳＵｃ(m,n) の右上部分に対応するノイズ除去済み画素群が生成される。すなわち、図７，図８でのノイズ除去処理によって、変換済み下方サブ画像ＳＬｃ(m,n) の上側部分に対応するノイズ除去済み画素群が生成される。同様に、図９，図１０でのノイズ除去処理によって、変換済み下方サブ画像ＳＬｃ(m,n) の下側部分に対応するノイズ除去済み画素群が生成される。このように、図７〜図１０でのノイズ除去処理によって、変換済み下方サブ画像ＳＬｃ(m,n) の全画素に対応するノイズ除去済み画素群が生成される。
【００９７】
しかしながら、第１実施例では、ノイズ除去処理に不要な変換済み画素群が、重複して内蔵ワークバッファ２４２内に格納されている。例えば、図７では、変換済み上方サブ画像ＳＬｃ(m,n) に含まれる右端部分（（２０×１０）画素部分）に対応するノイズ除去済み画素群は生成されない。そして、図８では、該右端部分（（２０×１０）画素部分）に対応するノイズ除去済み画素群が生成される。ただし、該右端部分に対応するノイズ除去済み画素群を生成するためには、該右端部分の左側に隣接する中央部分（（２０×１０）画素部分）さえ、内蔵ワークバッファ２４２内に存在すればよい。換言すれば、変換済み上方サブ画像ＳＬｃ(m,n) に含まれる左端部分（（２０×１２）画素部分）は、ノイズ除去処理に不要な変換済み画素群である。
【００９８】
そこで、本実施例では、ノイズ除去処理に不要な変換済み画素群が、重複して内蔵ワークバッファ２４２内に格納されるのを抑制するために、内蔵ワークバッファの容量が小さく変更されている。
【００９９】
図１１は、第２実施例における内蔵ワークバッファ２４２Ｂを示す説明図である。図示するように、本実施例では、内蔵ワークバッファ２４２Ｂは、（８４×５２）画素分の容量を有している。
【０１００】
図１１は、図７（Ｃ）に対応している。すなわち、図１１に示す内蔵ワークバッファ２４２Ｂには、処理済み注目ブロック画像ＢＬｃ(m,n) を含む変換済み対象画像ＴＩｃ’(m,n) が格納されている。
【０１０１】
変換済み対象画像ＴＩｃ’(m,n) は、第１実施例と同様に、変換済み周辺画像ＰＰｃ’(m,n) を含んでいるが、変換済み周辺画像ＰＰｃ’(m,n) の一部が変更されている。
【０１０２】
具体的には、内蔵ワークバッファ２４２Ｂ内の左側領域には、図７（Ｃ）に示す３つの変換済みサブ画像ＳＬｃ(m-1,n-1) ，ＳＵｃ(m,n-1) ，ＳＬｃ(m,n-1) の一部のみが格納されている。具体的には、図７（Ｃ）に示す変換済みサブ画像ＳＬｃ(m-1,n-1) は、左側部分サブ画像ＳＬＬｃ(m-1,n-1) と右側部分サブ画像ＳＬＲｃ(m-1,n-1) とに区分される。他の変換済みサブ画像ＳＵｃ(m,n-1) ，ＳＬｃ(m,n-1) についても同様である。そして、内蔵ワークバッファ２４２Ｂの左側領域には、３つの右側部分サブ画像ＳＬＲｃ(m-1,n-1) ，ＳＵＲｃ(m,n-1) ，ＳＬＲｃ(m,n-1) のみが格納され、３つの左側部分サブ画像ＳＬＬｃ(m-1,n-1) ，ＳＵＬｃ(m,n-1) ，ＳＬＬｃ(m,n-1) は格納されない。
【０１０３】
このように、内蔵ワークバッファ２４２Ｂに格納される変換済み対象画像ＴＩｃ’(m,n) が（８４×５２）画素である場合にも、図６に示すノイズ除去処理を繰り返し実行することによって、注目ブロック画像ＢＬ(m,n) を構成する全画素に対応する全ノイズ除去済み画素を得ることができる。
【０１０４】
ただし、第１実施例のように、内蔵ワークバッファ２４２の水平方向のサイズが、２N 画素（Ｎは整数）である場合には、第２ＣＰＵ２２０は、変換済み対象画像を扱い易いという利点がある。
【０１０５】
一般には、ブロック画像のサイズを（ｂｖ×ｂｈ）画素として、フィルタのサイズを（ｆ×ｆ）画素とすると、内蔵ワークバッファは、少なくとも（（ｂｖ＋ｆ−１）×（ｂｈ＋ｆ−１））画素分の容量を有していればよい。
【０１０６】
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することが可能であり、例えば次のような変形も可能である。
【０１０７】
（１）上記実施例では、元画像の中央領域から選択される注目ブロック画像に対するノイズ除去処理について説明したが、ノイズ除去処理は、元画像の端部領域から選択される注目ブロック画像に対しても実行可能である。
【０１０８】
例えば、元画像の左端領域から注目ブロック画像が選択される場合には、変換済み周辺画像は、変換済み注目ブロック画像の左端の１列の画素群が複数回コピーされた画素群を含んでいればよい。また、元画像の上端領域から注目ブロック画像が選択される場合には、変換済み周辺画像は、変換済み注目ブロック画像の上端の１行の画素群が複数回コピーされた画素群を含んでいればよい。
【０１０９】
あるいは、元画像の端部領域に対しては、ノイズ除去処理が実行されなくてもよい。
【０１１０】
（２）上記実施例では、次回に選択されるブロック画像に対してノイズ除去処理が実行される場合には、内蔵ワークバッファの右側領域に格納されていた３つの変換済みサブ画像は、左側領域にコピーされているが、コピーされずに用いられてもよい。ただし、この場合には、内蔵ワークバッファ内で変換済み対象画像が連続しない。したがって、この場合には、第２ＣＰＵ２２０は、アドレスを指定することによって、連続しない変換済み対象画像からフィルタサイズに対応する画素群を選択して、フィルタ処理を実行すればよい。このようにすれば、内蔵ワークバッファ内で変換済み注目ブロック画像をコピーせずに済むため、ノイズ除去処理をより迅速に実行することができる可能性がある。
【０１１１】
（３）上記実施例（図６）では、第２ＣＰＵ２２０は、変換済み注目ブロック画像に対するフィルタ処理を実行した後に、他のブロック画像用の変換済み下方サブ画像を、外部ＲＡＭ２５０に書き込んでいるが、これに代えて、フィルタ処理を実行する前に、外部ＲＡＭ２５０に書き込むようにしてもよい。
【０１１２】
また、上記実施例（図６）では、第２ＣＰＵ２２０は、他のブロック画像用の変換済み下方サブ画像を、内蔵ＲＡＭ２４０に書き込んだ後に、外部ＲＡＭに書き込んでいるが、これに代えて、内蔵ＲＡＭ２４０に書き込む前に、あるいは、内蔵ＲＡＭ２４０に書き込むのと同時に、外部ＲＡＭ２５０に書き込むようにしてもよい。
【０１１３】
（４）上記実施例（図２）では、外部ＲＡＭ２５０は、４つの格納領域２５２，２５４，２５６，２５８を含んでいるが、外部ワークバッファ２５６の３つの格納領域２５２，２５４，２５８は、他の外部メモリに含まれていてもよい。
【０１１４】
また、上記実施例では、内蔵ＲＡＭ２４０と外部ＲＡＭ２５０とが用いられているが、これに代えて、他の２つのメモリが用いられてもよい。例えば、ＣＰＵ内部に設けられた２つの内蔵メモリが利用されてもよいし、ＣＰＵ外部に設けられた２つの外部メモリが利用されてもよい。ただし、上記実施例のように一方のメモリがＣＰＵ内部に設けられていれば、ノイズ除去処理をかなり迅速に実行することができる。
【０１１５】
一般には、画像処理装置は、アクセスの比較的遅い第１記憶領域と、アクセスの比較的速い第２記憶領域と、を備えていればよい。なお、「アクセスが速い」とは、制御ユニットが命令を出してから、データが読み出されたり書き込まれたりするまでに要する時間が短いことを意味する。
【０１１６】
（５）上記実施例では、本発明は、ＹＣＣ変換処理とフィルタ処理とを含むノイズ除去処理（ステップＳ１０４）に適用されているが、他の画像処理に適用されてもよい。例えば、色変換処理（ステップＳ１１０）と、誤差拡散法を用いたハーフトーン処理（ステップＳ１１２）と、を含む画像処理に適用されてもよい。
【０１１７】
一般には、画像処理装置は、選択された注目ブロック画像の周辺の画素群を利用しない第１処理と、選択された注目ブロック画像の周辺の画素群を利用する第２処理と、を実行すればよい。
【０１１８】
（６）上記実施例では、画像処理装置としてインクジェット方式のプリンタが利用されているが、これに代えて、他の方式のプリンタが利用されてもよい。例えば、ドットインパクト方式のプリンタやレーザプリンタなどが利用されてもよい。
【０１１９】
また、上記実施例では、画像処理装置としてプリンタ１００が利用されているが、これに代えて、プリンタ、スキャナ、コピーなどの機能を有する複合機が利用されてもよい。なお、この場合には、元画像として、スキャナによって得られた画像が利用されてもよい。
【０１２０】
さらに、上記実施例では、画像処理装置としてプリンタ１００が利用されているが、これに代えて、コンピュータとプリンタとが利用されてもよい。この場合には、例えば、コンピュータが図２のステップＳ１０２〜Ｓ１１２を実行してプリンタが印刷のみを実行するようにしてもよいし、コンピュータが図２のステップＳ１０２〜Ｓ１０６を実行してプリンタがステップＳ１０８〜Ｓ１１２および印刷を実行するようにしてもよい。なお、これらの場合には、コンピュータが本発明の画像処理装置に相当する。
【図面の簡単な説明】
【０１２１】
【図１】プリンタ１００を示す説明図である。
【図２】印刷データ生成部１２０の処理内容を示すフローチャートである。
【図３】制御回路１１０の内部構成を示す説明図である。
【図４】ノイズ除去処理の概要を示す説明図である。
【図５】図４の一部を拡大して示す説明図である。
【図６】ステップＳ１０４（図２）の具体的な処理内容を示すフローチャートである。
【図７】（ｍ，ｎ）番目の注目ブロック画像ＢＬ(m,n) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【図８】（ｍ，ｎ＋１）番目の注目ブロック画像ＢＬ(m,n+1) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【図９】（ｍ＋１，ｎ）番目の注目ブロック画像ＢＬ(m+1,n) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【図１０】（ｍ＋１，ｎ＋１）番目の注目ブロック画像ＢＬ(m+1,n+1) に対してノイズ除去処理が実行される場合の画像データの移動を示す説明図である。
【図１１】第２実施例における内蔵ワークバッファ２４２Ｂを示す説明図である。
【符号の説明】
【０１２２】
１００…プリンタ
１１０…制御回路
１２０…印刷データ生成部
１６０…表示パネル
１７０…操作パネル
１８０…印刷実行部
１９０…Ｉ／Ｆ部
２１０…第１ＣＰＵ
２２０…第２ＣＰＵ
２３０…制御ユニット
２４０…内蔵ＲＡＭ
２４２，Ｂ…（内蔵）ワークバッファ
２４４…テンポラリ領域
２５０…外部ＲＡＭ
２５２…取得済み画像格納領域
２５４…伸張済み画像格納領域
２５６…（外部）ワークバッファ
２５８…ノイズ除去済み画像格納領域
ＢＬ…ブロック画像
ＢＬｃ…変換済みブロック画像
ＦＬ…フィルタ
ＰＰ…周辺画像
ＰＰｃ…変換済み周辺画像
ＳＬ…下方サブ画像
ＳＬｃ…変換済み下方サブ画像
ＳＵ…上方サブ画像
ＳＵｃ…変換済み上方サブ画像
ＴＩ…対象画像
ＴＩｃ…変換済み対象画像
【図１】
2005276072.tif 000003
【図２】
2005276072.tif 000004
【図３】
2005276072.tif 000005
【図４】
2005276072.tif 000006
【図５】
2005276072.tif 000007
【図６】
2005276072.tif 000008
【図７】
2005276072.tif 000009
【図８】
2005276072.tif 000010
【図９】
2005276072.tif 000011
【図１０】
2005276072.tif 000012
【図１１】
2005276072.tif 000013