以下、添付図面を参照しながら、本発明に係る通信装置、通信システム、通信方法およびプログラムの実施形態を詳細に説明する。
図1は、遠隔通信システム1の構成の一例を示す図である。遠隔通信システム1は、一例として地域Aと地域Bに分かれて通信端末10が分かれて配置されているが、最少、2つの通信端末があれば遠隔通信が可能である。
遠隔通信システム1は、複数の通信端末(10aa,10ab,…,10db)、各通信端末(10aa,10ab,…,10db)用のディスプレイ(100aa,100ab,…,100db)、複数の中継装置(30a,30b,30c,30d)、及び遠隔通信管理システム50、プログラム提供システム90、および、外部入力装置40を有する。
なお、本実施形態では、通信端末(10aa,10ab,…,10db)のうち任意の通信端末を示す場合には「通信端末10」を用い、ディスプレイ(100aa,100ab,…,100db)のうち任意のディスプレイを示す場合には「ディスプレイ100」を用い、中継装置(30a,30b,30c,30d)のうち任意の中継装置を示す場合には「中継装置30」を用い、外部入力装置(40aa,40ab,…,40db)のうち任意の外部入力装置を示す場合には「外部入力装置40」を用いる。また、以下では、遠隔通信の一例であるテレビ会議の開始を要求する要求元としての通信端末10を「要求元端末10A」と表記し、要求先である宛先としての通信端末10を「宛先端末10B」と表記する場合がある。
通信端末10は、他の通信端末10との間で、画像データ、音声データ等の送受信を行う。本実施形態では、画像データの画像が動画の場合について説明するが、動画だけでなく静止画であってもよい。また、画像データの画像には、動画と静止画の両方が含まれてもよい。中継装置30は、複数の通信端末10の間で、画像データ及び音声データの中継を行う。遠隔通信管理システム50は、通信端末10及び中継装置30を一元的に管理する。
図2に示されているように、遠隔通信システム1において、要求元端末10Aと宛先端末10Bとの間では、遠隔通信管理システム50を介して、各種の管理情報を送受信するための管理情報用セッションseiが確立される。また、要求元端末10Aと宛先端末10Bとの間では、中継装置30を介して、高解像度の画像データ、中解像度の画像データ、低解像度の画像データ、及び音声データの4つの各データを送受信するための4つのセッションが確立される。ここでは、これら4つのセッションをまとめて、画像・音声データ用セッションsedとして示している。
図1に戻って説明を続ける。外部入力装置40は、通信端末10と接続され、通信端末10に対して資料データを表示するための表示データを送信する。ここでの資料データとは、たとえば、文書作成ソフトウェア、表計算ソフトウェア、プレゼンテーション用ソフトウェア等を用いて利用されるデータを意味する。
また、図1に示されている複数のルータ(70a,70b,…,70f)は、画像データ及び音声データの最適な経路の選択を行う。なお、本実施形態では、ルータ(70a,70b,…,70f)のうち任意のルータを示す場合には「ルータ70」を用いる。
プログラム提供システム90は、通信端末10に各種機能又は各種手段を実現させるための通信端末用プログラムが記憶された、不図示のHDD(Hard Disk Drive)を備えており、通信端末10に、通信端末用プログラムを送信することができる。また、プログラム提供システム90のHDDには、中継装置30に各種機能又は各種手段を実現させるための中継装置用プログラムも記憶されており、中継装置30に、中継装置用プログラムを送信することができる。更に、プログラム提供システム90のHDDには、遠隔通信管理システム50に各種機能又は各種手段を実現させるための遠隔通信管理用プログラムも記憶されており、遠隔通信管理システム50に、遠隔通信管理用プログラムを送信することができる。
また、通信端末10aa、通信端末10ab、中継装置30a、及び、ルータ70aは、LAN2aによって互いに通信可能に接続されている。通信端末10ba、通信端末10bb、中継装置30b、及び、ルータ70bは、LAN2bによって互いに通信可能に接続されている。また、LAN2a及びLAN2bは、ルータ70cが含まれた専用線2abによって通信可能に接続されており、所定の地域A内で構築されている。例えば、地域Aは日本であり、LAN2aは東京の事業所内で構築されており、LAN2bは大阪の事業所内で構築されている。
一方、通信端末10ca、通信端末10cb、中継装置30c、及び、ルータ70dは、LAN2cによって互いに通信可能に接続されている。通信端末10da、通信端末10db、中継装置30d、及び、ルータ70eは、LAN2dによって互いに通信可能に接続されている。また、LAN2c及びLAN2dは、ルータ70fが含まれた専用線2cdによって通信可能に接続されており、所定の地域B内で構築されている。例えば、地域Bはアメリカであり、LAN2cはニューヨークの事業所内で構築されており、LAN2dはワシントンD.C.の事業所内で構築されている。
地域A及び地域Bは、それぞれルータ(70c,70f)からインターネット2iを介して通信可能に接続されている。
また、遠隔通信管理システム50、及び、プログラム提供システム90は、インターネット2iを介して、通信端末10及び中継装置30と通信可能に接続されている。遠隔通信管理システム50、及びプログラム提供システム90は、地域A又は地域Bに設置されていてもよいし、これら以外の地域に設置されていてもよい。
なお、本実施形態では、LAN2a、LAN2b、専用線2ab、インターネット2i、専用線2cd、LAN2c、及びLAN2dによって、本実施形態の通信ネットワーク2が構築されている。
また、図1において、各通信端末10、各中継装置30、遠隔通信管理システム50、各ルータ70、及び、プログラム提供システム90の下に示されている4組の数字は、一般的なIPv4におけるIPアドレスを簡易的に示している。例えば、通信端末10aaのIPアドレスは「1.2.1.3」である。また、IPv4ではなく、IPv6を用いてもよい。
(ハードウェア構成)
次に、各機器のハードウェア構成を説明する。まず、通信端末10のハードウェア構成について説明する。
図3は、通信端末10のハードウェア構成図の一例である。図3に示されているように、本実施形態の通信端末10は、通信端末10全体の動作を制御するCPU(Central Processing Unit)101、通信端末用プログラムを記憶したROM(Read Only Memory)102、CPU101のワークエリアとして使用されるRAM(Random Access Memory)103、画像データや音声データ等の各種データを記憶するフラッシュメモリ104、CPU101の制御にしたがってフラッシュメモリ104に対する各種データの読み出し又は書き込みを制御するSSD(Solid State Drive)105、フラッシュメモリ等の記録メディア106に対するデータの読み出し又は書き込み(記憶)を制御するメディアドライブ107、通信端末10の宛先を選択する場合などに操作される操作ボタン108、通信端末10の電源のON/OFFを切り換えるための電源スイッチ109、後述の通信ネットワーク2を利用してデータ伝送をするためのネットワークI/F111、CPU101の制御に従って被写体を撮像し画像データを得るCCD(Charge Coupled Device)112、このCCD112の駆動を制御する撮像素子I/F113、音声を入力するマイク114、音声を出力するスピーカ115、CPU101の制御に従ってマイク114及びスピーカ115との間で音声信号の入出力を処理する音声入出力I/F116、CPU101の制御に従って外付けのディスプレイ100に画像データを伝送するディスプレイI/F117、外部の装置と各種データを送受信する外部装置I/F118及び上記各構成要素を図3に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン110を備えている。
なお、記録メディア106は、通信端末10に対して着脱自在な構成となっている。また、CPU101の制御にしたがってデータの読み出し又は書き込みを行う不揮発性メモリであれば、フラッシュメモリ104に限らず、EEPROM(Electrically Erasable and Programmable ROM)等を用いてもよい。更に、CCD112は、光を電荷に変換して被写体の画像(映像)を電子化する固体撮像素子であり、被写体を撮像するものであればCCDに限らず、CMOS(Complementary Metal Oxide Semiconductor)等を用いてもよい。また、ディスプレイ100は、被写体の画像や操作用アイコン等を表示する液晶や有機ELによって構成されているが、これに限らず、例えばスクリーンなどの投影面に画像を投影するプロジェクタで構成されてもよい。要するに、ディスプレイ100は、画像を表示する装置であればよい。
更に、上記通信端末用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、上記記録メディア106等の、コンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
次に、遠隔通信管理システム50のハードウェア構成を説明する。図4は、本実施形態に係る遠隔通信管理システム50のハードウェア構成の一例を示す図である。遠隔通信管理システム50は、遠隔通信管理システム50全体の動作を制御するCPU201、遠隔通信管理用プログラムを記憶したROM202、CPU201のワークエリアとして使用されるRAM203、各種データを記憶するHD(Hard Disk)204、CPU201の制御にしたがってHD204に対する各種データの読み出し又は書き込みを制御するHDD(Hard Disk Drive)205、フラッシュメモリ等の記録メディア206に対するデータの読み出し又は書き込み(記憶)を制御するメディアドライブ207、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示するディスプレイ208、後述の通信ネットワーク2を利用してデータ伝送をするためのネットワークI/F209、文字、数値、各種指示などの入力のための複数のキーを備えたキーボード211、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行うマウス212、着脱可能な記録媒体の一例としてのCD−ROM(Compact Disk Read Only Memory)213に対するデータの読み出し又は書き込みを制御するCD−ROMドライブ214、外部の装置と情報を送受信する外部装置I/F215及び、上記各構成要素を図4に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン210を備えている。
なお、上記遠隔通信管理用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、上記記録メディア206やCD−ROM213等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
また、外部入力装置40は、上記遠隔通信管理システム50と同様のハードウェア構成を有しているため、その説明を省略する。但し、ROM202には、外部入力装置40を制御するための外部入力装置用プログラムが記録されている。この場合も、外部入力装置用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、上記記録メディア206やCD−ROM213等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
また、中継装置30は、上記遠隔通信管理システム50と同様のハードウェア構成を有しているため、その説明を省略する。但し、ROM202には、中継装置30を制御するための中継装置用プログラムが記録されている。この場合も、中継装置用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、上記記録メディア206やCD−ROM213等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
更に、プログラム提供システム90は、上記遠隔通信管理システム50と同様のハードウェア構成を有しているため、その説明を省略する。但し、ROM202には、プログラム提供システム90を制御するためのプログラム提供用プログラムが記録されている。この場合も、プログラム提供用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、上記記録メディア206やCD−ROM213等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
なお、上記着脱可能な記録媒体の他の例として、CD−R(Compact Disc Recordable)、DVD(Digital Versatile Disk)、Blu−ray(登録商標) Disc等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
(機能構成)
図5は、本実施形態の遠隔通信システム1を構成する各端末、装置及びシステムの機能構成の一例を示すブロック図である。図5では、通信端末10、中継装置30、及び遠隔通信管理システム50が、通信ネットワーク2を介してデータ通信することができるように接続されている。外部入力装置40は、通信端末10とデータを送受信することができるように、例えばUSBケーブルにより接続されている。図1に示されているプログラム提供システム90は、テレビ会議の通信において直接関係ないため、図5では省略されている。
まず、通信端末10の機能構成について説明する。図5に示すように、通信端末10は、送受信部11、操作入力受付部12、ログイン要求部13、撮像部14a、画像表示制御部14b、音声入力部15a、音声出力部15b、選択部16、外部情報送受信部18、記憶・読出処理部19、配置情報選択部21、表示データ制御部22、符号化制御部23、符号化部24、および、復号部25を有している。これら各部は、図3に示されている各構成要素のいずれかが、ROM102に記憶されているプログラムに従ったCPU101からの命令によって動作することで実現される機能又は手段である。
通信端末10に外部入力装置40が接続されている場合、外部入力装置40は表示データを取得して通信端末10に送信する。通信端末10は表示データを受信すると、通信ネットワーク2を介して中継装置30に送信する。
通信端末10の送受信部11は、図3に示されているネットワークI/F111によって実現され、通信ネットワーク2を介して他の端末、装置又はシステムと各種データ(情報)の送受信を行う。操作入力受付部12は、図3に示されている操作ボタン108、及び電源スイッチ109によって実現され、利用者による各種入力を受け付ける。例えば、利用者が、図3に示されている電源スイッチ109をONにすると、図5に示されている操作入力受付部12が電源ONを受け付けて、電源をONにする。ログイン要求部13は、図3に示されているCPU101からの命令によって実現され、上記電源ONの受け付けを契機として、送受信部11から通信ネットワーク2を介して遠隔通信管理システム50に、ログインを要求する旨を示すログイン要求情報、及び通信端末10の現時点のIPアドレスを自動的に送信する。
撮像部14aは、図3に示されているCCD112、及び撮像素子I/F113によって実現され、被写体を撮像して、この撮像して得た映像データを出力する。画像表示制御部14bは、図3に示されているディスプレイI/F117によって実現され、外付けのディスプレイ100に対して画像データを送信するための制御を行う。画像表示制御部14bは自機である通信端末10及び他の通信端末10の撮像部14aで撮像された映像データの他に、自機である通信端末10に接続された外部入力装置40の表示装置400で表示され、キャプチャされた表示データを表示する。画像表示制御部14bは、映像データや表示データの表示領域を制御する機能をもつ。
音声入力部15aは、図3に示されているマイク114、及び音声入出力I/F116によって実現され、利用者の音声を入力し、この音声を音声信号に変換することで、音声信号に係る音声データを出力する。音声出力部15bは、図3に示されているスピーカ115、及び音声入出力I/F116によって実現され、音声データに係る音声信号を音声に変換して出力する。音声入力部15aは音声信号の入力レベルを測定しそれを閾値などと比較することで、音声信号の有無について判定する。
配置情報選択部21は、自機である通信端末10および他の通信端末10の撮像部14aで撮像された映像データや、自機である通信端末10および他の通信端末10に接続された外部入力装置40から入力された後述の表示データを、ディスプレイ100にどのように配置するかの情報を示す配置情報を選択し、その選択した配置情報を画像表示制御部146に対して指示する。この具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。なお、本実施形態の説明では、撮像部14aで撮像された映像データと、外部入力装置40から入力された表示データとを区別しない場合は、単に「画像データ」と称する場合がある。
選択部16は、複数の中継装置30から1つの中継装置30を選択する。中継装置30の選択方法は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
表示データ制御部22は、外部入力装置40の表示データを取得する。表示データとは、表示装置400の画面に表示された画像をJPEG(Joint Photographic Experts Group)やBitmap等の形式にした画像データ、GDI(Graphics Device Interface )等の形式にした描画コマンドを表す。表示データは、資料データが含まれる場合も資料データが含まれない単なるデスクトップ画面の場合もある。表示データ制御部22の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
符号化制御部23は、他の通信端末10へ送信する画像データの圧縮符号化に関する制御を行う。符号化制御部23の詳細な内容については後述する。符号化部24は、符号化制御部23の制御の下、他の通信端末10へ送信する画像データの圧縮符号化を行う。圧縮符号化の方式は任意であり、例えばH.264/SVC、H.264/AVC、H.265(HEVC)、MotionJPEGなどを利用することができる。例えば画像データをスケーラブルに符号化する標準の符号化フォーマットとして、H.264/SVC(H.264/AVC Annex G)符号化フォーマットが知られている。H.264/SVC符号化フォーマットでは、画像データを階層構造のデータに変換し、品質が異なる複数の画像データの集合として符号化して、それぞれの品質の画像データに対応する符号化データを複数のチャンネル(図2の例では、高解像度の画像データ用のチャンネル、中解像度の画像データ用のチャンネル、低解像度の画像データ用のチャンネルに分けられている)で送受信することができる。本実施形態では、このH.264/SVC符号化フォーマットを利用して画像データを符号化した符号化データを、複数の通信端末10間で送受信するものとするが、これに限られるものではない。
復号部25は、他の通信端末10から受信した、圧縮符号化された画像データを復号する機能を有する。
次に、外部入力装置40の機能構成について説明する。図6に示すように、外部入力装置40は、送受信部41、接続検出部42、表示データ取得部451、表示データ送信部452、操作入力受付部46、及び、記憶・読出処理部49を有している。これら各部は、図4に示されている各構成要素のいずれかが、ROM202に記憶されているプログラムに従ったCPU201からの命令によって動作することで実現される機能又は手段である。また、外部入力装置40は、図4に示されているディスプレイ208によって構築される表示装置400を有している。また、外部入力装置40は、Windows(登録商標)等のOS(Operating System)を搭載し、これにより、他の装置と接続したときにはプログラムを実行する機能を備えている。
送受信部41は、図4に示されているネットワークI/F209によって実現され、通信端末10から各種データ(情報)の送受信を行う。接続検出部42は外部装置I/F215により通信端末10とデータの送受信が可能となったことを検出する。操作入力受付部46は、キーボードやマウスにより実現され利用者の操作による入力を受け付ける。
表示データ取得部451は、表示装置400の画面をキャプチャするなどして外部入力装置40の表示データを取得するものであり、表示データ送信部452は、表示データ取得部451が取得した表示データを通信端末10に送信するものである。
記憶・読出処理部49は、図4に示されているHDD205を実体とし各種データを記憶したり、不図示の記憶部に記憶された各種データを読み出したりする処理を行う。
外部入力装置40の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。また、中継装置30の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
図5に戻り、遠隔通信管理システム50の機能構成について説明する。遠隔通信管理システム50は、送受信部51、端末認証部52、状態管理部53、端末抽出部54、端末状態取得部55、セッション管理部57、及び記憶・読出処理部59を有している。これら各部は、図4に示されている各構成要素のいずれかが、ROM202に記憶されているプログラムに従ったCPU201からの命令によって動作することで実現される機能又は手段である。また、遠隔通信管理システム50は、図4に示されているHD204により構築される記憶部5000を有している。
記憶部5000には、中継装置管理テーブルによって構成されている中継装置管理DB5001が構築されている。この中継装置管理テーブルでは、各中継装置30の中継装置ID毎に、各中継装置30の稼動状態、稼動状態が示される状態情報が遠隔通信管理システム50で受信された受信日時、中継装置30のIPアドレス、及び中継装置30における最大データ伝送速度(Mbps)が関連付けられて管理される。中継装置管理DB5001の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
更に、記憶部5000には、端末認証管理テーブルによって構成されている端末認証管理DB5002が構築されている。この端末認証管理テーブルでは、遠隔通信管理システム50によって管理される全ての通信端末10の各端末IDに対して、各パスワードが関連付けられて管理される。端末認証管理DB5002の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
また、記憶部5000には、端末管理テーブルによって構成されている端末管理DB5003が構築されている。この端末管理テーブルでは、各通信端末10の端末ID毎に、各通信端末10の稼動状態、ログイン要求情報が遠隔通信管理システム50で受信された受信日時、及び通信端末10のIPアドレスが関連付けられて管理される。端末管理DB5003の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
更に、記憶部5000には、宛先リスト管理テーブルによって構成されている宛先リスト管理DB5004が構築されている。この宛先リスト管理テーブルでは、テレビ会議の開始を要求する要求元端末10Aの端末IDに対して、宛先端末10Bの候補として登録されている宛先端末10Bの端末IDが全て関連付けられて管理される。宛先リスト管理DB5004の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
また、この記憶部5000には、セッション管理テーブルによって構成されているセッション管理DB5005が構築されている。このセッション管理テーブルでは、中継装置30を選択するためのセッションの実行に用いられる選択用セッションID毎に、画像データ、音声データ及び表示データの中継に使用される中継装置30の中継装置ID、要求元端末10Aの端末ID、宛先端末10Bの端末IDが少なくとも関連付けられて管理される。セッション管理DB5000の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
次に、遠隔通信管理システム50の各機能部について説明する。送受信部51は、図4に示されているネットワークI/F209によって実行され、通信ネットワーク2を介して他の端末、装置又はシステムと各種データ(情報)の送受信を行う。端末認証部52は、送受信部51を介して受信されたログイン要求情報に含まれている端末ID及びパスワードを検索キーとし、記憶部5000の端末認証管理DB5002を検索し、端末認証管理DB5002に同一の端末ID及びパスワードが管理されているかを判断することによって端末認証を行う。状態管理部53は、ログイン要求してきた要求元端末10Aの稼動状態を管理すべく、端末管理テーブルに、この要求元端末10Aの端末ID、要求元端末10Aの稼動状態、遠隔通信管理システム50でログイン要求情報が受信された受信日時、及び要求元端末10AのIPアドレスを関連付けて記憶して管理する。
端末抽出部54は、ログイン要求した要求元端末10Aの端末IDをキーとして、宛先リスト管理テーブルを検索し、要求元端末10Aと遠隔通信することができる宛先端末10Bの候補の端末IDを読み出すことで、端末IDを抽出する。また、端末抽出部54は、ログイン要求してきた要求元端末10Aの端末IDをキーとして、上述の宛先リスト管理テーブルを検索し、上記要求元端末10Aの端末IDを宛先端末10Bの候補として登録している他の要求元端末10Aの端末IDも抽出する。
端末状態取得部55は、上記端末抽出部54によって抽出された宛先端末10Bの候補の端末IDを検索キーとして、上述の端末管理テーブルを検索し、上記端末抽出部54によって抽出された端末ID毎に稼動状態を読み出す。これにより、端末状態取得部55は、ログイン要求してきた要求元端末10Aと遠隔通信することができる宛先端末10Bの候補の稼動状態を取得することができる。また、端末状態取得部55は、上記端末抽出部54によって抽出された端末IDを検索キーとして、上述の端末管理テーブルを検索し、ログイン要求してきた要求元端末10Aの稼動状態も取得する。
セッション管理部57は、上述のセッション管理テーブルに、選択用セッションID、要求元端末10Aの端末ID、及び宛先端末10Bの端末IDを関連付けて記憶して管理する。また、セッション管理部57は、セッション管理テーブルに対して、選択用セッションID毎に、通信端末10の選択部16が最終的に1つに選択した中継装置30の中継装置IDを記憶して管理する。
記憶・読出処理部59は、図4に示されているHDD205によって実行され、記憶部5000に各種データを記憶する処理や、記憶部5000に記憶された各種データを読み出す処理などを行う。
遠隔通信管理システム50の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
なお、通信端末10同士がセッションを確立する処理の手順や、通信端末10間で画像データおよび音声データを送受信する処理の手順等の具体的な内容は、例えば特開2012−134941号公報に開示された内容と同様であってもよい。
次に、通信端末10の符号化制御部23の具体的な内容を説明する。図7は、符号化制御部23の機能構成の一例を示す図である。図7に示すように、符号化制御部23は、画像取得部301と、画像処理部302と、比較判定部303と、タイマー制御部304と、定ビットレート制御部305とを有する。これら各部は、図3に示すCPU101がROM102に格納されたプログラムを実行することにより実現される。
画像取得部301は、時系列に複数の画像データを取得する。この例では、画像取得部301は、請求項の「取得手段」に対応している。本実施形態では、画像取得部301は、撮像部14aで撮像された映像データもしくは外部情報送受信部18で受信した表示データを順次に取得する。
画像処理部302は、画像取得部301で取得された画像データのフォーマット変換処理、当該画像データのコピー処理、コピー処理により得られたコピー画像のリスケール処理などの画像処理を行う。フォーマット変換処理の一例としては、YUV2/JPGフォーマットをRGBに変換する処理などが挙げられる。リスケール処理の一例としては、例えばコピー画像の解像度を、幅80ドット、高さ40ドット程度に縮小する処理などが挙げられる。なお、メモリ容量が十分確保できる場合は、上記画像処理を省略してもよい。
比較判定部303は、画像取得部301により画像データが取得されるたびに、画像取得部301により取得された画像データと、その直前に取得された画像データとの変化量(現フレームと前フレームとの変化量)が閾値を超えるか否かを判定する。この例では、比較判定部303は、請求項の「判定手段」に対応している。例えばRGBフォーマットであれば、1ドット単位でRed/Green/Blueごとに現フレームの画素値(濃度値)と前フレームの画素値を比較すればよい。例えば、1ドット毎に、Redの変化量(現フレームの画素値−前フレームの画素値)とGreenの変化量とBlueの変化量との総和を示すdeltaRGBを求め、deltaRGBの値が基準値(例えば16)を超えるドットの数が所定数(例えば1000)を超える場合は、現フレームと前フレームとの変化量が閾値を超えると判定することもできる。
タイマー制御部304は、時間を計測するためのタイマー(不図示)の動作を制御する。本実施形態では、比較判定部303により、現フレームと前フレームとの変化量が閾値を超えると判断されるたびに、タイマー制御部304は、タイマーをリセットする制御(計測した時間を初期値に戻す制御)を行い、再び計時を開始するようにタイマーを制御する。
定ビットレート制御部305は、画像取得部301により取得された画像データと、その直前に取得された画像データとの変化量に基づいて、単位時間(例えば1秒)に送信することが可能な、圧縮符号化後の画像データのデータ量を表すビットレートを一定にするための定ビットレート制御を行う。より具体的には、定ビットレート制御部305は、上記変化量が閾値を超える場合、定ビットレート制御を行う。本実施形態では、定ビットレート制御は、画像取得部301により取得された画像データ(現フレーム)の解像度を低減する制御である。より具体的には、定ビットレート制御は、画像取得部301により取得された画像データの解像度を1/2に低減する制御である。この例では、定ビットレート制御部305は、請求項の「制御手段」に対応している。
例えばRateShaperなどの従来技術では、最初のフレームにおいてターゲットビットレートとの差が大きい場合や、前フレームとの変化が大き過ぎる場合などにおいては、圧縮符号化後のデータ量を目標ビットレートに合わせるための制御が効かず、ビットレートを一定にできなかった。また、画面共有で表示される文字資料などの非自然画では自然画に比べて空間周波数が高い領域が多いために圧縮率を上げることができず、さらにページ切替えの際など大きな画像変化が頻繁に起こるためにビットレートを一定にすることができないという問題が起こる。
これに対して、本実施形態では、現フレームと前フレームとの変化量が閾値を超える場合は現フレームの解像度を低減する制御を行うことにより、ビットレートを一定にしつつ圧縮符号化後の画像データのデータ量を低減することができるので、ネットワークの利用帯域を十分に確保できない場合であっても、ビットレートを一定にしつつ画像データの通信遅延を防ぐことができるという有利な効果を達成できる。
なお、本実施形態では、定ビットレート制御として、画像取得部301により取得された画像データ(現フレーム)の解像度を低減する制御を行っているが、これに限らず、定ビットレート制御は、圧縮符号化後の画像データのビットレートを一定にするための制御であればよい。例えば定ビットレート制御として、上記の例とは反対に、現フレームの解像度を増大する制御を行うこともできる。また、例えば定ビットレート制御として、現フレームを破棄する制御を行うこともできるし、圧縮率を上げる/下げる制御を行うこともできる。この例では、定ビットレート制御部305は、符号化部24に対して、圧縮率を指示するとともに、生成する符号化データがIピクチャであるかPピクチャであるかを指示することもできる。なお、この例では、符号化部24は符号化制御部23とは別に独立して設けられているが、これに限らず、例えば符号化部24が符号化制御部23内に設けられる形態であってもよい。
また、本実施形態では、比較判定部303により、現フレームと前フレームとの変化量が閾値を超えると判定された場合、定ビットレート制御部305は、予め定められた時間の間は、継続して定ビットレート制御を行う。この例では、上記予め定められた時間は1秒であるが、これに限られるものではない。現フレームと前フレームとの変化量が閾値を超えると判定された場合は、その後に取得されたフレームと前フレームとの変化量が閾値以下であっても、予め定められた時間の間は無条件に定ビットレート制御を行うことにより、少なくとも当該時間の間はビットレートを一定に保つことができる。
図8は、通信端末10が、圧縮符号化後の画像データを他の通信端末10へ送信する場合の動作例を示すフローチャートである。図8に示すように、まず通信端末10(画像取得部301)は、画像データを取得する(ステップS1)。次に、通信端末10は、ステップS1で取得した画像データに対して、定ビットレート処理を行う(ステップS2)。この定ビットレート処理の詳細な内容については後述する。次に、通信端末10(符号化部24)は、定ビットレート処理後の画像データを圧縮符号化する(ステップS3)。次に、通信端末10(送受信部11)は、ステップS3で圧縮符号化した画像データを、他の通信端末10(テレビ会議相手となる通信端末10)へ送信する(ステップS4)。画像取得部301により画像データが取得されるたびに、以上の処理が繰り返される。
図9は、上記定ビットレート処理の詳細な内容の一例を示すフローチャートである。図9に示すように、画像処理部302は、図8のステップS1で取得された画像データに対して上述の画像処理を行う(ステップS11)。ここでは、画像処理部302は、ステップS1で取得された画像データのコピー画像の解像度を、幅80ドット、高さ40ドット程度に縮小する処理を行う場合を例に挙げて説明する。次に、比較判定部303は、ステップS11で作成された80×40の現フレームと、同サイズの前フレームとを比較する処理を行い(ステップS12)、現フレームと前フレームとの変化量が閾値を超えるか否かを判定する(ステップS13)。この判定方法は、上述したとおりである。
現フレームと前フレームとの変化量が閾値を超える場合(ステップS13:Yes)、タイマー制御部304は、不図示のタイマーをリセットする制御を行い(ステップS14)、再び計時を開始するようにタイマーを制御する。そして、タイマーによって計時された時間が1秒未満の場合(ステップS15:Yes)、定ビットレート制御部305は、上述の定ビットレート制御を行う(ステップS16)。この例では、定ビットレート制御部305は、図8のステップS1で取得された画像データの解像度(ステップS11における画像処理が行われる前の元画像)を、640×360を最小値として、幅および高さをそれぞれ1/2にする。そして、この例では、後処理として、80×40の現フレーム(ステップS11におけるリスケール処理後のコピー画像)を、前フレームとして不図示のメモリに登録する処理を行う。
また、この例では、現フレームと前フレームとの変化量が閾値以下の場合(ステップS13:No)であっても、タイマーによって計時された時間が1秒未満の場合(ステップS15:Yes)、定ビットレート制御部305は、上述の定ビットレート制御を行う(ステップS16)。一方、タイマーによって計時された時間が1秒以上の場合(ステップS15:No)、定ビットレート制御は行われず、そのまま処理は終了する。以上が定ビットレート処理の詳細な内容である。
なお、本実施形態では、通信端末10が、上記定ビットレート処理を行い、圧縮符号化後の画像データを含むデータの送受信を他の通信端末10との間で行っている。したがって、通信端末10が請求項の「通信装置」に対応していると考えることができるが、これに限らず、例えば自機である通信端末10に接続された外部入力装置40の表示データ(画面共有データ)を他の通信端末10へ送信する場合、当該外部入力装置40が、圧縮符号化後の表示データのビットレートを一定にするための定ビットレート処理を行うこともできる。この場合、外部入力装置40は、上述の符号化制御部23の機能を有することになり、請求項の「通信装置」に対応していると考えることができる。また、この場合、外部入力装置40が接続された通信端末10は請求項の「第2の通信端末」に対応し、圧縮符号化後の表示データが送信される他の通信端末10は請求項の「第1の通信端末」に対応していると考えることができる。また、本実施形態では、遠隔通信システム1は、請求項の「通信システム」に対応し、遠隔通信システム1に含まれる一の通信端末10は請求項の「第1の通信装置」に対応し、当該一の通信端末10との間でデータの送受信を行う他の通信端末10は請求項の「第2の通信装置」に対応していると考えることができる。
以上に説明したように、本実施形態では、現フレームと前フレームとの変化量が閾値を超える場合は現フレームの解像度を低減する制御を行うことにより、ビットレートを一定にしつつ圧縮符号化後の画像データのデータ量を低減することができるので、ネットワークの利用帯域を十分に確保できない場合であっても、ビットレートを一定にしつつ画像データの通信遅延を防ぐことができるという有利な効果を達成できる。
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
上述の実施形態では、本発明が適用される通信装置の例として、遠隔通信システム1に含まれる通信端末10や外部入力装置40を例に挙げて説明したが、本発明が適用される通信装置はこれに限られるものではない。例えば本発明が適用される通信装置は、会議専用端末、ゲーム機器、タブレット型端末、携帯電話、スマートフォン、汎用PC端末、自動車に搭載されるカーナビゲーション端末、プロジェクタなどの投影装置、電子黒板、ウェアラブル端末、通信機能を備えた産業用機器などであってもよい。
また、上述した実施形態の遠隔通信システム1で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ROM等の不揮発性の記録媒体に予め組み込んで提供するように構成してもよい。