JP4208122B2 - Data processing apparatus and data processing method - Google Patents

Data processing apparatus and data processing method Download PDF

Info

Publication number
JP4208122B2
JP4208122B2 JP2003076835A JP2003076835A JP4208122B2 JP 4208122 B2 JP4208122 B2 JP 4208122B2 JP 2003076835 A JP2003076835 A JP 2003076835A JP 2003076835 A JP2003076835 A JP 2003076835A JP 4208122 B2 JP4208122 B2 JP 4208122B2
Authority
JP
Japan
Prior art keywords
data
output
image data
compressed image
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
Application number
JP2003076835A
Other languages
Japanese (ja)
Other versions
JP2004289333A (en
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 JP2003076835A priority Critical patent/JP4208122B2/en
Publication of JP2004289333A publication Critical patent/JP2004289333A/en
Application granted granted Critical
Publication of JP4208122B2 publication Critical patent/JP4208122B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、プレゼンテーションなどのために、予め定めた手順に従って静止画や動画などのデータを表示又は配信するためのデータ処理装置及び方法に関する。
【0002】
【従来の技術】
画像、グラフ、表、テキスト、音声などの素材を用いたプレゼンテーションには、Microsoft社のPowerPoint(登録商標)やApple社のKeynote(登録商標)などに代表される、いわゆるプレゼンテーション・ソフトウェアが利用されることが多い。このようなプレゼンテーション・ソフトウェアは、基本的に、各種素材を表示したいサイズなどに加工し、それを表示したい順に順序付けするなど、プレゼンテーションのための資料を予め編集しておくものである。
【0003】
画像は圧縮された状態で蓄積又は伝送されることが多い。静止画の圧縮にはJPEGが、動画の圧縮にはMPEGやMotion−JPEGが広く利用されているが、新しい圧縮方式としてウェーブレット変換を利用するJPEG2000が注目されている(例えば非特許文献1参照)。
【0004】
JPEG2000の圧縮アルゴリズムは基本仕様(ISO/IEC FCD 15444−1)に規定されている。JPEG2000の動画のファィルフォーマットなどは、拡張仕様(ISO/IEC FCD 15444−3)に規定されている。JPEG2000の動画では、各フレームが、前後のフレームから独立した静止画として、JPEG2000の基本仕様に規定されたアルゴリズムにより圧縮される。
【0005】
【非特許文献1】
野水泰之著、「次世代画像符号化方式JPEG2000」、株式会社トリケップス、2001年2月13日
【0006】
【発明が解決しようとする課題】
JPEG2000の圧縮画像データは、圧縮前の画像と異なった解像度、サイズ、画質、色などで伸長することができ、また、符号状態のままで解像度、サイズ、画質、色などを変更した圧縮画像データに変換することができる。
【0007】
本発明は、このようなJPEG2000の圧縮画像データの特性に着目し、JPEG2000の圧縮画像データを含むデータ群を用いた多様なプレゼンテーションなどを、それらデータを予め編集することなく実行できるようにする新規なデータ処理装置及び方法を提供することを目的とする。
【0008】
【課題を解決するための手段】
本発明によるデータ処理装置は、請求項1に記載のように、JPEG2000の圧縮画像データ(以下、単に圧縮画像データ)を処理するデータ処理装置であって、時間軸に沿って出力すべきデータの指定及び出力条件を定義した出力手順を記憶した記憶手段と、前記出力手順に定義されたデータの指定に従って所定の圧縮画像データを取り込むデータ取得手段と、前記取り込まれた圧縮画像データについて、前記出力手順に定義された出力条件に従って、当該圧縮画像データのヘッダ情報中の所定マーカセグメントのパラメータを書き換えて、前記出力条件に従った別の圧縮画像データを生成する出力データ生成手段とを有することを特徴とする。
【0009】
本発明によるデータ処理装置のもう1つの特徴は、請求項2に記載のように、請求項1に記載の構成において、前記出力データ生成手段は、前記出力手順に定義された出力条件に従って、前記ヘッダ情報中の画像の解像度、サイズ、画質、タイル位置、色、ROI領域、変形の一部又は全部に関係するマーカセグメントのパラメータを書き換えることにある。
【0010】
本発明によるデータ処理装置のもう1つの特徴は、請求項3に記載のように、請求項1又は2に記載の構成において、前記出力データ生成手段は、前記出力手順定義された出力条件に従って、さらに前記圧縮画像データ中の不要な符号を廃棄することにある。
【0011】
本発明によるデータ処理装置のもう1つの特徴は、請求項4に記載のように、請求項1乃至3のいずれか1項に記載の構成において、前記生成された圧縮画像データをイメージデータに伸長する伸長手段をさらに有するにある。
【0012】
本発明によりデータ処理装置のもう1つの特徴は、請求項5に記載のように、請求項1乃至3のいずれか1項に記載の構成において、前記生成された圧縮画像データを別の装置へ送信する送信手段をさらに有するにある。
【0013】
本発明によるデータ処理方法は、請求項6に記載のように、時間軸に沿って出力すべきデータの指定及び出力条件を定義した出力手順に従って、JPEG2000の圧縮画像データ(以下、単に圧縮画像データ)を処理するデータ処理方法であって、前記出力手順に定義されたデータの指定に従って所定の圧縮画像データを取り込むデータ取得ステップと、前記取り込まれた圧縮画像データについて、前記出力手順に定義された出力条件に従って、当該圧縮画像データのヘッダ情報中の所定マーカセグメントのパラメータを書き換えて、前記出力条件に従った別の圧縮画像データを生成する出力データ生成ステップとを有することを特徴とする。
【0014】
本発明によるデータ処理方法のもう1つの特徴は、請求項7に記載のように、請求項6に記載の構成において、前記出力データ生成ステップは、前記出力手順に定義された出力条件に従って、前記ヘッダ情報中の画像の解像度、サイズ、画質、タイル位置、色、ROI領域、変形の一部又は全部に関係するマーカセグメントのパラメータを書き換えることにある。
【0015】
本発明によるデータ処理方法のもう1つの特徴は、請求項8に記載のように、請求項6又は7に記載の構成において、前記出力データ生成ステップは、前記出力手順定義された出力条件に従って、さらに前記圧縮画像データ中の不要な符号を廃棄することにある。
【0016】
本発明によるデータ処理方法のもう1つの特徴は、請求項9に記載のように、請求項6乃至8のいずれか1項に記載の構成において、前記生成された圧縮画像データをイメージデータに伸長する伸長ステップをさらに有することにある。
【0017】
本発明によるデータ処理方法のもう1つの特徴は、請求項10に記載のように、請求項6乃至8のいずれか1項に記載の構成において、前記生成された圧縮画像データを別の装置へ送信する送信ステップをさらに有することにある。
【0018】
【発明の実施の形態】
以下の説明の理解を容易にするため、JPEG2000について概説する。
【0019】
図16は、JPEG2000の圧縮/伸長のアルゴリズムを説明するためのブロック図である。圧縮処理の対象となる画像データデータは、各コンポーネント毎に、重複しない矩形領域(タイル)に分割され、各コンポーネント毎にタイル単位で処理される。ただし、画像全体を1つのタイルとして処理することも可能である。
【0020】
各コンポーネントの各タイル画像は、色空間変換/逆変換部1で、圧縮率の向上を目的として、RGBデータやCMYデータからYCrCbデータへの色空間変換を施される。この色空間変換が省かれる場合もある。
【0021】
色空間変換後のタイル画像は、ウェーブレット変換/逆変換部2により、2次元のウェーブレット変換(離散ウェーブレット変換)を施され、複数のサブバンドに分解される。
【0022】
図17はデコンポジションレベル数が3の場合のウェーブレット変換の説明図である。図17(a)に示すタイル画像(デコンポジションレベル0)に対する2次元ウェーブレット変換により、図17(b)に示すような1LL,1HL,1LH,1HHの各サブバンドに分割される。1LLサブバンドの係数に対し2次元ウェーブレット変換が適用されることにより、図17(c)に示すように2LL,2HL,2LH,2HHのサブバンドに分割される。2LLサブバンドの係数に対し2次元ウェーブレット変換が適用されることにより、図17(d)に示すように3LL,3HL,3LH,3HHのサブバンドに分割される。デコンポジションレベルと解像度レベルとの関係であるが、図17(d)の各サブバンド内に括弧で囲んで示した数字が、そのサブバンドの解像度レベルである。
【0023】
このような低周波成分(LLサブバンド係数)の再帰的分割(オクターブ分割)により得られたウェーブレット係数は、量子化/逆量子化部3でサブバンド毎に量子化される。JPEG2000ではロスレス(可逆)圧縮とロッシー(非可逆)圧縮のいずれも可能であり、ロスレス圧縮の場合には量子化ステップ幅は常に1であり、この段階では実質的に量子化されない。
【0024】
量子化後の各サブバンド係数は、エントロピー符号化/復号化部4でエントロピー符号化される。このエントロピー符号化には、ブロック分割、係数モデリング及び2値算術符号化からなるEBCOT(Embedded Block Coding with Optimized Truncation)と呼ばれるブロックベースのビットプレーン符号化方式が用いられる。量子化後の各サブバンド係数のビットプレーンが、上位ビットから下位ビットへ向かって、コードブロックと呼ばれるブロック毎に符号化される。
【0025】
タグ処理部5において、エントロピー符号化/復号化部4で生成されたコードブロックの符号がまとめられてパケットが作成され、次に、パケットがプログレッション順序に従って並べられるとともに必要なタグ及びタグ情報が付加されることにより、所定フォーマットの符号化データ(圧縮画像データ)が作成される。JPEG2000では、符号順序制御に関して、解像度レベル、位置(プレシンクト)、レイヤ、コンポーネント(色成分)の組み合わせによる5種類のプログレッション順序が定義されている。
【0026】
このようにして生成されるJPEG2000の符号化データのフォーマットを図18に示す。図18に見られるように、符号化データはその始まりを示すSOCマーカと呼ばれるタグで始まり、その後に符号化パラメータや量子化パラメータ等を記述したメインヘッダ(Main Header)と呼ばれるタグ情報が続き、その後に各タイル毎の符号データが続く。各タイル毎の符号データは、SOTマーカと呼ばれるタグで始まり、タイルヘッダ(Tile Header)と呼ばれるタグ情報、SODマーカと呼ばれるタグ、各タイルの符号列を内容とするタイルデータ(Tile Data)で構成される。最後のタイルデータの後に、終了を示すEOCマーカと呼ばれるタグが置かれる。
【0027】
図19にメインヘッダの構成を示す。SIZ,COD,QCDの各マーカセグメントは必須であるが、他のマーカセグメントはオプションである。図20にタイルヘッダの構成を示す。図20において、(a)はタイルデータの先頭に付加されるヘッダの構成を示し、(b)はタイル内が複数に分割されている場合に分割されたタイル部分列の先頭に付加されるヘッダの構成を示す。タイルヘッダでは必須のマーカセグメントはなく、すべてオプションである。SOTマーカセグメントの構成を図21に、SIZマーカセグメントの構成を図22に、CODマーカセグメントの構成を図23に、CRGマーカセグメントの構成を図24に、RGNマーカセグメントの構成を図25にそれぞれ示す。
【0028】
JPEG2000の符号化データの伸長処理は圧縮処理と逆の処理となる。符号化データはタグ処理部5で各コンポーネントの各タイルの符号列に分解される。この符号列はエントロピー符号化/復号化部4によってエントロピー復号される。復号されたウェーブレット係数は量子化/逆量子化部3で逆量子化されたのち、ウェーブレット変換/逆変換部2で2次元の逆ウェーブレット変換を施されることにより、各コンポーネントの各タイルの画像が再生される。各コンポーネントの各タイル画像は色空間変換/逆変換部1で逆色変換処理を施されてRGBなどのコンポーネントから構成されるタイル画像に戻される。
【0029】
さて、JPEG2000においては、画像は複数の領域に分割され、各分割領域は依存関係にない状態で圧縮されるが、分割領域として前記のタイルとコードブロックのほかにプレシンクトがあり、画像≧タイル≧サブバンド≧プレシンクト≧コードブロックの大きさ関係がある。プレシンクトに含まれる全てのコードブロックの符号の一部(例えば最上位から3ビット目までの3枚のビットプレーンの符号)を取り出して集めたものがパケットである。符号が空(から)のパケットも許される。コードブロックの符号をまとめてパケットを生成し、所望のプログレッション順序に従ってパケットを並べることにより符号化データを形成する。図18中の各タイルに関するSOD以下の部分がパケットの集合である。
【0030】
JPEG2000の符号化データはレイヤ構造を持たせることができる。全てのプレシンクト(つまり、全てのコードブロック、全てのサブバンド)のパケットを集めると、画像全域の符号の一部(例えば、画像全域のウェーブレット係数の最上位のビットプレーンから3枚目までのビットプレーンの符号)ができるが、これがレイヤである。したがって、伸長時に復号されるレイヤの数が多いほど再生画像の画質は向上する。つまり、レイヤは画質の単位と言える。全てのレイヤを集めると、画像全域の全てのビットプレーンの符号になる。
【0031】
以上説明したJPEG2000の符号化データを構成するパケットは領域、画質、コンポーネント、解像度の各インデックスを持っているため、符号状態で領域、画質、コンポーネント、解像度の各パラメータで符号の取捨選択が可能である。すなわち、ある符号化データを、伸長することなく、つまり符号状態のままで、符号の選択的削除(及び必要なタグ情報の書き換え)により、再生時の領域、画質、コンポーネント、解像度を変更した符号化データに変換することができる。
【0032】
また、後に具体的に述べるように、JPEG2000符号化データは、符号そのものを変更することなく、タグ情報(ヘッダ情報)の書き換えのみによって、再生時の解像度、画質、コンポーネント、領域を変更した符号化データに変換することもできる。
【0033】
また、JPEG2000は、画像全体の圧縮率を下げることなく、特定の領域の圧縮率を下げる(高画質化する)選択的領域画質向上機能(ROI)がある。JPEG2000の基本仕様では、ROI領域のウェーブレット係数をビットシフトするMax Shift方式と呼ばれるROI方式が規定されている。
【0034】
図1は、本発明の第1の実施形態を説明するためのブロック図である。この実施形態に係るデータ処理装置は、表示装置131に表示されるイメージデータを生成する構成であり、データ取得部101、出力データ生成部102、システム制御部105、出力手順ファイル122を有する。121は出力手順ファイル122を保存するための記憶部である。
【0035】
130は出力データ生成部102が生成したイメージデータ(出力データ)を書き込むビデオメモリ部であり、ここに書き込まれたイメージデータが表示装置131の画面に表示される。120はデータ・ソースであり、少なくともJPEG2000により圧縮された画像(静止画又は動画)データを含むデータ群をファイルとして蓄積している。なお、データ・ソース120は、ローカルな記憶装置であったり、LAN、イントラネット、インターネットなどのネットワーク上のファイルサーバーなどである。
【0036】
システム制御部105は、データ処理装置の全体的な動作を制御する手段である。また、システム制御部105は、出力手順ファイル122に記述された出力手順の内容を取り込んで解釈し、出力手順中に時間軸に沿って定義されたデータの指定及び出力条件を、時間経過に従ってデータ取得部101及び出力データ生成部102へそれぞれ通知する手段でもある。
【0037】
データ取得部101は、システム制御部105より渡されたデータの指定に従って、1つ又は複数のデータソース120に蓄積されているデータ群より必要なデータを取り込み、それを出力データ生成部102に入力する手段である。
【0038】
出力データ生成部103は、データ取得部101より入力されるデータから、システム制御部105より渡された出力条件に従ったイメージデータ(出力データ)を生成する手段であり、データ処理部103とJPEG2000デコーダ104とからなる。JPEG2000デコーダ104は、JPEG2000による圧縮画像データをイメージデータに伸長する手段である。データ処理部103は、圧縮画像データをJPEG2000デコーダ104へ渡してイメージデータに伸長させ、テキストデータをイメージデータへ展開し、得られたイメージデータをビデオメモリ部130に書き込む。データ処理部103は、出力条件に従って、JPEG2000デコーダ104の伸長動作の制御、圧縮画像データのヘッダ情報の書き換え処理、伸長又は展開されたイメージデータの変倍(間引き/補間処理)、ビデオメモリ部130に対するイメージデータの書き込み位置の制御などを行う。
【0039】
出力手順ファイル122に記述されている出力手順は、時間軸に沿って、出力(表示)するデータの指定と、そのデータの出力条件を定義したものである。データの指定とは、例えば当該データのファイル名やURLである。データの出力条件としては、例えば、当該データが圧縮画像データの場合ならば、画像の解像度、サイズ、画質、タイル位置、色、ROI領域、変形など、再生画像の見え方に直接関係する条件のほか、データの出力(表示)時間、画像やテキストのイメージが表示される画面上の位置などが定義される。
【0040】
図2は、このデータ処理装置の動作を説明するための簡略化されたフローチャートである。以下、このフローチャートに沿って動作を説明する。
【0041】
最初に、システム制御部105は出力手順を読み込む(ステップS100)。次に、システム制御部105は、その出力手順の内容を解析し、最初のデータの指定をデータ取得部101に通知し、かつ、当該データに関する出力条件を出力データ生成部102に通知する。また、当該データの種類が動画であるか否かによって当該データに関する制御手順を選択する(ステップS102)。なお、ここでは説明の煩雑化を避けるため、データの種類としてJPEG2000により圧縮された動画又は静止画のデータとテキストデータを想定して説明するが、表やグラフ、音声などのデータを除外するわけではない。
【0042】
データが静止画又はテキストの場合には、そのデータがデータ取得部101によってデータソース120より取り込まれ、出力データ生成部102に入力する(ステップS104)。
【0043】
そのデータがテキストデータの場合、データ処理部103はイメージデータに展開し、それをビデオメモリ部130に書き込むが、この際、出力条件に従ってイメージデータのサイズ及び書き込み位置(画面上での位置)を制御する(ステップS106)。そして、システム制御部105は、当該テキストの出力条件として指定された出力(表示)時間の経過を監視する(ステップS108)。
【0044】
データが静止画の圧縮データの場合、そのデータがデータ取得部101によって取り込まれて出力データ生成部102に入力し(ステップS104)、出力データ生成部102のJPEG2000デコーダ104によりイメージデータに伸長され、それがデータ処理部103により出力条件として指定されたビデオメモリ部130の位置に書き込まれる(ステップS106)。この際、データ処理部103は、出力条件として指定された解像度、サイズ、画質、色数などに従ったイメージデータを生成するために、JPEG2000デコーダ104の伸長動作の制御、各フレームの圧縮画像データのヘッダ情報の書き換え、伸長後のイメージデータの間引き/補間処理などを必要に応じて行うが(つまり、そのような制御又は処理のための手段をデータ処理部103が含んでいる)、これについては後述する。そして、システム制御部105は、当該静止画の出力条件として指定された出力(表示)時間の経過を監視する(ステップS108)。
【0045】
データが動画の圧縮データの場合、各フレームのデータがデータ取得部101によって順に取り込まれて出力データ生成部102に入力し(ステップS110)、出力データ生成部102のJPEG2000デコーダ104によりイメージデータに伸長され、それがデータ処理部103により出力条件として指定されたビデオメモリ部130の位置に書き込まれる(ステップS112)。この際、データ処理部103は、出力条件として指定された解像度、サイズ、画質、色数などに従ったイメージデータを生成するために、JPEG2000デコーダ104の伸長動作の制御、各フレームの圧縮画像データのヘッダ情報の書き換え、伸長後のイメージデータの間引き/補間処理などを必要に応じて行うが(つまり、そのような制御又は処理のための手段をデータ処理部103が含んでいる)、これについては後述する。システム制御部105は、当該動画の出力条件として指定された出力(表示)時間の経過を監視しており(ステップS114)、出力時間が経過するまではステップS110,S112を繰り返し実行させる。
【0046】
出力条件として指定された出力時間を経過すると(ステップS114又はS108、YES)、システム制御部105は出力手順を参照し、次のデータの指定があるかチェックし(ステップS116)、次のデータの指定があるならば、そのデータに関し同様の動作を開始させる。最後のデータまで処理されると(ステップS116,NO)、一連の出力データ生成動作を終了する。
【0047】
ここで、解像度、サイズ、画質、色などの出力条件に従ったイメージデータを生成するためのデータ処理部103による制御又は処理について、より具体的に説明する。
【0048】
JPEG2000においてはLRCP、RLCP、RPCL、PCRL、CPRLの5つのプログレッション順序が定義されている。ここで、Lはレイヤ、Rは解像度レベル、Cはコンポーネント、Pはプリシンクトである。
【0049】
例えばRLCPプログレッションの場合には、パケットの配置(圧縮時)又はパケットの解釈(伸長時)の順序は、R,L,C,Pの順にネストされた次のようなforループで表すことができる。
for(解像度レベル){
for(レイヤ){
for(コンポーネント){
for(プリシンクト){
パケットを配置:圧縮時
パケットを解釈:伸長時




【0050】
また、LRCPプログレッションの場合、パケットの配置(圧縮時)又はパケットの解釈(伸長時)の順序は、L,R,C,Pの順にネストされた次のようなforループで表すことができる。
for(レイヤ){
for(解像度レベル){
for(コンポーネント){
for(プリシンクト){
パケットを配置:圧縮時
パケットを解釈:伸長時




【0051】
他のプログレッション順序の場合も同様のネストされたforループにより、パケットの配置順又は解釈順が決まる。
【0052】
したがって、出力データ生成部102において、データ処理部103でJPEG2000デコーダ104の解像度レベルのforループの回数を制御することにより、伸長されるイメージデータの解像度を調整することができる。つまり、例えば図17(d)に示すようなデコンポジションレベル数が3の圧縮画像データの場合、解像度レベル0が指定されたときには3LLサブバンド係数の符号のみを復号してイメージデータを生成させ、解像度レベル1が指定されたときには3LL,3HL,3LH,3HHサブバンド係数の符号のみを復号してイメージデータを生成させ、同様に、解像度レベル3が指定されたときには3LL〜1HHの全サブバンドの係数を復号してイメージデータを生成させる。同様に、レイヤのforループの回数やコンポーネントのforループの回数を制御することにより伸長されるイメージデータの画質や色数も調整することができる。
【0053】
データ処理部103は、出力条件に従った解像度、画質、色数のイメージデータを生成させるために、上述のようなJPEG2000デコーダ104の伸長動作の制御を行う手段を含んでいる。
【0054】
出力条件に従った画像サイズの調整は、いくつかの方法で可能である。例えば、JPEG2000デコーダ104で伸長されたイメージデータに対し、間引き又は補間による変倍処理を行う方法が可能であり、そのための手段がデータ処理部103に含まれている。また、指定された解像度レベルの画像サイズより大きなサイズのイメージデータを生成したい場合に、JPEG2000デコーダ104における伸長過程において、指定された解像度レベルより高いレベルのダミーのサブバンド係数(例えばオール”0”)を挿入して逆ウェーブレット変換を実行させることにより、指定解像度レベルよりサイズの大きいイメージデータを生成できる。このようなダミーのサブバンド係数の挿入を行うための手段もデータ処理部103に含まれる。この場合においても、最終的なサイズ調整に間引き/補間による変倍処理を利用可能であることは当然である。
【0055】
また、JPEG2000デコーダ104の内部動作を直接的に制御する代わりに、圧縮画像データのヘッダ情報を書き換えることにより、JPEG2000デコーダ104の伸長動作を制御することも可能であり、このようなヘッダ情報の書き換えのための手段もデータ処理部103に含まれる。このヘッダ情報の書き換えの具体例を以下に説明する。
【0056】
(A)画像の解像度とサイズを変更する方法: CODマーカセグメント(図23)のSPcodにデコンポジションレベル数が記述されている。このデコンポジションレベル数を小さな値に書き換える。この書き換えにより、デコーダは書き換え後のデコンポジションレベル数までしか伸長を行わないため、再生される画像は元の画像よりサイズが小さな低解像度の画像になる。
【0057】
(B)簡便な画像サイズの変更方法: JPEG2000では、リファレンス・グリッド(reference grid)と呼ばれる座標軸を用いて画像の位置が表現される。メインヘッダ中のSIZマーカセグメント(図22)には、このリファレンス・グリッドの水平、垂直方向のサイズが記述されるXsiz,Ysizというパラメータがある。このXsiz,Ysizの値を書き換える。この書き換えにより、簡便な画像サイズ変更を行うことができる(画像の一部はカットされる)。図3は、その例を模式的に示している。元はXsiz=Ysiz=5であったものを、Xsiz=3、Ysiz=3に書き換えると、図3の(a)のように再生されるべき画像が(b)のように斜線の部分がカットされた小さな画像として再生される。
【0058】
(C)タイルの再生位置を変更する方法: タイルヘッダ中のSOTマーカセグメント(図21)には、ラスター順にタイルに割り当てられたタイル番号(Isot)が記述されているが、その値を書き換える。すなわち、図4の(a)のようにタイル分割されて圧縮された画像の場合に、タイル番号を書き換えることにより、例えば同図(b)のように再生画像上のタイルの並びを不整にすることができる。
【0059】
(D)画像を変形する方法: SIZマーカセグメント(図22)には、コンポーネント毎の水平、垂直方向のサンプル数が記述されるパラメータXRsiz(i)、YRsiz(i)が含まれているが、これを書き換える。この書き換えによって画像を縦横に変形させて再生させることができる。図5は、その例を模式的に示している。XRsiz(i)=YRsiz(i)=2に設定されている場合に、XRsiz(i)=1、YRsiz(i)=2に書き換えると、図5(a)のように再生されるべき画像は、水平方向に膨張した(b)のような画像として再生され、また、XRsiz(i)=4、YRsiz(i)=2に書き換えると水平方向に縮んだ(c)のような画像として再生される。
【0060】
(E)画像を変形させる別の方法: JPEG2000では、リファレンス・グリッドの原点と画像の原点との位置ずれ(オフセット)を指定することができる。SIZマーカセグメントのXOsiz、YOsizが、水平、垂直方向のオフセットが記述されるパラメータである。このXOsiz、YOsizの値を書き換える。図6は、その例を模式的に示している。XOsiz=YOsiz=0であったものをXOsiz=3、YOsiz=0に書き換えることにより、図6の(a)のように再生されるべき画像は、(b)に示すように右にシフトされ右端側が欠落した形で再生される。なお、Xsiz、Ysizの書き換えと併用することも可能である。
【0061】
(F)ROI領域以外を再生させない方法: 前述したように、JPEG2000の基本仕様では、ROI方式としてビットシフトによるMax Shift方式が規定されている。RGNマーカセグメント(図25)には、このビットシフト量が記述されるSPrgnというパラメータがある。このSPrgnを大きな値に書き換える。この書き換えにより、ROI領域のみを再生させることができる。図7は、その例を模式的に示している。(a)のようにROI領域が2ビットだけシフトされている画像(つまり、SPrgn=2)の場合に、SPrgn=10(=ROIシフト分の2ビット+通常の表示分ビット0〜7までの8ビット)に書き換えると、ビット0〜7の8ビット分は再生されない。したがって、再生画像上では、例えば同図(b)に示すように、ROI領域は再生されるが、その他の領域は再生されない。なお、タイルヘッダにRGNマーカセグメントが含まれている場合、その内容がメインヘッダ中のRGNマーカセグメントの内容より優先される。したがって、タイルヘッダ中にRGNマーカセグメントが含まれている符号化データでは、少なくとも、そのRGNマーカセグメントのSPrgnを書き換える必要がある。
【0062】
(G)画像の色再生を不正常にする方法: CODマーカセグメント(図23)にはコンポーネントに関係する符号スタイルのパラメータSGcodがある。このSGcodにはコンポーネントの色変換の有無を表す値も記述されている。この値が0ならば色変換なし、1ならば色変換ありである。この値を書き換える。この書き換えにより、画像は不正常な色で再生される。例えば、RGBからYCbCrへの色変換が行われた符号化データでは、その値は1に設定されているが、これを0に書き換えると、伸長の際にYCbCrからRGBへ戻す逆色変換が行われないため、再生される画像の色が不自然なものになる。同様に、0を1に書き換えた場合にも色再生が不自然になる。
【0063】
(H)画像の色再生を不正常にする別の方法: SIZマーカセグメント(図22)にはコンポーネント数を表すパラメータCsizがある。RGBカラー画像などはCsiz=3に設定されているが、これを2に書き換える。この書き換えにより、不自然な色の画像として再生される。
【0064】
(I)画像の色再生を不正常にする別の方法: CRGマーカセグメント(図24)には、コンポーネント毎の水平、垂直方向のオフセット位置を表すパラメータXcrg(i)、Ycrg(i)が含まれている。このXcrg(i)、Ycrg(i)の値を書き換える。この書き換えにより、コンポーネント間の空間的位置関係が乱れ、いわゆる色ずれを生じた不自然な色の再生画像となる。
【0065】
(J)画像の色数を変更する: SIZマーカセグメント(図22)にはコンポーネント数を表すパラメータCsizがある。RGBカラー画像などはCsiz=3に設定されているが、これを1に書き換える。これにより、カラー画像がモノクロ画像として再生される。
【0066】
次に出力手順の具体例を説明する。出力手順はテーブル形式など任意の形式で記述し得るが、この実施の形態では、汎用性を考慮し、ISO/IEC JTC1 SC29/WG11において標準化作業が進行している、マルチメディア・コンテンツに対するメタデータの表記に関する国際標準規格MPEG−7(Multimedia Content Description Interface;ISO/IEC 15938-1〜8)により記述される。この出力手順はxmlファイルとして保存される。
【0067】
MPEG−7により記述された出力手順の一例を図8乃至13に示す。ここに示す出力手順の内容は次の通りである。
【0068】
(1)最初に出力されるデータとして、sample1.jp2なるファイル名で保存されている圧縮画像データ(JPEG2000で圧縮された静止画)が指定されている。出力条件として、サイズ=240×360画素、解像度=レベル1、表示位置(画面上におけるイメージの左上角の座標)=(100,200)、表示時間=10秒が指定されている。
【0069】
(2)2番目に出力されるデータとして、1番目と同じ圧縮画像データが指定されている。出力条件として、サイズ=120×180画素、解像度=レベル1、表示位置=(100,200)、表示時間=10秒が指定されている。
【0070】
(3)3番目に出力されるデータとして、sample2.mj2なるファイル名で保存されている圧縮画像データ(JPEG2000で圧縮された動画)が指定されている。出力条件として、サイズ=240×360画素、解像度=レベル1、表示位置=(100,200)、表示時間=10秒が指定されている。
【0071】
(4)最後に出力されるデータとして、sample3.txtなるファイル名で保存されているテキストデータが指定されている。出力条件として、サイズ=240×360画素、表示位置=(100,200)、表示時間=10秒が指定されている。
【0072】
したがって、この出力手順の例では、最初に静止画(sample1.jp2)を解像度レベル1で伸長した240×360画素サイズのイメージが表示装置131の画面に10秒間表示され、次に同じ静止画を解像度レベル1で伸長した120×180画素サイズのイメージが画面に10秒間表示され、次に動画(sample2/mj2)を解像度レベル1で伸長した240×360画素サイズのイメージが10秒間表示され、最後にテキスト(sample3.txt)が240×360画素サイズのイメージとして画面に10秒間表示される。各イメージの画面上の表示位置は同じである。
【0073】
ここまでの説明から明らかなように、出力手順の内容によって、さらに多様な形態で静止画、動画、テキストを表示させることができる。例えば、前述のようなヘッダ情報の書き換えなどを利用することにより、静止画又は動画をタイル並びを不整にした状態で表示し、時間とともにタイル並びを正常な状態に近づけ、最終的に正常なタイル並びで表示させることにより、画像に注目させるような表示形態を実現することができる。また、静止画又は動画を初めは低画質、低解像度で表示させ、徐々に画質、解像度を上げて表示させたり、途中まではモノクロで表示させ、最後にカラーで表示させるような表示形態も実現できる。また、静止画又は動画を意図的に色ずれのある形で表示させたり、変形した形で表示させることができる。このように、このデータ処理装置によれば、極めて変化に富んだプレゼンテーションを行うことができる。
【0074】
以上に述べたように、このデータ処理装置は、データソース120に蓄積されている静止画、動画、テキストなどを、それを予め編集することなく、出力手順に従って様々な順序、表示形態で表示させることができるため、プレゼンテーションなどの用途に効果的に利用できる。
【0075】
なお、このデータ処理装置の機能、換言すれば図2に示したデータ処理手順(データ処理方法)は、パソコンなどのコンピュータのハードウェアを利用し、プログラムによって実現することも容易である。この場合にJPEG2000デコーダ104はハードウェアのデコーダを利用することも可能である。そのようなコンピュータ・プログラムと、それが記録された磁気ディスク、光ディスク、光磁気ディスク、半導体記憶素子などコンピュータが読み取り可能な各種の記録(記憶)媒体も本発明に含まれる。
【0076】
図14は、本発明の第2の実施形態を説明するためのブロック図である。この実施形態に係るデータ処理装置は、プレゼンテーションなどのためのデータを生成し、それをパソコンなどの外部装置240へ配信する構成であり、データ取得部201、出力データ生成部202、システム制御部205、出力手順ファイル222、送信バッファメモリ部230、送信部2312を有する。221は出力手順ファイル222を保存するための記憶部である。出力手順ファイル122に記述されている出力手順の内容は第1の実施形態と同様である。
【0077】
出力データ生成部102は生成した出力データ(送信データ)を送信バッファメモリ部230に書き込まれ、ここに書き込まれた送信データは送信部231によってインターフェース・ケーブルあるいはLAN、イントラネット、インターネットなどのネットワークを通じてパソコンなどの外部装置131へ送信される。220はデータ・ソースであり、少なくともJPEG2000により圧縮された画像(静止画又は動画)データを含むデータ群をファイルとして蓄積している。データ・ソース120は、ローカルな記憶装置、あるいは、LAN、イントラネット、インターネットなどのネットワーク上に存在するファイルサーバーなどである。
【0078】
システム制御部205は、データ処理装置の全体的な動作を制御する手段である。また、システム制御部205は、出力手順ファイル222に記述された出力手順の内容を取り込んで解析し、出力手順中に時間軸に沿って定義されたデータの指定及び出力条件を、時間経過に従ってデータ取得部201及び出力データ生成部202へそれぞれ通知する手段でもある。
【0079】
データ取得部201は、システム制御部205より通知されたデータの指定に従って、1つ又は複数のデータソース220に蓄積されているデータ群より必要なデータを取り込み、それを出力データ生成部202に入力する手段である。
【0080】
出力データ生成部203は、データ取得部201より入力されたデータから、システム制御部205より通知された出力条件に従った出力データ(送信データ)を生成する手段であり、データ処理部203と符号変換部204とからなる。符号変換部204は、JPEG2000による圧縮画像データを、符号状態のまま、出力条件に従った別の圧縮画像データに変換する手段である。データ処理部203は、圧縮画像データを符号変換部204へ渡して変換させ、変換後の圧縮画像データやテキストデータから送信に適した所定フォーマットの送信データを作成し、それを送信バッファメモリ部230に書き込む手段である。
【0081】
図15は、このデータ処理装置の動作を説明するための簡略化したフローチャートである。以下、このフローチャートに沿って動作を説明する。
【0082】
最初に、システム制御部205は出力手順を読み込む(ステップS200)。次に、システム制御部205は、その出力手順を解析し、最初のデータの指定をデータ取得部201に通知し、かつ、当該データに関する出力条件を出力データ生成部202に通知する。また、当該データの種類が動画であるか否かによって当該データに関する制御手順を選択する(ステップS202)。ここでは、データの種類として、JPEG2000により圧縮された動画又は静止画のデータと、テキストデータを想定して説明する。
【0083】
データが動画以外、つまり静止画又はテキストの場合には、そのデータがデータ取得部201によってデータソース220より取り込まれ、出力データ生成部202に入力する(ステップS204)。
【0084】
そのデータがテキストデータの場合、データ処理部203により、そのテキストデータを内容とする送信データが作成されて送信バッファメモリ部230に書き込まれる(ステップS206)。送信バッファメモリ部230に送信データが書き込まれる都度、その送信データは送信部231により外部装置240へ送信される。そして、システム制御部105は、当該テキストの出力条件として指定された出力時間の経過を監視する(ステップS208)。
【0085】
データが静止画の圧縮データの場合、そのデータがデータ取得部201によって取り込まれて出力データ生成部102に入力し(ステップS204)、出力データ生成部202の符号変換部204により出力条件に従った別の圧縮画像データに変換され、データ処理部203により、その変換後の圧縮画像データを内容とする送信データが作成されて送信バッファメモリ部230に書き込まれ、これが送信部231により送信される(ステップS206)。そして、システム制御部105は、当該静止画の出力条件として指定された出力時間の経過を監視する(ステップS208)。
【0086】
データが動画の圧縮データの場合、各フレームのデータがデータ取得部201によって順に取り込まれて出力データ生成部202に入力し(ステップS210)、出力データ生成部202の符号変換部204により出力条件に従った別の圧縮画像データに変換され、データ処理部203によりその送信データが作成されて送信バッファメモリ部230書き込まれ、送信部231により送信される(ステップS212)。システム制御部205は、当該動画の出力条件として指定された出力時間の経過を監視しており(ステップS214)、出力時間が経過するまではステップS210,S212を繰り返し実行させる。
【0087】
出力条件として指定された出力時間を経過すると(ステップS214又はS208、YES)、システム制御部205は出力手順を参照し、次のデータの指定があるかチェックし(ステップS216)、次のデータの指定があるならば、そのデータに関し同様の動作を開始させる。最後のデータまで処理されると(ステップS216,NO)、一連の動作を終了する。
【0088】
ここで、符号変換部204について説明する。符号変換部204は、2種類の変換手段を含む。第1の変換手段は、第1の実施の形態において述べたように、入力される圧縮画像データを、そのヘッダ情報の書き換えにより出力条件に従った圧縮画像データに変換する手段である。この変換は、符号そのものを扱わないため、次に述べる第2の変換手段による変換にくらべ処理が単純である。
【0089】
第2の変換手段は、入力される圧縮画像データを、不要な符号の廃棄と必要なヘッダ情報の書き換えを行って、出力条件に従った圧縮画像データに変換する手段である。この第2の変換手段では、例えば、解像度レベルを下げる場合には、不要な解像度レベルのサブバンド係数に対応するパケットを実際に廃棄した圧縮画像データを生成する。画質を下げる場合には、マルチレイヤ構成ならば下位のレイヤのパケットを廃棄し、シングルレイヤ構成ならば下位ビットプレーンのパケットを廃棄する。カラーの圧縮画像データをモノクロ化したい場合には、輝度コンポーネントのパケットのみ残し、色差コンポーネントのパケットを廃棄する、等々である。変換後のデータには不要な符号が含まれないため、その送信データのデータ量と送信時間を削減できる利点がある。
【0090】
第1の変換手段、第2の変換手段のいずれによる変換も、伸長して再圧縮することによるものではないため、再圧縮に伴う画質劣化を生じないことに注目すべきである。従来のJPEGの静止画データやMotion−JPEGの動画データでは再圧縮によるジェネレーション的な画質劣化が避けられない。
【0091】
なお、出力条件として画像やテキストの画面上での表示位置が指定され、これを外部装置240へ伝達する必要がある場合には、データ処理部203は、例えば、送信データのヘッダ部分に表示位置データを乗せる。圧縮画像データの場合には、メインヘッダのCOM(コメント)マーカセグメントに表示位置を記述することもできる。また、テキストデータの表示サイズの指定も伝達する必要がある場合には、その送信データのヘッダ部分に記述される。
【0092】
以上の構成であるため、パソコンなどの外部装置240において、受信した圧縮画像データをイメージデータに伸長し、またテキストデータをイメージデータに展開し、そのイメージデータを表示装置へ出力することにより、第1の実施形態と同様に、出力手順に従った画像やテキストの変化に富んだ表示を行うことができる。したがって、このデータ処理装置は、プレゼンテーションなどのためのデータをパソコンなどに配信する用途に効果的に利用できる。
【0093】
なお、この実施形態によるデータ処理装置の機能、換言すれば図2に示したデータ処理手順(データ処理方法)も、パソコンなどのコンピュータのハードウェアを利用し、プログラムによって実現することは容易である。そのようなコンピュータ・プログラムと、それが記録された磁気ディスク、光ディスク、光磁気ディスク、半導体記憶素子などコンピュータが読み取り可能な各種の記録(記憶)媒体も本発明に含まれる。
【0094】
【発明の効果】
以上に述べたように、本発明のデータ処理装置及び方法は、JPEG2000の圧縮画像データを、予め編集することなく、出力手順に従って様々な順序、表示形態で表示させることができ、また、そのような表示のためのデータをパソコンなどに配信することができるため、プレゼンテーションなどの用途に効果的に利用可能である。
【図面の簡単な説明】
【図1】 本発明の第1の実施の形態を説明するためのブロック図である。
【図2】 第1の実施の形態を説明するためのフローチャートである。
【図3】 ヘッダ情報の書き換えを説明するための図である。
【図4】 ヘッダ情報の書き換えを説明するための図である。
【図5】 ヘッダ情報の書き換えを説明するための図である。
【図6】 ヘッダ情報の書き換えを説明するための図である。
【図7】 ヘッダ情報の書き換えを説明するための図である。
【図8】 MPEG−7により記述された出力手順の例を示す図である。
【図9】 図8の続きを示す図である。
【図10】 図9の続きを示す図である。
【図11】 図10の続きを示す図である。
【図12】 図11の続きを示す図である。
【図13】 図12の続きを示す図である。
【図14】 本発明の第2の実施の形態を説明するためのブロック図である。
【図15】 第2の実施の形態を説明するためのフローチャートである。
【図16】 JPEG2000のアルゴリズムを説明するためのブロック図である。
【図17】 ウェーブレット変換を説明するための図である。
【図18】 JPEG2000の符号フォーマットを示す図である。
【図19】 メインヘッダの構造を説明するための図である。
【図20】 タイルヘッダの構造を説明するための図である。
【図21】 SOTマーカセグメントの構造を示す図である。
【図22】 SIZマーカセグメントの構造を示す図である。
【図23】 CODマーカセグメントの構造を示す図である。
【図24】 CRGマーカセグメントの構造を示す図である。
【図25】 RGNマーカセグメントの構造を示す図である。
【符号の説明】
101 データ取得部
102 出力データ生成部
103 データ処理部
104 JPEG2000デコーダ
105 システム制御部
120 データ・ソース
122 出力手順ファイル
130 ビデオメモリ部
131 表示装置
201 データ取得部
202 出力データ生成部
203 データ処理部
204 符号変換部
205 システム制御部
220 データ・ソース
222 出力手順ファイル
230 送信バッファメモリ部
231 送信部
240 外部装置
[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to a data processing apparatus and method for displaying or distributing data such as a still image and a moving image according to a predetermined procedure for presentation or the like.
[0002]
[Prior art]
  For presentations using materials such as images, graphs, tables, text, and audio, so-called presentation software such as Microsoft PowerPoint (registered trademark) and Apple Keynote (registered trademark) is used. There are many cases. Such presentation software basically edits materials for presentation in advance, for example, by processing various materials into sizes to be displayed and arranging them in the order in which they are to be displayed.
[0003]
  Images are often stored or transmitted in a compressed state. JPEG is widely used for still image compression, and MPEG and Motion-JPEG are widely used for moving image compression. However, JPEG2000 that uses wavelet transform has attracted attention as a new compression method (see, for example, Non-Patent Document 1). .
[0004]
  The compression algorithm of JPEG2000 is defined in the basic specification (ISO / IEC FCD 15444-1). The file format of a JPEG2000 moving image is defined in an extended specification (ISO / IEC FCD 15444-3). In a JPEG 2000 moving image, each frame is compressed as an still image independent of the preceding and following frames by an algorithm defined in the basic specification of JPEG 2000.
[0005]
[Non-Patent Document 1]
Yasuyuki Nomizu, “Next Generation Image Coding System JPEG2000”, Trikes, Inc., February 13, 2001
[0006]
[Problems to be solved by the invention]
  JPEG2000 compressed image data can be decompressed with a resolution, size, image quality, color, etc. that is different from the image before compression, and compressed image data with the resolution, size, image quality, color, etc. changed in the encoded state. Can be converted to
[0007]
  The present invention pays attention to such characteristics of JPEG 2000 compressed image data, and makes it possible to execute various presentations using a data group including JPEG 2000 compressed image data without editing the data in advance. It is an object to provide a data processing apparatus and method.
[0008]
[Means for Solving the Problems]
  A data processing apparatus according to the present invention as described in claim 1,A data processing apparatus for processing JPEG2000 compressed image data (hereinafter simply referred to as compressed image data), the storage means storing the output procedure defining the designation of the data to be output along the time axis and the output conditions; Data acquisition means for capturing predetermined compressed image data in accordance with the designation of data defined in the output procedure, and in the header information of the compressed image data for the captured compressed image data in accordance with the output conditions defined in the output procedure Output data generating means for rewriting the parameter of the predetermined marker segment and generating another compressed image data according to the output condition.
[0009]
  Another feature of the data processing device according to the present invention is that, in the configuration according to claim 1, as described in claim 2,The output data generation means is a marker segment related to a part or all of the resolution, size, image quality, tile position, color, ROI region, and deformation of the image in the header information in accordance with the output condition defined in the output procedure. It is to rewrite the parameters.
[0010]
  Another feature of the data processing device according to the invention is as claimed in claim 3,Claim 1 or 2In the configuration described inThe output data generation means further discards unnecessary codes in the compressed image data in accordance with the output conditions defined in the output procedure.
[0011]
  Another feature of the data processing device according to the invention is as claimed in claim 4,Any one of Claims 1 thru | or 3In the configuration described inThe image processing apparatus further includes decompression means for decompressing the generated compressed image data into image data.
[0012]
  Another feature of the data processing device according to the invention is as claimed in claim 5,Any one of Claims 1 thru | or 3In the configuration described inThe image processing apparatus further includes transmission means for transmitting the generated compressed image data to another apparatus.
[0013]
  The data processing method according to the present invention comprises:Claim 6As described inA data processing method for processing JPEG2000 compressed image data (hereinafter simply referred to as compressed image data) in accordance with an output procedure in which designation of data to be output along a time axis and an output condition are defined, defined in the output procedure A data acquisition step for capturing predetermined compressed image data in accordance with the specified data, and for the captured compressed image data, according to the output conditions defined in the output procedure, the predetermined marker segment in the header information of the compressed image data And an output data generation step of generating another compressed image data according to the output condition by rewriting the parameters.
[0014]
  Another feature of the data processing method according to the present invention is:Claim 7As described inClaim 6In the configuration described inIn the output data generation step, a marker segment related to the resolution, size, image quality, tile position, color, ROI region, or part or all of the deformation of the image in the header information according to the output condition defined in the output procedure It is to rewrite the parameters.
[0015]
  Another feature of the data processing method according to the present invention is:Claim 8As described inClaim 6 or 7In the configuration described inThe output data generation step further includes discarding unnecessary codes in the compressed image data in accordance with the output conditions defined in the output procedure.
[0016]
  Another feature of the data processing method according to the present invention is:Claim 9As described inAny one of claims 6 to 8.In the configuration described inThe method further includes a decompressing step of decompressing the generated compressed image data into image data.
[0017]
  Another feature of the data processing method according to the present invention is:Claim 10As described inAny one of claims 6 to 8.In the configuration described inThe method further includes a transmission step of transmitting the generated compressed image data to another apparatus.
[0018]
DETAILED DESCRIPTION OF THE INVENTION
  In order to facilitate understanding of the following description, JPEG2000 will be outlined.
[0019]
  FIG. 16 is a block diagram for explaining a JPEG2000 compression / decompression algorithm. Image data data to be compressed is divided into non-overlapping rectangular areas (tiles) for each component, and processed in units of tiles for each component. However, it is also possible to process the entire image as one tile.
[0020]
  Each tile image of each component is subjected to color space conversion from RGB data or CMY data to YCrCb data by the color space conversion / inverse conversion unit 1 for the purpose of improving the compression rate. This color space conversion may be omitted.
[0021]
  The tile image after the color space conversion is subjected to a two-dimensional wavelet transform (discrete wavelet transform) by the wavelet transform / inverse transform unit 2 and is decomposed into a plurality of subbands.
[0022]
  FIG. 17 is an explanatory diagram of wavelet transformation when the number of decomposition levels is 3. The tile image (decomposition level 0) shown in FIG. 17A is divided into 1LL, 1HL, 1LH, and 1HH subbands as shown in FIG. 17B by two-dimensional wavelet transform. By applying the two-dimensional wavelet transform to the coefficients of the 1LL subband, the subbands are divided into 2LL, 2HL, 2LH, and 2HH as shown in FIG. By applying the two-dimensional wavelet transform to the coefficients of the 2LL subband, it is divided into 3LL, 3HL, 3LH, and 3HH subbands as shown in FIG. Regarding the relationship between the decomposition level and the resolution level, the numbers shown in parentheses in each subband in FIG. 17D are the resolution levels of the subband.
[0023]
  Wavelet coefficients obtained by recursive division (octave division) of such low frequency components (LL subband coefficients) are quantized for each subband by the quantization / inverse quantization unit 3. In JPEG2000, both lossless (lossless) compression and lossy (lossy) compression are possible. In the case of lossless compression, the quantization step width is always 1, and at this stage, the quantization is not substantially performed.
[0024]
  Each subband coefficient after quantization is entropy encoded by the entropy encoding / decoding unit 4. For this entropy coding, a block-based bit-plane coding method called EBCOT (Embedded Block Coding with Optimized Truncation) consisting of block division, coefficient modeling, and binary arithmetic coding is used. The bit plane of each subband coefficient after quantization is encoded for each block called a code block from the upper bit to the lower bit.
[0025]
  In the tag processing unit 5, the codes of the code blocks generated by the entropy encoding / decoding unit 4 are collected to create a packet, and then the packets are arranged in accordance with the progression order and necessary tags and tag information are added. As a result, encoded data (compressed image data) in a predetermined format is created. In JPEG2000, five types of progression orders are defined with respect to code order control by combinations of resolution level, position (precinct), layer, and component (color component).
[0026]
  The format of JPEG 2000 encoded data generated in this way is shown in FIG. As shown in FIG. 18, the encoded data starts with a tag called an SOC marker indicating the beginning thereof, followed by tag information called a main header (Main Header) describing the encoding parameters, quantization parameters, and the like, After that, the code data for each tile follows. The code data for each tile starts with a tag called an SOT marker, and consists of tag information called a tile header (Tile Header), a tag called an SOD marker, and tile data (Tile Data) containing the code string of each tile. Is done. A tag called an EOC marker indicating the end is placed after the last tile data.
[0027]
  FIG. 19 shows the configuration of the main header. Each marker segment of SIZ, COD, and QCD is essential, but the other marker segments are optional. FIG. 20 shows the configuration of the tile header. 20, (a) shows the structure of the header added to the head of tile data, and (b) shows the header added to the head of the divided tile subsequence when the tile is divided into a plurality of parts. The structure of is shown. There is no mandatory marker segment in the tile header, all are optional. The SOT marker segment configuration is shown in FIG. 21, the SIZ marker segment configuration is shown in FIG. 22, the COD marker segment configuration is shown in FIG. 23, the CRG marker segment configuration is shown in FIG. 24, and the RGN marker segment configuration is shown in FIG. Show.
[0028]
  The decompression process of JPEG 2000 encoded data is the reverse of the compression process. The encoded data is decomposed into a code string of each tile of each component by the tag processing unit 5. This code string is entropy-decoded by the entropy encoding / decoding unit 4. The decoded wavelet coefficients are inversely quantized by the quantization / inverse quantization unit 3 and then subjected to two-dimensional inverse wavelet transform by the wavelet transform / inverse transform unit 2, whereby each tile image of each component is imaged. Is played. Each tile image of each component is subjected to reverse color conversion processing by the color space conversion / inverse conversion unit 1 and returned to a tile image composed of components such as RGB.
[0029]
  In JPEG2000, an image is divided into a plurality of regions, and each divided region is compressed in a state where there is no dependency. However, there are precincts other than the tiles and code blocks as divided regions, and image ≧ tile ≧ There is a size relationship of subband ≧ precinct ≧ code block. A packet is obtained by collecting a part of codes of all code blocks included in the precinct (for example, codes of three bit planes from the most significant bit to the third bit). Packets with an empty code are allowed. The code of the code block is collected to generate a packet, and the encoded data is formed by arranging the packet according to a desired progression order. In FIG. 18, the portion below SOD for each tile is a set of packets.
[0030]
  The encoded data of JPEG2000 can have a layer structure. When packets of all precincts (that is, all code blocks and all subbands) are collected, a part of the code of the entire image (for example, the bits from the most significant bit plane of the wavelet coefficient of the entire image to the third bit) This is a layer. Therefore, the larger the number of layers decoded at the time of decompression, the higher the quality of the reproduced image. That is, a layer can be said to be a unit of image quality. When all layers are collected, it becomes the code of all bit planes of the entire image.
[0031]
  Since the packet constituting the JPEG2000 encoded data described above has the area, image quality, component, and resolution indexes, the code can be selected by the area, image quality, component, and resolution parameters in the code state. is there. That is, a code in which the area, image quality, component, and resolution at the time of reproduction are changed by selectively deleting the code (and rewriting the necessary tag information) without expanding the code data, that is, in the code state. Can be converted into digitized data.
[0032]
  As will be described in detail later, JPEG2000 encoded data is encoded by changing the resolution, image quality, component, and area at the time of reproduction only by rewriting tag information (header information) without changing the code itself. It can also be converted to data.
[0033]
  JPEG2000 has a selective area image quality improvement function (ROI) that lowers the compression ratio of a specific area (increases image quality) without lowering the compression ratio of the entire image. In the basic specification of JPEG2000, an ROI method called a Max Shift method for bit-shifting wavelet coefficients in the ROI region is defined.
[0034]
  FIG. 1 is a block diagram for explaining a first embodiment of the present invention. The data processing apparatus according to this embodiment is configured to generate image data to be displayed on the display device 131, and includes a data acquisition unit 101, an output data generation unit 102, a system control unit 105, and an output procedure file 122. Reference numeral 121 denotes a storage unit for storing the output procedure file 122.
[0035]
  A video memory unit 130 writes image data (output data) generated by the output data generation unit 102, and the image data written therein is displayed on the screen of the display device 131. A data source 120 stores a data group including at least image (still image or moving image) data compressed by JPEG 2000 as a file. The data source 120 is a local storage device or a file server on a network such as a LAN, an intranet, or the Internet.
[0036]
  The system control unit 105 is means for controlling the overall operation of the data processing apparatus. Further, the system control unit 105 takes in and interprets the contents of the output procedure described in the output procedure file 122, and specifies the data specification and output conditions defined along the time axis during the output procedure as data over time. It is also means for notifying the acquisition unit 101 and the output data generation unit 102, respectively.
[0037]
  The data acquisition unit 101 fetches necessary data from the data group stored in one or a plurality of data sources 120 according to the specification of data passed from the system control unit 105 and inputs it to the output data generation unit 102 It is means to do.
[0038]
  The output data generation unit 103 is a unit that generates image data (output data) according to the output conditions passed from the system control unit 105 from the data input from the data acquisition unit 101. The data processing unit 103 and the JPEG2000 It consists of a decoder 104. The JPEG2000 decoder 104 is means for expanding compressed image data by JPEG2000 into image data. The data processing unit 103 passes the compressed image data to the JPEG2000 decoder 104 to expand the image data, expands the text data into image data, and writes the obtained image data to the video memory unit 130. The data processing unit 103 controls the decompression operation of the JPEG2000 decoder 104, rewrites the header information of the compressed image data, scales the decompressed or expanded image data (decimation / interpolation process), and the video memory unit 130 according to the output conditions. Controls the writing position of image data for the.
[0039]
  The output procedure described in the output procedure file 122 defines the designation of data to be output (displayed) along the time axis and the output condition of the data. The data designation is, for example, a file name or URL of the data. As the data output condition, for example, if the data is compressed image data, the conditions directly related to the appearance of the reproduced image, such as the resolution, size, image quality, tile position, color, ROI region, and deformation of the image In addition, the data output (display) time, the position on the screen where the image or text image is displayed, and the like are defined.
[0040]
  FIG. 2 is a simplified flowchart for explaining the operation of the data processing apparatus. Hereinafter, the operation will be described with reference to this flowchart.
[0041]
  First, the system control unit 105 reads an output procedure (step S100). Next, the system control unit 105 analyzes the contents of the output procedure, notifies the data acquisition unit 101 of the designation of the first data, and notifies the output data generation unit 102 of the output condition related to the data. Further, a control procedure related to the data is selected depending on whether or not the type of the data is a moving image (step S102). Here, in order to avoid complication of explanation, explanation will be made on the assumption that the data type is moving picture or still picture data and text data compressed by JPEG2000, but data such as tables, graphs, and voices are excluded. is not.
[0042]
  If the data is a still image or text, the data is fetched from the data source 120 by the data acquisition unit 101 and input to the output data generation unit 102 (step S104).
[0043]
  When the data is text data, the data processing unit 103 develops the image data and writes it into the video memory unit 130. At this time, the size and the writing position (position on the screen) of the image data are determined according to the output conditions. Control is performed (step S106). Then, the system control unit 105 monitors the elapse of the output (display) time designated as the text output condition (step S108).
[0044]
  If the data is compressed still image data, the data is captured by the data acquisition unit 101 and input to the output data generation unit 102 (step S104), and is decompressed to image data by the JPEG2000 decoder 104 of the output data generation unit 102. This is written in the position of the video memory unit 130 designated as the output condition by the data processing unit 103 (step S106). At this time, the data processing unit 103 controls the decompression operation of the JPEG2000 decoder 104 and compresses the compressed image data of each frame in order to generate image data in accordance with the resolution, size, image quality, number of colors, and the like specified as output conditions. The header information is rewritten, the decompressed image data is thinned out / interpolated as necessary (that is, the data processing unit 103 includes means for such control or processing). Will be described later. Then, the system control unit 105 monitors the elapse of the output (display) time designated as the still image output condition (step S108).
[0045]
  If the data is compressed video data, the data of each frame is sequentially taken in by the data acquisition unit 101 and input to the output data generation unit 102 (step S110), and decompressed to image data by the JPEG2000 decoder 104 of the output data generation unit 102. Then, it is written in the position of the video memory unit 130 designated as the output condition by the data processing unit 103 (step S112). At this time, the data processing unit 103 controls the decompression operation of the JPEG2000 decoder 104 and compresses the compressed image data of each frame in order to generate image data in accordance with the resolution, size, image quality, number of colors, and the like specified as output conditions. The header information is rewritten, the decompressed image data is thinned out / interpolated as necessary (that is, the data processing unit 103 includes means for such control or processing). Will be described later. The system control unit 105 monitors the elapse of the output (display) time designated as the moving image output condition (step S114), and repeatedly executes steps S110 and S112 until the output time elapses.
[0046]
  When the output time specified as the output condition has elapsed (step S114 or S108, YES), the system control unit 105 refers to the output procedure and checks whether the next data is specified (step S116). If specified, the same operation is started for the data. When the last data is processed (step S116, NO), the series of output data generation operations is terminated.
[0047]
  Here, regarding the control or processing by the data processing unit 103 for generating image data in accordance with output conditions such as resolution, size, image quality, and color,Specificallyexplain.
[0048]
  In JPEG2000, five progression orders of LRCP, RLCP, RPCL, PCRL, and CPRL are defined. Here, L is a layer, R is a resolution level, C is a component, and P is a precinct.
[0049]
  For example, in the case of RLCP progression, the order of packet placement (compression) or packet interpretation (expansion) can be expressed by the following for loop nested in the order of R, L, C, and P. .
        for (resolution level) {
          for (layer) {
            for (component) {
              for (Precinct) {
                  Place packet: When compressed
                  Interpret packets: when decompressing
          }
        }
      }
    }
[0050]
  In the case of LRCP progression, the order of packet arrangement (when compressed) or packet interpretation (when decompressed) can be expressed by the following for loop nested in the order of L, R, C, and P.
          for (layer) {
          for (resolution level) {
            for (component) {
              for (Precinct) {
                  Place packet: When compressed
                  Interpret packets: when decompressing
          }
        }
      }
    }
[0051]
  In the case of other progression orders, a similar nested for loop determines the arrangement order or interpretation order of packets.
[0052]
  Therefore, in the output data generation unit 102, the resolution of the image data to be decompressed can be adjusted by controlling the number of for-loops of the resolution level of the JPEG2000 decoder 104 by the data processing unit 103. That is, for example, in the case of compressed image data having a number of decomposition levels of 3 as shown in FIG. 17D, when resolution level 0 is specified, only the code of the 3LL subband coefficient is decoded to generate image data, When the resolution level 1 is designated, only the codes of the 3LL, 3HL, 3LH, and 3HH subband coefficients are decoded to generate image data. Similarly, when the resolution level 3 is designated, all subbands from 3LL to 1HH are generated. The coefficient is decoded to generate image data. Similarly, the image quality and the number of colors of the decompressed image data can be adjusted by controlling the number of for loops of the layer and the number of for loops of the component.
[0053]
  The data processing unit 103 includes means for controlling the decompression operation of the JPEG2000 decoder 104 as described above in order to generate image data of resolution, image quality, and number of colors according to the output conditions.
[0054]
  The image size can be adjusted according to the output condition by several methods. For example, a method of performing a scaling process by thinning or interpolation on the image data expanded by the JPEG2000 decoder 104 is possible, and means for that is included in the data processing unit 103. Further, when it is desired to generate image data having a size larger than the image size of the designated resolution level, a dummy subband coefficient (for example, all “0”) having a level higher than the designated resolution level in the decompression process in the JPEG2000 decoder 104 is generated. ) And executing the inverse wavelet transform, image data having a size larger than the specified resolution level can be generated. A means for inserting such dummy subband coefficients is also included in the data processing unit 103. Even in this case, it is natural that scaling processing by thinning / interpolation can be used for final size adjustment.
[0055]
  Further, instead of directly controlling the internal operation of the JPEG2000 decoder 104, the decompression operation of the JPEG2000 decoder 104 can be controlled by rewriting the header information of the compressed image data. Means for the above are also included in the data processing unit 103. A specific example of rewriting the header information will be described below.
[0056]
  (A) Method of changing image resolution and size: The number of decomposition levels is described in SPcod of the COD marker segment (FIG. 23). Rewrite the number of decomposition levels to a smaller value. By this rewriting, the decoder performs expansion only up to the number of decomposition levels after rewriting, so that the reproduced image becomes a low resolution image having a smaller size than the original image.
[0057]
  (B) Simple method for changing image size: In JPEG2000, the position of an image is expressed using coordinate axes called a reference grid. The SIZ marker segment (FIG. 22) in the main header includes parameters Xsiz and Ysiz that describe the horizontal and vertical sizes of the reference grid. The values of Xsiz and Ysiz are rewritten. By this rewriting, a simple image size change can be performed (a part of the image is cut). FIG. 3 schematically shows an example thereof. When the original Xsiz = Ysiz = 5 is rewritten to Xsiz = 3 and Ysiz = 3, the hatched portion of the image to be reproduced as shown in FIG. Played as a small image.
[0058]
  (C) Method of changing tile reproduction position: In the SOT marker segment (FIG. 21) in the tile header, tile numbers (Isot) assigned to the tiles are described in raster order, but the values are rewritten. That is, in the case of an image that has been divided into tiles and compressed as shown in FIG. 4A, by rewriting the tile numbers, for example, the tile arrangement on the reproduced image becomes irregular as shown in FIG. 4B. be able to.
[0059]
  (D) Method of transforming image: The SIZ marker segment (FIG. 22) includes parameters XRsiz (i) and YRsiz (i) in which the number of samples in the horizontal and vertical directions for each component is described. Rewrite this. By this rewriting, the image can be reproduced while being deformed vertically and horizontally. FIG. 5 schematically shows an example thereof. When XRsiz (i) = YRsiz (i) = 2 is set and XRsiz (i) = 1 and YRsiz (i) = 2, the image to be reproduced is as shown in FIG. Is reproduced as an image such as (b) expanded in the horizontal direction, and is reproduced as an image such as (c) contracted in the horizontal direction when rewritten to XRsiz (i) = 4 and YRsiz (i) = 2. The
[0060]
  (E) Another method for deforming an image: In JPEG2000, it is possible to specify a positional deviation (offset) between the origin of the reference grid and the origin of the image. The SIZ marker segment XOsiz and YOsiz are parameters describing horizontal and vertical offsets. The values of XOsiz and YOsiz are rewritten. FIG. 6 schematically shows an example thereof. By rewriting XOsiz = YOsiz = 0 to XOsiz = 3 and YOsiz = 0, the image to be reproduced as shown in FIG. 6A is shifted to the right as shown in FIG. Played with the side missing. It is also possible to use Xsiz and Ysiz together.
[0061]
  (F) Method for preventing reproduction of areas other than the ROI area: As described above, in the basic specification of JPEG2000, the Max Shift method by bit shift is defined as the ROI method. The RGN marker segment (FIG. 25) has a parameter called SPrgn in which the bit shift amount is described. This SPrgn is rewritten to a large value. By this rewriting, only the ROI area can be reproduced. FIG. 7 schematically shows an example thereof. In the case of an image in which the ROI area is shifted by 2 bits as in (a) (that is, SPrgn = 2), SPrgn = 10 (= 2 bits for ROI shift + normal display bits 0 to 7) When rewritten to 8 bits), 8 bits of bits 0 to 7 are not reproduced. Therefore, on the reproduced image, for example, as shown in FIG. 5B, the ROI area is reproduced, but the other areas are not reproduced. When the tile header includes an RGN marker segment, the content has priority over the content of the RGN marker segment in the main header. Therefore, in the encoded data in which the RGN marker segment is included in the tile header, it is necessary to rewrite at least the SPrgn of the RGN marker segment.
[0062]
  (G) Method of always improperly reproducing the color of the image: The COD marker segment (FIG. 23) has a code style parameter SGcod related to the component. This SGcod also describes a value indicating the presence / absence of component color conversion. If this value is 0, there is no color conversion, and if this value is 1, there is color conversion. Rewrite this value. By this rewriting, the image is reproduced with an abnormal color. For example, in encoded data that has undergone color conversion from RGB to YCbCr, the value is set to 1, but when this is rewritten to 0, reverse color conversion is performed to return from YCbCr to RGB upon decompression. Therefore, the color of the reproduced image becomes unnatural. Similarly, when 0 is rewritten to 1, color reproduction becomes unnatural.
[0063]
  (H) Another method of always improperly reproducing the color of an image: The SIZ marker segment (FIG. 22) has a parameter Csiz representing the number of components. An RGB color image or the like is set to Csiz = 3, but this is rewritten to 2. By this rewriting, the image is reproduced as an unnatural color.
[0064]
  (I) Another method for improperly reproducing the color of an image: The CRG marker segment (FIG. 24) includes parameters Xcrg (i) and Ycrg (i) representing horizontal and vertical offset positions for each component. It is. The values of Xcrg (i) and Ycrg (i) are rewritten. By this rewriting, the spatial positional relationship between the components is disturbed, resulting in a reproduction image of an unnatural color in which a so-called color shift occurs.
[0065]
  (J) Change the number of colors of the image: The SIZ marker segment (FIG. 22) has a parameter Csiz representing the number of components. An RGB color image or the like is set to Csiz = 3, but this is rewritten to 1. Thereby, a color image is reproduced as a monochrome image.
[0066]
  Next, a specific example of the output procedure will be described. Although the output procedure can be described in an arbitrary format such as a table format, in this embodiment, in consideration of generality, metadata for multimedia contents whose standardization work is in progress in ISO / IEC JTC1 SC29 / WG11 Is described by the international standard MPEG-7 (Multimedia Content Description Interface; ISO / IEC 15938-1 to 8). This output procedure is saved as an xml file.
[0067]
  An example of an output procedure described in MPEG-7 is shown in FIGS. The contents of the output procedure shown here are as follows.
[0068]
  (1) As data to be output first, sample1. Compressed image data (still image compressed by JPEG2000) stored under the file name jp2 is designated. As output conditions, size = 240 × 360 pixels, resolution = level 1, display position (coordinate of upper left corner of image on screen) = (100, 200), display time = 10 seconds are specified.
[0069]
  (2) The same compressed image data as the first is designated as the second output data. As output conditions, size = 120 × 180 pixels, resolution = level 1, display position = (100, 200), and display time = 10 seconds are designated.
[0070]
  (3) As the third output data, sample2. Compressed image data (moving image compressed by JPEG2000) stored under the file name mj2 is designated. As output conditions, size = 240 × 360 pixels, resolution = level 1, display position = (100, 200), and display time = 10 seconds are designated.
[0071]
  (4) As the last output data, sample3. Text data stored with a file name txt is specified. As output conditions, size = 240 × 360 pixels, display position = (100, 200), and display time = 10 seconds are designated.
[0072]
  Therefore, in this example of the output procedure, an image of 240 × 360 pixel size obtained by first expanding a still image (sample1.jp2) at a resolution level 1 is displayed on the screen of the display device 131 for 10 seconds, and then the same still image is displayed. An image of 120 × 180 pixel size expanded at resolution level 1 is displayed on the screen for 10 seconds, and then an image of 240 × 360 pixel size expanded at resolution level 1 of a moving image (sample2 / mj2) is displayed for 10 seconds. The text (sample3.txt) is displayed on the screen as an image having a size of 240 × 360 pixels for 10 seconds. The display position of each image on the screen is the same.
[0073]
  As is clear from the above description, still images, moving images, and text can be displayed in various forms depending on the contents of the output procedure. For example, by using rewriting of header information as described above, a still image or a moving image is displayed in a state where the tile arrangement is irregular, and the tile arrangement approaches a normal state over time, and finally a normal tile is displayed. By displaying the images side by side, it is possible to realize a display form in which attention is paid to the image. In addition, a display mode that displays still images or moving images with low image quality and low resolution at the beginning, gradually increases the image quality and resolution, displays them halfway in monochrome, and finally displays them in color. it can. In addition, a still image or a moving image can be intentionally displayed in a color-shifted form or displayed in a deformed form. As described above, according to this data processing apparatus, it is possible to make a presentation with a great variety of changes.
[0074]
  As described above, this data processing apparatus displays still images, moving images, texts, and the like stored in the data source 120 in various orders and display forms according to the output procedure without editing them in advance. Therefore, it can be effectively used for presentations.
[0075]
  The function of this data processing apparatus, in other words, the data processing procedure (data processing method) shown in FIG. 2 can be easily realized by a program using computer hardware such as a personal computer. In this case, the JPEG2000 decoder 104 can use a hardware decoder. Such a computer program and various recording (storage) media that can be read by a computer such as a magnetic disk, an optical disk, a magneto-optical disk, and a semiconductor storage element on which the computer program is recorded are also included in the present invention.
[0076]
  FIG. 14 is a block diagram for explaining a second embodiment of the present invention. The data processing apparatus according to this embodiment is configured to generate data for a presentation and distribute it to an external apparatus 240 such as a personal computer, and includes a data acquisition unit 201, an output data generation unit 202, and a system control unit 205. , Output procedure file 222, transmission buffer memory unit 230, and transmission unit 2312. A storage unit 221 stores the output procedure file 222. The contents of the output procedure described in the output procedure file 122 are the same as those in the first embodiment.
[0077]
  The output data generation unit 102 writes the generated output data (transmission data) into the transmission buffer memory unit 230, and the transmission data written therein is transmitted to the personal computer through the interface cable or a network such as a LAN, an intranet, or the Internet by the transmission unit 231. To the external device 131. A data source 220 stores a data group including at least image (still image or moving image) data compressed by JPEG 2000 as a file. The data source 120 is a local storage device or a file server existing on a network such as a LAN, an intranet, or the Internet.
[0078]
  The system control unit 205 is means for controlling the overall operation of the data processing apparatus. In addition, the system control unit 205 captures and analyzes the contents of the output procedure described in the output procedure file 222, and specifies the data designation and output conditions defined along the time axis during the output procedure as data over time. It is also means for notifying the acquisition unit 201 and the output data generation unit 202, respectively.
[0079]
  The data acquisition unit 201 fetches necessary data from the data group stored in one or more data sources 220 in accordance with the data designation notified from the system control unit 205 and inputs it to the output data generation unit 202 It is means to do.
[0080]
  The output data generation unit 203 is a unit that generates output data (transmission data) according to the output condition notified from the system control unit 205 from the data input from the data acquisition unit 201. And a conversion unit 204. The code conversion unit 204 is a means for converting the compressed image data by JPEG 2000 into another compressed image data according to the output condition in the code state. The data processing unit 203 passes the compressed image data to the code conversion unit 204 for conversion, creates transmission data in a predetermined format suitable for transmission from the converted compressed image data and text data, and transmits the transmission data to the transmission buffer memory unit 230. It is a means to write in.
[0081]
  FIG. 15 is a simplified flowchart for explaining the operation of the data processing apparatus. Hereinafter, the operation will be described with reference to this flowchart.
[0082]
  First, the system control unit 205 reads an output procedure (step S200). Next, the system control unit 205 analyzes the output procedure, notifies the data acquisition unit 201 of the designation of the first data, and notifies the output data generation unit 202 of the output conditions related to the data. Further, a control procedure related to the data is selected depending on whether or not the type of the data is a moving image (step S202). Here, description will be made assuming that the data type is moving picture or still picture data compressed by JPEG2000 and text data.
[0083]
  If the data is other than a moving image, that is, a still image or text, the data is fetched from the data source 220 by the data acquisition unit 201 and input to the output data generation unit 202 (step S204).
[0084]
  If the data is text data, the data processing unit 203 creates transmission data containing the text data and writes it in the transmission buffer memory unit 230 (step S206). Each time transmission data is written in the transmission buffer memory unit 230, the transmission data is transmitted to the external device 240 by the transmission unit 231. Then, the system control unit 105 monitors the elapse of the output time specified as the text output condition (step S208).
[0085]
  If the data is compressed still image data, the data is captured by the data acquisition unit 201 and input to the output data generation unit 102 (step S204), and the code conversion unit 204 of the output data generation unit 202 complies with the output conditions. The data is converted into another compressed image data, and the data processing unit 203 creates transmission data containing the converted compressed image data as the content and writes it in the transmission buffer memory unit 230, which is transmitted by the transmission unit 231 ( Step S206). Then, the system control unit 105 monitors the elapse of the output time specified as the still image output condition (step S208).
[0086]
  When the data is compressed video data, the data of each frame is sequentially captured by the data acquisition unit 201 and input to the output data generation unit 202 (step S210), and the output condition is set by the code conversion unit 204 of the output data generation unit 202. Accordingly, the data is converted into another compressed image data, the transmission data is created by the data processing unit 203, written in the transmission buffer memory unit 230, and transmitted by the transmission unit 231 (step S212). The system control unit 205 monitors the elapse of the output time specified as the moving image output condition (step S214), and repeatedly executes steps S210 and S212 until the output time elapses.
[0087]
  When the output time specified as the output condition has elapsed (step S214 or S208, YES), the system control unit 205 refers to the output procedure and checks whether the next data is specified (step S216). If specified, the same operation is started for the data. When the last data has been processed (step S216, NO), the series of operations is terminated.
[0088]
  Here, the code conversion unit 204 will be described. The code conversion unit 204 includes two types of conversion means. As described in the first embodiment, the first conversion means is means for converting the input compressed image data into compressed image data according to the output condition by rewriting the header information. Since this conversion does not handle the code itself, the process is simpler than the conversion by the second conversion means described below.
[0089]
  The second conversion means is means for converting the input compressed image data into compressed image data according to output conditions by discarding unnecessary codes and rewriting necessary header information. For example, when the resolution level is lowered, the second conversion unit generates compressed image data in which packets corresponding to subband coefficients having unnecessary resolution levels are actually discarded. When lowering the image quality, the lower layer packet is discarded in the case of the multi-layer configuration, and the lower bit plane packet is discarded in the case of the single layer configuration. If the color compressed image data is to be converted to monochrome, only the luminance component packet is left, the color difference component packet is discarded, and so on. Since the converted data does not include unnecessary codes, there is an advantage that the amount of transmission data and the transmission time can be reduced.
[0090]
  It should be noted that the conversion by either the first conversion means or the second conversion means is not due to decompression and recompression, and therefore does not cause image quality deterioration due to recompression. In conventional JPEG still image data and Motion-JPEG moving image data, generation-like image quality deterioration due to recompression is inevitable.
[0091]
  When the display position of an image or text on the screen is specified as the output condition and this needs to be transmitted to the external device 240, the data processing unit 203, for example, displays the display position in the header portion of the transmission data. Put the data. In the case of compressed image data, the display position can also be described in the COM (comment) marker segment of the main header. In addition, when it is necessary to transmit the designation of the display size of the text data, it is described in the header portion of the transmission data.
[0092]
  With the above configuration, the external device 240 such as a personal computer expands the received compressed image data into image data, expands the text data into image data, and outputs the image data to the display device. As in the first embodiment, it is possible to perform a display rich in changes in images and text according to the output procedure. Therefore, this data processing apparatus can be effectively used for the purpose of distributing data for presentation or the like to a personal computer or the like.
[0093]
  Note that the functions of the data processing apparatus according to this embodiment, in other words, the data processing procedure (data processing method) shown in FIG. 2 can be easily realized by a program using computer hardware such as a personal computer. . Such a computer program and various recording (storage) media that can be read by a computer such as a magnetic disk, an optical disk, a magneto-optical disk, and a semiconductor storage element on which the computer program is recorded are also included in the present invention.
[0094]
【The invention's effect】
  As described above, the data processing apparatus and method of the present invention areJPEG2000 compressed image dataIt can be displayed in various orders and display forms according to the output procedure without editing in advance, and the data for such display can be distributed to a personal computer, etc., so it is effective for applications such as presentations. Is available.
[Brief description of the drawings]
FIG. 1 is a block diagram for explaining a first embodiment of the present invention.
FIG. 2 is a flowchart for explaining the first embodiment;
FIG. 3 is a diagram for explaining rewriting of header information.
FIG. 4 is a diagram for explaining rewriting of header information.
FIG. 5 is a diagram for explaining rewriting of header information.
FIG. 6 is a diagram for explaining rewriting of header information.
FIG. 7 is a diagram for explaining rewriting of header information.
FIG. 8 is a diagram illustrating an example of an output procedure described in MPEG-7.
FIG. 9 is a diagram showing a continuation of FIG. 8;
FIG. 10 is a diagram showing a continuation of FIG. 9;
FIG. 11 is a diagram showing a continuation of FIG. 10;
FIG. 12 is a diagram showing a continuation of FIG.
FIG. 13 is a diagram showing a continuation of FIG. 12;
FIG. 14 is a block diagram for explaining a second embodiment of the present invention;
FIG. 15 is a flowchart for explaining a second embodiment;
FIG. 16 is a block diagram for explaining an algorithm of JPEG2000.
FIG. 17 is a diagram for explaining wavelet transform;
FIG. 18 is a diagram illustrating a code format of JPEG2000.
FIG. 19 is a diagram for explaining the structure of a main header.
FIG. 20 is a diagram for explaining the structure of a tile header.
FIG. 21 is a diagram showing a structure of an SOT marker segment.
FIG. 22 is a diagram illustrating a structure of an SIZ marker segment.
FIG. 23 is a diagram showing the structure of a COD marker segment.
FIG. 24 is a diagram showing a structure of a CRG marker segment.
FIG. 25 is a diagram showing the structure of an RGN marker segment.
[Explanation of symbols]
  101 Data acquisition unit
  102 Output data generator
  103 Data processing section
  104 JPEG2000 decoder
  105 System control unit
  120 data sources
  122 Output procedure file
  130 Video memory
  131 Display device
  201 Data acquisition unit
  202 Output data generation unit
  203 Data processing unit
  204 Code converter
  205 System control unit
  220 Data Source
  222 Output procedure file
  230 Transmission buffer memory
  231 Transmitter
  240 External device

Claims (10)

JPEG2000の圧縮画像データ(以下、単に圧縮画像データ)を処理するデータ処理装置であって、A data processing apparatus for processing JPEG 2000 compressed image data (hereinafter simply referred to as compressed image data),
時間軸に沿って出力すべきデータの指定及び出力条件を定義した出力手順を記憶した記憶手段と、Storage means for storing the output procedure defining the designation of the data to be output along the time axis and the output conditions;
前記出力手順に定義されたデータの指定に従って所定の圧縮画像データを取り込むデータ取得手段と、Data acquisition means for capturing predetermined compressed image data in accordance with the designation of data defined in the output procedure;
前記取り込まれた圧縮画像データについて、前記出力手順に定義された出力条件に従って、当該圧縮画像データのヘッダ情報中の所定マーカセグメントのパラメータを書き換えて、前記出力条件に従った別の圧縮画像データを生成する出力データ生成手段と、For the captured compressed image data, according to the output condition defined in the output procedure, the parameter of the predetermined marker segment in the header information of the compressed image data is rewritten, and another compressed image data according to the output condition is Output data generating means for generating;
を有することを特徴とするデータ処理装置。A data processing apparatus comprising:
前記出力データ生成手段は、前記出力手順に定義された出力条件に従って、前記ヘッダ情報中の画像の解像度、サイズ、画質、タイル位置、色、ROI領域、変形の一部又は全部に関係するマーカセグメントのパラメータを書き換えることを特徴とする請求項1記載のデータ処理装置。The output data generation means is a marker segment related to the resolution, size, image quality, tile position, color, ROI region, or part or all of the deformation of the image in the header information in accordance with the output condition defined in the output procedure. The data processing apparatus according to claim 1, wherein the parameter is rewritten. 前記出力データ生成手段は、前記出力手順定義された出力条件に従って、さらに前記圧縮画像データ中の不要な符号を廃棄することを特徴とする請求項1又は2記載のデータ処理装置。3. The data processing apparatus according to claim 1, wherein the output data generation unit discards unnecessary codes in the compressed image data in accordance with output conditions defined in the output procedure. 前記生成された圧縮画像データをイメージデータに伸長する伸長手段をさらに有することを特徴とする請求項1乃至3のいずれか1項に記載のデータ処理装置。4. The data processing apparatus according to claim 1, further comprising decompression means for decompressing the generated compressed image data into image data. 前記生成された圧縮画像データを別の装置へ送信する送信手段をさらに有することを特徴とする請求項1乃至3のいずれか1項に記載のデータ処理装置。4. The data processing apparatus according to claim 1, further comprising a transmission unit configured to transmit the generated compressed image data to another apparatus. 5. 時間軸に沿って出力すべきデータの指定及び出力条件を定義した出力手順に従って、JPEG2000の圧縮画像データ(以下、単に圧縮画像データ)を処理するデータ処理方法であって、A data processing method for processing JPEG2000 compressed image data (hereinafter simply referred to as compressed image data) according to an output procedure that defines the designation of data to be output along a time axis and output conditions
前記出力手順に定義されたデータの指定に従って所定の圧縮画像データを取り込むデータ取得ステップと、A data acquisition step for capturing predetermined compressed image data in accordance with the designation of data defined in the output procedure;
前記取り込まれた圧縮画像データについて、前記出力手順に定義された出力条件に従って、当該圧縮画像データのヘッダ情報中の所定マーカセグメントのパラメータを書き換えて、前記出力条件に従った別の圧縮画像データを生成する出力データ生成ステップと、For the captured compressed image data, according to the output condition defined in the output procedure, the parameter of the predetermined marker segment in the header information of the compressed image data is rewritten, and another compressed image data according to the output condition is An output data generation step to generate;
を有することを特徴とするデータ処理方法。A data processing method characterized by comprising:
前記出力データ生成ステップは、前記出力手順に定義された出力条件に従って、前記ヘッダ情報中の画像の解像度、サイズ、画質、タイル位置、色、ROI領域、変形の一部又は全部に関係するマーカセグメントのパラメータを書き換えることを特徴とする請求項6記載のデータ処理方法。The output data generation step includes marker segments related to the resolution, size, image quality, tile position, color, ROI region, and part or all of deformation in the header information in accordance with the output conditions defined in the output procedure. The data processing method according to claim 6, wherein the parameter is rewritten. 前記出力データ生成ステップは、前記出力手順定義された出力条件に従って、さらに前記圧縮画像データ中の不要な符号を廃棄することを特徴とする請求項6又は7記載のデータ処理方法。8. The data processing method according to claim 6, wherein the output data generation step further discards unnecessary codes in the compressed image data in accordance with output conditions defined in the output procedure. 前記生成された圧縮画像データをイメージデータに伸長する伸長ステップをさらに有することを特徴とする請求項6乃至8のいずれか1項に記載のデータ処理方法。The data processing method according to claim 6, further comprising a decompressing step of decompressing the generated compressed image data into image data. 前記生成された圧縮画像データを別の装置へ送信する送信ステップをさらに有することを特徴とする請求項6乃至8のいずれか1項に記載のデータ処理方法。9. The data processing method according to claim 6, further comprising a transmission step of transmitting the generated compressed image data to another device.
JP2003076835A 2003-03-20 2003-03-20 Data processing apparatus and data processing method Expired - Fee Related JP4208122B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003076835A JP4208122B2 (en) 2003-03-20 2003-03-20 Data processing apparatus and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003076835A JP4208122B2 (en) 2003-03-20 2003-03-20 Data processing apparatus and data processing method

Publications (2)

Publication Number Publication Date
JP2004289333A JP2004289333A (en) 2004-10-14
JP4208122B2 true JP4208122B2 (en) 2009-01-14

Family

ID=33291753

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003076835A Expired - Fee Related JP4208122B2 (en) 2003-03-20 2003-03-20 Data processing apparatus and data processing method

Country Status (1)

Country Link
JP (1) JP4208122B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4629424B2 (en) * 2004-12-08 2011-02-09 株式会社リコー Image distribution system, server device, client device, cache control method, program, and information recording medium
JP4530274B2 (en) 2005-01-11 2010-08-25 株式会社リコー Code processing apparatus, code processing method, program, and information recording medium
JP5146145B2 (en) * 2008-06-24 2013-02-20 株式会社リコー Image processing apparatus, image processing method, computer program, and information recording medium
JP5590390B2 (en) * 2010-07-15 2014-09-17 ソニー株式会社 Image processing apparatus and method
JP2016076761A (en) * 2014-10-03 2016-05-12 株式会社ニコン Image processing apparatus and image processing program
JP6624861B2 (en) * 2015-09-16 2019-12-25 キヤノン株式会社 Image processing apparatus, control method, and program

Also Published As

Publication number Publication date
JP2004289333A (en) 2004-10-14

Similar Documents

Publication Publication Date Title
US7889791B2 (en) Method and apparatus for scalable compression of video
US7072520B2 (en) Method and apparatus for selecting layers for quantization based on sideband information
US7110608B2 (en) Digital image compression
JP4064196B2 (en) Client computer, server computer, program, storage medium, image data processing system, and image data processing method
JP4709493B2 (en) Method and product for communicating compressed digital images
JP4392783B2 (en) Movie reproduction system, movie transmission device, movie transmission method, program, and recording medium
US7440624B2 (en) Image compression apparatus, image decompression apparatus, image compression method, image decompression method, program, and recording medium
JP4349816B2 (en) Image processing apparatus, image compression apparatus, image processing method, image compression method, program, and recording medium
JP2004274758A (en) Method and apparatus for converting jpp-stream into jpeg-2000 code stream
JP2004274759A (en) Communication method and device for compressed digital image with limited access and server/client transfer
JP2007142614A (en) Image processing apparatus and method, program, and information recording medium
JP4898513B2 (en) Client / server system
JP4151963B2 (en) Image server device, client device, moving image distribution method, program, and information recording medium
JP2004242290A (en) Image processing apparatus and image processing method, image edit processing system, image processing program, and storage medium
US7721971B2 (en) Image processing system, image processing method and computer readable information recording medium
JP2005123856A (en) System and method for processing picture, program and information recording medium
JP4208122B2 (en) Data processing apparatus and data processing method
JP2004215021A (en) Image processor, image processing method, program and recording medium
JP2004172766A (en) Image browsing apparatus, image browsing storage method, program, and recording medium
JP4073333B2 (en) Image compression apparatus and image compression method
JP3914197B2 (en) Information processing apparatus, information processing method, program, and computer-readable recording medium
JP4489474B2 (en) Image processing apparatus, program, and recording medium
JP4475513B2 (en) Image processing apparatus, program, and recording medium
JP4059399B2 (en) Image processing apparatus, image processing system, image output control method, program, and recording medium
JP4036363B2 (en) Image processing apparatus and image processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080227

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080424

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081016

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

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131031

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees