(57)【要約】【課題】  合成オブジェクトを表示するウィンドウの前面に、別の不透明なウィンドウが重なった場合でも、合成オブジェクトの表示内容が見えるようにする。【解決手段】  本発明は、オブジェクト合成サーバから送信される、複数のオブジェクトが合成された合成オブジェクトを受信する合成オブジェクト受信手段と、受信された前記合成オブジェクトを第１のウィンドウに表示する合成オブジェクト表示手段と、前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出する別ウィンドウ重なり検出手段と、前記別ウィンドウ重なり検出手段によって検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するレイアウト決定手段と、決定した各前記オブジェクトのレイアウトを前記オブジェクト合成サーバへ送信するレイアウト送信手段と、を備える。【選択図】  図３
2007065356.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクト合成サーバから送信される、複数のオブジェクトが合成された合成オブジェクトを受信する合成オブジェクト受信手段と、
受信された前記合成オブジェクトを第１のウィンドウに表示する合成オブジェクト表示手段と、
前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出する別ウィンドウ重なり検出手段と、
前記別ウィンドウ重なり検出手段によって検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するレイアウト決定手段と、
決定した各前記オブジェクトのレイアウトの情報を前記オブジェクト合成サーバへ送信するレイアウト送信手段と、
を備えた合成オブジェクト表示装置。
【請求項２】
前記レイアウト決定手段は、各前記オブジェクトのレイアウトを計算により求めることを特徴とする請求項１に記載の合成オブジェクト表示装置。
【請求項３】
前記レイアウト決定手段は、各前記オブジェクトのサイズを、あらかじめ与えられた複数のサイズの中から選択することを特徴とする請求項１に記載の合成オブジェクト表示装置。
【請求項４】
ユーザが予め指定した各前記オブジェクトのレイアウトであるユーザレイアウトを１つ以上記憶するユーザレイアウト記憶手段をさらに備え、
前記レイアウト決定手段は、前記ユーザレイアウト記憶手段からユーザレイアウトを選択し、
前記レイアウト送信手段は、選択された前記ユーザレイアウトの情報を前記オブジェクト合成サーバへ送信する、
ことを特徴とする請求項１に記載の合成オブジェクト表示装置。
【請求項５】
基準レイアウトを記憶するレイアウト記憶手段をさらに備え、
前記第２のウィンドウの重なりが解除された場合は、前記送信手段は、前記基準レイアウトを前記オブジェクト合成サーバへ送信する、
ことを特徴とする請求項１ないし４のいずれかに記載の合成オブジェクト表示装置。
【請求項６】
前記別ウィンドウ重なり検出手段は、前記合成オブジェクトの表示領域と、前記第２のウィンドウとの重なり領域の大きさが閾値を超えた場合に、前記合成オブジェクトの表示領域と前記第２のウィンドウとが重なったとみなすことを特徴とする請求項１ないし５のいずれかに記載の合成オブジェクト表示装置。
【請求項７】
複数のオブジェクトを受信するオブジェクト受信手段と、
各前記オブジェクトのレイアウトを記憶するレイアウト記憶手段と、
各前記オブジェクトのレイアウトに基づき前記複数のオブジェクトを合成して合成オブジェクトを生成する合成オブジェクト生成手段と、
前記合成オブジェクトを第１のウィンドウに表示する合成オブジェクト表示手段と、
前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出する別ウィンドウ重なり検出手段と、
前記別ウィンドウ重なり検出手段によって検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するレイアウト決定手段と、
決定した各前記オブジェクトのレイアウトによって前記レイアウト記憶手段内の各前記オブジェクトのレイアウトを更新するレイアウト更新手段と、
を備えた合成オブジェクト表示装置。
【請求項８】
前記レイアウト決定手段は、各前記オブジェクトのレイアウトを計算により求めることを特徴とする請求項７に記載の合成オブジェクト表示装置。
【請求項９】
前記レイアウト決定手段は、各前記オブジェクトのサイズを、あらかじめ与えられた複数のサイズの中から選択することを特徴とする請求項７に記載の合成オブジェクト表示装置。
【請求項１０】
前記合成オブジェクト生成手段は、前記オブジェクトを、選択された前記サイズへ縮小または拡大することを特徴とする請求項９に記載の合成オブジェクト表示装置。
【請求項１１】
前記合成オブジェクト生成手段は、前記サイズへの縮小または拡大に適応していない場合は、前記オブジェクトの一部を前記選択されたサイズ分抽出する、あるいは、適応しているサイズまで前記オブジェクトを縮小または拡大した後で縮小または拡大後のオブジェクトの周囲を前記選択されたサイズまで補完する、ことを特徴とする請求項９に記載の合成オブジェクト表示装置。
【請求項１２】
ユーザが予め指定した各前記オブジェクトのレイアウトであるユーザレイアウトを１つ以上記憶するユーザレイアウト記憶手段をさらに備え、
前記レイアウト決定手段は、前記ユーザレイアウト記憶手段からユーザレイアウトを選択し、
前記レイアウト更新手段は、選択された前記ユーザレイアウトによって前記レイアウト記憶手段内の各前記オブジェクトのレイアウトを更新する、
ことを特徴とする請求項７に記載の合成オブジェクト表示装置。
【請求項１３】
基準レイアウトを記憶するレイアウト記憶手段をさらに備え、
前記レイアウト更新手段は、前記第２のウィンドウの重なりが解除された場合は、前記基準レイアウトによって前記レイアウト記憶手段内の各前記オブジェクトのレイアウトを更新する、
ことを特徴とする請求項７ないし１２のいずれかに記載の合成オブジェクト表示装置。
【請求項１４】
前記別ウィンドウ重なり検出手段は、前記合成オブジェクトの表示領域と、前記第２のウィンドウとの重なり領域の大きさが閾値を超えた場合に、前記合成オブジェクトの表示領域と前記第２のウィンドウとが重なったとみなすことを特徴とする請求項７ないし１３のいずれかに記載の合成オブジェクト表示装置。
【請求項１５】
複数のオブジェクトを受信し、
各前記オブジェクトのレイアウトに基づき前記複数のオブジェクトを合成して合成オブジェクトを生成し、
前記合成オブジェクトを第１のウィンドウに表示し、
前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出し、
前記検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定し、
決定した各前記オブジェクトのレイアウトによって、各前記オブジェクトのレイアウトを更新する、
合成オブジェクト表示方法。
【請求項１６】
オブジェクト合成サーバから、複数のオブジェクトが合成された合成オブジェクトを受信するステップと、
受信された前記合成オブジェクトを第１のウィンドウに表示するステップと、
前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出する別ウィンドウ重なり検出ステップと、
前記検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するステップと、
決定した各前記オブジェクトのレイアウトを前記オブジェクト合成サーバへ送信するステップと、
をコンピュータに実行させるためのプログラム。
【請求項１７】
複数のオブジェクトを受信するステップと、
各前記オブジェクトのレイアウトに基づき前記複数のオブジェクトを合成して合成オブジェクトを生成するステップと、
前記合成オブジェクトを第１のウィンドウに表示するステップと、
前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出するステップと、
前記検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するステップと、
決定した各前記オブジェクトのレイアウトによって各前記オブジェクトのレイアウトを更新するステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、合成されたオブジェクトを表示する合成オブジェクト表示装置、合成オブジェクト表示方法およびプログラムに関するものであり、例えば、画像合成サーバを利用する多地点テレビ会議システムにおける合成映像の表示装置および表示方法等に関する。
【背景技術】
【０００２】
今日のパーソナルコンピュータ（ＰＣ）等は、グラフィカルユーザインターフェースの発展も伴い、その表示部（デスクトップとも呼ばれる）において、複数のウィンドウを表示することが可能である。これら複数の表示ウィンドウは、ウィンドウ表示システムによって管理される。ユーザは、デスクトップ上にある複数のウィンドウを自由に操作しながら作業を行う。複数の表示ウィンドウのうち、ユーザ操作を受け付けるウィンドウはアクティブウィンドウと呼ばれる。また、ウィンドウには重なりという概念があり、例えば、２つのウィンドウには前後関係が存在し、後ろにあるウィンドウは前にあるウィンドウによって、その一部、あるいは全部が隠れることもある。一般にデスクトップ領域は限られているため、その領域内に重ならないように配置できるウィンドウの数は限られることになる。そこで、ユーザは、限られたデスクトップ領域を有効に使うため、ウィンドウの重なりを積極的に利用し、必要に応じてウィンドウの前後関係を操作しながら、所望のウィンドウをアクティブウィンドウとして作業を行う。
【０００３】
ウィンドウの重なりを利用することで、デスクトップ領域を有効に使うことが可能ではあるが、その重なりによって背面のウィンドウによって表示される内容が隠れる、見えないといった煩わしさは伴う。背面のウィンドウが表示する内容を確認するためには、ユーザは手動で、背面のウィンドウを最前面にもってくるか、または、別の重なりがない場所に移動させる必要がある。そこで、この手動操作手間を削減するために、ウィンドウ表示システムが自動的に背面のウィンドウの表示位置を変更する方法が考えられる。あるいは、ウィンドウ表示システムが自動的に前面に位置するウィンドウを透明化する方法も考えられる。なお、ここで、ウィンドウ表示システムが操作を行うという部分については、背面、あるいは、前面のウィンドウ自体が重なりを検知し、自らのウィンドウに対して表示位置の移動処理や、表示の透明化処理等を行うことも考えられる。
【０００４】
一方、移動や、透明化といった手法を使わずに、ウィンドウの重なりによって表示上消えたデータを自動的に表示させるための方法として、特開平９−８１１０７号公報では、ウィンドウ内に表示されているデータの開始位置を移動させるという方法が提案されている。なお、特開２００４−２３４４２６号公報では、ウィンドウの重なりによって、ウィンドウに付属するインターフェースオブジェクト（最小化ボタンや最大化ボタンやスクロールバー等の操作ボタン）が隠れることを問題とし、インターフェースオブジェクトをウィンドウ内において重なりがない位置に変更して表示させるという方法が提案されている。
【０００５】
さて、ネットワークを介してデータの送受信が可能な情報機器同士が、映像や音声を交換することで多地点テレビ会議システム（あるいは、多地点ビデオ会議システム）を構築することが可能である。
【０００６】
複数の会議端末から構成される多地点テレビ会議システムを構築する際、各会議端末同士が映像をお互いに交換する方法と、会議サーバを利用し、各会議端末は映像を会議サーバに送信し、会議サーバでは複数の会議端末から受信した映像を１つの映像に合成（ミキシング）した後に、各端末へと配信する方法がある。特に後者では、単一の会議サーバから映像を受信するだけでよいため、前者に比べてネットワーク負荷を低減することが可能である。前者は分散型多地点会議と呼ばれ、後者は集中型多地点会議と呼ばれることもある。
【０００７】
また、ここで言う会議サーバは、ＭＣＵ（Multipoint Control Unit）と呼ばれることもある。
【０００８】
各端末から受信した映像をそれぞれ映像ソースと呼ぶと、合成映像において各映像ソースを配置する位置については、会議サーバ側が自動的に決めてしまう方法と、各端末から制御する方法がある。例えば、映像ソース数が４の場合、映像ソースの配置位置については、合成映像を４分割するように配置する場合や、１つの映像に対して残りの３つをピクチャーインピクチャーのように配置する場合など、いろいろな合成パターンが存在する。各端末から制御する場合は、予め決められているパターンの中から１つ選択し、それを会議サーバへ通知することで合成映像を変更する方法がある。また、パターンを指示することで映像の配置を変更する方法以外に、映像ソースの配置位置を端末側から指定する方法も考えられる。
【０００９】
会議サーバを利用し１つの合成映像を会議サーバから端末へ送信する多地点テレビ会議システムにおいて、受信した合成映像を表示する端末がＰＣである場合には、その合成映像は一つのウィンドウに表示されることになる。
【特許文献１】特開平９−８１１０７号公報
【特許文献２】特開２００４−２３４４２６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
ウィンドウ表示システムがウィンドウの重なりを検知した際に、自動的に背面のウィンドウの表示位置を変更する方法が考えられる。但し、背面のウィンドウの位置を移動させた場合には、第三のウィンドウが隠れる、あるいは第三のウィンドウによって隠れるといった問題が発生する可能性はあり、移動時にウィンドウのサイズを縮小するなどの工夫をいれたとしてもこの問題は完全には回避できない。また、ウィンドウ表示システムが前面に位置するウィンドウを透明化する方法も考えられる。但し、前面のウィンドウを透明化、あるいは半透明化することにより、ユーザが背面のウィンドウの表示内容も確認可能となるが、２つのウィンドウの内容が重なって表示されることによる見難さが問題となる。
【００１１】
一方、ウィンドウ表示システム、あるいは、個々のウィンドウを操作するアプリケーションの機能により重なりを検知した際に、ウィンドウ内に表示されているデータの開始位置を移動させる、あるいは、ウィンドウの表示位置を変更するという手法を用いた場合においても、問題として、本来表示すべきデータが表示されなくなる可能性がある。つまり、ウィンドウ内に表示されているデータの開始位置を移動させる場合、ウィンドウからはみ出た部分の映像が表示されない可能性があり、また、ウィンドウの表示位置を変更する場合、移動先に十分な領域がないと、依然としてウィンドウ内の映像の一部が他のウィンドウによって隠されてしまう可能性がある。例えば、
・テレビ会議システムで、複数人の参加者の顔が一つのウィンドウに表示されている状態で、プレゼンテーション資料用の別アプリケーションのウィンドウが表示されると、ウィンドウの重なりによって参加者の顔が見えなくなる
・テレビ会議システムと同様に、監視カメラシステムを考えた場合、複数の地点の映像が一つのウィンドウに表示されている状態で、別の作業用ウィンドウを起動すると、重要な映像が見えなくなってしまうことがある
といった問題が発生する。
【００１２】
本発明は、以上の問題点に鑑みてなされたものであり、合成オブジェクトを表示するウィンドウの前面に不透明な別ウィンドウの重なりが発生した場合でも、合成オブジェクトが表示されるようにした、合成オブジェクト表示装置、合成オブジェクト表示方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の一態様としての合成オブジェクト表示装置は、オブジェクト合成サーバから送信される、複数のオブジェクトが合成された合成オブジェクトを受信する合成オブジェクト受信手段と、受信された前記合成オブジェクトを第１のウィンドウに表示する合成オブジェクト表示手段と、前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出する別ウィンドウ重なり検出手段と、前記別ウィンドウ重なり検出手段によって検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するレイアウト決定手段と、決定した各前記オブジェクトのレイアウトの情報を前記オブジェクト合成サーバへ送信するレイアウト送信手段と、を備える。
【００１４】
本発明の一態様としての合成オブジェクト表示装置は、複数のオブジェクトを受信するオブジェクト受信手段と、各前記オブジェクトのレイアウトを記憶したレイアウト記憶手段と、各前記オブジェクトのレイアウトに基づき前記複数のオブジェクトを合成して合成オブジェクトを生成する合成オブジェクト生成手段と、前記合成オブジェクトを第１のウィンドウに表示する合成オブジェクト表示手段と、前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出する別ウィンドウ重なり検出手段と、前記別ウィンドウ重なり検出手段によって検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するレイアウト決定手段と、決定した各前記オブジェクトのレイアウトによって前記レイアウト記憶手段内の各前記オブジェクトのレイアウトを更新するレイアウト更新手段と、を備える。
【００１５】
本発明の一態様としての合成オブジェクト表示方法は、複数のオブジェクトを受信し、各前記オブジェクトのレイアウトに基づき前記複数のオブジェクトを合成して合成オブジェクトを生成し、前記合成オブジェクトを第１のウィンドウに表示し、前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出し、前記検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定し、決定した各前記オブジェクトのレイアウトによって、各前記オブジェクトのレイアウトを更新する。
【００１６】
本発明の一態様としてのプログラムは、オブジェクト合成サーバから、複数のオブジェクトが合成された合成オブジェクトを受信するステップと、受信された前記合成オブジェクトを第１のウィンドウに表示するステップと、前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出する別ウィンドウ重なり検出ステップと、前記検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するステップと、決定した各前記オブジェクトのレイアウトを前記オブジェクト合成サーバへ送信するステップと、をコンピュータに実行させる。
【００１７】
本発明の一態様としてのプログラムは、複数のオブジェクトを受信するステップと、各前記オブジェクトのレイアウトに基づき前記複数のオブジェクトを合成して合成オブジェクトを生成するステップと、前記合成オブジェクトを第１のウィンドウに表示するステップと、前記第１のウィンドウにおける前記合成オブジェクトの表示領域に第２のウィンドウが重なった場合は、前記表示領域における重なり部分の位置を検出するステップと、前記検出された位置に基づき、前記合成オブジェクトが前記第２のウィンドウと重ならない各前記オブジェクトのレイアウトを決定するステップと、決定した各前記オブジェクトのレイアウトによって各前記オブジェクトのレイアウトを更新するステップと、をコンピュータに実行させる。
【発明の効果】
【００１８】
本発明により、合成オブジェクトを表示するウィンドウの前面に不透明な別ウィンドウの重なりが発生した場合に、その前面のウィンドウの動きに追従して合成オブジェクトが重なりの無い領域に表示されるように、合成オブジェクトの再配置を動的に行うことが可能となる。
【発明を実施するための最良の形態】
【００１９】
（第１の実施の形態）
以下、本発明の第１の実施の形態を図１から図２１を参照して説明する。  
図１に、本発明を適用した多地点テレビ会議システムのシステム構成を示す。図１では、５地点でテレビ会議を行う場合を例としている。図１のシステムは、テレビ会議端末装置１、１Ｂ、１Ｃ、１Ｄ、１Ｅと会議サーバ２とを有し、テレビ会議端末装置１、１Ｂ、１Ｃ、１Ｄ、１Ｅそれぞれは、ネットワーク３を介して会議サーバ２と接続されている。
【００２０】
本実施の形態では、テレビ会議端末装置１Ｂ、１Ｃ、１Ｄ、１Ｅについては、会議サーバ２との間のそれぞれの通信路３−１Ｂ、３−１Ｃ、３−１Ｄ、３−１Ｅを利用して、映像データを会議サーバ２に送信する機能を備えているものとする。また、会議サーバ２は、テレビ会議端末装置１、１Ｂ、１Ｃ、１Ｄ、１Ｅと同時に接続している状態において、テレビ会議端末装置１Ｂ、１Ｃ、１Ｄ、１Ｅから受信した映像を一つの映像に合成した後、合成映像をテレビ会議端末装置１へ送信する機能を備えているものとする。ここで、テレビ会議端末装置１Ｂ、１Ｃ、１Ｄ、１Ｅが送信する映像データは、それぞれのカメラ装置４Ｂ、４Ｃ、４Ｄ、４Ｅを利用して作成された映像データであってもよく、また、各テレビ会議端末装置内に保存されている映像データであってもよい。一方、テレビ会議端末装置１は、会議サーバ２との間の通信路３−１１を利用して、会議サーバ２が送信する映像データを受信する機能、および、通信路３−１２を利用して、会議サーバ２に制御信号を送信する機能を備えているものとする。なお、テレビ会議端末装置１Ｂ、１Ｃ、１Ｄ、１Ｅと同様にテレビ会議端末装置１が映像データを会議サーバ２に送信する機能を備えていてもよく、また、テレビ会議端末装置１と同様にテレビ会議端末装置１Ｂ、１Ｃ、１Ｄ、１Ｅが映像データを会議サーバ２から受信する機能を備えていてもよい。また、本実施の形態では映像データについてのみ説明を行うため、本来、多地点テレビ会議システムにとって必須の機能である音声データの送受信についての説明は省略する。
【００２１】
テレビ会議端末装置１、１Ｂ、１Ｃ、１Ｄ、１Ｅの例としては、ネットワークを介して通信を行う機能を備えたパーソナルコンピュータ（以後、ＰＣと呼ぶ）や、ＰＤＡ（Personal Digital Assistant）等であり、会議サーバ２から受信した映像データを表示する機能をそなえているとする。本実施の形態では、テレビ会議端末装置１をマイクロソフト社のＷｉｎｄｏｗｓ（登録商標）ＯＳが搭載されたノートブックタイプのＰＣとして説明する。
【００２２】
なお、本実施の形態では、会議サーバ２はテレビ会議端末装置から受信した４個の映像データから合成映像を作成する機能を有するとする。
【００２３】
図２はテレビ会議端末装置１のディスプレイユニットを開いた状態における外観斜視図である。本テレビ会議端末装置１は、コンピュータ本体１１と、ディスプレイユニット１２とから構成されている。ディスプレイユニット１２には表示パネルを構成するＬＣＤ（Liquid Crystal Display）１３が組み込まれており、そのＬＣＤ１３はディスプレイユニット１２のほぼ中央に位置している。
【００２４】
このディスプレイユニット１２の画面表示部（ＬＣＤ１３の表示画面上）にデスクトップ画面１０００が表示され、そのデスクトップ画面（以下単に表示画面と称す）１０００上に、ウィンドウ１００１、１００２、ポインタ２０００等が表示される。なお、ウィンドウ１００１、１００２自体の表示機能や、ポインタ２０００の表示機能並びに操作機能については通常のＰＣに既に実装されているためここではその説明を省略する。
【００２５】
コンピュータ本体１１は薄い箱形の筐体を有しており、その上面には上述したポインタ２０００に関する操作を行うためのポインティングデバイス１４が配置されている。さらに、コンピュータ本体１１にはネットワーク通信デバイス１５が内蔵されている。なお、ポインティングデバイス１４はコンピュータ本体１１上に配置されているとしたが、例えば、外付けのマウスを利用するＰＣにおいては、マウスがポインティングデバイス１４に相当する。ネットワーク通信デバイス１５は、ネットワーク通信を実行するデバイスであり、例えば、ネットワークへ接続するための物理的なコネクタを備え、コンピュータ本体１１内のＣＰＵ等から入力されるコマンドに応じて、データの転送等を実行し、その制御は、コンピュータ本体１１内のメモリに格納されている通信プロトコルに従って行われる。
【００２６】
次に、図３を用いて、図１あるいは図２に示したテレビ会議端末装置１において本発明に関わる内部構成要素を示す。なお、図３では、テレビ会議端末装置１と映像合成サーバ２がネットワーク接続されている様子を示しているが、本発明による機能改善を実現する上で直接影響を及ぼすことがない構成要素（例えばＣＰＵ等）の表記は省略している。図３に示す構成により表される機能は、通常のプログラミング技法を用いて生成したプログラムをコンピュータに実行させることにより実現してもよいし、ハードウェア的に実現してもよい。
【００２７】
テレビ会議端末装置１は、その構成要素として、本実施の形態の特徴となる合成映像表示部１００を備える。テレビ会議端末装置１はＰＣを想定しており、合成映像表示部１００は、ＰＣに実装されている描画機能を利用し、内部で作成した描画データを図２でも示した表示画面１０００に表示させることが可能である。また、合成映像表示部１００は、ネットワーク通信処理部７１の機能を利用し、図１で示した通信路３−１１を利用しての映像データの受信が可能であり、通信路３−１２を利用して制御データの送信が可能である。ここで、ネットワーク通信処理部７１は、通信路３−１１を利用しリアルタイム転送、あるいは、ストリーミング対応のデータの転送等が可能であり、通信プロトコルとして、例えば、ＵＤＰ／ＩＰ，ＲＴＰ等をサポートしているものとする。
【００２８】
合成映像表示部１００は、合成オブジェクト表示部２００、合成オブジェクト受信部３００、別ウィンドウ重なり検出部４００、変更レイアウト決定部５００、レイアウト制御信号生成部６００、レイアウト制御信号送信部７００とから構成されている。
【００２９】
合成オブジェクト受信部３００は、ネットワーク通信処理部７１から図３で示した通信路３−１１を利用して映像合成サーバ２から配信される映像データを取得し、それを合成オブジェクト表示部２００へ出力する。合成オブジェクト表示部２００は、ウィンドウ１００１を作成し表示する機能を備えており、合成オブジェクト受信部３００から入力された映像データから表示可能な映像データを構築し、例えば図２に示すようにウィンドウ１００１内の表示領域１０１１に映像データを「映像」として表示する。
【００３０】
別ウィンドウ重なり検出部４００は、別のウィンドウの表示位置、大きさ、透明度等を検出可能であり、その機能を利用し、ウィンドウ１００１内の表示領域１０１１に別の不透明のウィンドウが重なっているか否か、また、その重なり量を検出することが可能である。
【００３１】
変更レイアウト決定部５００は、合成オブジェクト表示部２００が表示する合成映像のレイアウト情報を管理している。変更レイアウト決定部５００はウィンドウ１００１内の表示領域１０１１を、図４(a)に示すようにXY座標を用いて左上の頂点を(0,0)、右上の頂点を(100,0)、左下の頂点を(0,100)、右下の頂点を(100,100)というように管理する。デフォルトの状態では、図５に示すように合成映像内のそれぞれの絵(20B,20C,20D,20E)がウィンドウ１００１内の表示領域１０１１を４分割するように配置されているとすると、変更レイアウト決定部５００はこの状態のレイアウトを図６に示すレイアウト情報として管理する。図６における各行がそれぞれ、１つのオブジェクト（ここでは１つの絵）のレイアウトに相当する。レイアウトはオブジェクトの寸法（大きさ）と位置を少なくとも含み、本例のようにＩＤおよび階層を含む場合もある。図６において、各レイアウトのＩＤはそれぞれの絵(20B,20C,20D,20E)を識別するものであり、ＩＤ=１が２０Ｂ、ＩＤ=２が２０Ｃ、ＩＤ=３が２０Ｄ、ＩＤ=４が２０Ｅを表している。また、x, y, h, wは、それぞれの絵の位置と大きさを示すものであり、例えば、図４(b)に示す矩形は、x = x1, y = y1, h = h1, w = w1として表現する。また、Layerは、それぞれの絵の階層位置を表すために用いており、例えば、第ｋ層に位置する場合は、Layer = kである。なお、第ｋ層の矩形領域は、第ｋ＋１層の矩形領域より上位に位置するとする。なお、変更レイアウト決定部５００は初期化時等においては、デフォルトのレイアウト情報（図６）をレイアウト制御信号生成部６００へ出力する。なお、階層の制御を行う場合にはLayerというパラメータを用いる必要があるが、本実施の形態においてはこの値を積極的には利用していない。
【００３２】
レイアウト制御信号生成部６００は、変更レイアウト決定部５００からレイアウト情報が入力されると、レイアウト情報を映像合成サーバ２へ伝えるためのレイアウト制御信号を構築する。図７にレイアウト情報が図６の場合のレイアウト制御信号の例を示す。図７では、それぞれのブロックを８ビットで構成しており、ビット列を１０進数で表現している。レイアウト制御信号生成部６００は、レイアウト制御信号を作成すると、作成したレイアウト制御信号をレイアウト制御信号送信部７００へ出力する。
【００３３】
レイアウト制御信号送信部７００は、レイアウト制御信号生成部６００からレイアウト制御信号が入力されると、それを映像合成サーバ２へ送信するレイアウト制御パケットのペイロード部分とし、映像合成サーバ２へ送信するために必要となるネットワークのあて先アドレス情報などの付加情報と共にネットワーク通信処理部７１へ出力する。ネットワーク通信処理部７１は、レイアウト制御信号送信部７００から付加情報が付されたレイアウト制御パケットが入力されると、通信路３−１２を介してこのレイアウト制御パケットを映像合成サーバ２へ送信する。
【００３４】
また、図３を用いて、映像合成サーバ２において本発明に関わる内部構成要素を示す。映像合成サーバ２はオブジェクト合成サーバに対応する。なお、図３では、本発明による機能改善を実現する上で直接影響を及ぼすことがない構成要素（例えばＣＰＵ等）の表記は省略している。
【００３５】
映像合成サーバ２は、構成要素としてオブジェクト受信処理部２０、オブジェクト合成処理部９００、合成オブジェクト配置制御部８００、ネットワーク通信処理部７２を備える。合成オブジェクト配置制御部８００は、ネットワーク通信処理部７２の機能を利用し、図１で示した通信路３−１１を利用しての映像データの送信が可能であり、図３で示した通信路３−１２を利用して制御データの受信が可能である。ここで、ネットワーク通信処理部７２は、通信路３−１１を利用しリアルタイム転送、あるいは、ストリーミング対応のデータの転送等が可能であり、通信プロトコルとして、例えば、ＵＤＰ／ＩＰ，ＲＴＰ等をサポートしているものとする。
【００３６】
オブジェクト受信処理部２０は、図３で示した４台のオブジェクト送信装置１，２，３，４から通信路２−１、２−２、２−３、２−４を介して配信されるオブジェクトを受信し、それらをオブジェクト合成処理部９００へ出力する。ここで、図３のオブジェクト送信装置２Ｂ，２Ｃ，２Ｄ，２Ｅは、図１のテレビ会議端末装置１Ｂ、１Ｃ、１Ｄ、１Ｅ、また、図３の通信路２−１、２−２、２−３、２−４は、図１の通信路３−１Ｂ、３−１Ｃ、３−１Ｄ、３−１Ｅ、また、それぞれの装置から配信されるオブジェクトは、映像データに相当するとする。ここで、４つの映像データを、それぞれ２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅと呼ぶことにする。
【００３７】
オブジェクト合成処理部９００は、オブジェクト受信処理部２０から映像データが入力されると、それらを合成し、合成映像６０Ａを作成するものとする。この合成映像は合成オブジェクトに相当する。すなわち、オブジェクト合成処理部９００はオブジェクト受信処理部２０から入力されるオブジェクトを合成して合成オブジェクトを作成する。オブジェクト合成処理部９００は、合成映像６０Ａを作成するにあたり、各映像データの画像サイズや配置位置や階層位置を調整できる機能を備える。オブジェクト合成処理部９００は、図１７に示すように横方向、縦方向を１００という値に正規化したＸＹ座標を利用して合成映像６０Ａを管理し、各映像データの画像サイズや配置位置や階層位置を図１８に示すようなレイアウト管理テーブルで管理を行う。管理テーブルにおけるＩＤ番号は４つの映像データ２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅを識別するものであり、各映像データの配置位置(x,y)と大きさ（w,h）と階層(Layer)が記載されている。オブジェクト合成処理部９００はこのレイアウト管理テーブルを利用し合成映像６０Ａにおける各映像データの配置位置等を決定し、合成映像６０Ａを作成するが、その際に、必要に応じて各映像の拡大、縮小、あるいは、切り取り、あるいは、周囲の補完、または、階層制御等を行うことが可能であるとする。オブジェクト合成処理部９００は合成映像６０Ａを合成オブジェクト配置制御部８００へ出力する。なお、本実施の形態においては、オブジェクト合成処理部９００は定期的にレイアウト管理テーブルの内容を確認し、それに応じた合成映像６０Ａを作成し合成オブジェクト配置制御部８００へ出力するとする。
【００３８】
一方、合成オブジェクト配置制御部８００は、ネットワーク通信処理部７２から図３で示した通信路３−１２を利用してテレビ会議端末装置１から配信されるレイアウト制御パケットを取得し、レイアウト制御信号を解析した後、オブジェクト合成処理部９００が利用するレイアウト管理テーブルの内容を解析結果により更新する。また、合成オブジェクト配置制御部８００は、オブジェクト合成処理部９００から合成映像６０Ａが入力されると、ネットワーク通信処理部７２を利用し、通信路３−１１を介してテレビ会議端末装置１へ合成映像を配信する。
【００３９】
図１９にオブジェクト合成処理部９００における処理の一例として、レイアウト管理テーブルが図１８の場合に映像データ２０Ｂ、２０Ｃ、２０Ｄ、２０Ｅから合成映像６０Ａを作成する様子を示す。ここで、映像データ２０ＢがＩＤ番号１、映像データ２０ＣがＩＤ番号２、映像データ２０ＤがＩＤ番号３、映像データ２０ＥがＩＤ番号４に対応しているものとする。図１９においてオブジェクト合成処理部９００はサイズ変更回路３１，３２，３３，３４とサイズ変換された各映像を合成する合成回路４０とから構成されているとしており、例えば図２０に示すような各種のサイズに映像データを変換した後に、それらを合成する。
【００４０】
次に、図５に示す不透明な別ウィンドウ１００２がユーザ操作により合成映像を表示しているウィンドウ１００１の表示領域１０１１上に移動された場合を考える。
【００４１】
別ウィンドウ重なり検出部４００が別のウィンドウによる重なりを検知すると、その重なり量を変更レイアウト決定部５００へ出力する。重なり量は、XY座標を用いて重なり位置として表現されるものとする（例えば、「重なり位置：X > 50」、「重なり位置：X > 50 and Y > 50」等）。
【００４２】
変更レイアウト決定部５００は、重なり量が入力されるとＸＹ座標で表現される表示領域１０１１上において別のウィンドウによる重なりが無い領域を計算し、また、合成映像内のそれぞれの絵(20B,20C,20D,20E)が重なりの無い領域に配置されるように処理を行う。この処理結果、変更レイアウト決定部５００はレイアウト情報を更新し、更新したレイアウト情報をレイアウト制御信号生成部６００へ出力する。
【００４３】
図８(a)に示すように、別ウィンドウ１００２がユーザ操作により合成映像を表示しているウィンドウ１００１の表示領域１０１１上に移動され、別ウィンドウ重なり検出部４００が別のウィンドウによる重なりを検知した場合を考える。別ウィンドウ重なり検出部４００は図８(b)に示す重なり量１２００を計算する。図８(b)の場合、重なり位置「X > 25 and Y > 25」となる。変更レイアウト決定部５００はこの領域を避けるようにレイアウト情報を、例えば、図９に示すように変更する。更新したレイアウト情報はレイアウト制御信号生成部６００へ出力され、図１０に示すレイアウト制御信号が作成され、最終的に通信路３−１２を介して映像合成サーバ２の合成オブジェクト配置制御部８００へと伝えられる。映像合成サーバ２内にはおいて、図１０に示すレイアウト制御信号を認識すると、合成オブジェクト配置制御部８００、オブジェクト合成処理部９００の処理により合成映像の配置が変更され、合成映像が通信路３−１１を介してテレビ会議端末装置１へと送信される。図８(a)は、別ウィンドウ１００２が重なったことを検知した後に、上記の処理の結果、ウィンドウ１００１内に表示される合成映像のレイアウトが変化した様子を示している。
【００４４】
同様に、図１１、図１２、図１３に、重なり位置「X > 66 and Y > 50」となった場合のレイアウトが変更される様子の一例を示し、また、図１４、図１５、図１６に、重なり位置「X > 33 and Y > 35」となった場合のレイアウトが変更される様子の一例を示す。なお、ここではレイアウト情報を作成する場合に、各映像データのサイズを図２０に示す５パターンから設定するようにしている。なお、各映像データのサイズは、映像合成サーバ２の合成オブジェクト配置制御部８００、オブジェクト合成処理部９００等で解析され、合成処理が行われるが、必ずしも、映像合成サーバ２内で指定されたサイズに変化できるとは限らない。例えば、図２１は、オブジェクト合成処理部９００が画像アスペクト比を一定に保ったまま縮小する際にオリジナルのサイズ（図２１(e)）から1/2のサイズ（図２１(c)）のみに縮小できるものとする。その場合、1/4のサイズ（図２１(a)）や1/3のサイズ（図２１(b)）が指定された場合には、1/2のサイズから周囲を削った映像データを利用し、一方、3/4のサイズ（図２１(d)）が指定された場合には、1/2のサイズの周囲を補間するようにしても良い。
【００４５】
なお、本実施の形態では、説明を簡略化する意味もあり、映像の合成数は４としたが、本実施の形態を拡張することで合成数が８や１６といった場合にも対応可能である。
【００４６】
以上、本発明の第１の実施の形態として、テレビ会議端末装置１および会議サーバ２の詳細構成と動作について示した。本発明により、合成オブジェクトを表示するウィンドウの前面に別ウィンドウの重なりが発生した場合に、その前面のウィンドウの動きに追従して合成オブジェクトが重なりの無い領域に表示されるように、合成オブジェクトの再配置を動的に行うことが可能となる。
【００４７】
例えば、テレビ会議システムで、複数人の参加者の顔が一つのウィンドウに表示されている状態で、プレゼンテーション資料用の別アプリケーションのウィンドウが表示されると、ウィンドウの重なりによって参加者の顔が見えなくなるという現象が発生するが、本発明により、参加者の顔が表示されているウィンドウの前面に別ウィンドウの重なりが発生した場合に、その前面のウィンドウの動きに追従して合成レイアウトを変更し、参加者の顔が重なりの無い領域に表示される。
【００４８】
（第２の実施の形態）
以下、本発明の第２の実施の形態を図２２から図２４、および、図２と、図５から図７、図１７から図１９を参照して説明する。  
図２２に、本発明を適用した合成オブジェクト表示装置４の内部構成を示す。合成オブジェクト表示装置４の例としては、ネットワークを介して通信を行う機能を備えたパーソナルコンピュータ（以後、ＰＣと呼ぶ）や、ＰＤＡ（Personal Digital Assistant）等である。本実施の形態では、テレビ会議端末装置１をマイクロソフト社のＷｉｎｄｏｗｓＯＳが搭載されたノートブックタイプのＰＣとして説明する。
【００４９】
合成オブジェクト表示装置４は、その構成要素として、本実施の形態の特徴となる合成映像表示部１００を備える。合成映像表示部１００は、ＰＣに実装されている描画機能を利用し、内部で作成した描画データを表示画面１０００に表示させることが可能である。また、合成映像表示部１００は、オブジェクト受信処理部２０の機能を利用し、オブジェクト送信装置２Ｂ，２Ｃ，２Ｄ，２Ｅからオブジェクトを受信することが可能である。
【００５０】
以下、本実施の形態では、オブジェクトを映像データとして説明する。また、合成オブジェクト表示装置４とオブジェクト送信装置２Ｂ，２Ｃ，２Ｄ，２Ｅとは図２３に示すように、ネットワークで接続されているとする。
【００５１】
合成映像表示部１００は、合成オブジェクト表示部２００、合成オブジェクト受信部３００、別ウィンドウ重なり検出部４００、変更レイアウト決定部５００、レイアウト制御信号生成部６００、レイアウト制御信号送信部７００、合成オブジェクト配置制御部８００’とから構成されている。
【００５２】
合成オブジェクト配置制御部８００’は、オブジェクト受信処理部２０から映像データが入力されると、それらから合成映像を作成し、作成した合成映像に関する映像データを合成オブジェクト受信部３００へ出力する。合成オブジェクト受信部３００は、合成オブジェクト配置制御部８００’から映像データが入力されると、それを合成オブジェクト表示部２００へ出力する。なお、合成オブジェクト受信部３００が定期的に合成オブジェクト配置制御部８００’から映像データを取得するように動作するものであっても良い。
【００５３】
合成オブジェクト表示部２００は、ウィンドウ１００１を作成し表示する機能を備えており、合成オブジェクト受信部３００から入力された映像データから表示可能な映像データを構築し、例えば図２に示すようにウィンドウ１００１内の表示領域１０１１に映像データを「映像」として表示する。
【００５４】
別ウィンドウ重なり検出部４００は、表示画面１０００に表示されているウィンドウ１００１とは異なる別のウィンドウの１００２の表示位置、大きさ、透明度等を検出可能であり、その機能を利用し、ウィンドウ１００１内の表示領域１０１１に別の不透明のウィンドウが重なっているか否か、また、その重なり量を検出することが可能である
変更レイアウト決定部５００は、第１の実施の形態で説明した変更レイアウト決定部５００の動作と同じとし、内部に図６に示すようなレイアウト情報を管理する。
【００５５】
レイアウト制御信号生成部６００は、第１の実施の形態で説明したレイアウト制御信号生成部６００の動作と同じとする。
【００５６】
レイアウト制御信号送信部７００は、レイアウト制御信号生成部６００からレイアウト制御信号が入力されると、それを合成オブジェクト配置制御部８００’へ出力する。
【００５７】
合成オブジェクト配置制御部８００’は、第１の実施の形態で説明した映像合成サーバ２内におけるオブジェクト合成処理部９００と合成オブジェクト配置制御部８００の２つの機能を有する。
【００５８】
合成オブジェクト配置制御部８００’は、オブジェクト受信処理部２０から４つの映像データ２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅが入力されると、それらを合成し、合成映像６０Ａを作成するものとする。合成オブジェクト配置制御部８００’は、合成映像６０Ａを作成するにあたり、各映像データの画像サイズや配置位置や階層位置を調整できる機能を備える。合成オブジェクト配置制御部８００’は、図１７に示すように横方向、縦方向を１００という値に正規化したＸＹ座標を利用して合成映像６０Ａを管理し、各映像データの画像サイズや配置位置や階層位置を図１８に示すようなレイアウト管理テーブルで管理を行う。レイアウト管理テーブルにおけるＩＤ番号は４つの映像データ２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅを識別するものであり、各映像データの配置位置(x,y)と大きさ（w,h）と階層(Layer)が記載されている。合成オブジェクト配置制御部８００’はこのレイアウト管理テーブルを利用し合成映像６０Ａにおける各映像データの配置位置等を決定し、合成映像６０Ａを作成するが、その際に、必要に応じて各映像の拡大、縮小、あるいは、切り取り、あるいは、周囲の補完、または、階層制御等を行うことが可能であるとする。
【００５９】
また、合成オブジェクト配置制御部８００’は、レイアウト制御信号送信部７００からレイアウト制御信号が入力されると、レイアウト制御信号を解析した後、レイアウト管理テーブルの内容を解析結果により更新し、更にその結果を利用して、合成映像６０Ａにおける各映像データの配置位置等を変更する。
【００６０】
なお、先に、「レイアウト制御信号生成部６００は、第１の実施の形態で説明したレイアウト制御信号生成部６００の動作と同じとする」としたが、本実施の形態においては、レイアウト制御信号生成部６００は、第１の実施の形態で示したように図７に示したようなレイアウト制御信号を作成し、レイアウト制御信号送信部７００を介して合成オブジェクト配置制御部８００’に出力する代わりに、レイアウトが変更したという旨のイベント通知を合成オブジェクト配置制御部８００’に行うだけでも良い。この場合、合成オブジェクト配置制御部８００’は、イベントが通知されると変更レイアウト決定部５００の管理するレイアウト情報を参照するものとし、この際、レイアウト制御信号生成部６００やレイアウト制御信号送信部７００がその処理の仲介を行うものであっても良い。なお、更に、この場合、合成オブジェクト配置制御部８００’は内部にレイアウト管理テーブルを有さずに変更レイアウト決定部５００の管理するレイアウト情報をそのままレイアウト管理テーブルとして利用しても良い。
【００６１】
図１９に合成オブジェクト配置制御部８００’における処理の一例として、レイアウト管理テーブルが図１８の場合に映像データ２０Ｂ、２０Ｃ、２０Ｄ、２０Ｅから合成映像６０Ａを作成する様子を示す。この処理は、第１の実施の形態で説明したとおりである。
【００６２】
次に、図５に示す別ウィンドウ１００２が、合成映像を表示しているウィンドウ１００１上にユーザ操作により移動された場合を考える。この場合は、第１の実施の形態で説明したものと同様の処理が実行されることになる。
【００６３】
なお、本実施の形態では、オブジェクトを映像データとして説明したが、必ずしもそれに限るものではない。例えば、各オブジェクト送信装置から送信されるデータが、文字列の集合である場合を考える。オブジェクト送信装置２Ｂ，２Ｃ，２Ｄ，２Ｅが送信する文字列の集合をそれぞれ集合Ｂ，集合Ｃ，集合Ｄ，集合Ｅとし、合成映像表示部１００内の各構成要素は、上記で説明した映像データの部分を、文字列の集合、あるいは、文字列の集合を表示する領域と置き換えての処理を実行する構成要素であるとする。例えば、合成オブジェクト配置制御部８００’は、オブジェクト受信処理部２０から４つの文字列の集合である集合Ｂ，集合Ｃ，集合Ｄ，集合Ｅが入力されると、それらを合成し、合成文字列集合を作成するものとする。この際、レイアウト管理テーブルは、それぞれの文字列集合を表示する位置、大きさの管理を行う。図２４に、各文字列集合から合成文字列を作成し、合成文字列を表示している様子の一例を示す。図２４では、レイアウト情報が図６に示す場合を想定しており、それぞれの文字列が、レイアウト情報により指定される位置に表示されている様子を示している。
【００６４】
また、本実施の形態では、合成オブジェクト表示装置４とオブジェクト送信装置２Ｂ，２Ｃ，２Ｄ，２Ｅとは図２３に示すように、ネットワークで接続されているとして説明したが、オブジェクト送信装置２Ｂ，２Ｃ，２Ｄ，２Ｅは合成オブジェクト表示装置４と異なる機器ではなく、合成オブジェクト表示装置４内に存在するモジュールであってもよい。その場合、例えば、オブジェクト受信処理部２０とオブジェクト送信装置は合成オブジェクト表示装置４内で内部バス（ＰＣＩバス等）により接続されているとする。
【００６５】
なお、図２２、図２４に示す構成により表される機能は、通常のプログラミング技法を用いて生成したプログラムをコンピュータに実行させることにより実現してもよいし、ハードウェア的に実現してもよい。
【００６６】
以上、本発明の第２の実施の形態として、合成オブジェクト表示装置４の詳細構成と動作について示した。第２の実施の形態では、第１の実施の形態で示した映像合成サーバに配置した映像合成の機能をローカルに備えた場合の特殊な例とも言える。第１の実施の形態と同様に合成オブジェクトを表示するウィンドウの前面に別ウィンドウの重なりが発生した場合に、その前面のウィンドウの動きに追従して合成オブジェクトが重なりの無い領域に表示されるように、合成オブジェクトの再配置を動的に行うことが可能となる。
【００６７】
例えば、監視カメラシステムを考えた場合、あるＰＣにおいて、複数の地点の映像を受信し、それらを合成した後に一つのウィンドウに表示している場合に、別の作業用ウィンドウを起動すると、重要な映像が見えなくなってしまうことがあるが、本発明により前面に重なったウィンドウの動きに追従して合成レイアウトを変更し、各監視映像が重なりの無い領域に表示されることになる。
【００６８】
また、映像ソースはネットワークを介して受信するものに限らず、内部に保持する映像データでもよく、更に、合成する対象は映像ソースに限らず、例えば、文字列等であっても、前面に重なったウィンドウの動きに追従して合成レイアウトを変更し、合成する対象が、重なりの無い領域に表示されることになる。
【００６９】
（第３の実施の形態）
以下、本発明の第３の実施の形態を図２５から図３２を参照して説明する。
【００７０】
本実施の形態では、第１の実施の形態、および、第2の実施の形態で説明した別ウィンドウ重なり検出部４００が別のウィンドウの重なりを検知する方法と、変更レイアウト決定部５００が重なり量から領域を避けるようにレイアウト情報を計算し決定する方法について具体例を示す。
【００７１】
別ウィンドウ重なり検出部４００は、自分のウィンドウ１００１に対し、上面に不透明の別ウィンドウ１００２が重なっていることを検出する機能を備える。例えば、ＯＳとしてマイクロソフト社のＷｉｎｄｏｗｓＯＳが搭載されている場合には、システムが提供するWin32 APIの関数を利用することで、あるウィンドウに対し、そのウィンドウの上面（前面）に不透明の別のウィンドウが重なっていることを検知する手法は自明である。その別ウィンドウ１００２の位置とサイズは、例えば、RECT構造体と呼ばれる左上の座標(top, left)と、右下の座標(bottom, right)との４つの情報が含まれた情報をシステムからハンドル情報を利用して取得することで認識可能となる。ここで、別ウィンドウ重なり検出部４００は、別ウィンドウ１００２の重なりが、自ウィンドウ１００１内の表示領域１０１１上に重なりがあるかどうかを確認し、表示領域１０１１の領域内に重なりがある場合に重なりを検知するとする。なお、別ウィンドウ重なり検出部４００は、自ウィンドウ１００１内に重なりがあっても、表示領域１０１１上に重なりがない別ウィンドウは重なっていないと判断する。
【００７２】
別ウィンドウ重なり検出部４００は、別ウィンドウによる重なりを検知した場合、その別ウィンドウのRECT構造体の情報を解析することで、表示領域１０１１を示すＸＹ座標を利用して、重なり量を表現することが可能である。例えば、図２５(a)に示すように別ウィンドウ１００２が表示領域１０１１のX > 50の領域に重なる場合には、その重なり量１２００を「重なり位置：X > 50」と表現する。また、図２５(b)に示すように別ウィンドウ１００２が表示領域１０１１のX > 50、および、Y > 50の領域に重なる場合には、その重なり量１２００を「重なり位置：X > 50 and Y > 50」と表現する。
【００７３】
なお、重なっているウィンドウは一つとは限らず、別ウィンドウ重なり検出部４００は、複数の別ウィンドウが重なっていると判断することもある。例えば、図２６に示すように別ウィンドウ１００２と１００３の２つが重なっている場合を考える。この場合、別ウィンドウ１００２による重なり量は「重なり位置：X > 50」であり、別ウィンドウ１００３による重なり量は、「重なり位置：X < 60 and Ｙ> 50」であることから、そららを合わせた全重なり量は、「重なり位置：(X > 50) or (X < 60 and Ｙ> 50)」となる。また、図２７の場合には、図２６に加えて別ウィンドウ１００４も重なっている。この場合の全重なり量は、「重なり位置：(X > 50) or (X < 60 and Ｙ> 50) or (X > 25 and Y > 25)」となる。
【００７４】
また、図２８のように別ウィンドウ１００２が重なる場合もあり、この場合の重なり量は、「重なり位置：X > 20 and X < 75 and Y > 25 and Y < 75)」となる。
【００７５】
一方、変更レイアウト決定部５００は、前述の重なり量に関する情報が別ウィンドウ重なり検出部４００から入力されると、重なりが無い領域を計算し、レイアウトの配置を決定する。以下、変更レイアウト決定部５００が行う、合成映像内のそれぞれの映像(20B,20C,20D,20E)を重なりの無い領域に配置する処理について説明する。
【００７６】
例えば、図２９は４つの映像ソース２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅからなる合成映像を示している。変更レイアウト決定部５００が、表示領域１０１１において、縦１００、横１００で表すＸＹ座標において、図３０(a)に示すように、重なりの無い領域として、横方向５０、縦方向５０以上のまとまった重なりの無い領域１１００を検出可能であれば、変更レイアウト決定部５００は、図２９の映像ソース２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅの配置関係の位置を保ったまま全てを縮小するようにレイアウト情報を決定する。図３０(b)は、図２９の配置関係を保ったまま縦５０、横５０のサイズまで縮小した場合を示している。
【００７７】
一方、横方向５０、縦方向５０以上のまとまった領域を検出不可能な場合は、重なりの無い領域として、横方向２５、縦方向２５の領域を４つ検出することが可能か確認する。図３１(a)に示すように、横方向２５、縦方向２５の４つの重なりの無い領域（１１０１、１１０２、１１０３、１１０４）を検出可能であれば、変更レイアウト決定部５００は、それら４つの領域に映像ソース２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅが配置されるようにレイアウト情報を決定する。図３１(b)は、それぞれが縦２５、横２５である４つの領域に映像ソースを縮小して配置した場合を示している。例えば、ＸＹ座標において、左上(x=0, y =0)からy=0に固定して右方向に順に領域を検索していき、縦２５、横２５の領域が確保できるのであれば確保し、その領域に映像ソース２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅを順に割り当てる。y=0に固定して検索を行った結果、３つ以下の領域しか確保できなかった場合は、yの値を増やして（例えばy=25にして）同様に右方向に検索をしていく。y=0に固定して検索を行った結果、もし領域が１つも確保できなければ、yの値を増やして（例えばy=1にして）同様に右方向に順に領域を検索していく。
【００７８】
なお、横方向２５、縦方向２５の固定サイズの領域を４つ検出する場合に比べて、領域検出のアルゴリズムは複雑になるが、横方向５０、縦方向５０以上のまとまった領域を検出不可能な場合に、重なりの無い領域として、横方向２５以上、縦方向２５以上の領域を４つ検出する方法もあり得る。図３２(a),(b)に、横方向２５以上、縦方向２５以上の領域を４つ検出し、それら４つの領域に映像ソースを縮小して配置した場合を示す。
【００７９】
なお、横方向５０、縦方向５０以上のまとまった領域、あるいは、横方向２５、縦方向２５の領域を重なりの無い４つの領域として検出できなかった場合には、レイアウトの変更を行わずに、その直前のレイアウト情報を保持したままとしても良い。このようにすることで、不要な画面の変更、レイアウト変更を抑えることができる。
【００８０】
また、別ウィンドウ重なり検出部４００が検出した重なり量が小さい場合、例えば、表示領域１０１１の面積に対して、重なり量が１０％以下の場合は、レイアウト変更を行わないようにしてもよい。例えば、表示領域１０１１に図２９の状態で合成映像が表示されている場合に、別ウィンドウ１００２の重なりが５％程度であるなら、変更レイアウト決定部５００はレイアウト変更処理を行わないようにする。このようにすることで、ユーザによっては主観的に不要と感じるような画面の変更、レイアウト変更を抑えることができる。
【００８１】
なお、本実施の形態では、重なり量からレイアウト情報を決定するアルゴリズムの一例を示したが、このアルゴリズムに限るものではなく、これ以外のアルゴリズムであっても良い。
【００８２】
以上、本発明の第３の実施の形態として、前面に重なったウィンドウの動きに追従して合成レイアウトを変更し、合成する対象が、重なりの無い領域に表示されるアルゴリズムの具体例を示した。また、第１から第２の実施の形態で説明した効果に加えて、本発明の第３の実施で説明した手法により、ユーザによっては主観的に不要と感じる画面の変更、レイアウト変更を抑えることも可能となる。
【００８３】
（第４の実施の形態）
以下、本発明の第４の実施の形態を図３３、図３４を参照して説明する。
【００８４】
本実施の形態では、第１の実施の形態で説明したテレビ会議端末装置１における合成映像表示部１００、あるいは、第２の実施の形態で説明した合成オブジェクト表示装置４における合成映像表示部１００、の構成要素である変更レイアウト決定部５００に対して、図３３に示すように、配置レイアウト記憶部５０１が付随した場合の動作等について説明を行う。
【００８５】
変更レイアウト決定部５００は、別ウィンドウ重なり検出部４００が別ウィンドウの重なりを検出していない状態において、その際のレイアウト情報を配置レイアウト記憶部５０１に記憶できるものとする。
【００８６】
第３の実施の形態では、４つの映像ソース２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅがデフォルトでは図３４(a)の配置のように合成される場合のみを考えたが、本実施の形態では、別ウィンドウの重なりがない状態において、ユーザ操作により、配置レイアウトを図３４(b)に示すように自由にレイアウト変更をできるものとする。
【００８７】
例えば、第３の実施の形態では、別ウィンドウによる重なりを検出した場合に、レイアウトを自動的に変更する方法を示したが、本実施の形態のように配置レイアウト記憶部５０１を備えることで、別ウィンドウによる重なりが無くなった場合に、配置レイアウト記憶部５０１に記憶しているレイアウト情報を元に、ユーザが予め自由に設定していた画面レイアウトに戻すことが可能となる。
【００８８】
また、配置レイアウト記憶部５０１に２つ以上のレイアウト情報を記憶することも可能であり、例えば、記憶する一つは、重なりの無い状態でユーザが自由に設定したレイアウト情報とし、もう一つは、ユーザが指定（選択）した好みのレイアウト情報を記憶できるような仕組みとしても良い。この場合、例えば、重なりを検知した場合に、第3の実施の形態で示したアルゴリズム等に従ってレイアウトを変更するだけではなく、ある一定量の重なりを検知した場合に、ユーザが指定した好みのレイアウトに変更するといったことも可能となる。
【００８９】
以上、本発明の第４の実施の形態として、レイアウト情報を記憶する場合について示した。本発明により、例えば、ユーザが別ウィンドウによる重なりが無い状態で、合成レイアウトを自由に変更できる場合において、重なりが無くなった場合に、重なりが無かった状態のレイアウトに確実に戻すことも可能になる。
【図面の簡単な説明】
【００９０】
【図１】多地点テレビ会議システムの概略図。
【図２】テレビ会議端末装置、あるいは、合成オブジェクト表示装置の外観を示す図。
【図３】本発明の第１の実施の形態に係るテレビ会議端末装置の構成、映像合成サーバ装置の構成を示すブロック図。
【図４】本発明の第１の実施の形態に係るウィンドウ内の表示領域の座標軸を説明する図。
【図５】本発明の第１の実施の形態に係る表示画面例１を示す図。
【図６】本発明の第１の実施の形態に係るレイアウト情報例１を示す図。
【図７】本発明の第１の実施の形態に係るレイアウト制御信号例１を示す図。
【図８】本発明の第１の実施の形態に係る表示画面例２を示す図。
【図９】本発明の第１の実施の形態に係るレイアウト情報例２を示す図。
【図１０】本発明の第１の実施の形態に係るレイアウト制御信号例２を示す図。
【図１１】本発明の第１の実施の形態に係る表示画面例３を示す図。
【図１２】本発明の第１の実施の形態に係るレイアウト情報例３を示す図。
【図１３】本発明の第１の実施の形態に係るレイアウト制御信号例３を示す図。
【図１４】本発明の第１の実施の形態に係る表示画面例４を示す図。
【図１５】本発明の第１の実施の形態に係るレイアウト情報例４を示す図。
【図１６】本発明の第１の実施の形態に係るレイアウト制御信号例４を示す図。
【図１７】本発明の第１の実施の形態に係る会議サーバにおいて合成映像の座標軸を説明する図。
【図１８】本発明の第１の実施の形態に係るレイアウト管理テーブル例を示す図。
【図１９】本発明の第１の実施の形態に係る４つの映像ソースから合成映像を作成する処理例を示す図。
【図２０】本発明の第１の実施の形態に係るサイズ変換後の映像データの例を説明するための第１の図。
【図２１】本発明の第１の実施の形態に係るサイズ変換後の映像データの例を説明するための第２の図。
【図２２】本発明の第２の実施の形態に係る合成オブジェクト表示装置の構成を示すブロック図。
【図２３】本発明の第２の実施の形態に係るネットワーク接続された合成オブジェクト表示装置の様子を示す図。
【図２４】本発明の第２の実施の形態に係る合成オブジェクト表示装置の動作の一例を示す図。
【図２５】本発明の第３の実施の形態に係るウィンドウの重なりの様子を示す第１の図。
【図２６】本発明の第３の実施の形態に係るウィンドウの重なりの様子を示す第２の図。
【図２７】本発明の第３の実施の形態に係るウィンドウの重なりの様子を示す第３の図。
【図２８】本発明の第３の実施の形態に係るウィンドウの重なりの様子を示す第４の図。
【図２９】本発明の第３の実施の形態に係る４つの映像ソースから作成された合成映像の一例を示す図。
【図３０】本発明の第３の実施の形態に係る合成映像のレイアウトが自動変更された様子を説明するための第１の図。
【図３１】本発明の第３の実施の形態に係る合成映像のレイアウトが自動変更された様子を説明するための第２の図。
【図３２】本発明の第３の実施の形態に係る合成映像のレイアウトが自動変更された様子を説明するための第３の図。
【図３３】本発明の第４の実施の形態に係る追加構成を示す図。
【図３４】本発明の第４の実施の形態に係る、ユーザ操作によりレイアウトが変更された様子を説明するための図。
【符号の説明】
【００９１】
１、１B、１C、１D、１D、１E  ‥‥  テレビ会議端末
２  ‥‥  映像合成サーバ
２Ｂ、２Ｃ、２Ｄ、２Ｅ  ‥‥  オブジェクト送信装置
２−１、２−２、２−３、２−４  ‥‥  通信路
３  ‥‥  ネットワーク
３−１１、３−１２  ‥‥  通信路
３−１B、３−１C、３−１D、３−１E  ‥‥  通信路
３−２B、３−２C、３−２D、３−２E  ‥‥  通信路
４  ‥‥  合成オブジェクト表示装置
４Ｂ、４Ｃ、４Ｄ、４Ｅ  ‥‥  カメラ装置
１１  ‥‥  コンピュータ本体
１２  ‥‥  ディスプレイユニット
１３  ‥‥  LCD
１４  ‥‥  ポインティングデバイス
１５  ‥‥  ネットワーク通信デバイス
２０  ‥‥  オブジェクト受信処理部
２０B、２０C、２０D、２０E  ‥‥  映像ソース
３１、３２、３３、３４  ‥‥  サイズ変更回路
４０  ‥‥  合成回路
６０A  ‥‥  合成映像
７１、７２  ‥‥  ネットワーク通信処理部
１００  ‥‥  合成映像表示部
２００  ‥‥  合成オブジェクト表示部
３００  ‥‥  合成オブジェクト受信部
４００  ‥‥  別ウィンドウ重なり検出部
５００  ‥‥  変更レイアウト決定部
５０１  ‥‥  配置レイアウト記憶部
６００  ‥‥  レイアウト制御信号生成部
７００  ‥‥  レイアウト制御信号送信部
８００  ‥‥  合成オブジェクト配置制御部
８００’  ‥‥  合成オブジェクト配置制御部（オブジェクト合成処理部を含む）
９００  ‥‥  オブジェクト合成処理部
１０００  ‥‥  デスクトップ画面、表示画面
１００１、１００２、１００３、１００４  ‥‥  ウィンドウ
１０１１  ‥‥  表示領域
１１００、１１０１、１１０２、１１０３、１１０４  ‥‥  重なりの無い領域
１２００  ‥‥  重なり量
２０００  ‥‥  ポインタ
【図１】
2007065356.tif 000003
【図２】
2007065356.tif 000004
【図３】
2007065356.tif 000005
【図４】
2007065356.tif 000006
【図５】
2007065356.tif 000007
【図６】
2007065356.tif 000008
【図７】
2007065356.tif 000009
【図８】
2007065356.tif 000010
【図９】
2007065356.tif 000011
【図１０】
2007065356.tif 000012
【図１１】
2007065356.tif 000013
【図１２】
2007065356.tif 000014
【図１３】
2007065356.tif 000015
【図１４】
2007065356.tif 000016
【図１５】
2007065356.tif 000017
【図１６】
2007065356.tif 000018
【図１７】
2007065356.tif 000019
【図１８】
2007065356.tif 000020
【図１９】
2007065356.tif 000021
【図２０】
2007065356.tif 000022
【図２１】
2007065356.tif 000023
【図２２】
2007065356.tif 000024
【図２３】
2007065356.tif 000025
【図２４】
2007065356.tif 000026
【図２５】
2007065356.tif 000027
【図２６】
2007065356.tif 000028
【図２７】
2007065356.tif 000029
【図２８】
2007065356.tif 000030
【図２９】
2007065356.tif 000031
【図３０】
2007065356.tif 000032
【図３１】
2007065356.tif 000033
【図３２】
2007065356.tif 000034
【図３３】
2007065356.tif 000035
【図３４】
2007065356.tif 000036