(57)【要約】【課題】ビットストリーム内の誤りを検出する手段を設け、ビットストリームがあまりにひどくは壊れていない場合には、誤りを隠して、デジタル的に再構成されたイメージをより視覚的に提示する。【解決手段】本発明は、再開始マーカ値を用いて、シーケンシャルＤＣＴベースのＪＰＥＧ復号化に対する誤り隠蔽方法を与える。本発明は、誤りを検出する手段、ＪＰＥＧ再開始マーカの特性を用いて誤りのあるＭＣＵの数を計算して隠蔽する手段を提供する。計算の後には、先に完全に復号化されたＭＣＵの結果数は、コピーされて誤り部分を隠蔽する。【選択図】  図４
2004260675.tif 000002
【特許請求の範囲】
【請求項１】
再開始マーカを用いた、シーケンシャルＤＣＴベースのＪＰＥＧ復号化における誤り隠蔽方法であって、
（ａ）ＪＰＥＧ復号化処理において誤りがあったときに、次の再開始マーカ”ＲＳＴｎｅｘ”を検索するステップと、
（ｂ）前記誤りが検出された再開始インターバル期間において、正確に復号化されなかった最小符号化ユニットＭＣＵの数”ＲｅｓｉｄｕｅＥｒｒＭＣＵ”を計算するステップと、
（ｃ）前記誤りが検出されたインターバルを含まない、前記誤りのある再開始インターバル期間”ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ”の数を見出すステップと、
（ｄ）前記再開始インターバル期間”  ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ  ”における最小符号化ユニットＭＣＵの数”  ＩｎｔＰｅｒｉｏｄＥｒｒＭＣＵ”を計算するステップと、
（ｅ）前に完全に復号化された最小符号化ユニットＭＣＵから開始され次の再開始マーカ”  ＲＳＴｎｅｘｔ  ”まで至る誤り期間において、正確に復号化されていない最小符号化ユニットＭＣＵの数”ＣｏｐｙＮｕｍ”を見出すステップと、
（ｆ）前に完全に復号化された最小符号化ユニットＭＣＵの数”ＣｏｐｙＮｕｍ”を、デジタルイメージ再構成を行うメモリにコピーして、前記誤り期間に発生していた前記誤りを隠蔽するステップと
を含む、誤り隠蔽方法。
【請求項２】
前記ステップ（ａ）において、前記誤りは、ハフマン復号化の間に発生し、またはブロックのハフマン復号化が完了せずＪＰＥＧマーカを発見した場合に発生し、または、再開始マーカの列がチェックされ、前記ＪＰＥＧ復号化処理の間に不正確であることが判明した場合に発生する、請求項１に記載の誤り隠蔽方法。
【請求項３】
前記ステップ（ｂ）において、前記最小符号化ユニットＭＣＵの数”ＲｅｓｉｄｕｅＥｒｒＭＣＵ”は、再開始インターバルの値から、前記誤りが検出された再開始インターバル期間において完全に復号化された前記最小符号化ユニットＭＣＵの数”ＣｕｒｒＩｎｔＰｅｒｉｏｄＭＣＵ”を減算（ＲｅｓｉｄｕｅＥｒｒＭＣＵ  ＝  Ｒｉ    ＣｕｒｒＩｎｔＰｅｒｉｏｄＭＣＵ）することにより計算される、請求項１に記載の誤り隠蔽方法。
【請求項４】
前記ステップ（ｃ）において、前記再開始インターバル期間”  ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ  ”は、次の再開始マーカ”  ＲＳＴｎｅｘｔＨｌｆＢｙｔｅ  ”の右の桁の値から、予期される再開始マーカ”ＲＳＴｅｘｐＨｌｆＢｙｔｅ”  の右の桁の値を減算（ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ  ＝  ＲＳＴｎｅｘｔＨｌｆＢｙｔｅ    ＲＳＴｅｘｐＨｌｆＢｙｔ）して、負の場合にはその減算値に８を加算する、請求項１に記載の誤り隠蔽方法。
【請求項５】
前記ステップ（ｄ）において、最小符号化ユニットＭＣＵの数”  ＩｎｔＰｅｒｉｏｄＥｒｒＭＣＵ”は、再開始インターバルの値”Ｒｉ”に、前記誤りのある再開始インターバル期間”ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ”の値を乗算（ＩｎｔＰｅｒｉｏｄＥｒｒＭＣＵ  ＝  Ｒｉ  ｘ  ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ）することにより計算される、請求項１に記載の誤り隠蔽方法。
【請求項６】
前記ステップ（ｅ）において、正確に復号化されていない前記最小符号化ユニットＭＣＵの数”ＣｏｐｙＮｕｍ”は、前記誤りが検出された再開始インターバル期間において、正確に復号化されなかった前記最小符号化ユニットＭＣＵの数”ＲｅｓｉｄｕｅＥｒｒＭＣＵ”と、再開始インターバル期間”ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ”における前記最小符号化ユニットＭＣＵの数”  ＩｎｔＰｅｒｉｏｄＥｒｒＭＣＵ”を加算（ＣｏｐｙＮｕｍ  ＝  ＲｅｓｉｄｕｅＥｒｒＭＣＵ  ＋  ＩｎｔＰｅｒｉｏｄＥｒｒＭＣＵ）することにより計算される、請求項１に記載の誤り隠蔽方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、誤り隠蔽（ｃｏｎｃｅａｌｍｅｎｔ）目的の、シーケンシャルＤＣＴベースＪＰＥＧ復号器に関する。本発明はまた、フレームの復号を行うシーケンシャルＤＣＴベースＪＰＥＧ復号に用いられるモーションＪＰＥＧ復号器に利用できる。
【０００２】
【従来の技術】
シーケンシャルＤＣＴベースのＪＰＥＧ復号処理の間に、ビットストリームで誤りが発生する場合、その結果得られるデジタル的に再構成されたイメージはひずみ、または復号できない。
【０００３】
ＩＳＯ／ＩＥＣ  １０９１８−１  情報技術−連続トーン静止画のデジタル圧縮および符号化：要件およびガイド  においては、ＪＰＥＧ復号処理の間に誤りがあったとき、誤りを隠す手順は存在しない。
【０００４】
【発明が解決しようとする課題】
ビットストリーム内に存在する誤りは、誤りのひどさによっては、再構成されたイメージがひずみ、または復号できないことになる。
【０００５】
ビットストリーム内の誤りを検出する何らかの手段があり、ビットストリームがあまりにひどくは壊れていない場合には、誤りを隠して、デジタル的に再構成されたイメージをより視覚的に提示できる。
【０００６】
【課題を解決するための手段】
ＩＳＯ／ＩＥＣ  １０９１８−１  情報技術−連続トーン静止画のデジタル圧縮および符号化：要件およびガイドは、再開始可能の場合に、エントロピー符号化セグメント間に配置された条件マーカとして再開始マーカを定義する。
【０００７】
計８つの特異なマーカが利用されている。それらは０ｘＦＦＤ０  から  ０ｘＦＦＤ７までであり、８を法とする計算で再開始される。
【０００８】
ＩＳＯ／ＩＥＣ  １０９１８−１  情報技術−連続トーン静止画のデジタル圧縮および符号化：要件およびガイドは、最小符号化ユニット（ＭＣＵ）を、符号化されたデータユニットの最小グループとして定義する。
【０００９】
再開始マーカは、最小符号化ユニットＭＣＵの固定されたインターバルでビットストリーム内に挿入される。このインターバルの値は、再開始インターバルの値Ｒｉにより決定される。
【００１０】
本発明は、誤り検出および誤り隠蔽計算のために、再開始マーカの特性を利用する。
【００１１】
再開始マーカの値は、値Ｒｉにより定義される所定数の最小符号化ユニットＭＣＵを復号化した後に、再開始マーカの値がチェックされ、格納される。
【００１２】
誤り部分の後ろに次の再開始マーカを配置することにより、復号器は、ビットストリームの解析の間、誤りを飛ばすことができる。
【００１３】
本発明は、再開始マーカの格納値、および、次の再開始マーカの値を用いて前に完全に復号化された最小符号化ユニットＭＣＵの数を計算し、コピーして誤り部分を隠す。
【００１４】
そして、前に完全に復号化された最小符号化ユニットＭＣＵの計算後の数をコピーすることにより、デジタルイメージの再構成のためのメモリ内の誤り部分に対し誤り隠蔽を行う。
【００１５】
本発明の作用を説明する。まず、誤り隠蔽動作を機能させるには、符号器側において、再開始が可能でなければならない。本発明による新規な方法は、符号器側の変更を必要としない。
【００１６】
誤り隠蔽処理を起こす３つの例がある。第１の例は、ハフマン復号化処理の間に一致しない符号ワードが発見されると発生する。第２の例は、ブロックのハフマン復号化の完了時に、ＪＰＥＧマーカが発見されると発生する。最後の第３の例は、ＪＰＥＧ復号化処理の間に再開始マーカの列がチェックされ、正しくないことがわかると発生する。
【００１７】
再開始マーカの値はチェックされ、値Ｒｉにより定義された、所定数の最小符号化ユニットＭＣＵの復号化の後に格納する。
【００１８】
本発明はまた、完全に復号化された最小符号化ユニットＭＣＵの最新のコピーを格納する。誤りが生じると、本発明は、格納された最小符号化ユニットＭＣＵを用いて、誤り部分を隠す。
【００１９】
ビットストリームにおいて、最初の最小符号化ユニットＭＣＵで誤りが発生しても、その誤り部分は置換されない。それは、前に復号化された最小符号化ユニットＭＣＵが存在しないからである。
【００２０】
【発明の実施の形態】
本実施の形態では、誤りビットストリームのシーケンシャル離散コサイン変換（ＤＣＴ）ベースＪＰＥＧ復号化の例を用いて、誤り隠蔽方法の詳細を説明する。本発明の方法はまた、類似の技術を利用する別のエントロピー符号化アルゴリズムにもまた適用できる。
【００２１】
以下、図１〜４を参照して本発明の実施の形態を説明する。
【００２２】
図１は、ＭＣＵ３１内に部分的な誤りを有し、および、ＭＣＵ３２〜ＭＣＵ３６内に誤りを有するビットストリームの一部の例を示す。この例では、ＭＣＵ３１は、部分的にのみ復号化可能であり、一方ＭＣＵ３２〜ＭＣＵ３６は復号化できない。この例では、再開始インターバルＲｉの値は４である。
【００２３】
図２は、図１と同じビットストリームの例を示す。本明細書で用いられている用語が示されている。
【００２４】
図１の例による、誤りビットストリームの復号化を行う場合には、誤り隠蔽能力のない復号器は、そこから先に進むことはできない。その結果、図３に示すように、デジタル的に再構成されたイメージが突然壊れることがある。
【００２５】
他方、図１の例と同じ誤りビットストリームがあった場合には、本発明の復号器を取り込んだ新たな復号器はまず、次の再開始マーカ”ＲＳＴｎｅｘ”を検索する。図１における例では、”ＲＳＴｎｅｘ”の値は、０ｘＦＦＤ０である。誤りの前の再開始マーカの値は、０ｘ  ＦＦＤ６である。よって、予期される再開始マーカの値は、誤りがなかった場合には、０ｘＦＦＤ７となる。
【００２６】
誤りが検出された再開始インターバル期間内で正確に復号化されなかった最小符号化ユニットＭＣＵの数（”ＲｅｓｉｄｕｅＥｒｒＭＣＵ”）は、
2004260675.tif 000003
により計算される。
【００２７】
誤りが検出された再開始インターバル期間において、２つのＭＣＵが完全に復号化されているので、ＣｕｒｒＩｎｔＰｅｒｉｏｄＭＣＵの値は２である。
【００２８】
誤りが検出されたインターバルを含まない、誤りを有する再開始インターバル期間の数（”ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ”）は、次の再開始マーカ（”  ＲＳＴｎｅｘｔＨｌｆＢｙｔｅ  ”）の右の桁の値から、予期される再開始マーカ（”  ＲＳＴｅｘｐＨｌｆＢｙｔｅ  ”）の右の桁の値を除算し、除算結果が負であればその結果に８を加算することにより得られる。すなわち、
2004260675.tif 000004
となる。
【００２９】
ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ再開始インターバル期間におけるＭＣＵの数（”  ＩｎｔＰｅｒｉｏｄＥｒｒＭＣＵ”）は、ＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒの値を、再開始インターバルＲｉの値で乗算することにより計算できる。
2004260675.tif 000005
次に誤りが検出された再開始インターバル期間において正確に復号化できないＭＣＵの数（”ＲｅｓｉｄｕｅＥｒｒＭＣＵ”）とＦｕｌｌＩｎｔＰｅｒｉｏｄＥｒｒ再開始インターバル期間におけるＭＣＵの数（”  ＩｎｔＰｅｒｉｏｄＥｒｒＭＣＵ”）とを合計することにより、”ＣｏｐｙＮｕｍ”が得られる。
2004260675.tif 000006
前に完全に復号化されたＭＣＵ、すなわちＭＣＵ３０の”ＣｏｐｙＮｕｍ”は、この例では計算され６になり、コピーされて前に完全に復号化されたＭＣＵの後に発生した誤りを隠蔽する。
【００３０】
図４は、ＭＣＵ３０のコピーが６つ用いられて、誤りの位置（ＭＣＵ３１〜ＭＣＵ３６）を置換するのに利用される。よって誤りの隠蔽は、デジタル的に再構成されたイメージ上で行われる。
【００３１】
よって新たな復号化器は、残りのビットストリームについて、ＪＰＥＧ復号化処理を継続できる。
【００３２】
【発明の効果】
本明細書に記事された方法によれば、再開始が可能である場合にビットストリームに存在する誤りを隠蔽できる。
【００３３】
さらに、誤りの範囲が７つの連続再開始インターバルよりも小さい場合には、誤りのあるＭＣＵの数が正確に計算されるため、誤り隠蔽処理の間、画像のアスペクト比が維持できる。
【００３４】
誤りが７つの再開始インターバルよりも長く連続して広がっている場合には、本発明は、正確に誤りを有するＭＣＵの数を判定できない。
【００３５】
誤り隠蔽処理の性能は、再開始インターバルの値に依存する。再開始インターバルの値が小さいほど、隠蔽結果は向上する。
【図面の簡単な説明】
【図１】誤りを有するビットストリームの一部の例を示す図である。この例では、Ｒｉ値は４である。
【図２】本明細書で用いる用語を表した、誤りを有するビットストリームの一部の例を示す図である。
【図３】図１の誤りのあるビットストリームが復号化されたときの、誤り隠蔽能力のない復号器から出力されたデジタル的に再構成されたイメージの例を示す図である。
【図４】本発明を組み込んだ復号器から出力されたデジタル的に再構成されたイメージ上の、誤り隠蔽効果の例を示す図である。
【図１】
2004260675.tif 000007
【図２】
2004260675.tif 000008
【図３】
2004260675.tif 000009
【図４】
2004260675.tif 000010