(57)【要約】【課題】  コンテンツ内の特定オブジェクトを予め選択しておくことが不要で、映像の種類に関わらず、適切な位置にオブジェクトを重畳することが可能な技術を提供する。【解決手段】  複数のフレームから成る動画像に対してオブジェクトを重畳して表示手段へ出力する表示制御装置は、前記動画像を構成する各フレームにおいて前記オブジェクトを重畳する候補としての複数の候補領域を取得する取得手段と、前記取得手段が取得した前記複数の候補領域の各々において、前記フレームを解析して該候補領域におけるフレームの重要度を示すパラメータを取得する、解析手段と、前記パラメータに基づいて、前記オブジェクトを重畳する重畳領域を決定する決定手段と、前記決定手段が決定した重畳領域に前記オブジェクトを重畳する重畳手段と、を備える。【選択図】  図２
2009124510.tif 000002
【特許請求の範囲】
【請求項１】
複数のフレームから成る動画像に対してオブジェクトを重畳して表示手段へ出力する表示制御装置であって、
前記動画像を構成する各フレームにおいて前記オブジェクトを重畳する候補としての複数の候補領域を取得する取得手段と、
前記取得手段が取得した前記複数の候補領域の各々において、前記フレームを解析して該候補領域におけるフレームの重要度を示すパラメータを取得する、解析手段と、
前記パラメータに基づいて、前記オブジェクトを重畳する重畳領域を決定する決定手段と、
前記決定手段が決定した重畳領域に前記オブジェクトを重畳する重畳手段と、
を備えることを特徴とする表示制御装置。
【請求項２】
前記解析手段は、フレーム間における画像の動きの大きさを示す量を前記パラメータとして取得し、
前記決定手段は、前記動きの大きさが最も小さい領域を前記重畳領域として決定する
ことを特徴とする請求項１に記載の表示制御装置。
【請求項３】
前記解析手段は、フレーム間における画像の動きの大きさを示す量が閾値以上である時間を前記パラメータとして取得し、
前記決定手段は、前記時間が最も小さい領域を前記重畳領域として決定する
ことを特徴とする請求項１に記載の表示制御装置。
【請求項４】
前記解析手段は、フレーム間の画素値の差分量に基づいて前記動きの大きさを推定する
ことを特徴とする請求項２又は３に記載の表示制御装置。
【請求項５】
前記解析手段は、前記領域における文字の表示時間を前記パラメータとして取得し、
前記決定手段は、前記表示時間が最も小さい領域を前記重畳領域として決定する
ことを特徴とする請求項１に記載の表示制御装置。
【請求項６】
前記取得手段は、ユーザにより指示された領域を前記候補領域として取得する
ことを特徴とする請求項１乃至５のいずれか１項に記載の表示制御装置。
【請求項７】
前記重畳手段は、前記決定手段が決定した重畳領域の大きさに合わせて、前記オブジェクトを変形して重畳する
ことを特徴とする請求項１乃至６のいずれか１項に記載の表示制御装置。
【請求項８】
前記重畳手段は、前記決定手段が決定した重畳領域における前記動画像の色分布に基づいて、前記オブジェクトの色を変更して重畳する
ことを特徴とする請求項１乃至７のいずれか１項に記載の表示制御装置。
【請求項９】
前記動画像はテレビジョン映像であり、
テレビジョン放送のチャンネルが変更されたことを示す変更信号を受信する受信手段を更に備え、
前記解析手段は、前記受信手段が前記変更信号を受信したことに応じて前記パラメータを取得する
ことを特徴とする請求項１乃至８のいずれか１項に記載の表示制御装置。
【請求項１０】
前記オブジェクトは、ベクトルグラフィックスにより表される
ことを特徴とする請求項１乃至９のいずれか１項に記載の表示制御装置。
【請求項１１】
複数のフレームから成る動画像に対してオブジェクトを重畳して表示手段へ出力する表示制御装置の表示制御方法であって、
前記動画像を構成する各フレームにおいて前記オブジェクトを重畳する候補としての複数の候補領域を取得する取得工程と、
前記取得工程において取得した前記複数の候補領域の各々において、前記フレームを解析して該候補領域におけるフレームの重要度を示すパラメータを取得する、解析工程と、
前記パラメータに基づいて、前記オブジェクトを重畳する重畳領域を決定する決定工程と、
前記決定工程において決定した重畳領域に前記オブジェクトを重畳する重畳手段と、
を備えることを特徴とする表示制御方法。
【請求項１２】
コンピュータを請求項１乃至１０のいずれか１項に記載の表示制御装置として機能させるためのプログラム。
【請求項１３】
請求項１２に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は表示制御装置及びその方法、プログラム、記録媒体に関し、特に、画像にオブジェクトを重畳する技術に関する。
【背景技術】
【０００２】
テレビ受像機において、チャンネルや音量などの表示情報を、映像の決められた位置に重ねて表示する技術が知られている。近年、テレビジョン放送がディジタル化されたことにより、このような表示情報に限られない様々なディジタル情報を映像に対して重畳し、表示することが必要となってきている。
【０００３】
パーソナルコンピュータなどのコンピュータ分野では、時計や天気予報などに関する情報を常時映像に重ねて表示させるアプリケーション技術が知られている。このようなアプリケーション技術では、映像に重ねて表示する情報やオブジェクトの位置は、映像によらず定位置であるか、予め決められた範囲内でユーザの操作によりオブジェクト単位で位置を変えられることが一般的である。
【０００４】
しかし、重ねるオブジェクトの位置が映像によらず定位置である場合、映像の中で動きの激しい部分、あるいはテロップなどの文字が表示される部分にオブジェクトを重ねてしまうと、映像の表示内容を把握する妨げになることがある。また、ユーザの操作によって重ねるオブジェクトの位置を変える構成では、ユーザは常にマウスやリモコンなどの操作部を操作していなければならず煩わしい。
【０００５】
これに対し、動画コンテンツ内の他のオブジェクトを重ねたくない特定オブジェクトを予め選択しておき、その特定オブジェクトに重ならない空白領域を検出して、検出された空白領域に挿入オブジェクトを重畳・表示する構成が知られている（特許文献１）。
【特許文献１】特開２００１−１８８５２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の構成では、コンテンツ内の特定オブジェクトを予め選択しておく必要があるため、テレビ放送のようにリアルタイムな処理が必要な映像に対しては適用できないという課題があった。また、たとえ蓄積された動画コンテンツの場合であっても、風景や自然などの映像に対しては、映像内のオブジェクトの正確な輪郭情報を取得するのが困難なことが多く、重ねたくない特定オブジェクトを予め選択することが現実的にはできないことがあった。
【０００７】
本発明は上記課題に鑑みなされたものであり、コンテンツ内の特定オブジェクトを予め選択しておくことが不要で、映像の種類に関わらず、適切な位置にオブジェクトを重畳することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明によれば、複数のフレームから成る動画像に対してオブジェクトを重畳して表示手段へ出力する表示制御装置であって、
前記動画像を構成する各フレームにおいて前記オブジェクトを重畳する候補としての複数の候補領域を取得する取得手段と、
前記取得手段が取得した前記複数の候補領域の各々において、前記フレームを解析して該候補領域におけるフレームの重要度を示すパラメータを取得する、解析手段と、
前記パラメータに基づいて、前記オブジェクトを重畳する重畳領域を決定する決定手段と、
前記決定手段が決定した重畳領域に前記オブジェクトを重畳する重畳手段と、
を備えることを特徴とする表示制御装置が提供される。
【０００９】
また、本発明によれば、複数のフレームから成る動画像に対してオブジェクトを重畳して表示手段へ出力する表示制御装置の表示制御方法であって、
前記動画像を構成する各フレームにおいて前記オブジェクトを重畳する候補としての複数の候補領域を取得する取得工程と、
前記取得工程において取得した前記複数の候補領域の各々において、前記フレームを解析して該候補領域におけるフレームの重要度を示すパラメータを取得する、解析工程と、
前記パラメータに基づいて、前記オブジェクトを重畳する重畳領域を決定する決定工程と、
前記決定工程において決定した重畳領域に前記オブジェクトを重畳する重畳手段と、
を備えることを特徴とする表示制御方法が提供される。
【発明の効果】
【００１０】
本発明によれば、コンテンツ内の特定オブジェクトを予め選択しておくことが不要で、映像の種類に関わらず、適切な位置にオブジェクトを重畳することが可能な技術を提供することができる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。ただし、この実施の形態に記載されている構成要素はあくまでも例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。また、本実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１２】
＜実施形態１＞
（ハードウェア構成）
本実施形態に係る表示制御装置１００のハードウェア構成について、図１を参照して説明する。図１は、表示制御装置１００のハードウェア構成を示すブロック図である。表示制御装置１００はセットトップボックスにより実現されるが、例えば、パーソナルコンピュータ（ＰＣ）、ワークステーション（ＷＳ）、携帯情報端末等の他のコンピュータ装置で実現してもよい。
【００１３】
図１において、１０１は表示制御装置１００全体を制御するＣＰＵ（Central Processing Unit：中央演算処理装置）である。１０２は変更を必要としないプログラムやパラメータを格納するＲＯＭ（Read Only Memory：読出専用メモリ）である。１０３は外部装置などから供給されるプログラムやデータを一時記憶するＲＡＭ（Random Access Memory：書込可能メモリ）である。
【００１４】
１０４は入力部であり、入力デバイス１０７とのインタフェースである。入力デバイス１０７は、ユーザの操作を受けてデータを入力するユニットであり、リモートコントローラー等により実現される。他に、キーボード、ポインティングデバイスなどにより実現しても構わない。
【００１５】
１０５は、モニタ１０８とのインタフェースとして機能する表示部であり、出力画像をモニタ１０８に表示させる。モニタ１０８は表示制御装置１００の保持するデータや供給されたデータを表示する表示装置である。本実施形態では、テレビ受像機（不図示）の表示装置がモニタ１０８として使用されるが、表示専用のモニタ１０８を使用してもよい。モニタ１０８は、例えば、液晶パネル、ＣＲＴディスプレイ、有機ＥＬディスプレイ、ＳＥＤなどにより実現される。１０６は１０１〜１０５の各ユニットを通信可能に接続するシステムバスである。
【００１６】
なお、表示制御装置１００は、外部記憶装置やネットワークインタフェース等、他のハードウェア・ユニットを備えてもよい。外部記憶装置としては、例えば、固定して設置されたハードディスクやメモリカード、あるいは、着脱可能なフレキシブルディスク（ＦＤ）やコンパクトディスク（ＣＤ）等の光ディスク、磁気や光カード、ＩＣカード、メモリカードなどがある。また、ネットワークインタフェースとしては、例えば、インターネットなどのネットワーク回線に接続するためのＬＡＮインタフェース、無線ＬＡＮインタフェース等がある。
【００１７】
尚、以上の各装置と同等の機能を実現するソフトウェアにより、ハードウェア装置の代替として構成することもできる。
【００１８】
本実施形態では、説明の便宜のため、本実施形態に係る表示制御装置１００を１つの装置で実現した構成について述べるが、複数の装置にリソースを分散した構成によって実現してもよい。例えば、記憶や演算のリソースを複数の装置に分散した形に構成してもよい。或いは、表示制御装置１００上で仮想的に実現される構成要素毎にリソースを分散し、並列処理を行うようにしてもよい。
【００１９】
（機能構成）
次に、上記の表示制御装置１００の機能構成について、図２を参照して説明する。図２は、本実施形態に係る表示制御装置１００の機能構成を示したブロック図である。
【００２０】
図２に示される各機能ブロックは、図１を参照して上述した表示制御装置１００のＣＰＵ１０１がＲＡＭ１０３にロードされたプログラムを実行し、図２に示される各ハードウェアと協働することによって実現される。もちろん機能ブロックの一部或いは全てが専用のハードウェアで実現されてもよい。
【００２１】
本実施形態に係る表示制御装置１００は以下の機能ブロックを備える。
・動画像（映像）に対してオブジェクトを重ね得る候補領域を少なくとも１つ取得する領域取得部２０１。
・前記動画像の任意の時刻におけるフレームを取得するフレーム取得部２０２。
・フレーム取得部２０２により取得したフレームの、領域取得部２０１により取得した候補領域に対して動画解析を行う解析部２０３。
・解析部２０３により解析された結果をもとに、オブジェクトを重畳する現在の重畳領域を決定する領域決定部２０４。
・領域決定部２０４により決定された重畳領域に対してオブジェクトを重ねて出力させるオブジェクト重畳部２０５。
【００２２】
（全体処理）
本実施形態では図形や文字などのオブジェクト情報を重ねる対象となる動画像として、テレビジョン映像のようなリアルタイムに処理が必要な映像を想定する。ただし、アニメーションを含む映像であっても構わない。
【００２３】
また、オブジェクトを重ね得る候補領域として映像の表示領域の四隅を前提とし、テレビ受像機の電源が投入され映像の表示が開始された時点では初期設定として右上にオブジェクトを表示するものとする。一定時間はオブジェクトを重ね得る候補領域に対し動画解析を行い続け、一定時間が経つとその間の解析結果からオブジェクトを重ねる重畳領域を決定し、決定された重畳領域にオブジェクトを出力する。映像が出力されている間はこの処理を繰り返し行う。
【００２４】
図３は映像が出力されている間に繰り返される処理の基本的なフローを示したフローチャートである。以下同図をもとに表示制御装置１００が実行する全体処理について説明する。なお、フローチャートの各ステップで示される処理は、表示制御装置１００のＣＰＵ１０１の制御に基づいて実行される。
【００２５】
ステップＳ３０１においてオブジェクトを重ね得る候補領域として予め設定されている領域情報を取得する。ここでの領域情報は矩形の左上の座標と幅、高さとする。領域情報は、例えば、ハードディスク装置等の記憶装置（不図示）を読み出したり、外部装置と通信したりして取得することができる。
【００２６】
なお、オブジェクトを重ね得る候補領域はユーザが予め指定していてもよい。オブジェクトを重ね得る候補領域の指定は、例えば、マウスやタッチペンなどのポインティングデバイスを用いて行われることを想定しているが、限定はしない。
【００２７】
次に、ステップＳ３０２で解析時間ｔを０に初期化する。
【００２８】
次に、ステップＳ３０３では重ねるオブジェクトの位置を決定する周期Ｔと解析時間ｔを比較する。ｔがＴを超えた場合（ステップＳ３０３でＹＥＳ）は処理をステップＳ３０８に移し、そうでなければ（ステップＳ３０３でＮＯ）ステップＳ３０４を実行する。
【００２９】
ステップＳ３０４ではステップＳ３０１で取得した少なくとも１つ以上の候補領域全てに対して解析処理を行う。ここでは、各候補領域におけるフレーム間の差分情報、あるいは各候補領域における文字の出現頻度を解析する。
【００３０】
一般に動画像の重要な内容を含む箇所には、オブジェクトを重畳すべきではない。そして、フレーム間における画像の動きの大きさが大きい領域や文字が表示される領域は、ユーザが画像の内容を把握するために重要な内容を含んでいることが多い。そこで、本実施形態では、画像の動きの大きさや文字の表示時間等に関する情報をフレームの重要度を示す重要度パラメータとして、オブジェクトを重畳させる領域を決定するために利用する。解析処理では、候補領域の各々において、フレームを解析してこのような重要度パラメータを取得する処理を行う。解析処理の詳細については図７を参照して後述する。解析処理は時間ｓごとに行い（但しｓ＜Ｔ）、ステップＳ３０５で解析時間ｔに時間ｓをインクリメントする。
【００３１】
次に、ステップＳ３０６では、ユーザの操作により映像チャンネルが変更されたか否かを判定する。この判定は、テレビジョン放送のチャンネルが変更されたことを示す変更信号を表示制御装置１００が受信したか否かに基づいて行う。即ち、このような変更信号を受信した場合に、映像チャンネルが変更されたと判定する。
【００３２】
映像チャンネルが変更された場合（ステップＳ３０６でＹＥＳ）は、オブジェクトの表示位置はそのままでステップＳ３０７において解析時間ｔまでの解析データを破棄する。映像が表示画面に出力されている間はこのフロー（ステップＳ３０１〜Ｓ３１０）を繰り返す。チャンネルの変更が無い間（ステップＳ３０６でＹＥＳ）は、ステップＳ３０３に処理を戻し、ステップＳ３０３の条件を満たすまでステップＳ３０３からステップＳ３０６の処理を繰り返す。
【００３３】
ステップＳ３０３でＴ＜ｔの条件を満たした場合、ステップＳ３０８で各候補領域における解析時間０からｔまでの解析結果をもとに動画像に重ねるオブジェクトの位置を変更するか否かを判定する。例えば、時間Ｔまでで、それまでオブジェクトを重ねていた領域とそれ以外の領域とで動画像の変化量あるいは文字の出現頻度などに基づく、候補領域におけるフレームの重要度を示す重要度パラメータを比較して判定する。
【００３４】
より具体的には、例えば、重要度パラメータとしてフレーム間における画像の動きの大きさを示す量を取得した場合は、動きの大きさが最も小さい領域を重畳領域とすることができる。或いは、例えば、重要度パラメータとしてフレーム間における画像の動きの大きさを示す量が所定の閾値以上である時間を取得した場合は、この時間が最も小さい領域を重畳領域として決定することができる。領域における文字の表示時間をパラメータとして取得し、表示時間が最も小さい領域を重畳領域として決定することができる。このようにして何らかの重要度パラメータに基づいて重畳領域と決定すると、その領域がステップＳ３０８の実行時の重畳領域と異なる場合は、オブジェクトの位置を変更すると判定する。
【００３５】
ステップＳ３０８での判定の結果、オブジェクトの位置は変更しないと判定されれば（ステップＳ３０８でＮＯ）処理をステップＳ３０７に移し、解析時間０からｔまで解析データを破棄する。映像が表示画面に出力されている間はこのフローチャート（ステップＳ３０１〜Ｓ３１０）を繰り返すものとする。
【００３６】
オブジェクトの位置を変更すると判定された場合（ステップＳ３０８でＹＥＳ）はステップＳ３０９へ進む。ステップＳ３０９では、解析時間０からｔまでの解析結果をもとにオブジェクトを重ねる新たな重畳領域を決定する。例えば、最も動画像の変化量の少なかった領域、あるいは最も文字の出現頻度の少なかった領域を、オブジェクトを重ねる新たな重畳領域として決定する。
【００３７】
次に、ステップＳ３１０において、ステップＳ３０９で決定した重畳領域に対し、オブジェクトを重ねて出力させる。そしてステップＳ３０７に処理を移し、映像が表示画面に出力されている間はこのフロー（ステップＳ３０１〜Ｓ３１０）を繰り返す。
【００３８】
（オブジェクトの表示例）
次に、動画像に重畳させるオブジェクト、及びその表示例について、図４〜図６を参照して説明する。まず、オブジェクトの定義について図４を参照して説明する。図４は、オブジェクトを定義する構造化文書を例示する図である。
【００３９】
４０１は動画像に重ねるオブジェクトをベクトルグラフィックスのＳＶＧ（Scalable Vector Graphics）で表現した構造化文書である。４０２はオブジェクトの高さと幅を定義しており、４０２の例では、オブジェクトの幅が４００、高さが３００となっている。
【００４０】
４０３は、オブジェクトの形状を示している。４０３の例では、ｃｘ＝"０"、ｃｙ＝"０"より楕円の中央の座標が（０,０）である。また、ｒｘ＝"５０"、ｒｙ＝"２０"より、楕円のｘ軸方向の半径、ｙ軸方向の半径がそれぞれ５０、２０である。
【００４１】
４０４は、オブジェクトを構成する文字列を示している。４０４の例では、＜ｔｅｘｔ＞タグで文字列「Ｌｏｇｏ」が挟まれているため、表示する文字列は「Ｌｏｇｏ」である。ｆｉｌｌ＝"ｗｈｉｔｅ"より文字の色はそれぞれ白であり、ｆｏｎｔ−ｓｉｚｅ＝"２０"より文字のサイズは２０である。また、ｘ＝"−２０"、ｙ＝"７"より、文字列の位置座標は（−２０,７）である。
【００４２】
なお、図４では、オブジェクトをＳＶＧで表現した場合を例示したが、オブジェクトの表現方法は任意であり、これに限られない。また、図４では、オブジェクトとして図形の例と文字列の例を挙げたが、これに限られない。例えば、画像（静止画、動画）、アプリケーションの表示等でも構わない。
【００４３】
次に、動画像のオブジェクトを重畳させうる候補領域について、図５を参照して説明する。図５は、オブジェクトを重ねる動画コンテンツの一例を示した模式図である。
【００４４】
図５において、５０１はオブジェクトを重ねる動画像を表している。領域５０２、５０３、５０４、５０５は、図３のステップＳ３０１において取得された領域情報にしめされる候補領域を表している。表示制御装置１００は、動画像のこれら領域に対して解析処理を行い、オブジェクトを重ねる重畳領域を決定する。
【００４５】
なお、本実施形態ではステップＳ３０１で取得された各候補領域のサイズは重ねるオブジェクトのサイズと全て一致しているものとするが、異なっていても構わない。異なっている場合には重ねるオブジェクトのサイズを変更する処理が加わることになる。
【００４６】
次に、オブジェクトを動画像に重畳して表示させた様子について、図６を参照して説明する。図６は構造化文書４０１を構造化文書解析により解釈し、オブジェクトを動画像５０１に重ねて描画した場合の表示結果を例示する図である。
【００４７】
オブジェクト６０２は、構造化文書４０１を描画したものである。図４の４０３のように、はじめ、構造化文書４０１はオブジェクト６０２を包含する矩形６０１の中心が左上の原点に一致するように記述されている。
【００４８】
本実施形態では、初期設定として右上にオブジェクトを表示する。このため、オブジェクト６０２を領域５０３へ移動する。さらに、オブジェクト６０２の大きさが領域５０３に適合しない場合は、オブジェクト６０２を適宜伸縮する処理を行う。
【００４９】
動画像の右上に位置する領域５０３は、ステップＳ３０９で決定される。領域５０３の左上点Ｐの座標を（ｘ、ｙ）、幅Ｗａ、高さＨａとすると、オブジェクト６０２を（ｘ＋Ｗａ/２、ｙ＋Ｈａ/２）だけ平行移動させるように構造化文書４０１の記述が変更される。これにより、領域５０３の中心にオブジェクト６０２の中心を移動させることができる。
【００５０】
オブジェクト６０２の大きさが領域５０３の大きさに適合しない場合はオブジェクト６０２を伸縮させることにより領域５０３に適合させる。矩形６０１の幅をＷｏ、高さをＨｏとする。Ｗａ／Ｗｏ＞Ｈａ／Ｈｏならばオブジェクト６０２の縦横をそれぞれＨａ／Ｈｏ倍に伸縮してから（ｘ＋Ｗ/２、ｙ＋Ｈ/２）だけ平行移動させる。そうでなければオブジェクト６０２の縦横をそれぞれＷａ／Ｗｏ倍に伸縮してから（ｘ＋Ｗ/２、ｙ＋Ｈ/２）だけ平行移動させるように構造化文書４０１の記述を変更する。
【００５１】
このように、オブジェクト６０２の大きさを領域５０３の大きさに適合させるが、これに限られない。例えば、オブジェクト６０２が領域５０３に収まらない場合にのみオブジェクト６０２の伸縮処理を行ってもよい。即ち、オブジェクト６０２が領域５０３より大きい場合は、領域５０３にぴったり合うようにオブジェクト６０２を伸縮させるが、オブジェクト６０２が領域５０３より小さい場合は、伸縮しないようにしてもよい。
【００５２】
また、オブジェクト６０２を伸縮する際は、必ずしも縦横の長さの比を一定に保つ必要はない。例えば、領域５０３の縦横の長さの比に合わせてオブジェクト６０２を伸縮してもよい。
【００５３】
なお、重畳領域の大きさに合わせてオブジェクトを変形して重畳する構成例については、実施形態３で詳細に説明する。
【００５４】
（解析処理）
次に、図３のステップＳ３０４で実行する解析処理について図７を参照して説明する。図７は解析処理のフローの一例を示すフローチャートである。本実施形態の解析処理では、各領域のフレームを解析して、フレーム間における画像の動きの大きさを示す量を重要度パラメータとして取得する。なお、本実施形態では、フレーム間の画素値の差分量に基づいてこの動きの大きさを推定する。
【００５５】
フレームを構成する各画素値はＲＧＢの情報それぞれ８ビットで構成され、ステップＳ３０１において取得された候補領域の左上の座標を（ｘ、ｙ）、幅をＷ、高さをＨとする。はじめにステップＳ７０１では、現在の動画像のフレームと時間ｓだけ前のフレームを取得する。
【００５６】
次にステップＳ７０２では、ステップＳ３０１で取得した候補領域全てに対して処理を終えたか判定する。終えていると判定した場合（ステップＳ７０２でＹＥＳ）は処理を終了し、終えていないと判定した場合（ステップＳ７０２でＮＯ）は処理をステップＳ７０３に移す。
【００５７】
ステップＳ７０３ではまだ処理を終えていない候補領域の１つにおいて、解析が未処理の画素があるか判定する。未処理の画素がある場合（ステップＳ７０３でＹＥＳ）はステップＳ７０４において、ステップＳ７０１で取得したフレーム間における画素の変化量（差分量）を求める。フレーム間での同一座標の画素値の変化量Ｎは
2009124510.tif 000003
で表される。但し、Ｒ、Ｇ，Ｂは現在のフレームにおける画素のＲＧＢ成分の値であり、Ｒ'，Ｇ'，Ｂ'は時間ｓだけ前のフレームにおける同画素のＲＧＢ成分の値である。指定された候補領域の全ての画素に対しこの変化量（差分量）を求めるまで繰り返す。
【００５８】
ステップＳ７０３において未処理の画素がないと判定された場合（ステップＳ７０３でＮＯ）は、ステップＳ７０５で、各画素の変化量（差分量）の平均値を求める。この平均値を現在の指定された候補領域での変化の大きさを表すパラメータとする。ステップＳ７０１で取得したフレーム間における座標（ｉ、ｊ）の変化量をＮ[ｉ][ｊ]としたときの変化の大きさを表すパラメータＢは
2009124510.tif 000004
となる。
【００５９】
次に、ステップＳ７０６で、既に格納されている同じ候補領域に関する平均値にステップＳ７０５で求めた平均値を加算し、処理をステップＳ７０２に戻す。ステップＳ３０８におけるオブジェクトの位置を変更するかの判定は、ステップＳ７０６で格納される解析時間０からｔまでの各候補領域の平均値の総和に基づくものである。即ち、この総和を重要度パラメータとして利用し、この総和が大きいほど画素値の変化量（差分量）の大きい候補領域であるとする。なお、全ての候補領域の変化量が同程度の場合はオブジェクトの位置は変更せず、再度図３のフローチャートを繰り返すこととなる。
【００６０】
上記のように、本実施形態では、候補領域の各々において、フレームを解析して該候補領域におけるフレームの重要度を示す重要度パラメータを取得し、この重要度パラメータに基づいて、オブジェクトを重畳する重畳領域を自動的に決定する。このため、コンテンツ内の特定オブジェクトを予め選択しておくことが不要で、映像の種類に関わらず、適切な重畳位置をリアルタイムに決定して、オブジェクトを重畳することが可能である。
【００６１】
なお、本実施形態では、フレーム間における画像の動きの大きさをフレーム間の画素値の差分量に基づいて推定し、この動きの大きさを示す量を重要度パラメータとして利用する。このため、重要な内容が表示される領域を回避して適切な位置にオブジェクトを表示することができる。
【００６２】
＜実施形態２＞
実施形態１では、解析処理において、フレーム間の画像の動きの大きさを示す量を重要度パラメータとして取得する例について説明した。本実施形態では、別の例として、領域における文字の表示時間を重要度パラメータとして取得する例について説明する。
【００６３】
本実施形態の表示制御装置１００のハードウェア構成、および機能構成は実施形態１と同様なため説明は省略する。本実施形態では図形や文字などのオブジェクト情報を重ねる対象となる動画像として、テレビ放送のようなリアルタイムに処理が必要な映像を想定する。ただし、アニメーションを含む映像であっても構わない。また、オブジェクトを重ね得る領域として表示領域の四隅を前提としているが、実現の際には四隅である必要は無い。
【００６４】
（解析処理）
本実施形態では、一定時間、オブジェクトを重ね得る候補領域に対し動画解析を行い続ける。一定時間が経過すると、その間の解析結果からオブジェクトを重ねる重畳領域を決定し、決定された重畳領域にオブジェクトを出力する。映像が出力されている間はこの処理を繰り返し行う。解析方法としてテロップや速報、時刻、あるいは予め動画コンテンツに埋め込まれているような文字が指定された候補領域に表示されるか否かを判定し、文字が表示される時間の最も少ない候補領域を、オブジェクトを重ねる重畳領域とする。
【００６５】
図８は文字認識を用いた解析処理のフローの一例を示すフローチャートである。以下同図をもとに、図３のＳ３０４で実行する解析処理のフローの詳細を説明する。
【００６６】
まず、はじめにステップＳ８０１では現在の動画像のフレームを取得する。次にステップＳ８０２では、ステップＳ３０１で取得した候補領域全てに対して処理を終えたか否かを判定する。終えている場合（ステップＳ８０２でＹＥＳ）は処理を終了し、終えていない場合（ステップＳ８０２でＮＯ）は処理をステップＳ８０３に移す。
【００６７】
ステップＳ８０３では、まだ処理を終えていない候補領域の１つに対して文字認識処理を施す。なお、画像における文字の認識処理は広く知られており、公知の認識処理を適用することができる。文字認識処理は、例えば、特開平４−１８２７８８、特開平５−１１４０４８、特開平５−１２０４９４などに記載されている。
【００６８】
次に、ステップＳ８０４でステップＳ８０３の処理の結果から候補領域内に文字があるかどうかを判定し、なければ（ステップＳ８０４でＮＯ）処理をステップＳ８０２に戻す。文字があれば（ステップＳ８０４でＹＥＳ）ステップＳ８０５で、既に格納されている同じ候補領域に関する文字出現時間を表すパラメータに時間ｓを加算して処理をステップＳ８０２に戻す。
【００６９】
ステップＳ３０８におけるオブジェクトの位置を変更するかの判定は、ステップＳ８０５で格納される解析時間０からｔまでの各領域の文字出現時間を表す重要度パラメータに基づくものである。この重要度パラメータが大きいほど文字が出力される時間が長く、重要な領域であることを表す。なお、全ての候補領域における文字出現時間が同程度の場合はオブジェクトの位置は変更せず、再度図３のフローチャートを繰り返すこととなる。
【００７０】
上記のように、本実施形態では、領域における文字の表示時間を前記パラメータとして取得して利用する。このため、文字の上にオブジェクトを重畳させることを抑制しつつ、適切な位置にオブジェクトを表示することができる。
【００７１】
＜実施形態３＞
本実施形態では、フレーム間における画像の動きの大きさを示す量が閾値以上である時間を重要度パラメータとして取得し、利用する構成について説明する。なお、本実施形態では、ユーザにより指示された領域をオブジェクトを重畳させる候補領域として取得する。また、オブジェクトを重畳させる重畳領域を決定すると、その重畳領域の大きさに合わせて、オブジェクトを変形して重畳する。
【００７２】
本実施形態の表示制御装置１００のハードウェア構成、および機能構成は実施形態１と同様なため説明は省略する。本実施形態においても、オブジェクトを重ねる動画像として、リアルタイム処理を必要としない、既に記憶領域に蓄積されている動画コンテンツを想定するが、これに限られない。
【００７３】
（全体処理）
図９を参照して本実施形態における全体処理について説明する。図９は全体処理の基本的なフローを示すフローチャートである。
【００７４】
まず、ステップＳ９０１において、動画像に対しオブジェクトを重ねてもよい候補領域の指定をユーザから受け付ける。候補領域の指定は、少なくとも１つ以上受け付ける。候補領域の指定は、マウスやタッチペンなどのポインティングデバイスを用いることを想定しているが、これに限られない。
【００７５】
次に、ステップＳ９０１で指定された候補領域に対してステップＳ９０２で動画の解析を行う。このように、本実施形態では、ユーザにより指示された領域を候補領域として取得し、処理を行うため、必要に応じて、オブジェクトを表示する領域を手動で適切に設定することができる。解析処理に関しては後で詳細を述べるが、本実施形態では、領域内のフレームを解析して、フレーム間における画像の動きの大きさを示す量が閾値以上である時間を重要度パラメータとして取得する。
【００７６】
次に、ステップＳ９０２で行った解析の結果をもとに、ステップＳ９０３ではステップＳ９０１で指定された候補領域の中からオブジェクトを重ねても表示内容に影響の少ない領域を重畳領域として決定する。本実施形態では、フレーム間における画像の動きの大きさを示す量が閾値以上である時間が最も小さい領域を重畳領域として決定する。このため、画像の重要部分を回避して適切な位置にオブジェクトを重畳させることができる。
【００７７】
次にステップＳ９０４では、ステップＳ９０３で決定された重畳領域に重ねて表示させるオブジェクトの表示サイズを取得する。
【００７８】
次に、ステップＳ９０５において、ステップＳ９０３で決定された重畳領域のサイズとステップＳ９０４で取得したオブジェクトのサイズとを比較して、オブジェクトが重畳領域に収まるか否かを判定する。ステップＳ９０５で収まらないと判定された場合（ステップＳ９０５でＮＯ）にはステップＳ９０６でオブジェクトを重畳領域に収まるように変形させる。そしてステップＳ９０３で決定された重畳領域の位置にあわせてオブジェクトの位置を変更して動画コンテンツに重ねて表示させる。オブジェクトのサイズ変更処理に関しては図４〜図６を参照して説明した処理と同様である。
【００７９】
このように、本実施形態では、決定した重畳領域の大きさに合わせてオブジェクトを変形して重畳するため、オブジェクトのサイズに関わらず、フレームの重要な部分が隠れることなく適切にオブジェクトを重畳させることができる。
【００８０】
（解析処理）
図１０は図９のステップＳ９０２における解析処理のフローの一例を示すフローチャートである。以下同図をもとに解析処理の一例を説明する。
【００８１】
前提としてオブジェクトを重ねる動画コンテンツ自体の総再生時間をＴ、１フレームあたりの時間をａとする。また、フレームを構成する各画素値はＲＧＢの情報それぞれ８ビットで構成され、ステップＳ９０１において指定された候補領域を包含する最小矩形の左上の座標を（ｘ、ｙ）、幅をＷ、高さをＨとする。
【００８２】
はじめにステップＳ１００１では、ユーザにより指定された候補領域の座標や幅、高さを取得し、時間ｔと動き検出時間Ｔmを０に初期化する。動き検出時間とは定められた領域において動きが検出された時間数を表す。
【００８３】
次に、ステップＳ１００２で時間ｔが動画コンテンツの総再生時間Ｔを超えたか否かを判定する。超えたと判定された場合（ステップＳ１００２でＹＥＳ）は動画コンテンツに対する解析処理を終了する。超えていないと判定された場合（ステップＳ１００２でＮＯ）は、ステップＳ１００３で時間ｔおよびｔ＋ａでの動画コンテンツのフレームを取得する。任意のフレーム間での同じ座標の画素値の変化量（差分量）Ｎを
2009124510.tif 000005
で表す。但し、Ｒ、Ｇ，Ｂはある時刻における画素のＲＧＢ成分の値であり、Ｒ'，Ｇ'，Ｂ'は次フレームにおける同画素のＲＧＢ成分の値である。ステップＳ１００４で指定された候補領域の全ての画素に対し変化量（差分量）を求めたか否か、即ち未処理の画素があるか否かを判定する。即ち、未処理の画素がないと判定された場合（ステップＳ１００４でＮＯ）は処理をステップＳ１００６に移す。処理していない画素がある場合（ステップＳ１００４でＹＥＳ）には、ステップＳ１００５へ進む。
【００８４】
ステップＳ１００５では、候補領域において、取得したフレーム間の画素について画素値の変化量（差分量）を求める。そして、ステップＳ１００４へ戻る。全ての画素について、変化量が求まるまで、ステップＳ１００４、Ｓ１００５の処理を繰り返す。
【００８５】
ステップＳ１００６では、求められた全ての変化量（差分量）をもとに変化量の画素平均の値を求める。この変化量の画素平均の値Ｂをある時刻における指定された候補領域での変化の大きさを表すパラメータとする。時間ｔでのフレーム間における座標（ｉ、ｊ）の変化量をＮt[ｉ][ｊ]としたときの変化の大きさを表すパラメータＢtは
2009124510.tif 000006
となる。
【００８６】
次に、ステップＳ１００７で、Ｂtの値によって時間ｔからｔ＋ａの間において指定された候補領域における変化量（差分量）が大きいか否か判定する。本実施形態では予め設定された閾値を超えたか否かで判定を行う。変化が大きいと判定された場合（ステップＳ１００７でＹＥＳ）、ステップＳ１００８で動き検出時間Ｔmにａを加算する。そうでなければ（ステップＳ１００７でＮＯ）ステップＳ１００９に処理を移す。
【００８７】
最後にステップＳ１００９で時間ｔにａを加算してステップＳ１００２に戻る。
【００８８】
上記のように、本実施形態では、フレーム間における画像の動きの大きさを示す量が閾値以上である時間を重要度パラメータとして取得、利用するため、オブジェクトを重畳する領域を適切に決定することができる。
【００８９】
なお、図１０のフローはユーザが指定した候補領域それぞれに対して行うものであり、この一連の処理を図９のステップＳ９０１で指定された候補領域の数だけ行う。その中で最も動き検出時間Ｔmの小さい領域を、オブジェクトを重ねる重畳領域とする。
【００９０】
また、決まった重畳領域に対してオブジェクトを重ねて表示する際に、算出したパラメータＢがある閾値を超えたときの時間を動画解析時に格納しておき、その時間はオブジェクトの表示を制御してもよい。あるいは、オブジェクトの透明度の変更することにより背景に表示されている動画コンテンツを把握しやすいようにオブジェクトを出力しても構わない。
【００９１】
また、本実施形態ではリアルタイム処理を必要としない、既に記憶領域に蓄積されているビデオなどの動画コンテンツを想定したが、アニメーションコンテンツであっても構わない。
【００９２】
＜その他の実施形態＞
上記の実施形態では、オブジェクトを重畳領域に重畳するときに必要に応じてオブジェクトを変形させたが、適宜、オブジェクトの色を変更して重畳してもよい。例えば、重畳領域における動画像の色分布を求め、この色分布に基づいて、オブジェクトを色が映えるようにオブジェクトの色を変更してもよい。このような構成によれば、各フレームの色がどのようなものでも、オブジェクトを目立つように重畳することができる。
【００９３】
本発明の目的は、前述した実施形態の機能を実現するソフトウエアのプログラムコードをシステムあるいは装置で実行することによっても達成されることは言うまでもない。この場合、プログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードは本発明の技術的範囲に含まれる。
【００９４】
プログラムコードは、例えば、コンピュータ読み取り可能な記録媒体に記録してシステムあるいは装置に供給することができる。そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）は、記録媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的を達成することができる。従って、そのプログラムコードを記憶した記録媒体も本発明の技術的範囲に含まれる。
【００９５】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００９６】
なお、プログラムコードは、コンピュータが当該プログラムコードを読み出し実行することにより前述した実施形態の機能を実現するための、全ての要素を備えたものに限られない。即ち、プログラムコードには、コンピュータに組み込まれたソフトウェア及びハードウェアの少なくともいずれかと協働することにより目的を達成するプログラムコードも含まれる。
【００９７】
例えば、プログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も、そのプログラムコードは本発明の技術的範囲に含まれる。ここで、ＯＳはオペレーティングシステム（Operating System）の略称である。
【００９８】
あるいは、例えば、プログラムコードの指示に基づき、コンピュータに挿入又は接続された機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合がある。このような場合も、そのプログラムコードは本発明の技術的範囲に含まれる。なお、機能拡張ボードや機能拡張ユニットは、それらが備えるメモリにプログラムコードを読み込み、実行することでこのような処理を行うことができる。
【００９９】
上記のように、上記構成によれば、映像の部分領域上にオブジェクトを重ねても、映像の表示内容を把握する妨げになる影響を低減して表示できる。
【図面の簡単な説明】
【０１００】
【図１】表示制御装置のハードウェア構成を示すブロック図である。
【図２】表示制御装置の機能構成を示したブロック図である。
【図３】全体処理の基本的なフローを示したフローチャートである。
【図４】オブジェクトを定義する構造化文書を例示する図である。
【図５】オブジェクトを重ねる動画コンテンツの一例を示した模式図である。
【図６】オブジェクトを動画像に重ねて描画した場合の表示結果を例示する図である。
【図７】解析処理のフローの一例を示すフローチャートである。
【図８】文字認識を用いた解析処理のフローの一例を示すフローチャートである。
【図９】全体処理の基本的なフローを示すフローチャートである。
【図１０】解析処理のフローの一例を示すフローチャートである。
【図１】
2009124510.tif 000007
【図２】
2009124510.tif 000008
【図３】
2009124510.tif 000009
【図４】
2009124510.tif 000010
【図５】
2009124510.tif 000011
【図６】
2009124510.tif 000012
【図７】
2009124510.tif 000013
【図８】
2009124510.tif 000014
【図９】
2009124510.tif 000015
【図１０】
2009124510.tif 000016