JP3835411B2 - 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム - Google Patents
画像圧縮装置、画像圧縮方法及び画像圧縮プログラム Download PDFInfo
- Publication number
- JP3835411B2 JP3835411B2 JP2003041021A JP2003041021A JP3835411B2 JP 3835411 B2 JP3835411 B2 JP 3835411B2 JP 2003041021 A JP2003041021 A JP 2003041021A JP 2003041021 A JP2003041021 A JP 2003041021A JP 3835411 B2 JP3835411 B2 JP 3835411B2
- Authority
- JP
- Japan
- Prior art keywords
- slope
- block
- parameter
- pixel
- image
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
【発明の属する技術分野】
本発明は、画像の圧縮を行う画像圧縮装置、画像圧縮方法及び画像圧縮プログラムに関する。
【0002】
【従来の技術】
画像データはデータ量が多く、圧縮せずに蓄積した場合、データ利用時の速度、データの蓄積効率のすべてにおいて性能が低下する。このため画像データを蓄積、利用する再には高効率の圧縮を行うことが必須となっている。このような画像圧縮を行う手法としてJPEG(Joint Photographic Expert Group /.ISO lEC 10918-1)が知られている。JPEGによる画像圧縮は、以下に示す手順で圧縮処理が行われる。
(1)画像を8×8画素のブロックに切り分ける。
(2)符号化にDCT変換(Discrete Cosine Transform:離散コサイン変換)を用いx方向、y方向各8要素づつ、合計64要素の周波数成分Qij、および、直流成分DCに変換する。
(3)量子化では本来実数であるQijに(乗算の結果が−128〜127の範囲におさまるように求めた)定数を乗算し、絶対値が小さくなるように切り捨てる等、一定の法則に基づいた正規化によって整数データに変換する。さらに、ジグザグにQij拾い上げてデータ列にする。(ただし、0を見つけたらそれ以降のデータを0とみなす。)
(4)Qijの系列DC成分についてエントロピー符号化の一種であるハフマン符号化を行い圧縮データとする。
(5)圧縮データやパラメータを所定の順番で多重化する。
【0003】
また、これ以外にもブロックを符号化する方法として特許文献1に記載されたBTC(Block Truncation Coding)法が知られている。この手法は、符号化対象となっているブロック内の各画素色がブロック平均値以上になるか、少ないかを示したパターン情報、さらに、ブロック平均値、そして、パターンによって変化する階調の大きさを示す(たとえば、ブロック中の画素値の分散値などの)値、の3種類のパラメータでブロックを表現する符号化方法である。
【0004】
ところで、JPEGのように離散コサイン変換でブロックのデータを符号化した場合には、ブロック内のエッジにそって歪(周波数成分を合成した場合特有のDCTノイズ)が発生することが良く知られている。一方、BTCはエッジを忠実に再現する符号化方法であり離散コサイン変換より高速に処理できる手法であるが、発色する色数を増やすと圧縮率が極端に落ちるため、高効率の圧縮を行う際には色数が限定されてしまい、グラデーションを再現する際に段々畑状になり色の境目が目立つことになる。さらに、離散コサイン変換、BTCの両者においても、ブロック内で圧縮しているため中心に多く発生している色合いがあれは、外縁部の微妙な色合いまで中心の色に近くなってしまい、ブロックとブロックの境目で色の違いが目立ってしまう。
【0005】
このような歪みが発生するという問題を解決するために、これらの手法についての改良方法などもいくつか提案されている。例えば、特許文献2に記載された離散コサイン変換とBTCを併用して画質を向上させる手法が提案されている。この手法は、以下に示す手順で処理される。
(1)画像をブロックに分ける。
(2)各ブロックごとにエッジ抽出を行う。
(3)エッジ部にはBTC符号化とBTC復号を行い、エッジを打ち消した画像を用意する。
(4)エッジを打ち消した画像に対し離散コサイン変換を行う。
この手法を用いれば、ブロック内に現れるグラディエーションに対してでもエッジに対してでも誤差が少ない符号化が可能となる。
【0006】
【特許文献1】
特開昭60−087596号公報
【特許文献2】
特開平3−192876号公報
【0007】
【発明が解決しようとする課題】
しかしながら、人間が画像を理解しようとする際には「色の境界エッジ」や「背景とライン組み合わせ」、そして「グラデーション」といった人間が特徴として認識し注目する部分の再現性に問題があると、画像を間違って認識してしまったり、誤差が目立って画質の低下を強く感じるなどの問題が発生する可能性が高くなるという問題がある。
【0008】
従来から用いられているJPEGなどの圧縮アルゴリズムを置き換えることを考えると、JPEGで符号化する際の計算量(これが増加すると通信回線で伝送できる画像の枚数が減少するなど問題が発生する)と同等程度に収まる計算量である必要があることが前提となるが、その前提を満たしながら画像を蓄積、もしくは、伝送して再生するために用いる画像圧縮として重要な上記3つの特徴のいずれもが良好な再現性を持った圧縮を行うことが難しいという問題もある。
【0009】
本発明は、このような事情に鑑みてなされたもので、計算処理時間を長くすることなく圧縮処理を実施することが可能で、画質を向上させることができる画像圧縮装置、画像圧縮方法及び画像圧縮プログラムを提供することを目的とする。
【0010】
【課題を解決するための手段】
請求項1に記載の発明は、画像全体をn×m画素(n,mは4以上の自然数)のブロックに切り分けるブロック分割手段と、前記ブロックの画素値から、該ブロックを近似する第1の斜面を特定するパラメータを求める第1斜面算出手段と、前記第1の斜面と前記ブロック内の各画素値との差分を算出することでn×m個の誤差量を算出する誤差量算出手段と、前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第2の斜面を特定するパラメータを求める第2斜面算出手段と、前記第1及び第2の斜面を特定するパラメータを可逆符号化する符号化手段とを備えたことを特徴とする。
【0011】
請求項2に記載の発明は、前記第1斜面算出手段は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする。
【0012】
請求項3に記載の発明は、画像データを非可逆圧縮する画像圧縮方法であって、画像全体をn×m画素(n,mは4以上の自然数)のブロックに切り分けるブロック分割過程と、前記ブロックの画素値から、該ブロックを近似する第1の斜面を特定するパラメータを求める第1斜面算出過程と、前記第1の斜面と前記ブロック内の各画素値との差分を算出することでn×m個の誤差量を算出する誤差量算出過程と、前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第2の斜面を特定するパラメータを求める第2斜面算出過程と、前記第1及び第2の斜面を特定するパラメータを可逆符号化する符号化過程とを有することを特徴とする。
【0013】
請求項4に記載の発明は、前記第1斜面算出過程は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする。
【0014】
請求項5に記載の発明は、画像データを非可逆圧縮する画像圧縮プログラムであって、画像全体をn×m画素(n,mは4以上の自然数)のブロックに切り分けるブロック分割処理と、前記ブロックの画素値から、該ブロックを近似する第1の斜面を特定するパラメータを求める第1斜面算出処理と、前記第1の斜面と前記ブロック内の各画素値との差分を算出することでn×m個の誤差量を算出する誤差量算出処理と、前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第2の斜面を特定するパラメータを求める第2斜面算出処理と、前記第1及び第2の斜面を特定するパラメータを可逆符号化する符号化処理とをコンピュータに行わせることを特徴とする。
【0015】
請求項6に記載の発明は、前記第1斜面算出処理は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする。
【0016】
【発明の実施の形態】
以下、本発明の一実施形態による画像圧縮装置を図面を参照して説明する。図1は同実施形態の構成を示すブロック図である。この図において、符号1は、圧縮対象の画像データを入力する画像入力部であり、入力した画像データは内部に保持される。画像入力部1内に保持される画像データは、標本化・量子化されたデータである。以下の説明においては、各画素を8ビットの輝度値(以下、「画素の輝度値」を「画素値」と称する)で表現する画像データであるものとする。符号2は、画像入力部1に保持されている画像ブロックに分割するブロック分割部である。符号3は、分割されたブロックの外縁部分の画素値に基づいて、斜面を算出する第1斜面算出部である。符号4は、第1斜面算出部3で得られた斜面とブロック内の各画素値との差から誤差量を算出する誤差量算出部である。符号5は、誤差量算出部4において算出された誤差量が予め決められたしきい値を超える場合に、このしきい値を超える画素のみによって新たな斜面を算出する第2斜面算出部である。符号6は、第1斜面算出部3で得られた斜面と、誤差量算出部4で得られた誤差量と、第2斜面算出部5で得られた斜面とを符号化する符号化部である。符号7は、各ブロックの符号化されたデータを多重化することにより圧縮画像データを出力する画像出力部である。
【0017】
次に、図2を参照して、図1に示す画像圧縮装置の動作を説明する。図2は、図1に示す画像圧縮装置の画像圧縮動作を示すフローチャートである。まず、画像入力部1は、画像データを入力し、内部に保持する(ステップS1)。画像入力部1内に保持される画像データは、ビデオ信号等を標本化し、量子化したデータなどであり、画素の位置(x,y)と輝度値(0〜255)で表現されている。
【0018】
次に、ブロック分割部2は、画像入力部1に画像データが保持されたことを受けて、入力画像をブロックに分割する(ステップS2)。ここでは、説明を簡単にするために、4×4画素のブロックに分割するものとして説明する。この分割処理によって、例えば32×32画素の入力画像であれば、64個のブロックに分割されることとなる。入力画像の分割結果は、ブロック分割部2内に保持される。なお、ブロックのX方向の画素数とY方向の画素数は同数である必要はなく、画像全体の画素数に基づいて決定すればよい。
【0019】
次に、第1斜面算出部3は、ブロック分割部2において分割されたブロックのうち1つのブロック内の画素値を読み出す。そして、読み出したブロックの外縁部分の画素値から斜面を算出する(ステップS3)。ここでいう斜面とは、水平面を含む平面である。また、外縁部分とは、図3に示すように、ブロックの上端から縦方向の画素数の25%、ブロックの左端から横方向の画素数の25%、ブロックの下端から縦方向の画素数の25%、ブロックの右端から横方向の画素数の25%とし、縦横方向ともに、外縁部分と外縁部分に囲まれる中央部分の画素数が同じになるように設定する。例えば、コマ撮りを行う警備用ビデオのように計算能力が大きく更新レートが低いアプリケーションに用いる場合は、この値(画素数の25%)を適用する。一方、計算能力が大きいとはいえない携帯端末や、高い更新レートの画像を圧縮する高速度の計測装置など、装置の性能に比して処理量が多いアプリケーションについては画像の精度に比べ計算量を減らす能力に重点をおき、ブロックの大きさに関係なく上下、左右の端から全て1画素ずつを外縁部分とする。
【0020】
ここで、第1斜面算出部3が斜面を算出する方法について説明する。例えば、4×4画素のブロック内の画素値を模式図で表現すると図4のようになる。そして、中心部分の4画素を除く外縁部分の画素値のみに注目し、これらの画素値から斜面を求めると、図5に示すような斜面を求められる。斜面は、斜面の中心値、X方向の傾き及びY方向の傾きで表す。X方向の傾きは図6(a)に示すように、ブロックの左端に沿った外縁部分(「+」が記入してある部分)の平均値から、ブロックの右端に沿った外縁部分(「−」が記入してある部分)の平均値を減算した値(小数点以下切り捨て)とする。また、Y方向の傾きも同様に図6(b)に示す「+」が記入してある外縁部分の平均値から、「−」が記入してある外縁部分の平均値を減算した値(小数点以下切り捨て)とする。また、傾斜の中心値は、外縁部分の画素値の平均値(小数点以下四捨五入)で求める。
【0021】
次に、具体例を挙げて、斜面の中心値、X方向の傾き及びY方向の傾きを求める算出方法を説明する。図7に分割したブロックの一例を示す。図7に示す数値は、各画素の画素値である。まず左端の外縁部分の平均値を求めると、(24+21+14+11)/4=17.5となる。次に、右端の外縁部分の平均値を求めると、(54+51+44+41)/4=47.5となる。この2つの平均値からX方向の傾きを求めると、17.5−47.5=−30となる。同様に、上端、下端の平均値を求めると、それぞれ(24+36+44+54)/4=39.5、(11+10+29+41)=22.75となり、Y方向の傾きは39.5−22.75=16(小数点以下切り捨て)となる。一方、傾斜面の中心値 (24+36+44+54+21+51+14+44+11+10+29+41)/12=32(小数点以下四捨五入)となる。
この結果、X方向傾き−30、Y方向傾き16、斜面の中心値32が斜面を示すパラメータとなる。
なお、斜面算出方法は、周知の平面算出方法で求めてもよく、例えば、最小二乗法等で求めた平面を定義するパラメータを用いるようにしてもよい。
【0022】
続いて、先に求めたパラメータに基づく斜面をブロック内において表現した場合の各画素の値を求める。各画素値を計算する計算式を図8に示す。図8において、mは、斜面の中心値(この例では32)、dxは、X方向の傾き/ブロックのX方向の画素数(この例では−7.5)、dyは、Y方向の傾き/ブロックのY方向の画素数(この例では4)である。図8に示す計算式によって各画素値を求めた結果(小数点以下四捨五入)を図9に示す。この処理によって、外縁部分から斜面が求められたこととなる。
【0023】
なお、斜面を定義する方法として、図10に示すように、最も傾斜が大きくなる方向(図10に示す太い矢印の水平回転角度)を探し出し、その方向にそって傾斜を計算し、傾斜面の中心(平均値)mと傾斜方向rと傾斜量dを求める方法を用いてもよい。
【0024】
次に、第1斜面算出部3が斜面を求めたのを受けて、誤差量算出部4は、各画素の誤差量を算出する(ステップS4)。ここでいう誤差量とはブロック内の実際の画素値と先に求めた斜面との差を意味する値のことであり、図7に示す実際の画素値から図9に示す斜面の画素値を減算した結果の値である。すなわち、ブロック中の実際の値をB(x,y)、斜面に基づく値をS(x,y)、誤差量をR(x,y)とすると、R(x,y)=B(x,y)−S(x,y)によって誤差量を算出する。ここで、x、yはブロック内の画素位置であり1〜4の整数となる。この計算式によって求めた各誤差量を図11に示す。この処理によってブロック内の各画素の斜面との誤差量が求められたこととなる。
【0025】
次に、誤差量算出部4が誤差量を求めたのを受けて、第2斜面算出部5は、求めた誤差量のそれぞれについて、各誤差量の絶対値が予め決められたしきい値を超える画素があるかを判定する(ステップS5)。ここで用いるしきい値は、誤差量の絶対値の平均値(誤差量の絶対値を全て加算し、ブロック内の画素数16で除算した値)と、画素値を量子化する場合のビット数で表現できる値の2.5%の値(8ビットの場合、255×0.025=6)とのいずれか大きい値とする。この2.5%という値は必要な画像の精度に応じて、詳細画質が必要な場合ほど小さくなるように1/2〜2倍の間で変化させて用いてもよい。この変化量は人間が変化のある画像中において見つけ出すことのできる最低画像変化量が1.25%であり、人間が無視できない画面中の構造の画素値変化量が5%であことから、2.5×1/2〜2.5×2までを許容範囲とし、その指数的中間値である2.5を標準的な値とした。
【0026】
図11に示す例では、誤差量の絶対値の平均値は、4.3となり、8ビットで表現できる値の2.5%は6であるので、しきい値は6となる。この判定の結果、しきい値を超える画素がない場合は、ステップS7へ進む。図11に示す誤差量に基づいて判定することにより、しきい値を超える画素を判定すると図12に示す画素が抽出される。しきい値を超える画素がある場合、第2斜面算出部5は、誤差量がしきい値を超える画素値のみに基づいて、新たな斜面を算出する(ステップS6)。斜面の算出方法は、周知の方法で算出すればよく、例えば、最小二乗法を用いて算出する。このとき、第2の斜面を算出するための画素値の数が2以下、もしくは直線にならんでしまった場合には最も離れている2画素でX座標の差とY座標の差を求め、その差が小さい方向には傾斜が無いと仮定して、距離の差が大きい座標軸へのみの傾きを持った平面としてパラメータを求める。さらには、属さない画素数が1の場合には傾き0の平面としてパラメータを求める。
【0027】
次に、第2斜面算出部5は、ここで求めた斜面をブロック内において表現した場合の各画素の値を求める。4つの画素値に基づいて求めた斜面をブロック内において表現した場合の各画素の値を図13に示す。この斜面を定義するためのパラメータは、先に説明した斜面と同様に、X方向傾き、Y方向傾き、斜面の中心値とする。
以上の処理動作によって、ブロックの外縁部分の画素値から算出した斜面(これを第1の斜面という)と誤差量がしきい値を超える画素値から算出した斜面(これを第2の斜面という)の2つの斜面(図9、図13に示す斜面)が得られたこととなる。
【0028】
なお、前述した説明においては、2つの斜面を用いて、ブロック内の画素値を近似するものとして説明したが、さらに第2の斜面との誤差量を求め、所定のしきい値を超える画素がある場合は、第3の斜面を算出するようにしてもよい。このとき、幾つの斜面を算出するかを決定するする必要がある場合は、誤差量が所定のしきい値を超える画素の個数が所定の個数以下になった場合に処理の続行を止めるようにしてもよい。これは、ブロック内の画素数が多くなった場合において有効である。
【0029】
次に、2つの斜面が求められたことを受けて、符号化部6は、2つの斜面の符号化することにより、ブロック内の画素値を符号化する(ステップS7)。符号化は、先に求めた2つの斜面をそれぞれ符号化してもよいが、より正確な近似データを求めるため、各画素がいずれの斜面に属するかを決定する。所属する斜面の判定は、|画素値−第1の斜面の値|≦|画素値−第2の斜面の値|であれば、この画素は第1の斜面に属するものとし、|画素値−第1の斜面の値|>|画素値−第2の斜面の値|であれば、この画素は第2の斜面に属するものとする。そして、第1の斜面に属する画素を「0」、第2の斜面に属する画素を「1」として、所属斜面マップを作成する。この所属斜面マップの一例を図14に示す。なお、近似に用いる斜面の数が3以上である場合は、所属斜面マップの値を斜面数に応じた多値とすればよい。
【0030】
次に、符号化部6は、先に求めた2つの斜面(第1の斜面と第2の斜面)のそれぞれを表現するパラメータ(この例では、X方向傾き、Y方向傾き、斜面の中心値)と斜面の数(この例では2)と所属斜面マップをエントロピー符号化することにより可逆圧縮を行う。エントロピー符号化にはハフマン符号化、算術符号化、レンジコーダ法などが使用可能である。また、データ毎にこれらの方法を使いわけても良い。
【0031】
次に、1つのブロックに対する符号化処理を全てのブロックに対して施す(ステップS8)ことにより、画像全体の符号化がされる。そして、画像出力部7は、各符号化データを多重化して出力する(ステップS9)。
なお、エントロピー符号化の前段階にデータを蓄積するバッファを設け一括でエントロピー符号化を行う方法やブロック符号化する方法、量子化によりデータが出力されるたびに逐次にエントロピー符号化を行いその結果を蓄積する方法等を用いてもよい。
【0032】
次に、前述した方法で符号化した画像データを復号化する動作を簡単に説明する。まず、エントロピー復号化によって、第一の傾斜面及び第2の斜面を表すパラメータ、斜面の数、所属斜面マップを復元する。そして、斜面のパラメータに基づいて斜面を復元すると、図9、図13に示す斜面を復元することができる。この2つの斜面のデータと所属斜面マップを参照して、ブロック内の画素値を復元すると、図15に示す画素値が復元できる。
【0033】
結果として得られた画像(図15に示す画素値)は、元画像(図7に示す画素値)と比べると誤差が含まれている。しかし、全体的な傾き具合(右上に向かって輝度が大きくなる)が保存され、大きな画像の一部として見た場合には良く似た画像として認識される。また、4×4画素といった小さい範囲でこの例に示されたほど変化するデータは実際の画像ではまれであり、このような場合でも視覚的特長が保存されていることが分かる。
【0034】
このように、グラデーションの部分について傾斜した画素値にいくらかの揺らぎがあるような原画像(図16(a))を画像圧縮した場合、図16(b)に示すようにグラデーションにフィットする傾斜面のパラメータを取り出し、画像の復元時にはその傾斜面として再現するようにしたため、グラデーションに含まれる斜面からの揺らぎ部分については人間が認識できない程度の変化となるため、グラデーション部分は感覚的に再現性が高い画像とすることができる。
【0035】
また、図17(a)のように色の境界によるエッジにおいても、図17(b)に示すように境界で区切られた両側の領域の色変化にそれぞれフィットする色の斜面のパラメータを求め、また、各画素ごとにどちらの領域に属するかを示す情報と併せて画像を表現するようにしたため、復元時には2つの色斜面を再現しておき、それぞれの画素は対応する所属情報が示す色の斜面として塗り分けることができる(図17(c))。色の境界でもグラデーションと同様に色境界で区切られたそれぞれの領域の中にいくらかの揺らぎがあるが、人間はエッジのような強い変化に注目するため小さな揺らぎは気づきにくいため、再現性が高い画像とすることができる。
【0036】
また、図18(a)のように背景に別の色のラインが重なっている画像では、背景にフィットする色(画素値)の斜面のパラメータとラインにフィットする色(画素値)の傾斜面のパラメータを求め、さらに、各画素毎にどちらの斜面に属するかを示す所属情報を得てブロックの画像を示すパラメータとしたため、復元時には2つの色斜面を再現しておき、それぞれの画素は対応する所属情報が示す色の斜面として塗り分けることができる(図18(c))。人間はラインと背景の境目やラインの形状などに注目し、ラインの中の色の小さな変化などには気づきにくいため、画像の背景とラインの重なり部分は感覚的に再現性が高い画像とすることができる。
【0037】
また、大きなサイズの画像を一度に処理する場合には以上の画像パターンが複合して存在する場合にも対処できる必要があるが、本発明では小さなサイズのブロック内で独立に処理をするため、各処理中に複数の認識パターンは混在しにくく、以上のパターンをブロック内で個々に再現する機能を有することで、画像中の構造を抽出するような複雑な計算なしで上記3つの特徴について人間の感覚的に高い再現性を得ることが可能となる。
【0038】
以上のように本発明では、人間が画像を認識する際に着目する3つの特徴について高い再現性を残しながら画像を圧縮する機能をもつことにより、見た目の画質低下、画像内容の判別しやすさの低下が少ない非可逆圧縮を行うことが可能となる。また、外縁部分を近似する斜面を基準にすることで、強い傾斜をもったブロックが連続してもブロックの継ぎ目で色が急激に変化することがないため、ブロック境界ノイズが発生しなくなり画質を向上させることが可能となる。
【0039】
なお、図1における各処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより画像圧縮処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0040】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0041】
【発明の効果】
以上説明したように、この発明によれば、人間が画像を認識する際に着目する特徴について高い再現性を残しながら画像を圧縮する機能をもつことにより、見た目の画質低下、画像内容の判別しやすさの低下が少ない非可逆圧縮を行うことが可能になるという効果が得られる。また、外縁部分を近似する斜面を基準にすることで、強い傾斜をもったブロックが連続してもブロックの継ぎ目で色が急激に変化することがないため、ブロック境界ノイズが発生しなくなり画質を向上させることが可能になるという効果も得られる。
【図面の簡単な説明】
【図1】 本発明の一実施形態の構成を示すブロック図である。
【図2】 図1に示す装置の動作を示すフローチャートである。
【図3】 ブロックの外縁部分を示す説明図である。
【図4】 画素値を模式図で示した説明図である。
【図5】 求める斜面を示す説明図である。
【図6】 傾きの算出方法を示す説明図である。
【図7】 ブロックデータの一例を示す説明図である。
【図8】 画素毎の計算式を示す説明図である。
【図9】 第1の斜面の各画素値を示す説明図である。
【図10】 斜面の他の定義方法を示す説明図である。
【図11】 誤差量を示す説明図である。
【図12】 第2の斜面を算出する対象の画素値を示す説明図である。
【図13】 第2の斜面の各画素値を示す説明図である。
【図14】 所属斜面マップの一例を示す説明図である。
【図15】 復元画像の画素値を示す説明図である。
【図16】 本発明による画像圧縮方法の効果を示す説明図である。
【図17】 本発明による画像圧縮方法の効果を示す説明図である。
【図18】 本発明による画像圧縮方法の効果を示す説明図である。
【符号の説明】
1・・・画像入力部
2・・・ブロック分割部
3・・・第1斜面算出部
4・・・誤差量算出部
5・・・第2斜面算出部
6・・・符号化部
7・・・画像出力部
Claims (6)
- 画像全体をn×m画素(n,mは4以上の自然数)のブロックに切り分けるブロック分割手段と、
前記ブロックの画素値から、該ブロックを近似する第1の斜面を特定するパラメータを求める第1斜面算出手段と、
前記第1の斜面と前記ブロック内の各画素値との差分を算出することでn×m個の誤差量を算出する誤差量算出手段と、
前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第2の斜面を特定するパラメータを求める第2斜面算出手段と、
前記ブロックの各画素が、前記第1の斜面または前記第2の斜面のいずれに属するかを定義した所属斜面マップを作成するマップ作成手段と、
前記第1、第2の斜面を特定するパラメータ及び前記所属斜面マップを可逆符号化する符号化手段と
を備えたことを特徴とする画像圧縮装置。 - 前記第1斜面算出手段は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする請求項1に記載の画像圧縮装置。
- 画像データを非可逆圧縮する画像圧縮方法であって、
画像全体をn×m画素(n,mは4以上の自然数)のブロックに切り分けるブロック分割過程と、
前記ブロックの画素値から、該ブロックを近似する第1の斜面を特定するパラメータを求める第1斜面算出過程と、
前記第1の斜面と前記ブロック内の各画素値との差分を算出することでn×m個の誤差量を算出する誤差量算出過程と、
前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第2の斜面を特定するパラメータを求める第2斜面算出過程と、
前記ブロックの各画素が、前記第1の斜面または前記第2の斜面のいずれに属するかを定義した所属斜面マップを作成するマップ作成過程と、
前記第1、第2の斜面を特定するパラメータ及び前記所属斜面マップを可逆符号化する符号化過程と
を有することを特徴とする画像圧縮方法。 - 前記第1斜面算出過程は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする請求項3に記載の画像圧縮方法。
- 画像データを非可逆圧縮する画像圧縮プログラムであって、
画像全体をn×m画素(n,mは4以上の自然数)のブロックに切り分けるブロック分割処理と、
前記ブロックの画素値から、該ブロックを近似する第1の斜面を特定するパラメータを求める第1斜面算出処理と、
前記第1の斜面と前記ブロック内の各画素値との差分を算出することでn×m個の誤差量を算出する誤差量算出処理と、
前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第2の斜面を特定するパラメータを求める第2斜面算出処理と、
前記ブロックの各画素が、前記第1の斜面または前記第2の斜面のいずれに属するかを定義した所属斜面マップを作成するマップ作成処理と、
前記第1、第2の斜面を特定するパラメータ及び前記所属斜面マップを可逆符号化する符号化処理と
をコンピュータに行わせることを特徴とする画像圧縮プログラム。 - 前記第1斜面算出処理は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする請求項5に記載の画像圧縮プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003041021A JP3835411B2 (ja) | 2003-02-19 | 2003-02-19 | 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム |
US10/545,873 US7536054B2 (en) | 2003-02-19 | 2004-02-17 | Image compression device, image compression method, image compression program, compression encoding method, compression encoding device, compression encoding program, decoding method, decoding device, and decoding program |
PCT/JP2004/001717 WO2004075556A1 (ja) | 2003-02-19 | 2004-02-17 | 画像圧縮装置、画像圧縮方法、画像圧縮プログラム、及び圧縮符号化方法、圧縮符号化装置、圧縮符号化プログラム、並びに復合化方法、復合化装置、復合化プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003041021A JP3835411B2 (ja) | 2003-02-19 | 2003-02-19 | 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004266366A JP2004266366A (ja) | 2004-09-24 |
JP3835411B2 true JP3835411B2 (ja) | 2006-10-18 |
Family
ID=33112063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003041021A Expired - Fee Related JP3835411B2 (ja) | 2003-02-19 | 2003-02-19 | 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3835411B2 (ja) |
-
2003
- 2003-02-19 JP JP2003041021A patent/JP3835411B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004266366A (ja) | 2004-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102741883B (zh) | 高动态范围图像生成和渲染 | |
JP2960386B2 (ja) | 信号適応フィルタリング方法及び信号適応フィルター | |
EP0584741B1 (en) | Image signal encoding device and method | |
EP1762101B1 (en) | Methods and apparatus for image encoding/decoding, and extended image compression/expansion | |
US6356588B1 (en) | Method for digital compression of color images | |
JP3356663B2 (ja) | 画像符号化装置、画像符号化方法および画像符号化プログラムを記録した記録媒体 | |
US7536054B2 (en) | Image compression device, image compression method, image compression program, compression encoding method, compression encoding device, compression encoding program, decoding method, decoding device, and decoding program | |
US6697529B2 (en) | Data compression method and recording medium with data compression program recorded therein | |
JP4045913B2 (ja) | 画像符号化装置、画像符号化方法、および画像処理装置 | |
JPH05505084A (ja) | シングル・センサ画像システム用のカラー内挿処理を伴う画像圧縮 | |
JP2000050268A (ja) | 画像符号化装置 | |
US7657108B2 (en) | Encoding of digital data combining a plurality of encoding modes | |
KR20070074590A (ko) | 2차원 이미지의 원근 변환 | |
US20010012397A1 (en) | Image processing apparatus and method | |
CN110996101A (zh) | 一种视频编码的方法和装置 | |
US7106908B2 (en) | Method and apparatus for selecting a format in which to re-encode a quantized image | |
US6917704B2 (en) | Image processing method, image processing apparatus and image processing system | |
JP3835411B2 (ja) | 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム | |
US7657110B2 (en) | Image compression using a color visual model | |
JP3835416B2 (ja) | 画像圧縮装置、画像圧縮方法及び画像圧縮プログラム | |
JPH06164939A (ja) | 画像信号の符号化装置 | |
JP2004135254A (ja) | 画像処理装置 | |
JP2004343474A (ja) | 暗号情報埋め込み装置及び暗号情報再生装置 | |
JP2619758B2 (ja) | 画像データ圧縮方法 | |
KR100611301B1 (ko) | 3차원 이미지 데이터를 압축하는 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040723 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060411 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060608 |
|
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: 20060704 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060717 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 3835411 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090804 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100804 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100804 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110804 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110804 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120804 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120804 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130804 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |