JP2015173368A - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP2015173368A
JP2015173368A JP2014048408A JP2014048408A JP2015173368A JP 2015173368 A JP2015173368 A JP 2015173368A JP 2014048408 A JP2014048408 A JP 2014048408A JP 2014048408 A JP2014048408 A JP 2014048408A JP 2015173368 A JP2015173368 A JP 2015173368A
Authority
JP
Japan
Prior art keywords
data
line
bit data
compression
quantization
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.)
Granted
Application number
JP2014048408A
Other languages
English (en)
Other versions
JP6303636B2 (ja
Inventor
鈴木 直樹
Naoki Suzuki
直樹 鈴木
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2014048408A priority Critical patent/JP6303636B2/ja
Publication of JP2015173368A publication Critical patent/JP2015173368A/ja
Application granted granted Critical
Publication of JP6303636B2 publication Critical patent/JP6303636B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】画像圧縮において、圧縮開始の第1ラインの圧縮における誤差の発生を抑制する。
【解決手段】画像処理装置は、画像の先頭にある第1ラインに隣接してダミーラインを生成するとともに、前記ダミーラインを含む前記画像のデータ圧縮を行う圧縮部を備える。前記圧縮部は、前記第1ラインの上の各画素の複数のビットを、上位ビットデータと下位ビットデータの2つのビットデータに分割し、前記上位ビットデータまたは前記下位ビットデータのうちの一方のビットデータを含むデータを前記ダミーラインの上のダミー画素の圧縮データとして生成し、前記上位ビットデータまたは前記下位ビットデータのうちの他方のビットデータを含むデータを前記第1ラインの上の画素の圧縮データとして作成する。
【選択図】図10

Description

本発明は、画像処理装置に関し、特に画像の圧縮、解凍に関する。
対象画素の各成分値から前の対象画素に基づく予測値の各成分値の各差分値をベクトル量子化して符合化する差分ベクトル量子化部と対象画素の各成分値をベクトル量子化して符号化する絶対値ベクトル量子化部と各差分値を各々の比較範囲と比較し符号選択を判定する判定部と、判定部からの出力に基づいて差分ベクトル量子化部からの出力と絶対値ベクトル量子化部からの出力とのいずれか一方を選択する符号セレクタとを有する画像を圧縮、解凍する画像処理装置が知られている(例えば特許文献1)。
特開2009−239779号公報
しかしながら、特許文献1の画像処理装置では、圧縮開始の先頭ラインは、参照画素が無いため、差分値を取ることができず、誤差が生じるおそれがあるという問題があった。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
(1)本発明の一形態によれば、画像処理装置が提供される。この画像処理装置は、画像の先頭にある第1ラインに隣接してダミーラインを生成するとともに、前記ダミーラインを含む前記画像のデータ圧縮を行う圧縮部を備え、前記圧縮部は、前記第1ラインの上の各画素の複数のビットを、上位ビットデータと下位ビットデータの2つのビットデータに分割し、前記上位ビットデータまたは前記下位ビットデータのうちの一方のビットデータを含むデータを前記ダミーラインの上のダミー画素の圧縮データとして生成し、前記上位ビットデータまたは前記下位ビットデータのうちの他方のビットデータを含むデータを前記第1ラインの上の画素の圧縮データとして作成する。この形態の画像処理装置によれば、第1ラインの上位ビットデータ又は下位ビットデータの一方をダミーラインの上のダミー画素の圧縮データとして生成し、他方を前記第1ラインの上の画素の圧縮データとして作成するので、誤差の発生を抑制することが可能となる。
(2)上記形態の画像処理装置において、前記各画素の圧縮データは、固定長であってもよい。この形態の画像処理装置によれば、各画素の圧縮データが固定長であるので、可変長に比べ、圧縮、解凍のアルゴリズムが簡単となる。
(3)上記形態の画像処理装置において、前記圧縮部は、前記画像の前記ダミーライン及び前記第1ラインの画素については、所定の下位ビットを削除する第1の量子化によるデータ圧縮を実行してもよい。この形態の画像処理装置によれば、他のラインのデータを参照しなくても良い。
(4)上記形態の画像処理装置において、前記圧縮部は、前記画像の前記第1ラインの直後の第2ライン以降の各ラインの画素については、所定の下位ビットを削除する第1の量子化、又は、圧縮対象となるラインと他のラインとの差分を求める第2の量子化によるデータ圧縮を実行してもよい。この形態の画像処理装置によれば、第2ライン以降については、単純量子化又はベクトル量子化によってデータ圧縮するので、圧縮後の画質劣化を抑制できる。
(5)上記形態の画像処理装置において、前記第2ライン以降の各ラインの画素について、前記圧縮部は、前記第2の量子化により圧縮できる場合には、前記第2の量子化によるデータ圧縮を行い、前記第2の量子化により圧縮できない場合には、前記第1の量子化によるデータ圧縮してもよい。この形態の画像処理装置によれば、圧縮部は、ベクトル量子化により圧縮できる場合には、ベクトル量子化によるデータ圧縮を行うので、圧縮後の画質劣化を抑制できる。
(6)上記形態の画像処理装置において、さらに、圧縮されたデータを解凍する解凍部を備え、前記解凍部は、解凍時に、前記ダミーラインの上のダミー画素の圧縮データと、前記第1ラインの上の画素の圧縮データと、を用いて前記第1ラインの上の各画素の複数のビットを復元し、前記ダミーラインを削除してもよい。この形態の画像処理装置によれば、圧縮前の画像を容易に復元できる。
(7)本発明の一形態によれば、画像処理方法が提供される。この画像処理方法は、画像の先頭にある第1ラインに隣接してダミーラインを生成するとともに、前記ダミーラインを含む前記画像のデータ圧縮を行う圧縮工程を備え、前記圧縮工程は、前記第1ラインの上の各画素の複数のビットを、上位ビットデータと下位ビットデータの2つのビットデータに分割する工程と、前記上位ビットデータまたは前記下位ビットデータのうちの一方のビットデータを含むデータを前記ダミーラインの上のダミー画素の圧縮データとして生成する工程と、前記上位ビットデータまたは前記下位ビットデータのうちの他方のビットデータを含むデータを前記第1ラインの上の画素の圧縮データとして作成する工程と、を備える。この形態の画像処理方法によれば、第1ラインの上位ビットデータ又は下位ビットデータの一方をダミーラインの上のダミー画素の圧縮データとして生成し、他方を前記第1ラインの上の画素の圧縮データとして作成するので、誤差の発生を抑制することが可能となる。
本発明は、種々の形態で実現することが可能であり、例えば、画像処理装置の他、画像処理方法、画像圧縮装置、画像圧縮方法等、様々な形態で実現することができる。
本実施形態の画像処理装置の構成を示す説明図である。 ダミーライン追加・処理部の動作を示す説明図である。 圧縮処理部の構成を示す説明図である。 スカラー量子化の一例を示す説明図である。 差分の算出からベクトル量子化までを示す説明図である。 スカラー逆量子化予測部の動作を示す説明図である。 ベクトル逆量子化予測部の動作を示す説明図である。 解凍処理部の構成を示す説明図である。 データ圧縮とスカラー量子化とベクトル量子化の誤差との関係を示す説明図である。 10ビットを6ビットに圧縮する場合の差分値と差分値の関係を示す説明図である。 10ビットを5ビットに圧縮する場合の差分値と差分値の関係を示す説明図である。 本実施形態における圧縮フローチャートを示す説明図である。 本実施形態における解凍フローチャートを示す説明図である
図1は、本実施形態の画像処理装置10の構成を示す説明図である。画像処理装置10は、入力部100と、圧縮・解凍切り替え部110と、圧縮率設定部120と、圧縮部20と、解凍部30と、出力部150と、を備える。圧縮部20は、ダミーライン追加・処理部130と、圧縮処理部200とを備える。解凍部30は、ダミーライン削除・処理部140と、解凍処理部300とを備える。入力部100には、画像データあるいは、画像が圧縮された圧縮データが入力される。圧縮・解凍切り替え部110は、入力されたデータ(画像データ、あるいは圧縮データ)を圧縮するか、解凍するか、を切り替える。圧縮・解凍切り替え部110は、データのヘッダー部のヘッダー情報から、入力されたデータが画像データであるか、あるいは圧縮データであるか、を判別し、画像データであれば圧縮し、圧縮データであれば解凍する。なお、圧縮・解凍切り替えスイッチを備え、手動で圧縮と解凍が切り替えられても良い。
圧縮率設定部120は、画像データを圧縮するときの圧縮率を設定する。圧縮率を一定にするならば、圧縮率設定部120は無くても良い。ダミーライン追加・処理部130は、画像データの1行目のデータの前にダミーライン(第0ライン)を追加するとともに、ダミーラインの上と第1ラインの上の画素のビットデータをそのまま圧縮データとする。圧縮処理部200は、画像データを圧縮し、圧縮データを生成する。解凍処理部300は、圧縮データを解凍し、画像データを復元する。ダミーライン削除・処理部140は、ダミーラインと第1ラインの圧縮データを用いて第1ラインを復元し、ダミーラインを削除する。出力部150は、圧縮により生成された圧縮データあるいは解凍により復元された画像データを出力する。
図2は、ダミーライン追加・処理部130の動作を示す説明図である。元の画像データは、図2(A)に示すように、nラインのデータを備える。本実施形態では、各ラインの上には、各画素の複数のビット(本実施形態では10ビット)のビットデータを有している。なお、各行のビット数が多い場合には、10ビットずつの列に区切ればよい。ダミーライン追加・処理部130は、図2(B)に示すように、第1ラインに隣接するダミーラインを生成し、第1ラインのビットデータをダミーラインにコピーする。この段階では、第0ラインのビットデータと第1ラインのビットデータは同一である。
次にダミーライン追加・処理部130は、図2(C)に示すように、ダミーラインの上のビットデータのうちの上位から5ビットのビットデータと、第1ラインの上のビットデータのうちの下位から5ビットのビットデータを削除する。ダミーライン追加・処理部130は、図2(D)に示すように、ダミーラインのビットデータを左方向に5ビットシフトする。結果として、第1ラインの下位の5ビットのビットデータがダミーラインの上位5ビットのビットデータとして移動される。ダミーライン追加・処理部130は、ダミーラインの5ビット、第1ラインの5ビットのビットデータをそれぞれダミーライン、第1ラインの圧縮データとして用いる。なお、ダミーライン、第1ラインの圧縮データは、後述するS/Vflagを有さなくても良い。ここで、S/Vflagは、圧縮プロセスがスカラー量子化により行われたか、ベクトル量子化により行われたかを区別するためのフラグである。
なお、本実施形態では、第1ラインの下位の5ビットのビットデータをダミーラインの上位5ビットのビットデータとして移動させているが、第1ラインの上位の5ビットのビットデータをダミーラインの上位5ビットのビットデータとして移動させ、第1ラインの下位の5ビットのビットデータを左に5ビット移動させても良い。また、本実施形態では、ダミーラインのビットデータを左側(上位側)に移動させたが、ダミーライン及び第1ラインのビットデータを右側(下位側)に移動させても良い。また、本実施形態では、10ビットのビットデータを5ビットずつのビットデータに分けたが、6ビットのビットデータと4ビットのビットデータ、7ビットのビットデータと3ビットのビットデータのように不均一に分けても良い。但し、ビット数の大きい方は、圧縮後の圧縮データの1行のビット数よりも小さいことが好ましい。
図2を用いて、ダミーライン削除・処理部140の動作を説明する。圧縮データが復元されて生成されるデータは、図2(D)に示すデータである。ダミーライン削除・処理部140は、図2(C)に示すように、ダミーラインのビットデータを右方向(下位側)に5ビットシフトする。次に、ダミーライン削除・処理部140は、ダミーラインのビットデータを第1ラインのビットデータに加算する。これで、第1ラインのビットデータは、圧縮前の元の第1ラインのビットデータに復元される。ダミーライン削除・処理部140は、ダミーラインを削除する。
図3は、圧縮処理部200の構成を示す説明図である。本実施形態では、圧縮処理部200は、第2ライン以降の各ラインのビットデータの圧縮に用いられる。圧縮処理部200は、スカラー量子化部210と、差分算出部220と、ベクトル量子化部230と、スカラー・ベクトル切り替え判定部240と、圧縮値選択部250と、スカラー逆量子化予測部260と、ベクトル逆量子化予測部270と、解凍結果選択遅延出力部280と、を備える。スカラー量子化部210は、圧縮率により定められる下位ビットを削除してデータビット数を削減してスカラー量子化データを生成する。スカラー逆量子化予測部260は、スカラー量子化データに所定の下位ビットのビットデータを加えてデータを復元する。
図4は、スカラー量子化の一例を示す説明図である。ここでは、10ビットのビットデータDn[s:0]を8ビットのビットデータDn[s:t+1]に圧縮(圧縮率80%)する場合について説明する。ここで、Dn[i]は、第nラインの下位からi番目のビットデータを意味する。また、n[s:0]は、下位から0番目のビットデータからs番目のビットデータまでの複数のビットデータを意味する。同様にDn[s:t+1]は、下位から(t+1)番目のビットデータからs番目のビットデータまでの複数のビットデータを意味する。また、「s」は、(入力ビット数−1)であり、図4の例では入力ビット数は10ビットであり、「s」は9である。「t」は、削減したいビット数であり、圧縮率から決められる。図4の例では圧縮率は80%であり、10ビットを8ビットに圧縮するため、「t」の値は2である。
図4において、圧縮前のビットデータDn[s:0]は、D[0]〜D[9]までの10ビットのビットデータである。ここで、D[0]〜D[9]の値は、0か、1のいずれかである。スカラー量子化部210は、下位3ビットのビットデータD[0]〜D[2]を削除して7ビットのビットデータDn[s:t+1]を生成する。ここで下位3ビットの3は、削減したいビット数tに1を加えた値である。1を加える理由は、後のプロセスで、圧縮プロセスが、スカラー量子化なのか、後述するベクトル量子化なのかを区別するためのフラグS/Vflagが追加されて、圧縮データの大きさが1ビット大きくなる。そのため、スカラー量子化部210は、その1ビット分だけ多くデータを削除するために、削減したいビット数tに1を加えた(t+1)ビットのビットデータを削除する。
次に、スカラー量子化部210は、残りの7ビットのビットデータDn[s:t+1]を右に(下位側に)3ビットシフトする。これにより7ビットのスカラー量子化データが生成される。スカラー量子化は、単純に下位ビットのビットデータを削除するので、単純量子化とも呼ぶ。なお、請求項では、本実施形態のスカラー量子化を、第1の量子化と呼んでいる。
差分算出部220は、圧縮するラインのビットデータDn[s:0]と、その前のラインのビットデータDn−1[s:0]との差分データSn[s+1:0]を生成する。ここで、その前のラインのビットデータDn−1[s:0]は、1ライン前のスカラー逆量子化予測値またはベクトル逆量子化予測値のいずれかである。スカラー逆量子化予測値、ベクトル逆量子化予測値については、後述する。差分データSn[s+1:0]は、圧縮するラインのビットデータDn[s:0]と、その前のラインのビットデータDn−1[s:0]とで、どちらが大きいかにより値が正になったり負になったりするので、符号ビット(Sign bit)が付加される。そのため、元のビットデータDn[s:0]よりも1ビットだけ大きくなる。
ベクトル量子化部230は、差分データSn[s+1:0]からSign bitを除いた上位(t+2)ビットを削除してベクトル量子化データVn[s−t−1:0]を算出する。tビットではなく(t+2)ビットを削除する理由は、ベクトル量子化データでは、Sign bit1ビットを含んでいること及び後のプロセスで、圧縮プロセスが、スカラー量子化なのか、後述するベクトル量子化なのかを区別するためのフラグS/Vflagが追加されて、圧縮データの大きさが1ビット大きくなる。そのため、削減したいビット数よりもさらにその2ビット分だけデータを削除するためである。
図5は、差分の算出からベクトル量子化までを示す説明図である。図4で説明したスカラー量子化と同様に10ビットのデータを8ビットに圧縮する場合について説明する。図3の差分算出部220は、圧縮するラインのビットデータDn[0]〜Dn[9]と、その前のラインのビットデータDn−1[0]〜Dn−1[9]との差分データSn[0]〜Sn[10]の11ビットのビットデータを生成する。最上位のSn[10]は、Sign bitである。次に、ベクトル量子化部230は、差分データのSign bitを除いた上位4ビットのビットデータS[6]〜S[9]を削除して、ベクトル量子化データVn[s−t−1:0](Vn[0]〜Vn[5]、Vn[6])を生成する。Vn[6]は、Sign bitであり、Sn[10]の値と同じ値である。ベクトル量子化は、差分値を用いているので、差分量子化とも呼ぶ。なお、請求項では、本実施形態のベクトル量子化を、第2の量子化と呼んでいる。
なお、スカラー量子化データの大きさ(ビット長)と、ベクトル量子化データの大きさ(ビット長)、すなわち圧縮データは、固定長であることが好ましい。また、この固定長は、ダミーライン、第1ラインの圧縮データの大きさと同じであることが好ましい。固定長とすると、可変長と比較して圧縮、解凍のアルゴリズムが簡単となる。また、可変長の大きさを示すパラメーターが不要となる。
スカラー・ベクトル切り替え判定部240は、圧縮を行うときに、スカラー量子化を行うか、ベクトル量子化を行うかを判定する。スカラー量子化では、下位ビットを削除する。そのため、例えば、図4に示したように下位3ビットを削除する場合、復元時に−3〜4の誤差が生じる。一方、ベクトル量子化では、図5に示したように上位4ビットを削除する。したがって、差分値Sn[11:0]が−64〜+63の場合、ベクトル量子化で表現出来る数(Vn[6:0])の範囲内であり、真値を正確に復元できる。しかし、差分値Sn[11:0]が、−64より小さい場合、あるいは、+63よりも大きい場合には、誤差が大きくなる。したがって、スカラー・ベクトル切り替え判定部240は、差分Sn[11:0]の値が、圧縮率により定まる所定の範囲内に収まる場合には、ベクトル量子化を選択し、収まらない場合には、スカラー量子化を選択する。なお、圧縮率が大きくなると、ベクトル量子化で使用できるデータのビット数が少なくなるので、圧縮率が大きい場合には、さらに、第3の量子化を行うことが好ましい。この第3の量子化については、後述する。圧縮値選択部250は、スカラー・ベクトル切り替え判定部240の判定に基づいて、圧縮値を選択する。そして、最上位ビットに、S/Vflagを付加する。
図3のスカラー逆量子化予測部260は、圧縮前のデータを用いて、スカラー圧縮されたデータが解凍されて生成されるデータを予測する。図6は、スカラー逆量子化予測部260の動作を示す説明図である。ここではtが2であるとして説明する。まず、スカラー逆量子化予測部260は、D[0]〜D[9]までの10ビットのビットデータ(Dn[s:0])から下位3ビットのビットデータD[0]〜D[2]を0にして、Dn[s:t+1]*2^(t+1)を生成する。ここで、記号^はべき乗を意味する。さらに、スカラー逆量子化予測部260は2^(t)を加えてスカラー逆量子化予測値(Dn[s:t+1]*2^(t+1)+2^(t))を算出する。tの値が2の時は、2^(t)の値は2^2=2=4=(100)である。また、真値Dn[s:0]と、スカラー逆量子化予測値(Dn[s:t+1]*2^(t+1)+2^(t))との誤差は、真値の下位3ビットのビットデータが[000]のとき+4であり、真値の下位3ビットのビットデータが[111]のとき−3である。すなわち、誤差の範囲は−3〜+4の間である。
ベクトル逆量子化予測部270は、差分圧縮されたデータが解凍されて生成されるデータを予測する。図7は、ベクトル逆量子化予測部270の動作を示す説明図である。ベクトル逆量子化予測部270は、1ライン前の解凍結果であるデータDn−1’[s:0]に、解凍対象ラインのベクトル量子化データVn[s−t−1:0]を加算して、解凍対象ラインの解凍後のベクトル逆量子化予測値を算出する。ベクトル逆量子化予測部270は、ベクトル量子化データVn[s−t−1:0]として、ベクトル量子化部230の出力を用いることができる。1ライン前の解凍結果であるデータDn−1’[s:0]は、次に説明する解凍結果選択遅延出力部280の1ライン前の出力である。
解凍結果選択遅延出力部280は、スカラー・ベクトル切り替え判定部240の判定に基づき、スカラー逆量子化予測部260の出力であるスカラー逆量子化予測値を解凍対象ラインの解凍データとして用いるか、あるいは、ベクトル逆量子化予測部270の出力であるベクトル逆量子化予測値を解凍対象ラインの解凍データとして用いるかを判断する。なお、前ラインが存在しない場合には、解凍結果選択遅延出力部280は、スカラー逆量子化予測部260の出力であるスカラー逆量子化予測値を解凍対象ラインの解凍データとして用いる。
図8は、解凍処理部300の構成を示す説明図である。解凍処理部300は、スカラー・ベクトル切り替え判定部310と、スカラー逆量子化部320と、ベクトル逆量子化部330と、解凍結果出力部340と、1ライン遅延出力部350と、を備える。スカラー・ベクトル切り替え判定部310は、解凍対象ラインに対して、スカラー逆量子化を行うか、ベクトル逆量子化を行うかを判定する。圧縮データの各ラインの最上位ビットは、S/Vflagである。スカラー・ベクトル切り替え判定部310は、この最上位ビットのS/Vflagの値から、解凍対象ラインに対して、スカラー逆量子化を行うか、ベクトル逆量子化を行うかを判定する。
スカラー逆量子化部320は、圧縮されたデータであるビットデータCn[s−t:0]の最上位ビット(S/Vflag)を削除してビットデータCn[s−t−1:0]を生成し、さらに左方に所定のビット数t+1だけシフトして2^(t)を加えて、解凍後のデータを復元する。したがって、上述した図4のスカラー逆量子化予測部260とほぼ同一の動作である。スカラー逆量子化予測部260では、非圧縮のビットデータDn[s:0]が入力され、下位t+1ビットが削除されてDn[s:t]が生成されるのに対し、スカラー逆量子化部320には、圧縮されたデータであるビットデータCn[s−t:0]が入力される点が相違するだけである。なお、ビットデータDn[s:t]と、ビットデータCn[s−t:0]とは同じ値となる。したがって、スカラー逆量子化部320は、下位(t+1)ビットを削除する構成を除けば、スカラー逆量子化予測部260と同一の構成を採用できる。また、圧縮と解凍は同時には行われないので、スカラー逆量子化部320とスカラー逆量子化予測部260とで、回路の一部共通化が可能である。
ベクトル逆量子化部330は、圧縮されたデータであるビットデータCn[s−t:0]の最上位ビット(S/Vflag)を削除してビットデータCn[s−t−1:0]を生成し、ビットデータCn[s−t−1:0]と、前ラインの解凍データのビットデータDn−1’[s:0]とを加算して、解凍後のデータを復元する。したがって、上述した図4のベクトル逆量子化予測部270とほぼ同一の動作であり、ベクトル逆量子化予測部270と同様の構成を採用できる。また、圧縮と解凍は同時には行われないので、ベクトル逆量子化部330とベクトル逆量子化予測部270とで、回路の共通化が可能である。
解凍結果出力部340は、スカラー・ベクトル切り替え判定部240の判定に基づき、スカラー逆量子化部320の出力を解凍対象ラインの解凍データとして用いるか、あるいは、ベクトル逆量子化部330の出力を解凍対象ラインの解凍データとして用いるかを判断する。1ライン遅延出力部350は、解凍ラインの前のラインの解凍結果を出力する。したがって、解凍結果出力部340と1ライン遅延出力部350は、合わせて、上述した図3の解凍結果選択遅延出力部280と同一の動作を実行する。解凍結果出力部340と1ライン遅延出力部350は、解凍結果選択遅延出力部280と同一の構成を採用できる。また、圧縮と解凍は同時には行われないので、解凍結果出力部340、1ライン遅延出力部350と、解凍結果選択遅延出力部280とで、回路の共通化が可能である。
図9は、データ圧縮と、スカラー量子化とベクトル量子化の誤差との関係を示す説明図である。ここでは、10ビットのデータを5〜9ビットに圧縮する場合を示している。例えば、10ビットから9ビットに圧縮する場合、スカラー量子化の場合、データの大きさは2ビット削減されるため、誤差は−1〜+2である。ベクトル量子化の場合、前ラインのデータとの差分が、−128〜+127の場合、誤差が発生しない。したがって、前ラインのデータとの差分が、−128〜+127の場合、ベクトル量子化を実行することが好ましく、前ラインのデータとの差分が−128より小さい場合、あるいは、+127よりも大きい場合、スカラー量子化を実行することが好ましい。表から分かるように、圧縮ビット数(削減されるビット数)が大きくなるにしたがって、スカラー量子化の誤差が大きくなり、ベクトル量子化において誤差の発生しない数(「ベクトル表現可能数」とも呼ぶ)の範囲が狭くなる。
図9において、10ビットを6ビットに圧縮する場合、ベクトル表現可能数として、誤差の無い範囲−16〜+15ではなく、−31〜+31の値が記載され、10ビットを5ビットに圧縮する場合、ベクトル表現可能数として、誤差の無い範囲−8〜+7ではなく、−47〜+47の値が記載されている。これは、1つの差分値について、複数の差分値を対応づける第3の量子化による。なお、第3の量子化は、差分値を用いることから、第2の量子化の変形であり、第2の量子化と呼ぶ場合には、第3の量子化も含まれてもよい。
図10は、10ビットを6ビットに圧縮する場合の差分値と、差分値の関係を示す説明図である。差分値が−7〜7までの範囲では、差分値とベクトルコードが一致する。ベクトルコードとは、圧縮データに含まれるベクトル量子化データの値である。すなわち、第3の量子化が行われる場合、圧縮データには、差分値の下位ビットがそのまま格納されるのではなく、差分値に対応するベクトルコードが格納される。差分値とベクトルコードが一致する場合、解凍値は差分値と同じ値であり、誤差は生じない。解凍値は、ベクトルコードに関連づけられている値であり、ベクトルコードが決まれば一意に定まる。なお、差分値とベクトルコードと解凍値は、予め作成されてメモリーに格納されている。
差分値が、−8〜−15まで、あるいは、8〜15までの間は、2個の差分値について、1つのベクトルコードが対応づけられる。例えば、差分値が、−8あるいは−9のときは、ベクトルコードは、−8である。ベクトルコードが−8のときの解凍値は−8であり、差分値が−8の時は、解凍値−8と同じ値であり誤差は生じないが、差分値が−9の時は、解凍値−8と、−1の誤差が生じる。
差分値が、−16〜−31まで、あるいは、16〜31までの間は、4個の差分値について、1つのベクトルコードが対応づけられる。例えば、差分値が、−28〜−31のときは、ベクトルコードは、−15である。ベクトルコードが−15のときの解凍値は−30であり、差分値が−30の時は、差分値と解凍値−30とは、同じ値であり誤差は生じないが、差分値が−28の時は、解凍値−30と、+2の誤差が生じる。ただし、これらの誤差は、スカラー量子化により生じ得る誤差−15〜+16よりも小さい。
図11は、10ビットを5ビットに圧縮する場合の差分値と、差分値の関係を示す説明図である。差分値が−3〜3までの範囲では、差分値とベクトルコードが一致する。差分値が、−4〜−7まで、あるいは、4〜7までの間は、4個の差分値について、1つのベクトルコードが対応づけられる。このときの誤差は、同様にして求めると、それぞれ−1〜+2あるいは、−2〜+1である。差分値が、−8〜−15まで、あるいは、8〜15までの間は、8個の差分値について、1つのベクトルコードが対応づけられる。このときの誤差を同様にして求めると、それぞれ−3〜+4あるいは、−4〜+3である。差分値が、−16〜−47まで、あるいは、16〜47までの間は、16個の差分値について、1つのベクトルコードが対応づけられる。このときの誤差を同様にして求めると、それぞれ−7〜+8あるいは、−8〜+7である。同様に、これらの誤差は、スカラー量子化により生じ得る誤差−31〜+32よりも小さい。
このように、圧縮率が大きい場合、ベクトル表現可能な数の範囲が狭くなり、スカラー量子化を行わなければならなかったが、本実施形態では、複数の差分値に対して1つのベクトルコードを割り当てることにより、ベクトル量子化を実行でき、誤差を低減できる。
図12は、本実施形態における圧縮フローチャートを示す説明図である。ステップS100では、ダミーライン追加・処理部130は、ダミーラインを生成する。ステップS110では、ダミーライン追加・処理部130は、ダミーラインと第1ラインの圧縮データを生成する圧縮工程を実行する。ダミーラインと第1ラインは、いずれも5ビットのビットデータであるので、ダミーライン追加・処理部130は、この5ビットのビットデータをそのまま圧縮データとして使用できる。また、ダミーライン、第1ラインについては、S/Vflagを付加しなくても良い。すなわち、S/Vflagを付加する1ビット分をデータから削除しなくても良いので誤差を抑制できる。
ステップS120では、第1ラインの直後の第2ライン以降のデータを圧縮する。第2ライン以降については、圧縮プロセスをスカラー圧縮とするか、差分圧縮とするかは、前ラインのデータとの差分値に依存するので、スカラー量子化データと、ベクトル量子化データの両方を算出してもよい。ステップS130では、スカラー・ベクトル切り替え判定部240は、差分値から、圧縮プロセスをスカラー圧縮とするか、差分圧縮とするかを判定する。なお、第2ラインのベクトル量子化及ぶ圧縮プロセス判断においては、第2ラインのデータと、ダミーラインを形成する前の第1ラインのデータと、の差分を用いても良い。第1ラインのデータを5ビットとするよりも差分値が小さくなる可能性が高く、所定の範囲内であれば、誤差が存在しないベクトル量子化を選択できる。圧縮値選択部250は、スカラー・ベクトル切り替え判定部240の判定に基づいて、スカラー量子化データと、ベクトル量子化データのいずれかを選択する。ステップS140では、最後のライン(第nライン)か否かが判断される。最後のラインの場合には、圧縮処理が終了される。処理がステップS120に移行する。
図13は、本実施形態における解凍フローチャートを示す説明図である。ステップS210では、ダミーラインと第1ラインから第1ラインのデータが復元される。ダミーライン削除・処理部140は、ダミーラインのビットデータを右方向(下位側)に5ビットシフトする。次に、ダミーライン削除・処理部140は、ダミーラインのビットデータを第1ラインのビットデータに加算する。これで、第1ラインのビットデータは、圧縮前の元の第1ラインのビットデータに復元される。ステップS220では、ダミーライン削除・処理部140は、ダミーラインを削除する。ステップS230では、解凍処理部300は、第2ライン以降の各ラインの圧縮データを解凍する。ステップS240では、解凍処理部300は、最後のラインまで解凍処理したかを判断し、最後のラインまで解凍処理していれば処理を終了し、最後のラインまで解凍処理していなければ、処理をステップS230に移行する。
以上、本実施形態によれば、第1ラインの上の各画素の複数のビット(10ビット)を、上位ビットデータと下位ビットデータの2つのビットデータに分割し、上位ビットデータまたは下位ビットデータのうちの一方のビットデータをそのまま含むデータをダミーラインの上のダミー画素の圧縮データとして生成し、他方のビットデータをそのまま含むデータを第1ラインの上の画素の圧縮データとして作成するので、第1ラインにおいて誤差の発生を抑制することが可能となる。
上記実施形態によれば、差分値から、ベクトル量子化(差分量子化)により圧縮できる場合には、ベクトル量子化(差分量子化)によるデータ圧縮を行い、ベクトル量子化(差分量子化)により圧縮できない場合には、スカラー量子化(単純量子化)によるデータ圧縮を行うので、誤差の少ない圧縮が可能となる。
上記実施形態では、画像処理装置として構成したが、画像の先頭にある第1ラインに隣接してダミーラインを生成する機能と、ダミーラインを含む画像のデータ圧縮を行う機能とをコンピューターに実現させ、データ圧縮する機能は、第1ラインの上の各画素の複数のビットを、上位ビットデータと下位ビットデータの2つのビットデータに分割する機能と、上位ビットデータまたは下位ビットデータのうちの一方のビットデータをそのまま含むデータをダミーラインの上のダミー画素の圧縮データとして生成する機能と、他方のビットデータをそのまま含むデータを前記第1ラインの上の画素の圧縮データとして作成する機能を含む画像処理プログラムとしてもよい。
以上、いくつかの実施例に基づいて本発明の実施の形態について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得るとともに、本発明にはその等価物が含まれることはもちろんである。
10…画像処理装置 20…圧縮部 30…解凍部 100…入力部 110…圧縮・解凍切り替え部 120…圧縮率設定部 130…ダミーライン追加・処理部 140…ダミーライン追加・処理部 150…出力部 200…圧縮処理部 210…スカラー量子化部 220…差分算出部 230…ベクトル量子化部 240…判定部 250…圧縮値選択部 260…スカラー逆量子化予測部 270…ベクトル逆量子化予測部 280…解凍結果選択遅延出力部 300…解凍処理部 310…判定部 320…スカラー逆量子化部 330…ベクトル逆量子化部 340…解凍結果出力部

Claims (7)

  1. 画像処理装置であって、
    画像の先頭にある第1ラインに隣接してダミーラインを生成するとともに、前記ダミーラインを含む前記画像のデータ圧縮を行う圧縮部を備え、
    前記圧縮部は、
    前記第1ラインの上の各画素の複数のビットを、上位ビットデータと下位ビットデータの2つのビットデータに分割し、
    前記上位ビットデータまたは前記下位ビットデータのうちの一方のビットデータを含むデータを前記ダミーラインの上のダミー画素の圧縮データとして生成し、
    前記上位ビットデータまたは前記下位ビットデータのうちの他方のビットデータを含むデータを前記第1ラインの上の画素の圧縮データとして作成する、
    画像処理装置。
  2. 請求項1に記載の画像処理装置において、
    前記各画素の圧縮データは、固定長である、画像処理装置。
  3. 請求項1又は2に記載の画像処理装置において、
    前記圧縮部は、前記画像の前記ダミーライン及び前記第1ラインの画素については、所定の下位ビットを削除する第1の量子化によるデータ圧縮を実行する、画像処理装置。
  4. 請求項1〜3のいずれか一項に記載の画像処理装置において、
    前記圧縮部は、前記画像の前記第1ラインの直後の第2ライン以降の各ラインの画素については、所定の下位ビットを削除する第1の量子化、又は、圧縮対象となるラインと他のラインとの差分を求める第2の量子化によるデータ圧縮を実行する、画像処理装置。
  5. 請求項4に記載の画像処理装置において、
    前記第2ライン以降の各ラインの画素について、前記圧縮部は、
    前記第2の量子化により圧縮できる場合には、前記第2の量子化によるデータ圧縮を行い、
    前記第2の量子化により圧縮できない場合には、前記第1の量子化によるデータ圧縮を行う、
    画像処理装置。
  6. 請求項1〜5のいずれか一項に記載の画像処理装置において、さらに、
    圧縮されたデータを解凍する解凍部を備え、
    前記解凍部は、解凍時に、
    前記ダミーラインの上のダミー画素の圧縮データと、前記第1ラインの上の画素の圧縮データと、を用いて前記第1ラインの上の各画素の複数のビットを復元し、
    前記ダミーラインを削除する、
    画像処理装置。
  7. 画像処理方法であって、
    画像の先頭にある第1ラインに隣接してダミーラインを生成するとともに、前記ダミーラインを含む前記画像のデータ圧縮を行う圧縮工程を備え、
    前記圧縮工程は、
    前記第1ラインの上の各画素の複数のビットを、上位ビットデータと下位ビットデータの2つのビットデータに分割する工程と、
    前記上位ビットデータまたは前記下位ビットデータのうちの一方のビットデータを含むデータを前記ダミーラインの上のダミー画素の圧縮データとして生成する工程と、
    前記上位ビットデータまたは前記下位ビットデータのうちの他方のビットデータを含むデータを前記第1ラインの上の画素の圧縮データとして作成する工程と、
    を備える、
    画像処理方法。
JP2014048408A 2014-03-12 2014-03-12 画像処理装置及び画像処理方法 Active JP6303636B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014048408A JP6303636B2 (ja) 2014-03-12 2014-03-12 画像処理装置及び画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014048408A JP6303636B2 (ja) 2014-03-12 2014-03-12 画像処理装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JP2015173368A true JP2015173368A (ja) 2015-10-01
JP6303636B2 JP6303636B2 (ja) 2018-04-04

Family

ID=54260445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014048408A Active JP6303636B2 (ja) 2014-03-12 2014-03-12 画像処理装置及び画像処理方法

Country Status (1)

Country Link
JP (1) JP6303636B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024014045A1 (ja) * 2022-07-09 2024-01-18 Kddi株式会社 メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02279033A (ja) * 1989-04-20 1990-11-15 Nec Corp 画像伝送方法
JPH02288511A (ja) * 1989-04-28 1990-11-28 Canon Inc 符号伝送方法
JP2007123989A (ja) * 2005-10-25 2007-05-17 Seiko Epson Corp 動きベクトル検出装置
JP2014007623A (ja) * 2012-06-26 2014-01-16 Ikegami Tsushinki Co Ltd 画像符号化装置及び画像復号化装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02279033A (ja) * 1989-04-20 1990-11-15 Nec Corp 画像伝送方法
JPH02288511A (ja) * 1989-04-28 1990-11-28 Canon Inc 符号伝送方法
JP2007123989A (ja) * 2005-10-25 2007-05-17 Seiko Epson Corp 動きベクトル検出装置
JP2014007623A (ja) * 2012-06-26 2014-01-16 Ikegami Tsushinki Co Ltd 画像符号化装置及び画像復号化装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024014045A1 (ja) * 2022-07-09 2024-01-18 Kddi株式会社 メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム

Also Published As

Publication number Publication date
JP6303636B2 (ja) 2018-04-04

Similar Documents

Publication Publication Date Title
JP6512928B2 (ja) 画像符号化装置、画像処理装置、画像符号化方法
KR100894002B1 (ko) 선택적 압축과 복원 및 압축 데이터에 대한 데이터 포맷을위한 장치 및 방법
US11574188B2 (en) Data processing apparatus, data processing method, medium, and trained model
US20220114454A1 (en) Electronic apparatus for decompressing a compressed artificial intelligence model and control method therefor
JP2006197074A (ja) 画像処理装置、画像処理方法及びそのプログラム
JP6502753B2 (ja) 画像符号化装置、画像処理装置、画像符号化方法
KR20080016881A (ko) 예측 값들의 보정을 사용하는 압축 및 압축 해제
KR101726572B1 (ko) 무손실 이미지 압축 및 복원 방법과 이를 수행하는 장치
JP2016213527A (ja) 画像符号化装置、画像処理装置、画像符号化方法
JP6303636B2 (ja) 画像処理装置及び画像処理方法
TW201313030A (zh) 編碼裝置、解碼裝置、編解碼系統、編碼方法及解碼方法
US8983215B2 (en) Image processing device and image processing method
US9936211B2 (en) Compression device and compression method
JP5591838B2 (ja) 画像符号化装置、及び方法
JP5682387B2 (ja) 画像処理装置及び画像処理方法
JP2011109172A (ja) 映像符号化装置、および、そのデータ処理方法
JP4814826B2 (ja) 画像処理装置及び画像処理方法
JP6661895B2 (ja) 画像処理装置、表示装置、及び、画像処理方法
JP6334358B2 (ja) 画像信号処理装置およびビット拡張演算処理方法
CN109886858B (zh) 一种数据处理的方法及装置
JP2011259345A (ja) 符号化装置
US20150030245A1 (en) Method and apparatus for a memory efficient approach for decoding progressive joint photographic experts group (jpeg) images
KR20220046796A (ko) 전자 장치 및 그 제어 방법
US9615111B2 (en) Complexity-adaptive compression of color images using binary arithmetic coding
KR20210066675A (ko) Jpeg-ls 부호화 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180123

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: 20180206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180219

R150 Certificate of patent or registration of utility model

Ref document number: 6303636

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150