(57)【要約】　　　（修正有）【課題】符号化信号の冗長性を抑えて効率的なエラー訂正符号化をする。【解決手段】画像信号Ｖｉｎを、１画面分毎に、ブロック分割する。ソート回路１０３は所定の特徴量を基準に順番を設定して出力する。順に出力される注目ブロックをＤＣＴ変換する。注目ブロックのクラスコードＣＬを生成し、生成回路１０６で注目ブロック及びその周囲ブロックのクラスコードに基づき、注目ブロックのアドレスＡＤＤ＿Ｂを生成する。付加回路１１０は、注目ＤＣＴブロックに、そのブロックのブロックアドレスｂ＿ａｄｄ及びクラスコードＣＬを付加し、出力符号化データを得る。アドレスＡＤＤ＿Ｂの各値の頻度をロバストメモリ１０７内の頻度メモリに記憶する。周囲ブロックのクラスコードによるアドレス部分の各値毎に、頻度メモリに記憶される最大頻度に対応したアドレスＡＤＤ＿Ｂが生成された際の注目ブロックをロバストメモリ１０７内の最大頻度データメモリに記憶する。【選択図】　　　　図１
2004104693.tif 000002
【特許請求の範囲】
【請求項１】
複数の情報データからなる入力情報信号を、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割するブロック分割手段と、
上記ブロック分割手段で得られた各ブロックについて、所定単位毎に、所定の特徴量を基準に順番を設定し、該設定された順に出力するソート手段と、
上記ソート手段より順次出力されるブロックを注目ブロックとし、該注目ブロックから所定の特徴量を検出して、該注目ブロックのクラスコードを生成するクラスコード生成手段と、
上記クラスコード生成手段で生成された注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成するアドレス生成手段と、
上記アドレス生成手段で生成される注目ブロックのアドレスの各値の頻度を記憶する第１の記憶手段と、
上記周囲ブロックのクラスコードによるアドレス部分の各値毎に、上記第１の記憶手段に記憶される最大頻度に対応したアドレスが上記アドレス生成手段で生成された際の上記注目ブロックを、最大頻度データとして該アドレスに対応付けて記憶する第２の記憶手段と、
上記ソート手段より順次出力される注目ブロックに、少なくとも該注目ブロックが上記所定単位内のどの位置にあったかを示すブロックアドレスを付加して出力符号化データを得る付加手段と
を備えることを特徴とする符号化装置。
【請求項２】
上記ソート手段は、
上記所定単位毎に、基準ブロックを定め、該基準ブロックに対する相関値が高い順に各ブロックの順番を設定する
ことを特徴とする請求項１に記載の符号化装置。
【請求項３】
上記付加手段は、
上記ソート手段より順次出力される注目ブロックに、該注目ブロックが上記所定単位内のどの位置にあったかを示すブロックアドレスおよび上記アドレス生成手段で生成された上記注目ブロックのクラスコードを付加して出力符号化データを得る
ことを特徴とする請求項１に記載の符号化装置。
【請求項４】
上記ソート手段より順次出力される注目ブロックに対して直交変換を行う直交変換手段をさらに備え、
上記クラスコード生成手段は、上記直交変換手段より順次出力される注目ブロックの係数データから所定の特徴量を検出して、該注目ブロックのクラスコードを生成し、
上記第２の記憶手段は、上記周囲ブロックのクラスコードによるアドレス部分の各値毎に、上記第１の記憶手段に記憶される最大頻度に対応したアドレスが上記アドレス生成手段で生成された際の上記注目ブロックの係数データを、最大頻度データとして該アドレスに対応付けて記憶し、
上記付加手段は、上記直交変換手段より順次出力される注目ブロックの係数データに、少なくとも該注目ブロックが上記所定単位内のどの位置にあったかを示すブロックアドレスを付加して出力符号化データを得る
ことを特徴とする請求項１に記載の符号化装置。
【請求項５】
上記付加手段で順次得られる各ブロックの出力符号化データに対して逆直交変換を行って出力する逆直交変換手段をさらに備える
ことを特徴とする請求項４に記載の符号化装置。
【請求項６】
複数の情報データからなる入力情報信号を、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割する第１のステップと、
上記第１のステップで得られた各ブロックについて、所定単位毎に、所定の特徴量を基準に順番を設定し、該設定された順に出力する第２のステップと、
上記第２のステップで順次出力されるブロックを注目ブロックとし、該注目ブロックから所定の特徴量を検出して、該注目ブロックのクラスコードを生成する第３のステップと、
上記第３のステップで生成された注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成する第４のステップと、
上記第４のステップで生成される注目ブロックのアドレスの各値の頻度を第１の記憶手段に記憶する第５のステップと、
上記周囲ブロックのクラスコードによるアドレス部分の各値毎に、上記第１の記憶手段に記憶される最大頻度に対応したアドレスが上記第４のステップで生成された際の上記注目ブロックを、最大頻度データとして該アドレスに対応付けて第２の記憶手段に記憶する第６のステップと、
上記第２のステップで順次出力される注目ブロックに、少なくとも該注目ブロックが上記所定単位内のどの位置にあったかを示すブロックアドレスを付加して出力符号化データを得る第７のステップと
を備えることを特徴とする符号化方法。
【請求項７】
複数の情報データからなる入力情報信号を、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割する第１のステップと、
上記第１のステップで得られた各ブロックについて、所定単位毎に、所定の特徴量を基準に順番を設定し、該設定された順に出力する第２のステップと、
上記第２のステップで順次出力されるブロックを注目ブロックとし、該注目ブロックから所定の特徴量を検出して、該注目ブロックのクラスコードを生成する第３のステップと、
上記第３のステップで生成された注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成する第４のステップと、
上記第４のステップで生成される注目ブロックのアドレスの各値の頻度を第１の記憶手段に記憶する第５のステップと、
上記周囲ブロックのクラスコードによるアドレス部分の各値毎に、上記第１の記憶手段に記憶される最大頻度に対応したアドレスが上記第４のステップで生成された際の上記注目ブロックを、最大頻度データとして該アドレスに対応付けて第２の記憶手段に記憶する第６のステップと、
上記第２のステップで順次出力される注目ブロックに、少なくとも該注目ブロックが上記所定単位内のどの位置にあったかを示すブロックアドレスを付加して出力符号化データを得る第７のステップと
を備える符号化方法をコンピュータに実行させるためのプログラム。
【請求項８】
少なくとも所定単位内のどの位置にあったかを示すブロックアドレスが付加されたブロックが連続した入力符号化データから、ブロック毎に、上記ブロックおよび上記ブロックアドレスを分離して得る分離手段と、
上記入力符号化データに基づいて、各ブロックのクラスコードを順に取得するクラスコード取得手段と、
上記分離手段で順次分離して得られるブロックを注目ブロックとし、上記クラスコード取得手段で順に取得された該注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成するアドレス生成手段と、
上記アドレスの各値の頻度を記憶している第１の記憶手段と、
上記周囲ブロックのクラスコードによるアドレス部分の各値毎に、上記第１の記憶手段に記憶される最大頻度に対応したアドレスに対応付けて最大頻度データとしてのブロックを記憶している第２の記憶手段と、
上記アドレス生成手段で生成された上記注目ブロックのアドレスおよび上記第１の記憶手段に記憶されている上記アドレスの各値の頻度に基づいて、上記注目ブロックにエラーがあるか否かを判定するエラー判定手段と、
上記エラー判定手段で上記注目ブロックにエラーがないと判定されたとき、上記分離手段で得られた該注目ブロックを出力し、上記エラー判定手段で上記注目ブロックにエラーがあると判定されたとき、少なくとも上記第２の記憶手段の記憶内容あるいは他の記憶手段の記憶内容を用いて、該注目ブロックを推定して出力する復号化データ出力手段と、
上記復号化データ出力手段より順次出力されたブロックを、所定単位毎に、上記分離手段で得られた該ブロックのブロックアドレスに対応した位置に戻す逆ソート手段と、
上記逆ソート手段で位置が戻された各ブロックを分解して出力情報信号を得るブロック分解手段と
を備えることを特徴とする復号化装置。
【請求項９】
上記入力符号化データは、所定単位内のどの位置にあるかを示すブロックアドレスおよびクラスコードが付加されたブロックが連続したものであり、
上記クラスコード取得手段は、上記入力符号化データの各ブロックに付加されているクラスコードを分離して、上記各ブロックのクラスコードを得る
ことを特徴とする請求項８に記載の復号化装置。
【請求項１０】
上記クラスコード取得手段は、
上記分離手段で順次分離されるブロックから所定の特徴量を検出して、上記各ブロックのクラスコードを得る
ことを特徴とする請求項８に記載の復号化装置。
【請求項１１】
上記ブロックは所定個数の情報データに対して直交変換を行った結果である所定個数の係数データを含み、
上記復号化データ出力手段より順次出力されるブロックに対して逆直交変換を行う逆直交変換手段をさらに備え、
上記逆ソート手段は、上記逆直交変換手段より順次出力された所定個数の情報データからなるブロックを、所定単位毎に、上記分離手段で得られた該ブロックのブロックアドレスに対応した位置に戻す
ことを特徴とする請求項８に記載の復号化装置。
【請求項１２】
逆直交変換が施されたブロックが連続してなる符号化信号に対してブロック毎に直交変換を施して上記入力符号化データを得る直交変換手段をさらに備える
ことを特徴とする請求項１１に記載の復号化装置。
【請求項１３】
上記復号化データ出力手段は、
上記エラー判定手段で上記注目ブロックにエラーがあると判定されたとき、上記アドレス生成手段で生成された該注目ブロックのアドレスのうち上記周囲ブロックのクラスコードによるアドレス部分に対応して上記第２の記憶手段に記憶されている最大頻度データとしてのブロックを、該注目ブロックと推定する
ことを特徴とする請求項８に記載の復号化装置。
【請求項１４】
上記復号化データ出力手段より出力される各ブロックを、上記アドレス生成手段で生成されるアドレスに対応付けて一時的に記憶する、上記他の記憶手段としての第３の記憶手段をさらに備え、
上記復号化データ出力手段は、
上記エラー判定手段で上記注目ブロックにエラーがあると判定されたとき、
上記第１の記憶手段の記憶内容に基づいて、上記周囲ブロックのクラスコードによるアドレス部分を持つ各アドレスのうち最大頻度のアドレスを第１目標アドレスとして認識し、該第１目標アドレスに対応付けて上記第３の記憶手段に記憶されているブロックを、上記注目ブロックと推定する
ことを特徴とする請求項８に記載の復号化装置。
【請求項１５】
上記復号化データ出力手段は、
上記第３の記憶手段に、上記第１目標アドレスに対応付けて記憶されているブロックが複数個あるときは、該複数個のブロックのうち、上記第２の記憶手段に記憶されている上記周囲ブロックのクラスコードによるアドレス部分に対応した最大頻度データとしてのブロックと最も相関の高いブロックを、上記注目ブロックと推定する
ことを特徴とする請求項１４に記載の復号化装置。
【請求項１６】
上記復号化データ出力手段は、
上記第３の記憶手段に、上記第１目標アドレスに対応付けて記憶されているブロックがないときは、上記第２の記憶手段に記憶されている上記周囲ブロックのクラスコードによるアドレス部分に対応した最大頻度データとしてのブロックを、上記注目ブロックと推定する
ことを特徴とする請求項１４に記載の復号化装置。
【請求項１７】
上記符号化データ出力手段は、上記第３の記憶手段に、上記第１目標アドレスに対応付けて記憶されているブロックがないときは、
上記第１の記憶手段の記憶内容に基づいて、上記周囲ブロックのクラスコードによるアドレス部分を持つ各アドレスのうち２番目に頻度が大きいアドレスを第２目標アドレスとして認識し、該第２目標アドレスに対応付けて上記第３の記憶手段に記憶されているブロックを、上記注目ブロックと推定する
ことを特徴とする請求項１４に記載の復号化装置。
【請求項１８】
上記復号化データ出力手段は、
上記第３の記憶手段に、上記第２目標アドレスに対応付けて記憶されているブロックが複数個あるときは、該複数個のブロックのうち、上記第２の記憶手段に記憶されている上記周囲ブロックのクラスコードによるアドレス部分に対応した最大頻度データとしてのブロックと最も相関の高いブロックを、上記注目ブロックと推定する
ことを特徴とする請求項１７に記載の復号化装置。
【請求項１９】
上記復号化データ出力手段は、
上記第３の記憶手段に、上記第２目標アドレスに対応付けて記憶されているブロックがないときは、上記第２の記憶手段に記憶されている上記周囲ブロックのクラスコードによるアドレス部分に対応した最大頻度データとしてのブロックを、上記注目ブロックと推定する
ことを特徴とする請求項１７に記載の復号化装置。
【請求項２０】
上記第３の記憶手段には、上記復号化データ出力手段より出力される各ブロックのうち、推定されたブロックを除いたブロックを記憶する
ことを特徴とする請求項１４に記載の復号化装置。
【請求項２１】
上記第３の記憶手段には、上記復号化データ出力手段より出力される各ブロックの全てを記憶し、
上記復号化データ出力手段は、上記第３の記憶手段に、上記第１目標アドレスに対応付けて記憶されているブロックが複数個あり、該複数個のブロックに、推定されたブロックと推定されていないブロックの双方を含むときは、推定されていないブロックを推定されたブロックに優先して用いる
ことを特徴とする請求項１４に記載の復号化装置。
【請求項２２】
少なくとも所定単位内のどの位置にあったかを示すブロックアドレスが付加されたブロックが連続した入力符号化データから、ブロック毎に、上記ブロックおよび上記ブロックアドレスを分離して得る第１のステップと、
上記入力符号化データに基づいて、各ブロックのクラスコードを順に取得する第２のステップと、
上記第１のステップで順次分離して得られるブロックを注目ブロックとし、上記第２のステップで順に取得された該注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成する第３のステップと、
上記第３のステップで生成された上記注目ブロックのアドレスおよび上記アドレスの各値の頻度が記憶されている第１の記憶手段の記憶内容に基づいて、上記注目ブロックにエラーがあるか否かを判定する第４のステップと、
上記第４のステップで上記注目ブロックにエラーがないと判定されたとき、上記第１のステップで得られた該注目ブロックを出力し、上記第４のステップで上記注目ブロックにエラーがあると判定されたとき、少なくとも、上記周囲ブロックのクラスコードによるアドレス部分の各値毎に、上記第１の記憶手段に記憶されている最大頻度に対応したアドレスに対応付けて最大頻度データとしてのブロックを記憶している第２の記憶手段の記憶内容あるいは他の記憶手段の記憶内容を用いて、該注目ブロックを推定して出力する第５のステップと、
上記第５のステップで順次得られたブロックを、所定単位毎に、上記第１のステップで得られた該ブロックのブロックアドレスに対応した位置に戻す第６のステップと、
上記第６のステップで位置が戻された各ブロックを分解して出力情報信号を得る第７のステップと
を備えることを特徴とする復号化方法。
【請求項２３】
少なくとも所定単位内のどの位置にあったかを示すブロックアドレスが付加されたブロックが連続した入力符号化データから、ブロック毎に、上記ブロックおよび上記ブロックアドレスを分離して得る第１のステップと、
上記入力符号化データに基づいて、各ブロックのクラスコードを順に取得する第２のステップと、
上記第１のステップで順次分離して得られるブロックを注目ブロックとし、上記第２のステップで順に取得された該注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成する第３のステップと、
上記第３のステップで生成された上記注目ブロックのアドレスおよび上記アドレスの各値の頻度が記憶されている第１の記憶手段の記憶内容に基づいて、上記注目ブロックにエラーがあるか否かを判定する第４のステップと、
上記第４のステップで上記注目ブロックにエラーがないと判定されたとき、上記第１のステップで得られた該注目ブロックを出力し、上記第４のステップで上記注目ブロックにエラーがあると判定されたとき、少なくとも、上記周囲ブロックのクラスコードによるアドレス部分の各値毎に、上記第１の記憶手段に記憶されている最大頻度に対応したアドレスに対応付けて最大頻度データとしてのブロックを記憶している第２の記憶手段の記憶内容あるいは他の記憶手段の記憶内容を用いて、該注目ブロックを推定して出力する第５のステップと、
上記第５のステップで順次得られたブロックを、所定単位毎に、上記第１のステップで得られた該ブロックのブロックアドレスに対応した位置に戻す第６のステップと、
上記第６のステップで位置が戻された各ブロックを分解して出力情報信号を得る第７のステップと
を備える復号化方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、情報信号を伝送する際に適用して好適な符号化装置および符号化方法、復号化装置および復号化方法、並びに各方法を実行するためのプログラムに関する。
【０００２】
詳しくは、複数の情報データからなる入力情報信号を、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割し、そして各ブロックについて、所定単位毎に、所定の特徴量に基づいて順番を設定して出力し、出力される各ブロックに少なくとも所定単位内のどの位置にあったかを示すブロックアドレスを付加して出力符号化データを得、また出力される各ブロックから所定の特徴量を検出してクラスコードを生成し、注目ブロックのクラスコードおよびこの注目ブロックの前に位置する周囲ブロックのクラスコードに基づいてこの注目ブロックのアドレスを生成し、この生成される注目ブロックのアドレスの各値の頻度を第１の記憶手段に記憶すると共に、周囲ブロックのクラスコードによるアドレス部分の各値毎に、第１の記憶手段に記憶される最大頻度に対応したアドレスが生成された際の注目ブロックを、最大頻度データとして第２の記憶手段に記憶することによって、エラー訂正符号を使用せずにエラー訂正を行うことができ、冗長性を抑えて効率的にエラー訂正符号化でき、また回路規模を小とできるようにした符号化装置等に係るものである。
【０００３】
【従来の技術】
従来、画像データ、音声データ等の情報データを伝送する際、送信側では情報データにエラー訂正符号を付加して送信し、一方受信側では受信した情報データに付加されているエラー訂正符号を用いて当該情報データのエラー訂正を行うことが知られている。
【０００４】
【発明が解決しようとする課題】
上述したように、情報データにエラー訂正符号を付加して送信する場合、特にエラー訂正能力の高いエラー訂正符号を付加する場合には、符号化信号の冗長性が高くなり、効率的な符号化が困難となる。また、送信側では情報データに付加するためのエラー訂正符号を生成するための回路が必要となると共に受信側ではエラー訂正符号を用いたエラー訂正回路を設ける必要があり、回路規模が大きくなる。
【０００５】
この発明の目的は、符号化信号の冗長性を抑えて効率的なエラー訂正符号化を可能とすることにある。また、この発明の目的は、符号化装置や復号化装置の回路規模を小さくすることにある。
【０００６】
【課題を解決するための手段】
この発明に係る符号化装置は、複数の情報データからなる入力情報信号を、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割するブロック分割手段と、このブロック分割手段で得られた各ブロックについて、所定単位毎に、所定の特徴量に基づいて順番を設定し、該設定された順に出力するソート手段と、このソート手段より順次出力されるブロックを注目ブロックとし、該注目ブロックから所定の特徴量を検出して、該注目ブロックのクラスコードを生成するクラスコード生成手段と、このクラスコード生成手段で生成された注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成するアドレス生成手段と、このアドレス生成手段で生成される注目ブロックのアドレスの各値の頻度を記憶する第１の記憶手段と、周囲ブロックのクラスコードによるアドレス部分の各値毎に、第１の記憶手段に記憶される最大頻度に対応したアドレスがアドレス生成手段で生成された際の注目ブロックを、最大頻度データとして該アドレスに対応付けて記憶する第２の記憶手段と、ソート手段より順次出力される注目ブロックに、少なくとも該注目ブロックが所定単位内のどの位置にあったかを示すブロックアドレスを付加して出力符号化データを得る付加手段とを備えるものである。
【０００７】
また、この発明に係る符号化方法は、複数の情報データからなる入力情報信号を、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割する第１のステップと、この第１のステップで得られた各ブロックについて、所定単位毎に、所定の特徴量に基づいて順番を設定し、該設定された順に出力する第２のステップと、この第２のステップで順次出力されるブロックを注目ブロックとし、該注目ブロックから所定の特徴量を検出して、該注目ブロックのクラスコードを生成する第３のステップと、この第３のステップで生成された注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成する第４のステップと、この第４のステップで生成される注目ブロックのアドレスの各値の頻度を第１の記憶手段に記憶する第５のステップと、周囲ブロックのクラスコードによるアドレス部分の各値毎に、第１の記憶手段に記憶される最大頻度に対応したアドレスが第４のステップで生成された際の注目ブロックを、最大頻度データとして該アドレスに対応付けて第２の記憶手段に記憶する第６のステップと、第２のステップで順次出力される注目ブロックに、少なくとも該注目ブロックが所定単位内のどの位置にあるかを示すブロックアドレスを付加して出力符号化データを得る第７のステップとを備えるものである。
【０００８】
また、この発明に係る復号化装置は、少なくとも所定単位内のどの位置にあったかを示すブロックアドレスが付加されたブロックが連続した入力符号化データから、ブロック毎に、ブロックおよびブロックアドレスを分離して得る分離手段と、入力符号化データに基づいて、各ブロックのクラスコードを順に取得するクラスコード取得手段と、分離手段で順次分離して得られるブロックを注目ブロックとし、クラスコード取得手段で順に取得された該注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成するアドレス生成手段と、アドレスの各値の頻度を記憶している第１の記憶手段と、周囲ブロックのクラスコードによるアドレス部分の各値毎に、第１の記憶手段に記憶される最大頻度に対応したアドレスに対応付けて最大頻度データとしてのブロックを記憶している第２の記憶手段と、アドレス生成手段で生成された注目ブロックのアドレスおよび第１の記憶手段に記憶されているアドレスの各値の頻度に基づいて、注目ブロックにエラーがあるか否かを判定するエラー判定手段と、このエラー判定手段で注目ブロックにエラーがないと判定されたとき、分離手段で得られた該注目ブロックを出力し、エラー判定手段で注目ブロックにエラーがあると判定されたとき、少なくとも第２の記憶手段の記憶内容あるいは他の記憶手段の記憶内容を用いて、該注目ブロックを推定して出力する復号化データ出力手段と、この復号化データ出力手段より順次出力されたブロックを、所定単位毎に、分離手段で得られた該ブロックのブロックアドレスに対応した位置に戻す逆ソート手段と、この逆ソート手段で位置が戻された各ブロックを分解して出力情報信号を得るブロック分解手段とを備えるものである。
【０００９】
また、この発明に係る復号化方法は、少なくとも所定単位内のどの位置にあるかを示すブロックアドレスが付加されたブロックが連続した入力符号化データから、ブロック毎に、ブロックおよびブロックアドレスを分離して得る第１のステップと、入力符号化データに基づいて、各ブロックのクラスコードを順に取得する第２のステップと、第１のステップで順次分離して得られるブロックを注目ブロックとし、第２のステップで順に取得された該注目ブロックのクラスコードおよび該注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、該注目ブロックのアドレスを生成する第３のステップと、この第３のステップで生成された注目ブロックのアドレスおよびアドレスの各値の頻度が記憶されている第１の記憶手段の記憶内容に基づいて、注目ブロックにエラーがあるか否かを判定する第４のステップと、この第４のステップで注目ブロックにエラーがないと判定されたとき、第１のステップで得られた該注目ブロックを出力し、第４のステップで注目ブロックにエラーがあると判定されたとき、少なくとも、周囲ブロックのクラスコードによるアドレス部分の各値毎に、第１の記憶手段に記憶されている最大頻度に対応したアドレスに対応付けて最大頻度データとしてのブロックを記憶している第２の記憶手段の記憶内容あるいは他の記憶手段の記憶内容を用いて、該注目ブロックを推定して出力する第５のステップと、この第５のステップで順次得られたブロックを、所定単位毎に、第１のステップで得られた該ブロックのブロックアドレスに対応した位置に戻す第６のステップと、この第６のステップで位置が戻された各ブロックを分解して出力情報信号を得る第７のステップとを備えるものである。
【００１０】
また、この発明に係るプログラムは、上述の符号化方法または復号化方法をコンピュータに実行させるためのものである。
【００１１】
この発明において、符号化装置では、複数の情報データからなる入力情報信号が、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割される。分割された各ブロックについて、所定単位毎に、所定の特徴量を基準に順番が設定され、各ブロックはこの設定された順に出力される。
【００１２】
情報信号が画像信号である場合には所定単位は例えば１画面分の画像信号とされ、情報信号が音声信号である場合には所定単位は例えば所定時間分または所定サンプルデータ数分の音声信号とされる。また例えば、所定単位毎に、基準ブロックが定められ、この基準ブロックに対する相関値が高い順に各ブロックの順番が設定される。
【００１３】
この順次出力されるブロックがちゅうもくとされ、この注目ブロックから所定の特徴量が検出されて、この注目ブロックのクラスコードが生成される。例えば、注目ブロックを構成する複数個の情報データのレベル分布パターンが特徴量として検出され、この検出されたレベル分布パターンに対応したクラスコードが生成される。
【００１４】
なお、上述したように注目ブロックを構成する複数個の情報データから直接特徴量を検出する代わりに、この注目ブロックに対して直交変換を行い、その変換結果である複数個の係数データから特徴量を検出して、クラスコードを生成してもよい。例えば、複数個の係数データを構成するＤＣ係数のパワー、ＡＣ係数のパワー等を求め、それらに基づいてクラスコードを生成できる。
【００１５】
このように生成される注目ブロックのクラスコードおよびこの注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、この注目ブロックのアドレスが生成される。例えば、周囲ブロックが７個であって、各ブロックのクラスコードのビット数がＮである場合、クラスコードは８Ｎビットで構成される。
【００１６】
このように生成される注目ブロックのアドレスの各値毎に、第１の記憶手段に頻度が記憶される。この場合、注目ブロックのアドレスが生成される都度、その生成されたアドレスの値に対応した頻度が１だけ増加するように更新される。また、周囲ブロックのクラスコードによるアドレス部分の各値毎に、第１の記憶手段に記憶される最大頻度に対応したアドレスが生成された際の注目ブロックが、最大頻度データとして、そのアドレスに対応付けて第２の記憶手段に記憶される。
【００１７】
上述したように順次出力される注目ブロックに、少なくともその注目ブロックが所定単位内のどの位置にあったかを示すブロックアドレスが付加されて出力符号化データが得られる。例えば、注目ブロックにブロックアドレスを付加する他に、上述した注目ブロックのクラスコードをも付加してもよい。このように、クラスコードを付加することで、出力符号化データの冗長度は増すが、復号化装置ではクラスコードの生成処理を省略でき、回路規模を小さくできる。
【００１８】
なお、上述したように、注目ブロックに対して直交変換を行い、その変換結果である複数個の係数データから特徴量を検出してクラスコードを生成する場合には、直交変換手段より順次出力される注目ブロックの係数データに、少なくともその注目ブロックが所定単位内のどの位置にあったかを示すブロックアドレスが付加されて出力符号化データが得られる。その場合には、この出力符号化データに対して、さらに逆直交変換を行って出力してもよい。
【００１９】
また、この発明において、復号化装置では、少なくとも所定単位内のどの位置にあったかを示すブロックアドレスが付加されたブロックが連続した入力符号化データから、ブロック毎に、ブロックおよびブロックアドレスが分離されて得られる。
【００２０】
入力符号化データに基づいて、各ブロックのクラスコードが順に取得される。例えば、入力符号化データが、ブロックアドレスの他にクラスコードが付加されたブロックが連続してなるものであるときは、各ブロックに付加されているクラスコードが分離されることで、各ブロックのクラスコードが得られる。また例えば、入力符号化データからブロック毎に順次分離して得られるブロックから所定の特徴量が検出され、各ブロックのクラスコードが得られる。
【００２１】
ここで、ブロックが所定個数の情報データを含む場合、この所定個数の情報データから所定の特徴量が検出され、それに基づいてクラスコードが生成され、一方、ブロックが直交変換の結果である所定個数の係数データを含む場合、この所定個数の係数データから所定の特徴量が検出され、それに基づいてクラスコードが生成される。例えばこの場合、逆直交変換が施されたブロックが連続してなる符号化信号に対してブロック毎に直交変換を施すことで、入力符号化データが得られる。
【００２２】
順に取得される注目ブロックのクラスコードおよびこの注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードに基づいて、この注目ブロックのアドレスが生成される。
【００２３】
第１の記憶手段には、アドレスの各値の頻度が記憶されている。この第１の記憶手段の記憶内容は、上述した符号化装置を構成する第１の記憶手段に形成された記憶内容、あるいはそれと同等のものが使用される。
【００２４】
第２の記憶手段には、周囲ブロックのクラスコードによるアドレス部分の各値毎に、第１の記憶手段に記憶されている最大頻度に対応したアドレスに対応付けて最大頻度データとしてのブロックが記憶されている。この第２の記憶手段の記憶内容は、上述した符号化装置を構成する第２の記憶手段に形成された記憶内容、あるいはそれと同等のものが使用される。
【００２５】
注目ブロックのアドレスおよび上述したようにアドレスの各値の頻度が記憶されている第１の記憶手段の記憶内容に基づいて、注目ブロックにエラーがあるか否かが判定される。例えば、注目ブロックのアドレスの頻度がしきい値と比較され、しきい値より大きいときはエラーがないと判定され、しきい値以下であるときはエラーがあると判定される。このしきい値は、予め主観評価実験が行われることで設定される。
【００２６】
これは、注目ブロックのアドレスのうち周囲ブロックのクラスコードによるアドレス部分の各値毎の、注目ブロックのクラスコードの各値の頻度の分布は正規分布となり、注目ブロックのアドレスがこの正規分布の中心から大きくはずれている場合には、この注目ブロック自体が誤っていると考えられるからである。
【００２７】
なお、上述したように符号化装置において、分割された各ブロックについて、所定単位毎に、所定の特徴量に基づいて順番が設定され、その順に各ブロックのクラスコードが生成され、またアドレスが生成されていく。そのために、注目ブロックのアドレスのうち周囲ブロックのクラスコードによるアドレス部分の各値毎の、注目ブロックのクラスコードの各値の頻度の分布は正規分布となる。
【００２８】
エラー訂正後の注目ブロックにエラーがないと判定されたとき、復号化データ出力手段は、入力符号化データから分離された注目ブロックを出力する。一方、注目ブロックにエラーがあると判定されたとき、復号化データ出力手段は、少なくとも第２の記憶手段の記憶内容あるいは他の記憶手段の記憶内容を用いて、注目ブロックを推定して出力する。これにより、復号化データ出力手段では、注目ブロックにエラーがある場合に、エラー訂正が行われることとなる。
【００２９】
例えば、復号化データ出力手段は、注目ブロックにエラーがあると判定されたとき、注目ブロックのアドレスのうち周囲ブロックのクラスコードによるアドレス部分に対応して第２の記憶手段に記憶されている最大頻度データとしてのブロックを、該注目ブロックと推定する。
【００３０】
また例えば、復号化データ出力手段より出力される各ブロックをアドレスに対応付けて一時的に記憶する、他の記憶手段としての第３の記憶手段をさらに備え、復号化データ出力手段は、注目ブロックにエラーがあると判定されたとき、第１の記憶手段の記憶内容に基づいて、周囲ブロックのクラスコードによるアドレス部分を持つ各アドレスのうち最大頻度のアドレスを第１目標アドレスとして認識し、この第１目標アドレスに対応付けて第３の記憶手段に記憶されているブロックを、注目ブロックと推定する。
【００３１】
この場合、復号化データ出力手段は、第３の記憶手段に第１目標アドレスに対応付けて記憶されているブロックが複数個あるとき、例えばこの複数個のブロックのうち、第２の記憶手段に記憶されている周囲ブロックのクラスコードによるアドレス部分に対応した最大頻度データとしてのブロックと最も相関の高いブロックを、注目ブロックと推定する。
【００３２】
また、この場合、復号化データ出力手段は、第３の記憶手段に第１目標アドレスに対応付けて記憶されているブロックがないときは、例えば第２の記憶手段に記憶されている周囲ブロックのクラスコードによるアドレス部分に対応した最大頻度データとしてのブロックを、注目ブロックと推定する。
【００３３】
また、この場合、符号化データ出力手段は、第３の記憶手段に第１目標アドレスに対応付けて記憶されているブロックがないときは、例えば、第１の記憶手段の記憶内容に基づいて、周囲ブロックのクラスコードによるアドレス部分を持つ各アドレスのうち２番目に頻度が大きいアドレスを第２目標アドレスとして認識し、この第２目標アドレスに対応付けて第３の記憶手段に記憶されているブロックを注目ブロックと推定する。
【００３４】
なお、この第２の記憶手段にこの第２の目標アドレスに対応付けて記憶されているブロックが複数個あるとき、あるいはないときは、上述した第１の目標アドレスにおける場合と同様の処理をする。
【００３５】
また、第３の記憶手段には、例えば復号化データ出力手段より出力される各ブロックのうち、推定されたブロックを除いたブロックが記憶される。推定されたブロックは必ずしも正しいブロックであるとは限らない。推定されたブロックを除くことにより、推定されたブロックが正しいブロックでない場合の影響を回避できる。
【００３６】
また、第３の記憶手段には、例えば復号化データ出力手段より出力される各ブロックの全てが記憶される。この場合、復号化データ出力手段は、例えば第３の記憶手段に、第１目標アドレスまたは第２の目標アドレスに対応付けて記憶されているブロックが複数個あり、この複数個のブロックに、推定されたブロックと推定されていないブロックの双方を含むときは、推定されていないブロックを推定されたブロックに優先して用いる。これにより、推定されたブロックを新たな推定ブロックとして用いる回数を少なくでき、推定されたブロックが正しいブロックでない場合の影響を少なくできる。
【００３７】
復号化データ出力手段で順次得られたブロックは、所定単位毎に、入力符号化データから分離して得られた当該ブロックのブロックアドレスに対応した位置に戻され、その後各ブロックが分解されて出力情報信号が得られる。
【００３８】
なお、上述したように入力符号化データより分離された各ブロックが、所定個数の情報データに対して直交変換を行った結果である所定個数の係数データを含む場合、復号化データ出力手段より順次出力されるブロックに対して逆直交変換が行われる。そして、この逆直交変換されて順次得られた所定個数の情報データからなるブロックが、所定単位毎に、入力符号化データから分離して得られた当該ブロックのブロックアドレスに対応した位置に戻され、その後各ブロックが分解されて出力情報信号が得られる。
【００３９】
このように、符号化装置で各ブロックに誤り訂正符号を付加することなく、復号化装置で各ブロックのエラーを訂正することができる。したがって、符号化信号の冗長性を抑えて効率的に符号化を行うことができる。符号化装置に誤り訂正符号を生成して付加する回路を備える必要がなく、また復号化装置に誤り訂正符号を用いた誤り訂正回路を備える必要がなく、符号化装置や復号化装置の回路規模を小さくできる。
【００４０】
【発明の実施の形態】
以下、図面を参照しながら、この発明の実施の形態について説明する。
まず、符号化装置１００を説明する。図１は、符号化装置１００の構成を示している。
この符号化装置１００は、画像信号Ｖｉｎが入力される入力端子１０１と、この入力端子１０１に入力される画像信号Ｖｉｎを、所定単位毎に、所定個数の画素データを含む複数のブロックに分割するブロック分割回路１０２とを有している。本実施の形態において、ブロック分割回路１０２は、例えば、１画面分の画像信号毎に、図２に示すように、それぞれ８×８の画素データを含む第１〜第Ｍのブロック（ＢＬＫ）に分割する。
【００４１】
また、符号化装置１００は、ブロック分割回路１０２で分割されて得られた各ブロックについて、１画面分の画像信号毎に、所定の特徴量を基準に順番を設定し、この設定された順に出力するブロックソート回路１０３を有している。本実施の形態において、ブロックソート回路１０３は、第１のブロックを最初とし、第２〜第Ｍのブロックについては、この第１のブロックとの相関が高い順に順番を設定する。例えば、第１のブロックと第２〜第Ｍのブロックのそれぞれとの間の相関値、つまり画素データの差分絶対値和を求め、相関値が小さいブロックほど相関が高いものと判断する。
【００４２】
なお、ブロックソート回路１０３は、各ブロックを順に出力する際に、そのブロックが画面内のどの位置にあるか、つまり第１〜第Ｍのいずれのブロックであるかを示すブロックアドレスｂ＿ａｄｄも出力する。
【００４３】
また、符号化装置１００は、ブロックソート回路１０３より順に出力されるブロックを注目ブロックとし、この注目ブロックに対して、直交変換としてのＤＣＴ（Ｄｉｓｃｒｅｔｅ　Ｃｏｓｉｎｅ　Ｔｒａｎｓｆｏｒｍ）を施すＤＣＴ回路１０４を有している。このＤＣＴ回路１０４は、８×８の画素データを含むブロックを、８×８のＤＣＴ係数（係数データ）を含むブロックに変換する。
【００４４】
また、符号化装置１００は、ＤＣＴ回路１０４より順次出力される注目ブロックから所定の特徴量を検出して、この注目ブロックのクラスコードＣＬを生成するクラスコード生成回路１０５を有している。
【００４５】
図３は、クラスコード生成回路１０５の構成例を示している。このクラスコード生成回路１０５は、ＤＣＴ回路１０４より出力される注目ブロックであるＤＣＴブロックを入力する入力端子５１と、この入力端子５１に入力されるＤＣＴブロックより各ＤＣＴ係数のパワーを算出するパワー算出回路５２を有している。ＤＣＴブロックは、図４に示すように、１個のＤＣ係数Ｃ［０］と、６３個のＡＣ係数Ｃ［１］〜Ｃ［６３］とを含んでいる。パワー算出回路５２は、各ＤＣ係数のパワーＰ［ｉ］（ｉ＝０〜６３）を、Ｐ［ｉ］＝Ｃ［ｉ］２の式で算出する。
【００４６】
また、クラスコード生成回路１０５は、パワー算出回路５２で算出された６３個のＡＣ係数Ｃ［１］〜Ｃ［６３］に対応したパワーＰ［１］〜Ｐ［６３］の平均値である交流平均パワーを求める交流平均パワー算出回路５３と、この交流平均パワーを量子化して所定ビット、例えば７ビットのＡＣパワーに係るクラスコードＣＬＡを得る量子化回路５４とを有している。
【００４７】
また、クラスコード生成回路１０５は、パワー算出回路５２で算出された１個のＤＣ係数Ｃ［０］を量子化して所定ビット、例えば７ビットのＤＣパワーに係るクラスコードＣＬＤ得る量子化回路５５を有している。なお、この図３に示す例では、パワーＰ［ｉ］をそのまま用いてクラスコードＣＬＡ，ＣＬＤを得るものを示しているが、パワーＰ［ｉ］をデシベル（ｄＢ）値に変換し、その値を用いてクラスコードＣＬＡ，ＣＬＤを得るようにしてもよい。
【００４８】
また、クラスコード生成回路１０５は、パワー算出回路５２で算出された６３個のＡＣ係数Ｃ［１］〜Ｃ［６３］に対応したパワーＰ［１］〜Ｐ［６３］に基づいて、交流パワーが最大となるピーク位置を検出し、所定ビット、例えば６ビットのピーク位置に係るクラスコードＣＬＰを得る交流ピーク位置検出回路５６を有している。
【００４９】
また、クラスコード生成回路１０５は、量子化回路５４，５５で得られるクラスコードＣＬＡ，ＣＬＤおよび交流ピーク位置検出回路５６で得られるクラスコードＣＬＰとを多重化して所定ビット、例えば２０ビットの注目ブロックのクラスコードＣＬを得るクラスコード多重化回路５７と、このクラスコードＣＬを出力する出力端子５８とを有している。
【００５０】
図３に示すクラスコード生成回路１０５の動作を説明する。入力端子５１にＤＣＴ回路１０４より出力される注目ブロックであるＤＣＴブロックが入力される。このＤＣＴブロックはパワー算出回路５２に供給される。パワー算出回路５２は、ＤＣＴブロックより各ＤＣＴ係数のパワーＰ［ｉ］（ｉ＝０〜６３）を算出する。
【００５１】
交流平均パワー算出回路５３は、パワー算出回路５２で算出された６３個のＡＣ係数Ｃ［１］〜Ｃ［６３］に対応したパワーＰ［１］〜Ｐ［６３］を用いて、その平均パワーを算出する。そして、量子化回路５４は、その平均パワーを量子化して、ＡＣパワーに係るクラスコードＣＬＡを得る。
【００５２】
また、量子化回路５５は、パワー算出回路５２で算出された１個のＤＣ係数Ｃ［０］を量子化してクラスコードＣＬＤ得、交流ピーク位置検出回路５６は、パワー算出回路５２で算出された６３個のＡＣ係数Ｃ［１］〜Ｃ［６３］に対応したパワーＰ［１］〜Ｐ［６３］に基づいて、交流パワーが最大となるピーク位置を検出し、ピーク位置に係るクラスコードＣＬＰを得る。
【００５３】
そして、これら量子化回路５４，５５および交流ピーク位置検出回路５６で得られたクラスコードＣＬＡ，ＣＬＤ，ＣＬＰはクラスコード多重化回路５７に供給される。クラスコード多重化回路５７は、これらのクラスコードＣＬＡ，ＣＬＤ，ＣＬＰを多重化して、注目ブロックのクラスコードＣＬを得る。この注目ブロックのクラスコードＣＬは、出力端子５８に出力される。
【００５４】
なお、図３に示すクラスコード生成回路１０５では、クラスコードＣＬＡ，ＣＬＤ，ＣＬＰの全てを用いてクラスコードＣＬを得るものであるが、クラスコードＣＬをクラスコードＣＬＡ，ＣＬＤ，ＣＬＰの一部のみを用いて得るようにしてもよい。
【００５５】
図１に戻って、また、符号化装置１００は、クラスコード生成回路１０５で生成された注目ブロックおよびこの注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードＣＬに基づいて、注目ブロックのアドレスＡＤＤ＿Ｂを生成するアドレス生成回路１０６を有している。本実施の形態において、クラスコード生成回路１０５は、図５に示すように、注目ブロックのクラスコードＣＬ［ｉ］を下位ビット側に配置し、この注目ブロックの前に位置する７個の周囲ブロックのクラスコードＣＬ［ｉ−７］〜ＣＬ［ｉ−１］を上位ビット側に配置して、アドレスＡＤＤ＿Ｂを生成する。このアドレスＡＤＤ＿Ｂは、クラスコードＣＬのビット数をＮとすると、８Ｎビットの情報となる。
【００５６】
また、符号化装置１００は、第１の記憶手段としての頻度メモリ、および第２の記憶手段としての最大頻度データメモリの領域を持ち、不揮発性メモリからなるロバストメモリ１０７を有している。
【００５７】
頻度メモリは、アドレス生成回路１０６で生成される注目ブロックのアドレスＡＤＤ＿Ｂの各値の頻度を記憶するメモリである。つまり、この頻度メモリは、図６Ａに示すように、アドレスＡＤＤ＿Ｂの各値に対応した記憶領域を持ち、この各記憶領域に頻度が記憶されるようになっている。
【００５８】
また、最大頻度データメモリは、周囲ブロックのクラスコードによるアドレス部分（上位７Ｎビット）の各値毎に、頻度メモリに記憶される最大頻度に対応したアドレスＡＤＤ＿Ｂがアドレス生成回路１０６で生成された際の注目ブロックを最大頻度データとして、そのアドレスＡＤＤ＿Ｂに対応付けて記憶するメモリである。つまり、この最大頻度データメモリは、図６Ｂに示すように、アドレスＡＤＤ＿Ｂの上位７Ｎビットの各値に対応した記憶領域を持ち、この記憶領域に最大頻度データとしてのブロックと、このブロックのアドレスＡＤＤ＿Ｂの下位Ｎビットが記憶されるようになっている。
【００５９】
また、符号化装置１００は、アドレス生成回路１０６で、注目ブロックのアドレスＡＤＤ＿Ｂが生成される毎に、そのアドレスＡＤＤ＿Ｂの値に対応した頻度メモリの記憶領域の頻度を１だけ増加する頻度更新回路１０８を有している。この場合、上述したように、ブロックソート回路１０３では、各ブロックについて、所定単位毎に、所定の特徴量を基準に順番を設定し、その順に各ブロックを出力するものである。したがって、頻度メモリにおける、アドレスＡＤＤ＿Ｂの上位７Ｎビットの各値毎の、下位Ｎビットの値の頻度の分布は、アドレス生成回路１０６で生成される多くのアドレスＡＤＤ＿Ｂに対して頻度更新を行うことで、図７に示すように、正規分布に近づいていく。図７の頻度分布では、下位Ｎビットの値がｘのとき、最大頻度ｍａｘとなっている。
【００６０】
また、符号化装置１００は、アドレスＡＤＤ＿Ｂの上位７Ｎビットの各値毎に、頻度メモリの記憶内容を常に監視し、最大頻度となる下位Ｎビットの値が変化したときは、その変化があった際に、上位７ビットの値に対応した最大頻度データメモリの記憶領域の記憶内容を、ＤＣＴ回路１０４より出力される注目ブロックおよびその値の変化があった下位Ｎビットに更新する最大頻度データ更新回路１０９を有している。
【００６１】
また、符号化装置１００は、ＤＣＴ回路１０４より順次出力される注目ブロックに、ブロックソート回路１０３より出力される注目ブロックのブロックアドレスｂ＿ａｄｄおよびクラスコード生成回路１０５で生成される注目ブロックのクラスコードＣＬを付加して出力符号化データを得るＤＣＴ係数付加回路１１０を有している。
【００６２】
ここで、ＤＣＴ回路１０４より順次出力される注目ブロックは、図４に示すように、８×８のＤＣＴブロックである。ＤＣＴ係数付加回路１１０は、このＤＣＴブロックを、図８に示すように、例えば１０×１０のブロックに拡大し、増加した複数個の基底部分（ハッチング部分）を利用して、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを付加する。
【００６３】
この場合、例えば、１つの基底部分に、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬの１ビットを割り当てることが考えられる。その場合、例えば、ビットが「０」であるときは負の所定値とし、ビットが「１」であるときは正の所定値とすることで、復号化装置側でこれらブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを誤りなく分離できる。
【００６４】
なお、各基底部分が複数段階の値（絶対値）を取り得るように構成し、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを付加するための基底部分の個数を少なくすることが考えられる。例えば、各基底部分が０，ａ，ｂの３段階の値（絶対値）を取り得る場合、図９に示すように、４ビットのデータを２個の基底部分のみを用いて付加することが可能となる。なお、図９の下部の項目は、値を棒の長さで表しており、上方向は正値、下方向は負値を示している。
【００６５】
図１に戻って、また、符号化装置１００は、ＤＣＴ係数付加回路１１０より順次出力される出力符号化データとしてのブロックに対して逆ＤＣＴを施して出力符号化信号ＳＣｏｕｔを得る逆ＤＣＴ回路１１１と、この出力符号化信号ＳＣｏｕｔを出力する出力端子１１２とを有している。
【００６６】
図１に示す符号化装置１００の動作を説明する。
入力端子１０１に画像信号Ｖｉｎが入力され、この画像信号Ｖｉｎはブロック分割回路１０２に供給される。ブロック分割回路１０２は、画像信号Ｖｉｎを、１画面分の画像信号毎に、それぞれ８×８の画素データを含む第１〜第Ｍのブロック（ＢＬＫ）に分割する（図２参照）。
【００６７】
ブロック分割回路１０２で分割されて得られた各ブロックはブロックソート回路１０３に供給される。ブロックソート回路１０３は、１画面分の画像信号毎に、第１のブロックを最初とし、第２〜第Ｍのブロックについては、この第１のブロックとの相関が高い順に順番を設定し、各ブロックを順に出力する。ブロックソート回路１０３は、各ブロックを順に出力する際に、そのブロックが画面内のどの位置にあったか、つまり第１〜第Ｍのいずれのブロックであったかを示すブロックアドレスｂ＿ａｄｄも出力する。
【００６８】
ブロックソート回路１０３より順に出力される注目ブロックはＤＣＴ回路１０４に供給される。ＤＣＴ回路１０４は、注目ブロックに対してＤＣＴを施し、８×８の画素データを含むブロックを、８×８のＤＣＴ係数（係数データ）を含むブロックに変換する。
【００６９】
ＤＣＴ回路１０４より順次出力される注目ブロックはクラスコード生成回路１０５に供給される。クラスコード生成回路１０５は、注目ブロックを構成する８×８のＤＣＴ係数を用いて、注目ブロックのクラスコードＣＬを生成する（図３参照）。クラスコード生成回路１０５で生成された注目ブロックのクラスコードＣＬはアドレス生成回路１０６に供給される。
【００７０】
アドレス生成回路１０６は、注目ブロックのクラスコードＣＬ［ｉ］およびこの注目ブロックの前に位置する７個の周囲ブロックのクラスコードＣＬ［ｉ−７］〜ＣＬ［ｉ−１］を用いて、注目ブロックのアドレスＡＤＤ＿Ｂを生成する（図５参照）。この場合、クラスコードＣＬ［ｉ−７］〜ＣＬ［ｉ−１］を上位ビット側に配置し、クラスコードＣＬ［ｉ］を下位ビット側に配置して、アドレスＡＤＤ＿Ｂを生成する。
【００７１】
アドレス生成回路１０６で、注目ブロックのアドレスＡＤＤ＿Ｂが生成される毎に、頻度更新回路１０８は、そのアドレスＡＤＤ＿Ｂの値に対応したロバストメモリ１０７内の頻度メモリの記憶領域の頻度を１だけ増加する。これにより、頻度メモリには、アドレス生成回路１０６で生成される注目ブロックのアドレスＡＤＤ＿Ｂの各値の頻度が記憶される（図６Ａ参照）。
【００７２】
上述したように、ブロックソート回路１０３で、各ブロックについて、１画面分の画像信号毎に、第１のブロックを最初とし、第２〜第Ｍのブロックについては、この第１のブロックとの相関が高い順に順番を設定し、その順に各ブロックを出力している。そのため、頻度メモリにおける、アドレスＡＤＤ＿Ｂの上位７Ｎビットの各値毎の、下位Ｎビットの値の頻度の分布は、アドレス生成回路１０６で生成される多くのアドレスＡＤＤ＿Ｂに対して頻度更新を行うことで、正規分布に近づいていく（図７参照）。
【００７３】
最大頻度データ更新回路１０９は、アドレスＡＤＤ＿Ｂの上位７Ｎビットの各値毎に、頻度メモリの記憶内容を常に監視している。そして、この更新回路１０９は、最大頻度となる下位Ｎビットの値が変化したときは、その変化があった際に、上位７ビットの値に対応した最大頻度データメモリの記憶領域の記憶内容を、ＤＣＴ回路１０４より出力される注目ブロックおよびその最大頻度となる下位Ｎビットに更新する。
【００７４】
これにより、最大頻度データメモリには、周囲ブロックのクラスコードによるアドレス部分（上位７Ｎビット）の各値毎に、頻度メモリに記憶される最大頻度に対応したアドレスＡＤＤ＿Ｂがアドレス生成回路１０６で生成された際の注目ブロックが、最大頻度データとして、そのアドレスＡＤＤ＿Ｂに対応付けて記憶される（図６Ｂ参照）。
【００７５】
ＤＣＴ回路１０４より順次出力される注目ブロックはＤＣＴ係数付加回路１１０に供給される。また、このＤＣＴ係数付加回路１１０には、ブロックソート回路１０３より出力される注目ブロックのブロックアドレスｂ＿ａｄｄおよびクラスコード生成回路１０５で生成される注目ブロックのクラスコードＣＬも供給される。ＤＣＴ係数付加回路１１０は、注目ブロックに、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを付加して出力符号化データを得る。この場合、ＤＣＴブロックを８×８から１０×１０に拡大し、増加した複数個の基底部分（ハッチング部分）を利用して、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを付加する（図８参照）。
【００７６】
このようにＤＣＴ係数付加回路１１０で順次得られる出力符号化データとしてのブロックは逆ＤＣＴ回路１１１に供給される。逆ＤＣＴ回路１１１は、供給される各ブロックに対して逆ＤＣＴを施して出力符号化信号ＳＣｏｕｔを得、出力端子１１２に出力する。
【００７７】
次に、復号化装置２００を説明する。図１０は、復号化装置２００の構成を示している。
この復号化装置２００は、符号化信号ＳＣｉｎが入力される入力端子２０１と、この入力端子２０１に入力される符号化信号ＳＣｉｎに対して、ブロック毎に、直交変換としてのＤＣＴを施すＤＣＴ回路２０２とを有している。ここで、符号化信号ＳＣｉｎは、上述した符号化装置１００の出力端子１１２に出力される出力符号化信号ＳＣｏｕｔと同じものである。そのため、ＤＣＴ回路２０２からは、上述した符号化装置１００のＤＣＴ係数付加回路１１０より出力される出力符号化データと同じ符号化データが得られる。
【００７８】
また、復号化装置２００は、ＤＣＴ回路２０２から出力される符号化データから、ブロック毎に、８×８のＤＣＴ係数（係数データ）を含むブロック、そのブロックのブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを分離して得る分離回路２０３を有している。
【００７９】
また、復号化装置２００は、分離回路２０３で分離された注目ブロックおよびこの注目ブロックの前に位置する所定個数の周囲ブロックのクラスコードＣＬに基づいて、注目ブロックのアドレスＡＤＤ＿Ｂを生成するアドレス生成回路２０４を有している。このアドレス生成回路２０４は、上述した符号化装置１００のアドレス生成回路１０６と同様に、アドレスＡＤＤ＿Ｂを生成する。
【００８０】
すなわち、注目ブロックのクラスコードＣＬ［ｉ］を下位ビット側に配置し、この注目ブロックの前に位置する７個の周囲ブロックのクラスコードＣＬ［ｉ−７］〜ＣＬ［ｉ−１］を上位ビット側に配置して、アドレスＡＤＤ＿Ｂを生成する。
【００８１】
ただし、後述するように、注目ブロックにエラーがあると判定された場合、その注目ブロックとして推定されたブロックが用いられ、エラー訂正が行われる。アドレス生成回路２０４は、上述の周囲ブロックとしてエラーがあると判定されたブロックが存在するとき、その周囲ブロックのクラスコードとして分離回路２０３で分離されたクラスコードＣＬは用いずに、上述の推定されたブロックに対応したアドレスＡＤＤ＿Ｂの下位Ｎビットを用いる。
【００８２】
また、復号化装置２００は、第１の記憶手段としての頻度メモリ、および第２の記憶手段としての最大頻度データメモリの領域を持ち、不揮発性メモリからなるロバストメモリ２０５を有している。
【００８３】
頻度メモリは、上述した符号化装置１００のロバストメモリ１０７内の頻度メモリと同様の記憶領域を持ち、同等の記憶内容が記憶されている。つまり、この頻度メモリは、アドレスＡＤＤ＿Ｂの各値の頻度を記憶している（図６Ａ参照）。例えば、符号化装置１００と復号化装置２００が一体的に構成される場合、同一の頻度メモリが符号化装置１００および復号化装置２００の双方で使用できる。
【００８４】
最大頻度データメモリは、上述した符号化装置１００のロバストメモリ１０７内の頻度メモリと同様の記憶領域を持ち、同等の記憶内容が記憶されている。つまり、この最大頻度データメモリは、周囲ブロックのクラスコードによるアドレス部分（上位７Ｎビット）の各値毎に、頻度メモリに記憶される最大頻度に対応したアドレスに対応付けて最大頻度データとしてのブロックを記憶している（図６Ｂ参照）。例えば、符号化装置１００と復号化装置２００が一体的に構成される場合、同一の最大頻度データメモリが符号化装置１００および復号化装置２００の双方で使用できる。
【００８５】
また、復号化装置２００は、エラー判定・訂正回路２０６を有している。このエラー判定・訂正回路２０６は、アドレス生成回路２０４で生成された注目ブロックのアドレスＡＤＤ＿Ｂおよびロバストメモリ２０５の頻度メモリの記憶内容に基づいて、注目ブロックにエラーがあるか否かを判定する。この場合、注目ブロックのアドレスＡＤＤ＿Ｂの頻度がしきい値と比較され、しきい値より大きいときはエラーがないと判定し、しきい値以下であるときはエラーがあると判定する。このしきい値は、頻度メモリに記憶されているアドレスＡＤＤ＿Ｂの上位７Ｎビットに係る頻度の分布を基準に、主観評価実験が行われることで設定される。
【００８６】
また、エラー判定・訂正回路２０６は、エラー判定結果に基づいて、分離回路２０３で順次分離されて得られる注目ブロックに対してエラー訂正を行う。この場合、エラー判定・訂正回路２０６は、エラーがないと判定するときは、分離回路２０３で分離された注目ブロックをそのまま出力し、エラーがあると判定するときは、注目ブロックを推定して出力する。
【００８７】
また、復号化装置２００は、エラー判定・訂正回路２０６より出力される各ブロックを、アドレスＡＤＤ＿Ｂに対応付けて一時的に記憶する一時メモリ２０７を有している。上述したように、エラー判定・訂正回路２０６より、注目ブロックとして推定されたブロックが出力される場合には、アドレスＡＤＤ＿Ｂとしてその推定されたブロックに対応したものが用いられる。例えば、この一時メモリ２０７の記憶内容は、例えば各１画面分の画像信号の最初でクリアされる。この場合、一時メモリ２０７には、複数画面の画像信号に係るブロックが混在して記憶されていることはない。
【００８８】
図１１のフローチャートは、エラー判定・訂正回路２０６におけるエラー訂正処理の手順を示している。
まず、ステップＳＴ１で、注目ブロックにエラーがあるか否かを判定する。エラーがないときは、ステップＳＴ２で、分離回路２０３で分離した注目ブロックをそのまま出力し、その後に、ステップＳＴ３で、処理を終了する。
【００８９】
エラーがあるときは、ステップＳＴ４で、ロバストメモリ２０５内の頻度メモリの記憶内容に基づいて、注目ブロックのアドレスＡＤＤ＿Ｂの上位７Ｎビットと同じ値の上位７Ｎビットを持つ各アドレスのうち最大頻度のアドレスを第１目標アドレスとする。そして、ステップＳＴ５で、一時メモリ２０７に、第１目標アドレスに対応付けて記憶されているブロックがあるか否かを判定する。
【００９０】
ブロックがあるときは、ステップＳＴ６で、そのブロックは複数個であるか否かを判定する。ブロックが一個であるときは、ステップＳＴ７で、そのブロックを注目ブロックと推定して出力し、その後に、ステップＳＴ３で、処理を終了する。一方、ブロックが複数個であるときは、ステップＳＴ８で、ロバストメモリ２０５内の最大頻度データメモリに、注目ブロックのアドレスＡＤＤ＿Ｂの上位７Ｎビットの値に対応して記憶されている最大頻度データとしてのブロックと最も相関の高いブロックを注目ブロックと推定して出力し、その後に、ステップＳＴ３で、処理を終了する。
【００９１】
上述のステップＳＴ５で、一時メモリ２０７に、第１目標アドレスに対応付けて記憶されているブロックがないときは、ステップＳＴ９で、ロバストメモリ２０５内の頻度メモリの記憶内容に基づいて、注目ブロックのアドレスＡＤＤ＿Ｂの上位７Ｎビットと同じ値の上位７Ｎビットを持つ各アドレスのうち２番目に頻度の大きなアドレスを第２目標アドレスとする。そして、ステップＳＴ１０で、一時メモリ２０７に、第２目標アドレスに対応付けて記憶されているブロックがあるか否かを判定する。
【００９２】
ブロックがあるときは、上述のステップＳＴ６に進み、第１目標アドレスに対応付けて記憶されているブロックがある場合と同様の処理をする。一方、ブロックがないときは、ステップＳＴ１１で、ロバストメモリ２０５内の最大頻度データメモリに、注目ブロックのアドレスＡＤＤ＿Ｂの上位７Ｎビットの値に対応して記憶されている最大頻度データとしてのブロックを注目ブロックと推定して出力し、その後に、ステップＳＴ３で、処理を終了する。
【００９３】
なお、図１１のフローチャートで示すエラー訂正処理では、ステップＳＴ５で、第１目標アドレスに対応付けて記憶されているブロックがないときは、ステップＳＴ９で、第２目標アドレスを認識し、それを用いた処理を行うようになっているが、第１目標アドレスに対応付けて記憶されているブロックがないとき、直ちにステップＳＴ１１に進み、最大頻度データとしてのブロックを注目ブロックと推定して出力するようにしてもよい。
【００９４】
また、図１１のフローチャートで示すエラー訂正処理では、ステップＳＴ１で、注目ブロックにエラーがあると判定するとき、ステップＳＴ４で、第１目標アドレスを認識し、それを用いた処理を行うようになっているが、直ちにステップＳＴ１１に進み、最大頻度データとしてのブロックを注目ブロックと推定して出力するようにしてもよい。この場合には、図１０に示す復号化装置２００において、一時メモリ２０７は不要となる。
【００９５】
また、上述では、一時メモリ２０７に、エラー判定・訂正回路２０６より出力されるブロックの全てを記憶しておくものを示したが、推定されたブロックを除いて記憶するようにしてもよい。推定されたブロックは必ずしも正しいブロックであるとは限らない。推定されたブロックを除くことにより、推定されたブロックが正しいブロックでない場合の影響を回避できる。
【００９６】
また、一時メモリ２０７に、エラー判定・訂正回路２０６より出力されるブロックの全てを記憶しておくものの、フラグを付加しておいて、推定されたブロックと推定されていないブロックとの区別が可能となるように記憶しておいてもよい。その場合、図１１のフローチャートのステップＳＴ６で、複数個のブロックがある場合、推定されていないブロックを推定されたブロックに優先して用いることができる。これにより、推定されたブロックを新たな推定ブロックとして用いる回数を少なくでき、推定されたブロックが正しいブロックでない場合の影響を少なくできる。
【００９７】
図１０に戻って、また、復号化装置２００は、エラー判定・訂正回路２０６より順次出力された各ブロックに対して逆直交変換としての逆ＤＣＴを施す逆ＤＣＴ回路２０８を有している。この逆ＤＣＴ回路２０８は、８×８のＤＣＴ係数（係数データ）を含むブロックを、８×８の画素データを含むブロックに変換する。
【００９８】
また、復号化装置２００は、逆ソート手段およびブロック分解手段を構成するフレームメモリ２０９と、このフレームメモリ２０９から読み出される出力画像信号Ｖｏｕｔを出力する出力端子２１０とを有している。この場合、逆ＤＣＴ回路２０８より順次出力されたブロックの画素データは、分離回路２０３で分離して得られたブロックアドレスｂ＿ａｄｄに基づいて、フレームメモリ２０９のそのブロックの画面内の位置に対応したアドレスに書き込まれる。そして、このフレームメモリ２０９から、各１画面分の画像信号の画素データが、ラスタースキャン順に読み出され、出力画像信号Ｖｏｕｔが得られる。
【００９９】
図１０に示す復号化装置２００の動作を説明する。
入力端子２０１に符号化信号ＳＣｉｎが入力され、この符号化信号ＳＣｉｎはＤＣＴ回路２０２に供給される。ＤＣＴ回路２０２は、符号化信号ＳＣｉｎに対して、ブロック毎に、直交変換としてのＤＣＴを施す。ＤＣＴ回路２０２からは、符号化装置１００のＤＣＴ係数付加回路１１０より出力される出力符号化データと同じ符号化データが得られる。この符号化データは、それぞれブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬが付加された、８×８のＤＣＴ係数（係数データ）を含むブロックが連続したものである。
【０１００】
ＤＣＴ回路２０２から出力される符号化データは分離回路２０３に供給される。分離回路２０３は、符号化データから、ブロック毎に、８×８のＤＣＴ係数（係数データ）を含むブロック、そのブロックのブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを分離して得る。
【０１０１】
分離回路２０３で分離されたクラスコードＣＬはアドレス生成回路２０４に供給される。アドレス生成回路２０４は、注目ブロックおよびこの注目ブロックの前に位置する７個の周囲ブロックのクラスコードＣＬに基づいて、注目ブロックのアドレスＡＤＤ＿Ｂを生成する。この場合、注目ブロックのクラスコードＣＬ［ｉ］を下位ビット側に配置し、７個の周囲ブロックのクラスコードＣＬ［ｉ−７］〜ＣＬ［ｉ−１］を上位ビット側に配置し、アドレスＡＤＤ＿Ｂを生成する。
【０１０２】
ただし、注目ブロックにエラーがあると判定された場合、その注目ブロックとして推定されたブロックが用いられてエラー訂正が行われるので、アドレス生成回路２０４は、上述の周囲ブロックとしてエラーがあると判定されたブロックが存在するとき、その周囲ブロックのクラスコードとして分離回路２０３で分離されたクラスコードＣＬを用いるのではなく、上述の推定されたブロックに対応したアドレスＡＤＤ＿Ｂの下位Ｎビットを用いる。これにより、アドレスＡＤＤ＿Ｂの上位７Ｎビットの正確度が増すようにしている。
【０１０３】
分離回路２０３で順次分離されて得られる注目ブロックはエラー判定・訂正回路２０６に供給される。このエラー判定・訂正回路２０６は、アドレス生成回路２０４で生成された注目ブロックのアドレスＡＤＤ＿Ｂおよびロバストメモリ２０５内の頻度メモリの記憶内容に基づいて、注目ブロックにエラーがあるか否かを判定する。この場合、注目ブロックのアドレスＡＤＤ＿Ｂの頻度がしきい値と比較され、しきい値より大きいときはエラーがないと判定し、しきい値以下であるときはエラーがあると判定する。
【０１０４】
これは、注目ブロックのアドレスＡＤＤ＿Ｂのうち周囲ブロックのクラスコードによるアドレス部分の各値毎の、注目ブロックのクラスコードの各値の頻度の分布は上述したように正規分布となるが、注目ブロックのアドレスＡＤＤ＿Ｂがこの正規分布の中心から大きくはずれている場合には、この注目ブロック自体が誤っていると考えられるからである。
【０１０５】
また、エラー判定・訂正回路２０６は、エラー判定結果に基づいて、分離回路２０３で順次分離されて得られる注目ブロックに対してエラー訂正を行う。この場合、エラー判定・訂正回路２０６は、エラーがないと判定するときは、分離回路２０３で分離された注目ブロックをそのまま出力し、エラーがあると判定するときは、注目ブロックを推定して出力してエラー訂正を行う（図１１参照）。
【０１０６】
この場合、このエラー判定・訂正回路２０６より出力される各ブロックは、一時メモリ２０７に、アドレスＡＤＤ＿Ｂに対応付けて一時的に記憶される。この場合、エラー判定・訂正回路２０６より、注目ブロックとして推定されたブロックが出力される場合には、アドレスＡＤＤ＿Ｂとしてその推定されたブロックに対応したものが用いられる。この一時メモリ２０７の記憶内容は、エラー判定・訂正回路２０６における上述したエラー訂正処理に用いられる。
【０１０７】
エラー判定・訂正回路２０６より順次出力された各ブロックは逆ＤＣＴ回路２０８に供給される。逆ＤＣＴ回路２０８は、各ブロックに対して逆ＤＣＴを施し、８×８のＤＣＴ係数（係数データ）を含むブロックを、８×８の画素データを含むブロックに変換する。
【０１０８】
そして、逆ＤＣＴ回路２０８より順次出力された各ブロックの画素データは、分離回路２０３で分離して得られたブロックアドレスｂ＿ａｄｄに基づいて、フレームメモリ２０９のそのブロックの画面内位置に対応したアドレスに書き込まれる。そして、このフレームメモリ２０９から、各１画面分の画像信号の画素データが、ラスタースキャン順に読み出され、出力画像信号Ｖｏｕｔが得られる。この出力画像信号Ｖｏｕｔは出力端子２１０に出力される。
【０１０９】
このように本実施の形態においては、符号化装置１００で各ブロックに誤り訂正符号を付加することなく、復号化装置２００で各ブロックのエラーを訂正することができる。したがって、符号化信号の冗長性を抑えて効率的に符号化を行うことができる。また、符号化装置１００に誤り訂正符号を生成して付加する回路を備える必要がなく、また復号化装置２００に誤り訂正符号を用いた誤り訂正回路を備える必要がなく、符号化装置１００や復号化装置２００の回路規模を小さくできる。
【０１１０】
なお、上述実施の形態においては、図１に示す符号化装置１００において、ＤＣＴ係数付加回路１１０で順次得られる出力符号化データとしてのブロックを逆ＤＣＴ回路１１１で逆ＤＣＴを施して出力符号化信号ＳＣｏｕｔを得、この出力符号化信号ＳＣｏｕｔを出力端子１１２に出力するようになっているが、ＤＣＴ係数付加回路１１０で順次得られる出力符号化データを直接出力符号化信号ＳＣｏｕｔとして出力端子１１２に出力する構成とすることもできる。この場合、符号化装置１００においては逆ＤＣＴ回路１１１を省略できる。その場合、図１０に示す復号化装置２００では、入力端子２０１に入力される符号化信号ＳＣｉｎにＤＣＴを施すことなく、この符号化信号ＳＣｉｎを分離回路２０３に直接供給できる。つまり、復号化装置２００においては、ＤＣＴ回路２０２を省略できる。
【０１１１】
また、上述実施の形態においては、直交変換としてＤＣＴを用いたものであるが、このＤＣＴの代わりに、ウォーブレット変換、離散サイン変換などのその他の直交変換を用いることもできる。
【０１１２】
また、上述実施の形態においては、符号化装置１００において、ＤＣＴ回路１０４から順次出力される注目ブロックに、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを付加して出力符号化データを得るようにているが、クラスコードＣＬを付加しないで出力符号化データを得るようにしてもよい。その場合には、復号化装置２００において、符号化装置１００のクラスコード生成回路１０５と同様のクラスコード生成回路を設け、分離回路２０３で順次分離される注目ブロックのクラスコードＣＬを生成する。
【０１１３】
また、上述実施の形態においては、符号化装置１００において、ブロックソート回路１０３より順次出力され注目ブロックに対してＤＣＴ回路１０４でＤＣＴを施し、その後にクラスコード生成処理および出力符号化データ生成処理等を行うようにしているが、注目ブロックにＤＣＴを施さない構成とすることもできる。その場合、クラスコード生成回路１０５では、注目ブロックを構成する８×８の画素データに、それぞれ例えば１ビットのＡＤＲＣ（Ａｄａｐｔｉｖｅ　Ｄｙｎａｍｉｃ　Ｒａｎｇｅ　Ｃｏｄｉｎｇ）等の処理を施し、レベル分布パターンに係るクラスコードＣＬを得ることが考えられる。
【０１１４】
またその場合、ＤＣＴ係数付加回路１１０の部分では、８×８の画素データからなる注目ブロックに、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを付加して出力符号化データを得ることとなる。この出力符号化データは、直接出力端子１１２に出力される。この場合、符号化装置１００では、ＤＣＴ回路１０４、逆ＤＣＴ回路１１１を不要とできる。その場合、復号化装置２００では、ＤＣＴ回路２０２、逆ＤＣＴ回路２０８が不要となる。
【０１１５】
なお、図１の符号化装置１００および図１０の復号化装置２００における処理を、例えば図１２に示すような信号処理装置３００によって、ソフトウェアで実現することも可能である。
【０１１６】
まず、図１２に示す信号処理装置３００について説明する。この信号処理装置３００は、装置全体の動作を制御するＣＰＵ３０１と、このＣＰＵ３０１の制御プログラム等が格納されたＲＯＭ（ｒｅａｄ　ｏｎｌｙ　ｍｅｍｏｒｙ）３０２と、ＣＰＵ３０１の作業領域を構成するＲＡＭ（ｒａｎｄｏｍ　ａｃｃｅｓｓ　ｍｅｍｏｒｙ）３０３とを有している。これらＣＰＵ３０１、ＲＯＭ３０２およびＲＡＭ３０３は、それぞれバス３０４に接続されている。
【０１１７】
また、信号処理装置３００は、外部記憶装置としてのハードディスクドライブ（ＨＤＤ）３０５と、頻度メモリおよび最大頻度データメモリの領域を持ち、不揮発性メモリからなるロバストメモリ３０６と、フレームメモリ３１１とを有している。これらハードディスクドライブ３０５、ロバストメモリ３０６およびフレームメモリ３１１は、それぞれバス３０４に接続されている。
【０１１８】
また、信号処理装置３００は、符号化装置として機能するときは画像信号Ｖｉｎを入力し、復号化装置として機能するときは符号化信号ＳＣｉｎを入力するための入力端子３０７と、符号化装置として機能するときは符号化信号ＳＣｏｕｔを出力し、復号化装置として機能するときは画像信号Ｖｏｕｔを出力するための出力端子３０９とを有している。端子３０７，３０９はそれぞれインタフェース３０８，３１０を介してバス３０４に接続されている。
【０１１９】
図１３のフローチャートを参照して、図１２に示す信号処理装置３００が符号化装置として機能する場合におけるＣＰＵ３０１の処理手順を説明する。
まず、ステップＳＴ２１で、処理を開始し、ステップＳＴ２２で、入力端子３０７より１画面分の画像信号Ｖｉｎを入力する。このように入力端子３０７より入力される画像信号ＶｉｎをＲＡＭ３０３に一時的に格納する。なお、この画像信号Ｖｉｎがハードディスクドライブ３０５に予め記録されている場合には、このドライブ３０５からこの画像信号Ｖｉｎを読み出してＲＡＭ３０３に一時的に格納する。
【０１２０】
次に、ステップＳＴ２３で、画像信号Ｖｉｎの全画面分の処理が終わったか否かを判定する。処理が終わったときは、ステップＳＴ２４で、処理を終了する。一方、処理が終わっていないときは、ステップＳＴ２５に進む。
【０１２１】
ステップＳＴ２５では、１画面分の画像信号Ｖｉｎを、それぞれ８×８の画素データを含む第１〜第Ｍのブロック（ＢＬＫ）に分割し（図２参照）、第１のブロックを最初とし、第２〜第Ｍのブロックについては、この第１のブロックとの相関が高い順に順番を設定する。
【０１２２】
次に、ステップＳＴ２６で、注目ブロックに対してＤＣＴを施し、８×８の画素データからなるブロックを、８×８のＤＣＴ係数（係数データ）からなるブロックに変換する。最初の注目ブロックは第１のブロックである。そして、ステップＳＴ２７で、ＤＣ係数、ＡＣ係数等を用いて、注目ブロックのクラスコードＣＬを生成する（図３参照）。
【０１２３】
次に、ステップＳＴ２８で、注目ブロックのクラスコードＣＬ［ｉ］と、直前７個の周囲ブロックのクラスコードＣＬ［ｉ−７］〜ＣＬ［ｉ−１］とから、注目ブロックのアドレスＡＤＤ＿Ｂを生成する（図５参照）。
【０１２４】
次に、ステップＳＴ２９で、ステップＳＴ２８で生成された注目ブロックのアドレスＡＤＤ＿Ｂに基づいて、ロバストメモリ３０６内の頻度メモリの記憶内容を更新する。つまり、そのアドレスＡＤＤ＿Ｂの値に対応した頻度メモリの記憶領域の頻度を１だけ増加する。
【０１２５】
次に、ステップＳＴ３０で、ロバストメモリ３０６内の最大頻度データメモリの記憶内容を更新する。つまり、アドレスＡＤＤ＿Ｂの上位７Ｎビットの各値毎に、頻度メモリの記憶内容を監視しており、ステップＳＴ２９における頻度メモリの記憶内容の更新により、最大頻度となる下位Ｎビットの値が変化したときは、上位７ビットの値に対応した最大頻度データメモリの記憶領域の記憶内容を、注目ブロックおよび最大頻度となる下位Ｎビットに更新する。
【０１２６】
次に、ステップＳＴ３１で、注目ブロックに、その注目ブロックが画面内のどの位置にあったかを示すブロックアドレスｂ＿ａｄｄおよびステップＳＴ２７で生成されたその注目ブロックのクラスコードＣＬを付加し、ステップＳＴ３２で、それに対して逆ＤＣＴを施し、その後に出力端子３０９に注目ブロックの符号化信号ＳＣｏｕｔとして出力する。
【０１２７】
次に、ステップＳＴ３３で、ステップＳＴ２２で入力された１画面分の画像信号Ｖｉｎの全ブロックにおいて符号化信号ＳＣｏｕｔを得る処理が終了したか否かを判定する。終了しているときは、ステップＳＴ２２に戻り、次の１画面分の画像信号Ｖｉｎの入力処理に移る。一方、処理が終了していないときは、ステップＳＴ２６に戻って、次の注目ブロックについての処理に移る。
【０１２８】
このように、図１３に示すフローチャートに沿って処理をすることで、図１に示す符号化装置１００と同様の手法によって、画像信号Ｖｉｎから符号化信号ＳＣｏｕｔを得ることができる。
【０１２９】
図１４のフローチャートを参照して、図１２に示す信号処理装置３００が復号化装置として機能する場合におけるＣＰＵ３０１の処理手順を説明する。
まず、ステップＳＴ４１で、処理を開始し、ステップＳＴ４２で、入力端子３０７より１画面分の符号化信号ＳＣｉｎを入力する。このように入力端子３０７より入力される符号化信号ＳＣｉｎをＲＡＭ３０３に一時的に格納する。なお、この符号化信号ＳＣｉｎがハードディスクドライブ３０５に予め記録されている場合には、このドライブ３０５からこの符号化信号ＳＣｉｎを読み出してＲＡＭ３０３に一時的に格納する。
【０１３０】
次に、ステップＳＴ４３で、符号化信号ＳＣｉｎの全画面分の処理が終わったか否かを判定する。処理が終わったときは、ステップＳＴ４４で、処理を終了する。一方、処理が終わっていないときは、ステップＳＴ４５に進む。
【０１３１】
ステップＳＴ４５では、１画面分の符号化信号ＳＣｉｎの注目ブロックに係るブロックに対してＤＣＴを施し、ブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬが付加されている、８×８のＤＣＴ係数（係数データ）からなる注目ブロックを得る。そして、ステップＳＴ４６で、注目ブロック、そのブロックアドレスｂ＿ａｄｄおよびクラスコードＣＬを抽出する。
【０１３２】
次に、ステップＳＴ４７で、注目ブロックのクラスコードＣＬ［ｉ］と、直前７個の周囲ブロックのクラスコードＣＬ［ｉ−７］〜ＣＬ［ｉ−１］とから、注目ブロックのアドレスＡＤＤ＿Ｂを生成する（図５参照）。ただし、注目ブロックにエラーがあると判定された場合、その注目ブロックとして推定されたブロックが用いられてエラー訂正が行われるので、上述の周囲ブロックとしてエラーがあると判定されたブロックが存在するとき、その周囲ブロックのクラスコードとしてステップＳＴ４６で抽出されたクラスコードＣＬを用いるのではなく、上述の推定されたブロックに対応したアドレスＡＤＤ＿Ｂの下位Ｎビットを用いる。
【０１３３】
次に、ステップＳＴ４８で、注目ブロックのアドレスＡＤＤ＿Ｂおよびロバストメモリ内の頻度メモリの記憶内容に基づいて、注目ブロックにエラーがあるか否かを判定する。この場合、注目ブロックのアドレスＡＤＤ＿Ｂの頻度がしきい値と比較され、しきい値より大きいときはエラーがないと判定し、しきい値以下であるときはエラーがあると判定する。
【０１３４】
また、このステップＳＴ４８で、エラー判定結果に基づいて、ステップＳＴ４６で抽出された注目ブロックに対してエラー訂正を行う。この場合、エラーがないと判定するときは、注目ブロックをそのままエラー訂正後のブロックとし、エラーがあると判定するときは、注目ブロックを推定し、その推定された注目ブロックをエラー訂正後のブロックとする。この場合、ロバストメモリ内の最大頻度データの記憶内容および後述のステップＳＴ４９でＲＡＭ３０３に記憶したエラー訂正後のブロックに基づいて注目ブロックの推定を行う（図１１参照）。
【０１３５】
次に、ステップＳＴ４９で、エラー訂正後のブロックを、アドレスＡＤＤ＿Ｂに対応付けてＲＡＭ３０３に一時的に記憶する。この場合、エラー訂正後のブロックが推定されたブロックである場合には、アドレスＡＤＤ＿Ｂとしてその推定されたブロックに対応したものが用いられる。このＲＡＭ３０３の記憶内容は、上述したようにエラー訂正処理に用いられる。
【０１３６】
次に、ステップＳＴ５０で、エラー訂正後の注目ブロックに対して逆ＤＣＴ処理を施し、８×８のＤＣＴ係数（係数データ）からなるブロックを、８×８の画素データからなるブロックに変換する。そして、ステップＳＴ５１で、注目ブロックの画素データを、ステップＳＴ４６で抽出されたブロックアドレスｂ＿ａｄｄに基づいて、フレームメモリ３１１の、そのブロックの画面内位置に対応したアドレスに書き込む。
【０１３７】
次に、ステップＳＴ５２で、ステップＳＴ４２で入力された１画面分の符号化信号ＳＣｉｎの全ブロックの処理が終了したか否かを判定する。終了しているときは、ステップＳＴ５３で、フレームメモリ３１１から、各１画面分の画像信号の画素データをラスタースキャン順に読み出し、その画素データからなる出力画像信号Ｖｏｕｔを出力端子３０９に出力する。一方、処理が終了していないときは、ステップＳＴ４５に戻って、次の注目ブロックについての処理に移る。
【０１３８】
このように、図１４に示すフローチャートに沿って処理をすることで、図１０に示す復号化装置２００と同様の手法によって、符号化信号ＳＣｉｎから画像信号Ｖｏｕｔを得ることができる。
【０１３９】
なお、上述実施の形態においては、情報信号が画像信号であるものを示したが、この発明は情報信号が音声信号であるものにも同様に適用できる。情報信号が画像信号である場合には所定単位は例えば上述したように１画面分の画像信号とされるが、情報信号が音声信号である場合には所定単位は例えば所定時間分または所定サンプルデータ数分の音声信号とされる。
【０１４０】
【発明の効果】
この発明によれば、複数の情報データからなる入力情報信号を、所定単位毎に、それぞれ所定個数の情報データを含む複数のブロックに分割し、そして各ブロックについて、所定単位毎に、所定の特徴量に基づいて順番を設定して出力し、出力される各ブロックに少なくとも所定単位内のどの位置にあるかを示すブロックアドレスを付加して出力符号化データを得るものであり、エラー訂正符号を使用せずにエラー訂正を行うことができ、冗長性を抑えて効率的に符号化でき、また符号化側および復号化側の回路規模を小とできる。
【図面の簡単な説明】
【図１】実施の形態としての符号化装置の構成を示すブロック図である。
【図２】ブロック分割処理を説明するための図である。
【図３】クラスコード生成回路の構成を示すブロック図である。
【図４】ＤＣＴブロックの一例を示す図である。
【図５】アドレス生成処理を説明するための図である。
【図６】ロバストメモリ内の頻度メモリおよび最大頻度データメモリを説明するための図である。
【図７】ロバストメモリ内の頻度メモリにおける各上位７Ｎビットに関する頻度分布を示す図である。
【図８】ＤＣＴブロックの拡大を説明するための図である。
【図９】ブロックアドレス、クラスコードの付加例を説明するための図である。
【図１０】実施の形態としての復号化装置の構成を示すブロック図である。
【図１１】エラー訂正処理の手順を示すフローチャートである。
【図１２】符号化および復号化をソフトウェアで行うための信号処理装置の構成を示すブロック図である。
【図１３】符号化処理の手順を示すフローチャートである。
【図１４】復号化処理の手順を示すフローチャートである。
【符号の説明】
１００・・・符号化装置、１０１・・・入力装置、１０２・・・ブロック分割回路、１０３・・・ブロックソート回路、１０４・・・ＤＣＴ回路、１０５・・・クラスコード生成回路、１０６・・・アドレス生成回路、１０７・・・ロバストメモリ、１０８・・・頻度更新回路、１０９・・・最大頻度データ更新回路、１１０・・・ＤＣＴ係数付加回路、１１１・・・逆ＤＣＴ回路、１１２・・・出力端子、２００・・・復号化装置、２０１・・・入力端子、２０２・・・ＤＣＴ回路、２０３・・・分離回路、２０４・・・アドレス生成回路、２０５・・・ロバストメモリ、２０６・・・エラー判定・訂正回路、２０７・・・一時メモリ、２０８・・・逆ＤＣＴ回路、２０９・・・フレームメモリ、２１０・・・出力端子、３００・・・信号処理装置
【図１】
2004104693.tif 000003
【図２】
2004104693.tif 000004
【図３】
2004104693.tif 000005
【図４】
2004104693.tif 000006
【図５】
2004104693.tif 000007
【図６】
2004104693.tif 000008
【図７】
2004104693.tif 000009
【図８】
2004104693.tif 000010
【図９】
2004104693.tif 000011
【図１０】
2004104693.tif 000012
【図１１】
2004104693.tif 000013
【図１２】
2004104693.tif 000014
【図１３】
2004104693.tif 000015
【図１４】
2004104693.tif 000016