Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5167944B2 - 情報処理装置、情報処理方法、プログラム及び記録媒体 - Google Patents
[go: Go Back, main page]

JP5167944B2 - 情報処理装置、情報処理方法、プログラム及び記録媒体 - Google Patents

情報処理装置、情報処理方法、プログラム及び記録媒体 Download PDF

Info

Publication number
JP5167944B2
JP5167944B2 JP2008128850A JP2008128850A JP5167944B2 JP 5167944 B2 JP5167944 B2 JP 5167944B2 JP 2008128850 A JP2008128850 A JP 2008128850A JP 2008128850 A JP2008128850 A JP 2008128850A JP 5167944 B2 JP5167944 B2 JP 5167944B2
Authority
JP
Japan
Prior art keywords
code
information processing
image
group
rectangular area
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
JP2008128850A
Other languages
English (en)
Other versions
JP2009278472A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2008128850A priority Critical patent/JP5167944B2/ja
Priority to US12/453,581 priority patent/US8559735B2/en
Publication of JP2009278472A publication Critical patent/JP2009278472A/ja
Application granted granted Critical
Publication of JP5167944B2 publication Critical patent/JP5167944B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、情報処理装置、情報処理方法、プログラム及び記録媒体に関する。
近年、JPEG(Joint Photographic Coding Experts Group)で採用されているDCT(離散コサイン変換)に代わる周波数変換として、ウェーブレット変換の採用が増加している。その代表例は、2001年に国際標準になったJPEG後継の画像圧縮伸長方式JPEG2000である。
このJPEG2000方式で符号化された符号(以下、JPEG2000符号とも言う)は、パケット単位でのアクセス、あるいはより簡易にはタイルパート単位でのアクセスが可能であり、これは、原符号から必要な符号だけを抜き出して、新たな符号を生成できることを意味する。また、これは、原符号から必要に応じて部分的な符号だけを復号できることをも意味する。
例えば、サーバにある大きな画像をクライアント側で表示する場合に必要な画質だけの符号、必要な解像度だけの符号、見たい場所だけの符号、見たいコンポ−ネントだけの符号をサーバから受信し、復号することができる。
この様に、サーバにあるJPEG2000符号から、必要な符号だけを受信するためのプロトコルをJPIP(JPEG2000 Interactive Protocol)と呼ぶ。このような階層的な画像を部分的にアクセスするためのプロトコルは、画像の多重解像度表現であるFlashPix(登録商標)と、それにアクセスするためのプロトコルであるIIP(Internet Imaging Protocol)に見ることができる。
例えば、特開平11−205786号公報(特許文献1)には、画像が格納されたサーバから、解像度、表示範囲、フレームレートのうち少なくとも1つを指定して、動画の1フレームに対応する画像を、画素群素片単位でダウンロードできる技術が開示されている。
また、特開2003−23630号公報(特許文献2)には、JPIPにおけるキャッシュモデル等に関する技術が開示されている。
特開平11−205786号公報 特開2003−23630号公報
前述したJPIPを用いる場合、クライアントからサーバには、描画したい解像度と実際に描画するウィンドウサイズを指定することが提案されている。このような指定を受けた場合、サーバは指定された解像度の領域を周波数逆変換するのに十分なプリシンクトのパケットを送信するか、あるいはより簡易には、当該領域をカバーするタイルの符号(あるいはタイルパート)を送信する。
さて、ウェーブレット係数は原画像の位置との対応関係を有し、プリシンクトは場所を示すものである。このことから、ウェーブレット係数を逆変換するに際して、プリシンクト内の係数とプリシンクト外の係数とは独立ではないため、プリシンクト内の係数のみで正確なウェーブレット逆変換はできない。
よって、クライアント側で受信したプリシンクト内のウェーブレット係数を逆変換する際、受信したプリシンクト外の係数も必要となる場合があり、受信したプリシンクトだけでは適切にウェーブレット逆変換することができない場合があるという問題がある。
そこで、本発明は上記問題に鑑みてなされたものであり、所定の画像領域を指定された情報処理装置において、適切なウェーブレット逆変換をするか否かの目的に応じて、所定の画像領域に対応する符号を抽出することができる情報処理装置、情報処理方法、プログラム及び記録媒体を提供することを目的とする。
本発明に係る一局面の情報処理装置は、画像を矩形領域に分割し、分割された矩形領域の画素に対して周波数変換を行い、周波数変換後の前記矩形領域を更に矩形の区画に分割し、分割された区画の係数に基づいてエントロピー符号化された符号を記憶する情報処理装置であって、前記画像における所定の画像領域を受け付ける受付手段と、前記受付手段により受け付けた画像領域に対応する、1つ又は複数の前記区画を第1の区画群とし、該第1の区画群の符号を抽出する抽出手段と、前記第1の区画群の符号の復号化に影響を与える区画の符号を、前記抽出手段により抽出される符号と共に抽出するか否かを選択可能とする選択手段とを備える。
本発明に係る他の局面の情報処理装置は、画像を矩形領域に分割し、分割された矩形領域の画素に対して前記矩形領域に隣接した矩形領域の画素を用いてフィルタ演算し、フィルタ演算後の画素に対して周波数変換及び符号化が行なわれた符号を記憶する情報処理装置であって、前記画像における所定の画像領域を受け付ける受付手段と、前記受付手段により受け付けた画像領域に対応する、1つ又は複数の前記矩形領域を第1の矩形領域群とし、該第1の矩形領域群の符号を抽出する抽出手段と、前記第1の矩形領域群の符号の復号化に影響を与える矩形領域の符号を、前記抽出手段により抽出される符号と共に抽出するか否かを選択可能とする選択手段とを備える。
本発明に係る他の局面の情報処理方法は、画像を矩形領域に分割し、分割された矩形領域の画素に対して周波数変換を行い、周波数変換後の前記矩形領域を更に矩形の区画に分割し、分割された区画の係数に基づいてエントロピー符号化された符号を記憶する情報処理装置における情報処理方法であって、前記画像における所定の画像領域を受け付ける受付ステップと、前記受付ステップにより受け付けた画像領域に対応する、1つ又は複数の前記区画を第1の区画群とし、該第1の区画群の符号を抽出する抽出ステップと、前記第1の区画群の符号の復号化に影響を与える区画の符号を、前記抽出ステップにより抽出される符号と共に抽出するか否かを選択可能とする選択ステップとを有する。
本発明に係る他の局面の情報処理装置は、画像を矩形領域に分割し、分割された矩形領域の画素に対して前記矩形領域に隣接した矩形領域の画素を用いてフィルタ演算し、フィルタ演算後の画素に対して周波数変換及び符号化が行なわれた符号を記憶する情報処理装置における情報処理方法であって、前記画像における所定の画像領域を受け付ける受付ステップと、前記受付ステップにより受け付けた画像領域に対応する、1つ又は複数の前記矩形領域を第1の矩形領域群とし、該第1の矩形領域群の符号を抽出する抽出ステップと、前記第1の矩形領域群の符号の復号化に影響を与える矩形領域の符号を、前記抽出ステップにより抽出される符号と共に抽出するか否かを選択可能とする選択ステップとを有する。
本発明によれば、所定の画像領域を指定された情報処理装置において、適切なウェーブレット逆変換をするか否かの目的に応じて、所定の画像領域に対応する符号を抽出することができる。
本発明における実施の形態を図面に基づいて説明する。
<JPEG2000の符号化処理について>
実施例1に係る情報処理装置を説明する前に、実施例1の符号化処理の前提となるJPEG2000の符号化処理について説明する。図1は、JPEG2000の符号化処理における概略フローチャートである。
まず、画像は矩形のタイルに分割される(分割数≧1)。次に、各タイルは、例えばRGBの3コンポ−ネントで構成されるカラー画像の圧縮時には、DCレベルシフト後、輝度・色差コンポ−ネントへのコンポ−ネント変換(色変換)が行なわれる。
次に、ウェーブレット変換がなされ、必要に応じて量子化が行われ、ビットプレーンを単位としたエントロピー符号化がなされる。
また伸張処理時には、ビットプレーン単位でのエントロピー復号後、逆量子化を経て得られたコンポ−ネント毎のウェーブレット係数に対して、ウェーブレット逆変換が施され、その後逆色変換がなされてRGBの画素値に戻す。次にそれぞれの処理について説明する。
まず、DCレベルシフトの説明をする。JPEG2000のDCレベルシフトの変換式と逆変換式は次の通りである。
I(x,y) ← I(x,y)−2^Ssiz(i) 順変換 ・・・式(1)
I(x,y) ← I(x,y)+2^Ssiz(i) 逆変換 ・・・式(2)
ただし、Ssiz(i)は原画像の各コンポーネントi(RGB画像ならi=0,1,2)のビット深さから1を減じたものである。また,2^Ssiz(i)は2のSsiz(i)乗を意味し、I(x,y)は座標(x,y)における原信号値(画素値)である。
このDCレベルシフトは、RGB信号値のような正の数である場合に、順変換では各信号値から信号のダイナミックレンジの半分を減算するレベルシフトを、逆変換では各信号値に信号のダイナミックレンジの半分を加算するレベルシフトを行うものである。ただし、このレベルシフトはYCbCr信号のCb、Cr信号のような符号付き整数には適用されない。
次に、コンポーネント変換について説明する。JPEG2000では、コンポ−ネント変換(色変換)として可逆変換(RCT)と非可逆変換(ICT)が定義されている。
RCTの順変換と逆変換は次式で表される。
(順変換)
Y0(x,y)=floor((I0(x,y)+2×(I1(x,y)+I2(x,y))/4) ・・・式(3)
Y1(x,y)=I2(x,y)-I1(x,y) ・・・式(4)
Y2(x,y)=I0(x,y)-I1(x,y) ・・・式(5)
(逆変換)
I1(x,y)=Y0(x,y)-floor((Y2(x,y)+Y1(x,y))/4) ・・・式(6)
I0(x,y)=Y2(x,y)+I1(x,y) ・・・式(7)
I2(x,y)=Y1(x,y)+I1(x,y) ・・・式(8)
式中のIは原信号、Yは変換後の信号を示し、IやYに続く0〜2はサフィックスである。RGB信号ならばI信号においてI0=R、I1=G、I2=B、Y信号においてY0=Y、Y1=Cb、Y2=Crと表される。またfloor(X)は実数Xを、Xを越えず、かつ、Xに最も近い整数に置換する関数である。
ICTの順変換と逆変換は次式で表される。
(順変換)
Y0(x,y)=0.299×I0(x,y)+0.587×I1(x,y)+0.144×I2(x,y) ・・・式(7)
Y1(x,y)=-0.16875×I0(x,y)-0.33126×I1(x,y)+0.5×I2(x,y) ・・・式(8)
Y2(x,y)=0.5×I0(x,y)-0.41869×I1(x,y)-0.08131×I2(x,y) ・・・式(9)
(逆変換)
I0(x,y)=Y0(x,y)+1.402×Y2(x,y) ・・・式(10)
I1(x,y)=Y0(x,y)-0.34413×Y1(x,y)-0.71414×Y2(x,y) ・・・式(11)
I2(x,y)=Y0(x,y)+1.772×Y1(x,y) ・・・式(12)
式中のIは原信号、Yは変換後の信号を示す。RGB信号ならばI信号においてI0=R、I1=G、I2=B、Y信号においてY0=Y、Y1=Cb、Y2=Crと表される。
次に、ウェーブレット変換について説明する。前述した変換後のコンポ−ネント(タイルコンポ−ネントと呼ばれる)は、ウェーブレット変換によって、LL、HL、LH、HHと略称される4つのサブバンドに分割される。そしてLLサブバンドに対して再帰的にウェーブレット変換(デコンポジション)を繰返すと、最終的に1つのLLサブバンドと複数のHL、LH、HHサブバンドが生成される。
ここで、JPEG2000で使用される5×3ウェーブレット変換および9×7ウェーブレット変換(いずれか一方を選択して使用する)について説明する。
5×3ウェーブレット変換とは、5画素を用いて1つのローパスフィルタの出力(ローパス係数)が得られ、3画素を用いて1つのハイパスフィルタの出力(ハイパス係数)が得られる変換である。同様に9×7ウェーブレット変換とは、9画素を用いて1つのローパスフィルタの出力(ローパス係数)が得られ、7画素を用いて1つのハイパスフィルタの出力(ハイパス係数)が得られる変換である。主な違いはフィルタの範囲の違いであり、偶数位置中心にローパスフィルタ、奇数位置中心にハイパスフィルタが施されるのは同様である。
5×3ウェーブレット変換の変換式は次の通りである。
(順変換)
[step1] C(2i+1)=P(2i+1)−floor((P(2i)+P(2i+2))/2) ・・・式(13)
[step2] C(2i)=P(2i)+floor(((C(2i-1)+C(2i+1)+2)/4) ・・・式(14)
(逆変換)
[step3] P(2i)=C(2i)−floor((C(2i-1)+C(2i+1)+2)/4) ・・・式(15)
[step4] P(2i+1)=C(2i+1)+floor((P(2i)+P(2i+2))/2) ・・・式(16)

9×7ウェーブレット変換の変換式は次のとおりである。
(順変換)
[step1] C(2n+1)=P(2n+1)+α×(P(2n)+P(2n+2)) ・・・式(17)
[step2] C(2n)=P(2n)+β×(C(2n-1)+C(2n+1)) ・・・式(18)
[step3] C(2n+1)=C(2n+1)+γ×(C(2n)+C(2n+2)) ・・・式(19)
[step4] C(2n)=C(2n)+δ×(C(2n-1)+C(2n+1)) ・・・式(20)
[step5] C(2n+1)=K×C(2n+1) ・・・式(21)
[step6] C(2n)=(1/K)×C(2n) ・・・式(22)
(逆変換)
[step1] P(2n)=K×C(2n) ・・・式(23)
[step2] P(2n+1)=(1/K)×C(2n+1) ・・・式(24)
[step3] P(2n)=X(2n)-δ×(P(2n-1)+P(2n+1)) ・・・式(25)
[step4] P(2n+1)=P(2n+1)-γ×(P(2n)+P(2n+2)) ・・・式(26)
[step5] P(2n)=P(2n)-β×(P(2n-1)+P(2n+2)) ・・・式(27)
[step6] P(2n)=P(2n+1)-α×(P(2n)+P(2n+2)) ・・・式(28)
ただし、
α=-1.586134342059924
β=-0.052980118572961
γ=0.882911075530934
δ=0.443506852043971
K=1.230174104914001
次に、ウェーブレット変換の手順およびデコンポジションレベル、解像度レベル、サブバンドの定義について説明する。
図2〜図5は、16×16の画像(の輝度コンポ−ネント)に対して、5×3変換と呼ばれるウェーブレット変換を2次元(垂直方向および水平方向)で施す過程の例を示した図である。
図2は、16×16の原画像と座標系を示す図である。図2の様にxy座標をとり、あるxについて、y座標がyである画素の画素値をP(y)(0≦y≦15)と表す。JPEG2000では、まず垂直方向(Y座標方向)に、y座標が奇数(y=2i+1)の画素を中心にハイパスフィルタを施して係数C(2i+1)を得、次にy座標が偶数(y=2i)の画素を中心にローパスフィルタを施して係数C(2i)を得る(これを全てのxについて行う)。
ここで、ハイパスフィルタ、ローパスフィルタは、順に前記step1、step2式で表される。なお、画像の端部においては、中心となる画素に対して隣接画素が存在しないことがあり、この場合はミラーリングと呼ばれる方法によって適宜画素値を補うことになる。ミラーリングとは、画像端部の外側に仮想的な画素を想定し、画像端部の画素を対称軸として、端部の内側の画素値を、端部の外側の画素に対して線対称にコピーする周知の手法である。
簡単のため、ハイパスフィルタで得られる係数をH、ローパスフィルタで得られる係数をLと表記する。図3は、垂直方向へのフィルタリング後の係数の配列を示す図である。前述した垂直方向の変換によって、図2の画像は図3のようなL係数、H係数の配列へと変換される。
続いて、今度は図3の係数配列に対して、水平方向に、x座標が奇数(y=2i+1)の係数を中心にハイパスフィルタを施し、次にx座標が偶数(x=2i)の係数を中心にローパスフィルタを施す(これを全てのyについて行う。この場合、step1、2のP(2i)等は係数値を表すものと読み替える)。
簡単のため、
前記L係数を中心にローパスフィルタを施して得られる係数をLL、
前記L係数を中心にハイパスフィルタを施して得られる係数をHL、
前記H係数を中心にローパスフィルタを施して得られる係数をLH、
前記H係数を中心にハイパスフィルタを施して得られる係数をHH、
と表記する。図4は、水平方向へのフィルタリング後の係数の配列を示す図である。図3の係数配列は、図4の様な係数配列へと変換される。ここで同一の記号を付した係数群はサブバンドと呼ばれ、図4は4つのサブバンドで構成される。
以上で垂直・水平の各方向に対して各1回のウェーブレット変換(1回のデコンポジション(分解))が終了する。
図5は、サブバンド毎に並べ替えた係数の配列を示す図である。上記LL係数だけを集めると(図5に示す様にサブバンド毎に集め、LLサブバンドだけ取り出すと)、ちょうど原画像の1/2の解像度の"画像"が得られる(このように、サブバンド毎に分類することをデインターリーブと呼び、図4のような状態に配置することを、インターリーブするという)。
また、2回目のウェーブレット変換は、該LLサブバンドを原画像と見なして、上記と同様の変換を行えばよい。図6は、2回のウェーブレット変換後、並べ替えた係数の配列を示す図である。なお、図5、図6の係数の接頭の1や2は、水平・垂直に関し各何回のウェーブレット変換で該係数が得られたかを示しており、デコンポジションレベルと呼ばれる。
また、デコンポジションレベルとほぼ逆の関係にある、解像度レベルの定義を図7に示す.図7は、デコンポジションレベルと解像度レベルとの関係を示す図である。なお、前述した処理において、1次元のみのウェーブレット変換をしたい場合には、いずれかの方向だけの処理を行えばよく、いずれかの方向に関してウェーブレット変換を行った回数がデコンポジションレベルとなる。
一方、ウェーブレット逆変換は、図4の様なインターリーブされた係数の配列に対して、まず水平方向に、x座標が偶数(x=2i)の係数を中心に逆ローパスフィルタを施し、次にx座標が奇数(x=2i+1)の係数を中心に逆ハイパスフィルタを施す(これを全てのyについて行う)。
ここで逆ローパスフィルタ、逆ハイパスフィルタは、順に前記step3、4式で表される。前述したミラーリング処理同様、画像の端部においては、中心となる係数に対して隣接係数が存在しないことがあり、この場合も前記ミラーリングによって適宜係数値を補うことになる。
これにより、図4に示す係数配列は図3のような係数配列に変換(逆変換)される。続いて同様に、垂直方向に、y座標が偶数(y=2i)の係数を中心に逆ローパスフィルタを施し、次に、y座標が奇数(y=2i+1)の係数を中心に逆ハイパスフィルタを施せば(これを全てのxについて行う)、1回のウェーブレット逆変換が終了し、図2の画像に戻る(再構成される)。なお、ウェーブレット変換が複数回施されている場合は、図2をLLサブバンドとみなし、HL等の他の係数を利用して同様の逆変換を繰り返せばよい。
次に、各サブバンドはプリシンクトとよばれる矩形の区画に分割される。プリシンクトとは、サブバンドを矩形に分割したもの(をHL、LH、HHの3つのサブバンドについて集めたもの。プリシンクトは3つで1まとまりであるが、LLサブバンドを分割したプリシンクトは1つで1まとまりである)で、大まかに言えば、画像中の場所(Position)を表すものである。
ここで注意すべきは、プリシンクト内のウェーブレット係数を逆変換するには、プリシンクト外の係数も必要になるということである。言い換えれば、ウェーブレット逆変換において、プリシンクト内の係数とプリシンクト外の係数とは独立ではない。ウェーブレット変換が周囲の画素値を用いて行われる以上、ウェーブレット逆変換も周囲の係数値を用いて行われるからである。
逆変換式(15)、(16)に示す5×3ウェーブレット逆変換の場合、逆ローパスフィルタを施すためにはフィルタ中心となる係数を含む3つの係数が必要であり、逆ハイパスフィルタを施すためにはフィルタ中心となる係数を含む5つの係数が必要である。
よって、逆ローパスフィルタを施す場合のフィルタ中心となる係数が、プリシンクト境界にちょうど位置する係数であった場合、その境界に隣接するプリシンクトが必要になる。また、逆ハイパスフィルタを施す場合のフィルタ中心となる係数が、プリシンクト境界にちょうど位置する係数またはその1つ内側の係数であった場合、その境界に隣接するプリシンクトが必要になるのである。
前述した逆変換と同様に、9×7ウェーブレット逆変換の場合、逆ローパスフィルタを施すためにはフィルタ中心となる係数を含む7つの係数が必要であり、逆ハイパスフィルタを施すためにはフィルタ中心となる係数を含む9つの係数が必要である。5×3の場合と同様、逆変換時、フィルタのタップが隣接するプリシンクトにかかる場合、当該隣接プリシンクトが必要になる。
以上が注意すべき点であるが、このプリシンクトはサブバンドと同じサイズにもでき、プリシンクトをさらに矩形に分割したものがコードブロックである。図8は、画像、タイル、サブバンド、プリシンクト、コードブロックの関係を示す図である。
よって、物理的な大きさの序列は、画像≧タイル>サブバンド≧プリシンクト≧コードブロックとなる。なお、デコンポジションレベル(施すウェーブレット変換の回数)と解像度レベルの関係は図7に示す通りである。
以上の分割の後、係数のエントロピー符号化(ビットプレーン符号化)が、コードブロック毎かつビットプレーン順に成される。プリシンクトに含まれる全てのコードブロックから、ビットプレーンの符号の一部を取り出して集める。例えば、全てのコードブロックのMSBから3枚目までのビットプレーンの符号を集める。そして、これら集めたものにヘッダをつけたものをパケットと呼ぶ。
前述したビットプレーンの符号の"一部"は"空"でもいいので、パケットの中身が符号的には"空(から)"ということもある。パケットヘッダには、当該パケットに含まれる符号に関する情報が含まれ、各パケットは独立に扱うことができる。いわばパケットは符号の単位である。
そして全てのプリシンクト(=全てコードブロック=全てのサブバンド)のパケットを集めると、画像全域の符号の一部ができる。例えば、画像全域のウェーブレット係数の、MSBから3枚目までのビットプレーンの符号である。これをレイヤと呼ぶ。
レイヤは、大まかに言えば、画像全体のビットプレーンの符号の一部であるから、復号されるレイヤ数が増えれば画質は上がることになる。すなわち、レイヤは画質の単位である。
すべてのレイヤを集めると,画像全域の全てのビットプレーンの符号になるが、図1は、デコンポジションレベル=2、プリシンクトサイズ=サブバンドサイズとしたときのレイヤと、それに含まれるパケットの例である。
パケットは、プリシンクトを単位とするものであるから、プリシンクト=サブバンドとした場合、HL〜HHサブバンドをまたいだものとなる。図中、いくつかのパケットを太線で囲んである。
さて,以上で生成されたパケットやレイヤの区切りに従って,パケットを並べることで最終的な符号が形成される.以上の様にパケットは、
どのコンポ−ネント(記号C)に属するか、
どの解像度レベル(記号R)に属するか、
どのプリシンクト("場所")(記号P)に属するか、
どのレイヤ(記号L)に属するか、
という4つの属性を有する(本願では、以下これをプログレッション属性という)。
パケットの先頭にはパケットヘッダが存在し、該パケットヘッダの後には、MQ符号(パケットデータ)が続いている。パケットの配列は、(パケットヘッダおよびパケットデータを)どの属性の順に階層的に並べるかを意味し、この順をプログレッションオーダと呼ぶ。図10は、プログレッションオーダ示す図である。図10に示すとおり、プログレッションオーダは5通りが規定されている。
ここで、エンコーダがプログレッション順序順にパケットを並べる様子、およびデコーダがプログレッション順にパケットの属性を解釈する様子を以下に示す。
プログレッションオーダがLRCPの場合、標準書の記載は以下の通りである。
for (レイヤ){
for (解像度){
for (コンポ−ネント){
for (プリシンクト){
エンコード時:パケットを配置
デコード時:パケットの属性を解釈




という階層順で、パケットの配列(エンコード時)および解釈(デコード時)がなされる。前述の通り各パケットはパケットヘッダを有するが、パケットヘッダには、
・そのパケットが空かどうか
・そのパケットにどのコードブロックが含まれるか
・そのパケットに含まれる各コードブロックのゼロビットプレーン数
・そのパケットに含まれる各コードブロック符号のコーディングパス数(ビットプレーン数)
・そのパケットに含まれる各コードブロックの符号長
が記載されているが、レイヤ番号や解像度番号等は一切記載されていない。デコード時に、そのパケットがどのレイヤのどの解像度の物かを判別するには、メインヘッダ中のCODマーカ等に記載されたプログレッションオーダから上記forループを形成し、そのパケットに含まれる各コードブロックの符号長の和からパケットの切れ目を判別し、各パケットがforループ内のどの位置でハンドリングされたかを見ればよい。
これは、パケットヘッダ中の符号長さえ読み出せば、エントロピー符号自体をデコードしなくても、次のパケットを検出できること、すなわち任意のパケットにアクセスできることを意味する。
図11は、レイヤがforループの最も外側(以下、最も外側を"最外殻"と呼ぶ)に位置するレイヤプログレッション符号の概念図である。図12は画像サイズ100×100画素、2レイヤ、解像度レベル3(0〜2)、3コンポ−ネント(0〜2)、プリシンクトサイズ32×32、LRCPプログレッションの場合の36個のパケットの配列例である。
一方、図13は、解像度レベルがforループの最外殻である解像度プログレッション符号の概念図である。図14は、プリシンクトサイズ32×32、RPCLプログレッションの場合の36個のパケットの配列例である。
以上、説明したようなJPEG2000の符号化方式において、ウェーブレット係数は原画像の位置との対応関係を有し、プリシンクトは場所を示すものである。ここで、プリシンクト内のウェーブレット係数を逆変換するには、プリシンクト外の係数も必要となる。また、所定の解像度の領域を周波数逆変換するのに十分なプリシンクトのパケットとは、所定の解像度の領域に相当する係数を含む第1のプリシンクト群+所定の解像度の領域に相当する係数を周波数逆変換するのに必要となる第1のプリシンクト群に隣接する第2のプリシンクト群(以下、隣接プリシンクト群とも言う)のパケットを意味する。
ただし、この領域に相当する係数を周波数逆変換するのに必要となる第1のプリシンクト群に隣接する第2のプリシンクト群は、正しく周波数逆変換しようとしなければ、必ずしも必要なものではない。
前述したように、ミラーリング処理によって、第1のプリシンクト群の係数をコピーすれば、周波数逆変換自体は行えるからである。ただし逆変換後の値は、正規の値ではなくなり、画質的には劣化を招くことになる。そして、第2のプリシンクト群のパケットを送信しなければ、その分符号量が減り、トラフィックが軽減されることになる。以上、説明した内容を踏まえ、本発明に係る情報処理装置について説明する。
<本発明に係るシステム構成について>
図15は、本発明に係る情報処理装置を用いたシステムの構成を示す図である。本発明に係る情報処理装置100は、HDD101(Hard Disk Drive)、RAM(Random Accesses Memory)102、CPU(Central Processing Unit)103を含み、クライアントPC(Personal Computer)104とデータバスを介して接続されている。
図15を用いて、情報処理装置100における本発明の概略処理を説明する。まず、HDD101上に記憶された原画像の符号が、CPU103からの命令によって、RAM102上に読み込まれる。
次に、CPU103は、RAM102上の符号を読み込み、符号の抽出処理を適用して第2の符号を選択する。符号の抽出処理についての詳細は後述するが、簡単に言えば隣接プリシンクトの符号を抽出するか否かを選択する処理である。
CPU103は、第2の符号をRAM102上の別の領域に書き込む。また、CPU103からの命令によって、第2の符号がHDD上に記録される。
また、さらにバス上にクライアントPC104が接続されている場合、クライアントPC104は、所定の画像領域を情報処理装置100(サーバ)に対して指定し、情報処理装置100は、指定された画像領域を受け付ける。情報処理装置100が受け付ける情報は、クライアントPCが指定した画像の符号(符号ファイル名)、画像の解像度、表示ウィンドウ(リクエストウィンドウ)のサイズ(roff,rsize)などである。
次に、HDD101上に記録された原画像の符号が、CPU103からの命令によってRAM102上に読み込まれる。次に、CPU103は、RAM102上の符号を読み込み、符号の抽出処理を適用してクライアントPC104が要求する矩形領域に相当する第2の符号を選択する。次に、CPU103からの命令によって、第2の符号がクライアントPC104に送信される。
本願における、クライアントPC104から情報処理装置100(サーバ)へ所望する画像領域の指定は、JPIPと同様に、表示したい解像度と領域の両方が指定されることとする。
<実施例1に係る情報処理装置の主要機能の構成について>
図16は、実施例1に係る情報処理装置の主要機能の構成を示す図である。情報処理装置200は、受付手段201、抽出手段202、記憶手段203、選択手段204、送信手段205を含む機能構成である。
受付手段201は、クライアントPC、又は、情報処理装置が備える入力手段(キーボード、マウスなど)などから所定の画像情報を受け付ける。画像情報は、画像の符号の識別情報(符号ファイル名)、画像の解像度情報、画像の領域情報などである。
抽出手段202は、受付手段201により受け付けた所定の画像領域を包含する、1つ又は複数のプリシンクトを記憶手段203より選定し、選定したプリシンクトを第1のプリシンクト群として、第1のプリシンクト群に対応する符号を記憶手段203より抽出する。また、抽出手段202は、抽出した符号と選定したプリシンクト群とを選択手段204に出力する。
記憶手段203は、画像をJPEG2000方式で符号化された符号を記憶する。前述したように、記憶手段203が記憶する符号は、所定の画像領域や所定の解像度毎に読み出すことが可能である。
選択手段204は、予め設定可能なポリシーの内容、又は、受付手段201により受け付ける第1のプリシンクト群の符号の復号化に影響を与える符号も抽出するか否かの信号に基づいて、第1のプリシンクト群の符号の復号化に影響を与える符号を抽出するか否かを選択する。
選択手段204は、第1のプリシンクト群の符号の復号化に影響を与える符号を抽出する場合、第1のプリシンクト群の符号に加えて、第1のプリシンクト群に隣接するプリシンクトの符号を抽出し、これらの符号を送信手段205に出力する。
選択手段204は、第1のプリシンクト群の符号の復号化に影響を与える符号を抽出しない場合、抽出手段202により抽出された符号を送信手段205に出力する。
送信手段205は、選択手段205より取得した符号をクライアントPC等に送信する。また、情報処理装置200自体が、抽出した符号を復号して表示する場合には、送信手段205を介さなくてもよい。
なお、抽出手段202と選択手段204とは、説明しやすくするため分けた構成にしたが、これらをまとめた1つの構成にしてもよい。また、選択手段204により、隣接するプリシンクトの符号も抽出するか否かを先に決めてから、抽出手段202が、選定されたプリシンクトに対応する符号を抽出するようにしてもよい。
ここで、図17を用いて、受け付ける画像領域情報(リクエストウィンドウ)と、それに対応するプリシンクトについて説明する。図17は、リクエストウィンドウと、プリシンクトとの対応を示す図である。
例えば、図17に示すように320×320画素の画像に対し、左上を原点として、(128,128)を頂点とした、大きさ128×128画素の領域が所定の画像領域としてJPIPを用いて指定される場合、
fsize=(fx,fy)=(320,320) (解像度の指定)
roff=(ox,oy)=(128,128) (領域オフセットの指定)
rsize=(rx,ry)=(128,128) (領域サイズの指定)
なる指定がなされる。
ここで原画像が、図8に示すように3回ウェーブレット変換され、64×64係数サイズのプリシンクトに分割されている場合、所定の画像領域に相当するウェーブレット係数は、図17に示す太線で囲われる10個の正方形に対応する係数である。
よって、情報処理装置200は、これら10個の正方形を包含するようなプリシンクトの符号をクライアントに対して送信する必要が生じる。3LLは1プリシンクト、3HL・3LH・3HHも1プリシンクトなので、これらは各1つのプリシンクトを送信すればよい。
一方、2HL・2LH・2HHは4プリシンクトで、一見これらは左上の1つのプリシンクトを送信すればよい。しかし、前述したように、プリシンクト内の係数を正確にウェーブレット逆変換するためには、上下および左右に隣接したプリシンクトが必要になることがある。
実施例1における符号は、5×3ウェーブレット変換が用いられているとした場合、逆ローパスフィルタを施す場合のフィルタ中心となる係数が、プリシンクト境界にちょうど位置する係数であった場合、その境界に隣接するプリシンクトが必要になる。
また、逆ハイパスフィルタを施す場合のフィルタ中心となる係数が、プリシンクト境界にちょうど位置する係数またはその1つプリシンクト境界より内側の係数であった場合、その境界に隣接するプリシンクトが必要になる。
<実施例1における所定の画像領域に対応する符号の抽出処理について>
図18は、実施例1に係る情報処理装置において、所定の画像領域に対応する符号の抽出処理を説明するためのフローチャートである。図18に示す処理では、抽出手段202や選択手段204は、プリシンクトを抽出し、送信手段205が、プリシンクトに相当するパケットを取得して送信することにする。なお、前述したとおり、抽出手段202は、プリシンクトに対応する符号も抽出するようにしてもよい。
ステップ101では、受付手段201が、指定された所定の画像情報を受け付け、受け付けた画像情報を、抽出手段202に出力する。ここで、画像情報とは、前述したとおり、符号ファイル名と、画像の解像度を示す情報と、所定領域のサイズ、所定領域の位置を示す情報などである。
ステップ101に続いてステップ102に進み、抽出手段202が、まず、受付手段201より取得した情報をもとに、解像度レベルrを算出する。解像度レベルrの算出の仕方については図19を用いて後述する。
ステップ102に続いてステップ103に進み、抽出手段202が、記憶手段203に記憶される符号中のCODマーカからプリシンクトサイズを読み取り、算出した解像度レベルr以下のすべての解像度レベルに関し、受付手段201より取得したroff、rsizeから、表示領域を包含するプリシンクト群を抽出する。
ステップ103に続いてステップ104に進み、選択手段204が、予め設定されているポリシー(ここでは画質優先のポリシーが設定されていることにする)、又は、受付手段201がクライアントPC104から受け付けた信号に基づいて、抽出手段202が抽出するプリシンクト群に隣接するプリシンクト(隣接プリシンクトともいう)を抽出するか否か判断する。
ステップ104の判定結果がYESである場合、ステップ105に進み、選択手段204が、解像度レベルr以下の隣接プリシンクト群も第1のプリシンクト群に加えて抽出する。ステップ104の判定結果がNOである場合、選択手段204は、隣接プリシンクト群を追加しない。なお、このプリシンクトの追加処理については、図20を用いて後述する。
ステップ105に続いてステップ106に進み、送信手段205が、抽出されたプリシンクト群に属するパケットをクライアントPC104に送信する。
次に、ステップ102の解像度レベルrの算出の仕方について図19を用いて説明する。図19は、解像度レベルrの算出処理を説明するためのフローチャートである。なお、抽出手段202は演算部を備えており、図19に示す処理は全て抽出手段202が行なうこととする。
ステップ201では、fsizeのfxとfyとを受付手段201から取得する。ステップ201に続いてステップ202に進み、指定された符号ファイル名の画像のSIZマーカセグメントから、原画像の横方向画素数(Xsize)、縦方向画素数(Ysize)を検出する。
ステップ202に続いてステップ203に進み、指定された符号ファイル名の画像のCODマーカセグメントから、デコンポジションレベル数dを検出する。なお、SIZマーカセグメント、CODマーカセグメントは適宜、記憶手段203より読み出すことで検出される。
ステップ203に続いてステップ204に進み、
fx≦Xsize/2^d ・・・式(29)
fy≦Ysize/2^d ・・・式(30)
式(29)、(30)の両方を満たすか否かを判定する。両方を満たす場合はステップ205に進み、解像度レベルrは0とする。式(29)、(30)を1つでも満たさない場合はステップ206に進み、解像度レベルrを算出する。
解像度レベルrは以下の式で算出される。
r=d-min[log2(Xsize/fx),log2(Ysize/fy)]+1 ・・・式(31)
式(31)に従って、解像度レベルrを算出する。
以上説明した解像度レベルrに基づいて、ステップ103やステップ105の処理でプリシンクトが抽出される。
次に、ステップ105のプリシンクトの追加処理について図20を用いて説明する。図20は、プリシンクトの追加処理を説明するためのフローチャートである。図20に示す全ての処理は、選択手段204が行なうこととする。このとき、選択手段204は、演算部を有し、表示領域の境界の座標とプリシンクト境界の座標との距離を求める。
ステップ301では、表示領域の上端が奇数座標か否か判定する。つまり、表示領域の上端が逆ハイパスフィルタを用いるか否かを判定する。ステップ301の判定結果がYESである場合、ステップ302に進み、表示領域の上端から、上方向に存在するプリシンクト境界への距離が2未満であるか否かを判定する。
ステップ302の判定結果がYESである場合、ステップ303に進み、表示領域の上端に隣接するプリシンクトを抽出対象に含める。
ステップ303の処理が完了した場合、ステップ301の判定結果がNOである場合、又はステップ302の判定結果がNOである場合、ステップ304に進み、表示領域の上端が偶数座標か否か判定する。つまり、表示領域の上端が逆ローパスフィルタを用いるか否かを判定する。
ステップ301の判定結果がYESである場合、ステップ302に進み、表示領域の上端から、上方向に存在するプリシンクト境界への距離が1未満であるか否かを判定する。
ステップ302の判定結果がYESである場合、ステップ303に進み、表示領域の上端に隣接するプリシンクトを抽出対象に含める。なお、ステップ303の処理が終了した場合にはステップ304に進むようにしたが、ステップ303の処理が終了した場合は、上端に隣接するプリシンクトの追加処理自体を終了するようにしてもよい。
以上、表示領域の上端に関するプリシンクトの追加処理を説明したが、上端を下端、右端、又は左端とすることで、下端、右端、又は左端に関するプリシンクトの追加処理を同様に行うことができる。
また、図20に示す処理では5×3のウェーブレット変換(逆変換)について説明したが、9×7のウェーブレット変換(逆変換)の場合は、ステップ302の処理の2未満を4未満にし、ステップ305の処理の1未満を3未満にすれば同様に処理可能である。
以上、実施例1に係る情報処理装置によれば、所定の画像領域を指定された情報処理装置において、適切なウェーブレット逆変換をするか否かの目的に応じて、所定の画像領域に対応する符号を抽出することができる。つまり、情報処理装置側で、隣接プリシンクトを含めて画質を優先するか、隣接プリシンクトを含めずにトラフィック低減を優先するかを決めることができる。
また、画質優先かトラフィック低減優先かをクライアント側で決定し、情報処理装置は、決定された内容を示す信号を受信することでクライアント側の要望に応じて画質優先かトラフィック低減優先かを選択することができる。
また、第1のプリシンクト群の符号の復号化に影響を与える符号を、第1のプリシンクト群の水平方向、又は垂直方向に接するプリシンクトの符号であることを決めておくことで、表示領域の境界の画質選択に際し、符号抽出を容易に行うことができる。
実施例2に係る情報処理装置について説明する。実施例2では、JPEG−XR方式で符号化された符号を対象とするところが実施例1と異なる。まず、実施例2の前提となるJPEG−XRについて説明する。
<JPEG−XRの基本的な符号化処理について>
図21は、JPEG−XRの基本的な符号化処理を示すフローチャートである。図21を用いて、JPEG−XRの基本的な符号化処理を説明する。
JPEG−XR符号化方式では、まず、原画像をYCgCoの各成分に変換する。タイルに分割し、分割されたタイルをさらに4×4画素のブロックに分割する。
ここで、図22は、JPEG−XRにおける画像、タイル、マクロブロック、ブロック、画素の関係を示す図である。図22に示すように、画像はタイルに分割され、タイルはマクロブロックに分割され、マクロブロックは16個のブロックに分割され、1ブロックは4×4の画素から成る。よって、これらの大小関係は、画像≧タイル≧マクロブロック≧ブロック≧画素となる。なお、図23は、JPEG−XR符号化方式での色変換式を示す図である。
また、JPEG−XRでは、この4×4画素のブロック単位で周波数変換を行うため、圧縮率が高い場合には従来技術のJPEG同様のブロックノイズが生じる恐れがある。そこで、ブロックノイズを低減させるため、プレフィルタ処理が行われる。
図21に戻り、ブロックをまたぐ4×4画素ごとにプレフィルタ処理が行われる。また、このプレフィルタ処理はタイル境界をまたいで行われる。つまり、このプレフィルタの逆変換を施す場合には注目タイルの上下左右のタイルの画素が必要となる。
図24は、プレフィルタをかける4×4画素と、周波数変換をする4×4画素の位置関係を示す図である。さらに、図25は、プレフィルタの式を仮想的なプログラムで表した図である。図24、図25に示す「a」は、プレフィルタをかける単位の左上の画素を表す。図25に示すプログラムを実行することにより、プレフィルタ処理を行うことができる。
図21に戻り、各タイル内でブロックごとに周波数変換が行なわれる。また、各タイル内で、マクロブロック内のDC成分が集められて、4×4係数の第2のブロックが形成される。この時、集められたDC成分以外の係数は、ハイパス(HP)係数として扱われる。
次に、前述した第2のブロックが集められることにより形成される第2の画像(係数群)に対して、第2のブロックをまたぐ4×4係数ごとにプレフィルタ処理が行われる。
再び各タイル内で、第2のブロックごとに周波数変換が行われる。前回同様に、各タイル内でマクロブロック内のDC成分が集められ、これをDC係数として扱う。また、DC成分以外の係数は、ローパス(LP)係数として扱う。
ここで、図26は、DC係数、LP係数、HP係数の階層的な位置関係を示す図である。わかりやすく説明するため、1マクロブロックに着目して説明する。図26に示すHP係数について、1回目の周波数変換後に各ブロックごとにDC成分が集められて(一番上のブロックの場合を例にとって、DC成分が集められる様子を図26に示す)、集められなかった係数がHP係数である。
LP係数について、1回目の周波数変換後に集められたDC成分に対して2回目の周波数変換を行い、2回目の周波数変換後のDC成分が集められて、集められなかった係数がLP係数である。DC係数について、2回目の周波数変換後に集められたDC成分がDC係数である。
さらに、図27、28は、周波数変換式を、仮想的なプログラムで表した図である。図27、28のプログラムを実行することで周波数変換処理を行うことができる。
図21に戻り、量子化処理によって、各タイル毎にDC係数、LP係数、HP係数が線形量子化される。最後に、エントロピー符号化処理によって、量子化後の係数に対して所定のエントロピー符号化が行われる。本願では、エントロピー符号化の詳細は詳述しない。なお、JPEG−XRで符号化された符号を伸張する場合は、前述した処理の逆順を辿ればよい。
以上のように、JPEG−XRで符号化された符号は、プレフィルタ処理の影響を受けているため、あるタイルを正確にデコードするためには、隣接したタイルの符号も必要になる。一方、隣接したタイルの係数が存在しなくても、例えば、隣接したタイルの画素値を0として計算すれば、誤差は生じるが、プレフィルタの逆変換は行うことができる。ただし、この場合、ブロックノイズは生じてしまう。
よって、JPEG−XR方式で符号化された符号に、例えば、ネットワーク経由で部分的にアクセスする場合、実施例1と同様の画質と符号量の関係が生じる。なお、実施例2において、情報処理装置側では基本的な構成は実施例1と同様であり、図16に示す抽出手段202がタイルを抽出し、記憶手段203は、JPEG−XRで符号化された符号を記憶し、選択手段204がタイルを追加可能とするように変更すればよい。
<JPEG−XR符号の構成について>
図29は、JPEG−XRの符号構成を示したものであり、画像全体に関するヘッダ、符号化条件等を格納した画像プレーンヘッダ、各タイルのエントロピー符号の位置を示すインデックステーブル、各タイルのエントロピー符号という順で並んでいる。
図30は、JPEG−XRの符号構成を仮想的なプログラム(以降の図でも同様)で表した図である。
図31は、イメージヘッダをプログラムで表した図である。図31に示すように、プレフィルタの有無や画像サイズ、タイルサイズ等のパラメータが格納されている。
図31に示すように
画像の幅 = WIDTH_MINUS1 +1 ・・・式(32)
画像の高さ = HEIGHT_MINUS1 +1 ・・・式(33)
で画像の幅と高さが求められる。また、
垂直方向のタイル数 = NUM_VERT_TILES_MINUS1 +1 ・・・式(34)
水平方向のタイル数 = NUM_HORIZ_TILES_MINUS1 +1 ・・・式(35)
で水平、垂直方向のタイル数が求められる。この結果、画像の総タイル数は
N =(NUM_VERT_TILES_MINUS1 +1)× (NUM_HORIZ_TILES_MINUS1 +1) ・・・式(36)
で与えられる。実施例1においては、各タイルに対し、左上からラスター順に番号を振ることにする。タイルの番号は1から始まりNで終わる。また本実施例においては、画像の右端や下端では端数サイズのタイルが生じうるが、各タイルのサイズは基本的に同一とする。
また、
タイルの幅TILEWIDTH = (TILEWIDTH_INMB_MINUS1+1)×16 ・・・式(37)
タイルの高さTILEHEIGHT =(TILEHEIGHT_INMB_MINUS1+1)×16 ・・・式(38)
で与えられる。
図32は、イメージプレーンヘッダをプログラムで表した図である。図32に示すように、イメージプレーンヘッダには、量子化等の条件が格納されている。
図33は、インデックステーブルをプログラムで表した図である。図33に示すように、インデックステーブルには、インデックステーブルの終端から、各タイルのエントロピー符号へのオフセット値が格納されている(最初のタイルへのオフセット値は0である)。
図34は、タイルの符号をプログラムで表した図である。各タイルのエントロピー符号を「マクロブロックの場所→周波数」の順で並べる場合(スペーシャルモード)と、「周波数毎→マクロブロック場所毎」の順で並べる場合(周波数モード)の2通りがあるが、ここではスペーシャルモードを採用している。図35は、2通り(スペーシャルモードと周波数モード)のタイルの符号の配列を示す図である。
また、図36は、スペーシャルモードのタイルの符号の詳細をプログラムで表した図である。図36に示すように、冒頭にTILE_STARTCODEが位置する。このTILE_STARTCODEは、もともと各タイルのエントロピー符号の始まりを表す所定24ビットのマーカに過ぎないが、実施例1においては、このTILE_STARTCODEに、各タイルの番号Nを入力している。
<実施例2における所定の画像領域に対応する符号の抽出処理について>
図37は、実施例2に係る情報処理装置において、所定の画像領域に対応する符号の抽出処理を説明するためのフローチャートである。ここでは、抽出手段202や選択手段204は、タイルを抽出し、送信手段205が、タイルに相当するパケットを取得し送信することにする。
なお、抽出手段202は、タイルに対応する符号を抽出するようにしてもよい。また、図37に示す処理において、図18に示す処理と同様の処理を行なうものは図18と同様の符号を付し、その説明を省略する。
ステップ401では、抽出手段202が、受付手段201より取得した情報をもとに、解像度を算出する。解像度の算出の仕方については図39を用いて後述する。
ステップ402では、抽出手段202が、記憶手段203に記憶される符号中のイメージヘッダからタイルサイズを読み取り、算出した解像度以下のすべての解像度に関し、受付手段201より取得したroff、rsizeから、表示領域を包含するタイルを選定し、抽出する。
ステップ104の判定結果がYESである場合、ステップ403に進み、選択手段204が、ステップ402で抽出したタイルに隣接するタイルも抽出する。ステップ104の判定結果がNOである場合、選択手段204は、隣接するタイルを追加しない。
なお、隣接するタイルとは、抽出手段202により抽出されたタイルの上端、下端、左端、右端に隣接するタイルだけでなく左上頂点、右上頂点、左下頂点、右下頂点を共有するタイルも含まれる。
ステップ403に続いてステップ404に進み、選択手段204は、抽出手段202、選択手段204が抽出したタイル以外のタイルのエントロピー符号を破棄する。
ステップ404に続いてステップ405に進み、選択手段204が、選択したタイルの符号用にインデックステーブルを書き換える。図38は、インデックステーブルの書き換えの例を示す図である。図38に示すように、7番〜12番までのタイルだけが必要な場合は、これらのタイルのエントロピー符号だけ残し、インデックステーブルは、順にこれらを指すように修正する。これらの処理によって、原符号からエントロピー復号なしに表示に必要な部分符号が生成される。
ステップ405に続いてステップ406に進み、送信手段205が、生成された部分符号を、クライアントPC104に送信する。
<解像度算出処理について>
ステップ401において、抽出手段202により行なわれる解像度算出について説明する。図39は、解像度算出処理のフローチャートである。図39に示す処理で、図19と同じ処理を行うものは、同じ符号を付し、その説明を省略する。
ステップ202に続いてステップ501に進み、解像度判定に用いるmの値を算出する。解像度判定に用いるmは、
m = max [ fx / Xsize , fy / Ysize] ・・・式(39)
の算出式で求められる。
ステップ501に続いてステップ502に進み、mが1/16以下であるか否かを判定する。ステップ502の判定結果がYESである場合、ステップ503に進み、必要な解像度はDC符号のみであると決定する。
ステップ502の判定結果がNOである場合、ステップ504に進み、mが1/4以下であるか否かを判定する。ステップ504の判定結果がYESである場合、ステップ505に進み、必要な解像度は、DC符号とLP符号のみであると決定する。
ステップ504の判定結果がNOである場合、ステップ506に進み、必要な解像度は全ての符号(DC、LP、HP、Flexbits全ての符号)であると決定する。
以上の処理により、必要な解像度を求めることができる。
以上、実施例2における情報処理装置によれば、所定の画像領域を指定された情報処理装置において、適切なポストフィルタ処理をするか否かの目的に応じて、所定の画像領域に対応する符号を抽出することができる。つまり、JPEG−XRで符号化された符号に対して、情報処理装置側で、隣接するタイルを含めることで画質を優先するか、隣接するタイルを含めずトラフィック低減を優先するかを決めるができる。
また、画質優先かトラフィック低減優先かをクライアント側で決定し、決定された内容を示す信号を受信することでクライアント側の要望に応じて画質優先かトラフィック低減優先かを選択することができる。
また、タイルの符号の復号化に影響を与える符号を、タイルの水平方向、又は垂直方向に接するタイルの符号であることを決めておくことで、表示領域の境界の画質選択に際し、符号抽出を容易に行うことができる。
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
なお、実施例1又は実施例2において説明した処理内容をプログラムとして記録媒体に記録し、このプログラムが記録された記録媒体をコンピュータに読み取らせて前述した処理を情報処理装置に実行させることも可能である。また、本発明に係る情報処理装置では、クライアントPCは必ずしも必要ではなく、自装置で所定の領域を指定し、自装置内に記憶する符号から所定の領域に対応する符号を抽出して復号し、表示するようにしてもよい。
JPEG2000の圧縮・伸張処理のフローチャート。 原画像と座標系の例を示す図。 垂直方向へのフィルタリング後の係数の配列を示す図。 水平方向へのフィルタリング後の係数の配列を示す図。 並び替えた後の係数の配列を示す図。 2回の変換後、並び替えた係数の配列を示す図。 デコンポジションレベルと解像度レベルの関係を示す図。 画像、タイル、サブバンド、プリシンクト、コードブロックの関係を示す図。 レイヤとパケットの例を示す図。 プログレッションオーダを示す図。 レイヤプログレッシブ符号の概要を示す図。 LRCPのパケット配列を示す図。 解像度プログレッシブ符号の概要を示す図。 RLCPのパケット配列を示す図。 本発明に係る情報処理装置の概略構成を示す図。 実施例1に係る情報処理装置の主要機能構成を示すブロック図。 リクエストウィンドウとそれに対応したプリシンクトの例を示す図。 実施例1における全体の処理を示すフローチャート。 実施例1における解像度レベル算出処理のフローチャート。 プリシンクト追加処理のフローチャート。 JPEG−XRの圧縮・伸張処理のフローチャート。 JPEG−XRにおける画像、タイル、マクロブロック、ブロック、画素の関係を示す図。 JPEG−XRの色変換を示す図。 プレフィルタをかける4×4画素と、周波数変換をする4×4画素の位置関係を示す図。 プレフィルタの式を仮想的なプログラムで表した図。 DC係数、LP係数、HP係数の階層的な位置関係を示す図。 周波数係数を仮想的なプログラムで表した図。 周波数係数を仮想的なプログラムで表した図。 全体画像の符号構成を示す図。 JPEG−XRにおける全体画像の符号構成をプログラムで表した図。 JPEG−XRにおけるイメージヘッダをプログラムで表した図。 JPEG−XRにおけるイメージプレーンヘッダをプログラムで表した図。 JPEG−XRにおけるインデックステーブルをプログラムで表した図。 JPEG−XRにおける各タイルの符号をプログラムで表した図。 JPEG−XRにおける2通りのタイル符号の配列を示す図。 JPEG−XRにおけるタイルの符号の詳細をプログラムで表した図。 実施例2における符号の抽出処理のフローチャート。 インデックステーブルの書き換えの例を示す図。 解像度算出処理のフローチャート。
符号の説明
100、200 情報処理装置
101 HDD
102 RAM
103 CPU
104 クライアントPC
201 受付手段
202 抽出手段
203 記憶手段
204 選択手段
205 送信手段

Claims (10)

  1. 画像を矩形領域に分割し、分割された矩形領域の画素に対して周波数変換を行い、周波数変換後の前記矩形領域を更に矩形の区画に分割し、分割された区画の係数に基づいてエントロピー符号化された符号を記憶する情報処理装置であって、
    前記画像における所定の画像領域を受け付ける受付手段と、
    前記受付手段により受け付けた画像領域に対応する、1つ又は複数の前記区画を第1の区画群とし、該第1の区画群の符号を抽出する抽出手段と、
    前記第1の区画群の係数を求めるための周波数変換で用いられた画素値の係数を有する 区画であり、前記第1の区画群と異なる区画の符号を、前記抽出手段により抽出される符号と共に抽出するか否かを選択可能とする選択手段と
    を備える情報処理装置。
  2. 前記受付手段は、
    前記第1の区画群と異なる区画の符号を抽出するか否かを示す信号を受け付け、
    前記選択手段は、
    前記受付手段により受け付けた信号に基づいて、前記第1の区画群と異なる区画の符号を、前記抽出手段により抽出される符号と共に抽出するか否かを選択する請求項1記載の情報処理装置。
  3. 前記第1の区画群と異なる区画は、前記第1の区画群に隣接する区画である請求項1又は2記載の情報処理装置。
  4. 画像を矩形領域に分割し、分割された矩形領域の画素に対して前記矩形領域に隣接した矩形領域の画素を用いてフィルタ演算し、フィルタ演算後の画素に対して周波数変換及び符号化が行なわれた符号を記憶する情報処理装置であって、
    前記画像における所定の画像領域を受け付ける受付手段と、
    前記受付手段により受け付けた画像領域に対応する、1つ又は複数の前記矩形領域を第1の矩形領域群とし、該第1の矩形領域群の符号を抽出する抽出手段と、
    前記第1の矩形領域群の画素をフィルタ演算する際に用いられた画素を有する矩形領域 であり、前記第1の矩形領域群と異なる矩形領域の符号を、前記抽出手段により抽出される符号と共に抽出するか否かを選択可能とする選択手段と
    を備える情報処理装置。
  5. 前記受付手段は、
    前記第1の矩形領域群と異なる矩形領域の符号を抽出するか否かを示す信号を入力し、
    前記選択手段は、
    前記受付手段により受け付けた信号に基づいて、前記第1の矩形領域群と異なる矩形領域の符号を、前記抽出手段により抽出される符号と共に抽出するか否かを選択する請求項4記載の情報処理装置。
  6. 前記第1の矩形領域群と異なる矩形領域は、前記第1の矩形領域群に隣接する矩形領域である請求項4又は5記載の情報処理装置。
  7. 画像を矩形領域に分割し、分割された矩形領域の画素に対して周波数変換を行い、周波数変換後の前記矩形領域を更に矩形の区画に分割し、分割された区画の係数に基づいてエントロピー符号化された符号を記憶する情報処理装置における情報処理方法であって、
    前記画像における所定の画像領域を受け付ける受付ステップと、
    前記受付ステップにより受け付けた画像領域に対応する、1つ又は複数の前記区画を第1の区画群とし、該第1の区画群の符号を抽出する抽出ステップと、
    前記第1の区画群の係数を求めるための周波数変換で用いられた画素値の係数を有する 区画であり、前記第1の区画群と異なる区画の符号を、前記抽出ステップにより抽出される符号と共に抽出するか否かを選択可能とする選択ステップと
    を有する情報処理方法。
  8. 画像を矩形領域に分割し、分割された矩形領域の画素に対して前記矩形領域に隣接した矩形領域の画素を用いてフィルタ演算し、フィルタ演算後の画素に対して周波数変換及び
    符号化が行なわれた符号を記憶する情報処理装置における情報処理方法であって、
    前記画像における所定の画像領域を受け付ける受付ステップと、
    前記受付ステップにより受け付けた画像領域に対応する、1つ又は複数の前記矩形領域を第1の矩形領域群とし、該第1の矩形領域群の符号を抽出する抽出ステップと、
    前記第1の矩形領域群の画素をフィルタ演算する際に用いられた画素を有する矩形領域 であり、前記第1の矩形領域群と異なる矩形領域の符号を、前記抽出手段により抽出される符号と共に抽出するか否かを選択可能とする選択ステップと
    を有する情報処理方法。
  9. 請求項7または請求項8記載の情報処理方法が記載された、コンピュータにより実行可能なプログラム。
  10. 請求項9記載のプログラムを記録した、コンピュータにより読み取り可能な記録媒体。
JP2008128850A 2008-05-15 2008-05-15 情報処理装置、情報処理方法、プログラム及び記録媒体 Expired - Fee Related JP5167944B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008128850A JP5167944B2 (ja) 2008-05-15 2008-05-15 情報処理装置、情報処理方法、プログラム及び記録媒体
US12/453,581 US8559735B2 (en) 2008-05-15 2009-05-15 Information processing apparatus for extracting codes corresponding to an image area

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008128850A JP5167944B2 (ja) 2008-05-15 2008-05-15 情報処理装置、情報処理方法、プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2009278472A JP2009278472A (ja) 2009-11-26
JP5167944B2 true JP5167944B2 (ja) 2013-03-21

Family

ID=41316243

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008128850A Expired - Fee Related JP5167944B2 (ja) 2008-05-15 2008-05-15 情報処理装置、情報処理方法、プログラム及び記録媒体

Country Status (2)

Country Link
US (1) US8559735B2 (ja)
JP (1) JP5167944B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5199956B2 (ja) * 2009-06-16 2013-05-15 キヤノン株式会社 画像復号装置及びその制御方法
JP5199955B2 (ja) * 2009-06-16 2013-05-15 キヤノン株式会社 画像復号装置及びその制御方法
JP2012060261A (ja) 2010-09-06 2012-03-22 Sony Corp 画像処理装置および方法
JP5267585B2 (ja) * 2011-01-27 2013-08-21 株式会社アクセル 画像処理方法及び画像処理装置
JP5843450B2 (ja) * 2011-02-25 2016-01-13 キヤノン株式会社 画像処理装置及びその制御方法
JP5801614B2 (ja) * 2011-06-09 2015-10-28 キヤノン株式会社 画像処理装置、画像処理方法
JP5839848B2 (ja) 2011-06-13 2016-01-06 キヤノン株式会社 画像処理装置、画像処理方法
KR101197103B1 (ko) * 2012-03-09 2012-11-07 (주) 지솔루션 위성압축영상 분할처리 장치 및 그 방법
JP2024074521A (ja) 2022-11-21 2024-05-31 株式会社リコー 画像処理装置、画像処理方法及びプログラム

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11205786A (ja) 1997-12-25 1999-07-30 Hewlett Packard Co <Hp> 動画データの格納形式、動画データ転送システム、動画表示方法および記憶媒体
JP3464767B2 (ja) * 1998-12-29 2003-11-10 ソニー株式会社 ウェーブレット復号装置及び方法
JP2000341689A (ja) * 1999-05-27 2000-12-08 Sony Corp ウェーブレット逆変換装置及び方法、並びにウェーブレット復号装置及び方法
JP4010752B2 (ja) * 2000-07-26 2007-11-21 株式会社リコー 画像処理装置と画像処理方法及びコンピュータ読み取り可能な記録媒体
US7407095B1 (en) * 2000-07-31 2008-08-05 Symbol Technologies, Inc. IPOS transaction terminal
JP2002149153A (ja) * 2000-11-10 2002-05-24 Canon Inc 画像処理装置、画像処理システム、画像処理方法、及び記憶媒体
US7013049B2 (en) * 2001-02-28 2006-03-14 Ricoh Company, Ltd. Image processing scheme
US7127117B2 (en) * 2001-06-11 2006-10-24 Ricoh Company, Ltd. Image compression method and apparatus for suppressing quantization rate in particular region, image expansion method and apparatus therefor, and computer-readable storage medium storing program for the compression or expansion
US7581027B2 (en) 2001-06-27 2009-08-25 Ricoh Co., Ltd. JPEG 2000 for efficent imaging in a client/server environment
AUPR662601A0 (en) * 2001-07-26 2001-08-16 Canon Kabushiki Kaisha Inverse discrete wavelet transforms for data decompression
EP1349393A1 (en) * 2002-03-15 2003-10-01 Ricoh Company Image compression device, image decompression device, image compression/decompression device, program for executing on a computer to perform functions of such devices, and recording medium storing such a program
US7228000B2 (en) * 2002-03-15 2007-06-05 Ricoh Co., Ltd. Image data generation with reduced amount of processing
JP4086728B2 (ja) * 2002-07-03 2008-05-14 株式会社リコー 画像通信方法及びシステム
JP2004056213A (ja) * 2002-07-16 2004-02-19 Nikon Corp 画像伸張装置、および画像伸張プログラム
US7330596B2 (en) * 2002-07-17 2008-02-12 Ricoh Company, Ltd. Image decoding technique for suppressing tile boundary distortion
JP3988990B2 (ja) 2002-08-27 2007-10-10 株式会社リコー 符号変換装置、符号変換方法、プログラム及び記録媒体
JP2004104650A (ja) * 2002-09-12 2004-04-02 Ricoh Co Ltd 画像処理装置、画像読取装置、画像形成装置、画像処理用プログラム及び記憶媒体
US7450768B2 (en) * 2002-10-02 2008-11-11 Ricoh Company, Ltd. Apparatus and method for processing image data based on object movement speed within a frame
JP3928859B2 (ja) * 2002-11-11 2007-06-13 株式会社リコー 画像処理装置、画像処理方法、プログラム及び記録媒体
JP4189952B2 (ja) * 2002-11-22 2008-12-03 株式会社リコー 符号化復号化装置、符号化復号化用プログラム及び記憶媒体
JP2004215021A (ja) * 2003-01-06 2004-07-29 Ricoh Co Ltd 画像処理装置、画像処理方法、プログラム及び記録媒体
JP2004236299A (ja) * 2003-01-07 2004-08-19 Ricoh Co Ltd 画像処理装置、画像形成装置、画像処理方法、プログラム及び記憶媒体
JP2004242290A (ja) * 2003-01-14 2004-08-26 Ricoh Co Ltd 画像処理装置および画像処理方法、画像編集処理システム、画像処理プログラム及び記憶媒体
JP4148462B2 (ja) * 2003-01-20 2008-09-10 株式会社リコー 画像処理装置、電子カメラ装置及び画像処理方法
JP4111923B2 (ja) * 2003-01-22 2008-07-02 株式会社リコー データ形式可逆変換方法、画像処理装置、データ形式可逆変換用プログラム及び記憶媒体
JP4136951B2 (ja) 2003-01-31 2008-08-20 株式会社リコー 画像処理装置、プログラム及び記憶媒体
JP3948619B2 (ja) * 2003-03-31 2007-07-25 株式会社リコー 画像圧縮装置、画像圧縮方法、プログラム及び記録媒体
JP4017112B2 (ja) * 2003-04-30 2007-12-05 株式会社リコー 符号化データ生成装置及び方法、プログラム並びに情報記録媒体
JP4229323B2 (ja) * 2003-09-05 2009-02-25 株式会社リコー 符号化装置、符号化方法及びプログラム
US7440626B2 (en) * 2004-12-02 2008-10-21 Mitsubishi Electric Research Laboratories, Inc. Image transcoding
US7305139B2 (en) * 2004-12-17 2007-12-04 Microsoft Corporation Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
US7428342B2 (en) * 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
JP4530274B2 (ja) * 2005-01-11 2010-08-25 株式会社リコー 符号処理装置、符号処理方法、プログラム及び情報記録媒体
US20060269151A1 (en) * 2005-05-25 2006-11-30 Hiroyuki Sakuyama Encoding method and encoding apparatus

Also Published As

Publication number Publication date
JP2009278472A (ja) 2009-11-26
US20090285498A1 (en) 2009-11-19
US8559735B2 (en) 2013-10-15

Similar Documents

Publication Publication Date Title
JP5167944B2 (ja) 情報処理装置、情報処理方法、プログラム及び記録媒体
JP4204165B2 (ja) 画像圧縮装置
JP4530274B2 (ja) 符号処理装置、符号処理方法、プログラム及び情報記録媒体
JP3988990B2 (ja) 符号変換装置、符号変換方法、プログラム及び記録媒体
US20040013312A1 (en) Moving image coding apparatus, moving image decoding apparatus, and methods therefor
US7865028B2 (en) Code processing apparatus and code processing method
JP2004166254A (ja) 画像符号化装置及び方法、並びにプログラム及び記録媒体
JP2007142614A (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP4379869B2 (ja) 動画像処理装置、プログラム及び情報記録媒体
JP5127557B2 (ja) 画像復号装置、画像復号方法、プログラム、及び、記録媒体
WO2006006077A1 (en) Conditional replenishment for motion jpeg2000
JP4812071B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
JP2010045589A (ja) 画像処理装置、画像処理方法およびプログラム
JP4489474B2 (ja) 画像処理装置、プログラムおよび記録媒体
KR20110099238A (ko) 동화상 데이터의 압축 방법
JP4194472B2 (ja) 画像処理方法及び装置
JP4688164B2 (ja) 画像処理装置、画像処理方法、プログラム及び情報記録媒体
CN113179408B (zh) 一种图像编解码方法及装置
JP2002176561A (ja) 画像処理装置及びその方法、コンピュータ可読メモリ
JP2010074446A (ja) 画像配信装置、画像表示装置、画像配信方法、画像表示方法、コンピュータプログラム、及び、情報記録媒体
JP2007014002A (ja) 画像処理装置、画像処理用プログラム及び記録媒体
JP4934081B2 (ja) 符号化装置、符号処理装置、符号化方法、符号処理方法、コンピュータプログラム及び記録媒体
JP3989801B2 (ja) 画像処理装置、画像処理用プログラム及び記憶媒体
JP4743613B2 (ja) 符号生成装置、ファイル生成装置、符号処理装置、プログラム、情報記録媒体
JP4280752B2 (ja) コンピュータ等の画像処理装置、画像処理用プログラム及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120416

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121210

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160111

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees