JP2004080181A - データ埋め込み装置,データ取り出し装置 - Google Patents

データ埋め込み装置,データ取り出し装置 Download PDF

Info

Publication number
JP2004080181A
JP2004080181A JP2002235470A JP2002235470A JP2004080181A JP 2004080181 A JP2004080181 A JP 2004080181A JP 2002235470 A JP2002235470 A JP 2002235470A JP 2002235470 A JP2002235470 A JP 2002235470A JP 2004080181 A JP2004080181 A JP 2004080181A
Authority
JP
Japan
Prior art keywords
data
embedding
moving image
embedded
direction flag
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
JP2002235470A
Other languages
English (en)
Other versions
JP4225752B2 (ja
Inventor
Kimihiko Kazui
数井 君彦
Akira Nakagawa
中川 章
Eiji Morimatsu
森松 映史
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2002235470A priority Critical patent/JP4225752B2/ja
Priority to US10/637,587 priority patent/US7324697B2/en
Priority to DE60329650T priority patent/DE60329650D1/de
Priority to EP20030255022 priority patent/EP1394737B1/en
Publication of JP2004080181A publication Critical patent/JP2004080181A/ja
Application granted granted Critical
Publication of JP4225752B2 publication Critical patent/JP4225752B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • G06T1/0035Output size adaptive watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0053Embedding of the watermark in the coding stream, possibly without decoding; Embedding of the watermark in the compressed domain

Abstract

【課題】データ量を変化させることなく、フレーム間予測符号化動画像データに対して、任意のデータを埋め込む装置を提供すること。
【解決手段】フレーム間予測符号化動画像データを記憶する動画像記憶手段と、前記フレーム間予測符号化動画像データに埋め込む埋め込みデータを記憶する埋め込みデータ記憶手段と、前記フレーム間予測符号化動画像データにおけるフレームデータ毎に含まれ半画素精度動き方向ベクトルにおいて丸め誤差が累積することを防止するための丸め方向フラグの値1ビットに対して、前記埋め込みデータ1ビットを埋め込む埋め込み手段と、を備える。
【選択図】 図3

Description

【0001】
【発明の属する技術分野】
本発明は、符号化動画像に対し情報を埋め込む装置、又は符号化動画像に埋め込まれた情報を読み出す装置に関する。
【0002】
【従来の技術】
従来、フレーム間予測符号化動画像データ(以後「符号化動画像データ」と呼ぶ)に対し、データを埋め込む技術がある。符号化動画像データを生成する技術の例として、ISO/IEC MPEG−1/2/4や、ITU−T H.263 Version.2などがある。
【0003】
符号化動画像データに埋め込まれるデータの例としてメタデータがある。メタデータとは、メディアの性質や特徴などを記述するためのデータ、即ちデータに関するデータである。メタデータを符号化動画像データに埋め込むことにより、個々のユーザに対して動画像に関係する情報を通知し、ユーザの利便性を向上させるサービスを行うことが可能となる。
【0004】
【発明が解決しようとする課題】
ところで、個々のユーザに対応したメタデータを符号化動画像データに埋め込んでユーザに提供する場合、埋め込むメタデータはユーザ毎に変化する。このため、事前にメタデータを埋め込んである符号化動画像データを用意することはできない。即ち、ユーザの要求に対応したメタデータを、ユーザから符号化動画像データに対する要求がある度に、原画像データ(符号化されていない動画像データ)又は符号化動画像データに埋め込む必要がある。
【0005】
また、データが埋め込まれた符号化動画像データを、ネットワークを通じてリアルタイムで送信し、他装置において表示(復号化)することを実現するためには、データが埋め込まれた符号化動画像データを生成する装置における負荷は少ない方が望ましい。
【0006】
一般に、動画像データを符号化することは、装置に多大な負荷を要する。このため、原画像データに対してデータを埋め込んだ後に符号化する場合、装置に対する負荷が増大する。従って、この場合、データが埋め込まれた符号化動画像データを、ネットワークを通じてリアルタイムで送信することが困難となる。これに対し、符号化動画像データに対してデータを埋め込む場合、原画像データにデータを埋め込む場合に比べて、装置にかかる負荷が少ない。従って、リアルタイム送信のためには、後者が採用されることが望ましい。
【0007】
また、データを埋め込む前の符号化動画像データのデータ量と、データを埋め込んだ後の符号化動画像データのデータ量とは同じであることが望ましい。以下、データ量が同じであることが望ましい理由を説明する。
【0008】
符号化動画像データのリアルタイム配信では、パケット化のために符号化動画像データが分割される。このとき、任意の位置でデータが分割されると、伝送路でのエラー発生時に即座に後続する符号化動画像データを復号化することが困難となる。このため、通常、符号化動画像データを分析することにより、分割するためのデータ位置(通常、フレーム先頭)を検知する。ただし、ヒントトラックを用いることにより、符号化動画像データの分割位置を分析する必要が無くなる。ヒントトラックは、符号化動画像データをパケット化する際に、符号化動画像データを分割するデータ位置をあらかじめ示すものである。ヒントトラックが示す位置で符号化動画像データを分割することにより、符号化動画像データを分析することなく分割することが可能となる。これにより、符号化動画像データをパケット化するために必要な負荷が軽減される。
【0009】
しかし、符号化動画像データのデータ量が変化すると、符号化動画像データを分割するためのデータ位置が変化する。このため、符号化動画像データのデータ量が変化すると、ヒントトラックを使用できなくなる。従って、符号化動画像データを分割するための分析が必要となり、パケット化するのに要する負荷が増加する。
【0010】
本発明は、このような問題を解決し、データ量を変化させることなく、符号化動画像データに対して、任意のデータを埋め込む装置を提供することを目的とする。
【0011】
【課題を解決するための手段】
上記問題を解決するため、本発明は以下のような構成をとる。本発明の第一の態様は、データ埋め込み装置であって、フレーム間予測符号化動画像データを記憶する動画像記憶手段と、前記フレーム間予測符号化動画像データに埋め込む埋め込みデータを記憶する埋め込みデータ記憶手段と、前記フレーム間予測符号化動画像データにおけるフレームデータ毎に含まれた丸め方向フラグに対して、前記埋め込みデータを埋め込む埋め込み手段と、を備える。
【0012】
本発明の第一の態様によれば、フレーム間予測符号化動画像データの丸め方向フラグの値に対して、埋め込みデータが埋め込まれる。このため、埋め込みデータが埋め込まれる前のフレーム間予測符号化動画像データのデータ量と、埋め込みデータが埋め込まれた後のフレーム間予測符号化動画像データのデータ量とは変化しない。従って、データ量を変化させることなく、フレーム間予測符号化動画像データに対して、任意のデータを埋め込むことが可能となる。
【0013】
また、本発明による第一の態様の前記埋め込み手段は、前記丸め方向フラグの値と前記埋め込みデータの値との排他的論理和を演算する排他的論理和演算手段と、前記フレーム間予測符号化動画像データに含まれる値であって前記排他的論理和演算手段の入力として用いられた丸め方向フラグの値を、前記排他的論理和演算手段の演算結果の値に置き換える置換手段と、を含むように構成されても良い。
【0014】
また、本発明による第一の態様の前記埋め込み手段は、前記埋め込みデータを複数のサブ埋め込みデータに分割する分割手段と、前記フレーム間予測符号化動画像データに含まれる丸め方向フラグにおける1と0との分布が略均等となるように、前記サブ埋め込みデータを反転すべきか否かを判断する反転判断手段と、前記反転判断手段の判断に従って、該当するサブ埋め込みデータを反転する反転手段と、前記反転手段によって反転されたサブ埋め込みデータ又は反転されないサブ埋め込みデータを、このサブ埋め込みデータのビット数と同数の連続したフレームにおける丸め方向フラグと置き換える置換手段と、を含むように構成されても良い。
【0015】
また、本発明による第二の態様は、データ取り出し装置であって、埋め込みデータが丸め方向フラグに埋め込まれたフレーム間予測符号化動画像データを記憶する動画像記憶手段と、埋め込みデータが埋め込まれる前のフレーム間予測符号化動画像データの連続したフレームにおける丸め方向フラグのビットパターンを特定するためのビットパターン情報を記憶するパターン記憶手段と、前記ビットパターン情報により特定されるビットパターンと、前記フレーム間予測符号化動画像データの丸め方向フラグの値との排他的論理和を演算する演算手段と、を備える。
【0016】
また、本発明の第三の態様は、データ取り出し装置であって、埋め込みデータが埋め込まれたフレーム間予測符号化動画像データを記憶する動画像記憶手段と、前記フレーム間予測符号化動画像データにおける連続したフレームを複数のサブフレームに分割するフレーム分割手段と、前記サブフレームの各フレームから、フレーム間予測符号化動画像データの丸め方向フラグの値を取り出す取り出し手段と、前記サブフレームにおける丸め方向フラグの値を反転すべきか否かを判断する反転判断手段と、前記反転判断手段の判断に従って、該当するサブフレームにおける丸め方向フラグの値を反転し埋め込みデータとして出力する反転手段と、を備える。
【0017】
【発明の実施の形態】
〔動作原理〕
本実施形態におけるデータ埋め込み装置は、符号化動画像データに含まれる動きベクトルの丸め方向フラグ(以下「丸め方向フラグ」と呼ぶ)に埋め込みデータを重畳する。まず、本実施形態の動作原理として、丸め方向フラグについて説明する。
【0018】
〈丸め方向フラグ〉
丸め方向フラグは、ISO/IEC MPEG−4やITU−T H.263Version.2のように、低ビットレートの動画像符号化方法において採用されている。MPEG−4では、VOP(Visual Object Plane)ヘッダ内に存在するvop_rounding_typeと呼ばれる1ビットのデータが丸め方向フラグである。また、H.263 Version.2では、RTYPEと呼ばれる1ビットのデータが丸め方向フラグである。
【0019】
MPEG−4やH.263 Version.2はいずれも、フレーム間予測符号化法を行う。このため、MPEG−4やH.263 Version.2では、動き予測において、半画素精度動きベクトルを導入することにより、動き予測効率を向上させている。数1〜数3は、動きベクトル(Vx, Vy)と参照画像g(x,y)とを用いて動き予測画像f(x, y)を導く式である。ただし、数1〜数3は、夫々Vx,Vy,Vx及びVyが半画素精度である場合の式である。
【0020】
【数1】
Figure 2004080181
【0021】
【数2】
Figure 2004080181
【0022】
【数3】
Figure 2004080181
【0023】
数1〜数3における除算では、演算結果の整数値への丸め方法が規定されている。具体的には、演算結果は、正の無限大方向に丸められる。このように演算結果が丸められることにより、誤差が生じる。この誤差、即ち丸め誤差は、フレーム毎に累積される。このため、連続したフレームでは、後のフレームになるにつれて、丸め誤差が累積する。従って、累積誤差が大きくなることにより、画面全体が赤色を帯びるなどの視覚的な劣化が生じる。
【0024】
MPEG−4やH.263では、このような視覚的な劣化を防止するため、丸め方向フラグを導入している。丸め方向フラグは、前方予測フレーム毎に付与される1ビットの情報である。丸め方向フラグは、半画素精度動き方向ベクトルにおいて丸め誤差が累積することを防止するための情報である。丸め方向フラグを用いた場合における、半画素精度動きベクトルによる動き補償を、数4〜数6として示す。数4〜数6は、動きベクトル(Vx, Vy)と参照画像g(x, y)と丸め方向フラグrounding(0/1)とを用いて動き予測画像f(x, y)を導く式である。ただし、数4〜数6は、夫々Vx,Vy,Vx及びVyが半画素精度である場合の式である。
【0025】
【数4】
Figure 2004080181
【0026】
【数5】
Figure 2004080181
【0027】
【数6】
Figure 2004080181
【0028】
丸め方向フラグの値が切り替わることにより、丸め方向が正の無限大又は負の無限大に切り替わる。フレーム毎に、丸め方向フラグが0又は1夫々50%の確率で発生することにより、丸め誤差の影響が相殺され、復号画像での劣化が防止(回避)される。
【0029】
本実施形態におけるデータ埋め込み装置は、この丸め方向フラグの値を変更することにより、1フレーム当たり1ビットのデータを埋め込む。このとき、丸め方向フラグはもともと1フレーム当たり1ビットのデータであるため、データが埋め込まれる前とデータが埋め込まれた後では、総データ量は一切変化しない。即ち、丸め方向フラグ1ビットに対し、埋め込みデータを1ビット埋め込む。ただし、丸め方向フラグの値が元の値から変更されるため、画像劣化が生じる可能性がある。即ち、丸め方向フラグの値は、もともと夫々50%の確率で0又は1の値を持つが、丸め方向フラグの値がデータ埋め込みにより変更され、0又は1の値をどちらかに偏って持つこととなり、累積誤差が大きくなる可能性がある。
【0030】
データ埋め込み後の丸め方向フラグの値における0,1の出現分布を1:1にすることにより、丸め方向フラグの値が偏ることを防ぎ、シーケンス全体における画像劣化を防ぐことが可能である。この場合、丸め誤差フラグの値は、実際の値から変更されるため、画素によって多少の誤差が発生する。しかし、シーケンス全体における画像劣化は防止される。例えば300フレームの符号化動画像において、全フレームの丸め方向フラグを全て反転させた場合(全て反転している為、丸め方向フラグの値における0,1の出現分布は1:1である)の画素毎の誤差累積は最大でも10程度であり、視覚的な劣化は感知されない。即ち、丸め方向フラグの値を元の値から書き換えたとしても、丸め方向フラグの値における0,1の出現分布を1:1に保つことにより、視覚的な画像劣化を防ぐことが可能となる。
【0031】
また、MPEG−4やH.263などの動画像符号化方法では、DCT(Discrete Cosine Transform:離散コサイン変換)演算精度のミスマッチを解消するために、定期的(例えば256フレーム毎)にフレーム内符号化(イントラ符号化)を実行する。フレーム内符号化とは、フレーム内の情報のみから符号化することである。このため、フレーム内符号化では丸め誤差が発生しない。従って、フレーム内符号化が実行されることにより、丸め誤差の累積がリセットされる。
【0032】
上記した理由により、丸め方向フラグの値における0,1の出現分布を1:1に保つことにより、実用上の問題が発生しない程度に視覚的な画像劣化を防ぐことが可能となる。
【0033】
次に、本実施形態におけるデータ埋め込み装置が丸め方向フラグに埋め込みデータを重畳する処理の原理について説明する。本実施形態におけるデータ埋め込み装置は、単ビットデータ埋め込み処理又は複ビットデータ埋め込み処理のいずれかを実行することにより、埋め込みデータを丸め方向フラグに重畳する。単ビットデータ埋め込み処理により埋め込まれた埋め込みデータは、単ビットデータ取り出し処理によって取り出される。また、複ビットデータ埋め込み処理により埋め込まれた埋め込みデータは、複ビットデータ取り出し処理によって取り出される。
【0034】
〈単ビットデータ埋め込み処理/単ビットデータ取り出し処理〉
単ビットデータ埋め込み処理は、埋め込みデータの各ビットを独立して扱うことから単ビットデータ埋め込み処理と呼ぶ。従って、単ビットデータ埋め込み処理は、一つの符号化動画像データに対して単ビット(1ビット)を埋め込む処理とは限定されない。即ち、単ビットデータ埋め込み処理によって、一つの符号化動画像データに対し、複数ビットからなる埋め込みデータが埋め込まれても良い。
【0035】
図1は、単ビットデータ埋め込み処理及び単ビットデータ取り出し処理の原理を示す図である。図1を用いて、単ビットデータ埋め込み処理及び単ビットデータ取り出し処理の原理について説明する。
【0036】
図1の上段は単ビットデータ埋め込み処理の原理を示す。また、F0〜F7は、フレーム番号を示す。即ち、F0〜F7の下に示される値は、各フレームにおける丸め方向フラグの値を示す。単ビットデータ埋め込み処理では、データ埋め込み装置は、元の符号化動画像データにおけるフレーム毎の丸め方向フラグ20aと埋め込みデータ21aとの排他的論理和(XOR)を演算することにより、埋め込みデータ21aを符号化動画像データに埋め込み、埋め込み済符号化動画像データ22aを生成する。このとき、丸め方向フラグ20aのパターンは予め定義された複数のビットパターンのいずれかであり、いずれのビットパターンであるかが、埋め込み補助情報としてデータ取り出し装置に通知される。
【0037】
図1の下段は単ビットデータ取り出し処理の原理を示す。まず、丸め方向フラグ20aが、埋め込み補助情報として、データ取り出し装置に通知される。そして、データ取り出し装置は、データ埋め込み済符号化動画像データ22aと丸め方向フラグ20aとの排他的論理和を演算することにより、埋め込みデータ21aを取り出す。
【0038】
単ビットデータ埋め込み処理では、埋め込みデータにおいて1の値を持つビットが少ないことが前提となる。即ち、埋め込みデータの大多数のビットが0であることが前提となる。
【0039】
このような単ビットデータ埋め込み処理/単ビットデータ取り出し処理は、例えばシーンカット先頭フレームに対し、シーンカット先頭フラグを付与するような場合に利用される。このとき、大多数の丸め方向フラグは変更されないため、丸め方向フラグの分布はほとんど変化しない。従って、視覚的な画像劣化は発生しない。
【0040】
〈複ビットデータ埋め込み処理/複ビットデータ取り出し処理〉
図2は、複ビットデータ埋め込み処理及び複ビットデータ取り出し処理の原理を示す図である。図2を用いて、複ビットデータ埋め込み処理及び複ビットデータ取り出し処理の原理について説明する。
【0041】
図2の上段は複ビットデータ埋め込み処理の原理を示す。複ビットデータ埋め込み処理では、埋め込みデータは、埋め込み周期Nに区切って用いられる。図2には、埋め込み周期N=8である場合の処理を例として示す。このため、図2において、埋め込みデータは8ビット毎の埋め込み単位データ21b,21c等に区切られる。d0〜d7は、埋め込み単位データの0ビット目〜7ビット目であることを示す。また、F0〜F17は、フレーム番号を示す。複ビットデータ埋め込み処理では、データ埋め込み装置は、丸め方向フラグ20bに対し、埋め込み単位データ21bや21cを埋め込むことにより、埋め込み済符号化動画像データ22bを生成する。
【0042】
複ビットデータ埋め込み処理では、先頭からn番目(n=0,1,2,・・)の埋め込み単位データ毎に反転フラグzの値が算出され、反転フラグzの値に従って埋め込み単位データは、(N+1)n番目のフレームから(N+1)n+N−1番目のフレームの丸め方向フラグ20bに埋め込まれる。具体的には、反転フラグzの値が0である場合は、n番目の埋め込み単位データをそのまま(Nビットの0との排他的論理和の演算結果)丸め方向フラグの該当箇所(例えば、埋め込み単位データ21bの場合、n=0であり該当箇所はF0〜F7)の値と置き換える。一方、反転フラグzの値が1である場合は、n番目の埋め込み単位データの全ビットを反転し(Nビットの1との排他的論理和の演算結果)、丸め方向フラグの該当箇所(例えば、埋め込み単位データ21cの場合、n=1であり該当箇所はF9〜F16)の値と置き換える。次に、反転フラグzの値の算出方法について説明する。
【0043】
反転フラグzは、埋め込み単位データ毎に算出される。先頭からn番目の埋め込み単位データにおける反転フラグzは、この埋め込み単位データにおける入力偏度xと、一つ前の埋め込み単位データにおける偏度累積yn−1とを用いて算出される。sign(x)*sign(y)>0の場合、z=1となる。一方、上記以外の場合、z=0となる。数7は、入力偏度xを求めるための式である。数8は、偏度累積yを求めるための式である。
【0044】
【数7】
Figure 2004080181
【0045】
【数8】
Figure 2004080181
【0046】
入力偏度xは、処理の対象となる埋め込み単位データにおいて、1であるビットの個数が平均(N/2)からどれだけずれているかを表す。入力偏度xが0であれば、処理の対象となる埋め込み単位データにおいて、1であるビットの数が0であるビットの数と等しくなるため、元の符号化動画像の丸め込みフラグを全て上書きしたとしても0と1との出現頻度が1:1となる。従って、入力偏度xが0であれば、元の符号化動画像の丸め込みフラグを全て上書きしたとしても再生動画像の品質を大きく劣化させることが統計上無くなる。また、入力偏度xの値が正の場合は1の出現頻度が平均より大きい。一方、入力偏度xの値が負の場合は1の出現頻度が平均より小さい。この場合、入力偏度xの値を0に近づける必要がある。
【0047】
偏度累積yは、一つ前の埋め込み単位データにおける、偏度累積yn−1と入力偏度xn−1とを用いて算出される。ただし、y=0である。即ち先頭の埋め込み単位データにおける偏度累積y(n=0)は0である。数8において、z’n−1は、zn−1に伴って決まる値であり、zn−1=0であればz’n−1=1であり、zn−1=1であればz’n−1=−1である。このようにして、埋め込み済符号化動画像データ22bの(N+1)n番目のフレームから(N+1)n+N−1番目のフレームの丸め方向フラグの値が生成される。
【0048】
また、反転フラグzの値は、判別情報として、埋め込み済符号化動画像データ22bの(N+1)n−1(n=1,2,・・)番目のフレームの丸め方向フラグとして埋め込まれる。n=0の場合は、必ずz=0となるため、埋め込む必要がない。こうして、埋め込み済符号化動画像データ22bが生成される。
【0049】
上記説明では、xn−1,yn−1,zn−1の値を保持しておくことで、n番目の偏度累積yの値を算出した。しかし、x,y,zの値を用いてyn+1の値をあらかじめ算出し、算出したyn+1の値を保持しておいても良い。yn+1の値をあらかじめ算出して保持する場合、xn−1,yn−1,zn−1の値を保持しておく場合に比べて、保持しておくべきデータ量が少ない。このため、メモリの節約などを実現できる。従って、本実施形態では、x,y,zの値を用いてyn+1の値をあらかじめ算出し保持する方法を採用する。
【0050】
図2の下段は複ビットデータ取り出し処理の原理を示す。複ビットデータ取り出し処理では、データ取り出し装置は、あらかじめ埋め込み周期Nの値を、埋め込み補助情報として通知されている。データ取り出し装置は、(N+1)n番目のフレームから(N+1)n+N−1番目のフレームの丸め方向フラグの値を取り出す(n=0,1,2,・・)。そして、データ取り出し装置は、(N+1)n−1(n=1,2,・・)番目のフレームの丸め方向フラグの値がNビット並んだビット列と、上記取り出した丸め方向フラグの値(判別情報)との排他的論理和を演算する。算出された値が、n番目の埋め込み単位データとして扱われる。即ち、データ取り出し装置は、(N+1)n−1番目のフレームの丸め方向フラグの値が0であった場合、上記取り出した丸め方向フラグの値をそのままn番目の埋め込み単位データとして扱う。一方、データ取り出し装置は、(N+1)n−1番目のフレームの丸め方向フラグの値が1であった場合、上記取り出した丸め方向フラグの値を全て反転し、反転した結果をn番目の埋め込み単位データとして扱う。
【0051】
ただし、n=0の場合、0番目のフレームからN−1番目のフレームの丸め方向フラグはそのまま埋め込み単位データとして扱われる。このようにして取り出された埋め込み単位データが全て一つのビット列として組み合わされ、埋め込みデータが復元される。
【0052】
〔システム構成〕
次に、図を用いて本発明の実施形態におけるデータ埋め込み装置及びデータ取り出し装置について説明する。なお、本実施形態の説明は例示であり、本発明の構成は以下の説明に限定されない。
【0053】
図3は、本発明によるデータ埋め込み装置1及びデータ取り出し装置2のブロック図である。データ埋め込み装置1及びデータ取り出し装置2は、ハードウェア的には、バスを介して接続されたCPU,主記憶(RAM),補助記憶装置(ハードディスク),通信制御装置等を備えている。データ埋め込み装置1とデータ取り出し装置2とは、ネットワーク10を介して通信可能に接続される。
【0054】
データ埋め込み装置1は、単ビットデータ埋め込み処理を実現するための構成と複ビットデータ埋め込み処理を実現するための構成とが異なる。このため、単ビットデータ埋め込み処理又は複ビットデータ埋め込み処理のみを処理可能なデータ埋め込み装置1を構成可能である。また、単ビットデータ埋め込み処理及び複ビットデータ埋め込み処理を処理可能なデータ埋め込み装置1を構成することも可能である。
【0055】
データ取り出し装置2においても同様に、単ビットデータ取り出し処理を実現するための構成と複ビットデータ埋め込み処理を実現するための構成とが異なる。このため、単ビットデータ取り出し処理又は複ビットデータ取り出し処理のみを処理可能なデータ取り出し装置2を構成可能である。また、単ビットデータ取り出し処理及び複ビットデータ取り出し処理を処理可能なデータ取り出し装置2を構成することも可能である。以下、データ埋め込み装置1とデータ取り出し装置2との構成について夫々説明する。
【0056】
〈データ埋め込み装置〉
データ埋め込み装置1は、補助記憶装置に記憶された各種のプログラム(OS,アプリケーション等)が主記憶にロードされCPUにより実行されることによって、符号化動画像蓄積部3,符号化動画像バッファ4,丸め方向フラグ位置検出部5,埋め込み情報バッファ6,埋め込み補助情報管理部7,丸め方向フラグ入出力部8,及び符号化動画像送出部9等を含む装置として機能する。
【0057】
符号化動画像蓄積部3は、ハードディスク等の不揮発性記憶装置を用いて構成される。符号化動画像蓄積部3は、情報が埋め込まれていない、通常の符号化動画像のデータ(以後「符号化動画像データ」と呼ぶ)を蓄積(記憶)する。符号化動画像蓄積部3に記憶される符号化動画像データは、その生成方法を限定されない。即ち、どのような符号化手段を用いて生成された符号化動画像データであっても良い。また、符号化動画像蓄積部3に記憶される符号化動画像データの各フレームにおける丸め方向フラグは、埋め込み補助情報管理部7により管理される複数のビットパターンのうち、いずれかに書き換えられている。
【0058】
符号化動画像バッファ4(本発明の「動画像記憶手段」に相当)は、RAM等の記憶装置を用いて構成される。符号化動画像バッファ4は、データ埋め込み装置1が情報を埋め込む対象となる符号化動画像データを、一時的に記憶する(バッファリングする)。
【0059】
丸め方向フラグ位置検出部5は、CPUやRAM等を用いて構成される。丸め方向フラグ位置検出部5は、符号化動画像バッファ4にバッファリングされた符号化動画像データを解析し、この符号化動画像データに含まれる丸め方向フラグの位置を検出する。即ち、丸め方向フラグ位置検出部5は、符号化動画像データの各フレームの先頭ビットから、丸め方向フラグを示すビットまでのオフセット値を出力する。
【0060】
また、丸め方向フラグ位置検出部5は、GOPH(Group of Picture Header)を検出し出力する。符号化動画像データは、連続したフレームによって構成される1以上のグループにより構成される。このとき、各グループの先頭に位置するフレームにGOPHが付与される。即ち、丸め方向フラグ位置検出部5は、GOPHを検出することにより、各グループの先頭のフレームを検出する。
【0061】
また、丸め方向フラグ位置検出部5は、検出した丸め方向フラグに対応するフレームのフレーム番号を検出し出力する。即ち、丸め方向フラグ位置検出部5は、フレーム番号を検出することにより、検出した丸め方向フラグに対応するフレームが、該当するグループの何番目に位置するフレームであるかを検出する。
【0062】
埋め込み情報バッファ6(本発明の「データ記憶手段」に相当)は、RAM等の記憶装置を用いて構成される。埋め込み情報バッファ6は、符号化動画像データに埋め込まれるデータ(以後「埋め込みデータ」と呼ぶ)を一時的に記憶する(バッファリングする)。
【0063】
埋め込み補助情報管理部7(補助情報管理手段,補助情報送信手段)は、RAMやハードディスク等の記憶装置や通信装置等を用いて構成される。埋め込み補助情報管理部7は、データ埋め込み処理又はデータ取り出し処理を実行するために必要な埋め込み補助情報を管理する。
【0064】
データ埋め込み装置1が、単ビット埋め込み処理の実行を可能である場合、埋め込み補助情報管理部7は、符号化動画像蓄積部3に記憶される各符号化動画像データにおける丸め方向フラグのビット列のビットパターンがいずれのビットパターンであるかを記憶する。
【0065】
また、データ埋め込み装置1が、複ビット埋め込み処理の実行を可能である場合、埋め込み補助情報管理部7は、複ビットデータ取り出し処理において必要となる埋め込み周期の値を記憶する。
【0066】
また、埋め込み補助情報管理部7(補助情報送信手段)は、データ埋め込み装置1により埋め込みデータが埋め込まれた符号化動画像データを正当に受信する情報処理装置に対して、埋め込み補助情報を送信する。ここで、埋め込み補助情報とは、単ビットデータ埋め込み処理では丸め方向フラグのビットパターンであり、複ビットデータ埋め込み処理では埋め込み周期の値である。埋め込み補助情報管理部7は、埋め込み済符号化動画像データとは別の系統で埋め込み補助情報を送信する。例えば、埋め込み補助情報管理部7は、HTTPプロトコル等を用いて埋め込み補助情報をデータ取り出し装置2へ送信する。
【0067】
丸め方向フラグ入出力部8(本発明の「埋め込み手段」に相当)は、CPUやRAM等を用いて構成される。丸め方向フラグ入出力部8は、丸め方向フラグ位置、フレーム番号、埋め込み補助情報などを用いて、符号化動画像バッファ4にバッファリングされる符号化動画像データに埋め込みデータを埋め込む。丸め方向フラグ入出力部8の詳細については後述する。
【0068】
符号化動画像送出部9(送信手段)は、通信装置などを用いて構成される。符号化動画像送出部9は、符号化動画像バッファ4にバッファリングされた埋め込み済符号化動画像データを、ネットワーク10を介して、このデータを正当に受信する情報処理装置に対して送信する。図3では、データを正当に受信する情報処理装置として、情報取り出し装置3を例示する。このとき、このデータを正当に受信する情報処理装置は、CHAP(Challenge Handshake Authentication Protocol)やPAP(Password Authentication Protocol)など、どのような認証技術を用いて判断されても良い。また、符号化動画像送出部9は、ネットワーク10を介して、不特定の1以上の情報処理装置に対して埋め込み済符号化動画像データを送信しても良い。
【0069】
〈〈単ビットデータ埋め込み処理における丸め方向フラグ入出力部〉〉
図4は、単ビットデータ埋め込み処理を実行する丸め方向フラグ入出力部8aのブロック図である。図4を用いて、単ビットデータ埋め込み処理を実行する丸め方向フラグ入出力部8aについて説明する。
【0070】
丸め方向フラグ入出力部8aは、丸め方向フラグビット位置記憶部31,フレーム番号記憶部32,埋め込みフレーム番号記憶部33,フレーム番号比較部34,排他的論理和演算部35,及び丸め方向フラグビット入出力インタフェース36を含む。
【0071】
丸め方向フラグビット位置記憶部31は、RAMやレジスタ等の記憶装置を用いて構成される。丸め方向フラグビット位置記憶部31は、符号化動画像バッファ4にバッファリングされているフレームにおける、丸め方向フラグのビット位置(各フレームのデータ先頭からのオフセット値)を保持する。このオフセット値は、丸め方向フラグ位置検出部5から出力される。
【0072】
フレーム番号記憶部32(フレーム番号検出手段)は、RAMやレジスタ等の記憶装置を用いて構成される。フレーム番号記憶部32は、丸め方向フラグビット位置記憶部31に保持された丸め方向フラグ位置に対応するフレームのフレーム番号を保持する。フレーム番号は、丸め方向ビット位置検出装置5から出力される。
【0073】
埋め込みフレーム番号記憶部33(ビット位置検出手段)は、CPUやRAM等を用いて構成される。埋め込みフレーム番号記憶部33は、埋め込み情報バッファ6に記憶される埋め込みデータを読み出す。そして、埋め込みフレーム番号記憶部33は、読み出した埋め込みデータのうち、1を持つビットの先頭からのオフセット値を検出し、その値を保持する。この値は、埋め込みデータを埋め込む対象となるフレームのフレーム番号と一致する。
【0074】
フレーム番号比較部34(判断手段)は、CPUやRAM等を用いて構成される。フレーム番号比較部34は、フレーム番号記憶部32から出力されるフレーム番号と、埋め込みフレーム番号記憶部33から出力されるフレーム番号とを比較する。フレーム番号比較部34は、二つの値を比較することにより、フレーム番号比較部33から出力されるフレーム番号に含まれる丸め方向フラグに対応する埋め込みデータの値が1であるか否かを判断する。フレーム番号比較部34は、比較した二つのフレーム番号が一致した場合、排他的論理和演算部35に対し、1を出力する。一方、フレーム番号比較部34は、比較した二つのフレーム番号が一致しない場合、排他的論理和演算部35に対し、0を出力する。
【0075】
また、フレーム番号比較部34は、比較した二つのフレーム番号が一致した場合のみ、排他的論理和演算部35が動作するように制御信号を出力しても良い。
【0076】
排他的論理和演算部35(本発明の「排他的論理和演算手段」に相当)は、CPUを用いて構成される。排他的論理和演算部35は、二つの入力の排他的論理和を演算し、演算結果を出力する。一方の入力は、丸め方向フラグビット入出力インタフェース36から、丸め方向フラグの値が入力される。他方の入力は、フレーム番号比較部34から、比較結果に応じた値が入力される。
【0077】
丸め方向フラグビット入出力インタフェース36(本発明の「置換手段」に相当)は、CPUやRAM等を用いて構成される。丸め方向フラグビット入出力インタフェース36は、符号化動画像バッファ4にバッファリングされた符号化動画像の指定されたビット位置にある丸め方向フラグを読み出す。この丸め方向フラグのビット位置は、丸め方向フラグビット位置記憶部31から取得する。そして、丸め方向フラグビット入出力インタフェース36は、読み出した丸め方向フラグのビット値を排他的論理和演算部35へ出力する。また、丸め方向フラグビット入出力インタフェース36は、排他的論理和演算部35から入力される値を、符号化動画像バッファ4にバッファリングされた符号化動画像の指定されたビット位置にある丸め方向フラグの値として書き込む。
【0078】
〈〈複ビットデータ埋め込み処理における丸め方向フラグ入出力部〉〉
図5は、複ビットデータ埋め込み処理を実行する丸め方向フラグ入出力部8bのブロック図である。次に、図5を用いて、複ビットデータ埋め込み処理を実行する丸め方向フラグ入出力部8bについて説明する。
【0079】
丸め方向フラグ入出力部8bは、全体制御部41,丸め方向フラグビット位置記憶部42,フレーム番号記憶部43,埋め込み単位データ記憶部44,偏度計算部45,反転フラグ計算部46,偏度累積計算部47,偏度累積記憶部48,排他的論理和演算部49,及び丸め方向フラグビット入出力インタフェース40を含む。
【0080】
全体制御部41は、CPUやRAM等を用いて構成される。全体制御部41は、埋め込み周期(反転フラグ挿入間隔)を埋め込み補助情報管理部7から取得する。また、全体制御部41は、現在処理可能なフレーム番号を、フレーム番号記憶部43から取得する。また、全体制御部41は、GOPHの検出結果を、丸め方向フラグ位置検出部5から取得する。また、全体制御部41は、GOPHの検出通知を取得した場合、リセット信号を偏度累積記憶部48に出力する。
【0081】
丸め方向フラグビット位置記憶部42は、RAMやレジスタ等の記憶装置を用いて構成される。丸め方向フラグビット位置記憶部42は、複数フレームの丸め方向フラグの位置(丸め方向フラグビット位置:先頭ビットから丸め方向フラグを示すビットまでのオフセット値)を保持する。丸め方向フラグビット位置は、丸め方向フラグ位置検出部5から出力される。
【0082】
フレーム番号記憶部43は、RAMやレジスタ等の記憶装置を用いて構成される。フレーム番号記憶部43は、丸め方向フラグビット位置記憶部42に格納される複数の丸め方向フラグビット位置の夫々に対応するフレーム番号を保持する。このフレーム番号は、対応する丸め方向フラグビット位置と同期して、丸め方向フラグ位置検出部5から出力される。
【0083】
埋め込み単位データ記憶部44(本発明の「分割手段」に相当)は、CPUやRAM等を用いて構成される。埋め込み単位データ記憶部44は、次に埋め込む埋め込み単位データを保持する。即ち、埋め込み単位データ記憶部44は、処理対象となる埋め込み単位データを保持する。埋め込み単位データ記憶部44は、全体制御部41から通知される埋め込み周期に従って、埋め込み情報バッファ6から、埋め込み単位データを読み出す。
【0084】
偏度計算部45(偏度計算手段)は、CPUやRAM等を用いて構成される。偏度計算部45は、埋め込み単位データ記憶部44から出力される埋め込み単位データにおける偏度を計算する。
【0085】
反転フラグ計算部46(反転フラグ判断手段)は、CPUやRAM等を用いて構成される。反転フラグ計算部46は、偏度計算部45からの出力及び偏度累積記憶部48が記憶する値を用いて、反転フラグの値を計算する。反転フラグ計算部46は、算出した反転フラグの値を、丸め方向フラグビット入出力インタフェース40へ出力する。また、反転フラグ計算部46は、算出した反転フラグの値を、排他的論理和演算部49へ出力する。
【0086】
偏度累積計算部47(偏度累積計算手段)は、CPUやRAM等を用いて構成される。偏度累積計算部47は、偏度累積記憶部48が記憶する値と、反転フラグ計算部46からの出力と、偏度計算部45からの出力とを用いて、偏度累積を計算する。偏度累積計算部47は、算出した値を偏度累積記憶部48へ書き込む(上書きする)。
【0087】
偏度累積記憶部48(偏度累積記憶手段)は、CPUやRAM等の記憶装置を用いて構成される。偏度累積記憶部48は、偏度累積計算部47の出力を記憶(保存)する。また、偏度累積記憶部48は、反転フラグ計算部46に、自身が記憶する偏度累積を出力する。また、偏度累積記憶部48は、全体制御部41からリセット信号を受信すると、自身が記憶する値を初期化し、0を記憶する。
【0088】
排他的論理和演算部49は、CPUを用いて構成される。排他的論理和演算部49は、反転フラグ計算部46の出力と埋め込み単位データ記憶部44が記憶する値(埋め込み単位データ)との排他的論理和を演算する。排他的論理和演算部49は、丸め方向フラグビット入出力インタフェース40が記憶する埋め込み単位データの全てのビットに対し、反転フラグ計算部46の出力との排他的論理和を演算する。そして、排他的論理和演算部49は、排他的論理和の演算結果を、丸め方向フラグビット入出力インタフェース40へ出力する。
【0089】
丸め方向フラグビット入出力インタフェース40(本発明の「置換手段」に相当)は、CPUやRAM等を用いて構成される。丸め方向フラグビット入出力インタフェース40は、符号化動画像バッファ4に保持される符号化動画像データの、該当フレームの該当ビットに対し、排他的論理和演算部49及び反転フラグ計算部46からの出力を書き込む。
【0090】
丸め方向フラグビット入出力インタフェース40は、符号化動画像データの、フレーム番号記憶部43から読み出すフレーム番号のフレームデータのうち、丸め方向フラグビット位置記憶部42から読み出すビット位置に対して、排他的論理和演算部49又は反転フラグ計算部46から入力される値を書き込む。丸め方向フラグビット入出力インタフェース40は、フレーム番号記憶部43から読み出すフレーム番号に従って、排他的論理和演算部49から入力される値又は反転フラグ計算部46から入力される値のいずれを符号化動画像データに書き込むかを判断する。丸め方向フラグビット入出力インタフェース40は、全体制御部41から通知される埋め込み周期がNであって、処理中の埋め込み単位データがn番目であるとき、フレーム番号が(N+1)n番から(N+1)n+N−1番である場合は、排他的論理和演算部49から入力される値を符号化動画像データに対して書き込む。一方、フレーム番号が(N+1)n−1番である場合は、反転フラグ計算部46から入力される値を符号化動画像データに書き込む。
【0091】
〈データ取り出し装置〉
図3を用いてデータ取り出し装置2について説明する。データ取り出し装置2は、補助記憶装置に記憶された各種のプログラム(OS,アプリケーション等)が主記憶にロードされCPUにより実行されることによって、符号化動画像受信部11,符号化動画像復号部12,埋め込み補助情報蓄積部13,丸め方向フラグ解析部14,及び表示部15等を含む装置として機能する。
【0092】
符号化動画像受信部11は、通信装置などを用いて構成される。符号化動画像受信部11は、ネットワーク10を介して、データ埋め込み装置1から、埋め込み済符号化動画像データ又は符号化動画像データを受信する。
【0093】
符号化動画像復号部12は、CPUやRAM等を用いて構成される。符号化動画像復号部12は、符号化動画像受信部11によって受信された埋め込み済符号化動画像データ又は符号化動画像データを復号化する。また、符号化動画像復号部12は、符号化動画像受信部11によって受信されたデータに限らず、例えば記録媒体に書き込まれている埋め込み済符号化動画像データ又は符号化動画像データも復号化する。また、符号化動画像復号部12は、埋め込み済符号化動画像データを解析し、フレーム毎に丸め方向フラグを検出する。そして、符号化動画像復号部12は、フレーム番号とこのフレームにおける丸め方向フラグの値とを、丸め方向フラグ解析部14へ出力する。
【0094】
埋め込み補助情報蓄積部13(本発明の「パターン記憶手段」に相当)は、RAMやハードディスク等の記憶装置や通信装置などを用いて構成される。埋め込み補助情報蓄積部13は、データ埋め込み装置1から、埋め込み補助情報を受信し記憶する。埋め込み補助情報蓄積部13は、埋め込み済符号化動画像データとは別の系統で埋め込み補助情報を受信する。例えば、埋め込み補助情報蓄積部13は、HTTPプロトコル等を用いて埋め込み補助情報を受信する。
【0095】
また、埋め込み補助情報蓄積部13は、単ビットデータ取り出し処理の実行が可能である場合、符号化動画像蓄積部3に記憶される各符号化動画像データにおける丸め方向フラグのビット列のビットパターンを記憶する。そして、埋め込み補助情報蓄積部13は、受信した埋め込み補助情報が示すビットパターンを、丸め方向フラグ解析部14へ出力する。
【0096】
丸め方向フラグ解析部14は、CPUやRAM等を用いて構成される。丸め方向フラグ解析部14は、フレーム毎の丸め方向フラグと、埋め込み補助情報とを用いて、埋め込みデータを出力する。丸め方向フラグ解析部14が埋め込みデータを出力する処理、即ちデータ取り出し処理の詳細については後述する。
【0097】
表示部15は、CRT(Cathode−Ray Tube)や液晶ディスプレイ等を用いて構成される。表示部15は、符号化動画像復号部12が復号化した動画像や、丸め方向フラグ解析部14が出力する埋め込みデータ等を表示する。図6は、表示部15における表示例を示す図である。ユーザへの提示画面71は、動画像表示部72と埋め込みデータ表示部73とを含む。提示画面71は、HTML(Hyper Text Markup Language)を用いてレイアウトされる。動画像表示部72は、符号化動画像復号部12によって復号された動画像を表示する。埋め込みデータ表示部73は、丸め方向フラグ解析部14によって取り出された埋め込みデータの内容を表示する。図6に示す例では、埋め込みデータは、URL(Uniform Resource Locators)であり、HTMLのアンカータグによって修飾されている。この場合、埋め込みデータ表示部73に示されるURLは、マウス等の入力装置によって選択されると、別画面に上記URLで参照されたHTMLコンテンツが表示される。このHTMLコンテンツは、例えば、動画像表示部72に表示される車のスペックである。このように、このHTMLコンテンツの内容は、動画像表示部72に表示されるコンテンツの内容を補完するものである。
【0098】
〈〈単ビットデータ取り出し処理における丸め方向フラグ解析部〉〉
図7は、単ビットデータ取り出し処理を実行する丸め方向フラグ解析部14aのブロック図である。次に、図7を用いて、単ビットデータ取り出し処理を実行する丸め方向フラグ解析部14aについて説明する。
【0099】
丸め方向フラグ解析部14aは、フレーム番号記憶部51,丸め方向フラグビット記憶部52,丸め方向パターン発生部53,及び排他的論理和演算部54を含む。
【0100】
フレーム番号記憶部51は、RAMやレジスタ等の記憶装置を用いて構成される。フレーム番号記憶部51は、符号化動画像復号部12が復号しているフレームのフレーム番号を保持する。このフレーム番号は、符号化動画像復号部12が出力する。
【0101】
丸め方向フラグビット記憶部52は、RAMやレジスタ等の記憶装置を用いて構成される。丸め方向フラグビット記憶部52は、符号化動画像復号部12が復号しているフレームの丸め方向フラグの値を保持する。
【0102】
丸め方向パターン発生部53は、CPUやRAM等を用いて構成される。丸め方向パターン発生部53は、埋め込み補助情報蓄積部13から出力されるビットパターンにおいて、フレーム番号記憶部51が記憶する値(フレーム番号)の位置のビット値を得る。即ち、丸め方向パターン発生部53は、元の符号化動画像においてフレーム番号記憶部51が示すフレーム番号の丸め方向フラグの値を得る。丸め方向パターン発生部53は、得た丸め方向フラグの値を、排他的論理和演算部54へ出力する。
【0103】
排他的論理和演算部54は、CPUを用いて構成される。排他的論理和演算部54は、丸め方向フラグビット記憶部52が記憶する値と、丸め方向パターン発生部53から出力される値との排他的論理和を演算する。排他的論理和演算部54は、演算結果、即ち0又は1の値を表示部15に出力する。
【0104】
〈〈複ビットデータ取り出し処理における丸め方向フラグ解析部〉〉
図8は、複ビットデータ取り出し処理を実行する丸め方向フラグ解析部14bのブロック図である。次に、図8を用いて、複ビットデータ取り出し処理を実行する丸め方向フラグ解析部14bについて説明する。
【0105】
丸め方向フラグ解析部14bは、フレーム番号記憶部61,反転ビット位置判定部62,丸め方向フラグビット記憶部63,及び排他的論理和演算部64を含む。
【0106】
フレーム番号記憶部61は、RAMやレジスタ等の記憶装置を用いて構成される。フレーム番号記憶部61は、丸め方向フラグビット記憶部63に格納される丸め方向フラグのビット列の各ビットに対応するフレーム番号を保持する。フレーム番号は、対応する丸め方向フラグのビット値と同期して、符号化動画像復号部12から出力される。
【0107】
反転ビット位置判定部62は、CPUやRAM等を用いて構成される。反転ビット位置判定部62は、反転ビットに対応するフレーム番号を判定する。反転ビット位置判定部62は、フレーム番号記憶部61から出力されるフレーム番号と、埋め込み補助情報蓄積部13から出力される埋め込み補助情報(埋め込み周期)とを用いて、フレーム番号記憶部61が記憶するフレーム番号が、反転ビットを丸め方向フラグとして含むフレームのフレーム番号であるか否かを判定する。反転ビット位置判定部62は、この判定結果を、丸め方向フラグビット記憶部63へ出力する。
【0108】
丸め方向フラグビット記憶部63は、CPUやRAM等を用いて構成される。丸め方向フラグビット記憶部63は、丸め方向フラグを保持する。丸め方向フラグビット記憶部63は、反転ビット位置判定部62から、自身が保持する丸め方向フラグが反転ビットであると通知された場合、自身が保持する丸め方向フラグビットを反転ビットとして排他的論理和演算部64へ出力する。また、丸め方向フラグビット記憶部63は、それ以外の丸め方向フラグを、排他的論理和演算部64へ、他の入力として出力する。
【0109】
排他的論理和演算部64(本発明の「反転判断手段」,「反転手段」に相当)は、CPUやRAM等を用いて構成される。排他的論理和演算部64は、丸め方向フラグビット記憶部63から、反転ビットを受け取った場合、自身が備える不図示の反転ビット記憶部に反転ビットを記憶する。排他的論理和演算部64は、反転ビット記憶部に記憶された反転ビットと、丸め方向フラグビット記憶部が記憶する丸め方向フラグの値との排他的論理和を演算する。即ち、排他的論理和演算部64は、反転ビットが1である場合に、丸め方向フラグの値を反転すべきと判断し、丸め方向フラグの値を反転して出力する。排他的論理和演算部64は、この演算によって、埋め込まれた情報、即ち埋め込みデータを取得する。排他的論理和演算部64は、取得した埋め込みデータを表示部15へ出力する。
【0110】
〔動作例〕
次に、本実施形態によるデータ埋め込み装置1とデータ取り出し装置2との動作例について説明する。なお、データ埋め込み装置1の動作例は、単ビットデータ埋め込み処理と複ビットデータ埋め込み処理とに分けて説明する。また、データ取り出し装置2の動作例は、単ビットデータ取り出し処理と複ビットデータ取り出し処理とに分けて説明する。
【0111】
〈データ埋め込み装置〉
〈〈単ビットデータ埋め込み処理〉〉
図3,4を用いて、本実施形態によるデータ埋め込み装置1が単ビットデータ埋め込み処理を実行する際の動作例について説明する。まず、符号化動画像蓄積部3に記憶される符号化動画像データのうち、埋め込みデータを埋め込む対象となる符号化動画像データが、1フレーム毎に符号化動画像バッファ4へ書き込まれる。
【0112】
丸め方向フラグ位置検出部5は、符号化動画像バッファ4にバッファリングされているフレーム、即ち処理の対象となるフレーム、のフレーム番号を求める。また、丸め方向フラグ位置検出部5は、処理の対象となるフレームにおける丸め方向フラグを示すビットまでのオフセット値を求める。そして、丸め方向フラグ位置検出部5は、このオフセット値を、丸め方向フラグビット位置記憶部31へ出力する。また、丸め方向フラグ位置検出部5は、このフレーム番号をフレーム番号記憶部32へ出力する。丸め方向フラグビット位置記憶部31は、このオフセット値を記憶する。また、フレーム番号記憶部32は、このフレーム番号を記憶する。
【0113】
埋め込み情報バッファ6に記憶される埋め込みデータは、埋め込みフレーム番号記憶部33により読み出される。このとき、埋め込みフレーム番号記憶部33は、埋め込みデータを埋め込む対象となるフレームのフレーム番号を保持する。
【0114】
フレーム番号比較部34は、埋め込みフレーム番号記憶部33が記憶するフレーム番号と、フレーム番号記憶部32が記憶するフレーム番号とを比較し、二つの値が一致するか否かを判断する。フレーム番号比較部34は、二つの値が一致した場合、排他的論理和演算部35に、1を出力する。一方、フレーム番号比較部34は、二つの値が一致しない場合、排他的論理和演算部35に、0を出力する。
【0115】
丸め方向フラグビット入出力インタフェース36は、丸め方向フラグビット位置記憶部31から、オフセット値を読み出す。丸め方向フラグビット入出力インタフェース36は、読み出したオフセット値に対応するビットの値を、符号化動画像バッファ4から読み出す。そして、丸め方向フラグビット入出力インタフェース36は、読み出したビットの値を、排他的論理和演算部35に出力する。
【0116】
排他的論理和演算部35は、丸め方向フラグビット入出力インタフェース36から入力された値と、フレーム番号比較部34から入力された値との排他的論理和を演算する。排他的論理和演算部35は、演算結果を丸め方向フラグビット入出力インタフェース36に出力する。そして、丸め方向フラグビット入出力インタフェース36は、排他的論理和演算部35から入力された値を、符号化動画像バッファ4に記憶されるデータのうち、上記オフセット値に対応するビットに書き込む。このようにして、埋め込みデータは符号化動画像データに埋め込まれ、埋め込み済符号化動画像データが生成される。
【0117】
符号化動画像送出部9は、符号化動画像バッファ4にバッファリングされる埋め込み済符号化動画像データを、ネットワーク10を介してデータ取り出し装置2へ送出する。また、埋め込み補助情報管理部7は、処理対象となった符号化動画像データにおける埋め込み補助情報を、データ取り出し装置2へ送信する。
【0118】
〈〈複ビットデータ埋め込み処理〉〉
図3,5を用いて、本実施形態によるデータ埋め込み装置1が複ビットデータ埋め込み処理を実行する際の動作例について説明する。まず、埋め込み補助情報管理部7は、埋め込み周期の値を全体制御部41へ通知する。また、符号化動画像蓄積部3に記憶される符号化動画像データのうち、埋め込みデータを埋め込む対象となる符号化動画像データが、1フレーム毎に符号化動画像バッファ4へ書き込まれる。
【0119】
丸め方向フラグ位置検出部5は、符号化動画像バッファ4にバッファリングされているフレーム、即ち処理の対象となるフレーム、のフレーム番号を求める。また、丸め方向フラグ位置検出部5は、符号化動画像バッファ4にバッファリングされているフレームに、GOPHが含まれるか否かを判断する。丸め方向フラグ位置検出部5は、GOPHを検出すると、GOPHを検出したことを全体制御部41へ通知する。また、丸め方向フラグ位置検出部5は、処理の対象となるフレームにおける丸め方向フラグを示すビットまでのオフセット値を求める。そして、丸め方向フラグ位置検出部5は、このオフセット値を、丸め方向フラグビット位置記憶部42へ出力する。また、丸め方向フラグ位置検出部5は、このフレームのフレーム番号をフレーム番号記憶部43へ出力する。丸め方向フラグビット位置記憶部42は、このオフセット値を記憶する。また、フレーム番号記憶部43は、このフレーム番号を記憶する。
【0120】
埋め込み単位データ記憶部44は、全体制御部41から通知される埋め込み周期の値に従って、埋め込み単位データを埋め込み情報バッファ6から読み出す。また、埋め込み単位データ記憶部44は、読み出した埋め込み単位データを1ビットずつ排他的論理和演算部49に出力する。
【0121】
偏度計算部45は、埋め込み単位データ記憶部44に記憶される埋め込み単位データについて、偏度を算出する。偏度計算部45は、算出した偏度を反転フラグ計算部46と偏度累積計算部47へ出力する。
【0122】
反転フラグ計算部46は、偏度累積記憶部48に記憶される偏度累積を読み出す。反転フラグ計算部46は、読み出した偏度累積と、偏度計算部45から入力された偏度とを用いて、反転フラグの値を算出する。反転フラグ計算部46は、算出した反転フラグの値を偏度累積計算部47と、丸め方向フラグビット入出力インタフェース40と、排他的論理和演算部49とに出力する。
【0123】
偏度累積計算部47は、反転フラグ計算部46から入力された反転フラグの値と、偏度計算部45から入力された偏度と、偏度累積記憶部48に記憶される偏度累積とを用いて、新たな偏度累積を算出する。即ち、偏度累積計算部47は、次に埋め込み単位データ記憶部44が読み出す埋め込み単位データにおいて用いられる偏度累積を算出する。偏度累積計算部47は、算出した新たな偏度累積を偏度累積記憶部48に書き込む。
【0124】
排他的論理和演算部49は、埋め込み単位データ記憶部44から入力される全てのビットに対して、反転フラグ計算部46から入力される反転フラグの値との排他的論理和を演算する。そして、排他的論理和演算部49は、演算した結果の値を丸め方向フラグビット入出力インタフェース40へ出力する。
【0125】
丸め方向フラグビット入出力インタフェース40は、排他的論理和演算部49又は反転フラグ計算部46から入力される値を、符号化動画像バッファ4にバッファリングされた符号化動画像データに書き込む。このようにして、符号化動画像データに、埋め込みデータが埋め込まれ、埋め込み済符号化動画像データが生成される。
【0126】
符号化動画像送出部9は、符号化動画像バッファ4にバッファリングされる埋め込み済符号化動画像データを、ネットワーク10へ送出する。また、埋め込み補助情報管理部7は、処理対象となった符号化動画像データにおける埋め込み補助情報、即ち埋め込み周期を、データ取り出し装置2へ送信する。
【0127】
〈データ取り出し装置〉
〈〈単ビットデータ取り出し処理〉〉
図3,7を用いて、本実施形態によるデータ取り出し装置2が単ビットデータ取り出し処理を実行する際の動作例について説明する。符号化動画像受信部11は、ネットワーク10を介してデータ埋め込み装置1から埋め込み済符号化動画像データを受信し記憶する。また、埋め込み補助情報蓄積部13は、データ埋め込み装置1から埋め込み補助情報を受信する。即ち、埋め込み補助情報蓄積部13は、符号化動画像受信部11が受信した符号化動画像データの丸め方向フラグのビットパターンがいずれのビットパターンであるかを、データ埋め込み装置1から受信する。埋め込み補助情報蓄積部13は、このビットパターンを丸め方向パターン発生部53へ出力する。
【0128】
符号化動画像復号部12は、符号化動画像受信部11が記憶する埋め込み済符号化動画像データを復号化し、動画像を生成する。符号化動画像復号部12は、復号化して生成した動画像を、表示部15へ出力する。また、符号化動画像復号部12は、フレーム番号とこのフレーム番号におけるフレームの丸め方向フラグの値とを、フレーム番号記憶部51と丸め方向フラグビット記憶部52とに、同期して出力する。
【0129】
丸め方向パターン発生部53は、フレーム番号記憶部51に記憶されるフレーム番号と、埋め込み補助情報蓄積部13から入力されるビットパターンとを用いて、丸め方向フラグの値を得る。そして、丸め方向パターン発生部53は、丸め方向フラグの値、即ち0又は1を排他的論理和演算部54へ出力する。
【0130】
排他的論理和演算部54は、丸め方向パターン発生部53から入力された値と、丸め方向フラグビット記憶部52が記憶する値との排他的論理和を演算する。そして、排他的論理和演算部54は、演算結果を埋め込みデータとして、表示部15へ出力する。
【0131】
〈〈複ビットデータ取り出し処理〉〉
図3,8を用いて、本実施形態によるデータ取り出し装置2が複ビットデータ取り出し処理を実行する際の動作例について説明する。符号化動画像受信部11は、ネットワーク10を介してデータ埋め込み装置1から埋め込み済符号化動画像データを受信し記憶する。また、埋め込み補助情報蓄積部13は、データ埋め込み装置1から埋め込み補助情報を受信する。即ち、埋め込み補助情報蓄積部13は、埋め込み周期を、データ埋め込み装置1から受信する。埋め込み補助情報蓄積部13は、この埋め込み周期を、反転ビット位置判定部62へ出力する。
【0132】
符号化動画像復号部12は、符号化動画像受信部11が記憶する埋め込み済符号化動画像データを復号化し、動画像を生成する。符号化動画像復号部12は、復号化して生成した動画像を、表示部15へ出力する。また、符号化動画像復号部12は、フレーム番号とこのフレーム番号におけるフレームの丸め方向フラグの値とを、フレーム番号記憶部61と丸め方向フラグビット記憶部63とに、同期して出力する。
【0133】
反転ビット位置判定部62は、埋め込み補助情報蓄積部13から入力される埋め込み周期を基に、フレーム番号記憶部61が記憶するフレーム番号のフレームが、反転ビットを示す丸め方向フラグを有するフレームか否かを判定する。そして、反転ビット位置判定部62は、その判定結果を丸め方向フラグビット記憶部63へ出力する。
【0134】
丸め方向フラグビット記憶部63は、反転ビット位置判定部62から、符号化動画像復号部12から入力される丸め方向フラグが反転ビットであると通知されると、この丸め方向フラグを反転ビットとして排他的論理和演算部64へ出力する。また、丸め方向フラグビット記憶部63は、それ以外の丸め方向フラグを、排他的論理和演算部64へ、他の入力として出力する。
【0135】
排他的論理和演算部64は、自身が記憶する反転ビットの値と丸め方向フラグビット記憶部63から入力される丸め方向フラグの値との排他的論理和を演算する。そして、排他的論理和演算部64は、演算結果を、埋め込みデータとして、表示部15へ出力する。
【0136】
〔作用〕
本実施形態のうち、単ビットデータ埋め込み処理を実行可能なデータ埋め込み装置1によれば、データ埋め込みの対象となる符号化動画像データの各フレームにおける丸め方向フラグのビット値と埋め込みデータのビット値との排他的論理和を演算することにより、符号化動画像データに対し、埋め込みデータを埋め込む。このとき、埋め込みデータのデータ量は非常に少なく制限される。このため、大多数のフレームにおける丸め方向フラグは、その値が変更されない。従って、符号化動画像データに対し、画質を劣化させることなくデータを埋め込むことが可能となる。
【0137】
また、本実施形態のうち、単ビットデータ埋め込み処理を実行可能なデータ埋め込み装置1によれば、埋め込みデータは、埋め込み補助情報(ビットパターン)を用いなければ取り出し困難であるように埋め込まれる。なぜならば、ビットパターンがわからなければ、いずれの丸め方向フラグに対して埋め込みデータが埋め込まれたのかが判断できないためである。このため、埋め込み補助情報を通知するか否かを選択することにより、埋め込みデータを取り出し可能なユーザを選択することが可能となる。
【0138】
本実施形態のうち、複ビットデータ埋め込み処理を実行可能なデータ埋め込み装置1によれば、データ埋め込みの対象となる符号化動画像データの各フレームにおける丸め方向フラグを埋め込みデータに置き換え、さらに定期的に(埋め込み周期で)反転ビットを埋め込むことにより、1フレーム毎に1ビットのデータを埋め込む。このため、URL等の数バイト乃至数十バイトの情報を、符号化動画像データに埋め込むことが可能となる。
【0139】
また、本実施形態のうち、複ビットデータ埋め込み処理を実行可能なデータ埋め込み装置1によれば、埋め込みデータは、埋め込み補助情報(埋め込み周期)を用いなければ取り出し困難であるように埋め込まれる。なぜならば、埋め込み周期がわからなければ、いずれの丸め方向フラグが反転ビットを示すかがわからないためである。このため、埋め込み補助情報を通知するか否かを選択することにより、埋め込みデータを取り出し可能なユーザを選択することが可能となる。
【0140】
また、本実施形態のうち、複ビットデータ埋め込み処理を実行可能なデータ埋め込み装置1によれば、偏度累積の値と偏度の値とに応じて、埋め込み単位データの全ビットがそのまま又は反転されて、符号化動画像データに埋め込まれる。このため、シーケンス全体において、0と1との出現頻度が1:1に近い値をとる。従って、シーケンス全体において、画質の劣化が防止される。
【0141】
また、単ビットデータ埋め込み処理が実行可能及び/又は複ビットデータ埋め込み処理が実行可能な本実施形態のデータ埋め込み装置1によれば、符号化動画像データの丸め方向フラグ1ビットに対し、埋め込みデータが1ビット以上埋め込まれることはない。このため、符号化動画像のデータ量が変更されることなく、符号化動画像データに対して埋め込みデータが埋め込まれる。従って、ヒントトラックを利用して符号化動画像データをパケット化することが可能となり、パケット化の際に装置に負担となる負荷が軽減される。さらに、MPEG1/2/4で使用されるVBV(仮想バッファモデル)がデータ量の増減により破綻されることが防止できる。
【0142】
〔変形例〕
排他的論理和演算部35は、フレーム番号比較部34から制御信号を受信した場合のみ、入力された二つの値の排他的論理和を演算しても良い。この場合、排他的論理和演算部35は、制御信号を受信しない場合、丸め方向フラグビット入出力インタフェース36から入力された値は、そのまま丸め方向フラグビット入出力インタフェース36へ出力する。
【0143】
また、単ビットデータ埋め込み処理における丸め方向フラグ入出力部8aは、排他的論理和演算部35の代わりに、不図示の反転ビット演算部(反転手段)を備えても良い。この場合、フレーム番号比較部34から制御信号として0を受け取った場合は、反転ビット演算部は、丸め方向フラグビット入出力インタフェース36から入力される値をそのまま丸め方向フラグビット入出力インタフェース36へ出力する。一方、フレーム番号比較部34から制御信号として1を受け取った場合は、反転ビット演算部は、丸め方向フラグビット入出力インタフェース36から入力される値を反転して丸め方向フラグビット入出力インタフェース36へ出力する。
【0144】
また、本実施形態の埋め込み補助情報蓄積部13は、ビットパターンそのものではなく、ビットパターンを特定するためのビットパターン情報を記憶しても良い。ビットパターン情報とは、例えばビットパターンをランレングスで特定したデータなどである。
【0145】
〔その他〕
本発明は、以下のように特定することができる。
(付記1)フレーム間予測符号化動画像データを記憶する動画像記憶手段と、
前記フレーム間予測符号化動画像データに埋め込む埋め込みデータを記憶する埋め込みデータ記憶手段と、
前記フレーム間予測符号化動画像データにおけるフレームデータ毎に含まれた丸め方向フラグに対して、前記埋め込みデータを埋め込む埋め込み手段と、
を備えるデータ埋め込み装置。
(付記2)前記埋め込み手段は、
前記丸め方向フラグの値と前記埋め込みデータの値との排他的論理和を演算する排他的論理和演算手段と、
前記フレーム間予測符号化動画像データに含まれる値であって前記排他的論理和演算手段の入力として用いられた丸め方向フラグの値を、前記排他的論理和演算手段の演算結果の値に置き換える置換手段と、を含む付記1に記載のデータ埋め込み装置。
(付記3)前記埋め込み手段は、
埋め込みデータをなすビットにそれぞれ対応する丸め方向フラグのうち、対応する埋め込みデータの値が1である丸め方向フラグを検出する検出手段をさらに含み、
前記排他的論理和演算手段は、前記検出手段が検出した丸め方向フラグのみについて前記排他的論理和演算を行う、付記2に記載のデータ埋め込み装置。
(付記4)前記埋め込み手段は、
埋め込みデータをなすビットにそれぞれ対応する丸め方向フラグのうち、対応する埋め込みデータの値が1である丸め方向フラグを検出する検出手段と、
前記検出手段が検出した丸め方向フラグの値を反転させる反転手段と、を含む付記1に記載のデータ埋め込み装置。
(付記5)前記検出手段は、
前記埋め込みデータにおいて、値が1となるビットの、埋め込みデータの先頭ビットからのオフセット値を検出するビット位置検出手段と、
前記フレーム間予測符号化動画像データのうち、埋め込みデータを埋め込む対象となるフレームのフレーム番号を検出するフレーム番号検出手段と、
前記オフセット値と前記フレーム番号とが一致した場合に、前記対象となるフレームに含まれる丸め方向フラグが、対応する埋め込みデータの値が1である丸め方向フラグであると判断する判断手段と、を含む付記3又は4に記載のデータ埋め込み装置。
(付記6)連続したフレームにおける前記丸め方向フラグの値が示すパターンは、所定の1以上のビットパターンのいずれかであり、埋め込み手段の処理対象となるフレーム間予測符号化動画像データにおける丸め方向フラグの値のビットパターンがいずれのビットパターンであるかを示す補助情報を管理する補助情報管理手段をさらに備える付記1に記載のデータ埋め込み装置。
(付記7)前記埋め込み手段から出力されるデータを他装置へ送信する送信手段と、
前記補助情報を、前記送信手段とは異なる方法を用いて、前記他装置へ送信する補助情報送信手段と、をさらに備える付記6に記載のデータ埋め込み装置。
(付記8)前記埋め込み手段は、
前記埋め込みデータを複数のサブ埋め込みデータに分割する分割手段と、
前記フレーム間予測符号化動画像データに含まれる丸め方向フラグにおける1と0との分布が略均等となるように、前記サブ埋め込みデータを反転すべきか否かを判断する反転判断手段と、
前記反転判断手段の判断に従って、該当するサブ埋め込みデータを反転する反転手段と、
前記反転手段によって反転されたサブ埋め込みデータ又は反転されないサブ埋め込みデータを、このサブ埋め込みデータのビット数と同数の連続したフレームにおける丸め方向フラグと置き換える置換手段と、を含む付記1に記載のデータ埋め込み装置。
(付記9)前記置換手段はさらに、処理の対象となるサブ埋め込みデータが反転されたデータか否かを示す反転フラグを、この反転フラグのビット数と同数の連続したフレームにおける丸め方向フラグであって、サブ埋め込みデータに置き換えられていないものと置き換える付記8に記載のデータ埋め込み装置。
(付記10)前記分割手段は、前記埋め込みデータを、所定のビット数のサブ埋め込みデータに分割する付記9に記載のデータ埋め込み装置。
(付記11)前記置換手段は、前記所定のビット数に分割されたサブ埋め込みデータに置き換えられた丸め方向フラグを含むフレームと連続したフレームにおける丸め方向フラグを、前記反転フラグと置き換える付記10に記載のデータ埋め込み装置。
(付記12)前記埋め込み手段から出力されるデータを他装置へ送信する送信手段と、
前記所定のビット数を示す補助情報を、前記送信手段とは異なる方法を用いて、前記他装置へ送信する補助情報送信手段と、をさらに備える付記10又は11に記載のデータ埋め込み装置。
(付記13)前記反転判断手段は、
前記サブ埋め込みデータの各ビット値の合計値から、前記ビット数の値を2で除算した値を減算することにより、このサブ埋め込みデータにおける偏度を算出する偏度計算手段と、
データを埋め込むために必要となる偏度累積値を記憶する偏度累積記憶手段と、
処理の対象となるサブ埋め込みデータにおける前記偏度及び前記偏度累積値を比較することにより、このこのサブ埋め込みデータを反転すべきか否かを判断する反転フラグ判断手段と、を含む付記12に記載のデータ埋め込み装置。
(付記14)前記反転判断手段は、
連続したサブ埋め込みデータのうち処理対象となるサブ埋め込みデータにおける偏度累積値と、このサブ埋め込みデータにおける反転フラグ判断手段の判断結果に対応する値及び偏度の乗算値と、を加算することにより、次のサブ埋め込みデータにおける偏度累積値を算出する偏度累積計算手段をさらに含む付記13に記載のデータ埋め込み装置。
(付記15)埋め込みデータが丸め方向フラグに埋め込まれたフレーム間予測符号化動画像データを記憶する記憶手段と、
取り出し用データを用いて、前記フレーム間予測符号化動画像データの丸め方向フラグから埋め込みデータを取り出す取り出し手段と、
を備えるデータ取り出し装置。
(付記16)埋め込みデータが丸め方向フラグに埋め込まれたフレーム間予測符号化動画像データを記憶する動画像記憶手段と、
埋め込みデータが埋め込まれる前のフレーム間予測符号化動画像データの連続したフレームにおける丸め方向フラグのビットパターンを特定するためのビットパターン情報を記憶するパターン記憶手段と、
前記ビットパターン情報により特定されるビットパターンと、前記フレーム間予測符号化動画像データの丸め方向フラグの値との排他的論理和を演算する演算手段と、
を備えるデータ取り出し装置。
(付記17)複数のビットパターン情報のうち、いずれのビットパターン情報が使用されるべきかを示す補助情報を記憶する補助情報記憶手段をさらに備え、
前記パターン記憶手段は複数の前記ビットパターン情報を記憶し、
前記演算手段は、前記パターン記憶手段が記憶する複数のビットパターン情報から、前記補助情報が示すビットパターン情報により特定されるビットパターンを用いて演算を行う、付記16に記載のデータ取り出し装置。
(付記18)埋め込みデータが埋め込まれたフレーム間予測符号化動画像データを記憶する動画像記憶手段と、
前記フレーム間予測符号化動画像データにおける連続したフレームを複数のサブフレームに分割するフレーム分割手段と、
前記サブフレームの各フレームから、フレーム間予測符号化動画像データの丸め方向フラグの値を取り出す取り出し手段と、
前記サブフレームにおける丸め方向フラグの値を反転すべきか否かを判断する反転判断手段と、
前記反転判断手段の判断に従って、該当するサブフレームにおける丸め方向フラグの値を反転し埋め込みデータとして出力する反転手段と、
を備えるデータ取り出し装置。
(付記19)前記フレーム分割手段は、所定のフレーム数のサブフレームに分割する付記18に記載のデータ取り出し装置。
(付記20)他の装置から、前記所定のフレーム数に該当する補助情報を受信する補助情報受信手段をさらに備える付記19に記載のデータ取り出し装置。
(付記21)前記反転判断手段は、前記サブフレームに分割されていないフレームの丸め方向フラグに埋め込まれた反転フラグの値を基に判断する付記18〜20のいずれかに記載のデータ取り出し装置。
【0146】
【発明の効果】
本発明によれば、フレーム間予測符号化動画像データにおいて、そのデータ量を変化させることなく、任意のデータを埋め込むことが可能となる。
【図面の簡単な説明】
【図1】単ビットデータ埋め込み処理及び単ビットデータ取り出し処理を示す図である。
【図2】複ビットデータ埋め込み処理及び複ビットデータ取り出し処理を示す図である。
【図3】本発明の実施形態におけるデータ埋め込み装置及びデータ取り出し装置を示す図である。
【図4】単ビットデータ埋め込み処理における丸め方向フラグ入出力部を示す図である。
【図5】複ビットデータ埋め込み処理における丸め方向フラグ入出力部を示す図である。
【図6】表示部における表示例を示す図である。
【図7】単ビットデータ取り出し処理における丸め方向フラグ解析部を示す図である。
【図8】複ビットデータ取り出し処理における丸め方向フラグ解析部を示す図である。
【符号の説明】
1       データ埋め込み装置
2       データ取り出し装置
3       符号化動画像蓄積部
4       符号化動画像バッファ
5       丸め方向フラグ位置検出部
6       埋め込み情報バッファ
7       埋め込み補助情報管理部
8,8a,8b 丸め方向フラグ入出力部
9       符号化動画像送出部
10      ネットワーク
11      符号化動画像受信部
12      符号化動画像復号部
13      埋め込み補助情報蓄積部
14,14a,14b 丸め方向フラグ解析部
15      表示部
20a,20b 丸め方向フラグ
21a     埋め込みデータ
21b,21c 埋め込み単位データ
22a,22b 埋め込み済符号化動画像データ
31      丸め方向フラグビット位置記憶部
32      フレーム番号記憶部
33      埋め込みフレーム番号記憶部
34      フレーム番号比較部
35      排他的論理和演算部
36      丸め方向フラグビット入出力インタフェース
40      丸め方向フラグビット入出力インタフェース
41      全体制御部
42      丸め方向フラグビット位置記憶部
43      フレーム番号記憶部
44      埋め込み単位データ記憶部
45      偏度計算部
46      反転フラグ計算部
47      偏度累積計算部
48      偏度累積記憶部
49      排他的論理和演算部
51      フレーム番号記憶部
52      丸め方向フラグビット記憶部
53      丸め方向パターン発生部
54      排他的論理和演算部
61      フレーム番号記憶部
62      反転ビット位置判定部
63      丸め方向フラグビット記憶部
64      排他的論理和演算部
71      提示画面
72      動画像表示部
73      埋め込みデータ表示部

Claims (5)

  1. フレーム間予測符号化動画像データを記憶する動画像記憶手段と、
    前記フレーム間予測符号化動画像データに埋め込む埋め込みデータを記憶する埋め込みデータ記憶手段と、
    前記フレーム間予測符号化動画像データにおけるフレームデータ毎に含まれた丸め方向フラグに対して、前記埋め込みデータを埋め込む埋め込み手段と、
    を備えるデータ埋め込み装置。
  2. 前記埋め込み手段は、
    前記丸め方向フラグの値と前記埋め込みデータの値との排他的論理和を演算する排他的論理和演算手段と、
    前記フレーム間予測符号化動画像データに含まれる値であって前記排他的論理和演算手段の入力として用いられた丸め方向フラグの値を、前記排他的論理和演算手段の演算結果の値に置き換える置換手段と、を含む請求項1に記載のデータ埋め込み装置。
  3. 前記埋め込み手段は、
    前記埋め込みデータを複数のサブ埋め込みデータに分割する分割手段と、
    前記フレーム間予測符号化動画像データに含まれる丸め方向フラグにおける1と0との分布が略均等となるように、前記サブ埋め込みデータを反転すべきか否かを判断する反転判断手段と、
    前記反転判断手段の判断に従って、該当するサブ埋め込みデータを反転する反転手段と、
    前記反転手段によって反転されたサブ埋め込みデータ又は反転されないサブ埋め込みデータを、このサブ埋め込みデータのビット数と同数の連続したフレームにおける丸め方向フラグと置き換える置換手段と、を含む請求項1に記載のデータ埋め込み装置。
  4. 埋め込みデータが丸め方向フラグに埋め込まれたフレーム間予測符号化動画像データを記憶する動画像記憶手段と、
    埋め込みデータが埋め込まれる前のフレーム間予測符号化動画像データの連続したフレームにおける丸め方向フラグのビットパターンを特定するためのビットパターン情報を記憶するパターン記憶手段と、
    前記ビットパターン情報により特定されるビットパターンと、前記フレーム間予測符号化動画像データの丸め方向フラグの値との排他的論理和を演算する演算手段と、
    を備えるデータ取り出し装置。
  5. 埋め込みデータが埋め込まれたフレーム間予測符号化動画像データを記憶する動画像記憶手段と、
    前記フレーム間予測符号化動画像データにおける連続したフレームを複数のサブフレームに分割するフレーム分割手段と、
    前記サブフレームの各フレームから、フレーム間予測符号化動画像データの丸め方向フラグの値を取り出す取り出し手段と、
    前記サブフレームにおける丸め方向フラグの値を反転すべきか否かを判断する反転判断手段と、
    前記反転判断手段の判断に従って、該当するサブフレームにおける丸め方向フラグの値を反転し埋め込みデータとして出力する反転手段と、
    を備えるデータ取り出し装置。
JP2002235470A 2002-08-13 2002-08-13 データ埋め込み装置,データ取り出し装置 Expired - Fee Related JP4225752B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2002235470A JP4225752B2 (ja) 2002-08-13 2002-08-13 データ埋め込み装置,データ取り出し装置
US10/637,587 US7324697B2 (en) 2002-08-13 2003-08-11 Data embedding device and data extraction device
DE60329650T DE60329650D1 (de) 2002-08-13 2003-08-13 Vorrichtung zum Einbetten und Extrahieren von Daten in Interframes
EP20030255022 EP1394737B1 (en) 2002-08-13 2003-08-13 Device for embedding and extracting data in inter-frames

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002235470A JP4225752B2 (ja) 2002-08-13 2002-08-13 データ埋め込み装置,データ取り出し装置

Publications (2)

Publication Number Publication Date
JP2004080181A true JP2004080181A (ja) 2004-03-11
JP4225752B2 JP4225752B2 (ja) 2009-02-18

Family

ID=31492465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002235470A Expired - Fee Related JP4225752B2 (ja) 2002-08-13 2002-08-13 データ埋め込み装置,データ取り出し装置

Country Status (4)

Country Link
US (1) US7324697B2 (ja)
EP (1) EP1394737B1 (ja)
JP (1) JP4225752B2 (ja)
DE (1) DE60329650D1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005034092A2 (en) * 2003-09-29 2005-04-14 Handheld Entertainment, Inc. Method and apparatus for coding information
US20140119446A1 (en) * 2012-11-01 2014-05-01 Microsoft Corporation Preserving rounding errors in video coding
US9185437B2 (en) 2012-11-01 2015-11-10 Microsoft Technology Licensing, Llc Video data

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8724789D0 (en) * 1987-10-19 1987-11-25 British Telecomm Signal coding
TW312770B (en) 1996-10-15 1997-08-11 Japen Ibm Kk The hiding and taking out method of data
US5960081A (en) 1997-06-05 1999-09-28 Cray Research, Inc. Embedding a digital signature in a video sequence
JP2000165641A (ja) * 1998-11-24 2000-06-16 Matsushita Electric Ind Co Ltd 画像処理方法,画像処理装置およびデータ記憶媒体
US6192139B1 (en) * 1999-05-11 2001-02-20 Sony Corporation Of Japan High redundancy system and method for watermarking digital image and video data
KR100644576B1 (ko) * 1999-10-19 2006-11-13 삼성전자주식회사 디지털 비디오 코딩 방법 및 장치

Also Published As

Publication number Publication date
EP1394737A3 (en) 2006-12-27
US7324697B2 (en) 2008-01-29
JP4225752B2 (ja) 2009-02-18
DE60329650D1 (de) 2009-11-26
US20040032969A1 (en) 2004-02-19
EP1394737B1 (en) 2009-10-14
EP1394737A2 (en) 2004-03-03

Similar Documents

Publication Publication Date Title
US9609338B2 (en) Layered video encoding and decoding
US11212540B2 (en) Video data processing system
US8660191B2 (en) Software video decoder display buffer underflow prediction and recovery
US11012742B2 (en) Video scrambling method and device with adaptive mode selection, network camera and readable storage medium
JP6708374B2 (ja) 画像群内で修正可能要素のセットを決定するための方法、デバイス、プログラム、及び可読媒体
US11818382B2 (en) Temporal prediction shifting for scalable video coding
US11671610B2 (en) Methods, apparatuses, computer programs and computer-readable media for scalable image coding
US20240040147A1 (en) Data processing method and apparatus, computer device, and storage medium
JP2000332988A (ja) デジタル情報埋込み・抽出装置および方法並びに当該方法を実行するためのプログラムを記録した媒体
JP4225752B2 (ja) データ埋め込み装置,データ取り出し装置
JP2000175161A (ja) 動画像に対する透かしデータ埋め込み装置および検出装置
US20170374432A1 (en) System and method for adaptive video streaming with quality equivalent segmentation and delivery
CN110891195A (zh) 花屏图像的生成方法、装置、设备和存储介质
CN113747159B (zh) 一种生成可变帧率视频媒体文件的方法、装置及相关组件
US20100027621A1 (en) Apparatus, method and computer program product for moving image generation
CN109769129B (zh) 一种汽车液晶仪表中的防解析失败的解码方法
TWI735297B (zh) 具有初始化片段之視訊及音訊之寫碼
CN109274902B (zh) 视频文件处理方法和装置
JP2004320711A (ja) データ処理装置及び改竄判定装置並びにデータ処理プログラム及び改竄判定プログラム
CN111757168B (zh) 音频解码方法、装置、存储介质及设备
JP2012044661A5 (ja)
Ridgway et al. Developing a Video Steganography Toolkit
CN116527914A (zh) 适用于空间图像的解码方法及装置
CN114205638A (zh) 视频的延时播放方法和装置
Barua Steganographic algorithms and application of DNA

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050704

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080513

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080812

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081008

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

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

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

Free format text: PAYMENT UNTIL: 20111205

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4225752

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121205

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121205

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131205

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees