JP2016534607A - 拡張可能なビデオクラウドサービスのためのシステムおよび方法 - Google Patents

拡張可能なビデオクラウドサービスのためのシステムおよび方法 Download PDF

Info

Publication number
JP2016534607A
JP2016534607A JP2016529837A JP2016529837A JP2016534607A JP 2016534607 A JP2016534607 A JP 2016534607A JP 2016529837 A JP2016529837 A JP 2016529837A JP 2016529837 A JP2016529837 A JP 2016529837A JP 2016534607 A JP2016534607 A JP 2016534607A
Authority
JP
Japan
Prior art keywords
camera
processor
client computer
internet server
video
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
JP2016529837A
Other languages
English (en)
Inventor
カイ,アルバート
ナラヤン,プラカシュ
ナサン,ヴァイディ
Original Assignee
インテリヴィジョン テクノロジーズ コーポレーション
インテリヴィジョン テクノロジーズ コーポレーション
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 インテリヴィジョン テクノロジーズ コーポレーション, インテリヴィジョン テクノロジーズ コーポレーション filed Critical インテリヴィジョン テクノロジーズ コーポレーション
Publication of JP2016534607A publication Critical patent/JP2016534607A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/617Upgrading or updating of programs or applications for camera control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/661Transmitting camera control signals through networks, e.g. control via the Internet
    • 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/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

複数のプロセッサ制御インターネットビデオカメラ、拡張可能なクラウドコンピューティング技術、ならびに様々なインターネット接続されたスマートフォンおよびタブレットコンピュータを使用して、実世界環境を監視する方法。本システムは、何百万以上ものカメラにまで拡大するために、自動サービスプロビジョニング、自動仮想マシン移行サービス、RESTful API、および様々なファイアウォール通過方法を含む、クラウドコンピューティング技術を使用する。システムの整合性は、様々なビデオカメラが継続的に「ハートビート」カメラ状態メッセージをクラウドサーバーに送信することを要求することにより維持される。ビデオカメラは、任意選択で、それらのローカル環境で生じている様々な事象を自動的に検出し、これらの事象をクライアントに報告して、事象ビデオデータを直接または間接的のいずれかでクライアントにストリームするか、または代替としてビデオデータを、Amazon S3サービスなどの様々な拡張可能な第三者クラウドストレージシステム内に保存するようにも構成できる。期限切れになるトークンおよび暗号鍵がシステムセキュリティを確実にするのを支援する。【選択図】図1

Description

