JP6233121B2 - 画像処理装置及び画像処理プログラム - Google Patents

画像処理装置及び画像処理プログラム Download PDF

Info

Publication number
JP6233121B2
JP6233121B2 JP2014053676A JP2014053676A JP6233121B2 JP 6233121 B2 JP6233121 B2 JP 6233121B2 JP 2014053676 A JP2014053676 A JP 2014053676A JP 2014053676 A JP2014053676 A JP 2014053676A JP 6233121 B2 JP6233121 B2 JP 6233121B2
Authority
JP
Japan
Prior art keywords
quantization
module
result
encoding
inverse
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014053676A
Other languages
English (en)
Other versions
JP2015177431A (ja
Inventor
友紀 谷口
友紀 谷口
横瀬 太郎
太郎 横瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2014053676A priority Critical patent/JP6233121B2/ja
Publication of JP2015177431A publication Critical patent/JP2015177431A/ja
Application granted granted Critical
Publication of JP6233121B2 publication Critical patent/JP6233121B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、画像処理装置及び画像処理プログラムに関する。
特許文献1には、圧縮される画像の内容によってスケールファクタの値を変化させ、圧縮画像の品質を、ほぼ一定に保つことができる画像処理方式を提供することを目的とし、離散コサイン変換などの処理によって画像データを圧縮する際に、圧縮する画像データの内容が画像信号の変化が激しい絵柄の細かい部分か、あるいは画像信号の変化が穏やかな平坦な部分かに応じて量子化時のスケールファクタを変化させ、圧縮画像の品質をほぼ一定に保つようにしており、画像の内容が絵柄の細かい部分か平坦な部分化の判別は、一枚の画像を構成する各ブロックのDCTスペクトルの検出によって行い、この検出によって一枚の画像中の絵柄の細かい部分と平坦な部分との面積比、言い換えれば一枚の画像の全面積に対する絵柄の細かい部分又は平坦な部分の面積比を求め、予め視覚テストで求めておいた面積比とスケールファクタとの関係から求めた面積比に応じたスケールファクタを得て、このようにして得たスケールファクタを、量子化マトリクスの各閾値に乗算したのち量子化を行うことが開示されている。
特許文献2には、可変長符号化を用いた高能率符号化装置で量子化による画質劣化を改善することを目的とし、入力部から入力された標本値はブロック化部で複数の標本値毎にブロックに分割され、ブロック化部でブロック化された標本値は、直交変換部でブロック毎に直交変換されて変換成分になり、一方変換成分分類部では、直交変換部から出力される各変換成分に対して視覚上の重要度に従って分類を行い、量子化幅選択部では、変換成分分類部によって量子化すべき変換成分がどう分類されたかを基にして量子化幅を決定し、量子化部では、量子化幅選択部で選択された量子化幅を用いて変換成分を量子化して符号化部へ出力し、符号化部では、量子化された変換成分を可変長符号化して出力部へ出力することが開示されている。
特許文献3には、画像信号の符号化において、画像信号に重畳したノイズによる画質劣化を低減することを課題とし、直交変換器から出力される係数データを第1の量子化器は所定の量子化スケールで量子化し、また、第2の量子化器は前記係数データをパラメータ生成手段から出力される所定のパラメータで量子化し、選択器は直交変換ブロック内の係数データを保護領域内外に分類し、保護領域外の係数データであって、第2の量子化器にてゼロとなった係数データについてはゼロを選択し、保護領域内の全ての係数データ、あるいは保護領域外の第2の量子化器にてゼロとならなかった係数データについては第1の量子化器の出力を選択することが開示されている。
特許文献4には、各画像種別において、量子化データの配分による周波数特性を持たせることができ、再現性に優れた画像を形成することを課題とし、所定ブロックサイズの多値画像データを直交変換係数に分解し、空間周波数毎の振幅分布を検出し画像モードに分類する一方、画像モード毎に固有のビット数に変換し、そして、直交変換係数を空間周波数に応じて重み付けしておき、ブロック毎に量子化後の変換係数から重み付け振幅絶対値の大きい順に優先して有効係数を選択し、残った変換係数を無効とし、そして符号化部が有効係数には前記量子化された所定ビット長符号と有効フラグを割り当て、無効係数には無効であることを示す無効フラグのみを割り当てて符号化し、また、ブロック毎の符号量を一定内に制限するように有効係数の選択にフィードバックを行うことが開示されている。
特許文献5には、1回の圧縮で目標の圧縮率に到達でき、かつ伸長画像の画質劣化が少ない画像圧縮装置を提供することを課題とし、量子化テーブル選択部が、圧縮データ量計測部から送出される累積圧縮データ量と、周波数成分のデータから領域判定部によって判定される領域の区分と、圧縮率変化データ保存メモリから送出されるブロックの位置に対応する圧縮率変化データとに応じた量子化テーブルを量子化テーブル保存メモリが予め記録してる複数の量子化テーブルの中から選択し、その選択した量子化テーブルを用いてデータ圧縮部がDCT演算部から送出される周波数成分のデータを圧縮処理することが開示されている。
特開平03−181229号公報 特開平05−347709号公報 特開2003−348586号公報 特開2003−264705号公報 特開2003−199041号公報
本発明は、第1の量子化結果と重複した成分を含まないように、第2の量子化を行うようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、画像を量子化することによって、第1の量子化結果を生成する第1の量子化手段と、前記第1の量子化結果を逆量子化することによって、第1の逆量子化結果を生成する第1の逆量子化手段と、前記画像と前記第1の逆量子化結果との差分を算出する差分算出手段と、前記差分算出手段による差分結果を量子化することによって、第2の量子化結果を生成する第2の量子化手段と、画像を周波数変換することによって、変換係数を生成する変換手段と、前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段を具備し、前記第1の量子化手段は、前記変換係数を量子化することによって、第1の量子化結果を生成し、前記差分算出手段は、前記周波数変換と前記第1の逆量子化結果との差分を算出し、前記第1の量子化手段は、第1の量子化テーブルを用いて量子化を行い、前記第2の量子化手段は、第2の量子化テーブルを用いて量子化を行い、前記第1の量子化テーブルの量子化ステップは偶数値とし、前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できることを特徴とする画像処理装置である。
請求項2の発明は、請求項1に記載の画像処理装置による第1の量子化結果を逆量子化する第1の逆量子化手段と、請求項1に記載の画像処理装置による第2の量子化結果を逆量子化する第2の逆量子化手段と、前記第1の逆量子化手段による処理結果と前記第2の逆量子化手段による処理結果を合成する合成手段と、請求項1に記載の画像処理装置による第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、請求項1に記載の画像処理装置による第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段と、前記合成手段による合成結果を変換係数として、逆周波数変換することによって画像を生成する逆変換手段を具備し、前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化し、前記第1の逆量子化手段は、第1の量子化テーブルを用いて量子化を行い、前記第2の逆量子化手段は、第2の量子化テーブルを用いて量子化を行い、前記第1の量子化テーブルの量子化ステップは偶数値とし、前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できることを特徴とする画像処理装置である。
請求項3の発明は、前記第1の量子化結果、第2の量子化結果を送信する送信手段をさらに具備し、前記送信手段は、通信回線の速度に応じて、前記第1の量子化結果、又は該第1の量子化結果と前記第2の量子化結果のいずれかを送信することを特徴とする請求項1に記載の画像処理装置である。
請求項4の発明は、前記画像から予め定められた色成分情報を分配する分配手段と、前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段をさらに具備し、前記第1の量子化手段は、前記分配手段によって分配された色成分情報を量子化することを特徴とする請求項1に記載の画像処理装置である。
請求項5の発明は、請求項4に記載の画像処理装置による第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、請求項4に記載の画像処理装置による第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段をさらに具備し、前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化することを特徴とする請求項2に記載の画像処理装置である。
請求項6の発明は、前記第1の符号化手段による第1の符号化結果、第2の符号化手段による第2の符号化結果を送信する送信手段をさらに具備し、前記送信手段は、通信回線の速度に応じて、前記第1の符号化結果、又は該第1の符号化結果と前記第2の符号化結果のいずれかを送信することを特徴とする請求項4に記載の画像処理装置である。
請求項7の発明は、前記画像から予め定められた領域の画像情報を分配する分配手段と、前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段をさらに具備し、前記第1の量子化手段は、前記分配手段によって分配された領域の画像情報を量子化することを特徴とする請求項1に記載の画像処理装置である。
請求項8の発明は、請求項7に記載の画像処理装置による第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、請求項7に記載の画像処理装置による第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段をさらに具備し、前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化することを特徴とする請求項2に記載の画像処理装置である。
請求項9の発明は、前記第1の符号化手段による第1の符号化結果、第2の符号化手段による第2の符号化結果を送信する送信手段をさらに具備し、前記送信手段は、通信回線の速度に応じて、前記第1の符号化結果、又は該第1の符号化結果と前記第2の符号化結果のいずれかを送信することを特徴とする請求項7に記載の画像処理装置である。
請求項10の発明は、前記第1の量子化手段と前記第2の量子化手段は、前記量子化として非可逆圧縮を行い、前記第1の逆量子化手段は、前記逆量子化として前記非可逆圧縮に対応する伸長を行うことを特徴とする請求項1、3、4、6、7、9のいずれか一項に記載の画像処理装置である。
請求項11の発明は、前記第1の逆量子化手段と前記第2の逆量子化手段は、前記逆量子化として、請求項10に記載の前記非可逆圧縮に対応する伸長を行うことを特徴とする請求項2、5、8のいずれか一項に記載の画像処理装置である。
請求項12の発明は、前記第1の符号化結果を復号することによって、量子化結果を生成する復号手段と、前記復号手段による前記量子化結果を逆量子化する逆量子化手段と、前記逆量子化手段による処理結果を変換係数として、逆周波数変換することによって画像を生成する逆変換手段を具備することを特徴とする請求項に記載の画像処理装置である。
請求項13の発明は、コンピュータを、画像を量子化することによって、第1の量子化結果を生成する第1の量子化手段と、前記第1の量子化結果を逆量子化することによって、第1の逆量子化結果を生成する第1の逆量子化手段と、前記画像と前記第1の逆量子化結果との差分を算出する差分算出手段と、前記差分算出手段による差分結果を量子化することによって、第2の量子化結果を生成する第2の量子化手段と、画像を周波数変換することによって、変換係数を生成する変換手段と、前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段として機能させ、前記第1の量子化手段は、前記変換係数を量子化することによって、第1の量子化結果を生成し、前記差分算出手段は、前記周波数変換と前記第1の逆量子化結果との差分を算出し、前記第1の量子化手段は、第1の量子化テーブルを用いて量子化を行い、前記第2の量子化手段は、第2の量子化テーブルを用いて量子化を行い、前記第1の量子化テーブルの量子化ステップは偶数値とし、前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できることを特徴とする画像処理プログラムである。
請求項14の発明は、コンピュータを、請求項13に記載の画像処理プログラムが機能したコンピュータによる第1の量子化結果を逆量子化する第1の逆量子化手段と、請求項13に記載の画像処理プログラムが機能したコンピュータによる第2の量子化結果を逆量子化する第2の逆量子化手段と、前記第1の逆量子化手段による処理結果と前記第2の逆量子化手段による処理結果を合成する合成手段と、請求項13に記載の画像処理プログラムが機能したコンピュータによる第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、請求項13に記載の画像処理プログラムが機能したコンピュータによる第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段と、前記合成手段による合成結果を変換係数として、逆周波数変換することによって画像を生成する逆変換手段として機能させ、前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化し、前記第1の逆量子化手段は、第1の量子化テーブルを用いて量子化を行い、前記第2の逆量子化手段は、第2の量子化テーブルを用いて量子化を行い、前記第1の量子化テーブルの量子化ステップは偶数値とし、前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できることを特徴とする画像処理プログラムである。
請求項1の画像処理装置によれば、第1の量子化結果と重複した成分を含まないように、第2の量子化を行うことができる。また、画像を周波数変換して変換係数を生成し、その変換係数を量子化することができる。そして、第2の量子化テーブルの量子化ステップは、第1の量子化テーブルの量子化ステップの1/(2の累乗)とする、又は、1とすることができる。
請求項2の画像処理装置によれば、第1の量子化結果と、その第1の量子化結果と重複した成分を含まない第2の量子化結果に基づいて復号することができる。また、合成結果を変換係数として画像を復号することができる。そして、第2の量子化テーブルの量子化ステップは、第1の量子化テーブルの量子化ステップの1/(2の累乗)とする、又は、1とすることができる。
請求項3の画像処理装置によれば、通信回線の速度に応じて、第1の量子化結果、又は第1の量子化結果と第2の量子化結果のいずれかを送信することができる。
請求項4の画像処理装置によれば、画像から分配された色成分情報を第1の量子化手段で量子化することができる。
請求項5の画像処理装置によれば、画像から分配された色成分情報を第1の量子化手段で量子化されたものを復号することができる。
請求項6の画像処理装置によれば、通信回線の速度に応じて、第1の符号化結果、又は第1の符号化結果と第2の符号化結果のいずれかを送信することができる。
請求項7の画像処理装置によれば、画像から分配された領域の画像情報を第1の量子化手段で量子化することができる。
請求項8の画像処理装置によれば、画像から分配された領域の画像情報を第1の量子化手段で量子化されたものを復号することができる。
請求項9の画像処理装置によれば、通信回線の速度に応じて、第1の符号化結果、又は第1の符号化結果と第2の符号化結果のいずれかを送信することができる。
請求項10の画像処理装置によれば、量子化として非可逆圧縮を行うことができる。
請求項11の画像処理装置によれば、逆量子化として、非可逆圧縮に対応する伸長を行うことができる。
請求項12の画像処理装置によれば、第2の逆量子化手段による逆量子化を省略して復号することができる。
請求項13の画像処理プログラムによれば、第1の量子化結果と重複した成分を含まないように、第2の量子化を行うことができる。また、画像を周波数変換して変換係数を生成し、その変換係数を量子化することができる。そして、第2の量子化テーブルの量子化ステップは、第1の量子化テーブルの量子化ステップの1/(2の累乗)とする、又は、1とすることができる。
請求項14の画像処理プログラムによれば、第1の量子化結果と、その第1の量子化結果と重複した成分を含まない第2の量子化結果に基づいて復号することができる。また、合成結果を変換係数として画像を復号することができる。そして、第2の量子化テーブルの量子化ステップは、第1の量子化テーブルの量子化ステップの1/(2の累乗)とする、又は、1とすることができる。
第1の実施の形態(符号化処理を行う画像処理装置)の構成例についての概念的なモジュール構成図である。 第1の実施の形態(符号化処理を行う画像処理装置)による処理例を示すフローチャートである。 第1の実施の形態による処理例を示す説明図である。 第1の実施の形態(復号処理を行う画像処理装置)の構成例についての概念的なモジュール構成図である。 第1の実施の形態(復号処理を行う画像処理装置)による処理例を示すフローチャートである。 第2の実施の形態の構成例についての概念的なモジュール構成図である。 第3の実施の形態の構成例についての概念的なモジュール構成図である。 第4の実施の形態の構成例についての概念的なモジュール構成図である。 第5の実施の形態の構成例についての概念的なモジュール構成図である。 第6の実施の形態の構成例についての概念的なモジュール構成図である。 第7の実施の形態の構成例についての概念的なモジュール構成図である。 第8の実施の形態の構成例についての概念的なモジュール構成図である。 比較技術における情報重複例を示す説明図である。 第8の実施の形態における情報重複例を示す説明図である。 JPEGにおける量子化の方法例を示す説明図である。 第8の実施の形態(符号化)、比較技術における変換係数の例を示す説明図である。 第8の実施の形態(復号)、比較技術における変換係数の例を示す説明図である。 第9の実施の形態の構成例についての概念的なモジュール構成図である。 第10の実施の形態による処理例を示す説明図である。 第11の実施の形態による処理例を示す説明図である。 第12の実施の形態による処理例を示す説明図である。 第13の実施の形態の構成例についての概念的なモジュール構成図である。 第14の実施の形態の構成例による処理例を示す説明図である。 第15の実施の形態の構成例についての概念的なモジュール構成図である。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
<第1の実施の形態>
図1は、第1の実施の形態の構成例(符号化処理を行う画像処理装置)についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
第1の実施の形態である画像処理装置100は、画像の量子化を行うものであって、図1の例に示すように、量子化aモジュール110a、量子化bモジュール110b、量子化cモジュール110c、逆量子化aモジュール120a、逆量子化bモジュール120b、差分計算aモジュール130a、差分計算bモジュール130bを有している。画像処理装置100による処理の概要を説明する。量子化によって消失したデータ(ここでは、差分として表現される)を、次の量子化を用いて段階的(1〜N)に量子化することで、重複した成分を含まないように情報割当を実現する。後段の量子化はその刻みを小さくする。
量子化aモジュール110aは、逆量子化aモジュール120aと接続されている。量子化aモジュール110aは、入力データ108を受け付け、量子化データa112aを出力し、逆量子化aモジュール120aに量子化データa112aを渡す。量子化aモジュール110aは、入力データ108を量子化することによって、量子化データa112aを生成する。量子化は情報量を減らす処理である。例えば、右シフトや除算を指す。
逆量子化aモジュール120aは、量子化aモジュール110a、差分計算aモジュール130aと接続されている。逆量子化aモジュール120aは、量子化aモジュール110aから量子化データa112aを受け取り、差分計算aモジュール130aに逆量子化データa122aを渡す。逆量子化aモジュール120aは、量子化aモジュール110aによって量子化された量子化データa112aを逆量子化することによって、逆量子化データa122aを生成する。逆量子化は情報量を入力情報(逆量子化aモジュール120aでは入力データ108)の次元に復元する処理である。例えば、左シフトや乗算を指す。
差分計算aモジュール130aは、逆量子化aモジュール120a、量子化bモジュール110b、差分計算bモジュール130bと接続されている。差分計算aモジュール130aは、入力データ108を受け付け、逆量子化aモジュール120aから逆量子化データa122aを受け取り、量子化bモジュール110b、差分計算bモジュール130bに差分a:132aを渡す。差分計算aモジュール130aは、入力データ108と逆量子化データa122aとの差分a:132aを算出する。
量子化bモジュール110bは、差分計算aモジュール130a、逆量子化bモジュール120bと接続されている。量子化bモジュール110bは、差分計算aモジュール130aから差分a:132aを受け取り、量子化差分データb112bを出力し、逆量子化bモジュール120bに量子化差分データb112bを渡す。量子化bモジュール110bは、差分計算aモジュール130aによる差分a:132aを量子化することによって、量子化差分データb112bを生成する。量子化bモジュール110bは、量子化aモジュール110aと同等の処理を行うが、処理対象は、入力データ108ではなく、差分計算aモジュール130aによって算出された差分a:132aである。
逆量子化bモジュール120bは、量子化bモジュール110b、差分計算bモジュール130bと接続されている。逆量子化bモジュール120bは、量子化bモジュール110bから量子化差分データb112bを受け取り、差分計算bモジュール130bに逆量子化データb122bを渡す。逆量子化bモジュール120bは、量子化bモジュール110bによって量子化された量子化差分データb112bを逆量子化することによって、逆量子化データb122bを生成する。逆量子化bモジュール120bは、逆量子化aモジュール120aと同等の処理を行うが、処理対象は、量子化データa112aではなく、量子化bモジュール110bによって量子化された量子化差分データb112bである。
差分計算bモジュール130bは、差分計算aモジュール130a、逆量子化bモジュール120b、量子化cモジュール110cと接続されている。差分計算bモジュール130bは、差分計算aモジュール130aから差分a:132aを受け取り、逆量子化bモジュール120bから逆量子化データb122bを受け取り、量子化cモジュール110cに差分b:132bを渡す。差分計算bモジュール130bは、差分a:132aと逆量子化データb122bとの差分b:132bを算出する。差分計算bモジュール130bは、差分計算aモジュール130aと同等の処理を行うが、処理対象は、入力データ108ではなく、差分計算aモジュール130aによって算出された差分a:132aである。
量子化cモジュール110cは、差分計算bモジュール130bと接続されている。量子化cモジュール110cは、差分計算bモジュール130bから差分b:132bを受け取り、量子化差分データc112cを出力する。量子化cモジュール110cは、差分計算bモジュール130bによる差分b:132bを量子化することによって、量子化差分データc112cを生成する。量子化cモジュール110cは、量子化aモジュール110aと同等の処理を行うが、処理対象は、入力データ108ではなく、差分計算bモジュール130bによって算出された差分b:132bである。
なお、量子化aモジュール110a、量子化bモジュール110b、量子化cモジュール110cによる出力として、例えば、通信回線を介して他の画像処理装置(例えば、後述する図4に示す画像処理装置400)へ送信することであってもよい。そして、通信回線の速度に応じて、量子化データa112a、量子化データa112aと量子化差分データb112bとの組み合わせ、又は量子化データa112aと量子化差分データb112bと量子化差分データc112cとの組み合わせのいずれかを送信する。例えば、低速回線である場合には、量子化データa112aを送信し、中速回線である場合には、量子化データa112aと量子化差分データb112bとの組み合わせを送信し、高速回線である場合には、量子化データa112aと量子化差分データb112bと量子化差分データc112cとの組み合わせを送信する。低速回線、中速回線、高速回線のいずれであるかについては、通信回線の速度と予め定められた閾値との比較によって判断してもよいし、送信するデータ量によって判断してもよい。なお、通信回線の速度は、実測した速度であってもよい。
また、出力として、通信以外に、画像データベース等の画像記憶装置へ画像を書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。
図1に示す例では、3段の量子化の例を示しているが、少なくとも2段の量子化を行うモジュール(量子化aモジュール110a、逆量子化aモジュール120a、差分計算aモジュール130a、量子化bモジュール110b)によって構成されていればよく、4段以上の量子化を行う構成としてもよい。また、量子化aモジュール110a、逆量子化aモジュール120a、差分計算aモジュール130aだけの構成とし、差分a:132aを次の段における入力データ108として量子化aモジュール110a、差分計算aモジュール130aに入力し、この処理を繰り返し行うよう制御するようにしてもよい。以下に説明する実施の形態における量子化装置(符号化装置)でも同様である。
図2は、第1の実施の形態(符号化処理を行う画像処理装置100)による処理例を示すフローチャートである。
ステップS202では、目標とするN点の情報量を決定する。
ステップS204では、変数n=0とする。
ステップS206では、目標点nにおけるデータ量を満足するように入力データを量子化して符号化する。
ステップS208では、符号化した結果を逆量子化して、入力データとの差分を算出する。
ステップS210では、n=n+1とする。
ステップS212では、n=Nであるか否かを判断し、n=Nである場合は処理を終了し(ステップS299)、それ以外の場合はステップS208で算出した差分データを入力データとしてステップS206へ戻る。
図3は、第1の実施の形態による処理例を示す説明図である。重複した成分を含まない情報割当になるように量子化していく。1回目のループのステップS206では、図3のグラフ例では、左端の入力データ108に対して、量子化を行い、左から2本目の量子化データa112aを生成する。そして、ステップS208では、図3のグラフ例では、左から2本目の量子化データa112aに対して、逆量子化を行い、左から3本目の逆量子化データa122aを生成し、入力データ108と逆量子化データa122aとの差分である差分a:132aを生成する。2回目のループのステップS206では、図3のグラフ例では、左から4本目の差分a:132aに対して、量子化を行い、左から5本目の量子化差分データb112bを生成する。そして、ステップS208では、図3のグラフ例では、左から5本目の量子化差分データb112bに対して、逆量子化を行い、左から6本目の逆量子化データb122bを生成し、差分a:132aと逆量子化データb122bとの差分である差分b:132bを生成する。同様に、3回目のループのステップS206では、図3のグラフ例では、左から7本目の差分b:132bに対して、量子化を行い、左から8本目の量子化差分データc112cを生成する。そして、ステップS208では、図3のグラフ例では、左から8本目の量子化差分データc112cに対して、逆量子化を行い、左から9本目の逆量子化データcを生成し、差分b:132bと逆量子化データcとの差分である差分cを生成する。変数nの値がNとなるまで、これらの処理を繰り返し行う。
図4は、第1の実施の形態(復号処理を行う画像処理装置400)の構成例についての概念的なモジュール構成図である。図1の例に示した符号化処理を行う画像処理装置100に対応するものである。画像処理装置400は、逆量子化を行うものであって、図4の例に示すように、逆量子化aモジュール410a、逆量子化bモジュール410b、逆量子化cモジュール410c、合成aモジュール420a、合成bモジュール420bを有している。
逆量子化aモジュール410aは、合成aモジュール420aと接続されている。逆量子化aモジュール410aは、画像処理装置100から量子化データa112aを受け付け、量子化データa112aを逆量子化する。
逆量子化bモジュール410bは、合成aモジュール420aと接続されている。逆量子化bモジュール410bは、画像処理装置100から量子化差分データb112bを受け付け、量子化差分データb112bを逆量子化する。
逆量子化cモジュール410cは、合成bモジュール420bと接続されている。逆量子化cモジュール410cは、画像処理装置100から量子化差分データc112cを受け付け、量子化差分データc112cを逆量子化する。
合成aモジュール420aは、逆量子化aモジュール410a、逆量子化bモジュール410b、合成bモジュール420bと接続されている。合成aモジュール420aは、逆量子化aモジュール410aによって逆量子化されたデータと逆量子化bモジュール410bによって逆量子化されたデータを合成する。
合成bモジュール420bは、逆量子化cモジュール410c、合成aモジュール420aと接続されている。合成bモジュール420bは、復号データ492を出力する。合成bモジュール420bは、合成aモジュール420aによって合成されたデータと逆量子化cモジュール410cによって逆量子化されたデータを合成する。復号データ492の出力として、例えば、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること、他の情報処理装置へ渡すこと等が含まれる。
図4に示す例では、2段の合成の例を示しているが、少なくとも1段の合成を行うモジュール(逆量子化aモジュール410a、逆量子化bモジュール410b、合成aモジュール420a)によって構成されていればよく、3段以上の合成を行う構成としてもよい。また、逆量子化aモジュール410a、逆量子化bモジュール410b、合成aモジュール420aだけの構成とし、量子化差分データc112c以降を逆量子化bモジュール410bへの入力とし、前回の合成aモジュール420aの出力を次の段における合成aモジュール420aの入力(逆量子化aモジュール410aの出力)として、この処理を繰り返し行うよう制御するようにしてもよい。以下に説明する実施の形態における逆量子化装置(復号装置)でも同様である。
図5は、第1の実施の形態(復号処理を行う画像処理装置400)による処理例を示すフローチャートである。
ステップS502では、n=0とする。
ステップS504では、逆量子化aモジュール410aが、逆量子化する。
ステップS506では、ループの1回目は逆量子化bモジュール410bが、逆量子化する。ループの2回目は逆量子化cモジュール410cが、逆量子化する。
ステップS508では、ループの1回目はステップS504での逆量子化結果とステップS506での逆量子化結果を合成する。図3の例では、左から3本目の逆量子化データa122aと6本目の逆量子化データb122bを合成する。ループの2回目は前回のステップS508での合成結果とステップS506での逆量子化結果を合成する。図3の例では、左から3本目の逆量子化データa122aと6本目の逆量子化データb122bと9本目の逆量子化データcを合成したことになる。
ステップS510では、n=n+1とする。
ステップS512では、n=Nであるか否かを判断し、n=Nである場合は処理を終了し(ステップS599)、それ以外の場合はステップS506へ戻る。
<第2の実施の形態>
図6は、第2の実施の形態の構成例についての概念的なモジュール構成図である。第1の実施の形態を色成分へ拡張したものであって、色成分で分配したのち、量子化してその残差を段階的に構成するものである。なお、図6の例では、符号化装置と復号装置の組み合わせ例を示しているが、もちろんのことながら、符号化装置と復号装置と別々に構成してもよい。以下の実施の形態においても同様である。符号化装置としては、分配モジュール610、色成分量子化1モジュール615a、符号化1モジュール620a、色成分逆量子化1モジュール625a、差分計算モジュール630、色成分量子化2モジュール615b、符号化2モジュール620bによって構成されている。さらに、記憶モジュール635を付加してもよい。また、復号装置としては、復号1モジュール640a、色成分逆量子化1モジュール645a、復号2モジュール640b、色成分逆量子化2モジュール645b、合成モジュール650によって構成されている。さらに、記憶モジュール635を付加してもよい。符号化モジュール620と記憶モジュール635間、又は記憶モジュール635と復号モジュール640間は通信回線を介して接続されていてもよい。以下の実施の形態においても同様である。
また、色成分量子化1モジュール615aは量子化aモジュール110aと、色成分逆量子化1モジュール625aは逆量子化aモジュール120aと、差分計算モジュール630は差分計算aモジュール130aと、色成分量子化2モジュール615bは量子化bモジュール110bと、色成分逆量子化1モジュール645aは逆量子化aモジュール410aと、色成分逆量子化2モジュール645bは逆量子化bモジュール410bと、合成モジュール650は合成aモジュール420aと同等の処理を行う。
分配モジュール610は、色成分量子化1モジュール615a、差分計算モジュール630と接続されている。分配モジュール610は、入力画像608を受け付ける。分配モジュール610は、対象としている入力画像608から予め定められた色成分情報を分配する。「予め定められた色成分情報」として、例えば、後述する第6の実施の形態のようにグレイ色成分情報(グレイ画像)がある。例えば、入力画像608がYCbCrの色体系で表現されている場合、グレイ色成分情報であるY成分を抽出し、色成分量子化1モジュール615aに渡す。差分計算モジュール630には対象としている入力画像608そのもの(YCbCr)を渡す。これによって、例えば、低速回線の場合は、グレイ画像の符号を使って通信することができる。
色成分量子化1モジュール615aは、分配モジュール610、符号化1モジュール620a、色成分逆量子化1モジュール625aと接続されている。色成分量子化1モジュール615aは、分配モジュール610による処理結果、量子化パラメータ1:613aを受け付ける。色成分量子化1モジュール615aは、分配モジュール610によって分配された色成分情報を量子化する。例えば、量子化パラメータ1:613aを用いて量子化を行う。色成分量子化1モジュール615aでは、例えば、量子化パラメータ1:613aとしての16で除算等する。
符号化1モジュール620aは、色成分量子化1モジュール615a、記憶モジュール635と接続されている。符号化1モジュール620aは、色成分量子化1モジュール615aによる量子化結果を符号化することによって、符号化データ637aを生成する。符号化処理は既存の技術を用いてよい。以下、符号化処理の説明において、特別な処理を行う場合以外は、既存の技術を用いてよい。
色成分逆量子化1モジュール625aは、色成分量子化1モジュール615a、差分計算モジュール630と接続されている。色成分逆量子化1モジュール625aは、色成分量子化1モジュール615aによる量子化結果を逆量子化する。
差分計算モジュール630は、分配モジュール610、色成分逆量子化1モジュール625a、色成分量子化2モジュール615bと接続されている。差分計算モジュール630は、入力画像608と色成分逆量子化1モジュール625aによる逆量子化結果との差分を算出する。
色成分量子化2モジュール615bは、差分計算モジュール630、符号化2モジュール620bと接続されている。色成分量子化2モジュール615bは、差分計算モジュール630による処理結果、量子化パラメータ2:613bを受け付ける。色成分量子化2モジュール615bは、差分計算モジュール630による差分結果を量子化する。例えば、量子化パラメータ2:613bを用いて量子化を行う。色成分量子化2モジュール615bでは、分配モジュール610で抽出された色成分情報について適用する量子化パラメータは、他の色成分情報についての量子化パラメータとは異なる値としてもよい。例えば、Y成分は量子化パラメータ2:613bとしての4で除算し、CbCr成分は量子化パラメータ2:613bとしての16で除算する。
符号化2モジュール620bは、色成分量子化2モジュール615b、記憶モジュール635と接続されている。符号化2モジュール620bは、色成分量子化2モジュール615bによる量子化結果を符号化することによって、符号化データ637bを生成する。
なお、符号化1モジュール620a、符号化2モジュール620bによる出力として、例えば、通信回線を介して他の画像処理装置(例えば、図6の下側に示す復号装置)へ送信することであってもよい。そして、通信回線の速度に応じて、符号化データ637a、又は符号化データ637aと符号化データ637bとの組み合わせのいずれかを送信する。例えば、低速回線である場合には、符号化データ637aを送信し、高速回線である場合には、符号化データ637aと符号化データ637bとの組み合わせを送信する。低速回線、高速回線のいずれであるかについては、通信回線の速度と予め定められた閾値との比較によって判断してもよいし、送信するデータ量によって判断してもよい。なお、通信回線の速度は、実測した速度であってもよい。
また、出力として、通信以外に、画像データベース等の画像記憶装置へ画像を書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。
記憶モジュール635は、符号化1モジュール620a、符号化2モジュール620b、復号1モジュール640a、復号2モジュール640bと接続されている。記憶モジュール635は、符号化データ637a、符号化データ637bを記憶する。
復号1モジュール640aは、記憶モジュール635、色成分逆量子化1モジュール645aと接続されている。復号1モジュール640aは、符号化データ637aを復号することによって、第1の量子化結果を生成する。復号処理は、符号化1モジュール620aによる符号化処理に対応するものである。
復号2モジュール640bは、記憶モジュール635、色成分逆量子化2モジュール645bと接続されている。復号2モジュール640bは、符号化データ637bを復号することによって、第2の量子化結果を生成する。復号処理は、符号化2モジュール620bによる符号化処理に対応するものである。
色成分逆量子化1モジュール645aは、復号1モジュール640a、合成モジュール650と接続されている。色成分逆量子化1モジュール645aは、復号1モジュール640aによる第1の量子化結果を逆量子化する。ここでの逆量子化処理は、色成分量子化1モジュール615aによる量子化処理に対応するものである。色成分逆量子化1モジュール645aでは、例えば、16を乗算する。
色成分逆量子化2モジュール645bは、復号2モジュール640b、合成モジュール650と接続されている。色成分逆量子化2モジュール645bは、復号2モジュール640bによる第2の量子化結果を逆量子化する。ここでの逆量子化処理は、色成分量子化2モジュール615bによる量子化処理に対応するものである。また、色成分逆量子化2モジュール645bでは、分配モジュール610で抽出された色成分情報について適用する量子化パラメータは、他の色成分情報についての量子化パラメータとは異なる値としてもよい。色成分逆量子化2モジュール645bでは、例えば、Y成分は4を乗算し、CbCr成分は16を乗算する。
合成モジュール650は、色成分逆量子化1モジュール645a、色成分逆量子化2モジュール645bと接続されている。合成モジュール650は、復号画像652を出力する。合成モジュール650は、色成分逆量子化1モジュール645aによる逆量子化結果と色成分逆量子化2モジュール645bによる逆量子化結果を合成し、復号画像652として生成する。
<第3の実施の形態>
図7は、第3の実施の形態の構成例についての概念的なモジュール構成図である。第1の実施の形態を領域へ拡張したものであって、領域によって優先度をつけてから量子化して、その残差を段階的に構成するものである。この構成によってROI(Region Of Interests)に対応する。符号化装置としては、優先領域分配モジュール710、優先領域量子化1モジュール715a、符号化1モジュール720a、優先領域逆量子化1モジュール725a、差分計算モジュール730、優先領域量子化2モジュール715b、符号化2モジュール720bによって構成されている。さらに、記憶モジュール735を付加してもよい。また、復号装置としては、復号1モジュール740a、優先領域逆量子化1モジュール745a、復号2モジュール740b、優先領域逆量子化2モジュール745b、合成モジュール750によって構成されている。さらに、記憶モジュール735を付加してもよい。
また、優先領域量子化1モジュール715aは量子化aモジュール110aと、優先領域逆量子化1モジュール725aは逆量子化aモジュール120aと、差分計算モジュール730は差分計算aモジュール130aと、優先領域量子化2モジュール715bは量子化bモジュール110bと、優先領域逆量子化1モジュール745aは逆量子化aモジュール410aと、優先領域逆量子化2モジュール745bは逆量子化bモジュール410bと、合成モジュール750は合成aモジュール420aと同等の処理を行う。
優先領域分配モジュール710は、優先領域量子化1モジュール715a、差分計算モジュール730と接続されている。優先領域分配モジュール710は、入力データ708を受け付ける。優先領域分配モジュール710は、入力データ708から予め定められた領域の画像情報を分配する。例えば、分配する領域(優先領域)をマスクしたデータとし、それ以外の領域は値0とする画像を生成して、優先領域量子化1モジュール715aに渡す。「予め定められた領域」は、優先領域分配モジュール710が受け付ける全ての画像に対して同じように適用される領域であってもよいし、画像毎に領域が予め定められていてもよい。そして、「予め定められた領域」として、例えば、中央に位置する領域、テキスト画像又は顔画像等が含まれている領域等がある。また、後述する第7の実施の形態のように優先領域を選択するようにしてもよい。そして、差分計算モジュール730には対象としている入力データ708そのもの(全体画像)を渡す。
優先領域量子化1モジュール715aは、優先領域分配モジュール710,符号化1モジュール720a、優先領域逆量子化1モジュール725aと接続されている。優先領域量子化1モジュール715aは、優先領域分配モジュール710による処理結果、量子化パラメータ1:713aを受け付ける。優先領域量子化1モジュール715aは、優先領域分配モジュール710によって分配された領域の画像情報を量子化する。例えば、量子化パラメータ1:713aを用いて量子化を行う。優先領域量子化1モジュール715aでは、例えば、量子化パラメータ1:713aとしての16で除算等する。
符号化1モジュール720aは、優先領域量子化1モジュール715a、記憶モジュール735と接続されている。符号化1モジュール720aは、優先領域量子化1モジュール715aによる量子化結果を符号化することによって、符号化データ737aを生成する。
優先領域逆量子化1モジュール725aは、優先領域量子化1モジュール715a、差分計算モジュール730と接続されている。優先領域逆量子化1モジュール725aは、優先領域量子化1モジュール715aによる量子化結果を逆量子化する。
差分計算モジュール730は、優先領域分配モジュール710、優先領域逆量子化1モジュール725a、優先領域量子化2モジュール715bと接続されている。差分計算モジュール730は、入力データ708と優先領域逆量子化1モジュール725aによる逆量子化結果との差分を算出する。
優先領域量子化2モジュール715bは、差分計算モジュール730、符号化2モジュール720bと接続されている。優先領域量子化2モジュール715bは差分計算モジュール730による差分結果、量子化パラメータ2:713bを受け付ける。優先領域量子化2モジュール715bは、差分計算モジュール730による差分結果を量子化する。例えば、量子化パラメータ2:713bを用いて量子化を行う。例えば、優先領域量子化2モジュール715bでは、量子化パラメータ2:713bとしての12で除算する。優先領域量子化2モジュール715bでは、優先領域分配モジュール710で抽出された領域の画像情報について適用する量子化パラメータは、他の領域の画像情報についての量子化パラメータとは異なる値としてもよい。
符号化2モジュール720bは、優先領域量子化2モジュール715b、記憶モジュール735と接続されている。符号化2モジュール720bは、優先領域量子化2モジュール715bによる量子化結果を符号化することによって、符号化データ737bを生成する。
なお、符号化1モジュール720a、符号化2モジュール720bによる出力として、例えば、通信回線を介して他の画像処理装置(例えば、図7の下側に示す復号装置)へ送信することであってもよい。そして、通信回線の速度に応じて、符号化データ737a、又は符号化データ737aと符号化データ737bとの組み合わせのいずれかを送信する。例えば、低速回線である場合には、符号化データ737aを送信し、高速回線である場合には、符号化データ737aと符号化データ737bとの組み合わせを送信する。低速回線、高速回線のいずれであるかについては、通信回線の速度と予め定められた閾値との比較によって判断してもよいし、送信するデータ量によって判断してもよい。なお、通信回線の速度は、実測した速度であってもよい。
また、出力として、通信以外に、画像データベース等の画像記憶装置へ画像を書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。
以下の実施の形態において、通信回線を介して他の画像処理装置への通信処理、出力処理に関しては、同等の処理を行うようにしてもよい。
記憶モジュール735は、符号化1モジュール720a、符号化2モジュール720b、復号1モジュール740a、復号2モジュール740bと接続されている。記憶モジュール735は、符号化データ737a、符号化データ737bを記憶する。
復号1モジュール740aは、記憶モジュール735、優先領域逆量子化1モジュール745aと接続されている。復号1モジュール740aは、符号化1モジュール720aによる符号化データ737aを復号することによって、第1の量子化結果を生成する。復号処理は、符号化1モジュール720aによる符号化処理に対応するものである。
復号2モジュール740bは、記憶モジュール735、優先領域逆量子化2モジュール745bと接続されている。復号2モジュール740bは、符号化2モジュール720bによる符号化データ737bを復号することによって、第2の量子化結果を生成する。復号処理は、符号化2モジュール720bによる符号化処理に対応するものである。
優先領域逆量子化1モジュール745aは、復号1モジュール740a、合成モジュール750と接続されている。優先領域逆量子化1モジュール745aは、復号1モジュール740aによる復号結果、量子化パラメータ1:743aを受け付ける。優先領域逆量子化1モジュール745aは、復号1モジュール740aによる第1の量子化結果を逆量子化する。ここでの逆量子化処理は、優先領域量子化1モジュール715aによる量子化処理に対応するものである。例えば、量子化パラメータ1:743aを用いて量子化を行う。例えば、優先領域逆量子化1モジュール745aでは、量子化パラメータ1:743aとして16を乗算する。
優先領域逆量子化2モジュール745bは、復号2モジュール740b、合成モジュール750と接続されている。優先領域逆量子化2モジュール745bは、復号2モジュール740bによる復号結果、量子化パラメータ2:743bを受け付ける。優先領域逆量子化2モジュール745bは、復号2モジュール740bによる第2の量子化結果を逆量子化する。ここでの逆量子化処理は、優先領域量子化2モジュール715bによる量子化処理に対応するものである。例えば、量子化パラメータ2:743bを用いて量子化を行う。例えば、優先領域逆量子化2モジュール745bでは、量子化パラメータ2:743bとして12を乗算する。また、優先領域逆量子化2モジュール745bでは、優先領域分配モジュール710で抽出された領域の画像情報について適用する量子化パラメータは、他の領域の画像情報についての量子化パラメータとは異なる値としてもよい。
合成モジュール750は、優先領域逆量子化1モジュール745a、優先領域逆量子化2モジュール745bと接続されている。合成モジュール750は、出力データ752を出力する。合成モジュール750は、優先領域逆量子化1モジュール745aによる逆量子化結果と優先領域逆量子化2モジュール745bによる逆量子化結果を合成し、出力データ752として生成する。
<第4の実施の形態>
図8は、第4の実施の形態の構成例についての概念的なモジュール構成図である。前述の実施の形態における量子化の一種として、非可逆圧縮の例を示したものである。非可逆圧縮による残差(非可逆圧縮前のデータと伸長後のデータの差分)を段階的に非可逆化圧縮する。非可逆圧縮は既存の技術を用いてよい。したがって、既存のモジュールを再利用してもよい。圧縮装置としては、非可逆圧縮1モジュール810a、伸長1モジュール815、差分計算モジュール820、非可逆圧縮2モジュール810bによって構成されている。さらに、記憶モジュール830を付加してもよい。また、伸長装置としては、伸長1モジュール835a、伸長2モジュール835b、合成モジュール840によって構成されている。さらに、記憶モジュール830を付加してもよい。
また、差分計算モジュール820は差分計算aモジュール130aと、合成モジュール840は合成aモジュール420aと同等の処理を行う。
非可逆圧縮1モジュール810aは、伸長1モジュール815、記憶モジュール830と接続されている。非可逆圧縮1モジュール810aは、入力画像806、圧縮パラメータ1:808aを受け付ける。非可逆圧縮1モジュール810aは、入力画像806に対して、量子化として非可逆圧縮を行う。「非可逆圧縮」として、後述するように、例えば、圧縮パラメータ1:808aを用いたJPEGによる圧縮を用いてもよい。そして、対応する伸長としてJPEGにおける伸長を用いてもよい。
伸長1モジュール815は、非可逆圧縮1モジュール810a、差分計算モジュール820と接続されている。伸長1モジュール815は、非可逆圧縮1モジュール810aによって非可逆圧縮された符号化データ832aを伸長する。
差分計算モジュール820は、伸長1モジュール815、非可逆圧縮2モジュール810bと接続されている。差分計算モジュール820は、入力画像806と伸長1モジュール815によって伸長された画像との差分を算出する。つまり、対応する各画素における画素値の減算を行う。
非可逆圧縮2モジュール810bは、差分計算モジュール820、記憶モジュール830と接続されている。非可逆圧縮2モジュール810bは、差分計算モジュール820による処理結果、圧縮パラメータ2:808bを受け付ける。非可逆圧縮2モジュール810bは、非可逆圧縮1モジュール810aと同様に圧縮パラメータ2:808bを用いた量子化として非可逆圧縮を行う。
記憶モジュール830は、非可逆圧縮1モジュール810a、非可逆圧縮2モジュール810b、伸長1モジュール835a、伸長2モジュール835bと接続されている。記憶モジュール830は、符号化データ832a、符号化データ832bを記憶する。
伸長1モジュール835aは、記憶モジュール830、合成モジュール840と接続されている。伸長1モジュール835aは、符号化データ832aに対して、逆量子化として非可逆圧縮1モジュール810aにおける非可逆圧縮に対応する伸長を行う。
伸長2モジュール835bは、記憶モジュール830、合成モジュール840と接続されている。伸長2モジュール835bは、符号化データ832bに対して、逆量子化として非可逆圧縮2モジュール810bにおける非可逆圧縮に対応する伸長を行う。
合成モジュール840は、伸長1モジュール835a、伸長2モジュール835bと接続されている。合成モジュール840は、出力画像842を出力する。合成モジュール840は、伸長1モジュール835aにおいて伸長された画像と伸長2モジュール835bにおいて伸長された画像とを合成して、出力画像842を生成する。つまり、対応する各画素における画素値の加算を行う。
<第5の実施の形態>
図9は、第5の実施の形態の構成例についての概念的なモジュール構成図である。第4の実施の形態における非可逆圧縮としてJPEG圧縮を用いるようにしてものである。一般的なJPEGモジュールの外側で差分算出処理、合成処理を行うので、従来のJPEGモジュールを用いることができる。もちろんのことながら、JPEG以外の様々な非可逆圧縮に置換することができる。ただし、量子化テーブル2:908bの量子化ステップは、量子化テーブル1:908aの量子化ステップより小さくする。なお、量子化テーブルに加えてサンプリングファクタを圧縮パラメータとしてもよい。また、これらの圧縮パラメータを符号化して、復号を行う画像処理装置側に符号化した画像とともに送信するようにしてもよい。
圧縮装置としては、JPEG圧縮1モジュール910a、JPEG伸長モジュール915、差分計算モジュール920、JPEG圧縮2モジュール910bによって構成されている。さらに、記憶モジュール925を付加してもよい。また、伸長装置としては、JPEG伸長1モジュール930a、JPEG伸長2モジュール930b、合成モジュール935によって構成されている。さらに、記憶モジュール925を付加してもよい。
JPEG圧縮1モジュール910a、JPEG圧縮2モジュール910b、JPEG伸長1モジュール930a、JPEG伸長2モジュール930bは、それぞれ非可逆圧縮1モジュール810a、非可逆圧縮2モジュール810b、伸長1モジュール835a、伸長2モジュール835bの一例であり、差分計算モジュール920、合成モジュール935は、それぞれ差分計算モジュール820、合成モジュール840と同等の処理を行う。
JPEG圧縮1モジュール910aは、JPEG伸長モジュール915、記憶モジュール925と接続されている。JPEG圧縮1モジュール910aは、入力画像906、量子化テーブル1:908aを受け付ける。
JPEG伸長モジュール915は、JPEG圧縮1モジュール910a、差分計算モジュール920と接続されている。
差分計算モジュール920は、JPEG伸長モジュール915、JPEG圧縮2モジュール910bと接続されている。
JPEG圧縮2モジュール910bは、差分計算モジュール920、記憶モジュール925と接続されている。JPEG圧縮2モジュール910bは、差分計算モジュール920による処理結果、量子化テーブル2:908bを受け付ける。
記憶モジュール925は、JPEG圧縮1モジュール910a、JPEG圧縮2モジュール910b、JPEG伸長1モジュール930a、JPEG伸長2モジュール930bと接続されている。記憶モジュール925は、符号化データ927a、符号化データ927bを記憶する。
JPEG伸長1モジュール930aは、記憶モジュール925、合成モジュール935と接続されている。JPEG伸長1モジュール930aは、符号化データ927a、量子化テーブル1:928aを受け付ける。
JPEG伸長2モジュール930bは、記憶モジュール925、合成モジュール935と接続されている。JPEG伸長2モジュール930bは、符号化データ927b、量子化テーブル2:928bを受け付ける。
合成モジュール935は、JPEG伸長1モジュール930a、JPEG伸長2モジュール930bと接続されている。合成モジュール935は、出力画像937を出力する。
<第6の実施の形態>
図10は、第6の実施の形態の構成例についての概念的なモジュール構成図である。変換係数1003をY成分とYCbCr成分に分配して、まずY成分の画像情報を量子化して符号化する。次いで量子化後のY成分を逆量子化したのち、入力のYCbCr成分との差分を計算し、再び量子化後に符号化する。変換係数の量子化については、後述する第8の実施の形態以降で説明する。量子化としてJPEGを用いてもよい。
符号化装置としては、分配モジュール1005、Y変換係数量子化1モジュール1010a、符号化1モジュール1015a、Y変換係数逆量子化1モジュール1020、差分計算モジュール1025、CbCr変換係数量子化2モジュール1010b、符号化2モジュール1015bによって構成されている。さらに、記憶モジュール1030を付加してもよい。また、復号装置としては、復号1モジュール1035a、Y変換係数逆量子化1モジュール1040a、復号2モジュール1035b、CbCr変換係数逆量子化2モジュール1040b、合成モジュール1045によって構成されている。さらに、記憶モジュール1030を付加してもよい。
分配モジュール1005は、Y変換係数量子化1モジュール1010a、差分計算モジュール1025と接続されている。分配モジュール1005は、変換係数1003を受け付ける。
Y変換係数量子化1モジュール1010aは、分配モジュール1005、符号化1モジュール1015a、Y変換係数逆量子化1モジュール1020と接続されている。Y変換係数量子化1モジュール1010aは、分配モジュール1005によって抽出された色成分情報、量子化テーブル1:1008aを受け付ける。
符号化1モジュール1015aは、Y変換係数量子化1モジュール1010a、記憶モジュール1030と接続されている。
Y変換係数逆量子化1モジュール1020は、Y変換係数量子化1モジュール1010a、差分計算モジュール1025と接続されている。
差分計算モジュール1025は、分配モジュール1005、Y変換係数逆量子化1モジュール1020、CbCr変換係数量子化2モジュール1010bと接続されている。
CbCr変換係数量子化2モジュール1010bは、差分計算モジュール1025、符号化2モジュール1015bと接続されている。CbCr変換係数量子化2モジュール1010bは、差分計算モジュール1025による差分結果、量子化テーブル2:1008bを受け付ける。
符号化2モジュール1015bは、CbCr変換係数量子化2モジュール1010b、記憶モジュール1030と接続されている。
記憶モジュール1030は、符号化1モジュール1015a、符号化2モジュール1015b、復号1モジュール1035a、復号2モジュール1035bと接続されている。記憶モジュール1030は、符号化データ1032a、符号化データ1032bを記憶する。
復号1モジュール1035aは、記憶モジュール1030、Y変換係数逆量子化1モジュール1040aと接続されている。
復号2モジュール1035bは、記憶モジュール1030、CbCr変換係数逆量子化2モジュール1040bと接続されている。
Y変換係数逆量子化1モジュール1040aは、復号1モジュール1035a、合成モジュール1045と接続されている。
CbCr変換係数逆量子化2モジュール1040bは、復号2モジュール1035b、合成モジュール1045と接続されている。
合成モジュール1045は、Y変換係数逆量子化1モジュール1040a、CbCr変換係数逆量子化2モジュール1040bと接続されている。合成モジュール1045は、変換係数1047を出力する。
<第7の実施の形態>
図11は、第7の実施の形態の構成例についての概念的なモジュール構成図である。ブロック毎に優先領域が含まれる領域を判定し、優先領域が含まれるブロックについて量子化して符号化する。その後、優先領域が含まれないブロックを量子化して符号化する。変換係数の量子化については、後述する第8の実施の形態以降で説明する。量子化としてJPEGを用いてもよい。
符号化装置としては、優先領域分配モジュール1105、優先領域量子化1モジュール1110a、符号化1モジュール1115a、優先領域逆量子化1モジュール1120、差分計算モジュール1125、優先領域量子化2モジュール1110b、符号化2モジュール1115bによって構成されている。さらに、記憶モジュール1130を付加してもよい。また、復号装置としては、復号1モジュール1135a、優先領域逆量子化1モジュール1140a、復号2モジュール1135b、優先領域逆量子化2モジュール1140b、合成モジュール1145によって構成されている。さらに、記憶モジュール1130を付加してもよい。
各モジュールでの処理は、JPEGにおけるブロック単位で行う。
優先領域分配モジュール1105は、優先領域量子化1モジュール1110a、差分計算モジュール1125と接続されている。優先領域分配モジュール1105は、変換係数1103を受け付ける。優先領域分配モジュール1105は、変換係数1103内のブロック毎に優先領域が含まれるブロックを判定し、優先領域のブロックを優先領域量子化1モジュール1110aに渡す。
優先領域量子化1モジュール1110aは、優先領域分配モジュール1105、符号化1モジュール1115a、優先領域逆量子化1モジュール1120と接続されている。優先領域量子化1モジュール1110aは、優先領域分配モジュール1105の処理結果、量子化テーブル1:1108aを受け付ける。
符号化1モジュール1115aは、優先領域量子化1モジュール1110a、記憶モジュール1130と接続されている。
優先領域逆量子化1モジュール1120は、優先領域量子化1モジュール1110a、差分計算モジュール1125と接続されている。
差分計算モジュール1125は、優先領域逆量子化1モジュール1120、優先領域量子化2モジュール1110bと接続されている。
優先領域量子化2モジュール1110bは、差分計算モジュール1125、符号化2モジュール1115bと接続されている。優先領域量子化2モジュール1110bは、差分計算モジュール1125による差分結果、量子化テーブル2:1108bを受け付ける。
符号化2モジュール1115bは、優先領域量子化2モジュール1110b、記憶モジュール1130と接続されている。
記憶モジュール1130は、符号化1モジュール1115a、符号化2モジュール1115b、復号1モジュール1135a、復号2モジュール1135bと接続されている。記憶モジュール1130は、符号化データ1132a、符号化データ1132bを記憶する。
復号1モジュール1135aは、記憶モジュール1130、優先領域逆量子化1モジュール1140aと接続されている。
復号2モジュール1135bは、記憶モジュール1130、優先領域逆量子化2モジュール1140bと接続されている。
優先領域逆量子化1モジュール1140aは、復号1モジュール1135a、合成モジュール1145と接続されている。優先領域逆量子化1モジュール1140aは、復号1モジュール1135aによる処理結果、量子化テーブル1:1138aを受け付ける。
優先領域逆量子化2モジュール1140bは、復号2モジュール1135b、合成モジュール1145と接続されている。優先領域逆量子化2モジュール1140bは、復号2モジュール1135bによる処理結果、量子化テーブル2:1138bを受け付ける。
合成モジュール1145は、優先領域逆量子化1モジュール1140a、優先領域逆量子化2モジュール1140bと接続されている。合成モジュール1145は、変換係数1147を出力する。
<第8の実施の形態>
図12は、第8の実施の形態の構成例についての概念的なモジュール構成図である。第8の実施の形態では、変換係数に対する量子化の残差を段階的に量子化する。ただし、量子化テーブル2:1213bの量子化ステップは、量子化テーブル1:1213aの量子化ステップより小さくする。こうしないと量子化2モジュール1215bの結果が全て値0となるので、差分情報を伝えられないこととなってしまう。
符号化装置としては、周波数変換モジュール1210、量子化1モジュール1215a、逆量子化1モジュール1220、差分計算モジュール1225、符号化1モジュール1230a、量子化2モジュール1215b、符号化2モジュール1230bによって構成されている。さらに、記憶モジュール1235を付加してもよい。また、復号装置としては、復号1モジュール1240a、逆量子化1モジュール1245a、復号2モジュール1240b、逆量子化2モジュール1245b、変換係数合成モジュール1250、逆周波数変換モジュール1255によって構成されている。さらに、記憶モジュール1235を付加してもよい。
周波数変換モジュール1210は、量子化1モジュール1215a、差分計算モジュール1225と接続されている。周波数変換モジュール1210は、画像1208を受け付け、差分計算モジュール1225に変換係数1212を渡す。周波数変換モジュール1210は、画像1208を周波数変換することによって、変換係数1212を生成する。また、周波数変換による演算誤差が小さく(一度だけしか変換しない)、計算量も少ない。
量子化1モジュール1215aは、周波数変換モジュール1210、逆量子化1モジュール1220、符号化1モジュール1230aと接続されている。量子化1モジュール1215aは、変換係数1212、量子化テーブル1:1213aを受け付ける。量子化1モジュール1215aは、変換係数1212を量子化することによって、量子化結果を生成する。例えば、量子化テーブル1:1213aを用いて、量子化を行う。
逆量子化1モジュール1220は、量子化1モジュール1215a、差分計算モジュール1225と接続されている。逆量子化1モジュール1220は、量子化1モジュール1215aによる量子化結果を逆量子化して、その逆量子化結果を差分計算モジュール1225に渡す。
差分計算モジュール1225は、周波数変換モジュール1210、逆量子化1モジュール1220、量子化2モジュール1215bと接続されている。差分計算モジュール1225は、周波数変換モジュール1210から変換係数1212と逆量子化1モジュール1220による逆量子化結果を受け取り、量子化2モジュール1215bに係数差分値1227を渡す。差分計算モジュール1225は、変換係数1212と逆量子化1モジュール1220による逆量子化結果との差分である係数差分値1227を算出する。
符号化1モジュール1230aは、量子化1モジュール1215a、記憶モジュール1235と接続されている。符号化1モジュール1230aは、量子化1モジュール1215aによる量子化結果を符号化することによって、符号化データ1237aを生成する。
量子化2モジュール1215bは、差分計算モジュール1225、符号化2モジュール1230bと接続されている。量子化2モジュール1215bは、差分計算モジュール1225から係数差分値1227を受け取り、量子化テーブル2:1213bを受け付ける。量子化2モジュール1215bは、係数差分値1227を量子化することによって、量子化結果を生成する。例えば、量子化テーブル2:1213bを用いて、量子化を行う。なお、量子化テーブル2:1213bの量子化ステップは、量子化テーブル1:1213aの量子化ステップより小さくする。
符号化2モジュール1230bは、量子化2モジュール1215b、記憶モジュール1235と接続されている。符号化2モジュール1230bは、量子化2モジュール1215bによる量子化結果を符号化することによって、符号化データ1237bを生成する。
記憶モジュール1235は、符号化1モジュール1230a、符号化2モジュール1230b、復号1モジュール1240a、復号2モジュール1240bと接続されている。記憶モジュール1235は、符号化データ1237a、符号化データ1237bを記憶する。なお、量子化テーブルも符号化してもよい。
復号1モジュール1240aは、記憶モジュール1235、逆量子化1モジュール1245aと接続されている。復号1モジュール1240aは、符号化1モジュール1230aによって符号化された符号化データ1237aを復号することによって、第1の量子化結果を生成する。ここでの復号は、符号化1モジュール1230aでの符号化に対応するものである。
復号2モジュール1240bは、記憶モジュール1235、逆量子化2モジュール1245bと接続されている。復号2モジュール1240bは、符号化2モジュール1230bによって符号化された符号化データ1237bを復号することによって、第2の量子化結果を生成する。ここでの復号は、符号化2モジュール1230bでの符号化に対応するものである。
逆量子化1モジュール1245aは、復号1モジュール1240a、変換係数合成モジュール1250と接続されている。逆量子化1モジュール1245aは、量子化テーブル1:1243a、復号1モジュール1240aによって復号された第1の量子化結果を受け付ける。逆量子化1モジュール1245aは、復号1モジュール1240aによって復号された第1の量子化結果を逆量子化する。ここでの逆量子化は、量子化1モジュール1215aに対応するものであり、量子化テーブル1:1243aを用いてもよい。
逆量子化2モジュール1245bは、復号2モジュール1240b、変換係数合成モジュール1250と接続されている。逆量子化2モジュール1245bは、量子化テーブル2:1243b、復号2モジュール1240bによって復号された第2の量子化結果を受け付ける。逆量子化2モジュール1245bは、復号2モジュール1240bによって復号された第2の量子化結果を逆量子化する。ここでの逆量子化は、量子化2モジュール1215bに対応するものであり、量子化テーブル2:1243bを用いてもよい。
変換係数合成モジュール1250は、逆量子化1モジュール1245a、逆量子化2モジュール1245b、逆周波数変換モジュール1255と接続されている。変換係数合成モジュール1250は、逆量子化1モジュール1245aによる処理結果と逆量子化2モジュール1245bによる処理結果を合成する。変換係数合成モジュール1250では、合成としての加算処理を行う。
逆周波数変換モジュール1255は、変換係数合成モジュール1250と接続されている。逆周波数変換モジュール1255は、画像1257を出力する。変換係数合成モジュール1250による合成結果を変換係数として、逆周波数変換することによって画像1257を生成する。ここでの逆周波数変換は、周波数変換モジュール1210に対応するものである。
図13は、比較技術における情報重複例を示す説明図である。ここでの比較技術は回線毎に量子化テーブルを使い分けてデータサイズの異なる符号を生成するものである。元が同じ係数値をそれぞれ符号化するので、情報が重複してしまう。
例えば、図13(a)に示す変換係数テーブルの直流成分が989である場合について説明する。
図13(b)に示す例は、高速回線用の符号を生成するものである。量子化テーブルとして、量子化ステップの小さなテーブルを使う。量子化後の変換係数は、直流成分として61となる。
図13(c)に示す例は、低速回線用の符号を生成するものである。量子化テーブルとして、量子化ステップの大きなテーブルを使う。量子化後の変換係数は、直流成分として30となる。
元が同じ係数値(例えば、直流成分の61)を量子化しているので、量子化結果には重複した成分が含まれ、これがそのまま符号化される。つまり、情報が重複してしまう。2進数表記した場合に、直流成分61の「0000111101」の「11110」の部分と、直流成分30の「0000011110」の「11110」の部分は重複した成分である。
図14は、第8の実施の形態における情報重複例を示す説明図である。変換係数値と変換係数を量子化後に逆量子化して復元した値との差分をさらに段階的に量子化して符号化するので、情報の重複をなくすと同時に、スケーラビリティーに富むこととなる。
例えば、図14(a)に示す変換係数テーブルの直流成分が989である場合について説明する。
(1)4ビット右にシフトする量子化を行う。
図14(b)に示す例は、量子化テーブルの例を示し、量子化後の変換係数は、直流成分として61となる。
(2)4ビット左にシフトする逆量子化を行う。
図14(c)に示す例は、直流成分61を逆量子化したものであり、976となっている。
(3)差分を求める。
図14(d)に示す例は、元の直流成分989と逆量子化した結果である直流成分976との差分が13となっていることを示している。図14(b)の例に示す直流成分として61と、この差分13との間には、情報の重複がない。2進数表記した場合に、直流成分61の「0000111101」の「111101」の部分は、元の直流成分989の上位6ビットであり、直流成分13の「0000001101」の「1101」の部分は、元の直流成分989の下位4ビットであり、情報が重複していない。これら(直流成分61、直流成分13)をそれぞれ符号化する。
図15は、JPEGにおける量子化の方法例を示す説明図である。
図15(a)に示す例は、一般的なJPEG処理を行う画像処理装置のモジュール構成を示すものである。
ブロッキングモジュール1510は、周波数変換モジュール1520と接続されている。ブロッキングモジュール1510は、画像1508を受け付け、画像1508をブロックに分割して、周波数変換モジュール1520にブロック1518を渡す。
周波数変換モジュール1520は、ブロッキングモジュール1510、量子化モジュール1530、量子化テーブル1540と接続されている。周波数変換モジュール1520は、ブロッキングモジュール1510からブロック1518を受け取り、各ブロック1518に周波数変換を施し、量子化モジュール1530に係数1528を渡す。
係数1528の例を図15(b)に示す。JPEGでは8×8の変換係数が得られる。左上に直流成分の係数値がある。右方向に低周波から高周波に並べられ、図では、i、jが小さい(直流成分に近い)と低周波であり、大きい(直流成分に遠い)と高周波を示している。
量子化モジュール1530は、周波数変換モジュール1520、量子化テーブル1540、符号化モジュール1550と接続されている。量子化モジュール1530は、周波数変換モジュール1520から係数1528を受け取り、符号化モジュール1550に量子化係数1532を渡す。
量子化テーブル1540は、周波数変換モジュール1520、量子化モジュール1530、符号化モジュール1550と接続されている。量子化テーブル1540は、符号化モジュール1550に量子化テーブル1542を渡す。
量子化テーブル1540の例を図15(c)に示す。量子化テーブル1540には、量子化で利用する量子化ステップが記載されている。例えば、i=8、j=2の量子化ステップは55である。
符号化モジュール1550は、量子化モジュール1530、量子化テーブル1540と接続されている。符号化モジュール1550は、量子化モジュール1530から量子化係数1532を、量子化テーブル1540から量子化テーブル1542を受け取る。
量子化係数1532の例を図15(d)に示す。各係数1528を対応する各量子化ステップで除算し、この値を量子化後の係数(量子化係数1532)とし、符号化モジュール1550が符号化する。例えば、量子化係数1532のi=1、j=1は、係数1528のi=1、j=1(直流成分)の200を、量子化テーブル1540のi=1、j=1の16で除算した値(12=200/16)である。同様に、量子化係数1532のi=2、j=1は、係数1528のi=2、j=1の300を、量子化テーブル1540のi=2、j=1の11で除算した値(27=300/11)である。量子化係数1532のi=1、j=2は、係数1528のi=1、j=2の100を、量子化テーブル1540のi=1、j=2の12で除算した値(8=100/12)である。
図16は、第8の実施の形態(符号化)、比較技術における変換係数の例を示す説明図である。
図16(a)に示す例は、前述の図15の例に示す比較技術(符号化)における画像処理装置のモジュール構成を示しており、上側にあるモジュール構成が高速回線用の圧縮処理を行い、下側にあるモジュール構成が低速回線用の圧縮処理を行う。画像配信サーバ1660には、それぞれ高速回線用JPEG画像1662a、低速回線用JPEG画像1662bが作成される。
Figure 0006233121
Figure 0006233121
式(1)は量子化係数1532aに相当するものである。式(2)は量子化係数1532bに相当するものである。なお、各変数は以下の意味を有している。
,Q:量子化ステップ
,C:変換係数
,C :量子化後の変換係数
図16(b)に示す例は、第8の実施の形態(符号化)におけるモジュール構成を示している。
Figure 0006233121
Figure 0006233121
Figure 0006233121
Figure 0006233121
式(3)は、量子化1モジュール1215aの処理結果に相当するものである。式(4)は、逆量子化1モジュール1220の処理結果に相当するものである。式(5)は、差分計算モジュール1225の処理結果である係数差分値1227に相当するものである。式(6)は、量子化2モジュール1215bの処理結果に相当するものである。なお、各変数は以下の意味を有している。
,Q:量子化ステップ
,C:変換係数
,C :量子化後の変換係数
~:逆量子化後の変換係数
ΔC:係数の差分値
ただし、Q>Qである
式(2)と式(6)の比較からもわかるように、第8の実施の形態は、差分を符号化するので、符号化すべき情報を減らせる。
図17は、第8の実施の形態(復号)、比較技術における変換係数の例を示す説明図である。
図17(a)に示す例は、前述の比較技術(復号)におけるモジュール構成を示しており、上側にある画像処理装置のモジュール構成が高速回線用の復号処理を行い、下側にある画像処理装置のモジュール構成が低速回線用の復号処理を行う。画像配信サーバ1660には、それぞれ高速回線用JPEG画像1662a、低速回線用JPEG画像1662bが記憶されている。それぞれの画像(高速回線用JPEG画像1662a、低速回線用JPEG画像1662b)から画像を復元可能である。
図17(a)の上側にある画像処理装置は、画像配信サーバ1660、復号モジュール1710a、量子化テーブル1720a、逆量子化モジュール1730a、逆周波数変換モジュール1740a、デブロッキングモジュール1750aを有している。下側にある画像処理装置も同様の構成を有しているので重複した説明を省略する。
画像配信サーバ1660は、復号モジュール1710aと接続されている。
復号モジュール1710aは、画像配信サーバ1660、量子化テーブル1720a、逆量子化モジュール1730aと接続されている。復号モジュール1710aは、画像配信サーバ1660より高速回線用JPEG画像1662aを受け取り、量子化テーブル1720aに量子化テーブル1714aを、逆量子化モジュール1730aに量子化係数1712aを渡す。
量子化テーブル1720aは、復号モジュール1710a、逆量子化モジュール1730aと接続されている。量子化テーブル1720aは、復号モジュール1710aより量子化テーブル1714aを受け取る。
逆量子化モジュール1730aは、復号モジュール1710a、量子化テーブル1720a、逆周波数変換モジュール1740aと接続されている。逆量子化モジュール1730aは、復号モジュール1710aより量子化係数1712aを受け取り、逆周波数変換モジュール1740aに係数1732aを渡す。
逆周波数変換モジュール1740aは、逆量子化モジュール1730a、デブロッキングモジュール1750aと接続されている。逆周波数変換モジュール1740aは、逆量子化モジュール1730aより係数1732aを受け取り、デブロッキングモジュール1750aにブロック1742aを渡す。
デブロッキングモジュール1750aは、逆周波数変換モジュール1740aと接続されている。デブロッキングモジュール1750aは、逆周波数変換モジュール1740aよりブロック1742aを受け取り、画像1752aを出力する。
Figure 0006233121
Figure 0006233121
Figure 0006233121
Figure 0006233121
式(7)は、逆量子化モジュール1730aの処理結果である係数1732aに相当するものである。式(8)は、復号モジュール1710aの処理結果である量子化係数1712aに相当するものである。式(9)は、逆量子化モジュール1730bの処理結果である係数1732bに相当するものである。式(10)は、復号モジュール1710bの処理結果である量子化係数1712bに相当するものである。なお、各変数は以下の意味を有している。
,Q:量子化ステップ
,C:変換係数
,C :量子化後の変換係数
~,C~:逆量子化後の変換係数
図17(b)に示す例は、第8の実施の形態(復号)におけるモジュール構成を示している。高速回線用のデータは、符号化データ1237a、符号化データ1237bを合成して画像1257を生成する。低速回線用のデータは、符号化データ1237aから画像1257を生成する。
Figure 0006233121
Figure 0006233121
Figure 0006233121
Figure 0006233121
Figure 0006233121
式(11)は、復号1モジュール1240aの処理結果に相当するものである。式(12)は、逆量子化1モジュール1245aの処理結果に相当するものである。式(13)は、復号2モジュール1240bの処理結果に相当するものである。式(14)は、逆量子化2モジュール1245bの処理結果に相当するものである。式(15)は、変換係数合成モジュール1250の処理結果に相当するものである。なお、各変数は以下の意味を有している。
ΔC:係数の差分値
,Q:量子化ステップ
,C :量子化後の変換係数
~,C~:逆量子化後の変換係数
C~:変化係数合成後の変換係数
ただし、Q>Qである。
<第9の実施の形態>
図18は、第9の実施の形態の構成例についての概念的なモジュール構成図である。伸長には必ずしも全ての符号が揃う必要がない。一部を利用して近似画像を伸長(生成)できる。第9の実施の形態では1つの符号だけを使っており、低速回線向きといえる。このように通信性能等を加味して必要な符号だけを転送して、伸長することができる。
符号化装置としては、周波数変換モジュール1210、量子化1モジュール1215a、逆量子化1モジュール1220、差分計算モジュール1225、符号化1モジュール1230a、量子化2モジュール1215b、符号化2モジュール1230bによって構成されている。さらに、記憶モジュール1235を付加してもよい。これらは、図12の例に示した第8の実施の形態の符号化装置と同じである。また、復号装置としては、復号モジュール1840、逆量子化1モジュール1845、変換係数合成モジュール1850、逆周波数変換モジュール1855によって構成されている。さらに、記憶モジュール1235を付加してもよい。
復号モジュール1840は、記憶モジュール1235、逆量子化1モジュール1845と接続されている。復号モジュール1840は、符号化データ1237aを復号することによって、量子化結果を生成する。
逆量子化1モジュール1845は、復号モジュール1840、変換係数合成モジュール1850と接続されている。逆量子化1モジュール1845は、量子化テーブル1:1843を受け付ける。逆量子化1モジュール1845は、復号モジュール1840によって復号された量子化結果を逆量子化する。
変換係数合成モジュール1850は、逆量子化1モジュール1845、逆周波数変換モジュール1855と接続されている。なお、変換係数合成モジュール1850はなくてもよい。つまり、逆量子化1モジュール1845の出力を逆周波数変換モジュール1855がそのまま利用してもよい。
逆周波数変換モジュール1855は、変換係数合成モジュール1850と接続されている。変換係数合成モジュール1850は、画像1857を出力する。逆周波数変換モジュール1855は、逆量子化1モジュール1845による処理結果を変換係数として、逆周波数変換することによって画像1857を生成する。
図12の例に示した第8の実施の形態の復号装置から復号2モジュール1240b、量子化テーブル2:1243b、逆量子化2モジュール1245bを削除したものである。
<第10の実施の形態>
図19は、第10の実施の形態による処理例を示す説明図である。第10の実施の形態は、図12の例に示す第8の実施の形態におけるモジュール構成と同等のものである。
ただし、量子化1モジュール1215aは、量子化テーブル1:1213a(1番目の量子化テーブル)を用いて量子化を行い、量子化2モジュール1215bは、量子化テーブル2:1213b(2番目の量子化テーブル)を用いて量子化を行い、さらに、3段目以上の量子化モジュールがそれぞれ量子化テーブル:1213(n番目の量子化テーブル)を用いて量子化を行うようにしてもよい。そして、1番目の量子化テーブル(量子化テーブル1:1213a)の量子化ステップを偶数値とし、n番目の量子化テーブル(量子化テーブル2:1213b等)の量子化ステップは1番目の量子化テーブル(量子化テーブル1:1213a)の量子化ステップの1/2倍にする。2番目の量子化以降の符号化はビットプレーンを符号化するのと等価になる。ただし、nは1以上の整数である。
同様に、復号を行う画像処理装置においても、逆量子化1モジュール1245aは、量子化テーブル1:1243a(1番目の量子化テーブルと同等)を用いて逆量子化を行い、逆量子化2モジュール1245bは、量子化テーブル2:1243b(2番目の量子化テーブルと同等)を用いて逆量子化を行い、さらに、3段目以上の逆量子化モジュールがそれぞれ量子化テーブル:1243(n番目の量子化テーブルと同等)を用いて逆量子化を行うようにしてもよい。量子化テーブル:1243内の量子化ステップは、量子化テーブル:1213内の量子化ステップと同等である。
図19(a2)に示す例は、量子化テーブル1:1213aの一例を示す。図19(b)に示す例は、量子化1モジュール1215aによる結果例を示す。図19(c)に示す例は、逆量子化1モジュール1220による結果例を示す。図19(d2)に示す例は、量子化テーブル2:1213bの一例を示す。図19(e)に示す例は、量子化2モジュール1215bによる結果例を示す。
次に、処理の概要を示す。
1.直流成分の係数値989(図19(a1)の例参照)を、図19(a2)の例で示す量子化テーブルで量子化するとする。
2.図19(b)の例に示すような量子化結果を得て、これを符号化する。
3.図19(c)の例に示すような逆量子化結果を得る。
4.図19(d1)の例に示すような差分値(図19(a1)の係数値989から図19(c)の例に示す値を減算)を取得し、これを図19(d2)の例で示す量子化テーブルで量子化する。なお、図19(d2)の例で示す量子化テーブル内の各値は、図19(a2)の例で示す量子化テーブル内の各値の1/2倍である。
5.図19(e)の例に示すような量子化結果を得て、これを符号化する。
6.図19(e)の例に示す量子化結果を逆量子化した結果は、図19(f)の例のようになる。
<第11の実施の形態>
図20は、第11の実施の形態による処理例を示す説明図である。第11の実施の形態は、図12の例に示す第8の実施の形態におけるモジュール構成と同等のものである。
ただし、量子化1モジュール1215aは、量子化テーブル1:1213a(1番目の量子化テーブル)を用いて量子化を行い、量子化2モジュール1215bは、量子化テーブル2:1213b(2番目の量子化テーブル)を用いて量子化を行い、さらに、3段目以上の量子化モジュールがそれぞれ量子化テーブル:1213(n番目の量子化テーブル)を用いて量子化を行うようにしてもよい。そして、1番目の量子化テーブル(量子化テーブル1:1213a)の量子化ステップを偶数値とし、n番目の量子化テーブル(量子化テーブル2:1213b等)の量子化ステップはn−1番目の量子化ステップの{1/2,1/4,1/8,…1/2}倍の中から選択するようにしたものである。これは、各量子化ステップを単独の倍率としてもよいし(例えば、量子化ステップ毎に倍率が異なる)、量子化テーブル内の全ての量子化ステップに対して一律の倍率を適用するようにしてもよい。
同様に、復号を行う画像処理装置においても、逆量子化1モジュール1245aは、量子化テーブル1:1243a(1番目の量子化テーブルと同等)を用いて逆量子化を行い、逆量子化2モジュール1245bは、量子化テーブル2:1243b(2番目の量子化テーブルと同等)を用いて逆量子化を行い、さらに、3段目以上の逆量子化モジュールがそれぞれ量子化テーブル:1243(n番目の量子化テーブルと同等)を用いて逆量子化を行うようにしてもよい。量子化テーブル:1243内の量子化ステップは、量子化テーブル:1213内の量子化ステップと同等である。
図20(a2)に示す例は、量子化テーブル1:1213aの一例を示す。図20(b)に示す例は、量子化1モジュール1215aによる結果例を示す。図20(c)に示す例は、逆量子化1モジュール1220による結果例を示す。図20(d2)に示す例は、量子化テーブル2:1213bの一例を示す。図20(e)に示す例は、量子化2モジュール1215bによる結果例を示す。
次に、処理の概要を示す。
1.直流成分の係数値989(図20(a1)の例参照)を、図20(a2)の例で示す量子化テーブルで量子化するとする。
2.図20(b)の例に示すような量子化結果を得て、これを符号化する。1番目に符号化されるデータは6[bit]となる。
3.図20(c)の例に示すような逆量子化結果を得る。
4.図20(d1)の例に示すような差分値(図20(a1)の係数値989から図20(c)の例に示す値を減算)を取得し、これを図20(d2)の例で示す量子化テーブルで量子化する。なお、なお、図20(d2)の例で示す量子化テーブル内の直流成分は、図20(a2)の例で示す量子化テーブル内の直流成分の1/4倍である。
5.図20(e)の例に示すような量子化結果を得て、これを符号化する。2番目に符号化されるデータは2[bit]となる。
6.図20(e)の例に示す量子化結果を逆量子化した結果は、図20(f)の例のようになる。
<第12の実施の形態>
図21は、第12の実施の形態による処理例を示す説明図である。第12の実施の形態は、図12の例に示す第8の実施の形態におけるモジュール構成と同等のものである。
ただし、量子化1モジュール1215aは、量子化テーブル1:1213a(1番目の量子化テーブル)を用いて量子化を行い、量子化2モジュール1215bは、量子化テーブル2:1213b(2番目の量子化テーブル)を用いて量子化を行い、さらに、3段目以上の量子化モジュールがそれぞれ量子化テーブル:1213(n番目の量子化テーブル)を用いて量子化を行うようにしてもよい。最後であるNlast番目の量子化テーブルの量子化ステップを1にする。これによって、変換係数成分の全てを符号化する。量子化による画質劣化を最小化することとなる。
同様に、復号を行う画像処理装置においても、逆量子化1モジュール1245aは、量子化テーブル1:1243a(1番目の量子化テーブルと同等)を用いて逆量子化を行い、逆量子化2モジュール1245bは、量子化テーブル2:1243b(2番目の量子化テーブルと同等)を用いて逆量子化を行い、さらに、3段目以上の逆量子化モジュールがそれぞれ量子化テーブル:1243(n番目の量子化テーブルと同等)を用いて逆量子化を行うようにしてもよい。量子化テーブル:1243内の量子化ステップは、量子化テーブル:1213内の量子化ステップと同等である。
図21(a2)に示す例は、量子化テーブル1:1213aの一例を示す。図21(b)に示す例は、量子化1モジュール1215aによる結果例を示す。図21(c)に示す例は、逆量子化1モジュール1220による結果例を示す。図21(d2)に示す例は、量子化テーブル2:1213bの一例を示す。図21(e)に示す例は、量子化2モジュール1215bによる結果例を示す。
次に、処理の概要を示す。
1.直流成分の係数値989(図21(a1)の例参照)を、図21(a2)の例で示す量子化テーブルで量子化するとする。
2.図21(b)の例に示すような量子化結果を得て、これを符号化する。1番目に符号化されるデータは6[bit]となる。
3.図21(c)の例に示すような逆量子化結果を得る。
4.図21(d1)の例に示すような差分値(図21(a1)の係数値989から図21(c)の例に示す値を減算)を取得し、これを図21(d2)の例で示す量子化テーブル(Nlast番目の量子化テーブル)で量子化する。なお、図21(d2)の例で示す量子化テーブル内の各値は1である。
5.図21(e)の例に示すような量子化結果を得て、これを符号化する。最後に符号化されるデータは4[bit]となる。
<第13の実施の形態>
図22は、第13の実施の形態の構成例についての概念的なモジュール構成図である。前述の実施の形態が出力する符号は、JPEGフォーマット準拠とすることができる。JPEGフォーマット準拠とすれば、他システムとの連携も可能であり、過去のソフトウェア、ハードウェア資産を活用したり、汎用ブラウザでの閲覧も可能となる。量子化された係数はそれぞれ頻度分布が異なるので、ハフマン符号は都度設計するほうがよい。
符号化装置としては、ブロッキングモジュール2208、DCTモジュール2210、量子化1モジュール2215a、逆量子化1モジュール2220、差分計算モジュール2225、ハフマン符号化1モジュール2230a、量子化2モジュール2215b、ハフマン符号化2モジュール2230bによって構成されている。さらに、記憶モジュール2235を付加してもよい。また、復号装置としては、ハフマン復号1モジュール2240a、逆量子化1モジュール2245a、ハフマン復号2モジュール2240b、逆量子化2モジュール2245b、変換係数合成モジュール2250、IDCTモジュール2255、デブロッキングモジュール2257によって構成されている。さらに、記憶モジュール2235を付加してもよい。
なお、ブロッキングモジュール2208、DCTモジュール2210、量子化1モジュール2215a、量子化2モジュール2215b、逆量子化1モジュール2220、ハフマン符号化1モジュール2230a、ハフマン符号化2モジュール2230b、ハフマン復号1モジュール2240a、ハフマン復号2モジュール2240b、逆量子化1モジュール2245a、逆量子化2モジュール2245b、IDCTモジュール2255、デブロッキングモジュール2257は、JPEGと同じ機能のモジュールであり、差分計算モジュール2225、変換係数合成モジュール2250は、JPEGと異なる機能のモジュールである。差分計算モジュール2225は前述の実施の形態における差分計算モジュールと同等であり、変換係数合成モジュール2250は前述の実施の形態における変換係数合成モジュール(合成モジュール)と同等である。
ブロッキングモジュール2208は、DCTモジュール2210と接続されている。ブロッキングモジュール2208は、画像2206を受け付ける。
DCTモジュール2210は、ブロッキングモジュール2208、量子化1モジュール2215a、差分計算モジュール2225と接続されている。DCTモジュール2210は、差分計算モジュール2225に変換係数2212を渡す。DCTモジュール2210は、ブロッキングモジュール2208によって抽出されたブロックに対してDCT(Discrete Cosine Transform)処理を行う。
量子化1モジュール2215aは、DCTモジュール2210、逆量子化1モジュール2220、ハフマン符号化1モジュール2230aと接続されている。量子化1モジュール2215aは、量子化テーブル1:2213aを受け付ける。
逆量子化1モジュール2220は、量子化1モジュール2215a、差分計算モジュール2225と接続されている。
差分計算モジュール2225は、DCTモジュール2210、逆量子化1モジュール2220、量子化2モジュール2215bと接続されている。差分計算モジュール2225は、DCTモジュール2210から変換係数2212を受け取り、係数差分値2227を量子化2モジュール2215bに渡す。
ハフマン符号化1モジュール2230aは、量子化1モジュール2215a、記憶モジュール2235と接続されている。
量子化2モジュール2215bは、差分計算モジュール2225、ハフマン符号化2モジュール2230bと接続されている。量子化2モジュール2215bは、差分計算モジュール2225から係数差分値2227を受け取る。
ハフマン符号化2モジュール2230bは、量子化2モジュール2215b、記憶モジュール2235と接続されている。
記憶モジュール2235は、ハフマン符号化1モジュール2230a、ハフマン符号化2モジュール2230b、ハフマン復号1モジュール2240a、ハフマン復号2モジュール2240bと接続されている。記憶モジュール2235は、JPEG画像2237a、JPEG画像2237bを記憶する。
ハフマン復号1モジュール2240aは、記憶モジュール2235、逆量子化1モジュール2245aと接続されている。
ハフマン復号2モジュール2240bは、記憶モジュール2235、逆量子化2モジュール2245bと接続されている。
逆量子化1モジュール2245aは、ハフマン復号1モジュール2240a、変換係数合成モジュール2250と接続されている。逆量子化1モジュール2245aは、量子化テーブル1:2243aを受け付ける。
逆量子化2モジュール2245bは、ハフマン復号2モジュール2240b、変換係数合成モジュール2250と接続されている。逆量子化2モジュール2245bは、量子化テーブル2:2243bを受け付ける。
変換係数合成モジュール2250は、逆量子化1モジュール2245a、逆量子化2モジュール2245b、IDCTモジュール2255と接続されている。
IDCTモジュール2255は、変換係数合成モジュール2250、デブロッキングモジュール2257と接続されている。変換係数合成モジュール2250によって合成された変換係数を用いてしてIDCT(Inverse Discrete Cosine Transform)処理を行う。
デブロッキングモジュール2257は、IDCTモジュール2255と接続されている。デブロッキングモジュール2257は、画像2259を出力する。
<第14の実施の形態>
図23は、第14の実施の形態による処理例を示す説明図である。第14の実施の形態は、図12の例に示す第8の実施の形態におけるモジュール構成と同等のものである。
ただし、量子化1モジュール1215aは、量子化テーブル1:1213a(1番目の量子化テーブル)を用いて量子化を行い、量子化2モジュール1215bは、量子化テーブル2:1213b(2番目の量子化テーブル)を用いて量子化を行い、さらに、3段目以上の量子化モジュールがそれぞれ量子化テーブル:1213(n番目の量子化テーブル)を用いて量子化を行うようにしてもよい。前述の第10、11、12の実施の形態のように、2のべき乗で除算しなくとも、量子化テーブル内の量子化ステップは前段の量子化テーブルにおける量子化ステップよりも小さい値(任意値)で対応することができる。
同様に、復号を行う画像処理装置においても、逆量子化1モジュール1245aは、量子化テーブル1:1243a(1番目の量子化テーブルと同等)を用いて逆量子化を行い、逆量子化2モジュール1245bは、量子化テーブル2:1243b(2番目の量子化テーブルと同等)を用いて逆量子化を行い、さらに、3段目以上の逆量子化モジュールがそれぞれ量子化テーブル:1243(n番目の量子化テーブルと同等)を用いて逆量子化を行うようにしてもよい。量子化テーブル:1243内の量子化ステップは、量子化テーブル:1213内の量子化ステップと同等である。
図23(a2)に示す例は、量子化テーブル1:1213aの一例を示す。図23(b)に示す例は、量子化1モジュール1215aによる結果例を示す。図23(c)に示す例は、逆量子化1モジュール1220による結果例を示す。図23(d2)に示す例は、量子化テーブル2:1213bの一例を示す。図23(e)に示す例は、量子化2モジュール1215bによる結果例を示す。
次に、処理の概要を示す。
1.直流成分の係数値989(図23(a1)の例参照)を、図23(a2)の例で示す量子化テーブルで量子化するとする。
2.図23(b)の例に示すような量子化結果を得て、これを符号化する。1番目に符号化されるデータは6[bit]となる。
3.図23(c)の例に示すような逆量子化結果を得る。
4.図23(d1)の例に示すような差分値(図23(a1)の係数値989から図23(c)の例に示す値を減算)を取得し、これを図23(d2)の例で示す量子化テーブル(2番目の量子化テーブル)で量子化する。なお、図23(d2)の例で示す量子化テーブル内の各値は、1番目の量子化テーブル内の各値を2のべき乗で除算したものではなく、1番目の量子化テーブル内の各値よりも小である任意値である。
5.図23(e)の例に示すような量子化結果を得て、これを符号化する。最後に符号化されるデータは1[bit]となる。
6.図23(e)の例に示す量子化結果を逆量子化した結果は、図23(f)の例のようになる。
<第15の実施の形態>
図24は、第15の実施の形態の構成例についての概念的なモジュール構成図である。
係数加算はJPEGの処理途中の中間データを操作する必要がある。一方で、画素値加算はJPEGの外側のデータ(画素)を加算するので、JPEGライブラリをそのまま使うことができる。これを利用して圧縮時のみ係数差分によって、符号化、伸長時は画素加算で伸長してもよい。これによって、伸長先のPFが多岐にわたった場合に、例えば、ブラウザに内蔵されたJPEGを使いつつ、画素値加算部分(合成モジュール2445)だけを実装すればよい。画素値差分、係数加算もある。
具体的には、JPEG伸長自体はウェブブラウザが標準で対応しているものを用いればよい。そして、例えば、HTMLのJavaScript(登録商標)による合成(合成モジュール2445に相当する機能)さえ準備すればよい。したがって、特別なアプリケーションをインストールすることなく、Internet Explorer/Chrome/Safari等のウェブブラウザで本実施の形態を実現できる。
符号化装置としては、周波数変換モジュール2410、量子化1モジュール2415a、逆量子化1モジュール2420、差分計算モジュール2425、符号化1モジュール2430a、量子化2モジュール2415b、符号化2モジュール2430bによって構成されている。さらに、記憶モジュール2435を付加してもよい。また、復号装置としては、JPEG伸長1モジュール2440a、JPEG伸長2モジュール2440b、合成モジュール2445によって構成されている。さらに、記憶モジュール2435を付加してもよい。
符号化装置としては、図12の例に示す第8の実施の形態と同等のモジュール構成である。
周波数変換モジュール2410は、量子化1モジュール2415a、差分計算モジュール2425と接続されている。周波数変換モジュール2410は、画像2408を受け付け、差分計算モジュール2425に変換係数2412を渡す。
量子化1モジュール2415aは、周波数変換モジュール2410、逆量子化1モジュール2420、符号化1モジュール2430aと接続されている。量子化1モジュール2415aは、量子化テーブル1:2413aを受け付ける。
逆量子化1モジュール2420は、量子化1モジュール2415a、差分計算モジュール2425と接続されている。
差分計算モジュール2425は、周波数変換モジュール2410、逆量子化1モジュール2420、量子化2モジュール2415bと接続されている。差分計算モジュール2425は、周波数変換モジュール2410から変換係数2412を受け取り、量子化2モジュール2415bに係数差分値2427を渡す。
符号化1モジュール2430aは、量子化1モジュール2415a、記憶モジュール2435と接続されている。
量子化2モジュール2415bは、差分計算モジュール2425、符号化2モジュール2430bと接続されている。量子化2モジュール2415bは、差分計算モジュール2425から係数差分値2427を受け取り、量子化テーブル2:2413bを受け付ける。量子化テーブル2:2413bの量子化ステップは、量子化テーブル1:2413aの量子化ステップより小さくする。
符号化2モジュール2430bは、量子化2モジュール2415b、記憶モジュール2435と接続されている。
記憶モジュール2435は、符号化1モジュール2430a、符号化2モジュール2430b、JPEG伸長1モジュール2440a、JPEG伸長2モジュール2440bと接続されている。記憶モジュール2435は、符号化データ2437a、符号化データ2437bを記憶する。
JPEG伸長1モジュール2440aは、記憶モジュール2435、合成モジュール2445と接続されている。JPEG伸長1モジュール2440aは、符号化データ2437aを受け付け、量子化テーブル1:2438aを用いて伸長する。例えば、既存のJPEG伸長器を用いて、第1の画素値を生成する。
JPEG伸長2モジュール2440bは、記憶モジュール2435、合成モジュール2445と接続されている。JPEG伸長2モジュール2440bは、符号化データ2437bを受け付け、量子化テーブル2:2438bを用いて伸長する。例えば、既存のJPEG伸長器を用いて、第2の画素値を生成する。なお、符号化データ2437bは、変換係数の差分値を用いて生成されたデータである。
合成モジュール2445は、JPEG伸長1モジュール2440a、JPEG伸長2モジュール2440bと接続されている。合成モジュール2445は、出力画像2447を出力する。合成モジュール2445では、JPEG伸長1モジュール2440aで伸長された第1の画像の画素値とJPEG伸長2モジュール2440bで伸長された第2の画像の画素値の加算を行って、出力画像2447を生成する。
図25を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。図25に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成されるものであり、スキャナ等のデータ読み取り部2517と、プリンタなどのデータ出力部2518を備えたハードウェア構成例を示している。
CPU(Central Processing Unit)2501は、前述の実施の形態において説明した各種のモジュール、すなわち、量子化モジュール110、逆量子化モジュール120、差分計算モジュール130、逆量子化モジュール410、合成モジュール420、分配モジュール610、色成分量子化モジュール615、符号化モジュール620、色成分逆量子化モジュール625、差分計算モジュール630、復号モジュール640、色成分逆量子化モジュール645、合成モジュール650等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
ROM(Read Only Memory)2502は、CPU2501が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)2503は、CPU2501の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス2504により相互に接続されている。
ホストバス2504は、ブリッジ2505を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス2506に接続されている。
キーボード2508、マウス等のポインティングデバイス2509は、操作者により操作される入力デバイスである。ディスプレイ2510は、液晶表示装置又はCRT(Cathode Ray Tube)などがあり、各種情報をテキストやイメージ情報として表示する。
HDD(Hard Disk Drive)2511は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU2501によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、入力データ108、量子化データa112a、量子化差分データb112b、復号データ492、入力画像608、量子化パラメータ:613、符号化データ637、復号画像652等が格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
ドライブ2512は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体2513に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース2507、外部バス2506、ブリッジ2505、及びホストバス2504を介して接続されているRAM2503に供給する。リムーバブル記録媒体2513も、ハードディスクと同様のデータ記録領域として利用可能である。
接続ポート2514は、外部接続機器2515を接続するポートであり、USB、IEEE1394等の接続部を持つ。接続ポート2514は、インタフェース2507、及び外部バス2506、ブリッジ2505、ホストバス2504等を介してCPU2501等に接続されている。通信部2516は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部2517は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部2518は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
なお、図25に示す画像処理装置のハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図25に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図25に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray(登録商標) Disc)、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
100…画像処理装置
108…入力データ
110…量子化モジュール
112a…量子化データa
112b…量子化差分データb
112c…量子化差分データc
120…逆量子化モジュール
122…逆量子化データ
130…差分計算モジュール
132…差分
400…画像処理装置
410…逆量子化モジュール
420…合成モジュール
492…復号データ
608…入力画像
610…分配モジュール
613…量子化パラメータ
615…色成分量子化モジュール
620…符号化モジュール
625…色成分逆量子化モジュール
630…差分計算モジュール
635…記憶モジュール
637…符号化データ
640…復号モジュール
645…色成分逆量子化モジュール
650…合成モジュール
652…復号画像

Claims (14)

  1. 画像を量子化することによって、第1の量子化結果を生成する第1の量子化手段と、
    前記第1の量子化結果を逆量子化することによって、第1の逆量子化結果を生成する第1の逆量子化手段と、
    前記画像と前記第1の逆量子化結果との差分を算出する差分算出手段と、
    前記差分算出手段による差分結果を量子化することによって、第2の量子化結果を生成する第2の量子化手段と、
    画像を周波数変換することによって、変換係数を生成する変換手段と、
    前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、
    前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段
    を具備し、
    前記第1の量子化手段は、前記変換係数を量子化することによって、第1の量子化結果を生成し、
    前記差分算出手段は、前記周波数変換と前記第1の逆量子化結果との差分を算出し、
    前記第1の量子化手段は、第1の量子化テーブルを用いて量子化を行い、
    前記第2の量子化手段は、第2の量子化テーブルを用いて量子化を行い、
    前記第1の量子化テーブルの量子化ステップは偶数値とし、
    前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できる
    ことを特徴とする画像処理装置。
  2. 請求項1に記載の画像処理装置による第1の量子化結果を逆量子化する第1の逆量子化手段と、
    請求項1に記載の画像処理装置による第2の量子化結果を逆量子化する第2の逆量子化手段と、
    前記第1の逆量子化手段による処理結果と前記第2の逆量子化手段による処理結果を合成する合成手段と、
    請求項1に記載の画像処理装置による第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、
    請求項1に記載の画像処理装置による第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段と、
    前記合成手段による合成結果を変換係数として、逆周波数変換することによって画像を生成する逆変換手段
    を具備し、
    前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、
    前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化し、
    前記第1の逆量子化手段は、第1の量子化テーブルを用いて量子化を行い、
    前記第2の逆量子化手段は、第2の量子化テーブルを用いて量子化を行い、
    前記第1の量子化テーブルの量子化ステップは偶数値とし、
    前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できる
    ことを特徴とする画像処理装置。
  3. 前記第1の量子化結果、第2の量子化結果を送信する送信手段
    をさらに具備し、
    前記送信手段は、通信回線の速度に応じて、前記第1の量子化結果、又は該第1の量子化結果と前記第2の量子化結果のいずれかを送信する
    ことを特徴とする請求項1に記載の画像処理装置。
  4. 前記画像から予め定められた色成分情報を分配する分配手段と、
    前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、
    前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段
    をさらに具備し、
    前記第1の量子化手段は、前記分配手段によって分配された色成分情報を量子化する
    ことを特徴とする請求項1に記載の画像処理装置。
  5. 請求項4に記載の画像処理装置による第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、
    請求項4に記載の画像処理装置による第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段
    をさらに具備し、
    前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、
    前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化する
    ことを特徴とする請求項2に記載の画像処理装置。
  6. 前記第1の符号化手段による第1の符号化結果、第2の符号化手段による第2の符号化結果を送信する送信手段
    をさらに具備し、
    前記送信手段は、通信回線の速度に応じて、前記第1の符号化結果、又は該第1の符号化結果と前記第2の符号化結果のいずれかを送信する
    ことを特徴とする請求項4に記載の画像処理装置。
  7. 前記画像から予め定められた領域の画像情報を分配する分配手段と、
    前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、
    前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段
    をさらに具備し、
    前記第1の量子化手段は、前記分配手段によって分配された領域の画像情報を量子化する
    ことを特徴とする請求項1に記載の画像処理装置。
  8. 請求項7に記載の画像処理装置による第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、
    請求項7に記載の画像処理装置による第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段
    をさらに具備し、
    前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、
    前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化する
    ことを特徴とする請求項2に記載の画像処理装置。
  9. 前記第1の符号化手段による第1の符号化結果、第2の符号化手段による第2の符号化結果を送信する送信手段
    をさらに具備し、
    前記送信手段は、通信回線の速度に応じて、前記第1の符号化結果、又は該第1の符号化結果と前記第2の符号化結果のいずれかを送信する
    ことを特徴とする請求項7に記載の画像処理装置。
  10. 前記第1の量子化手段と前記第2の量子化手段は、前記量子化として非可逆圧縮を行い、
    前記第1の逆量子化手段は、前記逆量子化として前記非可逆圧縮に対応する伸長を行う
    ことを特徴とする請求項1、3、4、6、7、9のいずれか一項に記載の画像処理装置。
  11. 前記第1の逆量子化手段と前記第2の逆量子化手段は、前記逆量子化として、請求項10に記載の前記非可逆圧縮に対応する伸長を行う
    ことを特徴とする請求項2、5、8のいずれか一項に記載の画像処理装置。
  12. 前記第1の符号化結果を復号することによって、量子化結果を生成する復号手段と、
    前記復号手段による前記量子化結果を逆量子化する逆量子化手段と、
    前記逆量子化手段による処理結果を変換係数として、逆周波数変換することによって画像を生成する逆変換手段
    を具備することを特徴とする請求項に記載の画像処理装置。
  13. コンピュータを、
    画像を量子化することによって、第1の量子化結果を生成する第1の量子化手段と、
    前記第1の量子化結果を逆量子化することによって、第1の逆量子化結果を生成する第1の逆量子化手段と、
    前記画像と前記第1の逆量子化結果との差分を算出する差分算出手段と、
    前記差分算出手段による差分結果を量子化することによって、第2の量子化結果を生成する第2の量子化手段と、
    画像を周波数変換することによって、変換係数を生成する変換手段と、
    前記第1の量子化結果を符号化することによって、第1の符号化結果を生成する第1の符号化手段と、
    前記第2の量子化結果を符号化することによって、第2の符号化結果を生成する第2の符号化手段
    として機能させ
    前記第1の量子化手段は、前記変換係数を量子化することによって、第1の量子化結果を生成し、
    前記差分算出手段は、前記周波数変換と前記第1の逆量子化結果との差分を算出し、
    前記第1の量子化手段は、第1の量子化テーブルを用いて量子化を行い、
    前記第2の量子化手段は、第2の量子化テーブルを用いて量子化を行い、
    前記第1の量子化テーブルの量子化ステップは偶数値とし、
    前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できる
    ことを特徴とする画像処理プログラム。
  14. コンピュータを、
    請求項13に記載の画像処理プログラムが機能したコンピュータによる第1の量子化結果を逆量子化する第1の逆量子化手段と、
    請求項13に記載の画像処理プログラムが機能したコンピュータによる第2の量子化結果を逆量子化する第2の逆量子化手段と、
    前記第1の逆量子化手段による処理結果と前記第2の逆量子化手段による処理結果を合成する合成手段と、
    請求項13に記載の画像処理プログラムが機能したコンピュータによる第1の符号化結果を復号することによって、第1の量子化結果を生成する第1の復号手段と、
    請求項13に記載の画像処理プログラムが機能したコンピュータによる第2の符号化結果を復号することによって、第2の量子化結果を生成する第2の復号手段と、
    前記合成手段による合成結果を変換係数として、逆周波数変換することによって画像を生成する逆変換手段
    として機能させ
    前記第1の逆量子化手段は、前記第1の復号手段による第1の量子化結果を逆量子化し、
    前記第2の逆量子化手段は、前記第2の復号手段による第2の量子化結果を逆量子化し、
    前記第1の逆量子化手段は、第1の量子化テーブルを用いて量子化を行い、
    前記第2の逆量子化手段は、第2の量子化テーブルを用いて量子化を行い、
    前記第1の量子化テーブルの量子化ステップは偶数値とし、
    前記第2の量子化テーブルの量子化ステップは、前記第1の量子化テーブルの量子化ステップの1/2 (nは1以上の整数)とし、量子化ステップ毎に倍率を選択できる
    ことを特徴とする画像処理プログラム。
JP2014053676A 2014-03-17 2014-03-17 画像処理装置及び画像処理プログラム Expired - Fee Related JP6233121B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014053676A JP6233121B2 (ja) 2014-03-17 2014-03-17 画像処理装置及び画像処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014053676A JP6233121B2 (ja) 2014-03-17 2014-03-17 画像処理装置及び画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2015177431A JP2015177431A (ja) 2015-10-05
JP6233121B2 true JP6233121B2 (ja) 2017-11-22

Family

ID=54256167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014053676A Expired - Fee Related JP6233121B2 (ja) 2014-03-17 2014-03-17 画像処理装置及び画像処理プログラム

Country Status (1)

Country Link
JP (1) JP6233121B2 (ja)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08102945A (ja) * 1994-09-30 1996-04-16 Toshiba Corp 階層符号復号化装置
US6795501B1 (en) * 1997-11-05 2004-09-21 Intel Corporation Multi-layer coder/decoder for producing quantization error signal samples
JP2001268565A (ja) * 2000-03-15 2001-09-28 Fuji Xerox Co Ltd 画像符号化装置および画像復号装置
JP2002064817A (ja) * 2000-08-21 2002-02-28 Kddi Research & Development Laboratories Inc オブジェクトスケーラブル符号化装置
JP4014098B2 (ja) * 2003-06-26 2007-11-28 株式会社Kddi研究所 画像の階層的符号化装置および復号装置
JP4262144B2 (ja) * 2004-06-15 2009-05-13 キヤノン株式会社 画像符号化装置及び方法
JP2009522971A (ja) * 2006-01-10 2009-06-11 ノキア コーポレイション 拡張可能ビデオ符号化のための切換型フィルタアップサンプリング機構
CN102318202B (zh) * 2006-03-29 2014-06-04 维德约股份有限公司 用于可缩放与非可缩放视频编解码器之间的译码的系统和方法
US20070230564A1 (en) * 2006-03-29 2007-10-04 Qualcomm Incorporated Video processing with scalability
US8275045B2 (en) * 2006-07-12 2012-09-25 Qualcomm Incorporated Video compression using adaptive variable length codes
CN101513073A (zh) * 2006-08-30 2009-08-19 皇家飞利浦电子股份有限公司 编码数据信号的设备和方法及解码数据信号的设备和方法
JP5873395B2 (ja) * 2012-06-14 2016-03-01 Kddi株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム

Also Published As

Publication number Publication date
JP2015177431A (ja) 2015-10-05

Similar Documents

Publication Publication Date Title
Xu et al. Prediction mode modulated data-hiding algorithm for H. 264/AVC
JP6245888B2 (ja) エンコーダおよび符号化方法
Sun et al. An objective visual security assessment for cipher-images based on local entropy
JP2007235759A (ja) 画像符号化装置及びその制御方法
JP2009290498A (ja) 画像符号化装置及び画像符号化方法
JP3902990B2 (ja) アダマール変換処理方法及びその装置
Shanableh Feature extraction and machine learning solutions for detecting motion vector data embedding in HEVC videos
Kadhim Image compression using discrete cosine transform method
JP6233121B2 (ja) 画像処理装置及び画像処理プログラム
JP2013258651A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
US10979704B2 (en) Methods and apparatus for optical blur modeling for improved video encoding
Chen et al. Recursive code construction for reversible data hiding in DCT domain
JP5842357B2 (ja) 画像処理装置及び画像処理プログラム
JP5698644B2 (ja) 動画像予測符号化方法、動画像予測符号化装置、動画像予測符号化プログラム、動画像予測復号方法、動画像予測復号装置及び動画像予測復号プログラム
KR20110071483A (ko) 비트 심도 감소를 이용한 깊이 영상 처리 장치 및 방법
US7773815B2 (en) System and method for compressing compressed data
CN109413445A (zh) 一种视频传输方法及装置
JP2013197889A (ja) 画像処理装置、画像処理方法
JP6080077B2 (ja) 画像符号化方法及び画像符号化装置
JP2006237765A (ja) 画像符号化装置
Patil et al. A Pixel Count Approach for Lossy Image Compression
JP5610981B2 (ja) 画像暗号化装置及び画像復号装置及び画像暗号化方法及び画像復号方法及び画像暗号化プログラム及び画像復号プログラム
JP2018186419A (ja) トランスコーダ、トランスコード方法、及びトランスコードプログラム
JP6543548B2 (ja) 動画像符号化装置、動画像符号化方法、及びプログラム
Heindel et al. Analysis of prediction algorithms for residual compression in a lossy to lossless scalable video coding system based on HEVC

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160722

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170621

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170926

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171009

R150 Certificate of patent or registration of utility model

Ref document number: 6233121

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees