Warning: copy(.htaccess): failed to open stream: Permission denied in /home/jp321/public_html/header.php on line 8
ストリーミング伝送処理方法及びネットワークカメラ - キヤノン株式会社
米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> キヤノン株式会社

発明の名称 ストリーミング伝送処理方法及びネットワークカメラ
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2007−6200(P2007−6200A)
公開日 平成19年1月11日(2007.1.11)
出願番号 特願2005−184792(P2005−184792)
出願日 平成17年6月24日(2005.6.24)
代理人 【識別番号】100090538
【弁理士】
【氏名又は名称】西山 恵三
発明者 今尾 英司
要約 課題
パケットのチェックサム計算を簡略化及び高速化することができるストリーミング伝送処理方法を提供すること。

解決手段
本発明の画像データのストリーミング伝送処理方法は、各々のストリームにおける送信先のアドレスや1パケットで送信する画像データサイズ等の情報を管理する送信先情報管理機能と、送信パケットのヘッダ作成を行うパケットヘッダ作成機能、送信パケットのチェックサムの計算処理を行うチェックサム計算機能と、各々のストリーム毎に送信画像データのチェックサムの累積値を一時記憶するチェックサム累積値メモリを備える。
特許請求の範囲
【請求項1】
ネットワークを通じて複数の受信相手に同じ画像データを配信し、ストリーミングパケットで送信する画像データサイズが受信相手毎に異なっても良いストリーミング伝送において、
パケットで送信する画像データ分のパケットチェックサムの計算処理が複数ストリームで重複することのないように、複数ストリームのパケット作成順番の決定及びチェックサムの計算を行う手段を備え、パケットを作成する際に直前に送信したパケットまでの画像データとの差分部分だけを対象にして計算することによってパケットチェックサム算出を簡略化することを特徴とするストリーミング伝送処理方法。
【請求項2】
各々のストリームにおける送信先のアドレスや1パケットで送信する画像データサイズ等の情報を管理する送信先情報管理機能と、送信パケットのヘッダ作成を行うパケットヘッダ作成機能と、送信パケットのチェックサムの計算処理を行うチェックサム計算機能を備え、各々のストリーム毎に送信画像データのチェックサムの累積値を一時記憶するチェックサム累積値メモリを具備することを特徴とする請求項1記載のストリーミング伝送処理方法。
【請求項3】
作成するパケットの送信画像データのチェックサムは、先ず直前に作成したパケットで送信した画像データとの差分部分だけを対象にしてチェックサムの計算を行い、次に直前に作成したパケットが属するストリームの前記チェックサム累積値メモリの値と合計することで作成中のパケットの送信データまでのチェックサムの累積値を得、更に作成中のパケットが属するストリームにおける前記チェックサム累積値メモリの値と差を求める計算を行うことを特徴とする請求項2記載のストリーミング伝送処理方法。
【請求項4】
前記パケットの送信データまでのチェックサムの累積値を、パケット作成後にそのパケットが属するストリームのチェックサム累積値メモリに格納することを特徴とする請求項3記載のストリーミング伝送処理方法。
【請求項5】
メモリ上に記憶された画像データを複数のストリームで送信するためのパケットの作成は、各々のストリームにおける最初の送信パケットの送信画像データが最も小さいサイズであるストリームの最初のパケットから開始することを特徴とする請求項1記載のストリーミング伝送処理方法。
【請求項6】
メモリ上に記憶された画像データを複数のストリームで送信するためのパケットの作成順番は、各々のストリームにおける次の送信パケットによって送信されるメモリ上の画像データの終端位置となるメモリアドレスが最も小さいストリームの次の送信パケットとなるように決められることを特徴とする請求項1記載のストリーミング伝送処理方法。
【請求項7】
請求項1〜6の何れかに記載のストリーミング伝送処理方法を行い、撮影画像をリアルタイムに複数の受信相手に送信することを特徴とするネットワークカメラ。
発明の詳細な説明
【技術分野】
【0001】
本発明は、ネットワークを通じて複数の受信相手に画像データをリアルタイムに伝送するストリーミング伝送処理方法及び撮影中の映像を配信するネットワークカメラに関するものである。
【背景技術】
【0002】
現在、ネットワークを通じた動画や音声のストリーミング再生は広く普及している。近年、デジタル画像データを作成する撮像機能と、画像データの圧縮符号化機能と、ネットワーク通信機能を備えるネットワークカメラがあり、構内ネットワークやインターネットを介して、撮影動画をリアルタイムに複数の受信相手にストリーミング配信することができる。受信側の装置では、画像や音声データを受信しながら順次再生することができる。撮影画像のリアルタイムの送信処理では、画像データのパケタイズにおけるチェックサムの計算量が大きい。
【0003】
一方、撮影画像の高解像度化や色信号の多ビット化が進んでおり、ネットワークカメラにおいても画像データ容量が増加している。画像データが大きくなると送信パケット数も増大することから、パケットのチェックサムの総計算量も大きくなり、画像データ送信の遅延が大きくなる問題がある。
【0004】
従来、パケットのチェックサム付加処理を高速に行うために、送出するネットワークに合うように複数のセグメントサイズで送信データを分割したチェックサムを予め計算して記憶しておき、パケット送信時に、送信データサイズが予めチェックサムを計算しておくセグメントサイズに一致し、
且つ、既に計算済みのチェックサムが記憶されている場合に、そのチェックサムを利用してパケットに付加することでチェックサムの計算を高速化する方法がある(例えば、特許文献1参照)。
【0005】
上記方法は、送信パケット作成時のチェックサムの付加を高速化する方法と言えるが、チェックサムそのものの計算を高速化する手段ではない。更に、同じデータを複数の受信相手に送信する場合には、送出するネットワークのセグメントサイズに依らず受信相手によってパケットサイズが異なることがあるので不適当である。
【0006】
他の方法では、特に同じパケットを複製して複数の受信クライアントに転送するような場合にチェックサム計算処理を高速化するために、転送するパケットのヘッダ部のチェックサム差分を転送先毎に計算して検索テーブルに登録しておき、パケットの転送時に、送信元と宛先のIPアドレスやポート番号から検索し、ヘッダ部のチェックサム差分を取り出して利用することで、パケットヘッダ書き換えに伴うチェックサムの再計算を簡略化する方法がある(例えば、特許文献2参照)。
【0007】
上記方法は、転送パケットのペイロード部が受信クライアントで共通データであり、パケットヘッダ部のチェックサム差分が固定値になり得ることを利用して、チェックサムの再計算を高速化している。しかし、複数の受信相手それぞれに対して、送信データサイズが異なるパケットで送信する場合には実現が困難である。
【0008】
更に、送信データのチェックサム算出に要する時間を短縮する方法として、送信パケットのデータ長が確定するタイミングに先立って予め規定サイズ単位毎に送信データのチェックサムの累積値を計算しておき、送信パケットの送信データサイズを規定サイズの整数倍とすることで、送信データの直前の規定サイズ単位データまでのチェックサム累積値と、送信データの最後の規定サイズ単位データまでのチェックサム累積値の差を計算するだけで簡単に送信データのチェックサムを確定する方法がある(例えば、特許文献3参照)。しかしながら、この方法は、送信データサイズが規定サイズの整数倍に決められており、複数の受信相手に応じて送信データサイズを柔軟に対応させるような場合において実現が難しい。
【特許文献1】特開2000−253034号公報
【特許文献2】特開2002−064487号公報
【特許文献3】特開2004−153471号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
画像データのリアルタイム送信処理では、パケタイズにおけるチェックサムの計算量が大きく、複数の受信相手に画像データを伝送する上では、送信パケットのチェックサム計算を高速化することが望ましい。
【0010】
本発明は上記事情に鑑みてなされたもので、その目的とする処は、パケットのチェックサム計算を簡略化及び高速化することができるストリーミング伝送処理方法及びネットワークカメラを提供することにある。
【課題を解決するための手段】
【0011】
本発明の画像データのストリーミング伝送処理方法は、各々のストリームにおける送信先のアドレスや1パケットで送信する画像データサイズ等の情報を管理する送信先情報管理機能と、送信パケットのヘッダ作成を行うパケットヘッダ作成機能、送信パケットのチェックサムの計算処理を行うチェックサム計算機能と、各々のストリーム毎に送信画像データのチェックサムの累積値を一時記憶するチェックサム累積値メモリを備える。
【0012】
メモリ上に記憶された画像データのストリーミング配信は、送信パケットの送信データが最も小さいストリームの最初のパケットから開始する。作成するパケットの順番は、各々のストリームにおける次の送信パケットによって送信されるメモリ上の画像データの終端位置となるメモリアドレスを比較し、メモリアドレスが最も小さいストリームの次の送信パケットとなるように決められる。画像のストリーミング伝送処理は、このような送信パケット順の決定ルールに従って複数ストリームのパケットを作成、送信を行う。
【0013】
又、パケットの送信画像データのチェックサム(a)の算出は、先ず、直前に作成したパケットで送信した画像データとの差分部分だけを対象にしてチェックサムの計算を行う。差分データのチェックサムを計算後、直前に作成したパケットが属するストリームの前記チェックサム累積値メモリの値と合計することで、作成中のパケットの送信データまでのチェックサムの累積値(b)を得る。
【0014】
次に、作成中のパケットの属するストリームの前記チェックサム累積値メモリの値(c)を読み取り、(b)と(c)の差を求めることで送信画像データのチェックサム(a)を得ることができる。その後、作成しているパケットの属するストリームの前記チェックサム累積値メモリに(b)の値を格納しておく。
【0015】
送信パケットに付与するチェックサムの算出は、前記送信先情報管理部と前記パケットヘッダ作成機能によって、送信するストリーミングプロトコルのパケットヘッダを作成し、パケットのペイロード部では、前記送信画像データのチェックサム(a)の値を利用することで、計算を簡略化して行う。
【発明の効果】
【0016】
本発明によれば、複数ストリームのストリーミング伝送処理により、送信パケットの画像データのチェックサム算出において、作成済みのパケットまでの画像データとの差分データ分だけを対象にして計算するだけで良いためにチェックサム計算量が削減される。そのため、パケットのチェックサム計算を簡略化及び高速化することができる。
【発明を実施するための最良の形態】
【0017】
以下に本発明の実施の形態を添付図面に基づいて説明する。
【0018】
<実施の形態1>
図1は本発明のストリーミング伝送処理を行うストリーム伝送処理部を含む実施構成の一例を表すブロック図である。
【0019】
図1においてて、101はストリーミング伝送処理部であり、複数の送信先に画像データをストリーミング配信するための送信制御処理を行う。ストリーミング伝送処理部101には、制御プロセッサ102があり、ストリーミングパケットの作成処理における内部制御を行う。
【0020】
ストリーミング伝送処理部101は、各々のストリームについて送信先のIPアドレスやポート番号、或はストリーミングプロトコルの識別情報等を管理する送信先情報管理部103を含む。103は各々のストリームが1パケットで送信する画像データサイズも管理している。
【0021】
又、ストリーミングプロトコルの送信パケットヘッダを作成するパケットヘッダ作成部104と、パケットのチェックサムの計算処理を行うチェックサム計算部105を含む。更に、各々のストリーム毎に送信画像データのチェックサムの累積値を一時記憶するチェックサム累積値メモリ106を有している。制御プロセッサ102は、これらの送信先情報管理部103、パケットヘッダ作成部104、チェックサム計算部105の設定や制御を行うことができる。
【0022】
図1の107は画像データの作成処理を表し、例えば、ネットワークカメラにおいては、撮像処理、圧縮符号化等による画像データ作成を行うことを示す。107で作成した画像データ109は、システムのメモリ装置108上に置かれる。画像データ109が作成されると、ストリーミング伝送処理部101は、メモリ108上に送信パケットヘッダ110を書き込み、画像データ109からパケット送信するデータをパケットペイロード110に転送してパケットを形成し、112のネットワークインタフェースコントローラに渡して送信する。
【0023】
ストリーミング伝送処理部101におけるストリーミングパケット作成処理は、内部の102の制御プロセッサで実行される制御プログラムによって実現される。この制御プログラムは、送信先情報管理部103から複数ストリーム送信に必要な情報を読み出し、パケットの作成順番を決定することができる。
【0024】
1つのパケットの作成では、先ず、チェックサム計算部105に対して、画像データ109から送信画像データのチェックサム計算に必要なデータ部分を対象として計算させる制御を行う。具体的には、作成するパケットの送信画像データと、直前に作成したパケットで送信した画像データとの差分となる画像データを対象としてチェックサムを求める。作成するパケットの送信画像データのチェックサムは、ストリーム別チェックサム累積値メモリ106から、直前に送信したパケットが属するストリームのチェックサム累積値と、作成するパケットが属するストリームのチェックサム累積値を読み出し、チェックサム計算部105で計算した結果を利用して算出する。
【0025】
送信画像データのチェックサムを計算後、制御プロセッサ102は、パケットヘッダ作成部104に対して送信アドレス、伝送プロトコル等のパケットヘッダ情報の設定とヘッダ作成の制御を行い、パケットヘッダ110の作成を行う。又、作成するパケットの送信画像データを、画像データ109からパケットペイロード111へと転送する。作成するパケットに付与するチェックサムは、先に求めた送信画像データのチェックサムと、パケットヘッダ作成部104が作成したヘッダ情報を利用して算出する。
【0026】
こうして1つのパケットが作成されると、112のネットワークインターフェースコントローラによってネットワーク上へ送出される。
【0027】
図2は本発明における複数のストリームのストリーミング伝送処理では、送信元画像データを分割して1パケットで運ぶデータサイズが、それぞれのストリームで異なることを模式的に示している。
【0028】
図2はストリームA、B、Cの3つのストリームが示されており、201は送信元画像データ、202はストリームA、202はストリームB、203はストリームCを表している。本発明のストリーミング伝送処理では、受信相手とのストリーミングプロトコルの違いや、ネットワークの状態によるストリーミング伝送の送信状況によって、1パケットで送信する画像データサイズが異なっても良い。図2に示す例では、201のストリームAは、1パケットで運ぶ画像データが最も小さく、203のストリームCは最も大きい。前述した通り、それぞれのストリームで送信する画像データサイズは、103の送信先情報管理部で保持している。
【0029】
次に、図3を用いてストリーミング伝送処理部101で、複数のストリームを送信する場合のパケット生成順の一例を説明する。
【0030】
図3の例では、301がメモリ上の送信する画像データを表す。ストリームA、ストリームB、ストリームCの3つのストリームで、301の画像データを送信する。1パケットで送信する画像データは、ストリームAが最も小さく、ストリームCが最も大きい。ストリームAでは、送信する画像データが309,311,314,315,318のように分割されてパケット化される。ストリームBでは、送信する画像データが310,313,316に分割される。同様にストリームCでは、312,317に分割される。図3中の数字1〜10は、パケットを生成する順番を表す。即ち、3つのストリームは、309から318の順番で画像データを送信することになる。
【0031】
それぞれのパケットで送信する画像データのチェックサムの計算は、次のような手順で行う。
【0032】
先ず、送信画像データ301がメモリ上に用意されると、図1の106のストリーム別チェックサム累積値メモリにおいて、各ストリームの画像データチェックサムの累積値がクリアされる。初めに、画像ストリームAの309の画像データからパケットを作成する。309の画像データのチェックサムは、送信元画像データの302で表される部分領域を計算して算出する。計算した結果は、前記ストリーム別チェックサム累積値メモリにあるストリームAのチェックサム累積値メモリに格納する。その後、画像データ309のパケットヘッダ作成等、パケット作成処理を行う。その際にパケットヘッダのチェックサムは、算出した309の画像データのチェックサムを利用して計算し、設定する。
【0033】
次に、ストリームBの画像データ310のパケットを作成する。画像データ310のチェックサム計算では、既に直前の309のパケット作成において、画像データの部分領域302までのチェックサムが計算されているので、303の部分領域だけを計算すれば良い。303のチェックサムを算出すると、直前に作成したパケットが属するストリームAのチェックサム累積値メモリの値を読み取り、合計することで、302〜303まで部分の画像データのチェックサムが得られる。
【0034】
更に、作成中の310のパケットが属するストリームBのチェックサム累積値メモリを読み取り(この場合は、310はストリームBでは最初のパケットになるので、値0が読み取れる)、前記302〜303までのチェックサムとの差を計算することで、310の画像データのチェックサムを得ることができる。前記302〜303までのチェックサムは、ストリームBのチェックサム累積値メモリに格納しておく。その後、310のパケットヘッダ作成等、パケット作成と送信処理を行う。
【0035】
続いて作成するパケットは画像データ311である。画像データ311のチェックサム計算では、既に直前の310のパケット作成において、画像データの部分領域303までのチェックサムが計算されているので、304の部分領域だけを計算すれば良い。304のチェックサムを算出すると、直前に作成したパケットが属するストリームBのチェックサム累積値メモリの値を読み取り、合計することで、302〜304までの部分の画像データのチェックサムが得られる。
【0036】
更に、作成中の311のパケットが属するストリームAのチェックサム累積値メモリの値を読み取り、合計することで、302〜304までの部分の画像データのチェックサムが得られる。又、作成中の311のパケットが属するストリームAのチェックサム累積値メモリを読み取り、前記302〜304までのチェックサムとの差を計算することで、311の画像データのチェックサムを得ることができる。前記302〜304までのチェックサムは、ストリームAのチェックサム累積値メモリに格納しておく。その後、311のパケットヘッダ作成等、パケット作成と送信処理を行う。
【0037】
以降、図3の312から318までの画像データについても、上記同様に画像データのチェックサム計算を行うことができる。
【0038】
このようなパケットの作成順及び画像データのチェックサム計算手順について、図4及び図5を参照して送信パケット作成の処理フローを説明する。送信パケット作成の処理フローは、前記制御プロセッサ102で実行される制御プログラムに含まれる。
【0039】
図4は本発明において複数ストリームの画像データパケットの作成順を決めるために、次に作成すべきパケットの決定方法を示すフローチャートである。
【0040】
S401から始まり、先ずS402において各ストリームの次パケットで送信する画像データの終端位置のアドレスが最も小さくなるストリームを選び出す。次に、S403において、S402で選んだストリームが1つに絞られているかを調べ、1つだけが選ばれていた場合は、そのストリームの次パケットに決定し、S407に進んで終了する。S403で複数のストリームが選ばれていた場合は、S404に進み、候補となるストリームの中から次パケットで送信する画像データの開始位置のアドレスが最も小さくなるストリームを選ぶ。
【0041】
次に、S405にてS404で選んだストリームが1つに絞られているかを調べ、1つだけが選ばれていた場合は、そのストリームの次パケットに決定し、S407に進んで終了する。S405で複数のストリームが選ばれていた場合は、S406に進む。S406では候補のストリームの中から任意の1つのストリームを選び出し、そのパケットに決定して、S407で終了する。このようにして作成するパケットを決定していくことになる。
【0042】
図5は作成するパケットで送信する画像データのチェックサムの計算手順を表すフローチャートである。
【0043】
画像データのチェックサムの計算は、S501から始まり、先ずS502において、直前に作成したパケットの画像データの終端位置から、作成するパケットで送信する画像データの終端位置までのチェックサムを計算する。
【0044】
次に、S503で、直前に作成したパケットが属するストリームの前記チェックサム累積値メモリの値を読み取り、S502で求めたチェックサムと合計することで、画像データの先頭から作成中のパケットで送信する画像データまでのチェックサム累積値を求める。続いてS504に進み、作成中のパケットの属するストリームのチェックサム累積値メモリを読み、S503で求めたチェックサムの累積値との差を計算する。この差値が作成中のパケットで送信する画像データのチェックサムとなる。
【0045】
更に、S505において、次のパケット作成のために、S503で求めたチェックサムの累積値を、作成中のパケットの属するストリームの累積値メモリに格納しておき、S506で終了する。このような手順で作成中のパケットで送信する画像データのチェックサムを計算する。
【0046】
S502では直前のパケットまでで既にチェックサムを計算した部分の画像データのチェックサム計算は省いており、直前パケットで送信した画像データと、作成中のパケットで送信する画像データとの差分データのみを対象にチェックサムを計算している。そのため、複数のストリームの画像データ送信において、画像データのチェックサムの計算を重複することなく効率的に行うことが可能となる。
【0047】
以上、図4及び図5を参照して、画像データを複数ストリームで送信する場合でのパケットの作成順の決定方法及び各パケットで送信する画像データのチェックサムの計算手順について述べた。この処理フローを含めたストリーミングパケットの作成処理は、図1の101のストリーミング伝送処理部によって実施される。
【0048】
本発明によれば、画像データを複数のストリームで送信する場合において、画像データのチェックサムの計算が、既に計算済みの同じ部分を重複して計算することがなくなり、チェックサムの計算を高速化することができる。
【0049】
<実施の形態2>
本発明を使用したネットワークカメラの構成について実施形態の一例を、図6を参照して述べる。図6は本発明を構成するネットワークカメラの実施形態の概略構成を表すブロック図である。
【0050】
システムバス601には、CPU602、システムプログラムが格納されているROM603、システムプログラム実行時に使用される一時記憶領域であるRAM604が接続されており、ROM603からRAM604にシステムプログラムが読み込まれ、CPU602によって実行される。
【0051】
605はカメラ部を示しており、システムバス101に接続されている。このカメラ部にはレンズ群(606)、CCD(607)、CCD制御部(608)、画像処理部(609)が含まれている。606のレンズ群は被写体像を光学的にCCD607へ投影するために複数枚のレンズで構成されている。
【0052】
CCD(光電変換素子)607は、レンズ群606によって投影された撮影画像をアナログ電気信号に変換するための素子である。CCD制御部608は、CCD607に転送クロック信号やシャッター信号を供給するためのタイミングジェネレータ、CCD出力信号のノイズ除去、ゲイン処理を行うための回路、更に、アナログ信号をデジタル信号に変換するためのA/D変換回路等を含んでいる。
【0053】
又、画像処理部609は、CCD制御部608より出力されたデジタル信号をガンマ変換、色空間変換、又、ホワイトバランス、露出補正等の画像処理を行い、画像符号化処理部610で符号化利用可能なデジタル信号出力を行うものである。610は画像符号化処理部であり、カメラ部605によって撮影されたデジタル画像を、MotionJPEGやMPEG4等の動画フォーマットに符号化する。
【0054】
611は通信インタフェース/通信制御部であり、外部ネットワークに接続するためのインタフェースを有する。本ネットワークカメラは、本ネットワークカメラを遠隔操作する表示装置、或は外部のネットワーク機器と通信可能であり、撮影した動画像データを外部に送信することが可能である。
【0055】
本ネットワークカメラでは、ストリーミング通信制御や、本発明のストリーミングパケット作成処理を、CPU602で実行されるシステムプログラムで実現している。又、RAM604の一部領域を、ストリーム配信先の送信先情報612や、ストリーム別チェックサム累積値613の記憶領域として確保している。
【0056】
カメラ部605で撮影された撮像画像データは、RAM604に転送される。そして、画像符号化処理部610によって動画像フォーマットに符号化され、RAM604に画像データが書き込まれる。この画像データは、CPU602で実行するシステムプログラムによってストリーミング伝送される。ストリーミング伝送処理は、複数の送信先に画像データを伝送することができる。
【0057】
各送信先のIPアドレスやポート番号、伝送に使用するストリーミングプロトコル、1パケットで伝送する画像データサイズ等の情報を、送信先情報612に記憶しており、この情報を利用して画像伝送プロトコルのパケットを作成する。画像データの伝送プロトコルには、例えばHTTPやRTP等のインターネットで標準的に利用されるプロトコルを扱うことができる。更に、システムプログラムは画像データの伝送パケットを作成後、通信インタフェース/通信制御部611を通じてネットワークに送出する処理を行う。
【0058】
本ネットワークカメラにおける画像データのストリーミング伝送処理について、図7を参照して処理手順を説明する。尚、図7は本構成におけるストリーミング伝送処理を表すフローチャートである。
【0059】
RAM604上に配信する送信元画像データが用意されると、S701から開始し、先ず、S702で、613のストリーム別チェックサム累積値を全てのストリームにおいてクリアする。次に、S703において612の送信先情報から、各ストリームが1パケットで送信する画像データのサイズを取得する。以降の処理は、全てのストリームで送信元画像データを最後まで送信し終えるまで繰り返される。
【0060】
S704では、全ストリームが画像データを最後まで送信しているかを判断し、送信し終えているならば、S718に進み、当該画像データのストリーミング伝送処理が終了する。そうでないならば、S705に進み、画像データの送信が最後まで完了していないストリームの中で、次パケットで送信する画像データの終端位置が最も小さいストリームを選び出す。そして、S706で、S705で選んだストリームが1つに絞られているかを調べ、1つだけならばそのストリームにおける次に送信するパケットを作成することになり、S710に進む。
【0061】
S705で選び出したストリームが複数あるときは、S707に進む。S707では、S705で選んだ候補のストリームの中から、次パケットで送信する画像データの開始位置のアドレスが最も小さいストリームを選ぶ。そして、S708においてS707で選んだ候補となるストリームがただ1つであるかを調べ、1つならばそのストリームにおける次の送信パケットを作成することになり、S710に進む。
【0062】
S708において、S707で選んだ候補のストリームが複数あるときは、S709に進み、その候補の中から任意の1つのストリームを選択し、次パケットを作成する。続くS710からは、次パケットの作成処理である。S710において、直前に作成したパケットの画像データの終端位置から、作成するパケットで送信する画像データの終端位置までのチェックサムを計算する。
【0063】
次に、S711で、直前に作成したパケットが属するストリームについて、613のチェックサム累積値を読み取り、S710で求めたチェックサムと合計することで、画像データの先頭から作成中のパケットの送信画像データまでのチェックサム累積値を求める。続いてS712に進み、作成中のパケットの属するストリームの613のチェックサム累積値を読み、S711で求めたチェックサムの累積値との差を計算する。この差値が作成中のパケットで送信する画像データのチェックサムとなる。
【0064】
更に、S713において、次回のパケット作成のために、S711で求めたチェックサムの累積値を、作成中のパケットの属するストリームのチェックサム累積値613に格納しておく。続いてS714からは送信パケットの作成である。S714ではRAM上にパケットヘッダを作成する。この際、612の送信先情報から送信先のIPアドレスや、送信先ポート番号、伝送プロトコル等の情報を取得して利用する。そして、S715では、送信する部分画像データを作成中のパケットのペイロード部にコピーする。
【0065】
次に、S716において、S712で求めた送信画像データのチェックサムを利用し、パケットヘッダ部も含んだパケット全体のチェックサムを算出し、パケットヘッダのチェックサムフィールドに書き込み、送信パケットを完成させる。最後にS717において、通信インタフェース/通信制御部611を制御してネットワークへパケットを送出する。ここまでの処理によって、1つのパケットの作成と送信を行うと、S704に戻る。
【0066】
本実施の形態では、カメラ部605及び画像符号化処理部610でリアルタイムに作成される画像データを、複数の受信相手にストリーミング伝送する処理において、以上の手順のような複数ストリームの送信パケットの作成と送信を行う。或るパケットで送信する画像データのチェックサム計算は、S710において、直前のパケットまでで計算した画像データとの差分データを対象として行われるため、重複なく効率的に計算することができ、高速化することが可能となる。
【図面の簡単な説明】
【0067】
【図1】本発明のストリーミング伝送処理を行うストリーム伝送処理部を含む実施構成の一例を表すブロック図である。
【図2】複数のストリームが1パケットで送信する画像データサイズが異なることを示す模式図である。
【図3】複数のストリームを送信する場合のパケット生成順の一例を表す図である。
【図4】次に作成すべきパケットの決定方法を示すフローチャートである。
【図5】作成するパケットで送信する画像データのチェックサムの計算手順を表すフローチャートである。
【図6】本発明を構成するネットワークカメラの実施形態の概略構成を表すブロック図である。
【図7】本発明の実施の形態2におけるストリーミング伝送処理手順を表すフローチャートである。
【符号の説明】
【0068】
101 ストリーミング伝送処理部
102 制御プロセッサ
103 送信先情報管理部
104 パケットヘッダ生成部
105 チェックサム計算部
106 ストリーム別チェックサム累積値メモリ
107 画像データの作成処理
108 メモリ
109 画像データ
110 送信パケットヘッダ
111 送信パケットペイロード
112 ネットワークインタフェースコントローラ
601 システムバス
602 CPU
603 ROM
604 RAM
605 カメラ部
606 レンズ群
607 CCD
608 CCD制御部
609 画像符号化処理部
611 通信インタフェース/通信制御部
612 送信先情報
613 ストリーム別チェックサム累積値




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013