関連出願の相互参照
本出願は、2013年7月22日、発明人Albert Kay、Prakash Narayan、およびVaidhi Nathanによって出願された、米国特許出願61/857,200号、「NOVEL SYSTEM THAT USES CLOUD SERVERS TO CAPTURE AND DISSEMINATE EVENTS AND VIDEOS FROM CAMERA SENSORS AND INTEGRATED WITH MOBILE DEVICES」の優先権利益を主張し、その内容が参照により本明細書に組み込まれる。
発明の背景
発明の分野
本発明は、インターネットまたはネットワーク接続されたカメラおよび拡張可能なクラウドコンピューティングの分野においてである。
現代生活においてウェブカメラが広く行き渡ってきて、YouTube(登録商標)、Skype(登録商標)ビデオチャット、および同様のものなどの、ウェブカメラビデオデータを使用できるインターネットサーバーベースのシステムが、一般の人々に広く知られている。加えて、様々な監視用途のための、ウェブカメラおよびインターネットサーバーの使用、ならびに様々なタイプの画像認識方法も当技術分野で知られている。
1つの具体例として、動物の動きの監視などの用途のために、ウェブカメラを使用する様々な方法が、Verstraetenらによる「Webcams for Bird Detection and Monitoring:A Demonstration Study」,Sensors 2010,10,3480−3503で説明された。
さらに、Needhamが、米国特許6,803,945号において、動き検出ウェブカメラシステムを説明した。このシステムは、様々なタイプのモーションキャプチャアルゴリズムに応じて、ウェブカメラ画像をサーバーに定期的にアップロードした。
近年は、インターネット技術が発展するにつれ、ユーザー要求に応じて自動的に拡張できるウェブサービスを提供することが、多くの場合、様々なタイプの自動サービスプロビジョニング方法および仮想マシン移行方法の使用によって、より実現可能になってきた。これらの拡張可能なクラウドサービスは、Zhangらによる、「Cloud computing:state−of−the−art and research challenges」,J Internet Serv.Appl.(2010)1:7−18で説明されている。これらのクラウドサービスは、Amazon EC2、Microsoft Windows Azureプラットフォーム、Google App Engine、およびその他を含む。
例えば、Amazon EC2クラウドコンピューティングプラットフォームは、米国カリフォルニア州セバストポルのO‘Reilly Media,Inc.により2011年2月に発行された、Jurg van Viledらによる「Programming Amazon EC2」で説明されている。
加えて、インターネット技術が発展するにつれて、ウェブサービス開発のための表現状態転送(REST)方法の使用が普及してきた。この技術は、米国カリフォルニア州セバストポルのO‘Reilly Media,Inc.により2007年5月に発行された、Leonard Richardson & Sam Rubyによる「RESTful Web Services」で説明されている。
本発明は、自動サービスプロビジョニング、仮想マシン移行、および同様のものなどの、最新の拡張可能なクラウドサービス技術における進歩が、実世界環境を監視するための改善された高度に拡張可能な方法の提供を支援するために使用できるという洞察に一部、基づく。
本発明は、潜在的に何百万もの異なるビデオカメラ装置、および何千または何百万さえの異なるクライアントユーザーでの広範な使用が可能な高度に拡張可能なシステムを提供するために、かかる高度に拡張可能なシステムは、理想的には、ファイアウォールおよび他のネットワーク障害を克服するための様々なストラテジも採用すべきであり、様々なユーザーによって高度に構成可能であるべきであり、また、良好なセキュリティ手段も採用すべきであるという洞察にも一部、基づく。
本発明は、通常のユーザーは、フルタイムの警備員として働くことを望まず、むしろ、多くの場合、コンピュータ制御システムが問題または事象を自動的に検出した際に彼らのモバイルコンピュータ制御装置上で単に通知を(好ましくはリアルタイムで)自動的に受信し、次いで、多くの場合、直ちに、問題もしくは事象をリアルタイムで見るか、または代替として問題もしくは事象の記録された履歴を含むビデオファイルを検索できることを望むという洞察にも一部、基づく。
いくつかの実施形態では、本発明は、複数のリモートでプログラム可能なプロセッサ制御インターネットビデオカメラ、ならびに拡張可能なクラウドコンピューティング技術を使用し、彼らの様々なインターネット接続されたスマートフォンおよびタブレットコンピュータ(多くの場合、スマートフォンなどのモバイル機器であろう)を使用して、実世界環境を監視するシステムおよび方法であり得る。
本明細書で説明するシステムおよび方法は、容易かつ自動的に、何百万ものカメラおよびユーザーにまで拡大できるように設計されている。これを行うため、本開示は、自動サービスプロビジョニング、自動仮想マシン移行サービス、RESTful API、およびスケーリングプロセスを容易にするための様々なファイアウォール通過方法を含む、最新のクラウドコンピューティング技術の使用を教示する。
システムの整合性は、様々なビデオカメラが継続的に「ハートビート」カメラ状態メッセージをクラウドサーバーに送信することを要求することにより維持される。任意選択で、マイクロホン、温度センサー、湿度センサー、煙探知器、および同様のものなどの追加のセンサーを搭載できる、ビデオカメラは、任意選択で、様々な画像および音声分析ならびに、カメラが、それらのローカル環境で生じているそれら様々な事象をシステムのサーバーに自動的に報告するのを可能にする、他のセンサー分析アルゴリズムでもリモートに構成できる。システムサーバーは、次いで、これらの事象をクライアントに報告できる。システムは、事象ビデオデータをクライアントに直接もしくは間接的にストリームできるか、または代替としてビデオデータを、Amazon S3サービスなどの、様々な拡張可能な第三者クラウドストレージシステムに保存できる。期限切れになるトークンおよび暗号鍵がシステムセキュリティを確実にする。
ビデオクラウドサービス(VCS)の主要な構成要素のいくつかを示す。 プロセッサ制御ビデオカメラが少なくとも1つのリモートビデオクラウドサービス(VCS)インターネットサーバーおよび任意選択で、様々なプロトコルを使用するインターネット接続されたビデオデータ記憶装置として使用されるサーバーなどの他のクラウドサーバーとどのように通信し得るかのさらなる詳細を示す。 本発明のビデオクラウドサービス(VCS)システムの構成要素の一部およびやり取りを示すブロック図を示す。 多数のビデオカメラおよびクライアントにわたる高拡張性のために構成される、本発明の連続記録サーバー実施形態の詳細を示す。 プロセッサを搭載したビデオカメラがシステムのデバイスマネージャサービス(DMS)サーバーとどのようにやり取りし得るかの流れ図を示す。 プロセッサを搭載したビデオカメラ(複数可)および/またはクライアントコンピュータ制御装置のファームウェアまたは他のタイプのソフトウェアがどのようにアップグレードされ得るかを示す。 システムがどのように様々なファイアウォールを通過し、様々なピアツーピア(P2P)方式に従って動作できるかの例を示す。 VCSアーキテクチャの水平拡張性の例を示す。 クライアントコンピュータ制御装置のソフトウェア構成のブロック図を示す。
本開示では、「拡張可能な方法」は、自動サービスプロビジョニングおよび自動仮想マシン移行方法に従って動作するインターネットクラウドベース方法であると定義される。さらなる詳細については、前述したZhangらの「Cloud computing:state−of−the−art and research challenges」参考文献を参照されたい。かかる拡張可能な方法の例は、Amazon EC2、Microsoft Windows Azureプラットフォーム、およびGoogle App Engineを含むが、それらに制限されない。
特別の定めのない限り、本明細書で説明する例は、一般に、前述したJurg van Viledらの「Programming Amazon EC2」参考文献によって説明されるように、Amazon EC2クラウドコンピューティングプラットフォーム上で動作していると仮定されるべきである。
特別の定めのない限り、本明細書で説明するプロセッサ制御ビデオカメラは、多くの場合、マイクロホンおよび、温度センサーなどの、他のタイプのセンサーとでさえ構成される。従って、本明細書で説明する方法は、多くの場合、これらのマイクロホンが構成されたビデオカメラによって受信された音声データに関して動作する。プロセッサ制御ビデオカメラは、典型的には、少なくとも1つのプロセッサ(多くの場合、人気のあるARM、MIPS、x86または他のプロセッサファミリーから選択される)、メモリ(本発明に従って様々なファームウェアおよびアルゴリズムを保持するために使用される)、少なくとも1つの多重ピクセルイメージセンサーチップ(多くの場合、少なくとも1つの電荷結合素子(CCD)または相補型金属酸化膜半導体(CMOS)チップ)、電子像集束システム(多くの場合、少なくとも1つのレンズ)、および少なくとも1つの有線または無線ネットワークインタフェースを含む。
特別の定めのない限り、本明細書で説明するクライアントコンピュータ制御装置は、多くの場合、少なくとも1つのプロセッサ(多くの場合、人気のあるARM、MIPS、x86または他のプロセッサファミリーから選択される)、メモリ(多くの場合、オペレーティングシステムソフトウェアならびに本発明に従って様々なファームウェアおよびアルゴリズムを実行するために使用される様々なアプリケーションソフトウェア(例えば、アプリ)の両方に対して使用される)、典型的には、好ましくはビデオを表示可能な、多重画素表示パネル、ユーザーインタフェース(例えば、タッチセンサー式ビデオ画面、キーボード、マウス、ボタンなど)、および少なくとも1つの有線または無線ネットワークインタフェースで構成される。多くの場合、スマートフォン、タブレットコンピュータ、および同様のものなどの、モバイルクライアントコンピュータ制御インタフェースは、本開示における例として使用されるが、「可動性」は限定的であることを意図しない。
同様に、本明細書で説明する様々なインターネットサーバーおよびクラウドサービスは、自動サービスプロビジョニングおよび自動仮想マシン移行サービスの下で動作している場合でさえ、少なくとも1つのプロセッサ、ネットワーク接続、コンピュータメモリ、オペレーティングシステムソフトウェア、適切な自動サービスプロビジョニングおよび自動仮想マシン移行サービス、ならびに本明細書で開示するソフトウェア実装方法の制御下で、それら自体様々なインターネットサーバー上で実行する。
特別の定めのない限り、本明細書で説明するシステムおよび方法の全ての態様は、人間の介入を必要とすることなく、本明細書の開示に従って動作するソフトウェア方法に従い、様々なプロセッサ(例えば、ビデオカメラプロセッサ、クライアントコンピュータ制御装置プロセッサ、サーバープロセッサなど)の制御下で、自動的に動作すると仮定されるべきである。
いくつかの実施形態では、本発明は、少なくとも1人のクライアント(多くの場合、人間のクライアント、および多くの場合、多数の異なる人間のクライアント)が、複数のプロセッサ制御ビデオカメラを使用して、少なくとも1つの実世界環境(多くの場合、複数の実世界環境)を監視するのを可能にする、拡張可能な方法であり得る。
これらのプロセッサ制御ビデオカメラは、典型的には、インターネットなどの、より大規模なネットワークに、従って様々なインターネットサーバーに接続されて、通常、安全のために、かかるプロセッサ接続されたビデオカメラは、インターネットおよび少なくとも1つのリモートインターネットサーバーに、少なくとも1つのファイアウォールを介して接続される。
ここで、少なくとも1人のクライアントは、典型的には、クライアントコンピュータ制御装置を使用して、インターネットおよび少なくとも1つのリモートインターネットサーバーに接続される。本明細書では、この少なくとも1つのリモートインターネットサーバーは、多くの場合、ビデオクラウドサービス(VCS)サーバーと呼ばれ、このVCSサーバーのデバイス管理サービス(DMS)態様が、すぐ後でより詳細に説明される。
多くの場合、2つ以上のクライアントコンピュータ制御装置が使用され、このクライアントコンピュータ制御は、同様に対処すべきそれ自身のファイアウォールを有し得る。
ここで、少なくとも1つのプロセッサ制御ビデオカメラ(複数可)(カメラ、複数のカメラ)が音声ビデオデータを少なくとも1つのリモートインターネットサーバーに伝送するように(通常は自動的に、または半自動的に)構成される。加えて、このカメラは、この少なくとも1つのリモートインターネットサーバーからのコマンドに応答して、カメラ状態メッセージ(多くの場合、「ハートビートメッセージ」または「ハートビート」と呼ばれる)をこの少なくとも1つのリモートインターネットサーバーにネットワーク接続経由を使用して定期的に伝送するようにも構成される。後述のように、これらのカメラ状態メッセージ(ハートビート)は、とりわけ、カメラ(複数可)がオフにされているか、またはそうでなければ予期したとおりに動作していないかを検出するためにシステムによって使用できる。
カメラ(複数可)は、一般に、少なくとも1つの実世界環境を監視するために使用され、次いで少なくとも1つのインターネットサーバーを使用して、この少なくとも1つの実世界環境に関するデータを様々なクライアントコンピュータ制御装置(複数可)に自動的に伝送する。加えて、少なくとも1つのインターネットサーバーが、所定のカットオフ基準を超えて存続する、これらのカメラ状態メッセージ(ハートビート)の不存在または異常のいずれかを検出すると、本発明のソフトウェアが、自動的にインターネットサーバー(複数可)に指示して、この不存在または異常に関するデータを少なくとも1つのクライアントコンピュータ制御装置に伝送する。さらに、様々なプロセッサ制御ビデオカメラの少なくとも一部(および、いくつかの実施形態では全部)も、クライアントコンピュータ制御装置による要求に応じて直ちに、少なくとも1つのクライアントコンピュータ制御装置に接続してビデオデータを送信するようにソフトウェア構成される。
システムアーキテクチャ
最上位レベルにおいて、本明細書で開示する、拡張可能なビデオクラウドサービスのシステムおよび方法は、少なくとも3つの基本的なタイプの構成要素を有すると見なすことができる。これらは、a)様々な拡張可能なクラウドサーバー、b)様々なクライアントコンピュータ制御装置(多くの場合、スマートフォンおよび同様のものなどのモバイル機器)、およびc)典型的には、インターネットを経由して様々なクラウドサーバーへのネットワーク接続を有する、様々なプロセッサ制御ビデオカメラである。
後述のように、本開示は、事象データをカメラからアップロードし、スマートフォンなどの様々なクライアントコンピュータ制御装置から事象データを取得するためにクラウドサーバーを使用する、事象およびビデオ管理ソリューションの完全かつ包括的なスイートを教示する。実際のクラウドサーバーソリューションは比較的複雑であり、負荷分散、アプリケーション、ストレージ、バックアップ、データベース、デバイス管理、事象管理および通知/アラートサービスのための構成要素ならびにサーバーを含む、複数の構成要素を有する。まず初めに、クラウドサービスが、管理クラウドサーバー、およびビデオデータ格納用のクラウドサーバーを含むとして理解できる、システムの簡略版の説明に焦点を合わせる。この簡略版のシステムを説明した後に、他のクラウド構成要素が全体的なシステムおよび方法にどのように関連するかについて説明する。
図1は、ビデオクラウドサービス(VCS)の主要な構成要素のいくつかを示す。ここでは、少なくとも1つのプロセッサ制御ビデオカメラ(100)が、インターネット接続されたルーターへの無線(例えば、WiFiリンク)または有線リンクのいずれかを介し、通常はファイアウォール(104)を経由して、インターネット(102)に接続されている。クライアントコンピュータ制御装置も、同様に、それ自身のファイアウォール(図示せず)を経由して、インターネットから分離され得る。リモートVCSインターネットサーバー(106)などの様々なサーバー、ならびに任意選択で、少なくとも1つのインターネット接続されたビデオデータ記憶装置(108)(それ自身がサーバーであり得る)および関連付けられたデータベースメモリ(110)が、少なくとも1つのプロセッサ制御ビデオカメラ(100)と接続できる。加えて、様々なクライアントコンピュータ制御装置(例えば、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータおよび同様のもの112)もプロセッサ制御ビデオカメラ(100)および/またはリモートVCSインターネットサーバー(106)の両方ならびに少なくとも1つのインターネット接続されたビデオデータ記憶装置(108)に接続できる。
図1では、プロセッサ制御ビデオカメラ(100)は、少なくとも1つの実世界環境、ここでは窓(120)、を監視していると示されている。この例では、石またはボールが窓(120)を突き破った事象(122)が引き起こされて、動き、窓の状態における変化(穴)(124)、およびプロセッサ制御ビデオカメラ(100)上の任意選択のマイクロホン(図示せず)でも検出され得る関連した音(図示せず)を生じる。本発明によれば、説明する詳細を使用して、クライアントコンピュータ制御装置(112)は、(通常は、実世界環境120から離れている)クライアント(116)が、少なくとも1つの実世界環境(120)および事象(122)を示すビデオデータを見るのを可能にするように構成されたビデオ画面(114)を有する。
後述のように、少なくとも1つのプロセッサ制御ビデオカメラ(100)は、多くの場合、単にビデオ(および任意選択で音声も)を取得するだけでなく、ビデオを圧縮し、インターネットを通じてそのビデオを伝送することが可能であろう。
後述のように、VCSインターネットサーバー(106)ならびに/または少なくとも1つのインターネット接続されたビデオデータ記憶装置(108)(それ自身がサーバーであり得る)および関連付けられたデータベースメモリ(110)は、様々な異なる実施形態で構成され得る。いくつかの実施形態では、VCSインターネットサーバー(106)は、千〜十万または実に百万〜千万以上のカメラなどの、非常に多くの異なるプロセッサ制御ビデオカメラ(100)に同時に接続できる、大規模な拡張可能ビデオクラウドであり得る。この接続は、多くの場合、自動で行われるであろう。いくつかの実施形態では、少なくとも1つのインターネット接続されたビデオデータ記憶装置(108)(それ自身がサーバーであり得る)および関連付けられたデータベースメモリ(110)は、本発明のビデオクラウドサービス(VCS)方法を通じて、事象ビデオのクラウドストレージを可能にするように構成され得る。このインターネット接続されたビデオデータ記憶は、様々なファイル記憶およびサービングプラットフォームを提供する第三者サーバーを介し得る。
後述のように、多くの場合、複数の異なるクライアントコンピュータ制御装置(112)が使用され得るが、簡単にするために、この複数の異なるコンピュータ制御装置は、しばしば単数形で言及される。この単数形の使用は、制限することを意図しておらず、一般に、請求項および発明は、複数のクライアントコンピュータ制御装置(本当に、本発明は何百万ものかかる装置に拡大できる)で、また、本当に多くの場合、複数の異なるクライアント(116)(潜在的に何百万ものクライアントに拡大する)と共にでも動作すると理解されるべきである。簡単にするため、しばしば、人気のあるAndroid、iOS、またはWindows(登録商標)スマートフォンおよびタブレットのインターネット接続されたバージョンなどのモバイルクライアントコンピュータ制御装置が、クライアントコンピュータ制御装置(112)の具体例として使用されるが、これらの具体例は制限することを意図していない。
図1では、サーバー(106)、インターネット接続されたビデオ記憶装置(108)およびデータベースメモリ(110)が全て、クラウド(140)内に位置しているとして示されていることに留意されたい。これは、サーバー(106)、インターネット接続されたビデオ記憶装置(108)およびデータベースメモリ(110)が、実際には拡張可能なインターネットクラウドベースの方法に従って動作しており、その方法は、同様に、自動サービスプロビジョニングおよび自動仮想マシン移行方法に従って動作することを読者に示すとともに気付かせることを意図する。前述のように、かかる拡張可能な方法の例は、Amazon EC2、Microsoft Windows Azureプラットフォーム、およびGoogle App Engineを含むが、それらに制限されない。従って、例えば、サーバー(106)およびインターネット接続されたビデオ記憶装置(108)は、多くの場合、クラウドサービスシステム下で自動的にプロビジョニングされた仮想マシンとして実装されて、システム上の基礎となる要求に応じていつでも、もっと多いか、または少ない数の、サーバー(106)ならびにインターネット接続されたビデオ記憶装置(108)および関連付けられたデータベースメモリ(110)のコピーを作成できるであろう。
従って、いくつかの実施形態では、本システムおよび方法は、非常に多くの数の(例えば、最大で100,000、千万、またはそれ以上でさえ)カメラに同時に接続して管理できる、大規模な拡張可能ビデオクラウドサービスを生成できる。システムは一般に、様々なカメラに自動的に接続し、これらのビデオクラウドサービスを通して事象ビデオのクラウドストレージを可能にするように構成される。後述のように、システムは、カメラがオンであって適切に機能していること(例えば、カメラ「ハートビート」状態メッセージ)を検出する方法、ならびにユーザー(例えば、人間のクライアント)が、必要に応じてシステムを管理し、また、様々なモバイルコンピュータ制御装置上で実行しているアプリ、様々なコンピュータ制御装置上で実行しているウェブブラウザ、および同様のものを使用して、必要に応じて遠く離れた事象を見るのを可能にする様々な単純な方法を提供する。
後述のように、システム(140)は、様々なアラート管理サービスおよびデバイス管理サービスを提供して、暗号化された安全なデータ交換も可能にする。システムは、様々なメディアリレーサーバー方法、ならびに様々なカメラからのライブビデオ(および通常は音声)の認可されたユーザーへのピアツーピア(P2P)ストリーミングを使用して、ビデオをそのユーザーに伝送できる。システムは、典型的には、自動データバックアップと一緒にも構成されるであろう。
同じく後述のように、本発明の他の実施形態は、システム管理および分析、ならびに大量の負荷を処理する負荷分散などの他の機能のための様々なウェブサイト(ポータル)、ならびに様々なカメラからの大量のデータのロードを処理するスパイクおよび瞬間サージを処理するためのシステムも提供し得る。加えて、システムはインテリジェント&適応ビデオストリーミングおよび帯域幅調整のために構成できる。
プロセッサ制御ビデオカメラ(100)は、ビデオ解析、リアルタイムストリーミングプロトコル(RTSP)または他のプロトコルタイプのビデオストリーム、HTTPライブストリーミング(HLS)ビデオフィルム、自動事象検出およびトリガーを含む、様々なタイプの機能、ならびにビデオを様々な記憶装置にアップロードする能力を提供するように構成できる。様々なビデオクラウドサーバー(後述する)への接続を可能にすることに加えて、カメラは、認証および検証、ならびにセキュアソケットレイヤー(セキュアSSL)、トランスポート層セキュリティ(TLS)およびセキュリティを確実にするための他の暗号化方法などの安全な接続の任意選択使用のための様々なシステムと一緒にでも構成できる。カメラは、ライブストリーミングをサポートするため、メディアリレーサーバーをサポートするために、システムによって構成でき、任意選択で、必要に応じて、ピアツーピア動作および様々なクライアントコンピュータ制御装置との接続のサポートを支援するために、様々なネットワーク変換(NAT)ゲートウェイトラバーサル技術および構成要素も有し得る。
言い換えれば、これらのプロセッサ制御ビデオカメラの少なくともいくつかは、それ故、ウェブソケット(RFC 6455で説明)、STUN(NATのためのセッショントラバーサルユーティリティ、RFC 5389、5766、および5245で説明)、TURN(リレーNATを使用するトラバーサル、RFC 5766、5245および6156で説明)、ICE方法(インターネット接続確立、RFC 5245、5766、5768、6336および6544で説明)または他のファイアウォール通過プロトコルなどの、様々な方法を使用して、少なくとも1つのファイアウォールを通ってデータを伝送するように構成され得る。
他の実施形態では、プロセッサ制御ビデオカメラ(100)は、適合するユーザーコンピュータ制御装置(複数可)が、そのカメラ(複数可)にローカルなネットワーク接続を有しているのを自動的に検出するようにも構成され得、それにより、そのカメラが、さらに高速なローカル接続方法を使用してローカルユーザーを処理するのを可能にする。マイクロホンを搭載したカメラは、それらそれぞれの実世界環境からの音声を分析して、音声事象を検出し、それに関して報告するようにも構成され得る。
プロセッサを搭載したビデオカメラは、さらに高感度のビデオ検出器、適切な信号処理の使用により、または赤外線検知ビデオ検出器を使用し、ローカル環境を赤外線で照らすことにより、微光状況(例えば、夜間ビジョン)を処理するように備えられ得る。これらのカメラは、他のタイプのセンサー(例えば、温度センサー、湿度センサー、煙探知器および同様のもの)も搭載され得、これら他のセンサーは、実世界環境における様々な事象が、クライアントによってもっと注意深い監視を必要とし得る場合を示すためにも使用され得る。
別の場所で説明するように、カメラは、典型的には、自動セットアップ(例えば、カメラプロビジョニング)、ならびにリモートクライアントログインおよび様々なカメラパラメータ設定の調整を可能にするように構成されるであろう。カメラはさらに、デバッグを支援する様々なタイプのカメラ診断と一緒に構成され得る。これらの診断は、いくつかの実施形態では、後述のように、さらに、様々なカメラ「ハートビート」状態メッセージと併せて使用され得る。好ましい実施形態では、カメラは、可能なかぎり迅速にオンにして初期化する(例えば、瞬時オンおよび即時接続)ように構成されるであろう。
クライアントコンピュータ制御装置は、Apple iOS、Android、Windows(登録商標)、Linux(登録商標)、または他のタイプのオペレーティングシステムを実行する装置を含み得る。これらの装置上で実行する本発明のソフトウェアの一部は、ネイティブアプリケーションの形式であり得るか、または翻訳されたアプリとして実行され得るか、もしくはJava(登録商標)サンドボックスなどの様々な制約下で実行され得るか、HTML5アプリケーションとして実行され得るか、などである。しかし、一般に、ネイティブアプリケーションは、より迅速に実行する傾向があり、より多くのシステム資源にアクセスできる傾向があり、それ故、多くの場合、好まれる。
クライアントコンピュータ制御装置ソフトウェアは、一般に、ユーザーログイン能力、ならびにクライアントの様々なカメラ(例えば、クライアントがアクセス許可を有するカメラ)をプレビューする能力、ならびに複数のカメラを操作する能力を提供するであろう。クライアントシステムソフトウェアは、追加として、クライアントがカメラアクセスをゲストおよび他のユーザーと共有すること、最近の事象のリストおよびこれらの事象の詳細をレビューすること、ならびに様々なシステム通知およびアラートを受信することを可能にするように構成され得る。追加の機能は、ライブカメラ表示、P2P通信、ネットワークおよびNATを経由したファイアウォール通過、RTSPビデオプレーヤー/表示、HLSビデオプレーヤーおよび表示、ローカルまたはリモートに事象およびビデオをアーカイブする能力、ならびにリモートベースでカメラと接続する能力を含み得る。
クライアントコンピュータ制御装置ソフトウェアは、ユーザー(クライアント)が様々なカメラパラメータおよび設定をセットし、他のカメラに関連付けられたセンサー(例えば、マイクロホン、温度センサー、湿度センサー、煙探知器)を操作するのを可能にするようにも構成され得る。ソフトウェアは、ユーザーが様々な事象を分類またはフィルタ処理し、様々な分析スキームおよびアルゴリズムに従って、もっと有効で意味のある事象を選択しようと試みるのも可能にし得る。他の機能は、他の共有カメラを表示するため、いくつかのカメラを公共カメラとして指定するため、ならびに様々なタイプのデジタルビデオレコーダー(DVR)に似た機能(例えば、早送り、停止、巻き戻し、速巻き戻し、スローモーションなど)を使用してカメラタイムラインおよび過去の記録を表示するための機能を含み得る。
ビデオクラウドサービス
本システムは、多種多様なカメラをサポートし得、好ましい実施形態では、これは、REST APIを通してサーバーと通信できるカメラを含む。カメラは、典型的には、接続要求を開始し、次いで、例えば、アクセスAPI鍵ならびにユーザーIDおよびカメラ/位置ID(媒体アクセス制御(MAC)アドレスなど)を使用して、初期認証を行うように構成されるであろう。セッションがリモートサーバーと作成されてセッション鍵が発行されると、このセッション鍵は、次いで、様々なカメラ/クライアントとビデオクラウドサービスとの間で安全にデータを交換するために、後続の全てのカメラ通信に対して使用され得る。カメラは、次いで、事象メタデータ、JPG画像、およびH.264または他のビデオフォーマットの事象ビデオおよび同様のものなどのデータを、後の取得のために、システムのクラウドサーバーにアップロードできる。
ユーザー管理サービス
いくつかの実施形態では、ソフトウェアは、様々なタイプのユーザー管理サービス(UMS)を提供するように構成され得る。これらは、次いで、REST APIまたは他の方法の使用を通して、ユーザーを作成して管理する能力を提供する。ユーザー管理サービスは、様々なウェブポータルに組み込まれ得、このようにしてユーザーが自分のカメラを管理して、様々な事象を表示/管理するのを可能にする。いくつかの実施形態では、セッション管理は、全ての交換されたデータが安全になるように、API呼出しにも組み込まれ得る。任意選択で、UMSシステムは、様々なユーザーのログインを認証するために、他の外部ユーザーログイン/パスワードシステムに問い合わせて確認することもできる。
アラート管理サービス
好ましい実施形態では、本発明は、事象が、システムのアラート管理サービス(AMS)システムを通して生成されるか、またはシステムもしくはユーザーによって設定された様々なスキームに従ってフィルタ処理されるといつでも、アラートを様々なクライアントコンピュータ制御装置(例えば、携帯電話およびウェブブラウザクライアント)に提供するように構成されるであろう。このシステムは、ユーザーが、そのユーザーの特定の必要性に基づき、個々の事象通知に申し込むのを可能にするように構成できる。アラート管理システムは、事象が検出されるとそれらを管理するために、ユーザーにリアルタイムアラートを提供できる。このシステムは、Apple Push Notification Service、Google Cloud Messaging、他のクラウドサービス、および他の技術(例えば、シンプルメッセージサービス(SMS)、電子メール、自動電話呼出し、音声アラーム、および同様のもの)などの、他のサービスを使用して、事象を中継するようにも構成され得る。いくつかの実施形態では、システムは、ユーザーが、複数のタイプのアラート(例えば、SMSと電子メール)に申し込むか、または有効にするのも可能にできる。
デバイス管理サービス
デバイス管理サービス(DMS)ソフトウェアモジュールは、任意のネットワーク内の様々なシステム装置に対するインターネットアクセスを妨げている可能性がある任意のファイアウォール/NAT問題を克服するために使用され得る。DMSは、追加として、プロビジョニング用に制御データを交換するため、カメラまたはクライアントコンピュータ制御装置によって使用される帯域幅を制御するため、ファームウェアをアップグレードするため、P2Pストリーミングを容易にするためなど、クライアントがカメラとシームレスに通信する能力を提供するように構成され得る。DMSソフトウェアモジュールは、そのサービスに登録されている全ての装置(例えば、カメラ、クライアントコンピュータ制御装置)を追跡して、少なくともそのシステムマネージャまたは他の認定ユーザーに、そのユーザーが監査する権限を与えられている各装置に対する状態および可用性情報を提供するにも使用され得る。
P2Pビデオストリーミング(ピアツーピアビデオストリーミング)
いくつかの実施形態では、システムは、携帯電話アプリおよびまたはブラウザクライアント(例えば、HTML5ウェブブラウザクライアント)などの、様々な方法を使用して、データをクライアントコンピュータ制御装置(例えば、スマートフォンおよび同様のもの)に伝送し得る。どちらのソフトウェアも、DMSを使用して所与のカメラに直接接続するように構成できる。いくつかの実施形態では、DMSは、次いで、装置またはカメラがネットワーク上のどこにあろうとも、そのクライアントコンピュータ制御装置にアクセス可能なカメラに対してRTSP URLを提供することにより動作するであろう。クライアントコンピュータ制御装置は、次いで、RTSPデータストリームを取得して、ビデオおよび任意の音声(例えば、H.264ビデオおよびAAC音声または他のフォーマットのビデオおよび音声)を復号し、それをクライアントコンピュータ制御装置上で再生することが可能であろう。カメラからクライアントコンピュータ制御装置へのダイレクトアクセスのために、これはP2P方式を使用して行われ得る。代替として、P2P方式が実現可能でない場合など、システムは、カメラがいつでもアクセスのために利用可能であることを確実にするのを支援するために、自動的に中継サーバー(例えば、メディアリレーサーバー)を使用し得る。
セッションサービス
いくつかの実施形態では、様々なビデオクラウドサービス、ユーザー管理サービス、デバイス管理サービス、およびアラート管理サービスは全て、サーバーと様々なクライアントコンピュータ制御装置との間で安全にデータを交換するためにセッションハンドリングを使用し得る。ここで、API鍵が生成されて、認定ユーザーだけがサービスにアクセスするのを可能にし得る。ここで、例えば、これらのサービスは、ユーザーを認証して、例えば、セキュアハッシュアルゴリズム(SHA)または他の方法を使用して、さらに暗号化され得る一意の「セッション鍵」を作成できる。従って、セッション鍵は、そのセッションを生成している様々なサービスおよび装置によってのみ知られており、安全な通信を確実にするのを支援するために使用され得る。セッション鍵は、不正使用を防ぐのを支援するために、設定された期間(例えば、4時間)の後、失効するようにも設定され得る。
クライアントコンピュータ制御装置ソフトウェア
いくつかの実施形態では、システムは、これら様々なVCS、UMS、DMS、およびAMSサービスを実行するソフトウェア(例えば、アプリ、他のタイプのソフトウェア、HTML5ウェブブラウザクライアントなど)を実行しているクライアントコンピュータ制御装置を使用して動作し得る。このクライアントコンピュータ制御装置ソフトウェアは、本明細書で説明するシステムの一部または全部の態様を使用する能力をユーザーに提供するように構成され得る。これは、新しいアカウントの作成、既存のアカウントの管理、カメラの構成、事象ビデオの表示、ライブビデオの表示などを含み得る。
図2は、プロセッサ制御ビデオカメラ(100)が、少なくとも1つのリモートVCSインターネットサーバー(106)および任意選択で、様々なプロトコルを使用してインターネット接続されたビデオデータ記憶装置(108)として使用されるサーバーなどの他のクラウドサーバーとどのように通信し得るかのさらなる詳細を示す。カメラ(100)は、VCSインターネットサーバー(106)にそれらの状態(例えば、カメラのオンおよび接続されているか否か)を一連の「ハートビート」カメラ状態メッセージ(200)によって継続的に通知し得る。任意のファイアウォール(104)を通過してデータを伝送するのを支援するために、カメラ(100)は、VCSインターネットサーバー(106)ならびに任意選択でHTTPおよびHTTPSプロトコル(202)を通してなど他のサーバー(108)とも通信し得、それらのファイアウォールは、一般に、受け入れるように構成されている。いくつかの実施形態では、カメラ(100)は、VCSインターネットサーバー(106)、ならびにインターネット接続されたビデオ記憶装置(108)として使用される他のサーバー、および/またはピアツーピアビデオストリーミング方式(204)を使用するクライアントコンピュータ制御装置(114)のいずれとも通信するようにも構成され得る。これらのピアツーピアビデオストリーミング方式は、リアルタイムストリーミングプロトコル(RTSP)を含み得、任意選択で、IP割り当てサーバー(例えば、TURN「traversal using relays around network address tranlators(NAT)」方式、システムなど)を用いる。TURN方式の例は、前述した、RFC 5766、RFC 6156、RFC 7065などの、インターネット技術標準化委員会(IETF)リクエストフォーコメント文書に示されている。
従って、本システムは、様々なクライアントコンピュータ制御装置が、有効にされたカメラからのメディアを構成、制御および表示するのを可能にできる。これを行うために、様々なサーバーの1つ以上が、例えば、1つ以上のウェブアプリケーションをホストでき、それらは、次いで、クライアントコンピュータ制御装置とカメラとの間の通信および認証を仲介できる。他のサーバーインタフェースも使用され得る。いずれのアプローチでも、クライアントコンピュータ制御装置およびカメラは、サーバーに対して要求を行うことができる。このアプローチは、カメラの現在の状態をサーバーに提供するためにも使用できる。これが生じると、サーバーは、単に肯定応答で応答するか、または構成/更新用の追加データで応答するかのいずれかであり得る。
クライアントコンピュータ制御装置を使用している、クライアントが、カメラ構成を更新したい場合、クライアントは、データをサーバーにポストするためにクライアントコンピュータ制御装置を使用することによりこれを行うことができる。サーバーは、次いで、カメラが開始しているオープン通信機構を通じて更新フラグをカメラに送信できる。カメラは、次いで、その装置IDに固有のカメラ構成リストをサーバーから取得できる。
従って、ここで、少なくとも1つのリモートインターネットサーバーは、少なくとも1つのウェブアプリケーションまたは他の通信インタフェースをホストでき、少なくともクライアントコンピュータ制御装置は、このウェブアプリケーションまたは他の通信インタフェースを使用して、このサーバーおよび様々なプロセッサ制御ビデオカメラと通信できる。
クライアントコンピュータ制御装置
このコンテキストでは、クライアントコンピュータ制御装置は、コマンドをサーバーに送信し、その結果として、サーバーを構成して様々なカメラからのライブストリームを要求させ得ることに留意されたい。ここで、クライアントコンピュータ制御装置は、様々な一意のカメラ/装置識別子を使用して、どのカメラを調整すべきかを正確に指定できる。これらの識別子は、適切なコマンドとともに、サーバーに送信され得、サーバーは、次いで、これらのコマンドを適切な識別されたカメラに中継するであろう。クライアントコンピュータ制御装置は、何のカメラビデオ、および何の事象ビデオがクラウドストレージサーバー上に格納されているかを示すリストを、ユーザーが参照するために表示することもできる。クライアントコンピュータ制御装置は、任意の新しい事象に関して任意のアラートをユーザーに中継することもできる。
プロセッサ制御ビデオカメラ
このコンテキストでは、前述同様に、プロセッサ制御ビデオカメラ(カメラ)は、様々な画像処理および音声処理アルゴリズムを使用して、ビデオおよび音声事象を自動的に検出し、これらの事象によってトリガーされたビデオをシステムサーバーにアップロードするように構成できることを覚えておかれたい。これは、次いで、システムサーバーをトリガーして、潜在的興味の事象が生じている(または生じた)ことをクライアントに知らせる通知(例えば、プッシュ通知)を適切なクライアントコンピュータ制御装置に送信できる。カメラは、任意の制御データをサーバーまたはクライアントコンピュータ制御装置から受信するために、クラウドサーバーへのオープン通信ネットワークを継続的に維持しようともし得る。カメラは、通常、サーバー(複数可)へのネットワーク接続が失われていることをカメラが検出すると、カメラが直ちにサーバーへの接続を回復させようと試み、このようにして、可能な場合にはいつでも通信が維持され得ることを確実にするのを支援できるように、構成されるであろう。
クライアントのネットワークに応じて、カメラは、多くの場合、ライブビデオを、その特定のネットワーク接続(例えば、3G/4G、WiFi、LAN)によって提供される利用可能な帯域幅に一致するように、様々な圧縮レベルおよび品質基準でストリームするように構成されるであろう。代替として、サーバーまたはユーザーが、低品質のネットワークに対処するためのカメラのエフォートが不十分であると判断する場合、サーバーは、介入して、秒あたりもっと低いビット数までビデオをさらに変換するように構成され得る。
すぐ後でより詳細に説明されるように、カメラはまた、バーコード(例えば、QRコード(登録商標))、音声信号通知、他のネットワーク伝送などの使用によるなど、様々なタイプのプロビジョニングプロセスを通じて、特定のネットワークおよび特定のユーザーに適合するようにも構成され得る。一般に、カメラは、そのカメラがプロビジョニングプロセスを通して特定のユーザーに結び付けられるデフォルトモードで構成されるであろう。特別に構成されていない限り、一般に、認定ユーザーのみが、様々なカメラにアクセスして、任意の特定のビデオまたはライブストリームを表示することが可能であろう。初期化時に、例えば、カメラソフトウェアが、あるタイプの光信号(例えば、バーコードQRコード(登録商標)、光パターンなど)を表示して、このタイプの光信号を使用し、次いで、カメラ動作の様々な態様を構成することを期待するようにプログラムできる。
図3Aは、VCSシステムの構成要素の一部およびやり取りを示すブロック図を示す。図に示すように、多くの場合、VCSリモートインターネットサーバー(106)の機能が、最新のクラウドアーキテクチャ技術を使用して、複数の異なるサーバーとして実装できる。この複数のクラウドベースのサーバーは、分散マルチメディアシステム(DMS)ピアツーピア(P2P)サーバー(300)、アプリケーションサーバー(302)、負荷分散装置(304)、ユーザー管理サーバー(306)(多くの場合、ユーザーデータ用のデータベース(308)に接続している)、ならびにシステムを管理する(例えば、アラートおよびアラームの生成、管理の通知など)目的で使用される他のサーバーおよび装置(310)を含み得る。インターネット接続されたビデオ記憶装置(108)として使用されるサーバーの機能は、様々なストレージサーバー(312)(多くの場合、データベース110を管理するために使用される)、ビデオサーバー(314)、様々なデータベースおよびインデックスソフトウェアおよびメモリ管理装置(316)、ならびに同様のものなどの、複数の異なるサーバーによっても処理され得る。
サーバー・カメラ通信およびインタフェース
前述のように、いくつかの実施形態では、カメラおよびサーバーは、安全でステートレスなRESTful APIを使用して通信するように構成され得る。ここで、システムによって公開されたAPIは、HTTPセッション内で情報が維持されない、個別の要求に依存する。結果として、いずれのサーバーも、サーバークラスタリングを必要とすることなく、任意のカメラ要求に対応できる。このステートレスな方法は、システムが要求に応じて水平方向にスケールアウトするのを容易にするのも支援する。
従って、これらの実施形態では、ビデオのアップロードは、理想的には、幾分信頼できないネット上でさえ、単一のHTTP要求をオーバーロードすることなく、動作するように設計された、段階的な事象駆動方式で行われる。これは、システムが迅速に動作するのを可能にし、また、困難な状況でさえ;ビデオの少なくとも2、3の部分がアップロードされるのを確実にするのも支援する。データが失われた場合、システムは任意選択で、そのビデオを一連のさらに小さいサイズのデータ要求として取得しようと再試行でき、それは一般に、ビデオ全体を単一の要求としてアップロードしようとするよりも厄介でない。
この好ましい実施形態では、事象駆動アーキテクチャ(SEDA)の使用は、事象がカメラから作成されるや否や、カメラがそのビデオをアップロードするのを待つことなく、システムがカメラの所有者(ユーザー、クライアント)に直ちに警告するのも可能にする。
いくつかの実施形態では、カメラは、ビデオセグメントアプローチを並列化して、複数のサーバーに同時に接続することにより、さらに高速なビデオアップロードを達成するためにも、SEDAアプローチを使用できる。
システムは、様々なタイプのメタデータ情報が、様々なカメラおよび事象を含め、様々なオブジェクトおよびデータファイルに適用されるのも可能にすることに留意されたい。追加として、任意のタイプのメディアもアップロードされ得る。この柔軟なアプローチは、システムが、任意のカメラ装置に対してクラウドサービスバックボーンとして機能するのを可能にする。
言い換えれば、これらの方法によれば、少なくとも1つのインターネットサーバーは、段階的な事象駆動アーキテクチャに従って、プロセッサ制御ビデオカメラ、および/またはクライアントコンピュータ制御装置のいずれかと通信できる。これは、表現状態転送(REST)アプリケーションプログラミングインタフェース(API)を使用して行うことができ、それにより、HTTPまたはHTTPSセッション内で情報が維持されないHTTPまたはHTTPSセッションを生成する。これは、これらの方法の拡張性を向上させる。
セキュリティ/認証
セキュリティを維持して、様々なカメラおよびクライアントコンピュータ制御装置を認証するために様々なアプローチが使用され得る。1つの方法は、接続された装置を認証するために期限切れになる鍵と秘密のペアを使用することである。このアプローチの利点は、この認証方式が、HTTP/アプリケーションサーバー内にセッションを維持する必要なく行われ得ることである。これは、その結果として、システムが要求に応じて水平方向に拡大するのに役立つ。
一実施形態では、このプロセス認証プロセスは、以下のように動作し得る:
a)装置が、HTTPS/SSLを通して、秘密のAPI鍵およびAPIパスワードでVCSに対して認証する。
b)VCSは、期限切れになる秘密鍵およびパスワードを装置に割り当て、装置は、これらが失効するまで将来の全ての要求に対して使用する。
c)以降の全ての要求において、パスワードがワイヤー上で奪われないことを確実にするために、装置は秘密鍵およびパスワードのSHAハッシュを時間と共に送信する。
d)秘密鍵は、装置を一意に識別する一意の鍵(ローカルID)とも結び付けられ、それは、再度、装置内で時間にSHAハッシュされる。
e)SHAハッシュおよびタイムスタンプは、ワイヤーを通してリッスンしている誰かが偽って要求できないことを確実にするのを支援する。
f)期限切れになる鍵は、たとえ誰かが力ずくでSHAハッシュを何とか破ったとしても、その鍵が使用できないことを確実にするのに役立つ。
もっと簡単に言い換えれば、様々なプロセッサ制御ビデオカメラ、様々なシステムインターネットサーバー、および様々なクライアントコンピュータ制御装置の間の通信は、少なくとも1つの期限切れになるトークンおよび少なくとも1つの暗号鍵を使用することによって保護できる。
カメラのプロビジョニング(ネットワーク構成およびクライアントコンピュータ制御装置へのバインド)
以前の説明をさらに詳しく説明するために、いくつかの実施形態では、システムは光学的方法を用いてカメラをプロビジョニング(例えば、ネットワーク構成および特定のクライアントコンピュータ制御装置へのバインドを行う)できる。ここで、例えば、ユーザーが新しいカメラをインストールする(または、既存のカメラを再構成する)と、ユーザーはユーザーのクライアントコンピュータ制御装置を使用してシステムにサインインし、新しいカメラのセットアップを要求できる。例えば、クライアントコンピュータ制御装置上で実行しているアプリは、サーバーが、光学バーコードまたはQRコード(登録商標)などの、カメラセットアップトークンを生成することを要求でき、カメラセットアップトークンは、プロセッサを搭載したカメラが次いで、構成情報を抽出するために読み取って使用できる。このカメラ構成は、ローカルネットワーク接続されたWiFiルーターのWiFi SSID(サービスセット識別子)、ローカルWiFiパスワードなどの情報、および位置識別コード、顧客識別、カメラトークン、および同様のものなどの他の情報を含み得る。
この例では、カメラがWiFi送受信機を有し、本発明のソフトウェアの少なくとも一部を用いてデフォルト構成され、そうでなければインターネットにまだ接続されていない、と仮定する。ここで、クライアントコンピュータ制御装置は、適切なQRコード(登録商標)を生成でき、それは、次いで、クライアントコンピュータ制御装置のディスプレイ画面上に表示されるか、または印刷されるかのいずれかである。このQRコード(登録商標)がカメラに対して示されると、カメラプロセッサは、適切なバーコード認識ソフトウェアを使用して、WiFi SSIDおよびパスワードを抽出し、この情報を使用して、おそらくは、カメラシステムソフトウェア内に以前に格納されたか、または代替としてQRコード(登録商標)でも提供される、クラウドサーバーURLを使用して、インターネットに接続できる。カメラおよびサーバーは、次いで、ロケールコードを利用して、カメラの位置に応じて、デフォルトのシステムサーバーURLをセットアップできる。この方式は、従って、任意のカメラが、カメラの地理位置情報に従って、システムサーバーにプロビジョニングされるのを可能にする。
カメラは、次いで、顧客ID、カメラトークン、およびカメラIDを取得して、システムサーバーで登録できる。うまく登録できると、カメラは、「ハートビート」(例えば、カメラ状態メッセージ)のシステムサーバー(例えば、DMSサーバー)への送信を開始するのを許可される(そして、可能になる)であろう。一旦、登録されると、カメラは、現在、システムサーバー上で構成されていて、適切なユーザーに自動的に関連付けられる(プロビジョニングされる)。
ネットワーク操作のためにプロセッサ制御ビデオカメラを構成する他の方法も可能である。これらの方法は、WiFi SSD、WiFiパスワード、位置決めコード(locate code)、顧客ID、およびカメラトークンからなる群から選択された少なくともいくつかの情報を符号化する、1つ以上のバーコードまたは他のタイプの光学コードを使用することを含み得る。カメラ構成の他の代替方法は、一連の可聴音、または光もしくは赤外線強度もしくはカラーにおける変動として符号化されたネットワーク通信情報を使用すること;またはBluetooth(商標)もしくはWAPもしくは適切なネットワークセットアップデータを転送するための他の無線ベースの方法を使用することを含む。カメラソフトウェア/ファームウェアは、プロビジョニングの1つの方法が適切でないことが分かった場合に、プロビジョニングの代替方法が自動的に(または手動で)選択され得るように、複数の方法によってプロビジョニングを試行するように構成され得る。
ビデオ記憶
いくつかの実施形態では、システムは、Amazon S3、Rackspace Cloud Files、Googleなどの第三者クラウドサービスプロバイダーを使用してビデオを格納し得る。これらのベンダーは、高度に拡張可能な、オンデマンドの、従量制のファイル記憶およびサービングプラットフォームを提供する。本発明は、全てのタイプの記憶装置と連携できるが、いくつかの実施形態では、かかる第三者の拡張可能なクラウドサービスプロバイダーの使用は、有用であり得る。
多数のビデオを格納/供給するプロセスを、費用を最小限に抑えて、ビデオを安全に保つと同時に、さらに認証されたエンドユーザーに対して見易くしながら、容易にするのを支援するために、いくつかの実施形態では、システムは、様々なビデオファイルおよび他のファイルを、128ビット暗号化uniform resource identifier(URI)などの暗号化URIとして格納し得る。かかる暗号化URIは、ユーザーがシステムにログインするとユーザーアプリケーションによって透過的にフェッチでき、そのビデオフォーマットをサポートする任意のプレーヤーで直接再生できる。
いくつかの実施形態では、システムは、少なくとも1つのリモートインターネットサーバーからのコマンドをさらに使用して、プロセッサ制御ビデオカメラをさらに構成し、ビデオデータを直接、少なくとも1つのインターネット接続されたビデオデータ記憶装置にストリームして、このビデオデータをこのビデオデータ記憶装置のメモリに格納し得、それによりリモートに格納されたビデオデータを作成する。
いくつかの実施形態では、このビデオデータ記憶装置は、前述した自動サービスプロビジョニングおよび仮想マシン移行方法に従って動作する、第三者クラウドファイルホスティングサービスまたは他のクラウドファイルホスティングサービスによって提供できる。言うまでもなく、「第三者」サーバーがそれ自体で使用される実際の要件はなく、本当にシステムの運営者が、かなり多額の費用を想定することを望む場合には、必要に応じて彼ら自身の拡張可能なサーバーを提供できる。
ビデオデータ記憶装置のタイプの関わらず、これらの実施形態では、システムはリモートインターネットサーバー(複数可)を使用して、これらのリモートに格納されたビデオデータに関する情報を様々なクライアントコンピュータ制御装置に送信するか、またはそれらから受信することができ、それによりこれらのクライアントコンピュータ制御装置が後にこのリモートに格納されたビデオデータを取得するのを可能にできる(これは、クライアントに、格納されたビデオデータの128ビット暗号化URIを教えるシステムと同じくらい単純であり得るか、または他の方法による)。ここで、インターネット接続されたビデオ記憶装置(複数可)は一般に、リモートインターネットサーバー(複数可)によって収容されるか、そうでなければリモートインターネットサーバーによって収容されないことに留意されたい。
事象、事象検索および事象管理
いくつかの実施形態では、プロセッサ制御ビデオカメラは、カメラの実世界環境において事象によって引き起こされた変化を自動的に検出するために、様々な音声またはビデオ検出パラメータを使用するようにさらに構成され得る。これらの検出パラメータに従い、カメラは次いで、これらの事象によって引き起こされた変化に関するデータをリモートインターネットサーバー(複数可)に伝送できる。ここで、これらの検出パラメータは、クライアントコンピュータ制御装置(複数可)およびこれらのサーバーによって構成され得る。
一旦、これらの検出パラメータが設定されると、プロセッサ制御ビデオカメラは(これらの検出パラメータに従って動作するカメラプロセッサおよびソフトウェアを使用して)、これらの事象に対して実世界環境位置(複数可)を監視できる。これらの事象が検出されると、カメラは、これらの事象に関するデータをインターネットサーバー(複数可)に中継でき、インターネットサーバーは、次いで、事象によって引き起こされた変化に関するデータを少なくとも1つのコンピュータ制御装置に伝送できる。
様々なタイプの事象が、この方式に従って自動的に検出されて報告でき、侵入検出、動き検出(または指示による動き検出)、カメラの不正使用検出、顔検出、音声アラート、カメラまたは他の装置のオフラインアラート、他の異常な視覚的検出事象、および他の異常な音声検出事象を含む。
通常、システムは、カメラが(複数可)がサーバーに提供する「ハートビート」カメラ状態メッセージを通して、カメラがオフラインであるかどうかを判断することが可能である。これらのメッセージが、ネットワーク問題、カメラの電力、カメラの不正使用、または任意の他の不具合に起因して停止すると、サーバーは、カメラが実際にオフラインであるかどうかを判断するために、例えば、有限状態機械を利用して様々な自動化テストを実施できる。所与のカメラがオフラインであるとサーバーが判断すると、サーバーは、妥当な事象が生じたことを登録して、この事象が任意のクライアント通知選択と一致するかを判断でき、そうであれば、クライアントコンピュータ制御装置に様々な方法(例えば、プッシュ方式など)で通知する。
より一般的には、これらの事象は、1つ以上の侵入事象、指示による動き事象、カメラの不正使用事象、顔検出事象、人物検出または認識事象、行動認識事象、音声アラート事象、カメラオフライン事象、温度またはホームセンサーアラート事象、他のセンサーによって生成または検出されてプロセッサ制御ビデオカメラに伝送された事象、および様々な検出パラメータに従いプロセッサによって自動的に分析できる音声または視覚信号のいずれかを生成する他の事象を含み得る。
事象データは、その事象が記録された実世界の位置、どのカメラまたはセンサーがそれを記録したか、その事象が記録された時間および日付、事象の状態(進行中、終了した、完全に記録された、など)などの、全ての事象に存在するデータをさらに含み得る。
追加として、様々なメディアデータが事象データに付加できる。この事象付加またはメディアデータは、その事象の実際の音声またはビデオ記録であり得、それは、任意選択で、必要に応じて、様々な時間セグメントにわたる部分記録のセットとして格納できる。代替として、メディアは、全ての事象時間セグメントを含む完全な事象として格納され得る。
その上、様々なタイプの他の事象メタデータが格納され得る。このメタデータは、事象データおよびメディアが、サーバーを修正する必要なく、様々な場合および装置および要件に対して使用されるのを可能にできる。このデータは、例えば、カメラ/装置の開発者が任意の所望の情報を格納ために利用できる鍵値の任意のセットであり得、従って、事象メタデータを拡張する。
システムは、一般に、ユーザーが様々なクライアントコンピュータ制御装置を使用して、事象レコードを検索し、事象の日付、タイプ、位置、メタデータなどに基づきソートまたはフィルタ処理するのも可能にするであろう。
事象通知を受信するためのクライアントコンピュータ制御装置の構成
システムは一般に、ユーザーが、自分のクライアントコンピュータ制御装置(例えば、Android/iOS装置および同様のもの)を登録して、ユーザーのカメラおよびセンサーによって検出された任意の事象に関する通知を自動的に受信するのを可能にするように構成される。
一般に、クライアントコンピュータ制御装置を登録するプロセスは、その装置が使用したオペレーティングシステムのタイプに依存しないようにできる。すなわち、システムは任意の所与のコンピュータ制御装置を登録するプロセスを抽象化して、装置のオペレーティングシステム(例えば、iOS、Android、Windows(登録商標)、Linux(登録商標)など)に関わらずプロセスを同様にできる。通知プロセスは、HTTP/HTTPSメッセージまたはTCPもしくはUDPメッセージまたはHTML5ウェブソケットエンドポイント方式、および同様のものなどの、様々なメッセージフォーマットによって進めることができる。
通知プロセスは、通常、カメラ/センサーに対して透過的である。いくつかの実施形態では、カメラおよびセンサーが行う必要があるのは、事象が生じた場合にサーバー(複数可)に通知することであり、サーバーは次いで、事象通知を適切な登録済みクライアントコンピュータ制御装置に転送するのを取り計らう。
図3Bは、多数のビデオカメラおよびクライアントにわたる高拡張性のために構成される、本発明の連続記録サーバー実施形態の詳細を示す。
いくつかの実施形態では、インターネット接続されたビデオデータ記憶装置(108)は、連続記録サーバー(108a)として構成され得る。これが、図3Bに示されている。この実施形態では、前述同様に、連続記録サーバー(108a)は、システムが拡大して、前述した1〜100,000あるいはさらに1〜10,000,000+の範囲のビデオカメラなどの、非常に多数のビデオカメラ(100)を処理するのを可能にするアーキテクチャを使用する。
この実施形態では、目標は、ビデオデータを、格納および後の検索のために可能な限り効率的に捕捉することである。いくつかの実施形態では、ビデオ記録はほぼ継続的に生じているであろうが、格納されたビデオデータのクライアント再生は、典型的には、時々生じるだけであろう。この実施形態では、連続記録サーバー(108a)は、少なくとも1つのプロキシサーバー(350)、少なくとも1つの記録サーバー(352)および少なくとも1つのメディアサーバー(354)を含むと考えられ得る。これらは、その結果として、(図のように)別々のサーバー上に常駐できるか、またはいくつかの場合には、必要に応じて同じハードウェア上に常駐し得る仮想サーバーインスタンスであり得る。
この実施形態では、1つ以上のプロキシサーバー(350)が、ビデオおよび音声データを、様々なビデオカメラ(100)の一部または全部から、一部または全部のネットワークを通じて捕捉するように構成され得る。好ましい実施形態では、プロキシサーバー(複数可)(350)は、標準的なネットワークTCP/TLSタイプの接続を通じてアクセス可能である。プロキシサーバーは、ビデオデータを、好ましくは標準フォーマットで受信して、1つ以上の記録サーバー(352)のいずれか、および/または他のクライアントコンピュータ制御装置(112a)、もしくは様々なタイプのメディアサーバー(354)まで、多重送信および中継するように構成される。加えて、必要に応じて、プロキシサーバー(複数可)(350)は、ビデオデータを拡張可能な記憶システム(例えば、第三者のストレージサーバー110、記録サーバー352)から取得して、この格納されたビデオデータを直接クライアントコンピュータ制御装置に同様にストリームするためにも(記録サーバー352パイプラインの後のステージで)使用できる。
いくつかの実施形態では、記録サーバー(352)は、パイプラインの後のステージで、ビデオ(および音声)データを、様々なクラウドシステム構成要素(メディアサーバー354およびプロキシサーバー350など)によって容易に消費できるフォーマットに結合できる。記録サーバー(352)は、ビデオデータを後に取得するために、任意の拡張可能なストレージ(例えば、Amazon S3 Simple Storage Service、および同様のものなどの第三者ストレージサーバー110)に格納するようにも構成できる。記録サーバー(352)は、VCSリモートインターネットサーバー(106)を、格納されたビデオデータに関する情報で自動的に更新するようにも更新でき、この格納されたビデオデータが様々なクライアントコンピュータ制御装置(112)によって後に取得できるようになる。
いくつかの実施形態では、メディアサーバー(354)は、ビデオ(および音声)データを、リアルタイムメッセージングプロトコル(RTMP)、HTTPライブストリーミング(HLS)ビデオフォーマット、リアルタイムストリーミングプロトコル(RTSP)などの、様々な標準ストリーミングフォーマットにコード変換するように構成され得る。これは、ビデオデータを多数の異なるタイプのクライアントコンピュータ制御装置(100)上に効率的に表示するプロセスを容易にする。
いくつかの実施形態では、ビデオカメラ(100)は、プロキシサーバー(350)またはプロキシサービスを介して記録サーバー(352)に接続し得る。これは、ビデオデータが記録サーバー(352)に比較的直接的に送信されるのを可能にし、記録サーバーで、それは次いで、例えば、後に使用するために、拡張可能なストレージ(110)に格納できる。代替として、ビデオデータは、そのデータを記録サーバー(352)に送信することなく、クライアントコンピュータ制御装置(112)にも中継され得る。これは、例えば、記録されたデータをプロキシサーバー(350)に戻し、次いで、ビデオデータをクライアントコンピュータ制御装置に、プロキシサーバー(350)(例えば、112a)から直接、またはメディアサーバー(354)を介してクライアントコンピュータ制御装置(112b)に間接的に、ストリームバックすることにより、行われ得る。
一般に、連続記録サーバー(108a)は、様々なビデオカメラ(複数可)(100)と様々なクライアントコンピュータ制御装置(112)との間の通信を処理するために、DMSサーバー(複数可)(300)およびVCSリモートインターネットサーバー(106)と通信する必要もある。ここで、例えば、様々な個々のサービスは、多くの場合、以前に記録されたデータを取得するため、または特定のビデオカメラ(100)のビデオストリームのユニフォームリソースロケーター(URL)を得るために、DMS(300)およびVCSリモートインターネットサーバー(106)と通信し得る。
さらなるカメラ制御機能
いくつかの実施形態では、システムは、ユーザーが、様々なカメラ機能を自分のクライアントコンピュータ制御装置から制御するのも可能にするであろう。ここで、クライアントコンピュータ制御装置、リモートインターネットサーバー(複数可)、およびプロセッサ制御ビデオカメラは、カメラパン/チルト/ズームコマンド、カメラ解像度変更コマンド、カメラ照明変更コマンド、ビデオストリーミング変更コマンド、ファームウェアアップグレードコマンド、および様々な自動事象検出パラメータコマンドなどの、コマンドを受信し、それに従って動作するように構成できる。
いくつかの実施形態では、システム(例えば、DMS)サーバーは、ウェブページを供給するウェブサーバーをさらに含み得、ウェブページは次いで、様々なクライアントコンピュータ制御装置と様々なカメラとの間の認証、承認および通信のうちの1つ以上を目的として使用できる。
例えば、1つのかかる実施形態では:
a)カメラが、HTTP要求、ロングポーリングHTTP要求、双方向常時オープンソケット、双方向常時オープンウェブソケット、拡張可能なメッセージングおよびプレゼンスプロトコル(XMPP)、メッセージングキューイングテレメトリートランスポート(MQTT)、および同様のものなどの、様々な前述した手段を介して、サーバー(複数可)に接続する。
b)カメラ(複数可)が、カメラ状態メッセージ「ハートビート」および追加のデータをサーバーに伝送し、このようにして、サーバーにカメラの現在の状態に関して通知する。これらの「ハートビート」カメラ状態メッセージは、例えば、サーバーへのHTTP呼出し/要求、ソケットタイプメッセージ、XMPPメッセージ、および同様のものであり得る。
c)上の確立された接続(または追加の接続)を使用して、サーバーが次いで、コマンドおよび関連付けられたデータをカメラに送り返して、c1)カメラの様々な制御パラメータを変更する;c2)要求に対して、ICE/STUN/TURNプロトコルリプライなどであるがそれらに制限されない、カメラとクライアントコンピュータ制御装置との間のピアツーピア通信を確立するためのデータで応答する;c3)ライブもしくは記録されたビデオ、音声、もしくは任意の種類の知覚データであり得る、任意の種類の知覚データストリームで応答する;またはc4)制御パラメータを変更する要求の肯定応答で応答する;などの、様々な動作を実行するようにカメラに指示する。
d)クライアントコンピュータ制御装置は、上のステップ「a」で前述した様々な手段の1つを使用して、DMSサーバーへの接続も確立できる。
e)クライアントコンピュータ制御装置は、次いで、様々なタイプのカメラ制御データをサーバーに送信できる。このカメラ制御データは、サーバーによって解釈され、上のステップ「a」で確立された手段を使用してカメラに中継される。加えて、サーバーおよびまたはカメラは、追加のデータ(例えば、「コマンドが受理された」、「コマンドが受理されなかった」など)をクライアントコンピュータ制御装置に伝送することにより、このカメラ制御データに対して肯定応答または応答することもできる。その上、カメラが、上のステップ「c」におけるように、任意のデータをサーバーに送信している場合、サーバーは次いで任意選択で、それをクライアントコンピュータ制御装置にも中継して送り返すことができる。
図4は、プロセッサを搭載したビデオカメラがデバイスマネージャサービス(DMS)サーバーとどのようにやり取りし得るかの流れ図を示す。
カメラ(100)は、最初に、VCSリモートインターネットサーバー(106)(例えば、DMSサーバー(300))との全ての通信を開始するためにセッションを作成する。カメラ(100)が以前に登録されていない場合、カメラは次いで、自身をサーバー(106)または(300)で登録しようと試み、多くの場合、デフォルト構成が次いでこのカメラに対して使用される。サーバー(106)または(300)は、次いで、その特定のカメラ(100)と関連付けられた任意のカメラメタデータを取得し、このメタデータはサーバー(106)、(108)内に格納されるであろう。
カメラメタデータは、カメラ製造業者、モデル、ファームウェアバージョンなどを含むが、それらに制限されず、様々なタイプのカメラ(複数可)(100)を識別する情報を含み得る。一旦、登録されると、カメラは次いで、適切なカメラ構成を取得して、カメラ(複数可)がアクティブな状態を維持している間は通常、無期限に継続する「ハートビート」ループに入る。
このハートビートループ内で、カメラは定期的に「ハートビート」カメラ状態メッセージをインターネットサーバー(106)、(300)に伝送する。これは、リモートサーバーへの接続を維持するのに役立つ。この「ハートビートループ」中、カメラは、以下を含むがそれらに制限されない、様々な他の動作も実行できる:
a)カメラ構成を更新する(例えば、カメラが任意の更新されたカメラ構成パラメータをサーバー(106、300)から取得する)。
b)画像ストリーム要求を処理する(例えば、カメラはビデオ画像ストリームを、多くの場合、クライアント(116)によるクライアントコンピュータ制御装置(112)を通じた要求に応じて、瞬時オンライブストリーミング用にクライアントコンピュータ制御装置(複数可)(112)に中継するために、サーバー(106、300)に送信する)。
c)カメラ制御要求を処理する−ここでは、カメラ(100)が、手動記録トリガー、ピアツーピアストリーミング要求、他のカメラに関連したセンサー(例えば、温度、湿度、音、動き)からのデータのプッシュツートーク要求、ファームウェアアップグレード要求、カメラリブート要求などの、クライアント(116)(112)から直接中継された任意の制御データを取得する。
d)エラーを処理する(例えば、無効なカメラトークン、無効なセッション情報などの、エラーコードを受信すると、サーバー接続を終了するように構成されたカメラ)。システムは次いで、エラーのタイプに応じて、適切な個別化された是正措置をとるように構成できる。
カメラファームウェアのアップグレード、クライアントコンピュータ制御装置ソフトウェアのアップグレード。
図5は、プロセッサを搭載したビデオカメラおよび/またはクライアントコンピュータ制御装置のファームウェアまたは他のソフトウェアがどのようにアップグレードされ得るかを示す。このファームウェアは、一般に、カメラ(100)のプロセッサまたはクライアントコンピュータ制御装置(112)に指示して本明細書で説明する発明方法を実施するために必要なソフトウェアである。多くの場合、このファームウェアは、ランダムアクセスメモリ、フラッシュメモリ、磁気ディスクメモリ、および同様のものなどの、カメラ(100)またはクライアントコンピュータ制御装置(112)に搭載されたメモリ内に格納されるであろう。
これらの方法によれば、カメラ(100)は、その現在のファームウェアバージョンをVCSリモートインターネットサーバー(106)に自動的、手動のいずれかで伝送できる(500)か、あるいはファームウェア更新のための要求を伝送できるだけである。同様にクライアントコンピュータ制御装置(112)も、その現在のファームウェアバージョンをVCSリモートインターネットサーバー(106)に自動的または手動のいずれかで伝送できる(502)か、あるいはファームウェア更新のための要求を伝送できるだけである。VCSリモートインターネットサーバー(複数可)(106)は、ファームウェアの適切な最新バージョンを(504)カメラ(100)またはクライアントコンピュータ制御装置(506)(112)に伝送することにより応答できる。
クラウドカメラは、一旦、ユーザーによって要求されていると、自動アップグレードを実行できる。カメラがアップグレードするための要求を受信すると、カメラは、例えば、要求からカメラに対して渡されたファームウェアURLを使用して、ファームウェアファイルをダウンロードできる。ファームウェアファイルのダウンロードが完了すると、アップグレードプロセスが開始できる。他の方法も使用できる。
アップグレードプロセスは、カメラまたはクライアントコンピュータ制御装置が、任意の失敗に起因して、アップグレードプロセスの任意の段階から回復するのが可能であることを確実にするために段階的にも処理できる。例えば、ダウンロードファイルが完了した後、カメラプロセッサは、ダウンロードファイルが正しいかを確認し、次いでカメラを「セーフモード」にリブートできる。このセーフモードは、カメラのカーネルまたはファイルシステムをカメラのメモリ(例えば、フラッシュ、NANDなど)に書き込むのを可能にする最小限のパーティションであり得る。アップグレードが完了した後、カメラは次いで、正規動作のためにノーマルモードにリブートして戻すことができる。
追加として、いくつかの実施形態では、特権ユーザーおよびシステム管理者が、カメラにプッシュされる任意のファームウェアバージョンを追加、修正、および削除するのを可能にするために、管理ポータル(例えば、ウェブページ)が利用できる。これは、特権ユーザーがファームウェアアップグレードを様々な顧客およびカメラにプッシュするのを可能にする。
ピアツーピアビデオストリーミング
好ましい実施形態では、システムは、少なくとも時々、ピアツーピアビデオストリーミング方式などの、様々なストリーミング方式に従って動作するであろう。かかるピアツーピアビデオストリーミング方式は、システムサーバー上の負荷を低下させるのに役立ち得、従って、システム資源に関する要求を減らし、要求が増加するにつれてシステムスケーリングを容易にするのに役立つ。
ここで、かかるストリーミング方式は、様々な初期サーバーィハンドシェイクおよびビデオストリーミングプロセスを開始するために必要なデータを伝達できるセットアップメッセージを使用して開始できる。
その後(直接P2P接続が可能であると仮定して)、カメラは次いで、データを直接クライアントコンピュータ制御装置にストリームするように構成できる。ここで、サーバー上の負荷を減らすために、サーバーへのP2P接続は、必要に応じて切断され得る。
しかし、カメラとクライアントコンピュータ制御装置との間の直接P2P接続が(例えば、問題のあるファイアウォールに起因して)可能でない場合、サーバーが継続して関与し、必要に応じて中継接続として機能し得る。
言い換えれば、いくつかの実施形態では、リモートインターネットサーバー(複数可)からのコマンドが、ビデオデータを直接(例えば、P2P方式を使用して)クライアントコンピュータ制御装置にストリームするか、または代替としてリモートインターネットサーバーを経由してビデオデータをクライアントコンピュータ制御装置にストリームするように、ネットワーク接続されたビデオカメラをさらに構成するために使用できる。
システムは、様々なピアツーピアストリーミングアプローチを使用して、様々なファイアウォールおよび他のネットワーク障害を克服しようと試行できる。例えば、システムは、様々なファイアウォールを通過する転送を容易にするのを支援するためにリアルタイムストリーミングプロトコルを採用し得る。加えて、システムは、カメラとクライアントコンピュータ制御装置との間の直接P2Pが実現不可能であると判断する(従って、代替のサーバー中継方式に後退する)前に、様々なネットワークアドレス変換(NAT)トラバーサル技術などの技術を使用して、カメラとクライアントを直接接続する複数の試行を行うように構成され得る。
カメラとクライアントコンピュータ制御装置との間のP2Pストリーミングの様々な方法は、以下を含む:
1:ローカル:クライアントコンピュータ制御装置およびカメラが同じローカルLANまたはWiFiネットワーク上にある場合、問題は大いに単純化される。その2つの装置は、いかなるトラバーサル方法もさらに必要とすることなく、ローカルのLAN/WIFI装置として互いに通信できる。
ピアツーピア(P2P)直接接続を確立するために、Traversal Using Relay around NAT(TURN)などの、IP収集サーバーが、セキュリティ目的で認証証明書セットを有するグローバルサーバーとして使用できる。クライアントコンピュータ制御装置およびカメラの両方は、NATのためのセッショントラバーサルユーティリティ(STUN)などの、任意の機構を使用して、それらそれぞれのIPアドレスリストを、ピアとしての直接通信に備えて、このIP割当てサーバーから収集する。クライアントコンピュータ制御装置は次いで、カメラからのストリームをDMSサーバーを通じて要求でき、DMSサーバーは、2つのピア間でアドレス候補のリストを中継するであろう。カメラおよびクライアントは次いで、直接P2Pデータチャネルが通信用にオープンされるまで、双方向接続性確立(ICE:Interactive Connectivity Establishment)などの、プロトコルを使用し、候補アドレスのリストを通して相互に接続しようと試行できる。
このモードでは、カメラおよびクライアントコンピュータ制御装置は、ネットワークLANまたはWiFiネットワークにローカルである。サーバーは、カメラに、ビデオストリーム(RTSPビデオストリームなどのフォーマット)または画像のMotion JPGシーケンスをクライアントコンピュータ制御装置に直接送信するように要求できる。クライアントコンピュータ制御装置はこのビデオを適切なネットワークポートを経由してローカルに受信し、(1)RTSPまたは(2)M−JPGまたは(3)カスタム交換フォーマットに基づいて、ビデオデータを表示する。そのモードでは、ビデオまたは画像データはインターネット中継サーバーまたはNATトラバーサルルートを経由する必要がない。
2:直接:一般に、ファイアウォールおよび他のネットワーク障害を克服するために様々なNATトラバーサル方法を使用した、直接、カメラとクライアントコンピュータ制御装置との間でのピアツーピア(P2P)ビデオ表示。
このモードでは、カメラおよびクライアントコンピュータ制御装置は、サーバーによる支援の下で、それらが、ファイアウォールによって分離された別個のネットワーク上にあることを検出し、従って、互いに直接通信するために、NATトラバーサル技術を使用しようと試行する必要がある。このP2P直接方式は、ファイアウォールまたはルーター内に適切なネットワークポートを自動的にオープンしようとするNATトラバーサル方法を使用しようと試みるであろう。このポートがうまくオープンされると、ビデオまたは画像またはカメラデータは、ファイアウォール/ルーターを通過でき、カメラとクライアントコンピュータ制御装置との間の直接通信が確立できる。直接接続の試行が失敗すると、システムは、代わりに、中継P2Pサーバーを通して接続しようと試みる、次のセッション(以下)を呼び出すであろう。
3:中継/プロキシ:中間インターネットサーバーを使用して、カメラとクライアントコンピュータ制御装置との間でビデオデータを接続/収集/中継/転送する。
中継接続は多くの場合、同じP2Pサーバーへのピア間の常時接続を必要とするので、拡張性を処理するために、負荷分散技術が任意選択で使用され得る。マスターP2Pサーバーは、そのリスト内の複数のスレーブP2Pサーバーと共にパブリックに実行しているであろう。クライアントは、マスターP2Pサーバーでアドレス収集要求を開始し、マスターP2Pサーバーは、スレーブサーバーの1つへの位置で応答するであろう。スレーブサーバーの1つへリダイレクトした後、クライアントはこのスレーブサーバーに接続して、そのアドレスリストを収集する。クライアントは次いで、この候補アドレスリストを、適切なP2Pアドレスと共に、DMSサーバーを使用して、カメラに送信する。カメラは次いで、その候補クライアントコンピュータ制御装置アドレスを同じP2Pサーバーから要求できる。
図6は、システムがどのように様々なファイアウォールを通過し、ピアツーピア(P2P)方式に従って動作できるかの例を示す。特に、図6は、どのように様々なIPアドレスが管理され得るかの具体例を示す。
一般に、前述のように、かかるP2P方式は、以下のいずれかによって動作できる:
a)直接、カメラ(100)とクライアントコンピュータ制御装置(112)との間でのピアツーピア(P2P)ビデオ表示。
b)中継/プロキシ:カメラ(100)からクライアントコンピュータ制御装置(112)へビデオデータを接続/収集/中継/転送するための中間インターネットサーバー(例えば、300)の使用。
c)ローカル:カメラ(100)およびクライアントコンピュータ制御装置(112)が両方とも同じローカルLANまたはWiFiネットワーク上にある。従って、装置は互いに直接通信でき、クライアントコンピュータ制御装置(複数可)(112)は、いかなる追加のファイアウォールNATトラバーサル方法も必要とすることなく、ローカルのLAN/WIFI装置としてカメラ(100)と通信できる。
拡張性
VCSアーキテクチャは、水平方向に拡張可能であり、何百万ものカメラに透過的に対応するのを可能にする。そのアーキテクチャが以下の図7に示されている。
図7は、VCSアーキテクチャの水平拡張性の例を示す。図7では、ビデオカメラは、最初に構成された後、定期的な「ハートビート」カメラ状態メッセージをDMSシステム(700)に伝送できる。アプリケーションサーバー(302a)、(302b)は水平方向に拡張可能に構成できる。ここでは、例えば、サーバー上の負荷が増えるにつれて、もっと多くのサーバーが動的にプロビジョニングされ得;ここで、Amazon Elastic Compute Cloud(EC2)サーバーなどの、様々な拡張可能な「第三者」サーバーの使用が有用であり得る。
同様に、負荷分散サーバー(302a)、(302b)は、Amazon elastic load balancing server(ELB)、および同様のものなどの、第三者負荷分散サーバーであり得る。システムによって生成されたビデオデータは、様々な第三者サーバー(110)にも格納され得、前述したAmazon Simple Storage Service(S3)の使用は、これらの目的のために有用であり得る。同様に、データベースサーバー(702)は、Amazon Elastic Compute Cloud(EC2)サーバーなどの第三者サーバー上でも実装され得、一次データベース(704)などのいくつかのデータベースが、Amazon elastic block store(EBS)および同様のものを使用して実装され得る。DBサーバーバックアップおよびキャッシュ機能が、前述したAmazon Elastic Compute Cloud(EC2)サーバーまたは同等の方法を使用して、様々な第三者サーバー上で実装され得る。
従って、この実施形態では、アプリケーションサーバー(302a)データベース要求(708)は、データベースサーバー(702)によって処理され、他方、キャッシュ要求(710)はデータベースサーバーバックアップおよびキャッシュ(706)によって処理される。
このスキームによれば、クライアントコンピュータ制御装置は、本発明のクライアントベースのソフトウェアをアプリの形式で実行するように構成された、スマートフォンまたはタブレットコンピュータ制御装置であると仮定する。従って、作動中、カメラ(100)は「ハートビート」カメラ状態メッセージをシステムに送信する。ここで、カメラは、カメラ(100)によって監視された実世界環境のライブビューを提供するようにも構成されていると仮定する。システムが事象を検出すると、サーバーはアラートをアプリに送信できる。アプリは次いで、ライブストリーミングビデオ(または記録されたビデオ)または他のデータを要求でき、これらの要求は、2つ以上のアプリサーバー(302a)および(302b)に負荷分散できる。システムを拡大するために、データベース(706)および他のサーバーおよびクラウド構成要素が、必要に応じて、Amazonクラウドサービスにより自動的に非同期的に複製され得る。
図8は、クライアントコンピュータ制御装置(112)に対する1つの考えられるソフトウェア構成のブロック図を示す。ここでは、GUIモジュール制御ディスプレイ(114)、ならびに本システムに従った様々なユーティリティおよびビジネスロジックのみならず、様々なデバイスサービスも同様に、様々なオペレーティングシステムのAPIを介して対応できる。
ここで、クライアントコンピュータ制御装置は、典型的には事象ID(事象識別番号)を含む通知をシステムサーバーから受信する。いくつかの実施形態では、システムは次いで、この事象IDを自動的に使用して、後にこの事象IDに対応するビデオをそこから取得する、合理的に安全なURLを構築できる。
加えて、前述のように、クラウドサーバーは、様々なクラウドサーバー上に格納されたビデオを、多くの場合、提供された検索基準に合致する事象に関するデータ(ビデオなど)に対するURLの形式で、検索および取得することもできる。事象が任意のメタデータを格納できると仮定すると、検索基準も任意であり得る。クライアントコンピュータ制御装置は次いで、ビデオの表示、それらのさらなる格納のための印付け、ビデオの削除などを行うことができる。
システムの他の実施形態は、追加として以下のために構成され得る:
複数のクライアント操作:ここで、システムは、そのシステムを使用および操作するため、ならびにシステムの様々なインターネットサーバーを介してビデオデータを見るために、(典型的には、複数のクライアントコンピュータ制御装置を使用して)複数のクライアントを受け入れてホストするように構成できる。ここで、例えば、ビデオデータは、前述のように、インターネットサーバーに中継され得るか、またはそれを通過し得る。この実施形態は、1つ以上のクライアントが、カメラ状態/条件に関する情報または実世界事象通知を受信することも可能にできる。
代替ビデオ記憶および取得方法ならびにシステム:ビデオ記憶のために使用されるサーバーは、ビデオ取得のために使用されるサーバーと同じである必要はないことに留意されたい。例えば、異なるビデオ取得サーバーが、同じビデオ記憶サーバーを利用し得るか、または逆に、異なるビデオ記憶サーバーが、同じビデオ取得サーバーに入力し得る。2つの機能を分割することは、改善された拡張性およびスループットを可能にする。いくつかの場合には、ビデオ取得サーバーの使用は任意選択でさえあり得ることにも留意されたい。
共有ユーザー:ここで、システムは、リモートユーザークライアントが、カメラ操作、ライブビデオ、またはカメラ通知もしくはカメラ設定を、他のユーザーまたは様々なクライアント指定ソーシャルネットワークのいずれかと共有するのを可能にするように構成され得る。
手動でトリガーされた記録:この実施形態では、システムは、ユーザーが手動で記録を開始するのを可能にするように構成され得、ユーザーはそのビデオをある記録時間および継続期間に対して手動で指定でき、その後自動的に保存されるようにできる。このオプションは「手動記録」または「手動画像捕捉−オンデマンド」と呼ばれる。手動でトリガーされたデータは、次いで、クラウド内またはユーザーのクライアントコンピュータ制御装置上に他のデータのように(前述)保存され得る。
PTZ(パン−チルト−ズーム)カメラオプション:この実施形態では、システムは、ユーザーがカメラを手動で動かして調整して特定の場面/位置に向かせることを可能にするように構成され得る。ここで、システムソフトウェアおよびカメラハードウェア構成は、カメラが、多くの場合、クライアントコンピュータ制御装置から、リモートコマンドで、パン、チルト、ズームするのを可能にするように構成される。いくつかの場合、カメラは、自動的に動いて、自動的に特定の移動物体を追いかける機能と一緒にも構成され得る。
ビデオ帯域幅/ビットレートまたはデータレートを調整する機能:この実施形態では、自動的(例えば、ネットワークまたは関連ハードウェアの機能に応じて)または手動のいずれかで、カメラは、送信すべき伝送ビデオデータのビットレートまたはビデオサイズ/データレートまたは帯域幅を調整するように構成できる。一般に、言うまでもなく、ビットレートが大きければ、ビデオ信号はそれだけ良好であるが、所与のカメラサイトまたはユーザーコンピュータ制御装置が限られた帯域幅しか有していない場合、システムは(必要に応じて手動コマンドを使用して)伝送されるビデオのビットレートまたは帯域幅を調整できる。多くの場合、これは、様々な適応(自動)帯域幅調整スキームを使用して自動的に行われるであろう。
プッシュツートーク機能:いくつかの実施形態では、システムは、マイクロホンとスピーカーの両方を搭載しているカメラと共に動作するように構成され得る。かかるローカルのマイクロとスピーカーが利用可能な場合、システムは、クライアントが、クライアントのクライアントコンピュータ制御装置を使用して、他の実体(人間、動物、音声応答機器)と音声通信するのを可能にするように構成され得る。ここで、例えば、リモートクライアントユーザーは、(カメラの前の人と話すために)自分の携帯電話(タイプのクライアントコンピュータ制御装置)を使用し得る。音声メッセージが、インターネット接続およびインターネットサーバーを経由して送信でき、カメラのスピーカーによって再生できる。従って、機器および構成に応じて、双方向の音声通信、または一方向の音声通信のいずれかが達成され得る。
高度なビデオ分析:前述した様々な自動ビデオ事象検出スキームに加えて、システムは、ローカルのカメラレベル、または代替としてインターネットサーバーレベルのいずれかで、さらに高度なビデオ分析も実行するように構成できる。このさらに高度なビデオ分析は、事象を検出するため、または事象を分析するためのいずれでも使用できる。このさらに高度なビデオ分析は、人間の顔検出または個々の人間の顔の実に認識、車両またはナンバープレート検出および認識、特定の指定領域またはゾーン内での動きまたは位置(誰かがラインもしくは境界を越えたか、または特定のゾーン内で、事前に設定された「過度の期間」うろつくか、待機する場合など、侵入検出のために有用)を含み得る。システムは、物体が、事前に設定された「過度の速度」値を上回る高速で移動しているのが見つかった場合、事象を認識および/または生成するようにも設定できる。
高度な音声分析:前述した様々な自動音声事象検出スキームに加えて、システムは、ローカルのカメラレベル、または代替としてインターネットサーバーレベルのいずれかで、さらに高度な音声分析も実行するように構成できる。このさらに高度な音声分析は、ガラスが割れる音の検出、叫び声や悲鳴の検出、発砲音の検出、犬が吠える声の検出、ドアの開閉音の検出、幼児の泣き声の検出、および同様のものを含み得る。
外部トリガー:いくつかの実施形態では、システムは、外部トリガーに応答するようにも構成され得る。これらの外部トリガーは、多くの場合、カメラそれ自体によっては検出されていない可能性があるが、代わりに、他のセンサーまたは装置によって検出されている可能性がある事象である。ここでは、理想的には、どのカメラがその外部トリガー事象に最も近い可能性があるかをシステムが判断するのを可能にする方法でパッケージ化された、これらの他のセンサーまたは装置からの入力が、システムサーバーに送信されて、クライアントに彼らのクライアントコンピュータ制御装置を介して通知するため、および/またはカメラを起動して、任意のカメラデータをこの外部トリガーのコンテキストで格納するための両方で、使用できる。
事象時に音または音声出力の再生:いくつかの実施形態では、システムは、事象検出時に音または音声クリップを自動的に再生するようにも構成され得る。これらの音または音声クリップは、事象に対してローカルに(例えば、事象を検出して記録しているカメラと関連付けられたスピーカー上で)、または代替として、リモートのクライアントコンピュータ制御装置上など、事象からリモートで、のいずれかで再生され得る。

Claims (22)

  1. 少なくとも1人のクライアントが、複数のプロセッサ制御ビデオカメラを使用して、少なくとも1つの実世界環境をリアルタイムで監視するのを可能にする拡張可能な方法であって、前記プロセッサ制御ビデオカメラの少なくともいくつかが、ネットワーク接続により少なくとも1つのファイアウォールを介して少なくとも1つのリモートインターネットサーバーに接続され、
    前記少なくとも1人のクライアントが、クライアントコンピュータ制御装置を使用して、インターネットおよび前記少なくとも1つのリモートインターネットサーバーに接続されていて、
    前記方法が、
    少なくとも1つの前記プロセッサ制御ビデオカメラを取得することであって、前記プロセッサ制御ビデオカメラが音声−ビデオデータを前記少なくとも1つのリモートインターネットサーバーに伝送するように構成されている、少なくとも1つの前記プロセッサ制御ビデオカメラを取得することと、
    前記少なくとも1つのプロセッサ制御ビデオカメラが、前記少なくとも1つのリモートインターネットサーバーからのコマンドに応答して、カメラ状態メッセージを、前記ネットワーク接続を使用して、前記少なくとも1つのリモートインターネットサーバーに定期的に伝送するようにも構成されていることと、 前記プロセッサ制御ビデオカメラを使用して前記少なくとも1つの実世界環境を監視することと、 前記少なくとも1つのインターネットサーバーを使用して、前記少なくとも1つの実世界環境に関するデータを前記少なくとも1つのコンピュータ制御装置に伝送することと
    を含み、
    前記少なくとも1つのインターネットサーバーが、前記カメラ状態メッセージの不存在、または前記ビデオカメラが異常に動作しているというカメラ状態メッセージのいずれかを検出する場合、前記少なくとも1つのインターネットサーバーを使用して、前記不存在または異常に関するデータを前記少なくとも1つのクライアントコンピュータ制御装置に伝送し、かつ
    前記プロセッサ制御ビデオカメラの少なくともいくつかが、前記クライアントコンピュータ制御装置による要求に応じて直ちに、前記クライアントコンピュータ制御装置に接続してビデオデータを送信するように構成されている、
    拡張可能な方法。
  2. 前記プロセッサ制御ビデオカメラの少なくともいくつかが、ウェブソケット、TURN、STUN、ICEまたは他のファイアウォール通過プロトコルのいずれかを使用して、前記少なくとも1つのファイアウォールを通ってデータを伝送するように構成されている、請求項1に記載の方法。
  3. 前記クライアントコンピュータ制御装置、前記少なくとも1つのリモートインターネットサーバー、および前記プロセッサ制御ビデオカメラが、カメラパン/チルト/ズームコマンド、カメラ解像度変更コマンド、カメラ照明変更コマンド、ビデオストリーミング変更コマンド、ファームウェアアップグレードコマンド、および検出パラメータコマンドのうちの少なくとも1つを受信するように構成されている、請求項1に記載の方法。
  4. 前記少なくとも1つのインターネットサーバーが、段階的な事象駆動アーキテクチャに従い、表現状態転送(REST)アプリケーションプログラミングインタフェース(API)を使用して、前記プロセッサ制御ビデオカメラ、および/または前記クライアントコンピュータ制御装置のいずれかと通信し、それにより、HTTPまたはHTTPSセッションを生成するが、前記HTTPまたはHTTPSセッション内では情報が維持されず、それにより前記方法の拡張性を向上させる、請求項1に記載の方法。
  5. 前記プロセッサ制御ビデオカメラ、前記少なくとも1つのインターネットサーバー、および前記クライアントコンピュータ制御装置の間の通信が、少なくとも1つの期限切れになるトークンおよび少なくとも1つの暗号鍵によって保護される、請求項1に記載の方法。
  6. 前記少なくとも1つのリモートインターネットサーバーからの前記コマンドをさらに使用して、ビデオデータを前記クライアントコンピュータ制御装置に直接ストリームするか、または前記少なくとも1つのリモートインターネットサーバーを経由して、ビデオデータを前記クライアントコンピュータ制御装置にストリームするように、前記ネットワーク接続されたビデオカメラをさらに構成する、請求項1に記載の方法。
  7. 前記少なくとも1つのリモートインターネットサーバーからの前記コマンドをさらに使用して、ビデオデータを少なくとも1つのインターネット接続されたビデオデータ記録装置に直接ストリームし、前記ビデオデータを前記少なくとも1つのインターネット接続されたビデオデータ記憶装置のメモリ内に格納するように、前記プロセッサ制御ビデオカメラをさらに構成し、それによりリモートに格納されたビデオデータを作成し、かつ
    前記少なくとも1つのリモートインターネットサーバーをさらに使用して、前記リモートに格納されたビデオデータに関する情報を前記クライアントコンピュータ制御装置に送信するか、またはそれから受信して、それにより前記クライアントコンピュータ制御装置が後に前記リモートに格納されたビデオデータを取得するのを可能にし、
    前記少なくとも1つのインターネット接続されたビデオ記憶装置が、前記少なくとも1つのリモートインターネットサーバー上に収容されているか、または前記少なくとも1つのインターネット接続されたビデオ記憶装置が前記少なくとも1つのリモートインターネットサーバー上に収容されていない、
    請求項1に記載の方法。
  8. 前記少なくとも1つのインターネット接続されたビデオデータ記憶装置が、自動サービスプロビジョニングおよび仮想マシン移行方法に従って動作する、第三者クラウドファイルホスティングサービスまたは他のクラウドファイルホスティングサービスを含む、請求項7に記載の方法。
  9. 前記プロセッサ制御ビデオカメラが、
    a)WiFi SSD、WiFiパスワード、位置決めコード、顧客ID、およびカメラトークンからなる群から選択された少なくともいくつかの情報を符号化する、バーコードもしくは他のタイプの光学コード、または
    b)一連の可聴音として符号化されたネットワーク通信情報、または
    c)光もしくは赤外線強度もしくはカラーにおける変動、または
    d)Bluetooth(登録商標)もしくはWAPもしくは他の無線ベースのネットワーク転送方法
    のうちの少なくとも1つを使用して、ネットワーク動作のために構成される、請求項1に記載の方法。
  10. 前記少なくとも1つのリモートインターネットサーバーが、少なくとも1つのウェブアプリケーションをホストし、少なくとも前記クライアントコンピュータ制御装置が、前記ウェブアプリケーションを使用して、前記少なくとも1つのリモートインターネットサーバーおよび前記プロセッサ制御ビデオカメラと通信する、請求項1に記載の方法。
  11. 前記プロセッサ制御ビデオカメラが、検出パラメータを使用して、その環境内で事象によって引き起こされた変化を自動的に検出し、前記検出パラメータに従い、前記事象によって引き起こされた変化に関するデータを前記少なくとも1つのリモートインターネットサーバーに伝送するようにさらに構成され、
    前記クライアントコンピュータ制御装置および前記少なくとも1つのリモートインターネットサーバーをさらに使用して前記検出パラメータを構成し、
    前記プロセッサ制御ビデオカメラおよび前記検出パラメータをさらに使用して少なくとも1つの実世界環境位置における前記事象によって引き起こされた変化を監視し、
    前記プロセッサ制御ビデオカメラおよび前記検出パラメータが前記少なくとも1つの実世界環境位置において事象によって引き起こされた変化を検出する場合、前記少なくとも1つのインターネットサーバーを使用して、前記事象によって引き起こされた変化に関するデータを前記少なくとも1つのコンピュータ制御装置に伝送する、
    請求項1に記載の方法。
  12. 少なくとも1人のクライアントが、複数のプロセッサ制御ビデオカメラを使用して、少なくとも1つの実世界環境をリアルタイムで監視するのを可能にする拡張可能な方法であって、前記プロセッサ制御ビデオカメラの少なくともいくつかが、ネットワーク接続により少なくとも1つのファイアウォールを介して少なくとも1つのリモートインターネットサーバーに接続され、
    前記少なくとも1人のクライアントが、クライアントコンピュータ制御装置を使用して、インターネットおよび前記少なくとも1つのリモートインターネットサーバーに接続されていて、
    前記方法が、
    少なくとも1つの前記プロセッサ制御ビデオカメラを取得することであって、前記プロセッサ制御ビデオカメラが音声−ビデオデータを前記少なくとも1つのリモートインターネットサーバーに伝送するように構成されている、少なくとも1つの前記プロセッサ制御ビデオカメラを取得することと、
    前記少なくとも1つのプロセッサ制御ビデオカメラが、前記少なくとも1つのリモートインターネットサーバーからのコマンドに応答して、カメラ状態メッセージを、前記ネットワーク接続を使用して、前記少なくとも1つのリモートインターネットサーバーに定期的に伝送するようにも構成されていることと、
    前記プロセッサ制御ビデオカメラが、検出パラメータを使用して、その環境内で事象によって引き起こされた変化を自動的に検出し、前記検出パラメータに従い、前記事象によって引き起こされた変化に関するデータを前記少なくとも1つのリモートインターネットサーバーに伝送するようにさらに構成されていることと、
    前記クライアントコンピュータ制御装置および前記少なくとも1つのリモートインターネットサーバーをさらに使用して前記検出パラメータを構成することと;
    前記プロセッサ制御ビデオカメラを使用して前記少なくとも1つの実世界環境を監視することと、
    前記少なくとも1つのインターネットサーバーを使用して、前記少なくとも1つの実世界環境に関するデータを前記少なくとも1つのコンピュータ制御装置に伝送することと
    を含み、
    前記少なくとも1つのインターネットサーバーが、前記カメラ状態メッセージの不存在、または前記ビデオカメラが異常に動作しているというカメラ状態メッセージのいずれかを検出する場合、前記少なくとも1つのインターネットサーバーを使用して、前記不存在または異常に関するデータを前記少なくとも1つのクライアントコンピュータ制御装置に伝送し、
    前記プロセッサ制御ビデオカメラおよび前記検出パラメータが前記少なくとも1つの実世界環境位置内で事象によって引き起こされた変化を検出する場合、前記少なくとも1つのインターネットサーバーを使用して、前記事象によって引き起こされた変化に関するデータを前記少なくとも1つのコンピュータ制御装置に伝送し、かつ
    前記プロセッサ制御ビデオカメラの少なくともいくつかが、前記クライアントコンピュータ制御装置による要求に応じて直ちに、前記クライアントコンピュータ制御装置に接続してビデオデータを送信するように構成されている、
    拡張可能な方法。
  13. 前記プロセッサ制御ビデオカメラの少なくともいくつかが、ウェブソケット、TURN、STUN、ICEまたは他のファイアウォール通過プロトコルのいずれかを使用して、前記少なくとも1つのファイアウォールを通ってデータを伝送するように構成されている、請求項12に記載の方法。
  14. 前記クライアントコンピュータ制御装置、前記少なくとも1つのリモートインターネットサーバー、および前記プロセッサ制御ビデオカメラが:カメラパン/チルト/ズームコマンド、カメラ解像度変更コマンド、カメラ照明変更コマンド、ビデオストリーミング変更コマンド、ファームウェアアップグレードコマンド、および検出パラメータコマンドのうちの少なくとも1つを受信するように構成されている、請求項12に記載の方法。
  15. 前記少なくとも1つのインターネットサーバーが、段階的な事象駆動アーキテクチャに従い、表現状態転送(REST)アプリケーションプログラミングインタフェース(API)を使用して、前記プロセッサ制御ビデオカメラ、および/または前記クライアントコンピュータ制御装置のいずれかと通信し、それにより、HTTPまたはHTTPSセッションを生成するが、前記HTTPまたはHTTPSセッション内では情報が維持されず、それにより前記方法の拡張性を向上させる、請求項12に記載の方法。
  16. 前記プロセッサ制御ビデオカメラ、前記少なくとも1つのインターネットサーバー、および前記クライアントコンピュータ制御装置の間の通信が、少なくとも1つの期限切れになるトークンおよび少なくとも1つの暗号鍵によって保護される、請求項12に記載の方法。
  17. 前記少なくとも1つのリモートインターネットサーバーからの前記コマンドをさらに使用して、ビデオデータを前記クライアントコンピュータ制御装置に直接ストリームするか、または前記少なくとも1つのリモートインターネットサーバーを経由して、ビデオデータを前記クライアントコンピュータ制御装置にストリームするように、前記ネットワーク接続されたビデオカメラをさらに構成する、請求項12に記載の方法。
  18. 前記少なくとも1つのリモートインターネットサーバーからの前記コマンドをさらに使用して、ビデオデータを少なくとも1つのインターネット接続されたビデオデータ記録装置に直接ストリームし、前記ビデオデータを前記少なくとも1つのインターネット接続されたビデオデータ記憶装置のメモリ内に格納するように、前記プロセッサ制御ビデオカメラをさらに構成し、それによりリモートに格納されたビデオデータを作成し、かつ
    前記少なくとも1つのリモートインターネットサーバーをさらに使用して、前記リモートに格納されたビデオデータに関する情報を前記クライアントコンピュータ制御装置に送信するか、またはそれから受信して、それにより前記クライアントコンピュータ制御装置が後に前記リモートに格納されたビデオデータを取得するのを可能にし、
    前記少なくとも1つのインターネット接続されたビデオ記憶装置が、前記少なくとも1つのリモートインターネットサーバー上に収容されているか、または前記少なくとも1つのインターネット接続されたビデオ記憶装置が前記少なくとも1つのリモートインターネットサーバー上に収容されていない、
    請求項12に記載の方法。
  19. 前記少なくとも1つのインターネット接続されたビデオデータ記憶装置が、自動サービスプロビジョニングおよび仮想マシン移行方法に従って動作する、第三者クラウドファイルホスティングサービスまたは他のクラウドファイルホスティングサービスを含む、請求項18に記載の方法。
  20. 前記プロセッサ制御ビデオカメラが、
    a)WiFi SSD、WiFiパスワード、位置決めコード、顧客ID、およびカメラトークンからなる群から選択された少なくともいくつかの情報を符号化する、バーコードもしくは他のタイプの光学コード、または
    b)一連の可聴音として符号化されたネットワーク通信情報、または
    c)光もしくは赤外線強度もしくはカラーにおける変動、または
    d)Bluetooth(登録商標)もしくはWAPもしくは他の無線ベースのネットワーク転送方法
    のうちの少なくとも1つを使用して、ネットワーク動作のために構成されている、請求項12に記載の方法。
  21. 前記事象が、侵入事象、指示による動き事象、カメラの不正使用事象、顔検出事象、人物検出または認識事象、行動認識事象、音声アラート事象、カメラオフラインアラート、温度またはホームセンサーアラート事象、他のセンサーによって生成または検出されて前記プロセッサ制御ビデオカメラに伝送された事象、および前記検出パラメータに従い前記プロセッサによって自動的に分析できる音声または視覚信号のいずれかを生成する他の事象からなる群から選択された1つ以上の事象を含む、請求項12に記載の方法。
  22. 前記少なくとも1つのリモートインターネットサーバーが、少なくとも1つのウェブアプリケーションをホストし、少なくとも前記クライアントコンピュータ制御装置が、前記ウェブアプリケーションを使用して、前記少なくとも1つのリモートインターネットサーバーおよび前記プロセッサ制御ビデオカメラと通信する、請求項12に記載の方法。

