JP2015041960A - 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム - Google Patents

撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム Download PDF

Info

Publication number
JP2015041960A
JP2015041960A JP2013173363A JP2013173363A JP2015041960A JP 2015041960 A JP2015041960 A JP 2015041960A JP 2013173363 A JP2013173363 A JP 2013173363A JP 2013173363 A JP2013173363 A JP 2013173363A JP 2015041960 A JP2015041960 A JP 2015041960A
Authority
JP
Japan
Prior art keywords
unit
imaging
output
superimposition
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013173363A
Other languages
English (en)
Inventor
康宏 川和
Yasuhiro Kawakazu
康宏 川和
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013173363A priority Critical patent/JP2015041960A/ja
Priority to US14/463,529 priority patent/US9571729B2/en
Publication of JP2015041960A publication Critical patent/JP2015041960A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/183Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Studio Devices (AREA)
  • Alarm Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】 重畳情報の量に応じて適切に当該重畳情報を画像に重畳可能な撮像装置等を提供する。
【解決手段】 被写体を撮像する撮像部1002と、クライアント装置2000からIPネットワーク網1500を介して重畳情報を受信する通信部1005と、通信部1005により受信された重畳情報が第1の量よりも大きいか否かを判定する制御部1008と、制御部1008により大きいと判定された場合には、通信部1005により受信された重畳情報の一部を出力し、制御部1008により大きくないと判定された場合には、通信部1005により受信された重畳情報を出力するOSD生成部1007と、OSD生成部1007により出力された重畳情報を、撮像部1002により撮像された撮像画像に重畳する圧縮符号化部1004と、を備える監視カメラ1000。
【選択図】 図12

Description

