JP2004328723A - ビットストリーム・フォーマット、ならびにその読み取りおよび書き込み方法および装置 - Google Patents

ビットストリーム・フォーマット、ならびにその読み取りおよび書き込み方法および装置 Download PDF

Info

Publication number
JP2004328723A
JP2004328723A JP2004103935A JP2004103935A JP2004328723A JP 2004328723 A JP2004328723 A JP 2004328723A JP 2004103935 A JP2004103935 A JP 2004103935A JP 2004103935 A JP2004103935 A JP 2004103935A JP 2004328723 A JP2004328723 A JP 2004328723A
Authority
JP
Japan
Prior art keywords
bit
data
frame
image data
bitstream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004103935A
Other languages
English (en)
Other versions
JP4129242B2 (ja
JP2004328723A5 (ja
Inventor
Jean-Marc Porchet
ジャン−マルク・ポルシェ
Michel Eid
ミッシェル・エイド
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.)
Avid Technology Inc
Original Assignee
Avid Technology Inc
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 Avid Technology Inc filed Critical Avid Technology Inc
Publication of JP2004328723A publication Critical patent/JP2004328723A/ja
Publication of JP2004328723A5 publication Critical patent/JP2004328723A5/ja
Application granted granted Critical
Publication of JP4129242B2 publication Critical patent/JP4129242B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N5/926Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback by pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】 ビットストリーム・フォーマットの読み取りおよび書き込み装置を提供する。
【解決手段】 ビット深度がmビットである画像データを2部分に分割して格納することができる。mは2の累乗ではない。第1部分(200)は、上位側のnビットであり、nは2の累乗である。第2部分(204)は、下位側のkビットであり、k=m−nおよびk<nである。所与の画像のmビット・データは、隣接ブロックとしてビットストリーム内に置かれ、データの終端(202)を、ページ境界のような、メモリ境界と位置合わせさせる。第2データ部分は、ビットストリーム内に隣接ブロックとして置く。第1データ部分は、第2データ部分に先行しかつこれに隣接してビットストリーム内に置かれる。パディング(212)を行って、画像データの先頭を、メモリの境界と位置合わせすることができる。
【選択図】 図2

Description

本発明は、ビットストリーム・フォーマット、ならびにその読み取りおよび書き込み方法および装置に関する。
画像データには、多数のサンプリング分解能がある。動画データには、時間的サンプリング・レートがあり、一般にはフレーム・レートと呼ばれている。各画像にも、垂直および水平サンプリング分解能があり、当該画像の水平および垂直方向における、個々のエレメントの数を示す。これは一般に画素と呼ばれている。通例、各画素は、色を規定する、ある数の成分によって表される。これらの成分は、輝度およびクロミナンス(例えば、YCrCb)を表すことができ、あるいは色チャネル(例えば、赤、緑および青)を表すことができる。成分毎の値を表すには、一般には、ビット深度(bit depth)と呼ばれる、ある数のビットが用いられる。画像に用いられる典型的なビット深度は、8ビット、10ビット、および16ビットである。
高品質のディジタル・ビデオ処理システムは、成分毎に10ビットのビット深度を用いることが多い。このビット深度では、品質、帯域幅、およびハードウエアにおける処理機能の効率的な実施の間で妥当な折衷案が得られる。しかしながら、汎用コンピュータでは、ビット・パス(bit path)のビット深度は、2の累乗に基づく(例えば、8、16、32または64ビット)。したがって、10ビット・データは、一般に、16ビット・データに変換されてから、コンピュータによって処理される。しかしながら、16ビット全体を送信または格納するとすれば、これは非効率的である。
場合によっては、8ビットのみのビット深度を用いて画像データを処理することが望ましい場合もある。8ビット表現は、切り捨てまたは丸めによって、10ビット表現から得ることもできる。しかしながら、8ビットのみを送信または格納すると、データが失われることになる。
ディスク上に10ビット・データを格納するために、10ビット・データを、2の累乗に基づいたビット深度を有するデータ・ワード(8ビットおよび32ビット・ワード等)にパックする技法が開発されている。例えば、米国特許第6,239,815号では、2画素分の10ビットYCrCbデータを5バイトにパックする。一般に用いられる別のパッキング・フォーマットに、「10:10:10:2」と呼ばれるものがあり、例えば、OpenGL グラフィック・システムにおいて用いられている。OpenGLは、Silicon Graphics, Inc.の商標である。このフォーマットでは、3つの10ビット値を32ビット・ワードに格納し、2ビットは未使用のまま残しておく。このパック化データでは、しかしながら、8ビット・データまたは10ビット・データのいずれかを抽出するために、多くの処理が行われる。
ビット深度がmビットである画像データを、2部分に分割して格納することができる。mは2の累乗ではない。第1部分は、上位側のnビットであり、nは2の累乗である。第2部分は、下位側のkビットであり、k=m−n、およびk<nである。例えば、10ビット・データの場合、8ビット部分および2ビット部分に分離することができる。所与の画像の8ビット・データは、隣接ブロックとしてビットストリーム内に置かれ、データの端部を、ページ境界のようなメモリ境界と位置合わせする。2ビット・データをバイト単位に収集し、これらを隣接ブロックとしてビットストリーム内に置く。2ビット・データのブロックを、8ビット・データのブロックの前でこれと連続するビットストリーム内に置く。パディング(padding)を行い、画像データの先頭をメモリ境界と位置合わせする。多数の画像の画像データを隣接してビットストリーム内に置き、格納することができる。
アルファ・チャネルに対する10ビット・データがある場合、これも8ビット部分および2ビット部分に分割する。所与の画像に対する8ビット・アルファ・データを、隣接ブロックとしてビットストリーム内に置き、データの先頭を、ページ境界のようなメモリ境界と位置合わせする。2ビットのアルファ・データをバイト単位で収集し、隣接ブロックとしてビットストリーム内に置く。2ビットのアルファ・データのブロックを、8ビットのアルファ・データのブロックに後続しかつこれに隣接してビットストリーム内に置く。パディングを行って、アルファ・データの終端をページ境界と位置合わせする。多数の画像のアルファ・データをビットストリームに隣接して置き、格納することができる。
格納について、アルファ・データは、画像データを格納するデータ・ファイルとは別個のデータ・ファイルに格納することができる。こうすれば、アルファ・データを処理しない場合には、アクセスしなくても済むことになる。アルファ・データを処理する場合、これをアルファ・データ・ファイルから読み出して、メモリ内の画像データ・ファイルからの画像データとインターリーブすれば、効率的な処理が可能となる。このように、画像データおよびアルファ・データは、画像毎に隣接しており、多数の画像のデータは、ビットストリームにおいて隣接している。
このようなフォーマットに10ビット・データを格納することにより、パッキングが効率的となる。また、これによって、CPU、ディスクまたはメモリの帯域幅のオーバーヘッドを全く伴わずに、単一の画像の8ビット部分にアクセスすることが可能となる。多数のデータに対するアクセスでは、オペレーティング・システムによる散乱/収集動作によって、画像の8ビット部分に効率的なアクセスが可能となる。散乱/収集および単純なシフト動作によって、10ビット・データを読み取って16ビット・ワードに変換することや、その逆が可能となる。このフォーマットのデータは、最小の処理オーバーヘッドで、成分あたり16ビットに変換することができる。
したがって、1つの形態では、コンピュータ情報製品は、コンピュータ読み取り可能媒体と、このコンピュータ読み取り可能媒体上に格納されているデータであって、コンピュータによって解釈されたときに、画像データのフレーム毎に、mビット画像データを格納するビットストリームから成る、データとを含む。ビットストリームは、画像データのフレーム毎に、当該フレームにおける全画素のmビット画像データの内上位側nビットを隣接ブロックに含む第1データ部分を含む。nは、整数であり2の累乗である。第2データ部分は、フレームにおける全画素のmビット画像データの内下位側kビットを、隣接ブロック内に含む。kは、mとnとの差に等しい。第1データ部分がメモリ・ページ境界上にて終了する。第2データ部分は、ビットストリームにおいて第1データ部分に先行し、第1データ部分と隣接する。
別の形態は、mビットの画像データのビットストリームを読み取る方法およびコンピュータ・プログラム製品である。ビットストリームは、画像データのフレーム毎に、当該フレームにおける全画素のmビット画像データの内上位側nビットを隣接ブロックに含む第1データ部分と、フレームにおける全画素のmビット画像データの内下位側kビットを、隣接ブロック内に含む第2データ部分とを含む。nは、整数であり2の累乗である。kは、mおよびn間の差である。第1データ部分はメモリ・ページ境界上にて終了する。第2データ部分は、ビットストリームにおいて第1データ部分に先行し、これと隣接する。この読み取り方法は、単一フレームのnビット表現の画像データにアクセスすることを含む。ビットストリーム内の単一フレームのnビット・データのオフセットおよびサイズを決定する。オフセットは、最も近いメモリ境界に切り下げられる。サイズは、最も近い境界に切り上げられる。切り下げたオフセットおよび切り上げたサイズを用いて、ビットストリームに対して読み取り動作を実行する。
別の形態は、mビット画像データをビットストリームに書き込む方法およびコンピュータ・プログラム製品である。画像データのフレーム毎に、ビットストリームにメモリが割り振られる。フレームの各mビット値の上位側nビットを収集して、nビット値を得る。nは、整数であり2の累乗である。収集したnビット値は、割り振られたメモリにおいて、ビットストリームの第1データ部分内に、隣接ブロックとして置かれる。第1データ部分は、メモリ境界上で終了する。フレームの各mビット値の下位側kビットを収集して、kビット値のnビットワードとする。kビット値のnビットワードは、割り振られたメモリにおいて、ビットストリームの第2データ部分に、隣接ブロックとして置かれる。第2データ部分は、ビットストリーム内において、第1データ部分に先行し、これと隣接する。
ビット深度がmビットである画像データを2部分に分割し格納することができる。ここで、mは2の累乗ではない。第1部分は、上位側のnビットであり、nは2の累乗である。第2部分は、下位側のkビットであり、k=m−nおよびk<nである。以下の例では、10ビット・データを8ビット部分および2ビット部分に分離する。
図1は、パック化10ビット・データを用いる画像処理システムの一例のデータ・フロー図である。画像処理システム100は、ビットストリーム内にパックされた10ビット・データを格納するデータ・ストレージ102を含む。ビットストリームは、例えば、1つ以上のデータ・ファイルに格納することができ、あるいはMXFまたはAAFのようなファイル・フォーマットにおけるメタデータによって参照することもできる。このようなビットストリームは、キャッシュのようなメモリに格納するとよい。このビットストリーム・フォーマットは、データ送信用フォーマットとしても用いることができ、その場合、102は送信媒体を表し、これを通じて、圧縮画像データを、コンピュータ読み取り可能信号として送信する。10ビットのパック化ビットストリームを含むデータ104は、読み取りアプリケーション106によって読み取る。108に示すこのようなデータは、書き込みアプリケーション110によって、以下に説明するようにして、このようなフォーマットに書き込まれる。
読み取りアプリケーション106は、以下に説明するように、8ビット画像データの単一フレームまたは多数のフレーム、あるいはビットストリームからの10ビット画像データの単一フレームまたは多数のフレームのいずれかを読み取る。読み取りアプリケーション106は、読み取った画像データ112を画像処理アプリケーション114に供給する。
画像処理アプリケーション114は、画像データに対して動作を行い、処理画像データ116を生成する。例えば、このような画像処理動作は、限定ではないが、複合化(compositing)、配合(blending)、および偏移(keying)のような、画像を結合する動作、またはサイズ変更、フィルタ処理、および色補正のような画像内部における動作、あるいは動き推定のような2つの画像間の動作を含むことができる。このような画像処理動作の結果は、10ビット・フォーマットの画像データにすることができ、あるいは別のフォーマットにすることもできる。また、画像処理アプリケーションは、入力画像データを全く用いずに、ディジタル画像データの取り込みおよび/または作成を行うアプリケーションでもよい。また、画像処理アプリケーションは、画像データに関するメタデータを操作し、例えば、動画ビデオ情報の一連の場面を規定することもできる。また、画像処理アプリケーションは、出力データを全く供給せずに、1つ以上のフォーマットで画像データを再生することもできる。
図1は1つの画像処理動作のみを示すが、多数の画像処理動作があってもよく、これらは、並列にデータを処理することができ、あるいは一連の動作として処理することもできる。画像処理動作によって画像データを処理する方法は多種多様であり、本発明はこれに限定されることはない。一例として、読み取りアプリケーションおよび/または画像処理アプリケーションおよび/または書き込みアプリケーションは、ビデオ情報を編集するためのもっと大きなアプリケーションの一部であってもよく、メモリ内の同じバッファにある画像データにアクセスすることもできる。別の例として、読み取りアプリケーションおよび/または画像処理アプリケーションおよび/または書き込みアプリケーションは、編集アプリケーションに「プラグイン」し、アプリケーション・プログラミング・インターフェース(API)を通じてメモリ内の画像データにアクセスすることができる。読み取りおよび書き込みアプリケーションをハードウエアで実施すれば、画像処理アプリケーションによってアクセスすることができる。
これより図2を参照すると、所与の画像の8ビット・データを隣接ブロック200としてビットストリーム内に置き、データの端部202をページ境界のような、メモリ境界と位置合わせする。2ビット・データをバイト単位で収集し、隣接ブロック204としてビットストリーム内に置く。2ビット・データのブロックを置くビットストリームは、8ビット・データのブロック200の前にあり、これと隣接する。パディング212を行えば、画像データの先頭をメモリ境界と位置合わせすることができる。多数の画像の画像データを隣接してビットストリーム内に置き、格納することもできる。
アルファ・チャネルがある場合、その10ビット・データも、8ビット部分および2ビット部分に分割することができる。所与の画像の8ビット・アルファ・データを、隣接ブロック206としてビットストリーム内に置き、データの先頭208をメモリ・ページ境界と位置合わせする。2ビット・アルファ・データをバイト単位で収集し、隣接ブロック210としてビットストリーム内に置く。2ビット・アルファ・データのブロックは、ビットストリームにおいて、8ビット・アルファ・データのブロック206に後続しかつこれと隣接して置く。パディング214を行えば、アルファ・データの終端をメモリ境界と位置合わせすることができる。多数の画像に対するアルファ・データがある場合、ビットストリーム内に隣接して配置し格納することができる。
格納について、アルファ・データは、画像データを格納するデータ・ファイルとは別個のデータ・ファイルに格納することができる。このようにすると、アルファ・データを処理しない場合、これにアクセスしなくて済む。アルファ・データを処理する場合、これをアルファ・データ・ファイルから読み出し、メモリ内の画像データ・ファイルからの画像データとインターリーブすることにより、効率的な処理が可能となる。このように、画像データおよび画像毎のアルファ・データは、ビットストリーム内で隣接しており、多数の画像に対するデータもビットストリーム内で隣接している。
ビットストリーム内の1つのデータ・ブロックのオフセットおよびサイズを用いて、当該ビットストリーム内においてこれと隣接する別のデータ・ブロックのオフセットを決定することができれば、データは、ビットストリーム内で隣接する。隣接とは、いずれの記憶媒体においても、データが隣接する記憶位置に格納されることを意味するのではない。各データ・ブロックには、ヘッダ、および/またはフッタ情報が当該ブロック内に格納されている。このようなヘッダおよびフッタの存在は、データ・ブロックが隣接しているか否かには関与しない。
図3は、図2に示すようなビットストリームから8ビット画像データの単一フレームを読み取る過程を説明するフロー・チャートである。所望の8ビット・データの大きさ、およびビットストリームにおけるそのオフセットを決定する(300)。ビットストリーム内の所望の8ビット・データのオフセットを、最も近いページ境界に切り下げる(round down)ことによって、読み取り動作のオフセットを決定する(302)。この値を切り下げるには、オフセット・モジュロ4096を計算し、この値をオフセットから減算する。8ビット・データのサイズを、ページ境界の倍数に切り上げることによって、読み取り動作のサイズを決定する(304)。この値を切り上げるには、オフセット・モジュロ4096を計算し、これを8ビット・サイズに加算する。次に、決定したオフセットにて開始し、決定したサイズを有するデータを読み取る(306)。実際の8ビット・オフセットと、切り下げた8ビット・オフセットとの間の差は、読み取ったデータの先頭におけるデータ量であり、これは破棄してもよい。
例えば、ある画像の全アクティブ画像データ・サイズが5184000バイトであると仮定する。ページ・サイズを4096(4K)バイトと仮定すると、データの総サイズは5185536バイトとなる。したがって、画像を表すデータ・ブロックは、1536バイトのパディング、1036800バイトの2ビット・データ、および4147200バイトの8ビット・データを含む。8ビット・データ部分のオフセットは、パディング・サイズと2ビット・データ・サイズの和、つまり、1038366バイトである。読み取り動作のオフセットは、8ビット・オフセットからオフセット・モジュロ4096を減算した値、したがって1036288となる。読み取り動作のサイズは、8ビット・サイズに8ビット・オフセット・モジュロ4096を足したもの、したがって4149248となる。つまり、読み取ったデータの先頭において、2048バイトを破棄する。画像のアルファ情報は全く読み取られない。
アルファ情報がある場合、単一フレームの8ビット・アルファ情報には、次のようにしてアクセスすることができる。読み取り動作では、画像の8ビット・アルファ情報の先頭から読み取りを開始する。読み取り動作のサイズは、最も近いページ・サイズに切り上げた、8ビット・アルファ情報のサイズである。読み取りサイズと8ビット・アルファ情報の実際のサイズの差が、読み取ったデータの終端において破棄するデータ量を示す。10ビット・アルファ情報の先頭を、10ビット画像データの終端と隣接させて、ビットストリーム内に置く。
図4は、10ビット画像データの単一フレームをビットストリームから読み取る過程を説明するフロー・チャートである。画像データのフレーム全体をバッファに読み込む(400)。8ビットおよび2ビット部分に対するバッファ内のオフセットを決定する(402)。8ビット画像データの4バイトを、最上位ビットから先に、4つの16ビット・レジスタの最下位ビット内にシフトする。2ビット画像データの対応するバイトから、各2ビット・データを、最上位ビットから先に、対応する8ビット・データを格納する16ビット・レジスタの同じ最下位ビットにシフトする(406)。これらの動作の結果、各レジスタ内に16ビットの整数値が得られ、上位側の6ビットは0に設定され、下位側の10ビットが所望の10ビット値を表す。ハードウエアの実現例では、2つのDMAエンジンを用いれば、データをバッファからビット・シフタに書き込み、各10ビット値を発生することができる。これら4つの値を処理した後、未だ処理すべき何らかの画像データがバッファ内に残っている場合(408にて判定する)、残りの画像データに対して処理を繰り返す。
アルファ情報がある場合、単一フレームの10ビット・アルファ情報には、同様の方法でアクセスすることができる。読み取り動作は、8ビット・アルファ情報の先頭から読み取り始める。フレームの8ビット・アルファ、2ビット・アルファ、およびパディング・データの総量をバッファに読み込む。8ビットおよび2ビット・アルファ・データを処理して、8ビットおよび2ビット画像データと同様に、16ビット整数で表される10ビット・データとする。10ビット・アルファ情報の先頭を、10ビット画像データの終端と隣接して、ビットストリーム内に置くことができる。
図5は、8ビット画像データの多数のフレームをビットストリームから読み取る過程を説明するフロー・チャートである。8ビット・データの多数のフレームを読み取るには、図3に関連付けて先に説明したように、8ビット・データの最初のフレームにアクセスし、次いで、2ビット部分を含む、後続画像のビットストリームを読み取る。後続画像からのデータにアクセスするには、オペレーティング・システムが提供する散乱/収集動作(scatter/gather operation)を用いる。即ち、画像毎に、パディングよび2ビット部分を、同じメモリ位置に読み込み、これを破棄する。
更に特定すれば、ビットストリームにおいて、最も近いページ境界に対する、8ビット・データの最初のフレームのオフセットおよびサイズを、図3に関して先に説明したようにして決定する(500)。後続のフレーム毎に、8ビット・データのオフセットおよびサイズを決定する(502)。そのフレームのパディングおよび2ビット・データのオフセットおよびサイズも決定する(504)。全てのフレームについて2ビット・データおよび8ビット・データのオフセットおよびサイズが決定され終えるまで、これらの計算(502、504)を繰り返す(506)。次いで、8ビットおよび2ビット・データのオフセットおよびサイズのリストを作成する(508)。このリストは、散乱/収集読み取り動作要求(510)のためのパラメータとして、オペレーティング・システムに提供する。具体的には、オペレーティング・システムには、パディングおよび2ビット・データを同じメモリ位置に送出し、それを破棄するように要求する。
別個のデータ・ファイルの中にアルファ情報があり、このアルファ情報が用いられていない場合、これを無視することができる。別個のデータ・ファイルの中にアルファ情報があり、8ビット・アルファ情報が用いられている場合、アルファ情報の各部分のビットストリームにおけるオフセットおよびサイズも決定する。この情報は、散乱/収集リストに追加され、8ビット・アルファ情報を、8ビット画像データとインターリーブしながら、適切なバッファに読み込むように、オペレーティング・システムに命令する。また、この情報は、散乱/収集リストにおいて、2ビット画像データまたはパディングを破棄するのと同様に、読み取り動作の間に2ビット・アルファ情報およびパディングを読み取り動作の間に破棄するように、オペレーティング・システムに命令する。
図6は、10ビット画像データの多数のフレームをビットストリームから読み取る過程を説明するフロー・チャートである。10ビット・データの多数のフレームでは、処理は、多数のフレーム分繰り返すことを除いて、図4のそれと同様である。即ち、画像データのフレーム全体をバッファに読み込む(600)。8ビットおよび2ビット部分に対するバッファ内のオフセットを決定する(602)。8ビット画像データの4バイトを、最上位ビットから先に、4つの16ビット・レジスタの最下位ビットにシフトする(604)。2ビット画像データのその対応するバイトから、各2ビットデータを、最上位ビットから先に、対応する8ビット・データを格納する16ビット・レジスタの同じ最下位ビットにシフトする(606)。これら4つの値を処理した後、処理する何らかの画像が未だバッファ内に残っている場合(608において判定する)、残りの画像データについて過程を繰り返す。画像に対する画像データを処理し終えた後、処理する何らかの画像がまだ残っていると610において判定した場合、過程(600、602、604、606、608)を繰り返す。
別個のデータ・ファイル内にアルファ情報があり、このアルファ情報が用いられていない場合、これを無視することができる。別個のデータ・ファイルにアルファ情報があり、アルファ情報が用いられている場合、このアルファ情報は、画像データと同様に、散乱/収集リストを用いて読み取り、処理して、画像データおよびアルファ・データをメモリ内においてインターリーブする。また、アルファ・データは、16ビットの整数を用いて表される10ビット・データに変換してもよい。
図7は、10ビット画像データの各フレームをパック化フォーマットに変換する過程を説明するフロー・チャートである。一般に、10ビット・データを処理するには、10ビット値を16ビット整数値として表す。この例では、これを入力フォーマットと仮定する。ビデオ情報のフレーム毎に、バッファを割り振り(700)、画像のビットストリームを構築する。フレーム内の全画素の10ビット・ビデオ情報の上位側8ビットを突き止める。8ビット部分を収集し、バッファの終端にある、ビットストリームの第1データ部分に置く(702)。即ち、画像の最後の画素に対応する8ビット・データを、8ビット・データ・ブロックの終端に置き、メモリ・ページの境界と位置を合わせる。フレーム内の全画素の10ビット・ビデオ情報の下位側2ビットを、突き止める。2ビット部分をバイト単位で収集し、バッファ内の8ビット・データの前にある、ビットストリームの第2データ部分に置く(704)。次いで、バッファ内における第2データ部分の前に、パディングまたはヘッダ情報を置く(706)。
いずれのアルファ情報でも、同様に処理することができる。即ち、アルファ情報の8ビット部分を収集し、ビットストリームにおけるバッファの先頭にある第1アルファ部分に置く。アルファ情報の2ビット部分を収集し、8ビット・アルファ部分の後ろにある、ビットストリーム内の第2アルファ部分に置く。次いで、バッファ内において、パディングまたはヘッダ/フッタ情報をバッファの終端に置く。多数の画像のアルファ・データは、ビットストリーム内において隣接配置され、画像データとは別個のファイルに格納することもできる。
図1に示すシステムの種々のコンポーネント、および図3〜図7のフローチャートは、汎用コンピュータ・システムを用いて、コンピュータ・プログラムとして実装することもできる。このようなコンピュータ・システムは、通例、情報をユーザに表示する出力デバイス、およびユーザから入力を受け取る入力デバイス双方に接続された主ユニットを含む。一般に、主ユニットは、相互接続機構を通じて、メモリ・システムに接続されているプロセッサを含む。また、入力デバイスおよび出力デバイスも、相互接続機構を通じて、プロセッサおよびメモリ・システムに接続されている。
1つ以上の出力デバイスをコンピュータ・システムに接続してもよい。出力デバイスの例には、限定としてではなく、陰極線管(CRT)ディスプレイ、液晶ディスプレイ(LCD)およびその他のビデオ出力デバイス、プリンタ、モデムのような通信機器、ならびにディスクまたはテープのような記憶装置が含まれる。1つ以上の入力デバイスをコンピュータ・システムに接続してもよい。入力デバイスの例には、限定としてではなく、キーボード、キーパッド、トラック・ボール、マウス、ペンおよびタブレット、通信機器、ならびにデータ入力デバイスが含まれる。本発明は、コンピュータ・システムと組み合わせて用いられる特定の入力または出力デバイスにも、ここに記載されたものにも限定されることはない。
コンピュータ・システムは、「C++」、Visual Basic、Java(登録商標)のようなコンピュータ・プログラミング言語、あるいはスクリプト言語やアセンブリ言語といったようなその他の言語を用いてプログラム可能な、汎用コンピュータ・システムとすることができる。また、コンピュータ・システムは、特別にプログラムされた、特殊目的ハードウエアとすることもできる。汎用コンピュータ・システムでは、プロセッサは、通例、Intel社、AMD社、Cyrix社、Motorola社、およびIBM社から入手可能な種々のプロセッサのような、市販のプロセッサである。また、汎用コンピュータは、通例、オペレーティング・システムを有し、他のコンピュータ・プログラムの実行を制御し、スケジューリング、デバッグ、入出力制御、アカウンティング、コンパイル、ストレージ割り当て、データ管理およびメモリ管理、ならびに通信制御および関連サービスを行う。オペレーティング・システムの例には、限定ではないが、UNIX(登録商標)オペレーティング・システム、ならびにMicrosoft社およびApple Computer社から入手可能なオペレーティング・システムが含まれる。
メモリ・システムは、通例、コンピュータ読み取り可能媒体を含む。この媒体は、揮発性または不揮発性、書き込み可能または書き込み不可能、および/または再書き込み可能または再書き込み不可能の場合もある。メモリ・システムは、通例、二進形態でデータを格納する。このようなデータは、マイクロプロセッサが実行するアプリケーション・プログラム、またはアプリケーション・プログラムが処理するためにディスク上に格納されている情報を規定することができる。本発明は、特定のメモリ・システムに限定されることはない。
ここに記載したようなシステムは、ソフトウエアまたはハードウエアまたはファームウエア、あるいはこれら3つの組み合わせで実現することもできる。システムの種々のエレメントは、個別でもあるいは組み合わせでも、1つ以上のコンピュータ・プログラム製品として実現することができ、この場合、コンピュータ・プログラムの命令は、コンピュータ読み取り可能媒体上に格納され、コンピュータによって実行される。プロセスの種々のステップは、コンピュータがこのようなコンピュータ・プログラム命令を実行することによって、実行することができる。コンピュータ・システムは、マルチプロセッサ・コンピュータ・システムとすることもでき、またはコンピュータ・ネットワークを通じて接続された多数のコンピュータを含むこともできる。図1に示す構成要素は、コンピュータ・プログラムの別個のモジュールとすることができ、あるいは別個のコンピュータ・プログラムとすれば、別個のコンピュータ上で動作可能となる。これらの構成要素によって生成されるデータは、メモリ・システムに格納することや、コンピュータ・システム間で送信することができる。
以上、実施形態の例について説明してきたが、これまでの説明は単なる例示であって限定ではなく、一例として提示したに過ぎないことは、当業者には当然明白なはずである。多数の変更も、当業者の能力の範囲内であり、本発明の範囲に該当するものと見なす。
図1は、パック化10ビット・データを用いる画像処理システムの一例のデータ・フロー図である。 図2は、10ビット・データのパック化形態の一例を示す図である。 図3は、8ビット画像データの単一フレームを読み取る過程を説明するフロー・チャートである。 図4は、10ビット画像データの単一フレームを読み取る過程を説明するフロー・チャートである。 図5は、8ビット・画像データの多数のフレームを読み取る過程を説明するフロー・チャートである。 図6は、10ビット・画像データの多数のフレームを読み取る過程を説明するフロー・チャートである。 図7は、10ビット画像データの各フレームを書き込む過程を説明するフロー・チャートである。
符号の説明
104 パック化データ
106 読み取りアプリケーション
108 パック化データ
110 書き込みアプリケーション
112 アンパック化データ
114 画像処理アプリケーション
116 アンパック化データ
204 2ビット画像データ
200 8ビット画像データ
206 8ビット・アルファ・データ
210 2ビット・アルファ・データ
212 パディング
214 パディング

Claims (12)

  1. コンピュータ情報製品であって、
    コンピュータ読み取り可能媒体と、
    前記コンピュータ読み取り可能媒体上に格納されているデータであって、コンピュータによって解釈されたときに、mビット画像データであって、画像データのフレーム毎に、
    前記フレームにおける全画素のmビット画像データの内上位側nビットを、隣接ブロックに含む第1データ部分であって、nが整数であり、2の累乗である、第1データ部分と、
    前記フレームにおける全画素のmビット画像データの内下位側kビットを、隣接ブロックに含む第2データ部分であって、kがmとnとの差に等しい、第2データ部分と、
    を含む前記のmビット画像データを、格納するためのビットストリームから成るデータと、
    を備え、
    前記第1データ部分がメモリ・ページ境界上にて終了し、
    前記第2データ部分が先行し、前記ビットストリームにおいて前記第1データ部分と隣接すること、
    を特徴とするコンピュータ情報製品。
  2. 請求項1記載のコンピュータ情報製品において、前記ビットストリームは、更に、画像データの各フレームに対応するアルファ情報を備えていること、を特徴とするコンピュータ情報製品。
  3. 請求項2記載のコンピュータ情報製品において、前記アルファ情報は、mビットのアルファ情報であって、
    前記フレームのmビット・アルファ情報の内上位側nビットを、隣接ブロックに含む第1アルファ部分と、
    前記フレームのmビット・アルファ情報の内下位側kビットを、隣接するブロックに含む第2アルファ部分と、
    から成ること、を特徴とするコンピュータ情報製品。
  4. 請求項3記載のコンピュータ情報製品において、前記第1アルファ部分がメモリの境界上にて開始すること、を特徴とするコンピュータ情報製品。
  5. 請求項4記載のコンピュータ情報製品において、前記第2アルファ部分は、前記ビットストリームにおいて、前記第1アルファ部分に後続しかつそれと隣接すること、を特徴とするコンピュータ情報製品。
  6. 請求項1記載のコンピュータ情報製品において、mは10に等しく、nは8に等しく、kは2に等しいこと、を特徴とするコンピュータ情報製品。
  7. mビットの画像・データのビットストリームを読み取る方法であって、前記ビットストリームは、画像データのフレーム毎に、前記フレームにおける全画素のmビット画像データの内上位側nビットを隣接ブロックに含み、nが整数であり2の累乗である、第1データ部分と、前記フレームにおける全画素のmビット画像データの内下位側kビットを隣接ブロックに含み、kがmとnとの差に等しい、第2データ部分とを備え、前記第1データ部分がメモリ・ページ境界上にて終了し、前記第2データ部分が、前記ビットストリームにおいて前記第1データ部分に先行しかつこれと隣接し、前記読み取り方法が、
    単一フレームのnビット表現の画像データにアクセスするステップであって、
    前記ビットストリームにおける前記単一フレームのnビット・データのオフセットおよびサイズを決定するステップと、
    前記オフセットを最も近いメモリ境界に切り下げるステップと、
    前記サイズを最も近い境界に切り上げるステップと、
    前記切り下げたオフセットおよび前記切り上げたサイズを用いて、前記ビットストリーム上で読み取り動作を実行するステップと、
    を含む、前記のアクセスするステップ、
    を備えたことを特徴とする読み取り方法。
  8. 請求項7記載の方法において、前記ビットストリームは、更に、画像データの各フレームに対応するアルファ情報を備えており、フレームに対する該アルファ情報は、前記ビットストリームにおいて、対応するフレームの前記第1データ部分に後続しかつそれに隣接しており、前記方法が、更に、
    前記ビットストリームにおけるnビット・アルファ情報のオフセットおよびサイズを決定するステップと、
    前記サイズを最も近いメモリ境界に切り上げるステップと、
    前記オフセットおよび切り上げたサイズを用いて、前記ビットストリーム上で読み取り動作を実行するステップと、
    を含むこと、を特徴とする方法。
  9. 請求項7記載の方法であって、更に、追加フレームのnビット表現の画像データにアクセスするステップであって、
    前記ビットストリームにおいて、追加フレーム毎に、前記nビット画像データのオフセットおよびサイズを決定するステップと、
    前記オフセットを最も近いメモリ境界に切り下げるステップと、
    前記サイズを最も近い境界に切り上げるステップと、
    各追加フレームに対応して、前記ビットストリーム内における他のデータのオフセットおよびサイズを決定するステップと、
    オペレーティング・システムに、散乱/収集動作を用いて、追加フレーム毎の前記他のデータおよび前記nビット画像データを含む前記ビットストリームを読み取って、前記他のデータを破棄し、前記nビット画像データをメモリ内に保持するように命令するステップと、
    を含む、前記のアクセスするステップ、
    を備えたこと、を特徴とする方法。
  10. コンピュータ・プログラム製品であって、
    コンピュータ読み取り可能媒体と、
    コンピュータ読み取り可能媒体上に格納されているコンピュータ・プログラム命令であって、コンピュータによって解釈されたときに、mビットの画像データのビットストリームを読み取る方法を前記コンピュータに実行するように命令する、コンピュータ・プログラム命令と、
    を備え、
    前記ビットストリームは、画像データのフレーム毎に、前記フレームにおける全画素のmビット画像データの内上位側nビットを隣接ブロックに含み、nが整数であり2の累乗である、第1データ部分と、前記フレームにおける全画素のmビット画像データの内下位側kビットを隣接ブロックに含み、kがmとnとの差に等しい、第2データ部分とを備え、前記第1データ部分がメモリ・ページ境界上にて終了し、前記第2データ部分が、前記ビットストリームにおいて前記第1データ部分に先行しかつこれと隣接し、前記読み取り方法が、
    単一フレームのnビット表現の画像データにアクセスするステップであって、
    前記ビットストリームにおける前記単一フレームのnビット・データのオフセットおよびサイズを決定するステップと、
    前記オフセットを最も近いメモリ境界に切り下げるステップと、
    前記サイズを最も近い境界に切り上げるステップと、
    前記切り下げたオフセットおよび前記切り上げたサイズを用いて、前記ビットストリームに読み取り動作を実行するステップと、
    を含む、前記のアクセスするステップ、
    を備えたこと、を特徴とするコンピュータ・プログラム製品。
  11. mビットの画像データをビットストリームに書き込む方法であって、
    前記画像データのフレーム毎に、
    ビットストリームにメモリを割り振るステップと、
    前記フレームの各mビット値の上位側nビットを収集して、nビット値を得るステップであって、nが整数であり、2の累乗である、前記のステップと、
    前記収集したnビット値を、前記割り振られたメモリにおける前記ビットストリームの第1データ部分内に、隣接ブロックとして置くステップであって、前記第1データ部分が、メモリ境界で終了する、前記のステップと、
    前記フレームの各mビット値の下位側kビットを、kビット値のnビット・ワード内へ収集するステップと、
    前記kビット値のnビット・ワードを、前記割り振られたメモリにおける前記ビットストリームの第2データ部分内に、隣接ブロックとして置くステップであって、前記第2データ部分が、前記ビット・ストリームにおいて前記第1データ部分に先行しかつそれに隣接した、前記のステップと、
    を備えた書き込み方法。
  12. コンピュータ・プログラム製品であって、
    コンピュータ読み取り可能媒体と、
    コンピュータ読み取り可能媒体上に格納されているコンピュータ・プログラム命令であって、コンピュータによって解釈されたときに、mビットの画像データをビットストリームに書き込む方法を前記コンピュータに実行するように命令する、コンピュータ・プログラム命令と、
    を備え、前記方法が、
    前記画像データのフレーム毎に、
    前記ビットストリームにメモリを割り振るステップと、
    前記フレームの各mビット値の上位側nビットを収集して、nビット値を得るステップであって、nが整数であり、2の累乗である、前記のステップと、
    前記収集したnビット値を、前記割り振られたメモリにおける前記ビットストリームの第1データ部分内に、隣接ブロックとして置くステップであって、前記第1データ部分がメモリ境界で終了する、前記のステップと、
    前記フレームの各mビット値の下位側kビットを、kビット値のnビット・ワード内へ収集するステップと、
    前記kビット値のnビット・ワードを、前記割り振られたメモリにおける前記ビットストリームの第2データ部分内に、隣接ブロックとして置くステップであって、前記第2データ部分が、前記ビット・ストリームにおいて前記第1データ部分に先行しかつそれに隣接した、前記のステップと、
    を備えたこと、を特徴とするコンピュータ・プログラム製品。
JP2004103935A 2003-04-03 2004-03-31 ビットストリーム・フォーマット、ならびにその読み取りおよび書き込み方法および装置 Expired - Lifetime JP4129242B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/406,013 US7145567B2 (en) 2003-04-03 2003-04-03 Bitstream format and reading and writing methods and apparatus therefor

Publications (3)

Publication Number Publication Date
JP2004328723A true JP2004328723A (ja) 2004-11-18
JP2004328723A5 JP2004328723A5 (ja) 2008-05-15
JP4129242B2 JP4129242B2 (ja) 2008-08-06

Family

ID=32850636

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004103935A Expired - Lifetime JP4129242B2 (ja) 2003-04-03 2004-03-31 ビットストリーム・フォーマット、ならびにその読み取りおよび書き込み方法および装置

Country Status (5)

Country Link
US (2) US7145567B2 (ja)
EP (1) EP1465418B1 (ja)
JP (1) JP4129242B2 (ja)
CA (1) CA2462413C (ja)
DE (1) DE602004001797T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190120166A (ko) * 2017-02-24 2019-10-23 어드밴스드 마이크로 디바이시즈, 인코포레이티드 델타 색상 압축의 비디오 적용

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4111192B2 (ja) * 2004-12-28 2008-07-02 セイコーエプソン株式会社 メモリコントローラ、表示コントローラ及びメモリ制御方法
EP1713284A1 (en) * 2005-04-15 2006-10-18 Deutsche Thomson-Brandt Gmbh Method and device for recording digital data
EP1713285B1 (en) * 2005-04-15 2015-09-09 Thomson Licensing Method and device for recording digital data
US8866915B2 (en) * 2005-11-15 2014-10-21 Lawrence Livermore National Security, Llc High speed, real-time, camera bandwidth converter
US7474313B1 (en) * 2005-12-14 2009-01-06 Nvidia Corporation Apparatus, method, and system for coalesced Z data and color data for raster operations
US8212828B2 (en) * 2006-01-04 2012-07-03 Lsi Corporation Hybrid multiple bit-depth video processing architecture
US7471218B2 (en) * 2006-09-18 2008-12-30 National Semiconductor Corporation Methods and systems for efficiently storing and retrieving streaming data
US20120183234A1 (en) * 2011-01-14 2012-07-19 Sony Corporation Methods for parallelizing fixed-length bitstream codecs
EP2749026A1 (en) 2011-11-18 2014-07-02 Koninklijke Philips N.V. Encoding high quality (medical) images using standard lower quality (web) image formats
WO2014209279A1 (en) * 2013-06-25 2014-12-31 Intel Corporation Management and access of media with media capture device operator perception data
KR102264161B1 (ko) * 2014-08-21 2021-06-11 삼성전자주식회사 이미지 처리 장치, 이미지 처리 시스템, 이미지 처리 시스템의 동작방법 및 이미지 처리 시스템을 포함하는 시스템 온 칩
US10672148B2 (en) 2015-10-30 2020-06-02 Agfa Healthcare Compressing and uncompressing method for high bit-depth medical gray scale images
EP3367683A1 (en) * 2017-02-24 2018-08-29 Advanced Micro Devices, Inc. Delta color compression application to video
US10956245B1 (en) * 2017-07-28 2021-03-23 EMC IP Holding Company LLC Storage system with host-directed error scanning of solid-state storage devices
GB2567427B (en) 2017-10-06 2020-10-07 Imagination Tech Ltd Data compression
US11153578B2 (en) 2018-04-27 2021-10-19 Ati Technologies Ulc Gradient texturing compression codec
GB2575435B (en) 2018-06-29 2022-02-09 Imagination Tech Ltd Guaranteed data compression
CN110351562A (zh) * 2019-06-25 2019-10-18 西安交通大学 一种10比特yuv图像存储格式

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0721942B2 (ja) 1984-10-11 1995-03-08 ソニー株式会社 チヤンネル符号化方法
JP2693809B2 (ja) 1989-03-17 1997-12-24 シャープ株式会社 画像記録再生装置
JPH0329517A (ja) 1989-06-27 1991-02-07 Matsushita Electric Ind Co Ltd 記録装置と再生装置
CA2028329C (en) 1989-10-23 2000-01-18 Hideaki Yamanaka Cell exchanging apparatus
US4965668A (en) 1989-11-09 1990-10-23 The Grass Valley Group, Inc. Adaptive rounder for video signals
US5237316A (en) 1990-02-02 1993-08-17 Washington University Video display with high speed reconstruction and display of compressed images at increased pixel intensity range and retrofit kit for same
US5081450A (en) 1990-03-09 1992-01-14 International Business Machines Corporation Apparatus and method for compressing and expanding multibit digital pixel data
JP3103914B2 (ja) 1992-08-21 2000-10-30 ソニー株式会社 データの丸め処理回路およびデータの復元回路
EP0663083B1 (en) * 1992-09-29 2000-12-20 Seiko Epson Corporation System and method for handling load and/or store operations in a superscalar microprocessor
JPH0784851A (ja) * 1993-09-13 1995-03-31 Toshiba Corp 共有データ管理方法
JPH07105638A (ja) 1993-10-05 1995-04-21 Matsushita Electric Ind Co Ltd 画像データの記録再生装置
US5570356A (en) 1995-06-07 1996-10-29 International Business Machines Corporation High bandwidth communications system having multiple serial links
US5673065A (en) 1995-12-29 1997-09-30 Intel Corporation Color reduction and conversion using an ordinal lookup table
FI100563B (fi) * 1996-01-30 1997-12-31 Nokia Oy Ab Digitaalisten esitysobjektien salaus lähetyksessä ja tallennuksessa
US6239815B1 (en) * 1998-04-03 2001-05-29 Avid Technology, Inc. Video data storage and transmission formats and apparatus and methods for processing video data in such formats
BR0105034A (pt) 2000-03-13 2007-05-29 Koninkl Philips Electronics Nv processos para armazenamento de itens de dados em uma memória e para leitura de itens de dados de uma memória, arranjos para armazenamento de itens de dados em uma memória e para leitura de itens de dados de uma memória, e, meio de armazenamento

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190120166A (ko) * 2017-02-24 2019-10-23 어드밴스드 마이크로 디바이시즈, 인코포레이티드 델타 색상 압축의 비디오 적용
KR102569371B1 (ko) 2017-02-24 2023-08-22 어드밴스드 마이크로 디바이시즈, 인코포레이티드 델타 색상 압축의 비디오 적용

Also Published As

Publication number Publication date
JP4129242B2 (ja) 2008-08-06
US7145567B2 (en) 2006-12-05
US20040196291A1 (en) 2004-10-07
EP1465418B1 (en) 2006-08-09
DE602004001797D1 (de) 2006-09-21
EP1465418A1 (en) 2004-10-06
US20070076009A1 (en) 2007-04-05
DE602004001797T2 (de) 2007-08-16
CA2462413A1 (en) 2004-10-03
CA2462413C (en) 2008-07-08

Similar Documents

Publication Publication Date Title
US20070076009A1 (en) Bitstream format and reading and writing methods and apparatus therefor
US9607407B2 (en) Variable-width differential memory compression
US6744928B1 (en) Variable-length decoding method and apparatus employing code length and a recording medium
US7916363B2 (en) Bitstream format for compressed image data
CN110913262B (zh) 图像叠加方法和装置
US20060044320A1 (en) Video display control apparatus and video display control method
KR20080089560A (ko) 알파 채널 인식 환경에서 비알파 채널 영상 데이터를 이용하는 시스템 및 방법
WO2018176934A1 (zh) 一种数据流控方法及装置
US5007001A (en) Method for reordering the pixel map of a digitized image
KR102194615B1 (ko) 그래픽 애플리케이션을 위한 타일 기반 압축 및 압축 해제
US20040190771A1 (en) Integer format for efficient image data processing
US7483037B2 (en) Resampling chroma video using a programmable graphics processing unit to provide improved color rendering
US20050168479A1 (en) Method and apparatus for color quantization of images employing a dynamic color map
KR101100829B1 (ko) 이미지 데이터 무손실 압축 및 해제하는 시스템 및 방법.
CN105554375A (zh) 一种硬盘录像机中视频预览的方法及装置
US9070403B2 (en) Processing of scalable compressed video data formats for nonlinear video editing systems
CN108711191A (zh) 一种视频处理方法和vr设备
CN109446827A (zh) 数据加解密方法及系统
US9317891B2 (en) Systems and methods for hardware-accelerated key color extraction
CN109274902B (zh) 视频文件处理方法和装置
AU2009212933A1 (en) Methods of storing and retrieving images
US7468733B2 (en) Method and system for improving color reduction
Bitstreams SMPTE REGISTERED DISCLOSURE DOCUMENT
TW201447864A (zh) 將影像寫入記憶體的方法及其裝置
CN117272939A (zh) 一种文档转换方法、系统、设备和存储介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070302

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070305

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070903

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070927

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20071226

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080104

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20080327

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

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

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

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4129242

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120523

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130523

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term