JP2016529837A 2013-07-22 2014-07-22 拡張可能なビデオクラウドサービスのためのシステムおよび方法 Pending JP2016534607A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361857200P 2013-07-22 2013-07-22
US61/857,200 2013-07-22
PCT/US2014/047672 WO2015013315A1 (en) 2013-07-22 2014-07-22 System and method for scalable video cloud services

Publications (1)

Publication Number Publication Date
JP2016534607A true JP2016534607A (ja) 2016-11-04

Family

ID=52343287

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016529837A Pending JP2016534607A (ja) 2013-07-22 2014-07-22 拡張可能なビデオクラウドサービスのためのシステムおよび方法

Country Status (5)

Country Link
US (1) US20150022666A1 (ja)
EP (1) EP3025317B1 (ja)
JP (1) JP2016534607A (ja)
CN (1) CN105408944A (ja)
WO (1) WO2015013315A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016207083A (ja) * 2015-04-27 2016-12-08 河村電器産業株式会社 ネットワークカメラシステム
JP2018088157A (ja) * 2016-11-29 2018-06-07 マクセル株式会社 検知認識システム
WO2018116934A1 (ja) * 2016-12-22 2018-06-28 日本電信電話株式会社 データ処理システムおよび方法
JP2020092295A (ja) * 2018-12-03 2020-06-11 キヤノン株式会社 撮像装置、システム、撮像装置の制御方法、及び、プログラム
JP2020113970A (ja) * 2018-12-18 2020-07-27 アクシス アーベー ビデオカメラを遠隔制御する方法およびビデオ監視システム
JP7290373B1 (ja) 2022-05-10 2023-06-13 株式会社ピーゼットピー 情報管理システム