本発明は、撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラムに関するものである。特に、撮像画像に画像等の情報を重畳可能な技術に関する。
従来、画像における所定の位置に所定の文字、図形等の重畳情報を重畳する重畳機能が知られている。例えば、画像において固定された位置にOSD画像が表示されるOnScreenDisplay(以下、OSDと称する場合がある)機能等が知られている。
特許文献1には、OSD表示用の制御コマンドデータをインターフェース用ケーブルに出力する映像機器と、このインターフェース用ケーブルに出力された制御コマンドデータを受信する映像機器と、が開示されている。
特開平9−163258号公報
ところで、重畳機能が搭載された装置に入力される重畳情報の量は、様々である。このため、量が多すぎる重畳情報の場合、この重畳情報をこの装置に設定することができない場合があった。更に、この装置にこの重畳情報を設定することはできても、この重畳情報の全てが画像に重畳されるとは限らなかった。
例えば、ユーザは、最大16文字の文字列を設定することができる装置に、30字の文字列を設定することができなかった。更に、この装置に16文字の文字列を設定することはできても、画像のサイズが小さすぎると、この16文字の文字列全てがこの画像に重畳されるとは限らなかった。
本発明は、上記のような点に鑑みてなされたものである。即ち、重畳情報の量に応じて適切に当該重畳情報を画像に重畳可能な、撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラムを提供することができるものである。
上記目的を達成するために、本発明の撮像装置は、被写体を撮像する撮像手段と、外部装置からネットワークを介して重畳情報を受信する受信手段と、前記受信手段により受信された重畳情報が第1の量よりも大きいか否かを判定する判定手段と、前記判定手段により大きいと判定された場合には、前記受信手段により受信された重畳情報の一部を出力し、前記判定手段により大きくないと判定された場合には、前記受信手段により受信された重畳情報を出力する出力手段と、前記出力手段により出力された重畳情報を、前記撮像手段により撮像された撮像画像に重畳する重畳手段と、前記重畳手段により重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信手段と、を備える。
又、上記目的を達成するために、本発明の撮像装置は、被写体を撮像する撮像手段と、外部装置からネットワークを介して重畳情報を受信する受信手段と、前記受信手段により受信された重畳情報が第一の量よりも大きいか否かを判定する第一の判定手段と、前記第一の判定手段により大きいと判定された場合には、前記受信手段により受信された重畳情報の一部を出力し、前記第一の判定手段により大きくないと判定された場合には、前記受信手段により受信された重畳情報を出力する出力手段と、前記出力手段により出力された重畳情報が第二の量よりも大きいか否かを判定する第二の判定手段と、前記二の判定手段により大きいと判定された場合には、前記出力手段により出力された重畳情報の一部を生成し、前記第二の判定手段により大きくないと判定された場合には、前記出力手段により出力された重畳情報を生成し、前記生成手段により生成された重畳情報を、前記撮像手段により撮像された撮像画像に重畳する重畳手段と、を備える。
又、上記目的を達成するために、本発明の外部装置は、被写体を撮像する撮像部と、ネットワークを介して重畳情報を受信する受信部と、前記受信部により受信された重畳情報が第1の量よりも大きいか否かを判定する判定部と、前記判定部により大きいと判定された場合には、前記受信部により受信された重畳情報の一部を出力し、前記判定部により大きくないと判定された場合には、前記受信部により受信された重畳情報を出力する出力部と、前記出力部により出力された重畳情報を、前記撮像部により撮像された撮像画像に重畳する重畳部と、前記重畳部により重畳された撮像画像を、ネットワークを介して配信する配信部と、を備える撮像装置と、ネットワークを介して通信可能な外部装置であって、前記第一の量を前記撮像装置からネットワークを介して取得する取得手段、を備えることを特徴とする。
又、上記目的を達成するために、本発明の撮像システムは、外部装置と、前記外部装置とネットワークを介して通信可能な撮像装置と、を含む撮像システムであって、前記外部装置は、前記撮像装置にネットワークを介して重畳情報を送信する送信手段、を備え、前記撮像装置は、被写体を撮像する撮像手段と、前記送信手段により送信された重畳情報が第1の量よりも大きいか否かを判定する判定手段と、前記判定手段により大きいと判定された場合には、前記送信手段により送信された重畳情報の一部を出力し、前記判定手段により大きくないと判定された場合には、前記送信手段により送信された重畳情報を出力する出力手段と、前記出力手段により出力された重畳情報を、前記撮像手段により撮像された撮像画像に重畳する重畳手段と、前記重畳手段により重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信手段と、を備えることを特徴とする。
又、上記目的を達成するために、本発明の撮像装置の制御方法は、被写体を撮像する撮像ステップと、外部装置からネットワークを介して重畳情報を受信する受信ステップと、前記受信ステップにて受信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、前記判定ステップにて大きいと判定された場合には、前記受信ステップにて受信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記受信ステップにて受信された重畳情報を出力する出力ステップと、前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、前記重畳手段にて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、を備える。
又、上記目的を達成するために、本発明の外部装置の制御方法は、被写体を撮像する撮像部と、ネットワークを介して重畳情報を受信する受信部と、前記受信部により受信された重畳情報が第1の量よりも大きいか否かを判定する判定部と、前記判定部により大きいと判定された場合には、前記受信部により受信された重畳情報の一部を出力し、前記判定部により大きくないと判定された場合には、前記受信部により受信された重畳情報を出力する出力部と、前記出力部により出力された重畳情報を、前記撮像部により撮像された撮像画像に重畳する重畳部と、前記重畳部により重畳された撮像画像を、ネットワークを介して配信する配信部と、を備える撮像装置と、ネットワークを介して通信可能な外部装置の制御方法であって、前記第一の量を前記撮像装置からネットワークを介して取得する取得ステップ、を備えることを特徴とする。
又、上記目的を達成するために、本発明の撮像システムの制御方法は、外部装置と、前記外部装置とネットワークを介して通信可能な撮像装置と、を含む撮像システムの制御方法であって、前記外部装置にて、前記撮像装置にネットワークを介して重畳情報を送信する送信ステップ、を備え、前記撮像装置にて、被写体を撮像する撮像ステップと、前記送信ステップにて送信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、前記判定ステップにより大きいと判定された場合には、前記送信ステップにて送信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記送信ステップにて送信された重畳情報を出力する出力ステップと、前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、前記重畳ステップにて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、を備えることを特徴とする。
又、上記目的を達成するために、本発明の撮像装置を制御するためのプログラムは、被写体を撮像する撮像ステップと、外部装置からネットワークを介して重畳情報を受信する受信ステップと、前記受信ステップにて受信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、前記判定ステップにて大きいと判定された場合には、前記受信ステップにて受信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記受信ステップにて受信された重畳情報を出力する出力ステップと、前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、前記重畳手段にて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、をコンピュータに実行させる。
又、上記目的を達成するために、本発明の外部装置を制御するためのプログラムは、被写体を撮像する撮像部と、ネットワークを介して重畳情報を受信する受信部と、前記受信部により受信された重畳情報が第1の量よりも大きいか否かを判定する判定部と、前記判定部により大きいと判定された場合には、前記受信部により受信された重畳情報の一部を出力し、前記判定部により大きくないと判定された場合には、前記受信部により受信された重畳情報を出力する出力部と、前記出力部により出力された重畳情報を、前記撮像部により撮像された撮像画像に重畳する重畳部と、前記重畳部により重畳された撮像画像を、ネットワークを介して配信する配信部と、を備える撮像装置と、ネットワークを介して通信可能な外部装置を制御するためのプログラムであって、前記第一の量を前記撮像装置からネットワークを介して取得する取得ステップ、をコンピュータに実行させることを特徴とする。
又、上記目的を達成するために、本発明の撮像システムを制御するためのプログラムは、外部装置と、前記外部装置とネットワークを介して通信可能な撮像装置と、を含む撮像システムを制御するためのプログラムであって、前記外部装置にて、前記撮像装置にネットワークを介して重畳情報を送信する送信ステップ、をコンピュータに実行させ、前記撮像装置にて、被写体を撮像する撮像ステップと、前記送信ステップにて送信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、前記判定ステップにより大きいと判定された場合には、前記送信ステップにて送信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記送信ステップにて送信された重畳情報を出力する出力ステップと、前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、前記重畳ステップにて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、
をコンピュータに実行させることを特徴とする。
本発明によれば、重畳情報の量に応じて適切に当該重畳情報を画像に重畳可能な、撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラムを提供することができるものである。
本発明の実施例1に係る監視カメラのハードウェア構成の一例を示す図である。 本発明の実施例1に係る監視カメラの一例、及び実施例1に係る監視システムのシステム構成の一例を示す図である。 本発明の実施例1に係る、撮像画像とOSD画像とを合成するための処理の一例を示す図である。 本発明の実施例1に係る、監視カメラ及びクライアント装置のコマンドシーケンスを説明するためのシーケンス図である。 本発明の実施例1に係る、監視カメラ及びクライアント装置のコマンドシーケンスを説明するためのシーケンス図である。 本発明の実施例1に係る、OSDConfiguration型の定義の一例を示す図である。 本発明の実施例1に係る、OSDConfigurationOptions型の定義の一例を示す図である。 本発明の実施例1に係る、OSDConfigurationOptions型の定義の一例を示す図である。 本発明の実施例1に係る、撮像画像とOSD画像とが合成された画像の一例を示す図である。 本発明の実施例1に係る、CreateOSDのコマンド、及びこのコマンドのレスポンスの構成の例を示す図である。 本発明の実施例1に係る、GetOSDコマンドのレスポンス、及びSetOSDコマンドの構成の例を示す図である。 本発明の実施例1に係る、重畳画像設定処理を示すフローチャートである。 本発明の実施例1に係る、重畳画像設定画面の表示例を示す図である。 本発明の実施例1に係る、クライアント装置のハードウェア構成を示す図である。
以下に、本発明の好ましい実施例を、添付の図面に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は、図示された構成に限定されるものではない。
(実施例1)
以下に、図2を参照して本実施例に係るネットワーク構成について説明する。
図2(a)は、本実施例に係る監視カメラの一例を示す図である。図2における監視カメラ1000は、レンズを含む筐体1101、及びアーム機構1102を備える。アーム機構1102は、監視カメラ1000を天井等の設置場所から吊り下げる。又、アーム機構1102は、筐体1101をパン方向及びチルト方向に回転させることにより監視カメラ1000の撮像方向を変更可能であり、且つこの撮像方向を固定することができる。
なお、本実施例における監視カメラ1000は、動画像を撮像する撮像装置であり、より詳細には、監視に用いられるネットワークカメラであるものとする。また、アーム機構1102には、筐体1101をパン方向に回転させるためのステッピングモータと、筐体1101をチルト方向に回転させるためのステッピングモータと、が設けられているものとする。
続いて、図2(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に送信する。
続いて、図1は、本実施例に係る監視カメラ1000のハードウェア構成の一例を示す図である。図1において、レンズ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で示した処理は、制御部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設定情報で指定された色などに応じたものである。
ステップ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にストリーミング配信される。
なお、この通信部1005は、圧縮符号化部1004によりOSD画像が合成された撮像画像を、IPネットワーク網1500を介して配信する配信部の一例である。
又、OSD設定情報で指定されたOSD画像が、例えば、時刻のように毎秒更新されるものを含む場合、OSD生成部1007は、この更新の都度、新たなOSD画像及びOSD設定情報を、圧縮符号化部1004に反映する。
ここで、OSD生成部1007は、画像のサイズとOSD画像との比率が可能な限り均一となるように、OSD画像を出力する。しかしながら、画像のサイズと、OSD画像に含まれるフォントのサイズとの組み合わせによっては、この比率を均一にすることが適切とは限らない。
例えば、画像のサイズが小さい場合、画像のサイズとOSD画像に含まれるフォントのサイズとが均一となるように、フォントのサイズを小さくしてしまうと、OSD画像に含まれるテキストが認識できなくなってしまうことがある。よって、撮像画像に重畳されるテキストの長さに何らかの制限を設けなければならない場合が存在する。
続いて、図4は、監視カメラ1000とクライアント装置2000との間における、ストリーミング配信される画像のパラメータの設定開始から画像がストリーミング配信されるまでの、典型的なコマンドシーケンスを説明するためのシーケンス図である。
なお、本実施例におけるトランザクションとは、クライアント装置2000から監視カメラ1000へ送信されるコマンドと、それに対して監視カメラ1000がクライアント装置2000へ返送するレスポンスのペアのことを指している。
図4における6000は、機器探索のトランザクションである。クライアント装置2000は、ネットワーク上に接続されている監視カメラを探索するための所定の探索条件を含むProbeコマンドをマルチキャストで送信する。Probeコマンドを受信した監視カメラのうち、探索条件に合致するものは、ProbeMatchコマンドを、Probeコマンドの送信元であるクライアント装置2000に返送し、探索が完了する。
6001は、GetProfilesトランザクションである。このトランザクションは、配信プロファイルに相当するMediaProfileを取得するためのトランザクションである。クライアント装置2000は、GetProfilesコマンドを監視カメラ1000に送信する。
そして、GetProfilesコマンドを受信した監視カメラ1000は、MediaProfileのリストをクライアント装置2000に送信する。これにより、クライアント装置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にて取得したセッション番号を指定して、配信中のストリーミングを停止させる。
続いて、図5は、監視カメラ1000とクライアント装置2000との間における、画像重畳処理の設定などのための典型的なコマンドシーケンスを示している。
図5における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が保持している画像処理設定に関連付けられた画像重畳設定の各パラメータに対する、設定可能な選択肢や設定値の範囲を取得する。
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で取得した選択肢に基づいて変更することができる。例えば、重畳位置や、重畳テキストの内容を変更する。
なお、6057のレスポンスには、OSDTokenが含まれていない。又、6055のコマンド、及び6057のコマンドは、上述のOSD設定コマンドの一例である。
6058は、DeleteOSDのトランザクションである。このトランザクションは、画像重畳設定を削除するためのトランザクションである。クライアント装置2000は、DeleteOSDのコマンドを監視カメラ1000に送信する。このコマンドを受信した監視カメラ1000は、このコマンドのレスポンスをクライアント装置2000に返送する。
このトランザクションにより、クライアント装置2000は、6053や6056で取得した画像重畳設定や、6055で新たに作成した画像重畳設定を、監視カメラ1000から削除する。監視カメラ1000は、指定された画像重畳設定IDのOSDTokenを持つ画像重畳設定を削除する。
続いて、図6は、本実施例に係るデータ型であるOSDConfigurationの構成を説明するための図である。なお、図6に示すデータ型は、例えば、XML Schema Definition言語(以下XSDと称することがある)を用いて定義されるものとする。
図6(a)は、OSDConfiguration型の定義例を示す図である。図6(a)に示すように、OSDConfiguration型は、XMLのcomplexType宣言により、複雑型として定義される。また、当該のOSDConfiguration型は、complexContent要素、及び、extension要素とそのbase属性によって、DeviceEntity型を拡張した拡張型であることが示される。
なお、当該OSDConfiguration型は、sequence要素により、その順番が定義通りに出現するデータ拡張が行われていることが示される。
図6(b)は、OSDRefernece型の定義例を示す図である。OSDReference型のデータにおいては、simpleContent要素、及び、extension要素とそのbase属性によって、ReferenceToken型を拡張した拡張型であることが示される。
図6(c)は、OSDType型の定義例を示す図である。OSDType型の定義例においては、simpleType要素によりXMLの単純型であるとともに、restriction要素とそのbase属性により、当該型がstring型の値制限型であることが示される。図6(c)の例では、OSDType型は、その値としてTextまたはImageもしくはExtendedであることが示されている。
図6(d)は、OSDPosConfiguration型の定義例を示す図である。当該OSDPosConfiguration型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図6(e)は、OSDTextConfiguration型の定義例を示す図である。当該OSDTextConfiguration型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図6(f)は、OSDImgConfiguration型を示す図である。当該のOSDImgConfiguration型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図6(g)は、OSDConfigurationExtension型の定義例を示す図である。当該OSDConfigurationExtension型の定義例においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
続いて、図7及び図8は、本実施例に係るデータ型であるOSDConfigurationOptions型の構成を説明するための図である。なお、図7及び図8に示すデータ型は、図6と同様、XSDを用いて定義されるものとする。
図7(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”指定子により、省略可能であることが示される。
図7(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”指定子により、省略可能であることが示される。
図7(c)は、OSDImgOptions型の定義例を示す図である。当該のOSDImgOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
OSDImgOptions型において、最初のフィールドは、anyURI型のImagePathフィールドである。次のフィールドはOSDImgOptionsExtension型のExtensionフィールドである。当該ImagePathフィールドは、maxOccurs=“unbounded”指定子により、当該OSDImgOptions型内部に複数個存在可能なことが示される。
なお、Extensionフィールドは、minOccurs=“0”指定子により、省略可能であることが示される。
図7(d)は、OSDConfigurationOptionsExtension型の定義例を示す図である。当該のOSDConfigurationOptionsExtension型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図7(e)は、IntRange型の定義例を示す図である。当該のIntRange型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
なお、このIntRange型において、最初のフィールドは、int型のMinフィールドであり、最後のフィールドは、int型のMaxフィールドである。
図8(a)は、OSDColorOptions型の定義例を示す図である。当該のOSDColorOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。又、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
なお、Colorフィールド、Transparentフィールド、Extensionフィールドは、minOccurs=“0”指定子により、省略可能であることが示される。
図8(b)は、OSDTextOptionsExtension型の定義例を示す図である。当該OSDTextOptionsExtension型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
図8(c)は、ColorOptions型の定義例を示す図である。当該のColorOptions型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。また、sequence要素内部のchoice要素によって、当該choice要素内の一つが選択されることが示される。
具体的には、当該ColorOptions型においては、後述するColorListフィールド、または、ColorSpaceRangeフィールドから一つが選択される。上記したように、ColorOptions型における、選択肢の一つはColor型のColorListフィールドである。また、もう一つの選択肢は、ColorSpaceRange型のColorSpaceRangeフィールドである。
なお、上記ColorListフィールド、及び、ColorSpaceRangeフィールドは、maxOccurs=“unbounded”指定子により、それぞれ複数個存在できることが示される。
図8(d)は、Color型の定義例を示す図である。当該のColor型では、attribute要素により、float型の属性X、Y、および、Zを記述することができる構成となっている。また、上記属性X、Y、および、Zは、use=“required”指定により、当該Color型において必須の構成であることが示される。また、当該のColor型では、attribute要素により、anyURI型の属性Colorspaceを記述可能な構成となっている。
図8(e)は、ColorSpaceRange型の定義例を示す図である。当該ColorSpaceRange型においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
ColorspaceRange型の最初のフィールドは、Xフィールドであり、次のフィールドはYフィールドであり、三番目のフィールドはZフィールドである。上記Xフィールド、Yフィールド、及び、Zフィールドは、FloatRange型のデータである。ColorspaceRange型の最後のフィールドは、anyURI型のColorspaceフィールドである。
図8(f)は、FloatRange型の定義例を示す図である。FloatRange型の定義においては、complexType要素によって、当該型が複雑型として定義されることが示される。また、sequence要素により、その順番が定義通りに出現するデータ型であることが示される。
FloatRange型において、最初のフィールドは、float型のMinフィールドであり、最後のフィールドは、float型のMaxフィールドである。
本実施例においては、クライアント装置2000は、上記OSDConfigurationOptions型のデータを用いて、本実施例の撮像装置に設定可能なOSDの情報を、当該撮像装置から取得する。また、本実施例における監視カメラ1000は、上記OSDConfigurationOptions型のデータを、当該監視カメラ1000におけるOSDに関する能力情報を送信するために用いる。
続いて、図9は、本実施例において、画像処理部1003から出力された撮像画像とOSD生成部1007から出力されたOSD画像とが合成された画像の一例を説明するための図である。まず、図9(a)は、画像処理部1003から出力された撮像画像の例を示すものである。この例における撮像画像には、OSD生成部1007から出力されたOSD画像は、合成されていない。
図9(b)は、画像処理部1003から出力された撮像画像の例を示すものである。この例の撮像画像には、OSD生成部1007から出力されたOSD画像7000が重畳されている。このOSD画像7000は、文字列「West side gate No.01」を含む。クライアント装置2000は、CreateOSDコマンドを送信することにより、この文字列を設定する。
なお、このCreateOSDコマンドは、図10(a)を用いて後述する。又、図9(c)乃至(f)は、後述する。
続いて、図10(a)は、画像重畳設定を作成するためのCreateOSDコマンドを示した図である。なお、このコマンドは、6055のコマンドの一例である。具体的には、このCreateOSDコマンドは、図9(b)のOSD画像7000に対応する画像重畳設定を作成するためのものである。図10(a)において、OSD画像の画像重畳設定を識別するためのIDであるOSDTokenの値は、“osd−3”である。
このOSDTokenに対応付けられているVideoSourceConfigurationTokenは、画像処理設定を識別するためのIDである。このIDの値は、“0”である。又、このOSDTokenには、OSDType型のTypeが対応付けられている。このTypeの値は、“Text”である。これは、OSD画像が文字列であることを示す。
更に、このOSDTokenには、OSD画像の重畳位置を示すためのPositionが対応付けられている。このPositionに対応付けられたTypeの値は、“LowerLeft”である。これは、OSD画像の重畳位置が左下であることを示す。又、このOSDTokenには、OSD画像における文字列の設定情報を示すためのTextStringが対応付けられている。
このTextStringには、OSD画像の種類を示すためのTypeが対応付けられており、このTypeの値は、“Plain”である。これは、OSD画像が任意の文字列であることを表す。又、このTextStringには、PlainTextが対応付けられている。このPlainTextの値は、“West side gate No.01”である。
なお、この値は、PlainTextの中身(OSD画像のテキスト)を示す。又、本明細書では、この値を「入力文字列」と称することがある。
続いて、図10(b)は、図10(a)で示したCreateOSDコマンドのレスポンス(即ち、CreateOSDResponse)のパラメータの構成の一例を示した図である。なお、このレスポンスは、6055のレスポンスの一例である。図10(b)において、OSDTokenの値は、“osd−3”である。これは、画像重畳設定の作成が成功したことを示す。
続いて、図12は、監視カメラ1000における、画像重畳設定処理(以下、OSD設定処理と称することがある)を示すフローチャートである。この処理は、制御部1008により実行される。又、この処理は、監視カメラ1000がクライアント装置2000からCreateOSDコマンドを受信した場合に、制御部1008により開始されるものとする。
なお、この受信されたCreateOSDコマンドは、記憶部1009に記憶されるものとする。
ステップS9000では、制御部1008は、OSD設定処理を開始する。例えば、制御部1008は、通信部1005を介してCreateOSDコマンドを受信したか否かを判定する。
そして、制御部1008は、通信部1005を介してCreateOSDコマンドを受信したと判定した場合には、ステップS9001に処理を進める。一方、制御部1008は、通信部1005を介してCreateOSDコマンドを受信していないと判定した場合には、ステップS9001に処理を進めない。
ステップS9001では、制御部1008は、「入力文字列長」が「設定可能な最大文字列長」を下回っているか否かを判定する。ここで、本実施例における「入力文字列長」とは、例えば、「入力文字列」を構成する文字の数である。又、本実施例における「設定可能な最大文字列長」とは、例えば、「設定可能な最大文字列」を構成する文字の数である。
そして、制御部1008は、「入力文字列長」が「設定可能な最大文字列長」を下回っていると判定した場合には、ステップS9002に処理を進める。一方、制御部1008は、「入力文字列長」が「設定可能な最大文字列長」を下回っていないと判定した場合には、ステップS9008に処理を進める。
なお、制御部1008は、「設定可能な最大文字列長」を次のように求める。まず、制御部1008は、圧縮符号化部1004が生成することができる全ての画像サイズを、記憶部1009から読み出す。次に、制御部1008は、読み出した全ての画像サイズのそれぞれに対応する「設定可能な文字列長」を、記憶部1009から読み出す。
なお、本実施例における「設定可能な文字列長」とは、例えば、画像サイズに対応付けられた「設定可能な文字列」を構成する文字の数である。
そして、制御部1008は、読み出した「設定可能な文字列長」のうち最も長いものを、「設定可能な最大文字列長」として記憶部1009に記憶させる。なお、「設定可能な文字列長」は、ハードウェア上の制限等で決められるものとする。このハードウェア上の制限等としては、例えば、メモリ不足であっても良く、OSD画像を重畳するための領域が撮像画像に設けられており、この設けられた領域に収まる範囲であっても良い。
又、制御部1008は、「入力文字列長」を次のように求める。まず、制御部1008は、通信部1005を介して受信したCreateOSDコマンドにおいてPlainTextに対応付けて記述された文字列(入力文字列)を、記憶部1009から読み出す。次に、制御部1008は、読み出した文字列の長さを、「入力文字列長」として記憶部1009に記憶させる。
このように、制御部1008は、通信部1005で受信されたCreateOSDコマンドにおいてPlainTextに対応付けて記述された文字列が、「設定可能な最大文字列長」を下回っているか否かを判定する判定部としての役割を果たす。
ステップS9002は、制御部1008は、入力文字列を「設定文字列」として記憶部1009に記憶させる。例えば、制御部1008は、ステップS9001で読み出された入力文字列を記憶部1009に出力することにより、出力した入力文字列を「設定文字列」として記憶部1009に記憶させる出力部の役割を果たす。
ステップS9003は、制御部1008は、ステップS9002又はステップS9008で記憶部1009に記憶させた「設定文字列」の長さである「設定文字列長」が、「重畳可能な文字列長」を下回っているか否かを判定する。ここで、本実施例における「重畳可能な文字列長」とは、例えば、画像処理部1003から出力される「重畳可能な文字列」を構成する文字の数である。
そして、制御部1008は、「設定文字列長」が「重畳可能な文字列長」を下回っていると判定した場合には、ステップS9004に処理を進める。一方、制御部1008は、「設定文字列長」が「重畳可能な文字列長」を下回ってないと判定した場合には、ステップS9005に処理を進める。
なお、制御部1008は、「重畳可能な文字列長」を次のように求める。まず、制御部1008は、圧縮符号化部1004により現在生成されている画像サイズを取得する。次に、制御部1008は、ステップS9001で読み出された「設定可能な文字列長」のうち、取得した画像サイズに対応する文字列長を、「重畳可能な文字列長」とする。
ステップS9004では、制御部1008は、ステップS9002又はステップS9008で記憶部1009に記憶させた「設定文字列」を、「重畳文字列」として記憶部1009に記憶させる。
ステップS9005では、制御部1008は、ステップS9002又はステップS9008で記憶部1009に記憶させた「設定文字列」の内、ステップS9003で求めた「重畳可能な文字列長」分の文字列を、「重畳文字列」として記憶部1009に記憶させる。
例えば、ステップS9003で求めた「重畳可能な文字列長」が12文字の場合を想定する。このように想定した場合、制御部1008は、ステップS9002又はステップS9008で記憶部1009に記憶させた「設定文字列」における先頭から12文字目までの文字列を、「重畳文字列」として記憶部1009に記憶させる。
ステップS9006では、制御部1008は、圧縮符号化部1004及びOSD生成部1007に指示し、画像処理部1003から出力された撮像画像に、「重畳文字列」に対応する文字列を重畳させる。この「重畳文字列」は、ステップS9004又はステップS9005で記憶部1009に記憶されたものである。
ステップS9007では、制御部1008は、ステップS9003で求めた「設定文字列長」とステップS9001で求めた「入力文字列長」とが一致しているか否かを判定する。
そして、制御部1008は、ステップS9003で求めた「設定文字列長」とステップS9001で求めた「入力文字列長」とが一致していると判定した場合には、ステップS9009に処理を進める。一方、制御部1008は、ステップS9003で求めた「設定文字列長」とステップS9001で求めた「入力文字列長」とが一致していないと判定した場合には、ステップS9010に処理を進める。
ステップS9008では、制御部1008は、ステップS9001で求めた「入力文字列」のうち、ステップS9001で求めた「設定可能な最大文字列長」分の文字列を、「設定文字列」として記憶部1009に記憶させる。
ステップS9009では、制御部1008は、正常である旨を示すレスポンスを、クライアント装置2000に通信部1005を介して送信する。
ステップS9010では、制御部1008は、エラーである旨を示すレスポンスを、クライアント装置2000に通信部1005を介して送信する。
なお、本実施例では、ステップS9001で求めた「入力文字列」から、「設定文字列」及び「重畳文字列」を求めている。なぜならば、監視カメラ1000に設定することができる「設定文字列」(の長さ)と画像処理部1003から出力された「重畳文字列」(の長さ)とは、必ずしも一致しないからである。
例えば、「設定文字列」の長さは、記憶部1009における、文字列を保存するための領域の大きさにより制限される。一方、「重畳文字列」の長さは、画像処理部1003から出力される撮像画像内に「重畳文字列」が収まるか否かにより制限される。
続いて、図11(a)は、GetOSDのレスポンスを示した図である。なお、このレスポンスは、6056のレスポンスの一例である。又、このレスポンスに対応する画像重畳設定は、図10(a)で示したCreateOSDのコマンドにより作成されたものである。図11(a)において、OSD画像の画像重畳設定を識別するためのIDであるOSDTokenの値は、“osd−3”である。
このOSDTokenに対応付けられているVideoSourceConfigurationTokenは、画像処理設定を識別するためのIDである。このIDの値は、“0”である。又、このOSDTokenには、OSDType型のTypeが対応付けられている。このTypeの値は、“Text”である。これは、OSD画像が文字列であることを示す。
更に、このOSDTokenには、OSD画像の重畳位置を示すためのPositionが対応付けられている。このPositionに対応付けられたTypeの値は、“LowerLeft”である。又、このOSDTokenには、OSD画像における文字列の設定情報を示すためのTextStringが対応付けられている。
このTextStringには、OSD画像の種類を示すためのTypeが対応付けられている。このTypeの値は、“Plain”である。これは、OSD画像が任意の文字列であることを表す。又、このTextStringには、PlainTextが対応付けられている。このPlainTextの値は、“West side gate No.01”である。
続いて、図9(c)乃至(f)は、本実施例において、画像処理部1003から出力された撮像画像とOSD生成部1007から出力されたOSD画像とが合成された画像の一例を説明するための図である。まず、図9(c)は、圧縮符号化部1004により、図9(a)の画像が四分の一のサイズに圧縮された画像である。
次に、図9(d)は、図10(a)で示したCreateOSDのコマンドにより画像重畳設定が作成された後に、圧縮符号化部1004により、図9(b)の画像が四分の一のサイズに圧縮された画像である。この図9(d)の画像は、図9(c)の画像にOSD画像7001が重畳されたものである。
前述したように、OSD生成部1007は、画像のサイズとOSD画像に含まれるフォントのサイズとの比率が可能な限り均一となるように、OSD画像を出力しようとする。しかしながら、図9(d)の画像のサイズとOSD画像に含まれるフォントのサイズとが均一となるように、フォントのサイズを小さくしてしまうと、OSD画像に含まれるテキストが認識できなくなるほど小さくなってしまう。
このため、図9(d)の画像に重畳されたOSD画像7001に含まれるテキストは、その長さが制限されている。具体的には、OSD画像7001に含まれるテキストは、“West side gate”である。
なお、クライアント装置2000が、図9(d)の画像をストリーミング配信している監視カメラ1000に、GetOSDのコマンドを送信した場合を想定する。このようなコマンドを受信した監視カメラ1000は、記憶部1009に記憶された画像重畳設定における「設定文字列」を参照することにより、GetOSDのレスポンスをクライアント装置2000に送信する。
従って、このレスポンスにおけるPlainTextに対応付けて記述された文字列は、「West side gate No.01」となる。つまり、監視カメラ1000は、図9(d)の画像に重畳されているOSD画像7001に含まれるテキストは、「West side gate」であっても、「West side gate No.01」が記述されたレスポンスを送信することができる。
これは、「設定文字列」と「重畳文字列」とを記憶部1009に別々に記憶させているためである。ここで、「設定文字列」と「重畳文字列」とを記憶部1009に別々に記憶させていない場合を想定する。このような想定の場合、「重畳文字列」が「West side gate」と「入力文字列」よりも短くなると、同じく、「設定文字列」も「West side gate」と短くなる。
この短くなった状態で、監視カメラ1000によりストリーミング配信される画像のサイズが、図9(d)のサイズから図9(a)のサイズに戻されたとしても、画像重畳設定における「設定文字列」は、短くなったままである。このため、監視カメラ1000によりストリーミング配信される画像には、図9(e)のように、重畳文字列が短くなったOSD画像7002が表示されてしまうという問題が発生する。
これが、「設定文字列」と「重畳文字列」とを記憶部1009に別々に記憶させている理由である。
図9(f)は、画像処理部1003から出力された撮像画像の例を示すものである。この例の撮像画像には、OSD生成部1007から出力されたOSD画像7003が重畳されている。このOSD画像7003は、文字列「West side gate No.02」を含む。この文字列は、CreateOSDのコマンドで生成された画像重畳設定をSetOSDのコマンドで更新することにより、設定される。
続いて、図11(b)は、SetOSDのコマンドを示した図である。なお、このコマンドは、6057のコマンドの一例である。
なお、本実施例では、図12で示した画像重畳設定処理は、監視カメラ1000がクライアント装置2000からCreateOSDコマンドを受信した場合に、制御部1008により開始されるものとしたが、これに限られるものではない。
例えば、図12で示した画像重畳設定処理は、監視カメラ1000がクライアント装置2000からSetOSDコマンドを受信した場合に、制御部1008により開始されるものとしても良い。なお、このSetOSDコマンドは、記憶部1009に記憶されるものとする。
具体的には、ステップS9000では、制御部1008は、OSD設定処理を開始する。例えば、制御部1008は、通信部1005を介してSetOSDコマンドを受信したか否かを判定する。そして、制御部1008は、通信部1005を介してSetOSDコマンドを受信したと判定した場合には、このコマンドにおけるOSDTokenの値で識別することができる画像重畳設定が記憶部1009に記憶されているか否かを判定する。
次に、制御部1008は、このコマンドにおけるOSDTokenの値で識別することができる画像重畳設定が記憶部1009に記憶されていると判定した場合には、ステップS9001に処理を進める。
一方、制御部1008は、このコマンドにおけるOSDTokenの値で識別することができる画像重畳設定が記憶部1009に記憶されていないと判定した場合には、ステップS9001に処理を進めない。又、制御部1008は、通信部1005を介してCreateOSDコマンドを受信していないと判定した場合には、ステップS9001に処理を進めない。
ステップS9001では、制御部1008は、「入力文字列長」が「設定可能な最大文字列長」を下回っているか否かを判定する。そして、制御部1008は、「入力文字列長」が「設定可能な最大文字列長」を下回っていると判定した場合には、ステップS9002に処理を進める。一方、制御部1008は、「入力文字列長」が「設定可能な最大文字列長」を下回っていないと判定した場合には、ステップS9008に処理を進める。
なお、制御部1008は、「設定可能な最大文字列長」を次のように求める。まず、制御部1008は、圧縮符号化部1004が生成することができる全ての画像サイズを、記憶部1009から読み出す。次に、制御部1008は、読み出した全ての画像サイズのそれぞれに対応する「設定可能な文字列長」を、記憶部1009から読み出す。
そして、制御部1008は、読み出した「設定可能な文字列長」のうち最も長いものを、「設定可能な最大文字列長」として記憶部1009に記憶させる。なお、「設定可能な文字列長」は、ハードウェア上の制限等で決められるものとする。このハードウェア上の制限等としては、例えば、メモリ不足であっても良く、OSD画像を重畳するための領域が撮像画像に設けられており、この設けられた領域に収まる範囲であっても良い。
又、制御部1008は、「入力文字列長」を次のように求める。まず、制御部1008は、通信部1005を介して受信したSetOSDコマンドにおいてPlainTextに対応付けて記述された文字列を、記憶部1009から読み出す。次に、制御部1008は、読み出した文字列の長さを、「入力文字列長」として記憶部1009に記憶させる。
ステップS9002乃至S9010は、上述のステップS9002乃至S9010と同様であるので、その説明を省略する。
以上、本実施例では、通信部1005で受信された「入力文字列」の長さが「設定可能な最大文字列長」を下回っていない場合に、この「入力文字列」のうち、この「設定可能な最大文字列長」分の文字列を撮像画像に重畳するよう、制御部1008を構成した。これにより、通信部1005で受信された「入力文字列」の長さに応じて適切に、この「入力文字列」を撮像画像に重畳することができるようになる。
又、本実施例では、図12のステップS9003にて、「設定文字列長」が「重畳可能な文字列長」を下回っている場合に、ステップS9005にて、異常を示す旨の情報をクライアント装置2000に送信しないように制御部1008を構成した。このような構成にはメリットがある。
例えば、ステップS9005にて、クライアント装置2000に異常を示す旨の情報を送信するように、制御部1008を構成したものと仮定する。更に、監視カメラ1000がCreateOSDのコマンドをクライアント装置2000から受信し、この受信に応じた重畳画像設定処理にて、「設定文字列長」が「重畳可能な文字列長」を下回っており、正常を示す旨の情報が送信されたものとする。
なお、正常なCreateOSDResponseは、この情報の一例である。
この送信の後、監視カメラ1000がストリーミング配信する画像のサイズが小さくされること等により、「重畳可能な文字列」が短くなったものとする。この短くなった後、CreateOSDResponseのPlainTextに対応付けて記述された文字列と同じ長さの文字列をSetOSDコマンドで設定しようとしても、異常を示す旨の情報が送信され得る。
このため、クライアント装置2000は、CreateOSDのコマンドと同じ文字列又は同じ長さの文字列を、SetOSDのコマンドで監視カメラ1000に設定しようとしているにも関わらず、異常を示す旨の情報を受信することになる。これでは、混乱を招く可能性がある。このような混乱を防止することができることが、上述のメリットである。
又、本実施例では、図12のステップS9003にて、圧縮符号化部1004により現在生成されている画像サイズを取得するように、制御部1008を構成した。更に、ステップS9003にて、ステップS9001で読み出された「設定可能な文字列長」のうち、取得した画像サイズに対応する文字列長を、「重畳可能な文字列長」とするように、制御部1008を構成したが、これに限られるものではない。
例えば、ステップS9003にて、まず、圧縮符号化部1004により現在生成されている画像の水平方向の長さを取得するように、制御部1008を構成しても良い。更に、この画像の大きさに応じたフォントを記憶部1009から読み出すように、制御部1008を構成しても良い。
その上、この読み出したフォントの水平方向における1文字あたりの長さによりこの取得した水平方向の長さを割ることで得られた商を、「重畳可能な文字列長」とするように、制御部1008を構成しても良い。
又、本実施例では、図12のステップS9001にて、「入力文字列長」が「設定可能な最大文字列長」を下回っているか否かを判定するように、制御部1008を構成したが、これに限られるものではない。
例えば、ステップS9001にて、まず、圧縮符号化部1004により現在生成されている画像サイズに対応する「設定可能な文字列長」を、記憶部1009から読み出すように、制御部1008を構成しても良い。更に、読み出した「設定可能な文字列長」を「入力文字列長」が下回っているか否かを判定するように、制御部1008を構成しても良い。
その上、読み出した「設定可能な文字列長」を「入力文字列長」が下回っていると判定した場合には、ステップ9002に処理を進めるように、制御部1008を構成しても良い。なおかつ、読み出した「設定可能な文字列長」を「入力文字列長」が下回っていないと判定した場合には、ステップS9008に処理を進めるように、制御部1008を構成しても良い。
又、本実施例では、第1の画像サイズに対応付けて記憶部1009に記憶された「設定可能な文字列長」は、この第1の画像サイズよりも大きな第2の画像サイズに対応付けて記憶部1009に記憶された「設定可能な文字列長」を下回っているものとする。
同様に、第2の画像サイズに対応付けて記憶部1009に記憶された「設定可能な文字列長」は、この第2の画像サイズよりも大きな第3の画像サイズに対応付けて記憶部1009に記憶された「設定可能な文字列長」を下回っているものとする。
又、本実施例では、図12のステップS9000にて、CreateOSDコマンド又はSetOSDコマンドを受信した場合に、OSD設定処理を開始するように、制御部1008を構成したが、これに限られるものではない。例えば、ステップS9000にて、6008のコマンド又は6009のコマンドを受信した場合に、OSD設定処理を開始するように、制御部1008を構成しても良い。
具体的には、ステップS9000では、制御部1008は、6008のコマンド又は6009のコマンドを受信したか否かを判定する。そして、制御部1008は、6008のコマンドを受信したと判定した場合には、6008のコマンド又は6009のコマンドで指定された画像サイズと圧縮符号化部1004により現在生成されている画像サイズとが一致するか否かを判定する。
そして、制御部1008は、6008のコマンド又は6009のコマンドで指定された画像サイズと圧縮符号化部1004により現在生成されている画像サイズとが一致すると判定した場合には、ステップS9001に処理を進めない。
一方、制御部1008は、6008のコマンド又は6009のコマンドで指定された画像サイズと圧縮符号化部1004により現在生成されている画像サイズとが一致しないと判定した場合には、ステップS9001に処理を進める。ここで、制御部1008は、ステップS9001に処理を進めるとともに、圧縮符号化部1004により生成される画像サイズを、この指定された画像サイズに変更する。
又、制御部1008は、6008のコマンド又は6009のコマンドを受信していないと判定した場合には、ステップS9001に処理を進めない。
(実施例2)
続いて、図12を用いて、本発明の実施例2における監視カメラ1000について説明する。なお、上述の実施例と同一の構成要素には同一の符号を付し、その説明を省略する。
実施例1のステップS9005では、制御部1008は、「設定文字列」のうち「重畳可能な文字列長」分の文字列を、「重畳文字列」として記憶部1009に記憶させた。これに対し、実施例2のステップS9005では、制御部1008は、この記憶とともに、「設定文字列」のうち「重畳可能な文字列長」分の文字列を、「設定文字列」として記憶部1009に記憶させる。
続いて、図12を用い、本実施例の監視カメラ1000におけるOSD設定処理を説明する。まず、本実施例におけるステップS9000乃至S9004は、実施例1におけるステップS9000乃至S9004と同様であるので、その説明を省略する。
ステップS9005では、制御部1008は、ステップS9002又はステップS9008で記憶部1009に記憶させた「設定文字列」のうち、「重畳可能な文字列長」分の文字列を、「重畳文字列」として記憶部1009に記憶させる。
更に、制御部1008は、ステップS9002又はステップS9008で記憶部1009に記憶させた「設定文字列」のうち、「重畳可能な文字列長」分の文字列で、この記憶させた「設定文字列」を更新する。
本実施例におけるステップS9006乃至S9011は、実施例1におけるステップS9006乃至S9011と同様であるので、その説明を省略する。
以上、本実施例では、ステップS9005にて、ステップS9002又はステップS9008で記憶部1009に記憶させた「設定文字列」のうち、「重畳可能な文字列長」分の文字列で、この記憶させた「設定文字列」を更新するように、制御部1008を構成した。
これにより、記憶部1009に記憶させた「設定文字列」と記憶部1009に記憶させた「重畳文字列」とは、同じ文字列となり、1つの文字列がある場合と同等になる。従って、「重畳可能な文字列長」が「入力文字列長」を下回っている場合には、記憶部1009に記憶させる「重畳可能な文字列」が短くなるのみならず、記憶部1009に記憶させる「設定文字列」も同様に短くなる。
なお、本実施例では、ステップS9005にて、制御部1008は、異常を示す旨の情報を6055又は6057のレスポンスとして、クライアント装置2000に通信部1005を介して送信するものとする。なぜならば、記憶部1009に記憶させた「入力文字列」と、ステップS9000で受信した6055又は6057のコマンドで指定された入力文字列と、が異なるためである。
又、本実施例におけるステップS9005の処理が実行された後に、制御部1008が6056のコマンドをクライアント装置2000から通信部1005を介して受信した場合を想定する。この場合、制御部1008は、6056のレスポンスをクライアント装置2000に通信部1005を介して送信するのであるが、このレスポンスに含まれる文字列は、ステップS9005で送信された6055のレスポンスに含まれる入力文字列よりも短い。
(実施例3)
続いて、図12及び図13を用いて、本発明の実施例2における、監視カメラ1000及びクライアント装置2000について説明する。なお、上述の実施例と同一の構成要素には同一の符号を付し、その説明を省略する。
実施例1におけるステップS9009では、制御部1008は、正常である旨を示す情報を6055又は6057のレスポンスとして、クライアント装置2000に通信部1005を介して送信した。又、実施例1におけるステップS9010では、制御部1008は、異常である旨を示す情報を6055又は6057のレスポンスとして、クライアント装置2000に通信部1005を介して送信した。
これに対し、実施例3では、ステップS9009及びステップS9010において、制御部1008によりクライアント装置2000に送信されるレスポンスには、「設定可能な文字列長」及び「重畳可能な文字列長」が加えられている。
続いて、図12を用い、本実施例の監視カメラ1000におけるOSD設定処理を説明する。まず、本実施例におけるステップS9000乃至S9008は、実施例1におけるステップS9000乃至S9008と同様であるので、その説明を省略する。
ステップS9009では、制御部1008は、6055又は6057のレスポンスとして正常である旨を示す情報を、クライアント装置2000に通信部1005を介して送信する。ここで、このレスポンスには、ステップS9001の判定で用いられた「設定可能な最大文字列長」が記述されている。又、このレスポンスには、ステップS9003の判定で用いられた「重畳可能な文字列長」が記述されている。
ステップS9010では、制御部1008は、6055又は6057のレスポンスとして異常である旨を示す情報を、クライアント装置2000に通信部1005を介して送信する。ここで、このレスポンスには、ステップS9001の判定で用いられた「設定可能な最大文字列長」が記述されている。又、このレスポンスには、ステップS9003の判定で用いられた「重畳可能な文字列長」が記述されている。
続いて、図13は、本実施例における、重畳画像設定画面(即ち、OSDConfiguration設定画面)の表示例である。なお、クライアント装置2000は、ステップS9009又はステップS9010で送信されたレスポンスを受信した場合に、この表示例の画面を表示部2002に表示させるものとする。又、受信されたレスポンスは、記憶部2006に記憶されるものとする。
図13における10000は、文字列を表示するためのテキストボックスである。このテキストボックス10000に表示された文字列は、CreateOSDのコマンドにおいて、PlainTextフィールドに対応付けられて記述される文字列である。即ち、テキストボックス10000は、「入力文字列」を表示するためのものである。
例えば、CreateOSDのコマンドが図10で示したものである場合、制御部2005は、このコマンドにおいて、PlainTextフィールドに対応付けられた記述された文字列を記憶部2006から読み出す。次に、制御部2005は、読み出した文字列を、テキストボックス10000に表示させる。これにより、テキストボックス10000には、図13のように、“West side gate No.01”が表示される。
10001は、文字列を表示するためのテキストボックスである。このテキストボックス10001に表示された文字列は、CreateOSDのコマンドにおいて、PlainTextフィールドに対応付けられて記述される文字列の一部である。即ち、テキストボックス10001は、「設定文字列」を表示するためのものである。
例えば、CreateOSDのコマンドが図10で示したものである場合、制御部2005は、このコマンドにおけるPlainTextフィールドに対応付けられた記述された文字列を、記憶部2006から読み出す。次に、制御部2005は、ステップS9009又はステップS9010で送信されたレスポンスに記述された「設定可能な最大文字列長」を、記憶部2006から読み出す。
そして、制御部2005は、読み出した文字列のうち、読み出した文字列長分の文字列を、テキストボックス10001に表示させる。これにより、テキストボックス10001には、図13のように、“West side gate”が表示される。
10002は、文字列を表示するためのテキストボックスである。このテキストボックス10002に表示された文字列は、CreateOSDのコマンドにおいて、PlainTextフィールドに対応付けられて記述される文字列の一部である。即ち、テキストボックス10002は、「重畳文字列」を表示するためのものである。
例えば、CreateOSDのコマンドが図10で示したものである場合、制御部2005は、このコマンドにおけるPlainTextフィールドに対応付けられた記述された文字列を、記憶部2006から読み出す。次に、制御部2005は、ステップS9009又はステップS9010で送信されたレスポンスに記述された「重畳可能な文字列長」を、記憶部2006から読み出す。
そして、制御部2005は、読み出した文字列のうち、読み出した文字列長分の文字列を、テキストボックス10002に表示させる。これにより、テキストボックス10002には、図13のように、West side gate”が表示される。
以上、本実施例では、ステップS9009及びステップS9010において送信されるレスポンスに対し、「設定可能な最大文字列長」及び「重畳可能な文字列長」を加えるように、制御部1008を構成した。これにより、クライアント装置2000は、監視カメラ1000における「設定可能な最大文字列長」及び「重畳可能な文字列長」を把握することができる。
又、本実施例では、図13の画面において、ステップS9009又はステップS9010で送信されたレスポンスに記述された「設定可能な最大文字列長」に応じて、「設定文字列」を表示させるように、制御部2005を構成した。ここで、この表示させる「設定文字列」は、6055のコマンドにおいてPlainTextフィールドに対応付けられた文字列のうち、この記述された「設定可能な最大文字列長」分の文字列である。
これにより、クライアント装置2000は、CreateOSDのコマンドにおいて対応付けて記述された文字列(入力文字列)のうち、監視カメラ1000に設定することができる文字列を、ユーザに確認させることができる。
同様に、本実施例では、図13の画面において、ステップS9009又はステップS9010で送信されたレスポンスに記述された「重畳可能な文字列長」に応じて、「重畳文字列」を表示させるように、制御部2005を構成した。ここで、この表示させる「設定文字列」は、6055のコマンドにおいてPlainTextフィールドに対応付けられた文字列のうち、この記述された「重畳可能な文字列長」分の文字列である。
これにより、クライアント装置2000は、CreateOSDのコマンドにおいて対応付けて記述された文字列(入力文字列)のうち、監視カメラ1000で重畳され得る文字列を、ユーザに確認させることができる。
なお、本実施例では、ステップS9009及びステップS9010にて、6055又は6057のレスポンスに「設定可能な最大文字列長」を記述するように、制御部1008を構成したが、これに限られるものではない。例えば、ステップS9009及びステップS9010にて、監視カメラ1000による現在の撮像画像のサイズに応じた「設定可能な文字列長」をこのレスポンスに記述するように、制御部1008を構成しても良い。
(その他の実施例)
又、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
以上、本発明の好ましい実施例について説明したが、本発明はこれらの実施例に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
1000 監視カメラ
1002 撮像部
1004 圧縮符号化部
1005 通信部
1007 OSD生成部
1008 制御部
1500 IPネットワーク網
2000 クライアント装置

Claims (14)

  1. 被写体を撮像する撮像手段と、
    外部装置からネットワークを介して重畳情報を受信する受信手段と、
    前記受信手段により受信された重畳情報が第1の量よりも大きいか否かを判定する判定手段と、
    前記判定手段により大きいと判定された場合には、前記受信手段により受信された重畳情報の一部を出力し、前記判定手段により大きくないと判定された場合には、前記受信手段により受信された重畳情報を出力する出力手段と、
    前記出力手段により出力された重畳情報を、前記撮像手段により撮像された撮像画像に重畳する重畳手段と、
    前記重畳手段により重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信手段と、
    を備える撮像装置。
  2. 被写体を撮像する撮像手段と、
    外部装置からネットワークを介して重畳情報を受信する受信手段と、
    前記受信手段により受信された重畳情報が第一の量よりも大きいか否かを判定する第一の判定手段と、
    前記第一の判定手段により大きいと判定された場合には、前記受信手段により受信された重畳情報の一部を出力し、前記第一の判定手段により大きくないと判定された場合には、前記受信手段により受信された重畳情報を出力する出力手段と、
    前記出力手段により出力された重畳情報が第二の量よりも大きいか否かを判定する第二の判定手段と、
    前記二の判定手段により大きいと判定された場合には、前記出力手段により出力された重畳情報の一部を生成し、前記第二の判定手段により大きくないと判定された場合には、前記出力手段により出力された重畳情報を生成し、
    前記生成手段により生成された重畳情報を、前記撮像手段により撮像された撮像画像に重畳する重畳手段と、
    を備える撮像装置。
  3. 前記第二の量は、前記撮像手段により撮像された撮像画像が大きくなるに連れて大きくなることを特徴とする請求項2に記載の撮像装置。
  4. 前記撮像手段により撮像された撮像画像の大きさを変更する変更手段を更に備え、
    前記第二の判定手段は、前記変更手段により変更された場合に、大きいか否かを判定することを特徴とする請求項3に記載の撮像装置。
  5. 前記第一の判定手段により大きいと判定された場合には、異常である旨のレスポンスを前記外部装置にネットワークを介して送信し、前記第一の判定手段により大きくないと判定された場合には、正常である旨のレスポンスを前記外部装置にネットワークを介して送信する送信手段を更に備えることを特徴とする請求項1乃至4のいずれか1項に記載の撮像装置。
  6. 前記第二の判定手段により大きくないと判定され且つ前記第一の判定手段により大きいと判定された場合には、異常である旨のレスポンスを前記外部装置にネットワークを介して送信し、前記第二の判定手段により大きいと判定され且つ前記第一の判定手段により大きくないと判定された場合には、正常である旨のレスポンスを前記外部装置にネットワークを介して送信する送信手段を更に備えることを特徴とする請求項2乃至4のいずれか1項に記載の撮像装置。
  7. 被写体を撮像する撮像部と、ネットワークを介して重畳情報を受信する受信部と、前記受信部により受信された重畳情報が第1の量よりも大きいか否かを判定する判定部と、前記判定部により大きいと判定された場合には、前記受信部により受信された重畳情報の一部を出力し、前記判定部により大きくないと判定された場合には、前記受信部により受信された重畳情報を出力する出力部と、前記出力部により出力された重畳情報を、前記撮像部により撮像された撮像画像に重畳する重畳部と、前記重畳部により重畳された撮像画像を、ネットワークを介して配信する配信部と、を備える撮像装置と、ネットワークを介して通信可能な外部装置であって、
    前記第一の量を前記撮像装置からネットワークを介して取得する取得手段、
    を備えることを特徴とする外部装置。
  8. 外部装置と、前記外部装置とネットワークを介して通信可能な撮像装置と、を含む撮像システムであって、
    前記外部装置は、
    前記撮像装置にネットワークを介して重畳情報を送信する送信手段、
    を備え、
    前記撮像装置は、
    被写体を撮像する撮像手段と、
    前記送信手段により送信された重畳情報が第1の量よりも大きいか否かを判定する判定手段と、
    前記判定手段により大きいと判定された場合には、前記送信手段により送信された重畳情報の一部を出力し、前記判定手段により大きくないと判定された場合には、前記送信手段により送信された重畳情報を出力する出力手段と、
    前記出力手段により出力された重畳情報を、前記撮像手段により撮像された撮像画像に重畳する重畳手段と、
    前記重畳手段により重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信手段と、
    を備えることを特徴とする撮像システム。
  9. 被写体を撮像する撮像ステップと、
    外部装置からネットワークを介して重畳情報を受信する受信ステップと、
    前記受信ステップにて受信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、
    前記判定ステップにて大きいと判定された場合には、前記受信ステップにて受信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記受信ステップにて受信された重畳情報を出力する出力ステップと、
    前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、
    前記重畳手段にて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、
    を備える撮像装置の制御方法。
  10. 被写体を撮像する撮像部と、ネットワークを介して重畳情報を受信する受信部と、前記受信部により受信された重畳情報が第1の量よりも大きいか否かを判定する判定部と、前記判定部により大きいと判定された場合には、前記受信部により受信された重畳情報の一部を出力し、前記判定部により大きくないと判定された場合には、前記受信部により受信された重畳情報を出力する出力部と、前記出力部により出力された重畳情報を、前記撮像部により撮像された撮像画像に重畳する重畳部と、前記重畳部により重畳された撮像画像を、ネットワークを介して配信する配信部と、を備える撮像装置と、ネットワークを介して通信可能な外部装置の制御方法であって、
    前記第一の量を前記撮像装置からネットワークを介して取得する取得ステップ、
    を備えることを特徴とする外部装置の制御方法。
  11. 外部装置と、前記外部装置とネットワークを介して通信可能な撮像装置と、を含む撮像システムの制御方法であって、
    前記外部装置にて、
    前記撮像装置にネットワークを介して重畳情報を送信する送信ステップ、
    を備え、
    前記撮像装置にて、
    被写体を撮像する撮像ステップと、
    前記送信ステップにて送信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、
    前記判定ステップにより大きいと判定された場合には、前記送信ステップにて送信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記送信ステップにて送信された重畳情報を出力する出力ステップと、
    前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、
    前記重畳ステップにて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、
    を備えることを特徴とする撮像システムの制御方法。
  12. 被写体を撮像する撮像ステップと、
    外部装置からネットワークを介して重畳情報を受信する受信ステップと、
    前記受信ステップにて受信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、
    前記判定ステップにて大きいと判定された場合には、前記受信ステップにて受信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記受信ステップにて受信された重畳情報を出力する出力ステップと、
    前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、
    前記重畳手段にて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、
    をコンピュータに実行させる撮像装置を制御するためのプログラム。
  13. 被写体を撮像する撮像部と、ネットワークを介して重畳情報を受信する受信部と、前記受信部により受信された重畳情報が第1の量よりも大きいか否かを判定する判定部と、前記判定部により大きいと判定された場合には、前記受信部により受信された重畳情報の一部を出力し、前記判定部により大きくないと判定された場合には、前記受信部により受信された重畳情報を出力する出力部と、前記出力部により出力された重畳情報を、前記撮像部により撮像された撮像画像に重畳する重畳部と、前記重畳部により重畳された撮像画像を、ネットワークを介して配信する配信部と、を備える撮像装置と、ネットワークを介して通信可能な外部装置を制御するためのプログラムであって、
    前記第一の量を前記撮像装置からネットワークを介して取得する取得ステップ、
    をコンピュータに実行させることを特徴とするプログラム。
  14. 外部装置と、前記外部装置とネットワークを介して通信可能な撮像装置と、を含む撮像システムを制御するためのプログラムであって、
    前記外部装置にて、
    前記撮像装置にネットワークを介して重畳情報を送信する送信ステップ、
    をコンピュータに実行させ、
    前記撮像装置にて、
    被写体を撮像する撮像ステップと、
    前記送信ステップにて送信された重畳情報が第1の量よりも大きいか否かを判定する判定ステップと、
    前記判定ステップにより大きいと判定された場合には、前記送信ステップにて送信された重畳情報の一部を出力し、前記判定ステップにて大きくないと判定された場合には、前記送信ステップにて送信された重畳情報を出力する出力ステップと、
    前記出力ステップにて出力された重畳情報を、前記撮像ステップにて撮像された撮像画像に重畳する重畳ステップと、
    前記重畳ステップにて重畳された撮像画像を、前記外部装置にネットワークを介して配信する配信ステップと、
    をコンピュータに実行させることを特徴とするプログラム。
JP2013173363A 2013-08-23 2013-08-23 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム Pending JP2015041960A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013173363A JP2015041960A (ja) 2013-08-23 2013-08-23 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム
US14/463,529 US9571729B2 (en) 2013-08-23 2014-08-19 Image pickup apparatus, image pickup system, method for controlling image pickup apparatus, method for controlling image pickup system, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013173363A JP2015041960A (ja) 2013-08-23 2013-08-23 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2015041960A true JP2015041960A (ja) 2015-03-02

Family

ID=52480017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013173363A Pending JP2015041960A (ja) 2013-08-23 2013-08-23 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US9571729B2 (ja)
JP (1) JP2015041960A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6103999B2 (ja) * 2013-03-15 2017-03-29 キヤノン株式会社 画像データ送信装置、画像データ受信装置、画像データ送信方法、画像データ受信方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09163258A (ja) 1995-12-08 1997-06-20 Toshiba Corp Osd表示システム
JPH11146275A (ja) 1997-11-12 1999-05-28 Hitachi Ltd 画像処理表示装置
US6452597B1 (en) * 1999-08-24 2002-09-17 Microsoft Corporation Displaying text on a limited-area display surface
US7893959B2 (en) * 2002-01-22 2011-02-22 Sanyo Electric Co., Ltd. Video display system for correcting the position and size of mask images

Also Published As

Publication number Publication date
US20150054969A1 (en) 2015-02-26
US9571729B2 (en) 2017-02-14

Similar Documents

Publication Publication Date Title
US9888049B2 (en) Transmission apparatus, instruction apparatus, transmission method, instruction method, and storage medium
JP6415037B2 (ja) 撮像装置、クライアント装置、撮像装置の制御方法、クライアント装置の制御方法、及びプログラム
JP6253307B2 (ja) 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム
JP6376743B2 (ja) 撮像装置、撮像システム、撮像装置の制御方法、撮像システムの制御方法、及びプログラム
JP6234165B2 (ja) 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム
US10771747B2 (en) Imaging apparatus and imaging system
JP6335468B2 (ja) 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム
JP2015041960A (ja) 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム
JP2015088786A (ja) 撮像装置、撮像システム、撮像装置の制御方法、撮像システムの制御方法、及びプログラム
JP6444036B2 (ja) 撮像装置、及び撮像システム
JP6399758B2 (ja) 撮像装置および撮像装置の制御方法
JP6736715B2 (ja) 撮像装置、画像処理装置、撮像装置の制御方法、画像処理装置の制御方法及びプログラム
JP6071759B2 (ja) 撮像装置、撮像装置の制御方法、プログラム
JP6444473B2 (ja) 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム
JP6425389B2 (ja) 撮像装置、及び撮像システム
JP6270526B2 (ja) 撮像装置、及び撮像システム
JP2015233207A (ja) 画像処理装置
JP2015089077A (ja) 撮像装置、外部装置、撮像システム、撮像装置の制御方法、外部装置の制御方法、撮像システムの制御方法、及びプログラム