以下、本発明の好ましい実施例を、添付の図面に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は、図示された構成に限定されるものではない。
(実施例1)
図1(a)は、本実施例に係る監視カメラの一例を示す図である。図1における監視カメラ1000は、レンズを含む筐体1101、及びアーム機構1102を備える。アーム機構1102は、監視カメラ1000を天井などの設置場所から吊り下げる。又、アーム機構1102は、筐体1101をパン方向及びチルト方向に回転させることにより監視カメラ1000の撮像方向を変更可能であり、且つこの撮像方向を固定することができる。
なお、本実施例における監視カメラ1000は、動画像を撮像する撮像装置であり、より詳細には、監視に用いられるネットワークカメラであるものとする。また、アーム機構1102には、筐体1101をパン方向に回転させるためのステッピングモータと、筐体1101をチルト方向に回転させるためのステッピングモータと、が設けられているものとする。
続いて、図1(b)は、本実施例に係る監視システムのシステム構成の一例を示す図である。本実施例に係る監視システムにおいて、監視カメラ1000とクライアント装置2000とは、IPネットワーク網1500を介して相互に通信可能な状態で接続される。なお、本実施例におけるクライアント装置2000は、PC等の外部装置の一例である。又、本実施例における監視システムは、撮像システムに相当する。
なお、IPネットワーク網1500は、例えばEthernet(登録商標)等の通信規格を満足する複数のルータ、スイッチ、ケーブル等から構成されるものとする。しかしながら、本実施例においては、監視カメラ1000とクライアント装置2000との間の通信を行うことができるものであれば、その通信規格、規模、構成を問わない。
例えば、IPネットワーク網1500は、インターネットや有線LAN(Local Area Network)、無線LAN(Wireless LAN)、WAN(Wide Area Network)等により構成されていても良い。なお、本実施例における監視カメラ1000は、例えば、PoE(Power Over Ethernet(登録商標))に対応していても良く、LANケーブルを介して電力を供給されても良い。
クライアント装置2000は、監視カメラ1000に対し、各種コマンドを送信する。これらのコマンドは、例えば、後述の撮像パラメータを変更するためのコマンドや、画像ストリーミングを開始させるためのコマンド等である。なお、これらのコマンドの詳細は、後述する。また、監視カメラ1000は、それらのコマンドに対するレスポンスや画像ストリーミングをクライアント装置2000に送信する。
続いて、図2は、本実施例に係る監視カメラ1000のハードウェア構成の一例を示す図である。図2において、レンズ1001は、被写体の像を撮像部1002に結像する。撮像部1002は、レンズ1001により結像された被写体の像を撮像することにより、撮像画像を生成する。そして、撮像部1002は、生成した撮像画像を画像処理部1003に出力する。
画像処理部1003は、後述の制御部1008の指示に従い、撮像部1002から出力された撮像画像に画像処理を施す。そして、画像処理部1003は、画像処理を施した撮像画像を圧縮符号化部1004に出力する。圧縮符号化部1004は、制御部1008の指示に従い、画像処理部1003から出力された撮像画像を圧縮符号化する。
通信部1005は、圧縮符号化部1004により圧縮符号化された撮像画像を、IPネットワーク網1500を介してクライアント装置2000に配信する。そして、通信部1005は、クライアント装置2000から送信されたOSD設定コマンドを、IPネットワーク網1500を介して受信する。更に、通信部1005は、クライアント装置2000から送信された符号化設定コマンドを、IPネットワーク網1500を介して受信する。
又、通信部1005は、撮像画像に対する設定コマンド(以下、画像設定コマンドと称することがある)を受信する。この画像設定コマンドは、例えば、画像サイズの設定コマンド、被写体像に対するホワイトバランス及びゲイン等の露出制御に関する設定コマンド等を含む。なお、本実施例における通信部1005は、クライアント装置2000から画像を受信する受信部に相当する。
レンズ制御部1006は、被写体の像に応じて絞りを変化させ、フォーカス位置を調整させることでピント合わせを実行させ、赤外線遮断フィルターの挿脱等を行わせるように、レンズ1001を制御する。又、OSD生成部1007は、制御部1008の指示に従い、OSD画像を生成する。そして、OSD生成部1007は、生成したOSD画像を圧縮符号化部1004に出力する。
ここで、圧縮符号化部1004は、画像処理部1003が出力した撮像画像に、OSD生成部1007が出力したOSD画像を合成する。例えば、圧縮符号化部1004は、画像処理部1003が出力した撮像画像に対し、OSD生成部1007が出力したOSD画像を重畳する。次に、圧縮符号化部1004は、合成した撮像画像を圧縮符号化する。そして、圧縮符号化部1004は、圧縮符号化した撮像画像を通信部1005に出力する。
なお、本実施例における圧縮符号化部1004は、撮像部1002から出力された撮像画像にOSD画像を重畳する重畳部に相当する。又、本実施例におけるOSD画像は、重畳情報に相当する。
制御部1008は、監視カメラ1000の全体の制御を行う。制御部1008は、例えばCPU(Central Processing Unit)により構成され、後述の記憶部1009に記憶されたプログラムを実行する。又は、制御部1008は、ハードウェアを用いて制御を行うこととしても良い。
制御部1008は、通信部1005により受信された画像設定コマンドを解析する。次に、制御部1008は、解析した画像設定コマンドに基づき、画像設定情報を生成する。そして、制御部1008は、生成した画像設定情報を画像処理部1003に出力し、この出力と同時に、生成した画像設定情報を記憶部1009に記憶させる。
なお、画像処理部1003は、制御部1008から出力された画像設定情報に従い、撮像部1002から出力された撮像画像に画像処理を施し、画像処理を施した撮像画像を圧縮符号化部1004に出力する。
制御部1008は、通信部1005により受信されたOSD設定コマンドを解析する。次に、制御部1008は、解析したOSD設定コマンドに基づき、OSD設定情報を生成する。そして、制御部1008は、生成したOSD設定情報をOSD生成部1007に出力し、この出力と同時に、生成したOSD設定情報を記憶部1009に記憶させる。
なお、OSD生成部1007は、制御部1008が出力したOSD設定情報に従い、OSD画像を生成する。又、このOSD設定情報は、このOSD画像の色、透過率、及び重畳位置情報等を含む。ここで、重畳位置情報は、画像処理部1003から出力された撮像画像にOSD画像を重畳する位置を示す情報である。
制御部1008は、通信部1005により受信された符号化設定コマンドを解析する。次に、制御部1008は、解析した符号化設定コマンドに基づき、符号化設定情報を生成する。そして、制御部1008は、生成した符号化設定情報を記憶部1009に記憶させた後、生成した符号化設定情報を圧縮符号化部1004に出力する。
なお、制御部1008から出力された符号化設定情報は、例えば、データの符号化方式、画像サイズ(或いは画像の解像度)等に関する指定情報を含む。
圧縮符号化部1004は、画像処理部1003から出力された撮像画像を、制御部1008が出力した符号化設定情報で指定された画像サイズ若しくは画像の解像度に変換する。又は、圧縮符号化部1004は、画像処理部1003から出力された撮像画像とOSD生成部1007から出力されたOSD画像とが合成された画像を、制御部1008が出力した符号化設定情報で指定された画像サイズ若しくは画像の解像度に変換する。
そして、圧縮符号化部1004は、変換した撮像画像を、制御部1008が出力した符号化設定情報で指定された符号化方式で圧縮符号化する。なお、本実施例では、この指定された符号化形式には、例えば、JPEG、MPEG、H.264、及びH.265等が含まれるものとする。
上記のごとく動作することにより、本実施例における監視カメラ1000は、同一被写体の画像を、画像サイズがそれぞれ異なる複数の画像に変換することができる。次に、監視カメラ1000は、変換した複数の画像を、符号化方式がそれぞれ異なる複数の画像に圧縮符号化することができる。そして、監視カメラ1000は、圧縮符号化された画像のそれぞれを、ほぼ同時に、ストリーミング配信することができる。
なお、ストリーミング配信される画像は、通信部1005を介して外部に出力される。
続いて、図14は、本実施例に係るクライアント装置2000のハードウェア構成の一例を示す図である。本実施例におけるクライアント装置2000は、IPネットワーク網1500に接続されるコンピュータ装置として構成される。
制御部2005は、クライアント装置2000の全体の制御を行う。制御部2005は、例えば、CPUにより構成され、後述の記憶部2006に記憶されたプログラムを実行する。又、制御部2005は、ハードウェアを用いて制御を行うこととしてもよい。そして、記憶部2006は、制御部2005が実行するプログラム格納領域、プログラム実行中のワーク領域、データの格納領域として使用される。
通信部2004は、制御部2005の指示を受け、監視カメラ1000にコマンド等を送信する。又、通信部2004は、制御部2005の指示を受け、監視カメラ1000から、コマンドのレスポンスやストリーミング配信された画像等を受信する。
入力部2001は、ユーザからの指示の入力を受け付ける。例えば、入力部2001は、ユーザからの指示として、監視カメラ1000に対する各種のコマンドの送信指示の入力を受け付けることができる。又、入力部2001は、制御部2005が記憶部2006に記憶されたプログラムを実行することにより生成されるユーザへの問い合わせメッセージ等に対するユーザの応答の入力を受け付けることができる。
復号伸長部2003は、通信部2004から出力された画像を復号し且つ伸長する。そして、復号伸長部2003は、この復号し且つ伸長された画像を表示部2002に出力する。表示部2002は、復号伸長部2003から出力された画像を表示する。又、表示部2002は、制御部2005が記憶部2006に記憶されたプログラムを実行することにより生成されるユーザへの問い合わせメッセージ等を表示させることができる。
続いて、図3は、本実施例に係る、撮像部1002から出力された撮像画像とOSD生成部1007から出力されたOSD画像とを合成するための処理の一例を示すフローチャートである。ここで、図3(a)は、この処理の一例の全体を示すフローチャートである。又、図3(b)は、図3(a)におけるステップS3004の一例を示すフローチャートである。なお、図3で示した処理は、制御部1008により実行されるものとする。
ステップS3001では、制御部1008は、クライアント装置2000から送信されたOSD設定コマンドを、通信部1005を介して受信する。制御部1008は、OSD設定コマンドを解析し、OSD設定情報を生成する。
ステップS3002では、制御部1008は、ステップS3001で生成されたOSD設定情報をOSD生成部1007に出力する。又、制御部1008は、この出力と同時に、画像処理部1003に設定されている画像設定情報をOSD生成部1007に出力する。
なお、画像設定情報は、画像サイズに関する情報等を含む。
ステップS3003では、制御部1008は、OSD生成部1007に指示し、OSD画像用のビットマップデータを準備させる。なお、このビットマップデータは、OSD生成部1007の内部に設けられたメモリに保持されるものとする。
例えば、OSD画像がテキストである場合には、制御部1008は、OSD生成部1007に指示し、異なるサイズのフォントデータを記憶部1009から読み出させ、撮像画像の画像サイズに合わせた複数のビットマップデータを準備させる。これは、撮像画像の画像サイズに依存することなく、撮像画像に対して均一の比率でOSD画像が撮像画像に重畳表示されるようにするためである。
ステップS3004では、制御部1008は、OSD生成部1007に指示し、OSD画像をビットマップデータとして生成させる。このOSD画像は、ステップS3001で生成されたOSD設定情報で指定された透過率や色などに応じたものである。なお、ステップS3004における処理については、図3(b)を用いて詳述する。
ステップS3005では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004に対してOSD管理情報を出力させる。
ここで、OSD管理情報とは、画像処理部1003から出力された撮像画像に対するビットマップデータの合成位置を定めるためのものである。又、この合成位置は、ステップS3001で受信されたOSD設定情報で指定されたOSD画像の重畳位置情報とステップS3004で生成されたビットマップデータとに基づき、求められる。
又、圧縮符号化部1004は、画像処理部1003から出力された撮像画像に、OSD生成部1007から出力されたOSD画像を合成する。この合成の際、圧縮符号化部1004は、このOSD画像及びOSD生成部1007から出力されたOSD管理情報を、撮像画像の画像サイズ又は撮像画像の解像度に対して反映する。
そして、圧縮符号化部1004は、合成された撮像画像を、制御部1008が出力した符号化設定情報で指定された符号化方式に従って圧縮符号化する。このような処理により、OSD画像が合成された撮像画像が、通信部1005を介してクライアント装置2000にストリーミング配信される。
なお、OSD設定情報で指定されたOSD画像が、例えば、時刻のように毎秒更新されるものを含む場合、OSD生成部1007は、この更新の都度、新たなOSD画像及びOSD管理情報を、圧縮符号化部1004に反映する。
続いて、図3(b)は、図3(a)で示されたステップS3004におけるOSD画像生成処理を説明するためのフローチャートである。なお、図3(b)で示される処理は、制御部1008により実行される。
ステップS3101では、制御部1008は、ステップS3001で生成されたOSD設定情報で指定されたフォントの透過率を判別する。例えば、本実施例では、フォントの透過率が3段階ある場合を想定する。このように想定した場合、制御部1008は、ステップS3001で生成されたOSD設定情報で指定されたフォントの透過率が0である場合には、ステップS3102に処理を進める。
又、制御部1008は、ステップS3001で受信されたOSD設定情報で指定されたフォントの透過率が1である場合には、ステップS3103に処理を進める。そして、制御部1008は、ステップS3001で受信されたOSD設定情報で指定されたフォントの透過率が2である場合には、ステップS3104に処理を進める。
ステップS3102では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像のテキストのフォントが撮像画像に100%ブレンドされるよう、このテキストを生成させる。これにより、画像処理部1003から出力された撮像画像は、生成されたOSD画像のテキストの下から透けて見えるように表示されることはない。
ステップS3103では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像のテキストのフォントが撮像画像に50%ブレンドされるよう、このテキストを生成させる。これにより、画像処理部1003から出力された撮像画像は、生成されたOSD画像のテキストの下から透けて見えるように表示され得る。
ステップS3104では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像のテキストのフォントが撮像画像にブレンドされないよう、このテキストを生成させる。これにより、画像処理部1003から出力された撮像画像には、生成されたOSD画像のテキストが重畳されて見えることはない。
ステップS3105では、制御部1008は、ステップS3001で生成されたOSD設定情報で指定された背景の透過率を判別する。例えば、本実施例では、背景の透過率が3段階ある場合を想定する。このように想定した場合、制御部1008は、ステップS3001で生成されたOSD設定情報で指定された背景の透過率が0である場合には、ステップS3106に処理を進める。
又、制御部1008は、ステップS3001で生成されたOSD設定情報で指定された背景の透過率が1である場合には、ステップS3107に処理を進める。そして、制御部1008は、ステップS3001で生成されたOSD設定情報で指定された背景の透過率が2である場合には、ステップS3108に処理を進める。
ステップS3106では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像のテキストの背景が撮像画像に100%ブレンドされるよう、OSD画像を生成させる。これにより、画像処理部1003から出力された撮像画像は、生成されたOSD画像の背景の下から透けて見えるように表示されることはない。
ステップS3107では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像のテキストの背景が撮像画像に50%ブレンドされるよう、この背景を生成させる。これにより、画像処理部1003から出力された撮像画像は、生成されたOSD画像の背景の下から透けて見えるように表示され得る。
ステップS3108では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像のテキストの背景が撮像画像にブレンドされないよう、OSD画像を生成させる。これにより、画像処理部1003から出力された撮像画像には、生成されたOSD画像の背景が重畳されて見えることはない。
続いて、図4は、本実施例において、画像処理部1003から出力された撮像画像とOSD生成部1007から出力されたOSD画像とが合成された画像の一例を示す図である。図4で示された画像において、画像エリア4001は、画像処理部1003が出力した撮像画像が表示されるエリアである。又、画像エリア4002は、画像処理部1003が出力した撮像画像に対応する被写体が撮像された日付を表示するためのエリアである。
なお、画像エリア4002に日付が表示されるか否かは、OSD設定情報で指定される。
そして、画像エリア4003は、画像処理部1003が出力した撮像画像に対応する被写体が撮像された時刻を表示するためのエリアである。ここで、画像エリア4003に時刻が表示されるか否かは、OSD設定情報で指定される。更に、画像エリア4004は、画像処理部1003が出力した撮像画像に対応する被写体を説明するためのテキストを表示するためのエリアである。
なお、このテキストは、時間の経過により変化することのないプレーンテキストである。又、このテキストは、ユーザがクライアント装置2000に入力したテキスト情報に対応するものである。又、画像エリア4004に表示されるテキストは、OSD設定情報に含まれる。
続いて、図5は、OSD画像に含まれるテキストに用いられるフォントデータの一例を示す図である。このフォントデータは、記憶部1009が保持する。なお、このフォントデータは、図4における日付、時刻、プレーンテキストを表示するために用いられるものである。
まず、図5(a)におけるデータエリア5001は、OSD画像に含まれるテキストに用いられるフォントを示す。又、データエリア5002は、OSD画像に含まれるテキストの背景を示す。
図5(b)におけるデータエリア5003は、OSD画像に含まれるテキストに用いられるフォントを示す。又、データエリア5004は、OSD画像に含まれるテキストに用いられるフォントのアウトラインを示す。なお、このアウトラインは、OSD画像に含まれるテキストの背景である。そして、データエリア5005は、画像処理部1003が出力した撮像画像に重畳されないエリアである非重畳エリアを示す。
なお、データエリア5005は、データエリア5003及びデータエリア5004を、OSD画像から除いた部分に相当する。
続いて、図6は、監視カメラ1000とクライアント装置2000との間における、ストリーミング配信される画像のパラメータの設定開始から画像がストリーミング配信されるまでの、典型的なコマンドシーケンスを説明するためのシーケンス図である。
なお、本実施例におけるトランザクションとは、クライアント装置2000から監視カメラ1000へ送信されるコマンドと、それに対して監視カメラ1000がクライアント装置2000へ返送するレスポンスのペアのことを指している。
図6における6000は、機器探索のトランザクションである。クライアント装置2000は、ネットワーク上に接続されている監視カメラを探索するための所定の探索条件を含むProbeコマンドをマルチキャストで送信する。Probeコマンドを受信した監視カメラのうち、探索条件に合致するものは、ProbeMatchコマンドを、Probeコマンドの送信元であるクライアント装置2000に返送し、探索が完了する。
6001は、GetProfilesトランザクションである。このトランザクションは、配信プロファイルに相当するMediaProfileを取得するためのトランザクションである。クライアント装置2000は、GetProfilesコマンドを監視カメラ1000に送信する。そして、GetProfilesコマンドを受信した監視カメラ1000は、MediaProfileのリストをクライアント装置に送信する。
これにより、クライアント装置2000は、MediaProfileを識別するための配信プロファイルIDとともに、監視カメラ1000で現在使用可能なMediaProfileのリストを取得する。
6002は、GetVideoSourcesトランザクションである。このトランザクションは、画像処理部1003の機能を取得するためのトランザクションである。クライアント装置2000は、GetVideoSourcesコマンドを監視カメラ1000に送信する。そして、GetVideoSourcesコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにより、クライアント装置2000は、監視カメラ1000の保持する画像処理機能の設定情報を取得する。
6003は、GetVideoSourceConfigurationsトランザクションである。このトランザクションは、監視カメラ1000から画像処理設定のリストを取得するためのトランザクションである。クライアント装置2000は、GetVideoSourcesコマンドを監視カメラ1000に送信する。
そして、GetVideoSourcesコマンドを受信した監視カメラ1000は、監視カメラ1000が保持する画像処理設定のIDを含むリストをクライアント装置2000に返送する。なお、このリストは、制御部1008により生成される画像設定情報の一例である。
6004は、GetVideoEncorderConfigurationsトランザクションである。このトランザクションは、圧縮符号化部1004の機能を取得するためのトランザクションである。クライアント装置2000は、GetVideoEncorderConfigurationsコマンドを監視カメラ1000に送信する。又、このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスを返送する。
このトランザクションにより、クライアント装置2000は、監視カメラ1000の圧縮符号化部1004が提供する機能に関する情報を取得する。この情報は、制御部1008により生成される符号化設定情報の一例である。
6005は、GetVideoEncorderConfigurationOptionsトランザクションである。このトランザクションは、圧縮符号化部1004に対する設定のリストを取得するためのトランザクションである。クライアント装置2000は、GetVideoEncorderConfigurationOptionsコマンドを監視カメラ1000に送信する。
このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスを返送する。このトランザクションにより、クライアント装置2000は、記憶部1009に記憶されている圧縮符号化設定のIDを含むリストを監視カメラ1000から取得する。
6006は、CreateProfileのトランザクションである。このトランザクションは、配信プロファイルの作成を要求するためのトランザクションである。クライアント装置2000は、CreateProfileコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスを返送する。
このトランザクションにより、クライアント装置2000は、配信プロファイルを監視カメラ1000内に新たに作成し、作成した配信プロファイルのIDを得ることができる。又、監視カメラ1000は、この新たに作成された配信プロファイルを記憶する。
6007は、AddVideoSourceConfigurationのトランザクションである。このトランザクションは、画像処理設定の追加を要求するためのトランザクションである。クライアント装置2000は、AddVideoSourceConfigurationのコマンドを監視カメラ1000に送信する。
このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。このトランザクションにより、クライアント装置2000は、6006で取得した配信プロファイルIDと、6003で取得した画像処理設定のIDを指定する。監視カメラ1000は、指定された配信プロファイルに指定された画像処理設定を関連付けて記憶する。
なお、6007のコマンドは、上述の画像設定コマンドの一例である。
6008は、AddVideoEncorderConfigurationのトランザクションである。このトランザクションは、圧縮符号化設定の追加を要求するためのトランザクションである。クライアント装置2000は、AddVideoEncorderConfigurationのコマンドを監視カメラ1000に送信する。監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにより、クライアント装置2000は、6006で取得した配信プロファイルIDと、6004で取得した圧縮符号化設定のIDを指定し、配信プロファイルに圧縮符号化設定を関連付ける。監視カメラ1000は、指定された配信プロファイルに指定された圧縮符号化設定を関連付けて記憶する。
6009は、SetVideoEncorderConfigurationのトランザクションである。このトランザクションは、圧縮符号化設定を変更するためのトランザクションである。クライアント装置2000は、SetVideoEncorderConfigurationのコマンドを監視カメラ1000に送信する。
このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスを返送する。このトランザクションにより、クライアント装置2000は、6004で取得した圧縮符号化設定の内容を、6005で取得した選択肢に基づいて変更する。例えば、圧縮符号化方式や切出しサイズを変更する。監視カメラ1000は、変更された圧縮符号化設定の内容を記憶する。
なお、6008のコマンド、及び6009のコマンドは、上述の符号化設定コマンドの一例である。
6010は、GetStreamUriのトランザクションである。このトランザクションは、配信アドレスの取得を要求するためのトランザクションである。このトランザクションにて、クライアント装置2000は、6006で取得した配信プロファイルIDを指定し、指定した配信プロファイルの設定に基づいて配信される映像を取得するための配信アドレスを取得する。
監視カメラ1000は、指定されたプロファイルIDに関連付けられている画像処理設定、及び圧縮符号化設定の内容に対応する画像が配信されるための配信アドレスを、クライアント装置2000に返送する。
6011は、DESCRIBEのトランザクションである。このトランザクションは、配信情報の取得を要求するためのトランザクションである。クライアント装置2000は、DESCRIBEのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにおいて、クライアント装置2000は、6010で取得した配信アドレスを指定し、監視カメラ1000の配信情報に関する詳細データを取得する。
6012は、SETUPのトランザクションである。このトランザクションは、配信設定を要求するためのトランザクションである。クライアント装置2000は、SETUPのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにおいて、クライアント装置2000は、6011で取得した配信情報に関する詳細データに基づき、監視カメラ1000に対してストリーミングの準備を行わせる。このコマンドを実行することにより、クライアント装置2000と監視カメラ1000との間で、セッション番号を含むストリームの伝送方法が共有される。
6013は、PLAYのトランザクションである。このトランザクションは、配信を開始させるためのトランザクションである。クライアント装置2000は、PLAYのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
クライアント装置2000は、PLAYのコマンドを監視カメラ1000に送信する際、6012で取得したセッション番号を用いることで、監視カメラ1000に指定した配信プロファイルの設定に基づく画像のストリームを開始させることができる。
6014は、監視カメラ1000からクライアント装置2000に配信されるストリームである。6013で開始を要求されたストリームを6012において共有された伝送方法によって配信する。
6015は、TEARDOWNのトランザクションである。このトランザクションは、配信を停止させるためのトランザクションである。クライアント装置2000は、TEARDOWNのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスを返送する。
このトランザクションにおいてクライアント装置2000は、6012にて取得したセッション番号を指定して、配信中のストリーミングを停止させる。
続いて、図7は、監視カメラ1000とクライアント装置2000との間における、画像重畳処理の設定などのための典型的なコマンドシーケンスを示している。
図7における6050は、GetServicesのトランザクションである。このトランザクションは、監視カメラ1000の機能の取得を要求するためのトランザクションである。クライアント装置2000は、GetServicesコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスを返送する。
このトランザクションにおいて、クライアント装置2000は、監視カメラ1000が持つ機能のリストを取得する。クライアント装置2000は、画像処理機能及び圧縮符号化機能に対応しているかを確認する。
6051は、GetServiceCapabilitiesのトランザクションである。このトランザクションは、画像重畳処理に対応する機能の取得を要求するためのトランザクションである。クライアント装置2000は、GetServiceCapabilitiesのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスを返送する。
このトランザクションにおいてクライアント装置2000は、監視カメラ1000が画像重畳処理に対応しているかどうかを確認する。例えば、制御部2005は、監視カメラ1000が画像重畳処理をすることができるか否かを示す重畳可否情報を、監視カメラ1000から通信部2004を介して受信する。
6052は、GetVideoSourceConfigurationsのトランザクションである。このトランザクションは、画像処理設定のリストを取得するためのトランザクションである。クライアント装置2000は、GetVideoSourceConfigurationsのコマンドを監視カメラ1000に送信する。
このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返信する。このトランザクションにより、クライアント装置2000は、監視カメラ1000の保持する画像処理設定のIDを含むリストを監視カメラ1000から取得する。なお、このリストは、制御部1008により生成される画像設定情報の一例である。
6053は、GetOSDsコマンドのトランザクションである。このトランザクションは、画像重畳設定リストの取得を要求するためのトランザクションである。クライアント装置2000は、GetOSDsのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにおいて、クライアント装置2000は、6052で取得した画像処理設定IDを指定する。これにより、クライアント装置2000は、監視カメラ1000が保持している画像処理設定に関連付けられた画像重畳設定のIDであるOSDTokenを含む全ての画像重畳設定のリストを取得する。
6054は、GetOSDOptionsのトランザクションである。このトランザクションは、画像重畳設定のオプションを取得するためのトランザクションである。クライアント装置2000は、GetOSDOptionsのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにおいて、クライアント装置2000は、6052で取得した画像処理設定IDを指定する。これにより、クライアント装置2000は、監視カメラ1000が保持している画像処理設定に関連付けられた画像重畳設定の各パラメータに対する、設定可能な選択肢や設定値の範囲を取得する。
なお、画像重畳設定のパラメータには、重畳テキストのフォント及び背景のそれぞれがあり、透過率が設定可能な場合には、その項目と範囲を含む。
又、例えば、制御部2005は、監視カメラ1000が画像重畳処理をすることができることを示す重畳可否情報を通信部2004経由で受信した場合には、6054のコマンドを監視カメラ1000に通信部2004を介して送信する。
一方、制御部2005は、監視カメラ1000が画像重畳処理をすることができないことを示す重畳可否情報を通信部2004経由で受信した場合には、6054のコマンドを監視カメラ1000に通信部2004を介して送信しない。
6055は、CreateOSDのトランザクションである。このトランザクションは、画像重畳の設定を作成するためのトランザクションである。クライアント装置2000は、CreateOSDのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにより、クライアント装置2000は、6054で取得した選択肢に基づいて新しい画像重畳設定を監視カメラ1000内に作成することができる。監視カメラ1000は、クライアント装置2000から指定された画像重畳設定に応じて画像重畳設定IDであるOSDTokenを返す。
6056は、GetOSDのトランザクションである。このトランザクションは、画像重畳設定の取得を要求するためのトランザクションである。クライアント装置2000は、GetOSDのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにおいて、クライアント装置2000は、6055で取得した画像重畳設定IDであるOSDTokenを用いて画像重畳設定を取得する。なお、6053のレスポンス、及び6056のレスポンスは、制御部1008により生成されるOSD設定情報の一例である。
6057は、SetOSDのトランザクションである。このトランザクションは、画像重畳設定を変更するためのトランザクションである。クライアント装置2000は、SetOSDのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにおいて、クライアント装置2000は、画像重畳設定IDであるOSDTokenを指定する。これにより、クライアント装置2000は、6056で取得した画像重畳設定や、6055で新たに作成した画像重畳設定の内容を、6054で取得した選択肢に基づいて変更することができる。例えば、重畳位置や、重畳テキストの内容を変更する。
なお、6055のコマンド、及び6057のコマンドは、上述のOSD設定コマンドの一例である。
又、例えば、6057のコマンドを受信した監視カメラ1000の制御部1008は、受信したコマンドにおいて、OSD画像に含まれるテキストの透過率が指定されているか否かを判定する。
次に、制御部1008は、指定されていると判定した場合に、6057のコマンドにおけるOSD画像に含まれるテキストの透過率が、6055のレスポンスで示したOSD画像に含まれるテキストの透過率の範囲に含まれているか否かを判定する。
そして、制御部1008は、含まれていると判定した場合には、正常である旨の情報を通信部1005経由でクライアント装置2000に送信する。一方、制御部1008は、含まれていないと判定した場合には、異常である旨の情報を通信部1005経由でクライアント装置2000に送信する。
又、例えば、OSD画像のテキスト及びこのテキストの背景のそれぞれについて透過率を設定することができない旨を示す6054のレスポンスが、監視カメラ1000により送信された場合を想定する。
このような場合、6057のコマンドを受信した監視カメラ1000の制御部1008は、受信したコマンドにおいて、OSD画像に含まれるテキスト及びこのテキストの背景のそれぞれの透過率含まれているか否かを判定する。次に、制御部1008は、含まれていると判定した場合には、異常である旨のレスポンスを通信部1005経由でクライアント装置2000に送信する。
6058は、DeleteOSDのトランザクションである。このトランザクションは、画像重畳設定を削除するためのトランザクションである。クライアント装置2000は、DeleteOSDのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにより、クライアント装置2000は、6053や6056で取得した画像重畳設定や、6055で新たに作成した画像重畳設定を、監視カメラ1000から削除する。監視カメラ1000は、指定された画像重畳設定IDのOSDTokenを持つ画像重畳設定を削除する。
続いて、図8は、本実施例に係るデータ型であるOSDConfigurationの構成を説明するための図である。なお、図8に示すデータ型は、例えば、XML Schema Definition言語(以下XSDと称することがある)を用いて定義されるものとする。
図8(a)は、OSDConfiguration型の定義例を示す図である。図8(a)に示すように、OSDConfiguration型は、XMLのcomplexType宣言により、複雑型として定義される。また、当該のOSDConfiguration型は、complexContent要素、及び、extension要素とそのbase属性によって、DeviceEntity型を拡張した拡張型であることが示される。
なお、当該OSDConfiguration型は、sequence要素により、その順番が定義通りに出現するデータ拡張が行われていることが示される。
図8(b)は、OSDRefernece型の定義例を示す図である。OSDReference型のデータにおいては、simpleContent要素、及び、extension要素とそのbase属性によって、ReferenceToken型を拡張した拡張型であることが示される。
図8(c)は、OSDType型の定義例を示す図である。OSDType型の定義例においては、simpleType要素によりXMLの単純型であるとともに、restriction要素とそのbase属性により、当該型がstring型の値制限型であることが示される。図7(c)の例では、OSDType型は、その値としてTextまたはImageもしくはExtendedであることが示されている。
図8(d)は、OSDPosConfiguration型の定義例を示す図である。当該OSDPosConfiguration型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図8(e)は、OSDTextConfiguration型の定義例を示す図である。当該OSDTextConfiguration型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図8(f)は、OSDImgConfiguration型を示す図である。当該のOSDImgConfiguration型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図8(g)は、OSDConfigurationExtension型の定義例を示す図である。当該OSDConfigurationExtension型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
続いて、図9及び図10は、本実施例に係るデータ型であるOSDConfigurationOptions型の構成を説明するための図である。なお、図9及び図10に示すデータ型は、図8と同様、XSDを用いて定義されるものとする。
図9(a)は、OSDConfigurationOptions型の定義例を示す図である。OSDConfigurationOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
上記OSDConfigurationOptions型において、最初のフィールドは、int型のMaximumNumberOfOSDsである。次のフィールドは、OSDType型のTypeである。次のフィールドは、string型のPositionOptionである。次のフィールドは、OSDTextOptions型のTextOptionである。
更に、次のフィールドは、OSDImageOptions型のImageOptionである。最後のフィールドは、OSDConfigurationOptionsExtension型のExtensionである。
上記、Type、および、PositionOptionの各フィールドは、maxOccurs=“unbounded”指定子により、当該OSDConfigurationOptions型内部に複数個存在可能なことが示される。また、TextOption、ImageOption、及びExtensionはminOccurs=“0”指定子により、省略可能であることが示される。
図9(b)は、OSDTextOptions型の定義例を示す図である。当該のOSDTextOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
OSDTextOptions型において、最初のフィールドはstring型のTypeフィールドである。次のフィールドは、IntRange型のFontSizeRange型である。次のフィールドは、string型のDateFormatフィールドである。次のフィールドは、同じくstring型のTimeFormatフィールドである。次のフィールドは、OSDColorOptions型のFontColorフィールドである。
又、次のフィールドは、おなじくOSDColorOptions型のBackgroundColorフィールドである。最後のフィールドは、OSDTextOptionsExtension型のExtensionフィールドである。
上記、Typeフィールド、DateFormatフィールド、および、TimeFormatフィールドは、maxOccurs=“unbounded”指定子により、当該OSDTextOptions型内部に複数個存在可能なことが示される。
又、FontSizeRangeフィールド、DateFormatフィールド、TimeFormatフィールド、及びFontColorフィールドは、minOccurs=“0”指定子により、省略可能であることが示される。同様に、BackgroundColorフィールド、および、Extensionフィールドは、minOccurs=“0”指定子により、省略可能であることが示される。
図9(c)は、OSDImgOptions型の定義例を示す図である。当該のOSDImgOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
OSDImgOptions型において、最初のフィールドは、anyURI型のImagePathフィールドである。次のフィールドはOSDImgOptionsExtension型のExtensionフィールドである。当該ImagePathフィールドは、maxOccurs=“unbounded”指定子により、当該OSDImgOptions型内部に複数個存在可能なことが示される。
なお、Extensionフィールドは、minOccurs=“0”指定子により、省略可能であることが示される。
図9(d)は、OSDConfigurationOptionsExtension型の定義例を示す図である。当該のOSDConfigurationOptionsExtension型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図9(e)は、IntRange型の定義例を示す図である。当該のIntRange型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
なお、このIntRange型において、最初のフィールドは、int型のMinフィールドであり、最後のフィールドは、int型のMaxフィールドである。
図10(a)は、OSDColorOptions型の定義例を示す図である。当該のOSDColorOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。又、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
なお、Colorフィールド、Transparentフィールド、Extensionフィールドは、minOccurs=“0”指定子により、省略可能であることが示される。
図10(b)は、OSDTextOptionsExtension型の定義例を示す図である。当該OSDTextOptionsExtension型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図10(c)は、ColorOptions型の定義例を示す図である。当該のColorOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。また、sequence要素内部のchoice要素によって、当該choice要素内の一つが選択されることが示される。
具体的には、当該ColorOptions型においては、後述するColorListフィールド、または、ColorSpaceRangeフィールドから一つが選択される。上記したように、ColorOptions型における、選択肢の一つはColor型のColorListフィールドである。また、もう一つの選択肢は、ColorSpaceRange型のColorSpaceRangeフィールドである。
なお、上記ColorListフィールド、及び、ColorSpaceRangeフィールドは、maxOccurs=“unbounded”指定子により、それぞれ複数個存在できることが示される。
図10(d)は、Color型の定義例を示す図である。当該のColor型では、attribute要素により、float型の属性X、Y、および、Zを記述することができる構成となっている。また、上記属性X、Y、および、Zは、use=“required”指定により、当該Color型において必須の構成であることが示される。また、当該のColor型では、attribute要素により、anyURI型の属性Colorspaceを記述可能な構成となっている。
図10(e)は、ColorSpaceRange型の定義例を示す図である。当該ColorSpaceRange型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
ColorspaceRange型の最初のフィールドは、Xフィールドであり、次のフィールドはYフィールドであり、三番目のフィールドはZフィールドである。上記Xフィールド、Yフィールド、及び、Zフィールドは、FloatRange型のデータである。ColorspaceRange型の最後のフィールドは、anyURI型のColorspaceフィールドである。
図10(f)は、FloatRange型の定義例を示す図である。FloatRange型の定義においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
FloatRange型において、最初のフィールドは、float型のMinフィールドであり、最後のフィールドは、float型のMaxフィールドである。
本実施例においては、クライアント装置2000は、上記OSDConfigurationOptions型のデータを用いて、本実施例の撮像装置に設定可能なOSDの情報を、当該撮像装置から取得する。また、本実施例における監視カメラ1000は、上記OSDConfigurationOptions型のデータを、当該監視カメラ1000におけるOSDに関する能力情報を送信するために用いる。
続いて、図11は、図9(a)で示したOSDConfigurationOptions型の画像重畳設定のパラメータの構成の一例を示した図である。図11において、MaximumNumberOfOSDsフィールドは、3、OSDOptionsフィールドに対応付けられたTypeフィールドは、画像及びテキスト、PositionOptionフィールドは右下のみとなっている。
ここで、MaximumNumberOfOSDsフィールドに対応付けられた値は、監視カメラ1000に設定することができるOSDの最大数を示す。又、OSDOptionsフィールドに対応するTypeフィールドに対応付けられた値は、監視カメラ1000で利用することができるOSDのタイプを示す。このOSDのタイプには、少なくともテキストが含まれる。更に、このOSDのタイプには、画像が含まれることもある。
更に、PositionOptionフィールドに対応付けられた値は、画像処理部1003が出力する撮像画像において、OSD生成部1007から出力されたOSD画像が合成(重畳)される位置を示す。なお、LowerRightは、この値の一例である。又、LowerLeft、UpperRight、UpperLeft、及びCustomは、この値の他の一例である。
又、図11では、TextOptionフィールドが記述されている。このテキストOptionフィールドに対応付けられたTypeフィールドは、プレーンか日付か時刻である。日付の表示形式であるDataFormatフィールドはyyyy/MM/ddとなり、時刻の表示形式であるTimeFormatフィールドはHH:mm:ssとなっている。
つまり、TextOptionsフィールドに対応付けられたTypeフィールドの値は、監視カメラ1000で利用することができるOSDのタイプを示す。そして、日付、時刻、及びプレーンテキストは、このタイプの一例である。又、TextOptionsフィールドに対応付けられたDataFormatフィールドの値は、監視カメラ1000で利用することができる日付のフォーマットを示す。
なお、TextOptionsフィールドに対応付けられたTimeFormatフィールドの値は、監視カメラ1000で利用することができる時刻のフォーマットを示す。
更に、テキストのフォントと背景の設定であるFontColorフィールドとBackgroundColorフィールドがあり、それぞれのTransparentフィールドの設定範囲を0〜2としている。これにより、テキストのフォント及びテキストの背景のそれぞれに透過率を設定することができることがわかる。
又、FontColorフィールドとBackgroundColorフィールドでそれぞれColorフィールドが定義されていないが、暗黙の設定として、図4のフォントは黒、背景は白である。ImageOptionフィールドの詳細は、省略されている。
なお、本実施例における、図11のレスポンスは、OSD画像のテキスト及びこのテキストの背景のそれぞれについて透過率を設定することができるか否かを示す透過率情報に相当する。
又、本実施例では、FontColorフィールドに対応付けられたTransparetフィールドは、OSD画像のテキスト(一部)につき、透過率を設定することができるか否かを示す情報に相当する。
例えば、GetOSDOptionsのレスポンスは、このTransparentフィールドが省略された場合に、OSD画像のテキストに透過率を設定できないことを示す。又、このTransparentフィールドは、このTransparentフィールドに対応付けられたMinフィールド及びMaxフィールドのそれぞれの値が0で一致する場合には、OSD画像のテキストに透過率を設定できないことを示す。
そして、このTransparentフィールドは、このTransparentフィールドに対応付けられたMinフィールド及びMaxフィールドのそれぞれの値が一致しない場合には、OSD画像のテキストに透過率を設定できることを示す。なお、このMaxフィールドの値は、このMinフィールドの値より大きく、0を上回っているものとする。
又、本実施例では、BackgroundColorフィールドに対応付けられたTransparentフィールドは、OSD画像のテキストの背景(他の部分)につき、透過率を設定することができるか否かを示す情報に相当する。
例えば、GetOSDOptionsのレスポンスは、このTransparentフィールドが省略された場合に、OSD画像のテキストの背景に透過率を設定できないことを示す。又、このTransparentフィールドは、このTransparentフィールドに対応付けられたMinフィールド及びMaxフィールドのそれぞれの値が0で一致する場合には、OSD画像のテキストの背景に透過率を設定できないことを示す。
そして、このTransparentフィールドは、このTransparentフィールドに対応付けられたMinフィールド及びMaxフィールドのそれぞれの値が一致しない場合には、OSD画像のテキストの背景に透過率を設定できることを示す。なお、このMaxフィールドの値は、このMinフィールドの値より大きく、0を上回っているものとする。
又、本実施例における図11のレスポンスでは、ImageOptionフィールドにTransparentフィールドが対応付けられていない。これにより、このレスポンスにおいて、ImagePathフィールドに対応する情報により示される場所に格納された画像に透過率を設定することができないこと、が示される。
続いて、図12は、本実施例における、重畳画像設定画面(即ち、OSDConfigurationOptionsパラメータ設定画面)の表示例である。この表示例は、図11で示したGetOSDConfigurationOptionsのレスポンスをクライアント装置2000が受信した場合における、表示例である。なお、図12で示した画面は、表示部2002に表示されるものとする。
図12において、10000は、OSDConfigurationOptionsの設定ウィンドウである。この設定ウィンドウを作成するとき、クライアント装置2000から監視カメラ1000に対して、図7のトランザクション6050から6054が処理される。
図12における10001は、図11で示されたMaximumNumberOfOSDsフィールドに対応するOSD毎のタブである。10001に対応するタブは、MaximumNumbersOfOSDsフィールドの値の数だけ表示される。例えば、図11では、MaximumNumberOfOSDsフィールドには、3が対応付けられている。この場合、10001のタブは、3つ表示されることになる。
10002は、Typeフィールドを選択するためのラジオボタンである。例えば、図11では、Typeフィールドには、Text及びImageが対応付けられている。この場合、ユーザは、ラジオボタン10002を操作することにより、「Text」及び「Image」のいずれか一方を選択することができる。
なお、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、TypeフィールドにTextのみが対応付けられている場合もあり得る。この場合、ユーザは、ラジオボタン10002を操作することにより、「Text」のみを選択することができ、「Image」を選択することはできない。
同様に、画像重畳設定のパラメータにおいて、TypeフィールドにImageのみが対応付けられている場合もあり得る。この場合、ユーザは、ラジオボタン10002を操作することにより、「Image」のみを選択することができ、「Text」を選択することはできない。
又、10003は、PositionOptionフィールドを設定するためのドロップダウンリストである。ドロップダウンリスト10003は、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、PositionOptionフィールドに対応付けられた値を表示する。
例えば、図11では、PositionOptionフィールドには、LowerRightが対応付けられている。この場合、ドロップダウンリスト10003は、LowerRightを表示する。
又、例えば、クライアント装置2000が受信した画像重畳設定のパラメータにて、PostionOptionフィールドには、次の値が対応付けられているものとする。即ち、LowerRight、LowerLeft、UpperRight、UpperLeft、及びCustomである。
この場合、ドロップダウンリスト10003は、LowerRight、LowerLeft、UpperRight、UpperLeft、Customを表示する。
そして、10004は、TextOptionフィールドである。更に、10005は、TextOptionフィールドのTypeフィールドを選択するためのラジオボタンである。より詳細には、このラジオボタン10005は、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、TextOptionフィールドに対応するTypeフィールドに対応付けられた値のいずれか一つを選択するためのものである。
例えば、図11では、TextOptionフィールドに対応するTypeフィールドには、Plain、Date、及びTimeが対応付けられている。この場合、ユーザは、ラジオボタン10005を操作することにより、「Plain Text」、「Data」、及び「Time」のいずれか一つを選択することができる。
10006は、FontSizeフィールドに対応する値を入力するためのテキストボックスである。より詳細には、このテキストボックス10006は、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、FontSizeフィールドに対応付けられた値を入力するためのものである。
例えば、図11では、FontSizeフィールドが省略されている。この場合、テキストボックス10006は、入力範囲ゼロとして入力無効になっている。これにより、ユーザは、図12の画面における、テキストボックス10006に値を入力することができなくなる。
又、例えば、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、FontSizeフィールドに値が対応付けられている場合もあり得る。この場合、テキストボックス10006は、入力可能となる。これにより、ユーザは、図12の画面におけるテキストボックス10006に値を入力することができるようになる。
次に、10007は、DataFormatフィールドを設定するためのドロップダウンリストである。ドロップダウンリスト10007は、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、DateFormatフィールドに対応付けられた値を表示する。
例えば、図11では、DateFormatフィールドには、yyyy/MM/ddが対応付けられている。この場合、ドロップダウンリスト10007は、「yyyy/MM/dd」を表示する。
又、例えば、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、DateFormatフィールドに、yyyyMMdd、及びyyyy/MM/ddが対応付けられている場合もあり得る。この場合、ドロップダウンリスト10007は、「yyyyMMdd」、及び「yyyy/MM/dd」を一覧表示する。
又、10008は、TimeFormatフィールドを設定するためのドロップダウンリストである。ドロップダウンリスト10008は、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、TimeFormatに対応付けられた値を表示する。
例えば、図11では、TimeFormatフィールドには、HH:mm:ssが対応付けられている。この場合、ドロップダウンリスト10008は、「HH:mm:ss」を表示する。
10009は、FontColorフィールドである。次に、10010は、FontColorフィールドに対応付けられたColorフィールドを設定するためのColorフィールドである。このColorフィールド10010は、ドロップダウンリスト、及び3つのテキストボックスから構成される。
これらのドロップタウンリスト及び3つのテキストボックスは、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、FontColorフィールドに対応付けられたColorフィールドの値を表示する。
例えば、図11では、FontColorフィールドに対応するColorフィールドが省略されている。この場合、Colorフィールド10010を構成するドロップダウンリスト及び3つのテキストボックスは、入力無効になっている。これにより、ユーザは、図12の画面における、Colorフィールド10010を構成するドロップダウンリスト及び3つのテキストボックスに値を入力することができなくなる。
又、例えば、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、FontColorフィールドに値が対応付けられている場合もあり得る。この場合、Colorフィールド10010を構成するドロップダウンリスト及び3つのテキストボックスは、入力可能となる。これにより、ユーザは、図12の画面における、これらのドロップダウンリスト及び3つのテキストボックスに値を入力することができるようになる。
そして、10011は、FontColorフィールドのTransparentフィールドに対応する値を入力するためのテキストボックスである。より詳細には、このテキストボックス10011は、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、FontColorフィールドに対応付けられたTransparentフィールドに対応する値を入力するためのものである。
例えば、図11では、FontColorフィールドに対応するTransparentフィールドには、値が「0」のMinフィールド、及び値が「2」のMaxフィールドが対応付けられている。この場合、テキストボックス10011では、入力範囲が0〜2と表示される。更に、ユーザは、図12の画面におけるテキストボックス10011に値を入力することができる。
10012は、BackgroundColorフィールドである。次に、10013は、BackgroundColorフィールドに対応付けられたColorフィールドを設定するためのColorフィールドである。このColorフィールド10013は、ドロップダウンリスト及び3つのテキストボックスから構成される。
これらのドロップタウンリスト及び3つのテキストボックスは、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、BackgroundColorフィールドに対応付けられたColorフィールドの値を表示する。
例えば、図11では、BackgroundColorフィールドに対応するColorフィールドが省略されている。この場合、Colorフィールド10013を構成するドロップダウンリスト及び3つのテキストボックスは、入力無効になっている。これにより、ユーザは、図12の画面における、Colorフィールド10013を構成するドロップダウンリスト及び3つのテキストボックスに値を入力することができなくなる。
又、例えば、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、BackgroundColorフィールドに値が対応付けられている場合もあり得る。この場合、Colorフィールド10013を構成するドロップダウンリスト及び3つのテキストボックスは、入力可能となる。
これにより、ユーザは、図12の画面における、これらのドロップダウンリスト及び3つのテキストボックスに値を入力することができるようになる。
図11では、Transparentフィールドは、Min値が0で、Max値が2であるから、入力範囲が0〜2と表示されている。
そして、10014は、BackgroundColorフィールドのTransparentフィールドに対応する値を入力するためのテキストボックスである。より詳細には、このテキストボックス10014は、クライアント装置2000が受信した画像重畳設定のパラメータにて、BackgroundColorフィールドに対応付けられたTransparentフィールドに対応する値を入力するためのものである。
例えば、図11では、BackgroundColorフィールドに対応するTransparentフィールドには、値が「0」のMinフィールド、及び値が「2」のMaxフィールドが対応付けられている。この場合、テキストボックス10014では、入力範囲が0〜2と表示される。更に、ユーザは、図12の画面におけるテキストボックス10014に値を入力することができる。
10015は、ImageOptionフィールドに対応する値を入力するためのImageOptionフィールドである。このImageOptionフィールド10015は、クライアント装置2000が受信した画像重畳設定のパラメータにて、ImageOptionフィールドに対応するImagePathフィールドに対応する値を入力するためのテキストボックスを含む。
例えば、図11では、ImageOptionフィールドに対応付けられたImagePathフィールドに対応する値が省略されている。この場合、ImageOptionフィールド10015に含まれるテキストボックスは、入力無効になっている。これにより、ユーザは、図12の画面における、ImageOptionフィールドに値を入力することができなくなる。
又、例えば、クライアント装置2000が受信した画像重畳設定のパラメータにおいて、ImagePathフィールドに値が対応付けられている場合もあり得る。この場合、ImageOptionフィールド10015に含まれるテキストボックスは、入力可能になっている。これにより、ユーザは、図12の画面における、ImageOptionフィールドに値を入力することができる。
なお、本実施例では、ユーザは、画像が格納された場所を示す情報を、ImagePathフィールドに入力することができる。又、この情報は、画像情報に相当する。
10016はOSDConfigurationOptionsの設定ボタンである。この設定ボタンを押すと、クライアント装置2000から監視カメラ1000へ画像重畳設定変更のトランザクション6057が処理され、設定ウィンドウは閉じられる。
10017は、OSDConfigurationOptionsの適用ボタンである。適用ボタンを押すと、クライアント装置2000から監視カメラ1000へ画像重畳設定変更のトランザクション6057が処理され、設定ウィンドウは閉じない。
10018は、OSDConfigurationOptionsの設定変更のキャンセルボタンである。このキャンセルボタンを押すと、クライアント装置2000から監視カメラ1000へ画像重畳設定変更のトランザクション6057を実行せず、設定ウィンドウは閉じられる。
続いて、図13は、クライアント装置2000における、重畳画像設定画面の表示処理を示すフローチャートである。即ち、図13は、画像重畳設定取得要求のトランザクション6054で取得されたFontColorフィールドのパラメータを図12のUI(ユーザーインターフェース)へ反映するときの処理のフローチャートである。なお、本処理は、制御部2005により実行される。
ステップS11001では、制御部2005は、通信部2004で受信されたGetOSDOptionsのレスポンスに、FontColorフィールドに対応付けられたTransparentフィールドが記述されているか否かを判定する。ここで、通信部2004で受信されたGetOSDOptionsのレスポンスは、記憶部2006に記憶されているものとする。
そして、制御部2005は、このレスポンスに、FontColorフィールドに対応付けられたTransparentフィールドが記述されていると判定した場合には、ステップS11002に処理を進める。一方、制御部2005は、このレスポンスに、FontColorフィールドに対応付けられたTransparentフィールドが記述されていないと判定した場合には、ステップS11011に処理を進める。
ステップS11002では、制御部2005は、通信部2004で受信されたGetOSDOptionsのレスポンスにおいて、FontColorフィールドに対応付けられたTransparentフィールドを取得する。より詳細には、制御部2005は、通信部2004で受信されたGetOSDOptionsのレスポンスにおける、FontoColorフィールドに対応付けられたTransparentフィールドを、記憶部2006から読み出す。
ステップS11003では、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドにMinフィールドが含まれているか否かを判定する。そして、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドにMinフィールドが含まれていると判定した場合には、ステップS11004に処理を進める。
一方、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドにMinフィールドが含まれていないと判定した場合には、ステップS11005に処理を進める。
ステップS11004では、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドに対応付けられたMin値を取得する。
例えば、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドに対応付けられたMinフィールドに対応付けられた値を記憶部2006から読み出す。そして、制御部2005は、読み出した値をFontColorのTransparentのMin値として、記憶部2006に記憶させる。
ステップS11005では、制御部2005は、「0」をFontColorのTransparentのMin値として記憶部2006に記憶させる。
ステップS11006では、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドに対応付けられたMaxフィールドが含まれているか否かを判定する。
そして、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドにMaxフィールドが含まれていると判定した場合には、ステップS11007に処理を進める。
一方、制御部2005は、ステップS11002で取得したFontColorフィールドのTransparentフィールドにMaxフィールドが含まれていないと判定した場合には、ステップS11011に処理を進める。
ステップS11007では、制御部2005は、ステップS11002で取得されたFontColorフィールドのTransparentフィールドのMax値を取得する。
例えば、制御部2005は、ステップS11002で取得されたFontColorフィールドのTransparentフィールドに対応付けられたMaxフィールドに対応付けられた値を記憶部2006から読み出す。そして、制御部2005は、読み出した値をFontColorのTransparentのMax値として、記憶部2006に記憶させる。
ステップS11008では、制御部2005は、ステップS11007で取得したFontColorフィールドのTransparentフィールドに対応付けられたMax値が0以上であるか否かを判定する。
そして、制御部2005は、ステップS11007で取得したFontColorフィールドのTransparentフィールドに対応付けられたMax値が0以上であると判定した場合には、ステップS11009に処理を進める。
一方、制御部2005は、ステップS11007で取得したFontColorフィールドのTransparentフィールドに対応付けられたMax値が0以上ではないと判定した場合には、ステップS11011に処理を進める。なお、制御部2005は、ステップS11011に処理を進めるとともに、通信部2004に指示し、エラーレスポンスをクライアント装置2000に送信させても良い。
ステップS11009では、制御部2005は、図12の画面における10011の入力範囲を表示部2002に表示させる。
具体的には、制御部2005は、FontColorのTransparentのMin値を記憶部2006から読み出し、読み出したMin値を図12の10011の最小値として、表示部2002に表示させる。又、制御部2005は、FontColorのTransparentのMax値を記憶部2006から読み出し、読み出したMax値を図12の10011の最大値として、表示部2002に表示させる。
ステップS11010では、制御部2005は、図12の画面における10011に対応するテキストボックスを有効にする。これにより、ユーザは、図12の画面における、10011に対応するテキストボックスに値を入力することができるようになる。
ステップS11011では、制御部2005は、図12の画面における10011の入力範囲を表示部2002に表示させる。具体的には、制御部2005は、図12の10011の入力範囲として0を表示部2002に表示させる。
ステップS11012では、制御部2005は、図12の画面における10011に対応するテキストボックスを無効にする。これにより、ユーザは、図12の画面における、10011に対応するテキストボックスに値を入力することができなくなる。
なお、図11におけるフィールドの内、FontColorのTransparentフィールド以外のフィールドを図12の画面に反映する際も、図13のフローチャートと同様のフローチャートが適用される。
例えば、FontColorのTransparentフィールドとともにBackgroundColorのTransparentフィールドを、図12のUIへ反映する場合について、図13のフローチャートを用いて説明する。なお、以下の説明では、FontColorのTransparentフィールドを図12のUIへ反映する処理については省略する。
ステップS11001では、制御部2005は、通信部2004で受信されたGetOSDOptionsのレスポンスに、BackgroundColorフィールドに対応付けられたTransparentフィールドが記述されているか否かを判定する。ここで、通信部2004で受信されたGetOSDOptionsのレスポンスは、記憶部2006に記憶されているものとする。
そして、制御部2005は、このレスポンスに、BackgroundColorフィールドに対応付けられたTransparentフィールドが記述されていると判定した場合には、ステップS11002に処理を進める。
一方、制御部2005は、このレスポンスに、BackgroundColorフィールドに対応付けられたTransparentフィールドが記述されていないと判定した場合には、ステップS11011に処理を進める。
ステップS11002では、制御部2005は、通信部2004で受信されたGetOSDOptionsのレスポンスにおいて、BackgroundColorフィールドに対応付けられたTransparentフィールドを取得する。
より詳細には、制御部2005は、通信部2004で受信されたGetOSDOptionsのレスポンスにおいて、BackgroundColorフィールドに対応付けられたTransparentフィールドを、記憶部2006から読み出す。
ステップS11003では、制御部2005は、ステップS11002で取得したBackgroundColorフィールドのTransparentフィールドにMinフィールドが含まれているか否かを判定する。
そして、制御部2005は、ステップS11002で取得したBackgroundColorフィールドのTransparentフィールドにMinフィールドが含まれていると判定した場合には、ステップS11004に処理を進める。
一方、制御部2005は、ステップS11002で取得したBackgroundColorフィールドのTransparentフィールドにMinフィールドが含まれていないと判定した場合には、ステップS11005に処理を進める。
ステップS11004では、制御部2005は、ステップS11002で取得されたBackgroundColorフィールドのTransparentフィールドに対応付けられたMin値を取得する。
例えば、制御部2005は、ステップS11002で取得されたBackgroundColorフィールドのTransparentフィールドに対応付けられたMinフィールドに対応付けられた値を記憶部2006から読み出す。そして、制御部2005は、読み出した値をBackgroundColorのTransparentのMin値として、記憶部2006に記憶させる。
ステップS11005では、制御部2005は、「0」をBackgroundColoroのTransparentのMin値として記憶部2006に記憶させる。
ステップS11006では、制御部2005は、ステップS11002で取得したBackgroundColorフィールドのTransparentフィールドにMaxフィールドが含まれているか否かを判定する。
そして、制御部2005は、ステップS11002で取得したBackgroundColorフィールドのTransparentフィールドにMaxフィールドが含まれていると判定した場合には、ステップS11007に処理を進める。
一方、制御部2005は、ステップS11002で取得したBackgroundColorフィールドのTransparentフィールドにMaxフィールドが含まれていないと判定した場合には、ステップS11011に処理を進める。
ステップS11007では、制御部2005は、ステップS11002で取得されたBackgroundColorフィールドのTransparentフィールドに対応付けられたMax値を取得する。
例えば、制御部2005は、ステップS11002で取得されたBackgroundColorフィールドのTransparentフィールドに対応付けられたMaxフィールドに対応付けられた値を記憶部2006から読み出す。そして、制御部2005は、読み出した値をBackgroundColorのTransparentのMax値として、記憶部2006に記憶させる。
ステップS11008では、制御部2005は、ステップS11007で取得したBackgroundColorのTransparentのMax値が0以上であるか否かを判定する。そして、制御部2005は、ステップS11007で取得したBackgroundColorのTransparentのMax値が0以上であると判定した場合には、ステップS11009に処理を進める。
一方、制御部2005は、ステップS11007で取得したBackgroundColorのTransparentのMax値が0以上ではないと判定した場合には、ステップS11011に処理を進める。なお、制御部2005は、ステップS11011に処理を進めるとともに、通信部2004に指示し、エラーレスポンスをクライアント装置2000に送信させても良い。
ステップS11009では、制御部2005は、図12の画面における10014の入力範囲を表示部2002に表示させる。
具体的には、制御部2005は、BackgroundColorのTransparentのMin値を記憶部2006から読み出し、読み出したMin値を図12の10014の最小値として、表示部2002に表示させる。又、制御部2005は、BackgroundColorのTransparentのMax値を記憶部2006から読み出し、読み出したMax値を図12の10014の最大値として、表示部2002に表示させる。
ステップS11010では、制御部2005は、図12の画面における10014に対応するテキストボックスを有効にする。これにより、ユーザは、図12の画面における、10014に対応するテキストボックスに値を入力することができるようになる。
ステップS11011では、制御部2005は、図12の画面における10014の入力範囲を表示部2002に表示させる。具体的には、制御部2005は、図12の10014の入力範囲として0を表示部2002に表示させる。
ステップS11012では、制御部2005は、図12の画面における10014に対応するテキストボックスを無効にする。これにより、ユーザは、図12の画面における、10014に対応するテキストボックスに値を入力することができなくなる。
以上、本実施例では、監視カメラ1000は、OSD画像のテキスト及びこのテキストの背景のそれぞれについて透過率を設定することができるか否かを示すGetOSDOptionsコマンドのレスポンスを、クライアント装置2000に送信する。
これにより、クライアント装置2000は、監視カメラ1000により重畳されるOSD画像に含まれるテキスト及びこのテキストの背景のそれぞれについて透過率を設定することができるか否かを、把握することができるようになる。
例えば、OSD画像に透過率を設定できない監視カメラA、OSD画像の全体に透過率を設定できる監視カメラB、及び、OSD画像のテキスト及びこのテキストの背景のそれぞれについて透過率を設定できる監視カメラCが存在する場合を想定する。
このような想定の場合でも、本実施例の監視カメラによれば、クライアント装置2000は、監視カメラA乃至Cのうち、どの監視カメラがOSD画像のテキスト及びこのテキストの背景のそれぞれについて透過率を設定できる監視カメラなのかを把握できる。
なお、本実施例では、画像処理部1003が出力した撮像画像に、OSD生成部1007が出力したOSD画像を合成するよう、圧縮符号化部1004を構成したが、これに限るものではない。例えば、画像処理部1003が出力した撮像画像に、通信部1005がクライアント装置2000から受信した画像を合成するよう、圧縮符号化部1004を構成しても良い。
又、本実施例では、図11におけるTextOptionフィールドのTypeフィールドを選択するためのラジオボタン10005が表示されるよう、図12の画面を構成した。更に、ラジオボタン10005でPlainTextが選択された場合には、このPlainTextに対応するテキストを入力するためのテキストボックスが表示されるように、図12の画面を構成しても良い。
又、本実施例では、OSD画像を重畳情報の例として説明した。しかしながら、重畳情報は、OSD画像に限られるものではない。例えば、重畳情報は、マスク画像であっても良い。ここで、マスク画像とは、撮像画像に含まれる被写体の所定部分を見難くするための画像である。
又、本実施例では、図11で示したパラメータの構成において、FontColorフィールドに対応付けられたTransparentフィールドには、値が「0」のMinフィールドと値が「2」のMaxフィールドとが対応付けられている。これにより、FontColorフィールドに対応付けられたTransparentフィールドの値を所定の範囲(0〜2)に制限していることが示される。
なお、このTransparentフィールドの値がこのTransparentフィールドに対応付けられたMinフィールドの値である場合に、OSD画像に含まれるテキストの透過率は、最も低くなる。そして、このTransparentフィールドの値がMinフィールドの値より大きくなるに連れて、OSD画像に含まれるテキストの透過率は、高くなる。
同様に、本実施例では、図11で示したパラメータの構成において、BackgroundColorフィールドに対応付けられたTransparentフィールドには、値が「0」のMinフィールドと値が「2」のMaxフィールドとが対応付けられている。これにより、BackgroundColorフィールドに対応付けられたTransparentフィールドの値を所定の範囲(0〜2)に制限していることが示される。
なお、このTransparentフィールドの値がこのTransparentフィールドに対応付けられたMinフィールドの値である場合に、OSD画像に含まれるテキストの背景の透過率は、最も低くなる。そして、このTransparentフィールドの値がMinフィールドの値より大きくなるに連れて、OSD画像に含まれるテキストの背景の透過率は、高くなる。
又、本実施例では、図11で示したパラメータの構成において、FontColorフィールド及びBackgroundColorフィールドのそれぞれに対応付けられたTranparentフィールドの値の範囲が同じとなるように構成した。
しかしながら、このような構成に限られるものではない。例えば、FontColorフィールド及びBackgroundColorフィールドのそれぞれに対応付けられたTransparentフィールドの値の範囲が異なるように構成しても良い。
又、本実施例における監視カメラ1000に対し、半球形状に形成されたドームカバーを追加しても良い。このドームカバーは、透明性を有し、半球形状に形成されるものとする。更に、このドームカバーは、レンズ1001等を覆うものとする。
なお、図3は、OSD画像のテキスト及びこのテキストの背景のそれぞれの透過率を別々に設定することができる監視カメラCにおける、撮像画像とOSD画像との合成処理を説明するためのフローチャートである。
ここで、例えば、OSD画像に透過率を設定することができない監視カメラAにおける、撮像画像とOSD画像とを合成する処理を、図3(a)を用いて説明する。このような監視カメラAにおけるステップS3001乃至S3003は、監視カメラCにおけるステップS3001乃至S3003と同様であるので、その説明を省略する。
このような監視カメラAにおけるステップS3004では、制御部1008は、OSD生成部1007に指示し、OSD画像をビットマップデータとして生成させる。このOSD画像は、ステップS3001で受信されたOSD設定情報で指定された色などに応じたものである。但し、このOSD画像は、ステップS3001で受信されたOSD設定情報で指定された透過率に応じたものではない。
そして、制御部1008は、図3(b)のOSD画像生成処理を実行することなく、ステップS3005に処理を進める。なお、監視カメラAにおけるステップS3005は、監視カメラCにおけるステップS3005と同様であるので、その説明を省略する。
又、例えば、OSD画像の全体に透過率を設定することができる監視カメラBにおける、撮像画像とOSD画像とを合成する処理を、図3を用いて説明する。このような監視カメラBにおけるステップS3001乃至S3005は、監視カメラCにおけるステップS3001乃至S3005と同様であるので、その説明を省略する。
そして、このような監視カメラBにおけるステップS3101では、制御部1008は、ステップS3001で生成されたOSD設定情報で指定されたOSD画像全体の透過率を判別する。
ここで、例えば、OSD画像全体の透過率が3段階ある場合を想定する。このように想定した場合、制御部1008は、ステップS3001で受信されたOSD設定情報で指定されたOSD画像全体の透過率が0である場合には、ステップS3102に処理を進める。又、制御部1008は、ステップS3001で受信されたOSD設定情報で指定されたOSD画像全体の透過率が1である場合には、ステップS3103に処理を進める。
そして、制御部1008は、ステップS3001で受信されたOSD設定情報で指定されたOSD画像全体の透過率が2である場合には、ステップS3104に処理を進める。
監視カメラBにおけるステップS3102では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像の全体が撮像画像に100%ブレンドされるよう、このOSD画像を生成させる。これにより、画像処理部1003から出力された撮像画像は、生成されたOSD画像の全体の下から透けて見えるように表示されることはない。
監視カメラBにおけるステップS3103では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像の全体が撮像画像に50%ブレンドされるよう、このOSD画像を生成させる。これにより、画像処理部1003から出力された撮像画像は、生成されたOSD画像の全体の下から透けて見えるように表示され得る。
監視カメラBにおけるステップS3104では、制御部1008は、OSD生成部1007に指示し、圧縮符号化部1004にてOSD画像の全体が撮像画像にブレンドされないよう、このOSD画像を生成させる。これにより、画像処理部1003から出力された撮像画像には、生成されたOSD画像の全体が重畳されることはない。
そして、制御部1008は、ステップS3102、ステップS3103、及びステップS3104のいずれかの処理の終了後、ステップS3105に処理を進めることなく、図3(b)のOSD画像生成処理を終了する。
又、本実施例では、ステップS3101にて、ステップS3001で受信されたOSD設定情報で指定されたフォントの透過率が0である場合には、ステップS3102に処理を進めるように、制御部1008を構成した。更に、ステップS3101にて、この透過率が1である場合には、ステップS3103に処理を進め、この透過率が2である場合には、ステップS3104に処理を進めるように、制御部1008を構成した。
しかし、このような構成に限られるものではない。例えば、ステップS3101にて、この透過率が0.5を下回っている場合には、ステップS3102に処理を進め、この透過率が0.5以上且つ1.5を下回っている場合には、ステップS3103に処理を進めるように、制御部1008を構成しても良い。更に、この透過率が1.5以上である場合には、ステップS3104に処理を進めるように、制御部1008を構成しても良い。
又、本実施例では、ステップS3105にて、ステップS3001で受信されたOSD設定情報で指定された背景の透過率が0である場合には、ステップS3106に処理を進めるように、制御部1008を構成した。更に、ステップS3105にて、この透過率が1である場合には、ステップS3107に処理を進め、この透過率が2である場合には、ステップS3108に処理を進めるように、制御部1008を構成した。
しかし、このような構成に限られるものではない。例えば、ステップS3105にて、この透過率が0.5を下回っている場合には、ステップS3106に処理を進め、この透過率が0.5以上且つ1.5を下回っている場合には、ステップS3107に処理を進めるように、制御部1008を構成しても良い。更に、この透過率が1.5以上である場合には、ステップS3108に処理を進めるように、制御部1008を構成しても良い。
又、本実施例では、FontColorフィールド及びBackgroundColorフィールドを図11のレスポンスに記述するようにしたが、これに限られるものではなない。
例えば、図11のレスポンスにおいて、図5(b)におけるデータエリア5005に対応するExtentionColorフィールドを記述するようにしても良い。このExtentionColorフィールドは、データエリア5005の透過率や色を設定するためのものである。
更に、図11のレスポンスにおいて、このExtentionColorフィールドにTransparentフィールドを対応付けて記述するように構成しても良い。更に、このTransparentフィールドにMaxフィールド及びMinフィールドのそれぞれを対応付けて記述するようにしても良い。例えば、このMaxフィールドの値は、2とし、同様に、このMinフィールドの値は、2とするようにしても良い。
更に、図11のレスポンスにおいて、このExtentionColorフィールドにTransparentフィールドを対応付けて記述するように構成しても良い。
又、本実施例では、図5(b)で述べたように、アウトラインをOSD画像に含まれる背景の一部としたが、これに限られるものではない。例えば、このアウトラインを、OSD画像に含まれるテキスト及びこのテキストの背景と、別々に取り扱えるように構成しても良い。
例えば、このアウトラインに色や透過率を設定することができるように、図11のレスポンスにおいて、OutlineColorフィールドを記述するように構成するようにしても良い。例えば、このOutlineColorフィールドにTransparentフィールドを対応付けて記述することにより、このアウトラインに透過率を設定することができるように構成しても良い。
更に、図11のレスポンスにおいて、TransparentフィールドにMaxフィールド及びMinフィールドのそれぞれを対応付けて記述するように構成しても良い。例えば、このMinフィールドの値は0にし、このMaxフィールドの値は1にしても良い。又、このOutlineフィールドにColorフィールドを対応付けて記述することで、このアウトラインに色を設定することができるように構成しても良い。
(その他の実施例)
又、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
以上、本発明の好ましい実施例について説明したが、本発明はこれらの実施例に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。