Families Citing this family (140)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11489812B2 (en) 2004-03-16 2022-11-01 Icontrol Networks, Inc. Forming a security network including integrated security system components and network devices
US20170118037A1 (en) 2008-08-11 2017-04-27 Icontrol Networks, Inc. Integrated cloud system for premises automation
US11277465B2 (en) 2004-03-16 2022-03-15 Icontrol Networks, Inc. Generating risk profile using data of home monitoring and security system
US9729342B2 (en) 2010-12-20 2017-08-08 Icontrol Networks, Inc. Defining and implementing sensor triggered response rules
US11368429B2 (en) 2004-03-16 2022-06-21 Icontrol Networks, Inc. Premises management configuration and control
US10348575B2 (en) 2013-06-27 2019-07-09 Icontrol Networks, Inc. Control system user interface
GB2428821B (en) 2004-03-16 2008-06-04 Icontrol Networks Inc Premises management system
US11316958B2 (en) 2008-08-11 2022-04-26 Icontrol Networks, Inc. Virtual device systems and methods
US12063220B2 (en) 2004-03-16 2024-08-13 Icontrol Networks, Inc. Communication protocols in integrated systems
US11201755B2 (en) 2004-03-16 2021-12-14 Icontrol Networks, Inc. Premises system management using status signal
US10237237B2 (en) 2007-06-12 2019-03-19 Icontrol Networks, Inc. Communication protocols in integrated systems
US10721087B2 (en) 2005-03-16 2020-07-21 Icontrol Networks, Inc. Method for networked touchscreen with integrated interfaces
US11811845B2 (en) 2004-03-16 2023-11-07 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11677577B2 (en) 2004-03-16 2023-06-13 Icontrol Networks, Inc. Premises system management using status signal
US11916870B2 (en) 2004-03-16 2024-02-27 Icontrol Networks, Inc. Gateway registry methods and systems
US10142392B2 (en) 2007-01-24 2018-11-27 Icontrol Networks, Inc. Methods and systems for improved system performance
US10339791B2 (en) 2007-06-12 2019-07-02 Icontrol Networks, Inc. Security network integrated with premise security system
US11343380B2 (en) 2004-03-16 2022-05-24 Icontrol Networks, Inc. Premises system automation
US10522026B2 (en) 2008-08-11 2019-12-31 Icontrol Networks, Inc. Automation system user interface with three-dimensional display
US11190578B2 (en) 2008-08-11 2021-11-30 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11244545B2 (en) 2004-03-16 2022-02-08 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US20090077623A1 (en) 2005-03-16 2009-03-19 Marc Baum Security Network Integrating Security System and Network Devices
US11582065B2 (en) 2007-06-12 2023-02-14 Icontrol Networks, Inc. Systems and methods for device communication
US20170180198A1 (en) 2008-08-11 2017-06-22 Marc Baum Forming a security network including integrated security system components
US10999254B2 (en) 2005-03-16 2021-05-04 Icontrol Networks, Inc. System for data routing in networks
US11496568B2 (en) 2005-03-16 2022-11-08 Icontrol Networks, Inc. Security system with networked touchscreen
US11700142B2 (en) 2005-03-16 2023-07-11 Icontrol Networks, Inc. Security network integrating security system and network devices
US20120324566A1 (en) 2005-03-16 2012-12-20 Marc Baum Takeover Processes In Security Network Integrated With Premise Security System
US20110128378A1 (en) 2005-03-16 2011-06-02 Reza Raji Modular Electronic Display Platform
US11615697B2 (en) 2005-03-16 2023-03-28 Icontrol Networks, Inc. Premise management systems and methods
US10079839B1 (en) 2007-06-12 2018-09-18 Icontrol Networks, Inc. Activation of gateway device
US12063221B2 (en) 2006-06-12 2024-08-13 Icontrol Networks, Inc. Activation of gateway device
US11706279B2 (en) 2007-01-24 2023-07-18 Icontrol Networks, Inc. Methods and systems for data communication
US7633385B2 (en) 2007-02-28 2009-12-15 Ucontrol, Inc. Method and system for communicating with and controlling an alarm system from a remote server
US8451986B2 (en) 2007-04-23 2013-05-28 Icontrol Networks, Inc. Method and system for automatically providing alternate network access for telecommunications
US11601810B2 (en) 2007-06-12 2023-03-07 Icontrol Networks, Inc. Communication protocols in integrated systems
US11316753B2 (en) 2007-06-12 2022-04-26 Icontrol Networks, Inc. Communication protocols in integrated systems
US11218878B2 (en) 2007-06-12 2022-01-04 Icontrol Networks, Inc. Communication protocols in integrated systems
US11212192B2 (en) 2007-06-12 2021-12-28 Icontrol Networks, Inc. Communication protocols in integrated systems
US12003387B2 (en) 2012-06-27 2024-06-04 Comcast Cable Communications, Llc Control system user interface
US11423756B2 (en) 2007-06-12 2022-08-23 Icontrol Networks, Inc. Communication protocols in integrated systems
US10523689B2 (en) * 2007-06-12 2019-12-31 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US11646907B2 (en) 2007-06-12 2023-05-09 Icontrol Networks, Inc. Communication protocols in integrated systems
US11237714B2 (en) 2007-06-12 2022-02-01 Control Networks, Inc. Control system user interface
US10223903B2 (en) 2010-09-28 2019-03-05 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US11831462B2 (en) 2007-08-24 2023-11-28 Icontrol Networks, Inc. Controlling data routing in premises management systems
US11916928B2 (en) 2008-01-24 2024-02-27 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US20170185278A1 (en) 2008-08-11 2017-06-29 Icontrol Networks, Inc. Automation system user interface
US11792036B2 (en) 2008-08-11 2023-10-17 Icontrol Networks, Inc. Mobile premises automation platform
US11758026B2 (en) 2008-08-11 2023-09-12 Icontrol Networks, Inc. Virtual device systems and methods
US11729255B2 (en) 2008-08-11 2023-08-15 Icontrol Networks, Inc. Integrated cloud system with lightweight gateway for premises automation
US11258625B2 (en) 2008-08-11 2022-02-22 Icontrol Networks, Inc. Mobile premises automation platform
US8638211B2 (en) 2009-04-30 2014-01-28 Icontrol Networks, Inc. Configurable controller and interface for home SMA, phone and multimedia
US20110239114A1 (en) * 2010-03-24 2011-09-29 David Robbins Falkenburg Apparatus and Method for Unified Experience Across Different Devices
US8836467B1 (en) 2010-09-28 2014-09-16 Icontrol Networks, Inc. Method, system and apparatus for automated reporting of account and sensor zone information to a central station
US11750414B2 (en) 2010-12-16 2023-09-05 Icontrol Networks, Inc. Bidirectional security sensor communication for a premises security system
US9147337B2 (en) 2010-12-17 2015-09-29 Icontrol Networks, Inc. Method and system for logging security event data
US10769913B2 (en) * 2011-12-22 2020-09-08 Pelco, Inc. Cloud-based video surveillance management system
US10979674B2 (en) 2013-07-22 2021-04-13 Intellivision Cloud-based segregated video storage and retrieval for improved network scalability and throughput
US11601620B2 (en) 2013-07-22 2023-03-07 Intellivision Technologies Corp. Cloud-based segregated video storage and retrieval for improved network scalability and throughput
TWI504274B (zh) * 2013-11-18 2015-10-11 Delta Electronics Inc 網路影像監控系統及其自動分配方法
EP3073403B1 (en) * 2014-02-06 2019-01-09 Sony Corporation Information processing device, information processing method, program, and server
US9749595B2 (en) * 2014-02-14 2017-08-29 Metalligence Technology Corporation Security system and method thereof
US11405463B2 (en) 2014-03-03 2022-08-02 Icontrol Networks, Inc. Media content management
US10084995B2 (en) * 2014-04-10 2018-09-25 Sensormatic Electronics, LLC Systems and methods for an automated cloud-based video surveillance system
US11120274B2 (en) 2014-04-10 2021-09-14 Sensormatic Electronics, LLC Systems and methods for automated analytics for security surveillance in operation areas
US11093545B2 (en) 2014-04-10 2021-08-17 Sensormatic Electronics, LLC Systems and methods for an automated cloud-based video surveillance system
US10057546B2 (en) 2014-04-10 2018-08-21 Sensormatic Electronics, LLC Systems and methods for automated cloud-based analytics for security and/or surveillance
TWI572208B (zh) * 2014-07-14 2017-02-21 晶睿通訊股份有限公司 應用於遠端連線的驗證方法、驗證系統及其網路攝影機
US9942229B2 (en) * 2014-10-03 2018-04-10 Gopro, Inc. Authenticating a limited input device via an authenticated application
US10050912B2 (en) * 2014-10-27 2018-08-14 At&T Intellectual Property I, L.P. Subscription-based media push service
US9736200B2 (en) * 2014-11-21 2017-08-15 Honeywell International Inc. System and method of video streaming
US10009505B2 (en) * 2015-04-14 2018-06-26 Apple Inc. Asynchronously requesting information from a camera device
CN106162219B (zh) 2015-04-21 2019-08-16 杭州海康威视系统技术有限公司 视频云存储方法及系统
US9769233B2 (en) * 2015-05-29 2017-09-19 Aruba Networks, Inc. Distributed media classification algorithm in a service controller platform for enhanced scalability
US9996377B2 (en) * 2015-06-30 2018-06-12 International Business Machines Corporation Virtual machine migration via a mobile device
US10516869B2 (en) * 2015-07-09 2019-12-24 Doubleme, Inc. Real-time 3D virtual or physical model generating apparatus for HoloPortal and HoloCloud system
CN105141660B (zh) * 2015-07-24 2018-04-24 网宿科技股份有限公司 一种流媒体管理方法及系统
TWI564729B (zh) * 2015-08-07 2017-01-01 廣達電腦股份有限公司 資料分享系統以及其方法
CN105069998A (zh) * 2015-08-14 2015-11-18 江苏轩博电子科技有限公司 实现家庭安防网络报警和视频监控的终端及方法
US10911503B2 (en) * 2015-08-27 2021-02-02 Drop In, Inc. Methods, devices, and systems for live video streaming from a remote location based on a received request utilizing keep alive messages
US20170078351A1 (en) * 2015-09-15 2017-03-16 Lyve Minds, Inc. Capture and sharing of video
CN106548262B (zh) 2015-09-21 2020-11-06 阿里巴巴集团控股有限公司 用于处理任务的资源的调度方法、装置和系统
US10009422B1 (en) * 2015-09-21 2018-06-26 EMC IP Holding Company LLC Backup management based on client device statuses
US10999345B2 (en) * 2015-10-19 2021-05-04 At&T Intellectual Property I, L.P. Real-time video delivery for connected home applications
TWI595765B (zh) * 2015-10-22 2017-08-11 財團法人工業技術研究院 穿透網路位置轉換器之方法及通訊裝置
US10455166B2 (en) * 2015-12-01 2019-10-22 Maarten Van Laere Thermal imaging sensor which connects to base units and makes thermal temperature data available over industrial protocols to monitoring systems
CN105430344A (zh) * 2015-12-02 2016-03-23 深圳楼兰辉煌科技有限公司 一种基于车载移动网络的p2p远程直播方法
CN105530475A (zh) * 2015-12-18 2016-04-27 深圳楼兰辉煌科技有限公司 一种远程视频监控数据传输方法及系统
US11036712B2 (en) * 2016-01-12 2021-06-15 Microsoft Technology Licensing, Llc. Latency-reduced document change discovery
US10572549B2 (en) * 2016-01-27 2020-02-25 Salesforce.Com, Inc. Networked database connectivity
TWI579758B (zh) * 2016-01-29 2017-04-21 物聯智慧科技(深圳)有限公司 使用者電子裝置、使用者介面及電腦程式產品
US10826973B2 (en) * 2016-02-04 2020-11-03 Carrier Corporation Security system including business continuity provider
CN105847243B (zh) 2016-03-18 2021-02-26 北京小米移动软件有限公司 访问智能摄像头的方法及装置
US10778600B2 (en) * 2016-03-30 2020-09-15 Intel Corporation Adaptive workload distribution for network of video processors
DE102016206361A1 (de) * 2016-04-15 2017-10-19 Robert Bosch Gmbh Kameraeinrichtung für den Außenbereich eines Gebäudes
JP6681282B2 (ja) * 2016-06-16 2020-04-15 人吉アサノ電機株式会社 電力デマンド遠隔管理システム、デマンドコントローラ、デマンドコントローラの親機、および電力デマンドの遠隔管理方法
US10154317B2 (en) 2016-07-05 2018-12-11 BoxCast, LLC System, method, and protocol for transmission of video and audio data
DK3482543T3 (da) * 2016-07-05 2022-04-11 Innogy Innovation Gmbh Observationssystem
US10455185B2 (en) 2016-08-10 2019-10-22 International Business Machines Corporation Detecting anomalous events to trigger the uploading of video to a video storage server
US10084868B2 (en) * 2016-09-03 2018-09-25 Microsoft Technology Licensing, Llc IoT gateway for weakly connected settings
CN106407680B (zh) * 2016-09-13 2019-02-19 上海市徐汇区中心医院 一种远程诊疗系统
CN106527977B (zh) * 2016-10-17 2020-01-21 锐捷网络股份有限公司 一种配置参数的方法及存储设备
CN106385568A (zh) * 2016-10-26 2017-02-08 合肥润客软件科技有限公司 一种视频监控系统
US10348784B2 (en) * 2017-02-15 2019-07-09 Microsoft Technology Licensing, Llc Conferencing server directly accessible from public internet
CN108512881A (zh) * 2017-02-28 2018-09-07 中兴通讯股份有限公司 一种智能家居系统
WO2018170684A1 (zh) * 2017-03-20 2018-09-27 华平智慧信息技术(深圳)有限公司 监控云平台的故障定位方法及系统
CN108737769A (zh) * 2017-04-14 2018-11-02 杭州登虹科技有限公司 将直播视频流接入视频监控的方法
CN108984222B (zh) * 2017-06-05 2023-12-22 泸州禾苗通信科技有限公司 一种云台固件升级方法及系统
CN107426828B (zh) * 2017-07-03 2021-01-08 Oppo广东移动通信有限公司 数据传输方法、装置及移动终端
CN108574597B (zh) * 2017-08-01 2019-07-05 视联动力信息技术股份有限公司 一种状态更新的方法、装置以及交互系统
CN107742517A (zh) * 2017-10-10 2018-02-27 广东中星电子有限公司 一种对异常声音的检测方法及装置
US10506202B2 (en) 2017-11-20 2019-12-10 Cisco Technology, Inc. System and method for protecting critical data on camera systems from physical attack
US10812445B2 (en) * 2018-02-13 2020-10-20 Sling Media Pvt Ltd Cloud access to local network addresses
WO2019205124A1 (zh) * 2018-04-28 2019-10-31 深圳市大疆创新科技有限公司 云台的保护方法、云台的保护装置、云台和无人机
US10932130B2 (en) 2018-05-31 2021-02-23 Roku, Inc. System and method for configuring an extender device
US11395371B2 (en) * 2018-05-31 2022-07-19 Roku, Inc. Real-time assessment of multimedia service in a particular environment
CN109104404B (zh) * 2018-06-20 2022-03-29 广州中国科学院软件应用技术研究所 一种动态加密的医疗大数据系统及方法
CN110688132A (zh) 2018-07-05 2020-01-14 阿里巴巴集团控股有限公司 升级加密机、数据导入和请求迁移方法、装置及设备
UA118436C2 (uk) * 2018-07-06 2019-01-10 Денис Ігорович Лиюров Автоматизована система керування даними в інтелектуальному телебаченні
CN110798654B (zh) * 2018-08-01 2021-12-10 华为技术有限公司 软件定义摄像机的方法、系统及摄像机
CN110798367B (zh) * 2018-08-01 2021-09-28 视联动力信息技术股份有限公司 一种视联网视频的断开方法和装置
US20200099961A1 (en) 2018-09-24 2020-03-26 Dice Corporation Networked video management system
US11496472B2 (en) * 2018-11-16 2022-11-08 Mutualink, Inc. System and method for secure access to camera systems
US10970059B2 (en) * 2018-11-30 2021-04-06 Honeywell International Inc. Systems and methods for updating firmware and critical configuration data to scalable distributed systems using a peer to peer protocol
WO2020118450A1 (en) * 2018-12-15 2020-06-18 Genetec Inc. Method and system for enrolling a camera into a video surveillance system
CN110138842B (zh) * 2019-04-23 2020-11-13 武汉理工大学 基于mqtt协议的微波烧结实时远程监控系统
JP2022549671A (ja) * 2019-09-25 2022-11-28 コモンウェルス サイエンティフィック アンド インダストリアル リサーチ オーガナイゼーション ブラウザアプリケーション用の暗号化サービス
US10911747B1 (en) * 2019-12-02 2021-02-02 Verizon Patent And Licensing Inc. Systems and methods for utilizing modeling to automatically determine configuration parameters for cameras
CN111209119A (zh) * 2020-01-21 2020-05-29 成都国翼电子技术有限公司 一种人脸抓拍枪机负载均衡方法
US11190737B2 (en) 2020-04-30 2021-11-30 Genetec Inc. Method and system for identifying a video camera of a video surveillance environment
CN111669716B (zh) * 2020-04-30 2022-04-12 杭州涂鸦信息技术有限公司 一种网络对讲机的通信方法及通信系统
US11201995B1 (en) 2020-07-10 2021-12-14 Disney Enterprises, Inc. System and method to operate a set remotely
US10956244B1 (en) 2020-08-26 2021-03-23 Coupang Corp. Systems and methods for automated application programming interface evaluation and migration
CN112165603B (zh) * 2020-09-01 2023-04-25 北京都是科技有限公司 人工智能管理系统以及人工智能处理设备的管理方法
CN112788367B (zh) * 2020-12-30 2023-03-24 杭州海康威视系统技术有限公司 流媒体调度方法、系统及调度组件
CN112911550B (zh) * 2021-03-15 2022-11-08 东风小康汽车有限公司重庆分公司 车辆数据配置方法和电子设备
CN113766279A (zh) * 2021-08-24 2021-12-07 沈阳风驰软件股份有限公司 信息处理方法和服务器、移动端
US11979616B1 (en) * 2023-01-27 2024-05-07 SimpliSafe, Inc. Managing remote access to image capture devices
CN116886953B (zh) * 2023-09-06 2023-11-24 湖南马栏山视频先进技术研究院有限公司 一种云存储视频数据的保护系统

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002101407A (ja) * 2000-09-20 2002-04-05 Sanyo Electric Co Ltd 画像蓄積サーバおよびその方法、画像蓄積サーバを用いた遠隔監視システム、撮像装置
KR20020079266A (ko) * 2001-04-14 2002-10-19 (주)크립토텔레콤 네트워크 상에서의 영상 모니터링 및 홈 오토메이션 장치및 방법
JP2004126864A (ja) * 2002-10-01 2004-04-22 Matsushita Electric Ind Co Ltd 監視システムと監視情報の中継装置及び中継方法
US20040155963A1 (en) * 2002-10-18 2004-08-12 Sony Corporation Information processing system and method, information processing apparatus, image-capturing device and method, recording medium, and program
JP2006048174A (ja) * 2004-07-30 2006-02-16 A・T・Gジャパン株式会社 ホームセキュリティシステム
JP2008229272A (ja) * 2007-03-23 2008-10-02 Glory Ltd 台間機、設定システム及び設定方法
JP2011034181A (ja) * 2009-07-30 2011-02-17 Newcom Inc 遠隔監視又は遠隔操作のための異種通信サーバーシステム
WO2011121746A1 (ja) * 2010-03-31 2011-10-06 株式会社日立ソリューションズ ファイルサーバ装置、及びストレージシステムの管理方法、並びにプログラム
WO2011155057A1 (ja) * 2010-06-11 2011-12-15 株式会社レインボー・ジャパン デバイス状態情報管理システム及びデバイス状態情報管理方法
WO2012142797A1 (zh) * 2011-04-18 2012-10-26 中兴通讯股份有限公司 一种视频监控系统及方法
JP2012213123A (ja) * 2011-03-31 2012-11-01 Secom Co Ltd 監視装置およびプログラム
WO2013095773A1 (en) * 2011-12-22 2013-06-27 Pelco, Inc. Cloud-based video surveillance management system
WO2013106454A1 (en) * 2012-01-09 2013-07-18 Qualcomm Incorporated Cloud computing controlled gateway for communication networks

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020056043A1 (en) * 1999-01-18 2002-05-09 Sensar, Inc. Method and apparatus for securely transmitting and authenticating biometric data over a network
KR20020079166A (ko) * 2001-04-13 2002-10-19 이용근 차량간 통신 장치
US20080303903A1 (en) * 2003-12-02 2008-12-11 Connexed Technologies Inc. Networked video surveillance system
US7877599B2 (en) * 2004-05-28 2011-01-25 Nokia Inc. System, method and computer program product for updating the states of a firewall
US8724891B2 (en) * 2004-08-31 2014-05-13 Ramot At Tel-Aviv University Ltd. Apparatus and methods for the detection of abnormal motion in a video stream
WO2008064270A2 (en) * 2006-11-20 2008-05-29 Micropower Appliance Wireless network camera systems
TW200824459A (en) * 2006-11-24 2008-06-01 Appro Technology Inc Web sever and method for monitor system
US20090031381A1 (en) * 2007-07-24 2009-01-29 Honeywell International, Inc. Proxy video server for video surveillance
US20120075469A1 (en) * 2007-07-25 2012-03-29 Neo It Solutions Ltd. Internet visual surveillance and management technology for telecommunications, internet, cellular and other communications companies
CN101609588A (zh) * 2008-06-16 2009-12-23 云南正卓信息技术有限公司 全自动无人值守别墅防入侵智能视频监控报警系统
US8587781B2 (en) * 2008-09-15 2013-11-19 J.A. Woollam Co., Inc. View-finder in ellipsometer or the like systems
US8355567B2 (en) * 2008-12-12 2013-01-15 Tektronix, Inc. Method and apparatus for implementing moving image color appearance model for video quality ratings prediction
US9756292B2 (en) * 2010-04-05 2017-09-05 Alcatel Lucent System and method for distributing digital video streams from remote video surveillance cameras to display devices
CN102014122B (zh) * 2010-09-10 2015-04-22 上海复控华龙微系统技术有限公司 基于双向安全认证的点对点协议的IP Camera服务系统
US8773532B2 (en) * 2011-06-13 2014-07-08 Alcatel Lucent Video surveillance system integrating real and logical video streams
CN202095044U (zh) * 2011-08-05 2011-12-28 北京驰程万里宏远科技有限公司 一种智能大厦建筑建设期间安防系统
CN103096121B (zh) * 2011-10-28 2016-03-02 浙江大华技术股份有限公司 一种摄像头移动检测方法及装置
KR101758681B1 (ko) * 2012-03-27 2017-07-14 한화테크윈 주식회사 통신 시스템 및 통신 시스템에서의 데이터 송수신 방법

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002101407A (ja) * 2000-09-20 2002-04-05 Sanyo Electric Co Ltd 画像蓄積サーバおよびその方法、画像蓄積サーバを用いた遠隔監視システム、撮像装置
KR20020079266A (ko) * 2001-04-14 2002-10-19 (주)크립토텔레콤 네트워크 상에서의 영상 모니터링 및 홈 오토메이션 장치및 방법
JP2004126864A (ja) * 2002-10-01 2004-04-22 Matsushita Electric Ind Co Ltd 監視システムと監視情報の中継装置及び中継方法
US20040155963A1 (en) * 2002-10-18 2004-08-12 Sony Corporation Information processing system and method, information processing apparatus, image-capturing device and method, recording medium, and program
JP2006048174A (ja) * 2004-07-30 2006-02-16 A・T・Gジャパン株式会社 ホームセキュリティシステム
JP2008229272A (ja) * 2007-03-23 2008-10-02 Glory Ltd 台間機、設定システム及び設定方法
JP2011034181A (ja) * 2009-07-30 2011-02-17 Newcom Inc 遠隔監視又は遠隔操作のための異種通信サーバーシステム
WO2011121746A1 (ja) * 2010-03-31 2011-10-06 株式会社日立ソリューションズ ファイルサーバ装置、及びストレージシステムの管理方法、並びにプログラム
WO2011155057A1 (ja) * 2010-06-11 2011-12-15 株式会社レインボー・ジャパン デバイス状態情報管理システム及びデバイス状態情報管理方法
JP2012213123A (ja) * 2011-03-31 2012-11-01 Secom Co Ltd 監視装置およびプログラム
WO2012142797A1 (zh) * 2011-04-18 2012-10-26 中兴通讯股份有限公司 一种视频监控系统及方法
WO2013095773A1 (en) * 2011-12-22 2013-06-27 Pelco, Inc. Cloud-based video surveillance management system
WO2013106454A1 (en) * 2012-01-09 2013-07-18 Qualcomm Incorporated Cloud computing controlled gateway for communication networks

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016207083A (ja) * 2015-04-27 2016-12-08 河村電器産業株式会社 ネットワークカメラシステム
JP2018088157A (ja) * 2016-11-29 2018-06-07 マクセル株式会社 検知認識システム
WO2018116934A1 (ja) * 2016-12-22 2018-06-28 日本電信電話株式会社 データ処理システムおよび方法
JPWO2018116934A1 (ja) * 2016-12-22 2019-03-28 日本電信電話株式会社 データ処理システムおよび方法
US11604685B2 (en) 2016-12-22 2023-03-14 Nippon Telegraph And Telephone Corporation Data processing system and method
JP2020092295A (ja) * 2018-12-03 2020-06-11 キヤノン株式会社 撮像装置、システム、撮像装置の制御方法、及び、プログラム
JP2020113970A (ja) * 2018-12-18 2020-07-27 アクシス アーベー ビデオカメラを遠隔制御する方法およびビデオ監視システム
JP7398251B2 (ja) 2018-12-18 2023-12-14 アクシス アーベー ビデオカメラを遠隔制御する方法およびビデオ監視システム
JP7290373B1 (ja) 2022-05-10 2023-06-13 株式会社ピーゼットピー 情報管理システム
JP2023166948A (ja) * 2022-05-10 2023-11-22 株式会社ピーゼットピー 情報管理システム

