JP4298030B2 - Imaging server, client, control method and system, and storage medium - Google Patents
Imaging server, client, control method and system, and storage medium Download PDFInfo
- Publication number
- JP4298030B2 JP4298030B2 JP37227098A JP37227098A JP4298030B2 JP 4298030 B2 JP4298030 B2 JP 4298030B2 JP 37227098 A JP37227098 A JP 37227098A JP 37227098 A JP37227098 A JP 37227098A JP 4298030 B2 JP4298030 B2 JP 4298030B2
- Authority
- JP
- Japan
- Prior art keywords
- imaging
- camera
- server
- information
- client
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Facsimiles In General (AREA)
- Studio Devices (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は撮像手段で撮像して得られた映像情報をインターネット等のネットワーク上に配送する撮像サーバ及びクライアント及び制御方法及びシステム及び記憶媒体に関するものである。
【0002】
【従来の技術】
撮像手段の1つであるビデオカメラの映像を遠隔地の多地点から観察できるシステムがある。そして、本願出願人は、汎用のネットワーク上にカメラを撮像するサーバ(カメラサーバ)と、そのサーバに接続するクライアントを設け、クライアント側でカメラサーバのカメラ映像を観察するだけでなく、そのカメラのパン・チルト角度やズーム倍率等を遠隔操作可能にする技術をいくつか提案した。
【0003】
この場合の汎用ネットワークは、たとえばTCP/IPプロトコルを用いたネットワークの代表的なインターネットである。そして上記のサーバの構成は、パーソナルコンピュータ(以下、単にPC)とそれに接続しコンピュータ制御可能なカメラを接続したものであり、その上にカメラサーバとなるプログラムを搭載することで実現した。また、クライアントではWWW(World Wide Web)ブラウザが動作させ、グラフィカルユーザインタフェースを介してカメラサーバのアングルを操作する。ただし、カメラサーバのカメラを遠隔操作できるのは、1つのクライアントのみであり、カメラサーバは接続している複数のクライアントに撮像した同じ映像を配送する。
【0004】
【発明が解決しようとする課題】
このようなシステムにおいては、撮像しても良い範囲と、そうでない範囲を設けることが必要になる場合がある。理由は、パン・チルト角度およびズーム倍率を遠隔操作して、ある特定の角度(方向)におけるズーム倍率を非常に高くしてしまった場合に、プライバシー等の問題に繋がるからである。
【0005】
このようなプライバシー保護のため、物理的なカメラの可動範囲よりも狭めてでも、カメラ操作可能な範囲に制限を設けることが必要である。この操作可能範囲(カメラが潜在的に変更可能な範囲ではない)は、単純に、パン・チルト角度あるいはズーム倍率に対して上限・下限を設定して範囲制限をかけるものであった。
【0006】
つまり、
パン角度をθ(右にパンするほど値が大きいものとする)
チルト角度φ(上にパンするほど値が大きいものとする)
ズーム倍率z(倍率が大きいほど値が大きいものとする)
とすると、操作可能な範囲は、たとえば次のように1つの領域に設定していた。θmin≦θ≦θmax(θmin:パン角度左端,θmax:パン角度右端)
φmin≦φ≦φmax(φmin:チルト角度下限,φmax:パン角度上限)
zmin≦z≦zmax(Zmin:ズーム倍率下限,zmax:ズーム倍率上限)
しかし、現実には、撮像しても構わない範囲(領域)、或いは撮像しない範囲は離散的、つまり、とびとびに存在する場合があり、且つ、特定の範囲ではズーム倍率の上限は高くてもよいがそれ以外ではズーム倍率の上限は低く抑えたいといった要望には応えることができない。
【0007】
また、このようなシステムでは、カメラサーバにおける操作可能範囲を設定する管理者と、カメラを操作するクライアント側の操作者(カメラ利用者)とが異なっているのが通常である。従って、仮に、管理者が複雑な操作範囲を設定してしまうと、クライアントの操作者にしてみれば、どの範囲(領域)でどのようにズーム倍率や可視範囲が制限されているのか、直感的にわかりづらくなってしまうという問題もある。
【0008】
更に、管理者にとっても、よりわかりやすく、且つ、柔軟に操作可能範囲を設定し得ることが望まれていた。
【0009】
【課題を解決するための手段】
本発明はかかる問題点に鑑みなされたものであり、撮像方向が変更可能な撮像手段でもって撮像できる範囲内に、点在する複数の撮像可能領域を設定しながらも、クライアントに何らの違和感を与えず、良好な操作環境を提供し得る撮像サーバ及びクライアント及び制御方法及びシステム及び記憶媒体を提供しようとするものである。
【0010】
この課題を解決するため、たとえば本発明の撮像サーバは以下の構成を備える。すなわち、
撮像手段を有し、当該撮像手段により得られた映像情報をネットワークを介してクライアントに配送を行なう撮像サーバであって、
1つの撮像手段による撮像方向が変更可能な範囲内に映像情報の配送対象となる互いに異なる複数の撮影方向が変更可能な矩形領域を設定し、設定された矩形領域に関する情報および該矩形領域それぞれに対応する撮像手段名称に関する情報を記憶する記憶手段と、
前記クライアントから通知された撮像手段名称に対応する矩形領域に関する情報を前記記憶手段より読み出し、当該読出された矩形領域に関する情報に基づいて当該矩形領域を前記撮像手段の撮像方向が変更可能な範囲として設定し、当該撮像方向が変更可能な範囲内で前記撮像手段を制御する制御手段とを備える。
【0011】
【発明の実施の形態】
以下、添付図面に従って本発明にかかる実施形態を詳細に説明する。
【0012】
本実施形態の概要を簡単に説明すると、カメラサーバに接続された1つのカメラを、クライアント側から見たとき、それがあたかも複数のカメラであるかのように見せるものである。
【0013】
図1は本実施例におけるシステムのブロック構成図である。
【0014】
図中、1−1はカメラサーバ装置(以下、単にカメラサーバという)、1−2はカメラサーバ1−1からの映像を表示すると共にカメラを遠隔操作する表示操作端末(以下、クライアントという)であり、これらはネットワーク1−3によって接続されている。
【0015】
さて、カメラサーバ1−1は、ビデオカメラ−1−11からの映像を取り込みクライアント装置1−2への配送をおこなうとともに、クライアント1−2からのカメラ制御コマンドを受け付け、ビデオカメラ1−11のズーム倍率および可動雲台1−12を制御する(可動雲台1−12を動作させることでパン角、チルト角が変更できることになる)。
【0016】
なお、カメラサーバ1−1、クライアント1−2は、図示の場合には1台ずつ示しているものの、この数に制限はない。説明を簡単なものとするためである。以下の説明でもカメラサーバ、クライアントはそれぞれ1台であるものとして説明する。また、ネットワーク1−3に関しても、後で述べるカメラ制御信号、圧縮した映像信号を通すのに十分な帯域があるインターネットやイントラネット等のディジタルネットワークであればその種類は問わない。
【0017】
ただし、実施形態でのネットワークプロトコルとしてTCP/IP(UDP/IP)プロトコルを仮定し、以下アドレスといった場合にはIPアドレスを指すこととする。また、カメラサーバ1−1、クライアント1−2共にIPアドレスを割り当てられているものとする。
【0018】
カメラサーバ101は、パーソナルコンピュータで構成し得るが、図示のように、ビデオカメラ1−11、ビデオカメラの雲台のパン・チルト角度を制御する可動雲台装置1−12、ビデオカメラ1−11と可動雲台装置1−12のズーム倍率、パン・チルト角度を制御するカメラ・雲台制御部1−13、ビデオカメラ1−11からの映像を取り込む映像入力部1−15、取り込んだ映像データ圧縮する映像圧縮部1−16、圧縮した映像データをネットワーク上に配送する通信制御部1−14、ネットワーク1−3経由でのクライアント1−2からのコマンドを解釈し、カメラサーバ装置の各部を制御するコマンド解釈・実行部1−17、各部のデータ受け渡しに用いる記憶装置1−18から構成される。
【0019】
なお映像入力部1−15は、ビデオカメラ1−11からのNTSC映像信号を取り込みA/D変換後、MotionJEPGで圧縮して、通信制御部1−14に渡す。ここでは映像の圧縮形式として、MotionJEPG圧縮としたが、これに限らず如何なる圧縮形式でも良いのは勿論である。
【0020】
次にカメラクライアント1−2について述べる。
【0021】
このクライアントもサーバと同様、パーソナルコンピュータ等の汎用情報処理装置で構成し得るものであり、カメラサーバ1−1から配送されてきた圧縮映像データは、通信制御部1−21を通じて受信され、映像伸長部1−25で伸長され、映像表示部1−26で表示される。また、カメラクライアント装置上のユーザインタフェースの操作によりカメラ制御や画像蓄積保存操作、等ができるようになっているものとする。これらの画面表示・操作の制御は表示制御部1−24が行っている。
【0022】
映像表示部1−21には、ビットマップディスプレイが含まれており、図2のような画面(ユーザーインタフェース)を構成できる。実施形態における映像表示部1−21としては、ウインドウシステムを用いた。このシステムとしては、米国マイクロソフト社のWindows95、或いはUNIXのX−Window等がある。
【0023】
図2において、2−1は映像が表示される映像表示領域、2−2はカメラ操作のためのカメラ操作パネルであり、これはウインドウ形式で表示されるものである。カメラ操作パネル2−2中の2−22,2−23,2−28はスクロールバーであって、それぞれ、カメラのパン角度、チルト角度、ズーム倍率を操作できるようになっている。スクロールバー2−21はパン角操作用であって、バー中に表示されている矩形のツマミをマウス等のポインティングデバイスで左右に移動(一般にはドラッグ操作という)することでカメラサーバに対するパン角の指定コマンドを発行するために使用される。なお、「ツマミ」の表示位置は、パン角の操作制限領域内における現在の位置を示している。スクロールバー2−23はチルト角操作用、スクロールバー2−28はズーム倍率操作用であり、操作法及びそれぞれのツマミの位置の意味は、パン角用スクロールバー2−21と同じである。
【0024】
ただし、先に説明したように複数のクライアントのユーザは、同じカメラサーバの同じカメラからの映像を見ることができるので、結局の所、操作権を有するのは1つのクライアントのみである。従って、他のクライアントでは、スクロールバー2−21、2−23、2−28は操作不能状態であることを示すような形態で表示する(たとえば薄く表示する等)。また、操作権の獲得の仕方であるが、図示の操作開始ボタン2−21をマウス等で指示することで行なう。このボタンが指示されると、接続先のカメラサーバに操作権獲得要求を発行する。カメラサーバはこの要求を受けたとき、既に操作権を発行している他のクライアントが存在すれば要求に対して不可の通知を発行し、存在しなければ操作権を発行する。ただし、カメラサーバは、1つのクライアントに対して操作権を与えている時間を計時しており、所定時間経過したときに、操作権を無効にする通知を発行する。
【0025】
説明を図2のユーザーインタフェースに戻す。図中、2−30は、カメラ切替えボタンであり、このボタンを押すと2−31のようなプルダウンメニューが表示される。なお、プルダウンメニュー2−31の場合、カメラ1〜カメラ3の3通りのカメラが選択できるようになっている。このカメラ名は、実際のカメラ(実施形態におけるカメラサーバには物理的なカメラは1つだけである)ではなく、次に述べる「仮想的なカメラ」に対応しており、ここでのカメラ選択に対応して、「仮想的なカメラ」切替え(選択)を行う。また、ボタン2−30には選択中の仮想カメラ名が表示されるものとする。更に、この選択できる「仮想的なカメラ」の一覧情報は、そのクライアントがカメラサーバに接続した際にサーバから送信してくるものである。
【0026】
「仮想的なカメラ」について図9を用いて説明する。
【0027】
枠9−3は、カメラサーバ1−1のカメラ1−11が実際にに撮影することのできる全パン・チルト範囲における撮像できる範囲を示している(ただし、ズーム倍率は最低倍率における範囲である)。そして、斜線で示される領域が撮像を許可する領域を示している。換言すれば、斜線以外の領域はプライバシー等の問題で撮像してはいけない領域を示している。
【0028】
カメラ1−11は、そのパン角、チルト角を変更できるわけであるから、クライアントのユーザにしてみれば、1つのカメラは矩形範囲でそのアングルを変更できると考えるのは自然であろう。換言すれば、1つのカメラが図示の如く逆L字領域と、離散した領域で撮像できるようにしてしまうと、違和感を与える。そこで、この違和感を与えないようにするため、実施形態では、撮像できる領域をいくつかの矩形領域に分割し、それぞれの分割領域(図示では9−11、9−12,9−13の3つ)に仮想的なカメラを割り当てた。この結果、ユーザにしてみれば、あたかも複数(図示では3つ)のカメラ(仮想的なカメラ)がカメラサーバ1−1に接続されているかのように見えるし、それぞれのカメラが矩形範囲内で自由にそのアングルを変更できるように見えるので、何らの違和感を与えないようにすることができる。図2のプルダウンメニュー2−31で表示されるカメラ名はまさにこの仮想的なカメラを示している。
【0029】
ここで、
パン角度をθ(右にパンするほど値が大きいものとする)
チルト角度φ(上にパンするほど値が大きいものとする)
ズーム倍率z(倍率が大きいほど値が大きいものとする)
とすると、たとえばある特定の仮想カメラの操作可能な範囲は次のようにして設定できる。
【0030】
θmin≦θ≦θmax(θmin:パン角度左端、θmax:パン角度右端)
φmin≦φ≦φmax(φmin:チルト角度下限,φmax:パン角度上限)
zmin≦z≦zmax(Zmin:ズーム倍率下限,zmax:ズーム倍率上限)
たとえば、図9における矩形領域9−11にあてはめた場合、この領域に対応する仮想的なカメラのパンチルト操作範囲は、その対角座標を(θmin,φmin),(θmax,φmax)となる。
【0031】
もちろん、(θmin,φmin),(θmax,φmax)は物理的な全体の操作範囲内に収まっている。なお、実施形態では仮想カメラの数は3つとしているが、これに限らず、論理的にはいくつでも設定可能である。また、仮想カメラの操作範囲を示す領域は互いに重なっていてもかまわない。なお、すべての仮想的なカメラには、仮想カメラ識別のためのID番号が振られているものとする。内部的には、図10に示すようなカメラ操作範囲テーブルが共有メモリ3−43に保持しているものとする。また、1つのカメラサーバに接続される物理的なカメラは1つだけでなく、2つ、或いはそれ以上であってもよい。この場合には、1つの物理的なカメラと図10に示すテーブルとを対応させることになる。つまり、図10に示すテーブルは物理的なカメラの数だけ用意すればよい。
【0032】
図3は、本実施例のプロセス構成図である。ここでプロセスとはWindowsNTやUNIX等のマルチタスクオペレーティングシステムにおけるものを意味する。定常状態では、これらのすべてのプロセス3−11,3−12,3−21,3−22,3−31が稼動しているものとする。
【0033】
カメラサーバ1−1上でで動作する各プロセスは以下の通りである。
・カメラ制御サーバープロセス3−11:操作権を有するクライアントプロセス3−31が発行したカメラ制御命令を受け取り、カメラ制御部1−13に命令を出力する制御を行なう。
・カメラ状態通知プロセス3−12:カメラのパンチルト角度などの状態を検知してクライアントプロセス3−31に通知する。
・映像サーバプロセス3−21:カメラ映像の送信先を管理する
・映像獲得・送信プロセス3−22:カメラ映像の取り込み・送信を行う。
【0034】
なお、映像表示禁止フラグ3−41、送信先リスト3−42、カメラ制御範囲制限リスト3−43、カメラ状態レジスタ3−44は、プロセス間でデータの受け渡しに用いる共有メモリに設けられている。また、カメラ制御制限範囲レジスタ3−45、制限権フラグ3−51、カメラ番号リスト3−52は、一時的にプロセスのデータを保存するためのレジスタである。
【0035】
カメラサーバ1−1上のプロセス3−11〜3−22の動作の詳細はフローチャート図4,5,6に示し、カメラクライアント1−2上では、クライアントプロセス3−31が動作しており、その動作の詳細は図7に示す。なお、これらのフローチャートに対応するプログラムは、サーバ或いはクライアントそれぞれが有する記憶装置(たとえばハードディスク装置等)に記憶されており、それが主記憶装置(メインRAM)にロードされ実行されることになる。
【0036】
先ず、カメラサーバの各プロセスについて図4〜7のフローチャートを用いて説明する。
【0037】
なお、パケットとしては図8のような形式のものが生成され、ネットワーク1−3に送信されることになる(厳密には、TCP/IPやUDP/IP等のパケットで用いられているフォーマットを使用する事になるが、図8では実施例の説明に必要なパケット情報のみ記述した)。
【0038】
まず、図4のフローを用いてカメラ制御プロセス、カメラ状態通知プロセスについて説明する。
【0039】
カメラ制御サーバプロセス3−11が起動されると(ステップS400)、カメラ状態通知プロセス3−12を生成し(ステップS402)、クライアントプロセス3−31からのカメラ制御接続要求(図8(1))を待つ(ステップS403)。クライアントプロセス3−31から接続要求があると、接続受付処理(Ackを返す)を行い(ステップS404)、接続のあったクライアントプロセス3−31から送信されてくるカメラ制御コマンド(図8(2)〜(4)を待つ(ステップS405)。なお、接続受付処理では、先に説明したように、カメラサーバが有する仮想的なカメラの一覧情報をクライアントに通知、つまり、転送する。また、このとき、タイマーセットして、ある一定時間(「制御持ち時間」と呼ぶ)が経つとカメラ制御接続を切断する(ステップS407)ようになっている。
【0040】
カメラ制御コマンド(図8(2)〜(4))を受信すると、そのコマンドに応じてカメラ制御部1−13を通じてビデオカメラ1−11のズーム倍率、および可動雲台装置1−12のパンチルト角度を制御する(ステップS409)。制御持ち時間が終わるまで、クライアントプロセス3−31からカメラ制御コマンドを受付け、コマンド解釈部1−17、カメラ雲台制御部1−132を通じて、コマンドに応じたカメラ制御を行う。なお、図5に制御コマンドに応じた処理の詳細を示した。ここでカメラ制御コマンドとしては、説明を簡単にするため、次の命令のいずれかであるものとした。
【0041】
パン角度変更命令 PAN θ
チルト角度変更命令 TIL φ
ズーム倍率変更命令 ZOM α
ただし、θ,φ,αは、それぞれ、パン角度、チルト角度、ズーム倍率をあらわすパラメータであり、このカメラ制御コマンドには、他にも逆光補正やオートフォーカス、マニュアルフォーカス値設定等、各種ありえるが、ここでは説明を省略する。
【0042】
さらに、「仮想的なカメラ」切替えのための次の命令もある(図8(5))。
カメラ切替え命令 SEL n
(ただし、nは仮想カメラの識別番号を示す)
カメラ切替え要求命令の時は、仮想カメラ識別番号に対応する操作範囲をカメラ制御範囲制限リスト3−43から読み出し、カメラ制御制限範囲レジスタおよびカメラ状態レジスタ3−44に設定し(ステップS502)、次の手順で計算したパン・チルト・ズームの値を、仮想的なカメラの初期位置として初期設定する(ステップS504)。仮想的なカメラの初期設定値は、パン・チルト角度に関しては制限範囲の中央の値とし、ズーム倍率に関しては制限範囲の最低倍率の値とする。ただし、あらかじめ制限範囲のパン・チルトズームを定めておき、その値にセットするのでも良い。
【0043】
なお、仮想カメラ切替えの間、つまりカメラパン・チルト・ズーム変更中は、映像送信を許可しない領域を通過する可能性もあるので、この間の映像は送信しないよう、映像表示禁止フラグをONにセットしておく(ステップS503,S505)。この映像挟持禁止フラグがON状態にあるときは、後述するように仮想カメラの識別番号として“−1”の情報を各クライアントに通知する。こうして、そして、指示された仮想カメラがステップ502で設定した状態(パン角、チルト角、ズーム倍率)になった場合に、映像表示禁止フラグをOFFに設定しする。これによって、再び映像の配送処理が行なえるようになる。
【0044】
一方、パン、チルト、ズーム要求命令の場合には、命令に含まれるパン角度、チルト角度、ズーム倍率がその仮想カメラの操作範囲内であるかどうかチェックし(ステップS511,S521)、値が範囲を超えている場合には、操作範囲の上限(値が大きすぎる場合)ないし下限(値が小さすぎる場合)の値に再設定して、カメラ制御を行う。
【0045】
カメラ制御接続開始から一定時間が経過し、制御持ち時間が終了すると、接続切断処理(S407)を行い、このステップS407の処理の中でカメラ制御接続終了命令(図8(8))、つまり、カメラの操作権を無くす命令をクライアントプロセス3−31に返送する。そして、再び接続要求が来るのを待つ(S403)。カメラ制御サーバープロセス3−11は同様に実施された任意のクライアントプロセスからのカメラ制御接続要求を受け付け、カメラ操作を実現するが、図4からもわかるように同時に複数のクライアントプロセスとは接続できない。したがって、この接続はTCP/IPのようなコネクション指向の接続がなされるものとする。
【0046】
ステップS402で生成されたカメラ状態通知プロセス3−12が動作中は、常時カメラ状態をチェックする。すなわちカメラのパン・チルト角度、ズーム倍率(=p,t,z)とする)をカメラ・雲台制御部1−13に問い合わせる事で読み込み、カメラ状態レジスタ3−44に書き込むと共に(ステップS422)、映像表示禁止フラグ3−41の状態を見て(ステップS423)、フラグがONであればカメラ状態を「カメラ切替え中」(仮想カメラ識別番号n=−1)として(ステップS424)、映像を送信しているクライアントプロセス1−2にカメラ状態(図8(9)の形式)を通知する(ステップS426)。
【0047】
次に、図6のフローを用いて映像サーバプロセス、映像獲得・送信プロセスについて説明する。
【0048】
映像サーバプロセス3−21が起動されると(ステップS600)、映像獲得・送信プロセス3−22を生成し(ステップS602)、クライアントプロセス3−31からのイベントを待つ(ステップS603)。ここで、イベントが映像表示開始要求コマンド(図8(7))であれば(ステップS604)、映像表示要求パケットに含まれているパケットの送信元アドレスを確認し、映像の送信先リスト3−42に追加する。映像表示終了要求コマンドであれば(ステップS606)、同様に映像表示要求パケットに含まれているパケットの送信元アドレスを確認し、映像の送信先リスト3−42から削除する。なお、映像送信先リスト3−42には、リスト形式で映像送信先のアドレスが保持されている。
【0049】
映像獲得・送信プロセス3−22は、起動されると、次の操作を繰り返す。すなわち、カメラ映像のフレームとして取り込み(ステップS622)、圧縮を行い(ステップS623)、映像表示禁止フラグがONでなければ(ステップS624)、この圧縮された映像データを、図8(10)の形式にパケット化し、映像送信先リスト3−42にある複数のアドレスに対して、送信する(ステップS625)。
【0050】
次にクライアント側で動作するクライアントプロセス3−31を図7のフローチャートに従って説明する。
【0051】
まず、プロセス起動時に、初期化処理を行い(ステップS701)、接続するカメラサーバ装置1−1のアドレス(IPアドレス、ここでは”ADDR_C”とする)に対応するカメラサーバに映像表示開始要求を送信する(ステップS702)。このときのパケット形式は図8の(6)の通りである。
【0052】
ここで、ADDR_Cに対応するカメラサーバからAckが返ってこなければ(ステップS703)、アドレスが間違っている等、動作異常なので、クライアントプロセスを終了する(ステップS704)。
【0053】
また、Ackが返ってくれば表示成功なので(ステップS703)、イベント、すなわちユーザのユーザインタフェースによる入力、或いは、カメラサーバ1−1からの各種パケットの受信を待つ(ステップS705)。
【0054】
ここで、ユーザが操作開始ボタン2−21を押すと(ステップS706)、自分が既にカメラ制御を開始している状態かどうかを操作権フラグ3−51(クライアントが有するRAMに確保された変数)で確認し(ステップS707)、既に制御中ならステップS605に戻る。操作中でなければ、カメラ制御接続要求(図8(1))をカメラ制御サーバプロセスに対して発行し(ステップS708)、許可(Ack)を待つ(ステップS709)。ここでAckが返ってくれば、カメラ制御サーバプロセスに対して接続が成立し、クライアント装置の記憶部1−29にある操作権フラグ3−51をONにし(ステップS711)、カメラ操作パネル2−2(撮像方向変更ボタンやスクロールバー)の操作を有効にする。なお、カメラ制御サーバプロセスは、カメラ制御接続要求待ちステップS403のときにしか、接続要求を受けつけない。
【0055】
また、接続成立して「制御待ち時間」が終了するとカメラ制御サーバプロセスより、カメラ制御接続終了要求(図8(8))が返ってくるが、これを受け取ると(ステップS714)操作権フラグ3−51をOFFにして(ステップS715)、カメラ操作パネル2−2の操作を無効にする(ステップS716)。
【0056】
カメラ操作パネル2−2の操作が有効になっている間は、カメラ操作パネル2−2の操作に対応したカメラ制御命令が生成され、カメラサーバプロセス1−2に発行される(ステップS717〜S718)。なお、カメラ操作パネル2−2のカメラ切替えプルダウンメニュー2−31からカメラを選択した場合には、カメラ切替えの命令(図8(5))が発行される(ステップS719〜S720)。なお、命令の生成過程に関しては、ここでは省略する。
【0057】
メニューなどの操作によって発行されるクライアントプロセス終了要求(ステップS726)に対しては、映像表示終了要求(図8(8))を発行し(ステップS728)、クライアントプロセスを終了する(ステップS628)。
【0058】
パケットが到着した場合には(ステップS721)、それが映像データ(図8(10))の場合(ステップS722)、映像データ中の圧縮映像データを読み出し、伸長処理を行った後、この映像フレームデータを用いて、2−1の映像表示パネルの表示映像を更新する(ステップS723)。
【0059】
到着パケットがカメラ状態通知(図8(9))の場合には(ステップS724)、パンチルト角度およびズーム倍率を操作するスクロールバー2−21,2−23,2−28のノッチ(ツマミ部分)の表示位置を、パケットに含まれているパラメータを用いて、対応する位置に変更する。また、2−30のカメラ切替えプルダウンボタンには仮想カメラ識別番号に対応したカメラ名を表示する。(これは、他のクライアントプロセスがカメラを遠隔操作している場合に、その情報を更新していることになる)。なお、仮想カメラ識別番号とカメラ名の対応付けは、カメラ状態通知プロセス3−12から対応関係を通知されたものを用いる。ただし、仮想カメラ識別番号が−1の時(カメラが仮想カメラの撮影可能な範囲に移動中の場合である)は、仮想カメラ切替え動作中であるとし、映像表示パネル2−1にカメラ切替え中である旨表示する。
【0060】
以上の結果、実施形態によれば、カメラサーバが有する物理的な1つのカメラが、クライアントから見ればあたかも複数のカメラ(仮想的なカメラ)であるかのように見え、しかも、個々の仮想的カメラの少なくともパン角、チルト角は矩形範囲内であれば自由に変更可能であるので、そこにはプライバシーの問題で撮像が制限されている領域があることすら知らずに済み、しかも、何らの違和感も与えないようにすることができる。
【0061】
なお、先にも説明したが、1つのカメラサーバに物理的なカメラを複数のカメラを設けることも可能である。この場合も、各物理的なカメラそれぞれに複数の仮想カメラを設定すればよい。このとき、カメラサーバは各物理的なカメラにつき、独立してクライアントに操作権を与えるようにする。
【0062】
また、カメラサーバの管理者の場合、カメラサーバを直接操作してカメラ制御制限リストを編集しても良いが、クライアントと同様に接続し、そこで管理者であることをカメラサーバに通知し(たとえばIDとか、パスワード等で通知する)、ftp等のプロトコルで制限リストのファイルをカメラサーバに転送するようにすればよい。
【0063】
或いは、管理者である場合には、物理的なカメラが有するパン角、チルト角の変更可能な範囲枠を画面に表示し、その中でマウス等のポインティングデバイスでもって矩形をいくつも設定することで、それぞれの矩形領域に仮想カメラとその仮想カメラの移動可能なパン角、チルト角を設定するようにしてもよい。ズーム倍率はたとえば設定した各矩形領域につき、キーボードやマウス等で上限値、下限値を設定すればよい。勿論、このためには、カメラサーバ側には管理者がログインした場合に、上記の操作を管理者に提供するためのプログラムを動作させれば良いだけである。
【0064】
次に、複数の制御制限領域(複数の仮想カメラ)を持つカメラサーバ装置や、とくに制限することを設定していないカメラサーバ装置が、混在してネットワークにそれぞれ接続されている状況を図11を用いて説明する。
【0065】
カメラサーバが複数存在する状況では、カメラクライアントを利用するユーザに、カメラサーバのリストを呈示して(たとえば図12のような一覧を表示させ)、その中から自分が見たいカメラ・サーバをマウス等のポインティングデバイスで選択することができるようにすることが望まれる。
【0066】
ユーザによりカメラ・サーバが選択されると、カメラクライアントは図7のステップS702にあるように、映像表示開始要求を送信する。本発明を利用すれば、他のカメラサーバ装置と同様に、複数の制御制限領域を別々の独立したカメラとして扱うことができるようになる。例えば、図11のユーザ・インタフェースにおいて、カメラ1〜カメラ3は、同一のカメラサーバの各々の制御制限領域が対応する。カメラ4,カメラ5は、それぞれ別のカメラサーバである。
【0067】
本実施例のように、
1)カメラサーバ装置に、複数のカメラ制御制限範囲すなわち、パン・チルト角度およびズーム倍率の範囲を制限した領域(「制御制限領域」と呼ぶ)を管理する手段を設け、
2)それぞれの制限領域は、パン左端角度、パン右端角度、チルト下限角度、パン上限角度、ズーム下限倍率、ズーム上限倍率を設定することで、制御範囲制限を行い、
3)クライアントプロセスからは、各々の制御制限領域はそれぞれ別々な独立した仮想的なカメラであるかのように見せ、
4)クライアントプロセスからは、複数の制御制限領域を切り替える場合に、複数のカメラ切替えであるかのように扱う、
ことにより、プライバシーの問題に対してより現実的で柔軟なカメラ制御制限範囲設定を可能にする。つまり、一つ一つのカメラ制御範囲制限領域は単純な設定になっており、複数の仮想的なカメラという概念で、このような制御制限範囲領域を複数の設定できるため、カメラ制御範囲を設定する者は、異なるカメラとして制御制限範囲を設定すればよく、クライアントプロセスからも、制御制限範囲の異なる別々なカメラとして見えるので、制限範囲の把握がやりやすくなる。
【0068】
なお、上記実施形態では、カメラサーバには撮像手段及びネットワークに接続するための手段といったハードウェアを必要とするものの、そのベースはパーソナルコンピュータ等の汎用情報処理装置で実現できる。また、クライアントは撮像手段がないだけで、基本的なハードウェアはカメラサーバと同じ、パーソナルコンピュータ等の汎用情報処理装置で構築できる。
【0069】
要は、必要とするハードウェアを活用して装置をカメラサーバ或いはクライアントとして動作させるプログラムを備えていれば良いことになる。従って、本願発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されるものである。
【0070】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0071】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
【0072】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0073】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0074】
また、本実施形態における撮像手段としてはカメラを例に挙げたが、これに限定される、フラットベットスキャナ等であっても良い。
【0075】
【発明の効果】
以上説明したように本発明によれば、撮像方向が変更可能な撮像手段でもって撮像できる範囲内に、点在する複数の撮像可能領域を設定しながらも、クライアントに何らの違和感を与えず、良好な操作環境を提供することが可能になる。
【図面の簡単な説明】
【図1】実施形態におけるカメラシステムのブロック構成図である。
【図2】実施形態におけるクライアント側のユーザーインタフェースを示す図である。
【図3】実施形態におけるシステムにおける動作シーケンスを示す図である。
【図4】実施形態におけるカメラサーバの動作を示すフローチャートである。
【図5】実施形態におけるカメラサーバの動作を示すフローチャートである。
【図6】実施形態におけるカメラサーバの動作を示すフローチャートである。
【図7】実施形態におけるクライアントの動作を示すフローチャートである。
【図8】実施形態における各コマンドのフォーマットを示す図である。
【図9】実施形態における撮影可能領域の設定例を示す図である。
【図10】実施形態におけるカメラ制御制限リストの構造を示す図である。
【図11】実施形態における変形例のシステム構成を示す図である。
【図12】図11のシステムにおけるカメラリストを示す図である。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an imaging server, a client, a control method, a system, and a storage medium that deliver video information obtained by imaging using an imaging unit to a network such as the Internet.
[0002]
[Prior art]
There is a system capable of observing images from a video camera, which is one of imaging means, from multiple points in a remote place. The applicant of the present invention provides a server (camera server) for imaging a camera on a general-purpose network and a client connected to the server, and not only observes the camera video of the camera server on the client side, but also Several technologies that enable remote control of pan / tilt angle and zoom magnification were proposed.
[0003]
The general-purpose network in this case is a typical Internet such as a network using the TCP / IP protocol. The configuration of the server is realized by connecting a personal computer (hereinafter simply referred to as a PC) and a camera that can be controlled by a computer and mounting a program serving as a camera server thereon. In addition, a WWW (World Wide Web) browser is operated on the client, and the angle of the camera server is operated via a graphical user interface. However, only one client can remotely control the camera of the camera server, and the camera server delivers the same image captured to a plurality of connected clients.
[0004]
[Problems to be solved by the invention]
In such a system, it may be necessary to provide a range where imaging may be performed and a range where imaging is not possible. The reason is that, when the pan / tilt angle and zoom magnification are remotely controlled to increase the zoom magnification at a specific angle (direction) to a very high level, it leads to problems such as privacy.
[0005]
In order to protect such privacy, it is necessary to limit the range in which the camera can be operated even if it is narrower than the movable range of the physical camera. This operable range (which is not a range in which the camera can potentially be changed) is simply to set an upper limit and a lower limit on the pan / tilt angle or zoom magnification to limit the range.
[0006]
That means
Pan angle θ (assuming that panning to the right increases the value)
Tilt angle φ (assuming that the value increases with panning up)
Zoom magnification z (the larger the magnification, the larger the value)
Then, the operable range is set to one area as follows, for example. θmin ≦ θ ≦ θmax (θmin: left end of pan angle, θmax: right end of pan angle)
φmin ≦ φ ≦ φmax (φmin: tilt angle lower limit, φmax: pan angle upper limit)
zmin ≦ z ≦ zmax (Zmin: zoom magnification lower limit, zmax: zoom magnification upper limit)
However, in reality, the range (area) that may be imaged or the range that is not imaged may be discrete, that is, there may be discretely, and the upper limit of the zoom magnification may be high in a specific range. However, other than that, it is impossible to meet the demand to keep the upper limit of the zoom magnification low.
[0007]
In such a system, the administrator who sets the operable range in the camera server is usually different from the client-side operator (camera user) who operates the camera. Therefore, if the administrator sets a complicated operation range, it is intuitive for the client operator to determine in which range (area) the zoom magnification and the visible range are limited. There is also a problem that it becomes difficult to understand.
[0008]
Furthermore, it has been desired for the administrator to set the operable range more easily and flexibly.
[0009]
[Means for Solving the Problems]
The present invention has been made in view of such problems, and while setting a plurality of scattered imageable areas within a range that can be imaged by an imaging means whose imaging direction can be changed, the client feels something strange. The present invention is intended to provide an imaging server, a client, a control method, a system, and a storage medium that can provide a favorable operation environment without giving the information.
[0010]
In order to solve this problem, for example, the imaging server of the present invention has the following configuration. That is,
It has imaging means and distributes the video information obtained by the imaging means to the client via the network. Send An imaging server to perform,
Within the range in which the imaging direction by one imaging means can be changed Delivery of video information Target Different from each other Multiple shooting Change direction Possible Rectangle Set the area and set Rectangle region Information about the rectangular area Corresponding to each Shooting Name of image means Related Storage means for storing information to be performed;
From the client Notified Corresponding to the selected imaging means About rectangular area Read information from the storage means, Issued The About rectangular area information The rectangular region based on Imaging direction of the imaging means Changed Possible Na range As Set the imaging direction Changed Possible Na Control means for controlling the imaging means within a range.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
[0012]
The outline of this embodiment will be briefly described. When one camera connected to the camera server is viewed from the client side, it looks as if it is a plurality of cameras.
[0013]
FIG. 1 is a block diagram of a system in this embodiment.
[0014]
In the figure, 1-1 is a camera server device (hereinafter simply referred to as a camera server), and 1-2 is a display operation terminal (hereinafter referred to as a client) that displays images from the camera server 1-1 and remotely controls the camera. Yes, these are connected by the network 1-3.
[0015]
Now, the camera server 1-1 captures the video from the video camera 1-11, delivers it to the client apparatus 1-2, accepts the camera control command from the client 1-2, and receives the video camera 1-11. The zoom magnification and the movable head 1-12 are controlled (the pan angle and the tilt angle can be changed by operating the movable head 1-12).
[0016]
In addition, although the camera server 1-1 and the client 1-2 are shown one by one in the figure, this number is not limited. This is to make the explanation simple. In the following description, it is assumed that there is one camera server and one client. The network 1-3 may be of any type as long as it is a digital network such as the Internet or an intranet having a sufficient bandwidth for passing a camera control signal and a compressed video signal described later.
[0017]
However, a TCP / IP (UDP / IP) protocol is assumed as a network protocol in the embodiment, and the following address indicates an IP address. Assume that both the camera server 1-1 and the client 1-2 are assigned IP addresses.
[0018]
Although the camera server 101 can be composed of a personal computer, as shown in the figure, a video camera 1-11, a movable camera platform device 1-12 for controlling the pan / tilt angle of the camera platform, and a video camera 1-11. And a camera / head control unit 1-13 for controlling the zoom magnification and pan / tilt angle of the movable head device 1-12, a video input unit 1-15 for capturing video from the video camera 1-11, and captured video data A video compression unit 1-16 for compression, a communication control unit 1-14 for delivering compressed video data over the network, and a command from the client 1-2 via the network 1-3 are interpreted. It comprises a command interpretation / execution unit 1-17 to be controlled and a storage device 1-18 used for data transfer of each unit.
[0019]
The video input unit 1-15 takes in the NTSC video signal from the video camera 1-11, performs A / D conversion, compresses it with MotionJEPG, and passes it to the communication control unit 1-14. Here, MotionJEPG compression is used as the video compression format, but it is of course possible to use any compression format.
[0020]
Next, the camera client 1-2 will be described.
[0021]
Similarly to the server, this client can also be configured by a general-purpose information processing device such as a personal computer. The compressed video data delivered from the camera server 1-1 is received through the communication control unit 1-21, and video decompression is performed. The image is expanded by the unit 1-25 and displayed on the video display unit 1-26. Further, it is assumed that camera control, image storage / storing operation, and the like can be performed by operating a user interface on the camera client device. The display control unit 1-24 controls the screen display / operation.
[0022]
The video display unit 1-21 includes a bitmap display, and a screen (user interface) as shown in FIG. 2 can be configured. A window system is used as the video display unit 1-21 in the embodiment. As this system, there is Windows 95 of Microsoft Corporation in the United States or X-Windows of UNIX.
[0023]
In FIG. 2, reference numeral 2-1 denotes a video display area in which video is displayed, and 2-2 denotes a camera operation panel for camera operation, which is displayed in a window format. Reference numerals 2-22, 2-23, and 2-28 in the camera operation panel 2-2 are scroll bars, which can operate the pan angle, tilt angle, and zoom magnification of the camera, respectively. The scroll bar 2-21 is for pan angle operation. By moving a rectangular knob displayed in the bar to the left and right with a pointing device such as a mouse (generally called drag operation), the pan angle of the camera server is adjusted. Used to issue a specified command. The display position of “knob” indicates the current position in the pan angle operation restricted area. The scroll bar 2-23 is for tilt angle operation, the scroll bar 2-28 is for zoom magnification operation, and the operation method and the meaning of the position of each knob are the same as the pan angle scroll bar 2-21.
[0024]
However, as described above, users of a plurality of clients can view images from the same camera of the same camera server, so that only one client has an operation right after all. Therefore, in other clients, the scroll bars 2-21, 2-23, and 2-28 are displayed in a form indicating that they cannot be operated (for example, displayed lightly). The operation right is acquired by instructing the illustrated operation start button 2-21 with a mouse or the like. When this button is instructed, an operation right acquisition request is issued to the connected camera server. Upon receipt of this request, the camera server issues a notification of impossibility to the request if there is another client that has already issued the operation right, and issues the operation right if there is no other. However, the camera server counts the time during which the operation right is given to one client, and issues a notification to invalidate the operation right when a predetermined time has elapsed.
[0025]
Returning the description to the user interface of FIG. In the figure, reference numeral 2-30 denotes a camera switching button, and when this button is pressed, a pull-down menu such as 2-31 is displayed. In the case of the pull-down menu 2-31, three types of cameras,
[0026]
The “virtual camera” will be described with reference to FIG.
[0027]
A frame 9-3 indicates a range that can be imaged in the entire pan / tilt range that the camera 1-11 of the camera server 1-1 can actually shoot (however, the zoom magnification is the range at the minimum magnification). ). A region indicated by hatching indicates a region where imaging is permitted. In other words, the area other than the hatched area indicates an area that should not be imaged due to privacy or other problems.
[0028]
Since the camera 1-11 can change its pan angle and tilt angle, it seems natural for a client user to think that one camera can change its angle within a rectangular range. In other words, if one camera can capture images in an inverted L-shaped region and a discrete region as shown in the drawing, a sense of incongruity is given. Therefore, in order to prevent this uncomfortable feeling, in the embodiment, the imageable area is divided into several rectangular areas, and each of the divided areas (in the figure, 9-11, 9-12, 9-13) is divided. ) Assigned a virtual camera. As a result, for the user, it looks as if multiple (three in the figure) cameras (virtual cameras) are connected to the camera server 1-1, and each camera is within a rectangular range. Since it seems that the angle can be freely changed, it is possible to prevent any discomfort. The camera name displayed in the pull-down menu 2-31 in FIG. 2 indicates exactly this virtual camera.
[0029]
here,
Pan angle θ (assuming that panning to the right increases the value)
Tilt angle φ (assuming that the value increases with panning up)
Zoom magnification z (the larger the magnification, the larger the value)
Then, for example, the operable range of a specific virtual camera can be set as follows.
[0030]
θmin ≦ θ ≦ θmax (θmin: left end of pan angle, θmax: right end of pan angle)
φmin ≦ φ ≦ φmax (φmin: tilt angle lower limit, φmax: pan angle upper limit)
zmin ≦ z ≦ zmax (Zmin: zoom magnification lower limit, zmax: zoom magnification upper limit)
For example, when applied to the rectangular region 9-11 in FIG. 9, the virtual camera pan / tilt operation range corresponding to this region has the diagonal coordinates (θmin, φmin), (θmax, φmax).
[0031]
Of course, (θmin, φmin) and (θmax, φmax) are within the entire physical operation range. In the embodiment, the number of virtual cameras is three. However, the number is not limited to this, and any number of virtual cameras can be set logically. The areas indicating the operation range of the virtual camera may overlap each other. It is assumed that ID numbers for virtual camera identification are assigned to all virtual cameras. Internally, it is assumed that a camera operation range table as shown in FIG. 10 is held in the shared memory 3-43. Further, the number of physical cameras connected to one camera server is not limited to one, but may be two or more. In this case, one physical camera is associated with the table shown in FIG. That is, the number of tables shown in FIG.
[0032]
FIG. 3 is a process block diagram of the present embodiment. Here, the process means a process in a multitasking operating system such as Windows NT or UNIX. In the steady state, all these processes 3-11, 3-12, 3-21, 3-22, and 3-31 are assumed to be operating.
[0033]
Each process operating on the camera server 1-1 is as follows.
Camera control server process 3-11: Controls to receive a camera control command issued by the client process 3-31 having the operation right and output the command to the camera control unit 1-13.
Camera state notification process 3-12: Detects the camera's pan / tilt angle state and notifies the client process 3-31 of the detected state.
Video server process 3-21: Manages camera video transmission destinations
Image acquisition / transmission process 3-22: Capture / transmission of camera video.
[0034]
The video display prohibition flag 3-41, the transmission destination list 3-42, the camera control range restriction list 3-43, and the camera state register 3-44 are provided in a shared memory used for data transfer between processes. A camera control restriction range register 3-45, a restriction right flag 3-51, and a camera number list 3-52 are registers for temporarily storing process data.
[0035]
Details of the operations of the processes 3-11 to 3-22 on the camera server 1-1 are shown in flowcharts 4, 5, and 6. On the camera client 1-2, the client process 3-31 is operating. Details of the operation are shown in FIG. A program corresponding to these flowcharts is stored in a storage device (for example, a hard disk device or the like) included in each server or client, and is loaded into a main storage device (main RAM) and executed.
[0036]
First, each process of the camera server will be described with reference to the flowcharts of FIGS.
[0037]
As a packet, a packet having the format shown in FIG. 8 is generated and transmitted to the network 1-3 (strictly, the format used in the packet such as TCP / IP or UDP / IP is used. Although only the packet information necessary for explaining the embodiment is described in FIG.
[0038]
First, a camera control process and a camera state notification process will be described with reference to the flow of FIG.
[0039]
When the camera control server process 3-11 is activated (step S400), a camera state notification process 3-12 is generated (step S402), and a camera control connection request from the client process 3-31 ((1) in FIG. 8). (Step S403). When there is a connection request from the client process 3-31, connection acceptance processing (returns Ack) is performed (step S404), and a camera control command (FIG. 8 (2)) transmitted from the connected client process 3-31. In step S405, as described above, the virtual camera list information held by the camera server is notified to the client, that is, transferred, at this time. The camera control connection is disconnected after a certain time (referred to as “time with control”) after the timer is set (step S407).
[0040]
When a camera control command (FIGS. 8 (2) to (4)) is received, the zoom magnification of the video camera 1-11 and the pan / tilt angle of the movable pan head device 1-12 are transmitted through the camera control unit 1-13 in accordance with the command. Is controlled (step S409). The camera control command is received from the client process 3-31 until the time with control is over, and camera control corresponding to the command is performed through the command interpretation unit 1-17 and the camera platform control unit 1-132. FIG. 5 shows details of processing according to the control command. Here, in order to simplify the description, the camera control command is assumed to be one of the following commands.
[0041]
Pan angle change command PAN θ
Tilt angle change command TIL φ
Zoom magnification change command ZOM α
However, θ, φ, and α are parameters representing pan angle, tilt angle, and zoom magnification, respectively, and various other camera control commands such as backlight correction, autofocus, and manual focus value setting can be used. The description is omitted here.
[0042]
Further, there is the next command for switching the “virtual camera” (FIG. 8 (5)).
Camera switching command SEL n
(Where n is the virtual camera identification number)
In the case of the camera switching request command, the operation range corresponding to the virtual camera identification number is read from the camera control range restriction list 3-43 and set in the camera control restriction range register and the camera status register 3-44 (step S502). The pan / tilt / zoom values calculated in the above procedure are initially set as the initial position of the virtual camera (step S504). The initial setting value of the virtual camera is the center value of the limit range for the pan / tilt angle, and the minimum magnification value of the limit range for the zoom magnification. However, the pan / tilt zoom of the limit range may be determined in advance and set to that value.
[0043]
During virtual camera switching, that is, while changing the camera pan / tilt / zoom, there is a possibility of passing through the area where video transmission is not permitted. (Steps S503 and S505). When the video sandwiching prohibition flag is in the ON state, information “−1” is notified to each client as an identification number of the virtual camera as will be described later. Thus, when the instructed virtual camera becomes the state set in step 502 (pan angle, tilt angle, zoom magnification), the video display prohibition flag is set to OFF. As a result, the video delivery process can be performed again.
[0044]
On the other hand, in the case of a pan / tilt / zoom request command, it is checked whether the pan angle, tilt angle, and zoom magnification included in the command are within the operation range of the virtual camera (steps S511 and S521). If the value exceeds the upper limit (if the value is too large) or lower limit (if the value is too small), the camera control is performed.
[0045]
When a certain time has elapsed from the start of the camera control connection and the control time is over, a connection disconnection process (S407) is performed, and a camera control connection end command (FIG. 8 (8)) in the process of step S407, that is, An instruction for erasing the camera operation right is returned to the client process 3-31. Then, it waits for a connection request again (S403). The camera control server process 3-11 accepts a camera control connection request from any client process that has been implemented in the same manner, and realizes a camera operation, but cannot connect to a plurality of client processes at the same time as can be seen from FIG. Therefore, this connection is a connection-oriented connection such as TCP / IP.
[0046]
While the camera state notification process 3-12 generated in step S402 is operating, the camera state is always checked. That is, the camera pan / tilt angle and zoom magnification (= p, t, z) are read by making an inquiry to the camera / head control unit 1-13 and written to the camera status register 3-44 (step S422). Looking at the state of the video display prohibition flag 3-41 (step S423), if the flag is ON, the camera state is set to “camera switching” (virtual camera identification number n = −1) (step S424), and the video is displayed. The camera state (format in FIG. 8 (9)) is notified to the transmitting client process 1-2 (step S426).
[0047]
Next, the video server process and the video acquisition / transmission process will be described using the flow of FIG.
[0048]
When the video server process 3-21 is activated (step S600), a video acquisition / transmission process 3-22 is generated (step S602), and an event from the client process 3-31 is awaited (step S603). If the event is a video display start request command (FIG. 8 (7)) (step S604), the source address of the packet included in the video display request packet is confirmed, and the video destination list 3- 42. If it is a video display end request command (step S606), the transmission source address of the packet included in the video display request packet is similarly confirmed and deleted from the video transmission destination list 3-42. The video transmission destination list 3-42 holds video transmission destination addresses in a list format.
[0049]
When activated, the video acquisition / transmission process 3-22 repeats the following operation. That is, it is captured as a frame of a camera video (step S622), compressed (step S623), and if the video display prohibition flag is not ON (step S624), the compressed video data is converted into the format shown in FIG. And transmitted to a plurality of addresses in the video transmission destination list 3-42 (step S625).
[0050]
Next, the client process 3-31 operating on the client side will be described with reference to the flowchart of FIG.
[0051]
First, when the process is started, initialization processing is performed (step S701), and a video display start request is transmitted to the camera server corresponding to the address (IP address, “ADDR_C” here) of the camera server device 1-1 to be connected. (Step S702). The packet format at this time is as shown in (6) of FIG.
[0052]
If Ack is not returned from the camera server corresponding to ADDR_C (step S703), the client process is terminated (step S704) because of an abnormal operation such as an incorrect address.
[0053]
If Ack is returned, the display is successful (step S703), and an event, that is, input by the user interface of the user or reception of various packets from the camera server 1-1 is awaited (step S705).
[0054]
Here, when the user presses the operation start button 2-21 (step S706), an operation right flag 3-51 (a variable secured in the RAM of the client) is used to indicate whether or not the user has already started camera control. (Step S707), and if already in control, the process returns to Step S605. If not in operation, a camera control connection request ((1) in FIG. 8) is issued to the camera control server process (step S708) and waits for permission (Ack) (step S709). If Ack is returned here, connection to the camera control server process is established, the operation right flag 3-51 in the storage unit 1-29 of the client device is turned on (step S711), and the camera operation panel 2- Enable the operation of 2 (imaging direction change button or scroll bar). Note that the camera control server process accepts a connection request only at the camera control connection request waiting step S403.
[0055]
When the connection is established and the “control wait time” ends, a camera control connection end request (FIG. 8 (8)) is returned from the camera control server process. When this is received (step S714), the operation right flag 3 -51 is turned OFF (step S715), and the operation of the camera operation panel 2-2 is invalidated (step S716).
[0056]
While the operation of the camera operation panel 2-2 is valid, a camera control command corresponding to the operation of the camera operation panel 2-2 is generated and issued to the camera server process 1-2 (steps S717 to S718). ). If a camera is selected from the camera switching pull-down menu 2-31 on the camera operation panel 2-2, a camera switching command (FIG. 8 (5)) is issued (steps S719 to S720). The instruction generation process is omitted here.
[0057]
In response to a client process termination request (step S726) issued by an operation such as a menu, a video display termination request (FIG. 8 (8)) is issued (step S728), and the client process is terminated (step S628).
[0058]
If the packet has arrived (step S721), if it is video data (FIG. 8 (10)) (step S722), the compressed video data in the video data is read and decompressed, and then the video frame The display image on the image display panel 2-1 is updated using the data (step S723).
[0059]
When the arrival packet is a camera state notification (FIG. 8 (9)) (step S724), the notches (knob portions) of the scroll bars 2-21, 23, and 2-28 for operating the pan / tilt angle and the zoom magnification. The display position is changed to the corresponding position using the parameter included in the packet. The camera name corresponding to the virtual camera identification number is displayed on the 2-30 camera switching pull-down button. (This means that if another client process remotely controls the camera, that information is updated). The correspondence between the virtual camera identification number and the camera name is notified from the camera state notification process 3-12. However, when the virtual camera identification number is −1 (when the camera is moving to a range where the virtual camera can shoot), it is assumed that the virtual camera switching operation is being performed and the camera is being switched to the video display panel 2-1. Is displayed.
[0060]
As a result of the above, according to the embodiment, one physical camera included in the camera server looks as if it is a plurality of cameras (virtual cameras) when viewed from the client. Since at least the pan and tilt angles of the camera can be changed freely within the rectangular range, there is no need to know that there is an area where imaging is restricted due to privacy issues, and there is no sense of incongruity. Can also be avoided.
[0061]
As described above, a single camera server can be provided with a plurality of physical cameras. In this case as well, a plurality of virtual cameras may be set for each physical camera. At this time, the camera server each For each physical camera, the operation right is given to the client independently.
[0062]
In the case of a camera server administrator, the camera control restriction list may be edited by directly operating the camera server. However, the camera server is connected in the same manner as the client, and notifies the camera server that the user is an administrator (for example, The file of the restriction list may be transferred to the camera server using a protocol such as ftp).
[0063]
Or, if you are an administrator, display a range frame that allows you to change the pan angle and tilt angle of a physical camera, and set several rectangles with a pointing device such as a mouse. Thus, the virtual camera and the movable pan angle and tilt angle of the virtual camera may be set in each rectangular area. For example, an upper limit value and a lower limit value may be set for each set rectangular area with a keyboard, a mouse, or the like. Of course, for this purpose, it is only necessary to run a program for providing the above operation to the administrator when the administrator logs in to the camera server side.
[0064]
Next, FIG. 11 shows a situation in which a camera server device having a plurality of control restricted areas (a plurality of virtual cameras) and a camera server device not specifically set to be restricted are connected to the network in a mixed manner. It explains using.
[0065]
In a situation where there are a plurality of camera servers, a list of camera servers is presented to the user who uses the camera client (for example, a list as shown in FIG. 12 is displayed), and the camera server that he / she wants to see is displayed as a mouse. It is desirable to be able to select with a pointing device such as.
[0066]
When the camera server is selected by the user, the camera client transmits a video display start request as shown in step S702 of FIG. If the present invention is used, a plurality of control restricted areas can be handled as separate independent cameras as in other camera server apparatuses. For example, in the user interface of FIG. 11,
[0067]
Like this example,
1) The camera server device is provided with means for managing a plurality of camera control restriction ranges, that is, areas where the pan / tilt angle and zoom magnification ranges are restricted (referred to as “control restriction areas”),
2) Each restriction area limits the control range by setting the pan left end angle, pan right end angle, tilt lower limit angle, pan upper limit angle, zoom lower limit magnification, zoom upper limit magnification,
3) From the client process, each control restriction area appears to be a separate independent virtual camera,
4) From the client process, when switching between multiple control restricted areas, treat as if switching between multiple cameras.
Thus, a more realistic and flexible camera control limit range can be set with respect to the privacy problem. In other words, each camera control range restriction area is simply set, and the concept of multiple virtual cameras allows you to set multiple such control restriction range areas. The person only needs to set the control limit range as a different camera, and since it appears as a separate camera with a different control limit range from the client process, it becomes easy to grasp the limit range.
[0068]
In the above embodiment, although the camera server requires hardware such as an imaging unit and a unit for connecting to a network, the base can be realized by a general-purpose information processing apparatus such as a personal computer. Further, the client has no imaging means, and the basic hardware can be constructed by a general-purpose information processing device such as a personal computer, the same as the camera server.
[0069]
In short, it is only necessary to have a program for operating the apparatus as a camera server or a client by utilizing necessary hardware. Therefore, according to the present invention, a storage medium recording software program codes for realizing the functions of the above-described embodiments is supplied to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium in the storage medium. This can also be achieved by reading and executing the programmed program code.
[0070]
In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention.
[0071]
As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
[0072]
Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
[0073]
Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
[0074]
Further, although the camera is taken as an example of the imaging means in the present embodiment, a flatbed scanner or the like that is limited thereto may be used.
[0075]
【The invention's effect】
As described above, according to the present invention, while setting a plurality of scattered imageable areas within the range that can be imaged by the imaging means whose imaging direction can be changed, the client is not given any sense of incongruity, It becomes possible to provide a favorable operating environment.
[Brief description of the drawings]
FIG. 1 is a block diagram of a camera system according to an embodiment.
FIG. 2 is a diagram showing a client-side user interface in the embodiment.
FIG. 3 is a diagram illustrating an operation sequence in the system according to the embodiment.
FIG. 4 is a flowchart showing the operation of the camera server in the embodiment.
FIG. 5 is a flowchart showing the operation of the camera server in the embodiment.
FIG. 6 is a flowchart showing the operation of the camera server in the embodiment.
FIG. 7 is a flowchart illustrating an operation of a client in the embodiment.
FIG. 8 is a diagram illustrating a format of each command in the embodiment.
FIG. 9 is a diagram illustrating a setting example of a shootable area in the embodiment.
FIG. 10 is a diagram illustrating a structure of a camera control restriction list in the embodiment.
FIG. 11 is a diagram showing a system configuration of a modified example in the embodiment.
12 is a diagram showing a camera list in the system of FIG.
Claims (9)
1つの撮像手段による撮像方向が変更可能な範囲内に映像情報の配送対象となる互いに異なる複数の撮影方向が変更可能な矩形領域を設定し、設定された矩形領域に関する情報および該矩形領域それぞれに対応する撮像手段名称に関する情報を記憶する記憶手段と、
前記クライアントから通知された撮像手段名称に対応する矩形領域に関する情報を前記記憶手段より読み出し、当該読出された矩形領域に関する情報に基づいて当該矩形領域を前記撮像手段の撮像方向が変更可能な範囲として設定し、当該撮像方向が変更可能な範囲内で前記撮像手段を制御する制御手段と
を備えることを特徴とする撮像サーバ。An image pickup means, the image information obtained by the image pickup means an imaging server for sending distribution to the client via the network,
Set one plurality of different photographing directions can be changed rectangular area to be shipping video information the extent possible changes imaging direction of the imaging means, respectively the information and the rectangular regions for setting rectangular area storage means for storing information about the the corresponding IMAGING unit name,
Read from the storage means the information about the rectangular area corresponding to the notified imaging means name from the client, that can change the rectangular region based on those said read out information about the rectangular area imaging direction of the imaging means An imaging server comprising: a control unit that is set as a range and controls the imaging unit within a range in which the imaging direction can be changed .
前記撮像手段名称を特定する情報を前記撮像サーバに通知する通知手段と、
前記撮像サーバから配送されてくる映像を表示する表示手段と、
前記通知手段によって通知された撮像手段名称に対応する撮像手段の撮像方向を変更し、当該変更結果を前記サーバに指示する撮像方向変更指示手段とを備えることを特徴とするクライアント。A client connected to the imaging server according to claim 1,
Notification means for notifying the imaging server of information specifying the imaging means name;
Display means for displaying video delivered from the imaging server;
A client comprising: an imaging direction change instructing unit that changes an imaging direction of an imaging unit corresponding to an imaging unit name notified by the notifying unit and instructs the server of the change result.
前記撮像サーバは、
1つの撮像手段による撮像方向が変更可能な範囲内に映像情報の配送対象となる互いに異なる複数の撮影方向が変更可能な矩形領域を設定し、設定された矩形領域に関する情報及び該矩形領域それぞれに対応する撮像手段名称に関する情報を記憶する記憶手段と、
前記クライアントから通知された撮像手段名称に対応する矩形領域に関する情報を前記記憶手段より読み出し、当該読出された矩形領域に関する情報に基づいて当該矩形領域を前記撮像手段の撮像方向が変更可能な範囲として設定し、当該撮像方向が変更可能な範囲内で前記撮像手段を制御する制御手段とを備え、
前記クライアントは、
前記撮像手段名称を特定する情報を前記撮像サーバに通知する通知手段と、
前記撮像サーバから配送されてくる映像を表示する表示手段と、
前記通知手段によって通知された撮像手段名称に対応する撮像手段の撮像方向を変更し、当該変更結果を前記サーバに指示する撮像方向変更指示手段と
を備えることを特徴とする撮像システム。It has an imaging unit, an imaging system consisting of client receiving the image information of the image information obtained by the imaging unit from the imaging server and the imaging server for sending distribution over a network,
The imaging server is
Set one plurality of different photographing directions can be changed rectangular area to be shipping video information the extent possible changes imaging direction of the imaging means, respectively the information and the rectangular regions for setting rectangular area storage means for storing information about the the corresponding imaging device name,
Information relating to the rectangular area corresponding to the imaging means name notified from the client is read from the storage means, and the rectangular area is set as a range in which the imaging direction of the imaging means can be changed based on the read information relating to the rectangular area. Control means for setting and controlling the imaging means within a range in which the imaging direction can be changed ,
The client
A notification unit that notifies information specifying the previous SL an imaging unit name on the imaging server,
Display means for displaying video delivered from the imaging server;
Change the imaging direction of the imaging means corresponding to the notified imaging means name by prior Symbol notification means, Zoshi stem the change result Taking characterized in that it comprises an imaging direction change instructing means for instructing said server .
1つの撮像手段による撮像方向が変更可能な範囲内に映像情報の配送対象となる互いに異なる複数の撮影方向な変更可能な矩形領域を設定し、設定された矩形領域に関する情報および該矩形領域それぞれに対応する撮像手段名称に関する情報を記憶手段に格納する格納工程と、
前記クライアントから通知された撮像手段名称に対応する矩形領域に関する情報を前記記憶手段より読み出し、当該読出された矩形領域に関する情報に基づいて当該矩形領域を前記撮像手段の撮像方向が変更可能な範囲として設定し、当該撮像方向が変更可能な範囲内で前記撮像手段を制御する制御工程と
を備えることを特徴とする撮像サーバの制御方法。An image pickup means, the image information obtained by the imaging means A control method for an imaging server performing feed distribution to the client via the network,
Set one plurality of different imaging directions modifiable rectangular area to be shipping video information the extent possible modifications imaging direction of the imaging means, respectively the information and the rectangular regions for setting rectangular area a storage step of storing information about the the corresponding IMAGING unit name to memorize means,
Information relating to the rectangular area corresponding to the imaging means name notified from the client is read from the storage means, and the rectangular area is set as a range in which the imaging direction of the imaging means can be changed based on the read information relating to the rectangular area. set, the control method of Zosa over bar shooting, characterized in that it comprises a control step of controlling said image pickup means within the imaging direction can be changed.
前記コンピュータに、
1つの撮像手段による撮像方向が変更可能な範囲内に映像情報の配送対象となる互いに異なる複数の撮影方向が変更可能な矩形領域を設定し、設定された矩形領域に関する情報および該矩形領域それぞれに対応する撮像手段名称に関する情報を記憶手段に格納する格納手順と、
前記クライアントから通知された撮像手段名称に対応する矩形領域に関する情報を前記記憶手段より読み出し、当該読出された矩形領域に関する情報に基づいて当該矩形領域を前記撮像手段の撮像方向が変更可能な範囲として設定し、当該撮像方向が変更可能な範囲内で前記撮像手段を制御する制御手順と
を実行させるためのプログラムを格納したコンピュータが読み取り可能な記憶媒体。 By executing Mase read the computer to have a capturing means, there in a computer-readable storage medium which stores a program to function as an imaging server for sending distribution to the client via the network the image information obtained by said image pickup means And
In the computer,
Set one plurality of different photographing directions can be changed rectangular area to be shipping video information the extent possible changes imaging direction of the imaging means, respectively the information and the rectangular regions for setting rectangular area a storage procedure for storing information about the the corresponding IMAGING unit name in the storage means,
Information relating to the rectangular area corresponding to the imaging means name notified from the client is read from the storage means, and the rectangular area is defined as a range in which the imaging direction of the imaging means can be changed based on the read information relating to the rectangular area. A control procedure for setting and controlling the imaging means within a range in which the imaging direction can be changed ;
A computer-readable storage medium storing a program for executing the program .
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP37227098A JP4298030B2 (en) | 1998-12-28 | 1998-12-28 | Imaging server, client, control method and system, and storage medium |
| US09/401,400 US6985178B1 (en) | 1998-09-30 | 1999-09-22 | Camera control system, image pick-up server, client, control method and storage medium therefor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP37227098A JP4298030B2 (en) | 1998-12-28 | 1998-12-28 | Imaging server, client, control method and system, and storage medium |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2000197031A JP2000197031A (en) | 2000-07-14 |
| JP2000197031A5 JP2000197031A5 (en) | 2006-04-13 |
| JP4298030B2 true JP4298030B2 (en) | 2009-07-15 |
Family
ID=18500158
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP37227098A Expired - Fee Related JP4298030B2 (en) | 1998-09-30 | 1998-12-28 | Imaging server, client, control method and system, and storage medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4298030B2 (en) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4543513B2 (en) | 2000-07-17 | 2010-09-15 | ソニー株式会社 | Bidirectional communication system, display device, base device, and bidirectional communication method |
| JP4501243B2 (en) | 2000-07-24 | 2010-07-14 | ソニー株式会社 | Television receiver and program execution method |
| JP2002111686A (en) | 2000-10-04 | 2002-04-12 | Sony Corp | Communication method and communication device |
| US7283687B2 (en) | 2001-09-24 | 2007-10-16 | International Business Machines Corporation | Imaging for virtual cameras |
| US7027073B2 (en) | 2001-09-24 | 2006-04-11 | International Business Machines Corporation | Virtual cameras for digital imaging |
| US20040114176A1 (en) | 2002-12-17 | 2004-06-17 | International Business Machines Corporation | Editing and browsing images for virtual cameras |
| EP1441529B1 (en) * | 2003-01-21 | 2008-07-23 | Canon Kabushiki Kaisha | Image-taking apparatus and image-taking system |
| JP4448107B2 (en) * | 2003-06-26 | 2010-04-07 | ソニー株式会社 | Information processing apparatus and method, recording medium, and program |
| CN105681450A (en) * | 2016-02-23 | 2016-06-15 | 袁梦杰 | Unmanned aerial vehicle sharing method, server, client and system |
| JP7277173B2 (en) * | 2019-02-27 | 2023-05-18 | キヤノン株式会社 | Imaging device with video distribution function |
| JP7344703B2 (en) * | 2019-08-02 | 2023-09-14 | キヤノン株式会社 | Control device and its control method and program |
| JP2023107306A (en) * | 2022-01-24 | 2023-08-03 | キヤノン株式会社 | IMAGING DEVICE, IMAGING SYSTEM, IMAGING DEVICE CONTROL METHOD AND PROGRAM |
-
1998
- 1998-12-28 JP JP37227098A patent/JP4298030B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2000197031A (en) | 2000-07-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6985178B1 (en) | Camera control system, image pick-up server, client, control method and storage medium therefor | |
| JP4235300B2 (en) | Communications system | |
| JP3809309B2 (en) | Camera control system, camera control method, and storage medium | |
| JP3817312B2 (en) | Control method and apparatus, imaging system and display operation apparatus | |
| JP4590039B2 (en) | CAMERA OPERATION DEVICE, CAMERA SERVER, ITS CONTROL METHOD, AND STORAGE MEDIUM CONTAINING PROGRAM FOR EXECUTING THEIR OPERATION PROCESS | |
| JP4298030B2 (en) | Imaging server, client, control method and system, and storage medium | |
| US8064080B2 (en) | Control of data distribution apparatus and data distribution system | |
| US7663666B2 (en) | Operation at mobile terminal when communicating with remote camera | |
| JP3787404B2 (en) | Camera control system and control method thereof | |
| JP4109739B2 (en) | CAMERA CONTROL DEVICE, CAMERA CONTROL SYSTEM, CAMERA CONTROL DEVICE CONTROL METHOD, AND STORAGE MEDIUM | |
| US6769131B1 (en) | Image processing apparatus and method, image distribution system and storage medium | |
| JPH09271019A (en) | Camera control system and camera control device | |
| KR20110108265A (en) | Controls, camera systems and programs | |
| EP0893919B1 (en) | Camera control system | |
| JP3689447B2 (en) | Camera control system and method | |
| JP2019087974A (en) | Image pickup apparatus, image pickup method, display apparatus and display method | |
| JP4763881B2 (en) | COMMUNICATION DEVICE, COMMUNICATION DEVICE CONTROL METHOD, AND STORAGE MEDIUM | |
| JP2001136514A (en) | Camera control system, control method thereof, and storage medium | |
| JP3666942B2 (en) | Camera control system and operation processing method thereof | |
| JP2001136515A (en) | Imaging device, image communication system, imaging method, image communication method, and storage medium | |
| JP3287382B2 (en) | Camera control system and method | |
| JP2005167397A (en) | Server apparatus, control method thereof, and storage medium | |
| JPH10136246A (en) | Camera control system, camera management device and method in the system, camera operation device and method, and storage medium | |
| JP4124868B2 (en) | Video transmission terminal, video transmission terminal communication method, and storage medium | |
| JP2000101991A (en) | Imaging device remote control method, remote control device, control device, and imaging system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051220 |
|
| RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20051220 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20051220 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060223 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080513 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080516 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080714 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080723 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080807 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090410 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090415 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120424 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130424 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130424 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140424 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |