(57)【要約】  【課題】  画像処理に要する時間を短縮する画像処理装置を提供することを目的とする。  【解決手段】  縦・横２方向の演算を行う２次元演算処理の場合において、演算対象を２つに分割し、第１の演算対象に対する第１の方向の演算が終了後、当該方向の演算結果の書込と同時にこの演算結果を利用しない第２の演算対象に対する第１の方向の演算を行う。第２の演算対象に対する第１の方向の演算が終了後、第１の演算対象に対する第２の方向の演算を行う。第２の演算対象に対する第１の方向の演算を行う間に、第１の演算対象に対する第１の方向の演算結果が反映されるため、演算結果を反映させるための待ち時間が不要となり処理時間が短縮される。  【選択図】      図４
2006319837.tif 000002
【特許請求の範囲】
【請求項１】
２次元に配置された複数の画素で構成される画像データに対する処理を行う画像処理装置であって、
与えられる画素に対して所定の演算処理を行う演算部と、
前記画像データが備える複数の画素に対して前記演算部で演算を行う演算手順を決定する制御部と、を備え、
前記演算部で行われる演算手順が、
前記画像データを第１の演算対象と第２の演算対象とに分割するとともに前記第１の演算対象に含まれる各画素に対して第１の演算手順に従って演算を行う第１ステップと、
前記第２の演算対象に含まれる各画素に対して第２の演算手順に従って演算を行う第２ステップと、
前記第１ステップで行われた演算結果が反映された状態の前記第１の演算対象に含まれる各画素に対して、前記第１の演算手順とは異なる第３の演算手順に従って演算を行う第３ステップと、
前記第２ステップで行われた演算結果が反映された状態の前記第２の演算対象に含まれる各画素に対して、前記第２の演算手順とは異なる第４の演算手順に従って演算を行う第４ステップと、で構成されることを特徴とする画像処理装置。
【請求項２】
前記第２ステップで行われる演算が完了した時点では、すでに前記第１ステップで行われた演算結果が前記第１の演算対象に備えられる各画素の情報として反映されており、
前記第３ステップで行われる演算が完了した時点では、すでに前記第２ステップで行われた演算結果が前記第２の演算対象に備えられる各画素の情報として反映されていることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２の演算手順が前記第１の演算手順と同一の規則で構成され、前記第４の演算手順が前記第３の演算手順と同一の規則で構成されることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第１の演算手順が、２次元に配置された複数の画素に対して第１行から最下行まで水平方向に順次演算を行う手順であることを特徴とする請求項１または請求項３に記載の画像処理装置。
【請求項５】
前記第２の演算手順が、２次元に配置された複数の画素に対して第１列から最右列まで垂直方向に順次演算を行う手順であることを特徴とする請求項２〜請求項４のいずれかに記載の画像処理装置。
【請求項６】
前記画像データが、画像処理を行う前の全体の画像である原画像を、縦８画素、横１６画素ごとに分割して生成された部分画像で構成され、
前記第１の演算対象および前記第２の演算対象が、前記部分画像をさらに縦８画素、横８画素ごとに分割して生成されることを特徴とする請求項２〜請求項５のいずれかに記載の画像処理装置。
【請求項７】
前記演算部が、与えられる各画素に対して離散コサイン変換処理を施すことを特徴とする請求項２〜請求項６のいずれかに記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関し、特に、画像に対して所定の規則に従って圧縮処理を行う画像処理装置に関する。
【背景技術】
【０００２】
画像に関する情報は、独立ではなく統計的に偏りを持っており、特に近接する画素の色、明るさについては相関が大きいことが知られている。このような、画素などの成分間に相関がある信号を直交変換して相関のない信号に変換する手法として離散コサイン変換（Discrete Cosine Transform、以下「ＤＣＴ」と称する）が従来より用いられている（例えば、特許文献１参照）。
【０００３】
そして、このＤＣＴは、音声信号や画像信号に対する情報圧縮処理などに利用されており、この技術を用いて静止画像を圧縮することでＪＰＥＧ（Joint Photograohic Expert Group）方式の画像を生成するＪＰＥＧエンコーダが従来より提供されている（例えば、特許文献２参照）。
【０００４】
図６は、ＤＣＴ演算によってＪＰＥＧ圧縮を行うＪＰＥＧエンコーダの概念図である。図６に示すＪＰＥＧエンコーダ９００は、原画像データが入力されるデータ入力部９０１と、データ入力部９０１より与えられるデータに対してＤＣＴ演算を行うＤＣＴ演算部９０２と、ＤＣＴ演算が行われたデータに対して出力処理を行った後、圧縮後の画像データを出力するデータ出力部９０３と、全体の入出力タイミング等の制御を行う制御部９０４と、で構成される。
【０００５】
データ入力部９０１は、元の画像を所定の大きさ毎に分割するとともに、この分割された部分画像が備える各画素の情報をＤＣＴ演算部９０２に出力する。
【０００６】
図７は、データ入力部９０１で行われる画像分割の概念図である。図７（ａ）に示すように、データ入力部９０１は、原画像Ｂを８×８画素単位の部分画像ごとに分割を行う（Ｂ１１、Ｂ１２、・・・）。図７（ｂ）はこの部分画像の一つＢ１１の拡大図である。部分画像Ｂ１１は、縦８行横８列のマトリクス状に配列された６４画素で構成され（ａ１１、ａ１２、・・・、ａ８８）、この６４画素のデータがＤＣＴ演算部９０２に与えられる。
【０００７】
図８は、ＤＣＴ演算部９０２が６４画素で構成される部分画像に対してＤＣＴ演算を行う演算手順を示している。図８に示すように、ＤＣＴ演算を行う場合においては、部分画像に対してまず一方向（例えば縦方向）の演算を行った後、別の一方向（例えば横方向）の演算を行うのが通例である（例えば特許文献３参照）。
【０００８】
ところで、部分画像に対するＤＣＴ演算は、加法演算と乗法演算の組み合わせによって実現されることが知られている。このとき、図８に示す手順でＤＣＴ演算を行う場合、例えば図８（ａ）に示す横方向８行に対して同時に演算を施すためには、並列に８回の演算を可能にするために多くの乗算器などの回路部品が必要となるため、回路規模が肥大化するという欠点がある。
【０００９】
このため、通常は、一行（または一列）ずつ順次演算を行わせることで、乗算器などの演算素子を各行（または各列）ごとに繰り返し動作させるパイプライン方式を利用して回路規模の縮小化を図っている。例えば、図８（ａ）に示す例で言えば、第１行に対して演算を行った後、第２行に対して演算を行い、以下順次第８行まで演算を行う。そして、横方向の演算が完了すると、図８（ｂ）に示す縦方向の演算に移行する。
【００１０】
縦方向についても横方向と同様に、第１列に対して演算を行った後、第２列に対して演算を行い、以下第８列まで演算を行う。そして、縦方向および横方向に関する演算が完了後、データ出力部９０３に出力される。そして、次の部分画像に関する情報がデータ入力部９０１よりＤＣＴ演算部９０２に対して与えられる。
【特許文献１】特開平８−１６６９４０号公報
【特許文献２】特開平８−３１７３９３号公報
【特許文献３】特開平７−２３９８４２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、従来のパイプライン方式によるＤＣＴ演算手法では、横方向（または縦方向）の演算がすべて終了し、その値が確定してから縦方向（または横方向）の演算が開始されるため、演算方向を変更する時点で所定の待ち時間が必要であった。以下にその説明を行う。
【００１２】
図９は、図８に示す各行および各列に対してＤＣＴ演算部９０２が演算を行うタイミングを示すタイミングチャートである。ＤＣＴ演算部９０２によって行われる処理内容は、データ入力部９０１から与えられた画素情報を一時的に格納する記憶部（不図示）より各行（あるいは各列）単位で情報を読み込む読込処理Ｒと、読み込まれた情報に基づいて演算を行う演算処理Ｃと、演算結果を記憶部に書き込む書込処理Ｗとに細分化される。なお、以下では、横方向について第ｎ行（ｎは自然数、以下同様）にかかる読込処理をＲ−ｈｎ、第ｎ行にかかる演算処理をＣ−ｈｎ、第ｎ行にかかる書込処理をＷ−ｈｎとし、同様に、縦方向について第ｎ列にかかる読込処理をＲ−ｖｎ、第ｎ列にかかる演算処理をＣ−ｖｎ、第ｎ列にかかる書込処理をＷ−ｖｎとする。
【００１３】
このとき、上述のように乗算器などの演算用回路素子の数が少なく、並列演算が行えない構成である場合には、図９に示す演算処理Ｃを複数行（または複数列）に対して同時に行うことができない。このため、第１行に関する演算処理Ｃ−ｈ１が終了後、第２行に関する演算処理Ｃ−ｈ２を行い、第２行に関する演算処理Ｃ−ｈ２が終了後、第３行に関する演算処理Ｃ−ｈ３を行うというように、各行（または各列）ごとに順次ずらして演算処理を行う。
【００１４】
一方、各行（または各列）にかかる情報の読込処理Ｒ、あるいは演算後の書込処理Ｗについては、演算処理Ｃと同時に行うことが可能であるため、例えば図９に示すように、第２行に関する演算処理Ｃ−ｈ２と、第１行に関する演算結果の書込処理Ｗ−ｈ１と、第３行に関する読込処理Ｒ−ｈ３とを並列して行うことができる。
【００１５】
しかしながら、横方向から縦方向に演算方向を変更する際、縦方向（例えば第１列）の読込処理を行うためには、第１行第１列から第８行第１列までの８画素に関する値が確定している必要がある。このため、第８行の演算結果の書込処理Ｗ−ｈ８が完了するまで、第１列の読込処理Ｒ−ｖ１を開始することができない。
【００１６】
すなわち、演算処理Ｃに着目すれば、第８行に関する演算処理Ｃ−ｈ８と第１列に関する演算処理Ｃ−ｖ１との間では、横方向から縦方向に処理が変更しない場合の待ち時間と比較して、待ち時間Ｗｔが発生することになる。
【００１７】
この待ち時間は、部分画像ごとに発生するため、全体の画像に対して当該方法による画像処理を施すことを想定すると処理に要する時間が増大化するという問題を有する。
【００１８】
本発明は、上記の問題点に鑑みて、不要な待ち時間を削減することで画像処理に要する時間を短縮する画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記目的を達成すべく、本発明の画像処理装置は、２次元に配置された複数の画素で構成される画像データに対する処理を行う画像処理装置であって、与えられる画素に対して所定の演算処理を行う演算部と、前記画像データが備える複数の画素に対して前記演算部で演算を行う演算手順を決定する制御部と、を備え、前記演算部で行われる演算手順が、前記画像データを第１の演算対象と第２の演算対象とに分割するとともに前記第１の演算対象に含まれる各画素に対して第１の演算手順に従って演算を行う第１ステップと、前記第２の演算対象に含まれる各画素に対して第２の演算手順に従って演算を行う第２ステップと、前記第１ステップで行われた演算結果が反映された状態の前記第１の演算対象に含まれる各画素に対して、前記第１の演算手順とは異なる第３の演算手順に従って演算を行う第３ステップと、前記第２ステップで行われた演算結果が反映された状態の前記第２の演算対象に含まれる各画素に対して、前記第２の演算手順とは異なる第４の演算手順に従って演算を行う第４ステップと、で構成されることを特徴とする。
【００２０】
このとき、前記第２ステップで行われる演算が完了した時点では、すでに前記第１ステップで行われた演算結果が前記第１の演算対象に備えられる各画素の情報として反映されており、前記第３ステップで行われる演算が完了した時点では、すでに前記第２ステップで行われた演算結果が前記第２の演算対象に備えられる各画素の情報として反映されている構成としても構わない。
【００２１】
このように構成されることで、第１の演算対象に対して第１の演算手順に基づく演算を行った後、引き続き第１の演算対象に対する演算を行うのではなく、第１の演算対象とは異なる第２の演算対象に対して演算を行った後に、第１の演算対象に対して第１の演算手順とは異なる第３の演算手順に基づく演算を行う構成であるため、第１の演算対象に対して第１ステップで行われた第１の演算手順に基づく演算結果は、第３ステップで第３の演算手順に基づいて演算を行う時点では、すでに各画素の情報として反映されており、従来の構成のように演算結果が反映されるまでの待ち時間を必要としない。従って、演算処理時間の短縮化を図ることができる。
【００２２】
なお、このとき、上記演算部を乗算器などの演算用回路素子で構成されるものとして良い。
【００２３】
また、例えば、前記第２の演算手順が前記第１の演算手順と同一の順序で構成され、前記第４の演算手順が前記第３の演算手順と同一の順序で構成されるものとしても構わない。
【００２４】
このとき、さらに前記第１の演算手順が、２次元に配置された複数の画素に対して第１行から最下行まで水平方向に順次演算を行う順序であるものとしても構わないし、前記第２の演算手順が、２次元に配置された複数の画素に対して第１列から最右列まで垂直方向に順次演算を行う順序であるものとしても構わない。
【００２５】
このように構成される場合、対象となる画像データに対して、まず２つの演算対象に分割するとともに、第１の演算対象に対して水平方向に第１行から最下行まで演算を行い（第１ステップ）、次に第２の演算対象に対して同様に水平方向に第１行から最下行まで演算を行う（第２ステップ）。そして、この第２ステップの演算が行われている間に、第１ステップで行われた演算結果が第１の演算対象に備えられる複数の画素のデータとして反映される。
【００２６】
そして、この第１ステップで行われた演算結果が反映された状態の第１の演算対象に対して、垂直方向に第１列から最右列まで順次演算を行う（第３ステップ）。このとき同様に、この第３ステップの演算が行われている間に第２ステップで行われた演算結果が第２の演算対象に備えられる複数の画素データとして反映されており、この第３ステップの演算結果が反映された状態の第２の演算対象に対して、垂直方向に第１列から最右列まで順次演算を行う（第４ステップ）。
【００２７】
すなわち、本発明の特徴は、例えば縦・横の２方向に対して演算を施す必要がある場合において、第１の演算対象に一方向（例えば横方向）の演算を施した後、この演算結果が反映されるまでの間に、第２の演算対象の一方向（例えば横方向）の演算を行い、この第２の演算対象に関する一方向の演算が終了後、第１の演算対象の他方向（例えば縦方向）の演算を行うことで、第１の演算対象の一方向の演算結果が反映されるまでの待ち時間を、その演算結果を利用しない演算（第２の演算対象に対する演算）を行う時間とすることで、演算器の有効活用を行うことにある。
【００２８】
なお、本発明は、縦・横２方向の演算を行う演算形式に限られるものでもなく、同一対象に対して、複数回演算を施すような演算方法において、第１の演算が完了後第２の演算に移行する際に、第１の演算結果が反映されるまでの間に、第１の演算結果を利用しない他の演算対象の演算を行う演算形式であれば、どのような演算形式による画像処理装置に対しても応用できる。
【００２９】
また、前記画像データが、画像処理を行う前の全体の画像である原画像を、縦８画素、横１６画素ごとに分割して生成された部分画像で構成され、前記第１の演算対象および前記第２の演算対象が、前記部分画像をさらに縦８画素、横８画素ごとに分割して生成される構成であるものとしても構わないし、さらに、前記演算部が、与えられる各画素に対して離散コサイン変換処理を施す構成であるものとしても構わない。
【００３０】
このように構成されるとき、本発明の画像処理装置は、処理時間が短縮化されるＪＰＥＧエンコーダとして機能することができる。
【発明の効果】
【００３１】
本発明の構成によれば、第１の演算対象の第１の方向に対する演算を終了後、第２の演算対象の第１の方向に対する演算を行い、第２の演算対象の第１の方向に対する演算が終了後、第１の演算対象の第２の方向に対する演算を行う。すなわち、第１の演算対象の第１の方向に対する演算が終了後、第２の方向に対する演算を開始するまでの時間に、第２の演算対象の第１の方向に対する演算を行う構成であるため、この演算が終了した時点では、第１の演算対象の第１の方向に対する演算結果が反映されている。
【００３２】
従って、第１の演算対象の演算方向が第２の方向に変更される時点では、すでに第１の演算対象の第１の方向の演算結果が反映されているため、演算結果が反映されるまでの時間を待つことなく、引き続き第２の方向の演算を開始することができる。
【００３３】
同様に、第１の演算対象の第２の方向の演算が終了後、第２の演算対象の第２の方向の演算を開始する構成であるため、第２の演算対象の演算方向が第２の方向に変更される時点では、第２の演算対象の第１の方向の演算結果が反映されており、演算結果が反映されるまでの時間を待つことなく、引き続き演算を行うことができる。
【００３４】
すなわち、本発明の構成とすることで、待ち時間なしで演算方向の切替を行うことが可能となるため、従来構成の画像処理装置と比較して、処理時間の短縮化を図ることができる。
【発明を実施するための最良の形態】
【００３５】
本発明の実施形態について、図面を参照して説明する。図１は、本発明の一実施形態であるＪＰＥＧエンコーダの構成を示すブロック図である。
【００３６】
図１に示すＪＰＥＧエンコーダ１は、原画像データが入力されるデータ入力部２と、データ入力部２より与えられるデータに対してＤＣＴ演算を行うＤＣＴ演算部３と、ＤＣＴ演算が行われたデータに対して量子化あるいは符号化などの所定の処理を行った後、圧縮後の画像データを出力するデータ出力部４と、全体の入出力タイミング等の制御を行う制御部５と、で構成される。
【００３７】
データ入力部２は、元の画像を８×１６画素単位で構成される部分画像（以下、「単位画像」と称する）ごとに分割するとともに、この単位画像が備える各画素の情報をＤＣＴ演算部３に出力する。
【００３８】
図２は、データ入力部２で行われる画像分割の概念図である。図２（ａ）に示すように、データ入力部２は、原画像Ｃを８×１６画素単位の単位画像ごとに分割を行う（Ｃ１１、Ｃ１２、・・・）。図２（ｂ）はこの部分画像の一つＣ１１の拡大図である。単位画像Ｃ１１は、縦８行横１６列のマトリクス状に配列された１２８画素で構成され（ｄ１１、ｄ１２、・・・、ｄ８８、ｄ９１、ｄ９２、・・・、ｄ１６８）、この１２８画素のデータがＤＣＴ演算部３に与えられる。
【００３９】
図３はＤＣＴ演算部３の構成を示すブロック図である。ＤＣＴ演算部３は、データ入力部２から与えられる単位画像を構成する各画素の情報や、演算結果を一時的に記憶する一時記憶部１１と、一時記憶部１１から順次与えられる各画素の情報に対してＤＣＴ演算処理を実際に行う演算部１２とで構成される。なお、一時記憶部１１は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）により構成され、演算部１２は、乗算器などの演算用回路素子で構成されるものとして良い。
【００４０】
ＤＣＴ演算部３は、データ入力部２から８×１６画素で構成される単位画像の情報が与えられると、まず各画素ごとの情報を一時記憶部１１に格納する。そして、演算部１２が一時記憶部１１から所定のタイミングで所定領域の画素にかかる情報を読み込むとともに、その情報に基づいてＤＣＴ演算を施して、一時記憶部１１に演算結果を書き込む。そして、単位画像にかかる全ての画素に対する演算が終了すると、一時記憶部１１に格納された演算結果がデータ出力部４に出力される。
【００４１】
図４は、ＤＣＴ演算部３が１２８画素で構成される単位画像に対してＤＣＴ演算を行う演算手順を示している。なお、ＤＣＴ演算部３で行われる処理内容は、一時記憶部１１より画素情報を読み込む読込処理Ｒと、読み込まれた情報に基づいて演算部１２が演算を行う演算処理Ｃと、演算部１２で行われた演算結果を一時記憶部１１に書き込む書込処理Ｗとに細分化される。
【００４２】
図４に示すように、ＤＣＴ演算部３は、８×１６画素で構成される１２８画素を、まず８×８画素で構成される２組の構成要素に分割を行う（図４におけるＥ−１、Ｅ−２に相当）。以下、この分割によって生成された８×８画素で構成される構成要素を、「部分単位画像」と呼称する。
【００４３】
なお、本発明は、以下に説明するように、部分単位画像ごとに、一行（または一列）ずつ順次演算を行わせることで、乗算器などの演算素子を各行（または各列）ごとに繰り返し動作させるパイプライン方式を利用することを特徴とする。以下では、第ｍの部分単位画像（ｍは自然数、以下同様）について行われる横方向に対する第ｎ行（ｎは自然数、以下同様）にかかる読込処理をＲｍ−ｈｎ、第ｍの部分単位画像における第ｎ行にかかる演算処理をＣｍ−ｈｎ、第ｍの部分単位画像における第ｎ行にかかる書込処理をＷｍ−ｈｎとし、同様に、縦方向について第ｍの部分単位画像における第ｎ列にかかる読込処理をＲｍ−ｖｎ、第ｍの部分単位画像における第ｎ列にかかる演算処理をＣｍ−ｖｎ、第ｍの部分単位画像における第ｎ列にかかる書込処理をＷｍ−ｖｎとする。
【００４４】
なお、以下では、まず横方向の演算を行った後、縦方向の演算を行うものとして説明を行うが、この順序は逆であっても構わない。図４において、（ａ）が横方向の演算を表しており、（ｂ）が縦方向の演算を表している。
【００４５】
演算部１２は、まず一時記憶部１１より部分単位画像Ｅ−１の第１行にかかる各画素の情報を順次読み出すとともに、これらに対してＤＣＴ演算を施す。以下、従来の計算方法と同様に、部分単位画像Ｅ−１について、第２行、第３行、・・・第８行まで順次処理を施す（ステップＳ１〜Ｓ８）
【００４６】
そして、部分単位画像Ｅ−１の第８行に関する読込処理Ｒ１−ｈ８が終了後、演算部１２において当該画素に対する演算処理Ｃ１−ｈ８が行われるとともに、部分単位画像Ｅ−２の第１行に関する読込処理Ｒ２−ｈ１が並列して開始される。以下、部分単位画像Ｅ−２の各行について、部分単位画像Ｅ−１と同様に第１行から第８行まで処理が施される（ステップＳ９〜ステップＳ１６）。
【００４７】
そして、部分単位画像Ｅ−２の第８行に関する読込処理Ｒ２−ｈ８が終了すると、演算部１２において当該画素に対する演算処理Ｃ２−ｈ８が行われるとともに、部分単位画像Ｅ−１の第１列に関する読込処理Ｒ１−ｖ１が並列して開始される。演算処理Ｒ２−ｈ８が終了した時点では、すでに部分単位画像Ｅ−１のすべての行に関する演算処理Ｃが完了しており、この演算結果の書込処理も終了しているため、演算部１２は、従来構成のように待ち時間なしで縦方向の演算に移行することができる。そして、引き続き部分単位画像Ｅ−１の第１列から第８列に関する演算を順次行う（ステップＳ１７〜ステップＳ２４）。
【００４８】
部分単位画像Ｅ−１の第８列に関する演算が終了すると、部分単位画像Ｅ−２の縦方向の演算を第１列から第８列まで順次行う（ステップＳ２５〜ステップＳ３２）。ステップＳ３２が終了すると、ＤＣＴ演算部３は新たな単位画像に関する情報を読み込み、上記と同様の手順で演算を行う。また、演算結果がデータ出力部４に与えられ、量子化あるいは符号化などの処理が施される。
【００４９】
以下において、ＤＣＴ演算部３で行われる演算処理手順について、タイミングチャートを用いて説明を行う。図５は、ＤＣＴ演算部３が演算を行うタイミングを示すタイミングチャートである。
【００５０】
ＤＣＴ演算部３において部分単位画像Ｅ−１の第１行に関する読込処理Ｒ１−ｈ１が行われた後、この読み込まれた画素情報に関する演算処理Ｃ１−ｈ１と並列して第２行に関する読込処理Ｒ１−ｈ２が行われる。演算処理Ｃは、並列して行うことができないため、Ｅ−１の第１行に関する演算Ｃ１−ｈ１の終了後、第２行に関する演算Ｃ１−ｈ２へ移行する。演算処理Ｃと、読込処理Ｒ、書込処理Ｗはそれぞれ並列して行うことができるため、例えば第２行の演算処理Ｃ１−ｈ２と、第１行の演算結果の書込処理Ｗ１−ｈ１、第３行の読込処理Ｒ１−ｈ３とはそれぞれ並列して行うことができる。
【００５１】
このようにして部分単位画像Ｅ−１の処理が第８行まで行われる。そして、第８行の演算処理Ｃ１−ｈ８が開始されると、これと並列して部分単位画像Ｅ−２の第１行に関する読込処理Ｒ２−ｈ１を行う。以下、部分単位画像Ｅ−２に関して、第１行から第８行まで部分単位画像Ｅ−１と同様に処理を施す。なお、一時記憶部１１は、少なくとも１２８画素分の画素情報を格納できる構成であるものとして構わない。
【００５２】
部分単位画像Ｅ−２についても、Ｅ−１と同様に横方向について第８行まで順次処理が行われる。そして、第８行の演算処理Ｃ２−ｈ８が開始されると、これと並列して部分単位画像Ｅ−１の第１列に関する読込処理Ｒ１−ｖ１を行う。
【００５３】
８×８画素で構成された部分画像に対して横方向、縦方向の演算を順次行う従来構成においては、横方向の演算結果の書込が完了するまで縦方向の演算に移行できなかったため、書込が完了するまでの所定の待ち時間を必要としていた。しかしながら本発明は、第１部分画像Ｅ−１の処理方向が横方向から縦方向に移行するまでの間に第２部分画像Ｅ−２の横方向の処理を行う構成であるため、この間にＥ−１の横方向の演算結果の書込が完了していれば、Ｅ−２の横方向の処理が終了後、待ち時間を必要とせずＥ−１の縦方向の演算に移行することができる。
【００５４】
そして、以下同様に部分単位画像Ｅ−１の処理が第１列から第８列まで行われた後、部分単位画像Ｅ−２の処理が引き続き第１列から第８列まで行われる。部分単位画像Ｅ−２の処理についても、横方向の演算が終了後、部分単位画像Ｅ−１の縦方向の処理が行われる構成であるため、この間にＥ−２の横方向の演算結果の書込が完了していれば待ち時間を必要とせずＥ−２の縦方向の演算に移行することができる。
【００５５】
本発明の構成とすることで、演算部１２において待ち時間なしで演算を行うことが可能となるため、従来構成の画像処理装置と比較して、処理時間の短縮化を図ることができる。
【００５６】
なお、制御部５がＤＣＴ演算部３に対して上記のような演算手順で演算を行うように制御する構成であるものとして構わない。このとき、制御部５がカウンタ（不図示）を備えており、行（あるいは列）単位の読込、あるいは演算、書込が行われる都度カウンタが作動し、このカウンタによって所定回数カウントされると、演算方向を変更するあるいは演算対象を変更する指示を行う構成であるものとしても良い。
【００５７】
また、第１の演算対象に対して横方向の演算を施した後、第２の演算対象に対して縦方向の演算を施し、この演算が完了後、第１の演算対象に対して縦方向の演算を施すものとしても良い。そしてこの第１の演算対象に対して行われる縦方向の演算が終了後、第２の演算対象に対して横方向の演算を行うものとしても良い。
【００５８】
つまり、上記の例（縦・横の２方向）の場合、横方向演算を第１、第２の演算対象に対して行った後、縦方向演算を第１、第２の演算対象に対して行う構成に限られず、第１の演算対象に対しては横方向の演算を先に行う一方、第２の演算対象に対しては縦方向の演算を先に行う構成としても良い。
【００５９】
さらに、上述において、８×１６画素で構成される１２８画素を単位画像として処理を行うものとしたが、８×１６画素単位に限られるものではなく、８×２４画素構成であっても構わないし、他の構成であっても構わない。すなわち、本発明の特徴は、例えば縦・横の２方向に対して演算を施す必要がある場合において、第１の演算対象に一方向（例えば横方向）の演算を施した後、この演算結果が反映されるまでの間に、第２の演算対象の一方向（例えば横方向）の演算を行い、この第２の演算対象に関する一方向の演算が終了後、第１の演算対象の他方向（例えば縦方向）の演算を行うことで、第１の演算対象の一方向の演算結果が反映されるまでの待ち時間を、その演算結果を利用しない演算（第２の演算対象に対する演算）を行う時間とすることで、演算器の有効活用を行うことにある。
【００６０】
すなわち、本発明は、縦・横２方向の演算を行う演算形式に限られるものでもなく、同一対象に対して、複数回演算を施すような演算方法において、第１の演算が完了後第２の演算に移行する際に、第１の演算結果が反映されるまでの間に、第１の演算結果を利用しない他の演算対象の演算を行う演算形式であれば、どのような演算形式を採用する画像処理装置に対しても利用可能である。
【産業上の利用可能性】
【００６１】
本発明の画像処理装置は、ハードウェアで構成されるＪＰＥＧエンコーダとして好適に利用され得る。
【図面の簡単な説明】
【００６２】
【図１】は、一実施形態であるＪＰＥＧエンコーダの構成を示すブロック図である。
【図２】は、図１におけるデータ入力部で行われる画像分割の概念図である。
【図３】は、図１におけるＤＣＴ演算部の構成を示すブロック図である。
【図４】は、図１におけるＤＣＴ演算部で行われる演算手順を示す概念図である。
【図５】は、図１におけるＤＣＴ演算部で行われる演算のタイミングを示すタイミングチャートである。
【図６】は、ＤＣＴ演算によってＪＰＥＧ圧縮を行うＪＰＥＧエンコーダの従来構成を示すブロック図である。
【図７】は、図６におけるデータ入力部で行われる画像分割の概念図である。
【図８】は、図６におけるＤＣＴ演算部で行われる演算手順を示す概念図である。
【図９】は、図６におけるＤＣＴ演算部で行われる演算のタイミングを示すタイミングチャートである。
【符号の説明】
【００６３】
１    ＪＰＥＧエンコーダ
２    データ入力部
３    ＤＣＴ演算部
４    データ出力部
５    制御部
１１    一時記憶部
１２    演算部
９００    ＪＰＥＧエンコーダ
９０１    データ入力部
９０２    ＤＣＴ演算部
９０３    データ出力部
９０４    制御部
【図１】
2006319837.tif 000003
【図２】
2006319837.tif 000004
【図３】
2006319837.tif 000005
【図４】
2006319837.tif 000006
【図５】
2006319837.tif 000007
【図６】
2006319837.tif 000008
【図７】
2006319837.tif 000009
【図８】
2006319837.tif 000010
【図９】
2006319837.tif 000011