Also Published As

Publication number Publication date
EP3025317A4 (en) 2017-03-15
EP3025317A1 (en) 2016-06-01
WO2015013315A1 (en) 2015-01-29
US20150022666A1 (en) 2015-01-22
CN105408944A (zh) 2016-03-16
EP3025317B1 (en) 2019-05-22

Similar Documents

Publication Publication Date Title
US10142381B2 (en) System and method for scalable cloud services
EP3025317B1 (en) System and method for scalable video cloud services
US10979674B2 (en) Cloud-based segregated video storage and retrieval for improved network scalability and throughput
US11432055B2 (en) System, method and apparatus for remote monitoring
US11601620B2 (en) Cloud-based segregated video storage and retrieval for improved network scalability and throughput
US11711234B2 (en) Integrated cloud system for premises automation
US11641391B2 (en) Integrated cloud system with lightweight gateway for premises automation
US10412064B2 (en) System and method for implementing secure communications for internet of things (IOT) devices
US20170070563A1 (en) Data model for home automation
US20180198788A1 (en) Security system integrated with social media platform
CA2992429A1 (en) Data model for home automation
US11621986B2 (en) Peer-to-peer media streaming from an edge data storage device to a browser
US11729255B2 (en) Integrated cloud system with lightweight gateway for premises automation
US20220272179A1 (en) Virtual device systems and methods
US20220394046A1 (en) Activation of gateway device
TW200835260A (en) Message service system and controlling method for terminal device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170721

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180529

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180822

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180903

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190416

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190814

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20190814

C11 Written invitation by the commissioner to file amendments

Free format text: JAPANESE INTERMEDIATE CODE: C11

Effective date: 20190827

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20191021

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20191029

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20191129

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20191203

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200204

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200407

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20200507

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200806

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20200924

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20201006

C609 Written withdrawal of request for trial/appeal

Free format text: JAPANESE INTERMEDIATE CODE: C609

Effective date: 20201211