(57)【要約】      （修正有）【課題】複数の配信用セッションに対するストリーミング配信を可能とし、配信中に新たなセッションが増設された場合でもVBVモデルを破綻させない。【解決手段】復号機の入力バッファの使用量を仮想的に算出し、使用量に基づき割り当て可能な符号量を算出し、最大割り当て符号量に基づきピクチャに対する割り当て符号量を定める符号量制御部１０９と、符号量制御部が定める割り当て符号量を、nフレーム以内に少なくとも１枚以上の画面内符号化映像が生成可能になるよう補正する、符号量補正部１１０とを含み、補正された符号量に基づきピクチャ毎に、画面内符号化映像または画面間予測符号化映像のいずれかを選んで符号化を行い、動画像データストリームを生成する符号化部１００と、生成した動画像データストリームを配信する配信セッション数を検知し、検知したセッションに対して動画像データストリームを配信する配信手段２００とを有する。【選択図】図１
2015130600.tif 000002
【特許請求の範囲】
【請求項１】
映像信号を符号化して、動画像データストリームを生成し、これを複数の配信用セッションを介してストリーミング配信する画像処理装置であって、
動画像データストリームの符号量に基づき復号機の入力バッファの使用量を仮想的に算出し、前記バッファ使用量に基づき割り当て可能な符号量をピクチャ毎に算出し、当該最大の割り当て符号量に基づきピクチャに対する割り当て符号量を定める符号量制御手段と、
前記符号量制御手段が定める割り当て符号量を、nフレーム以内に少なくとも１枚以上の画面内符号化映像が生成可能になるよう補正する、符号量補正手段と、
前記補正された符号量に基づきピクチャ毎に、画面内符号化映像または画面間予測符号化映像のいずれか一方を選んで符号化を行い、動画像データストリームを生成する符号化手段と、
前記符号化手段が生成した動画像データストリームを配信する配信セッション数を検知するとともに、検知したセッションに対して前記動画像データストリームを配信する配信手段とを有し、
前記配信手段による配信セッション数の変化に伴い、前記符号量補正手段の補正の量を変更するとともに、セッション数が増加する場合、前記符号化手段は前記セッション数の増加のタイミングから、nフレーム以内に少なくとも１枚以上の画面内符号化映像を生成することを特徴とする画像処理装置。
【請求項２】
配信セッション数が０から１へ変化した後、前記バッファ使用量が所定の量を上まわることを条件に前記符号量補正手段は符号量の制御を開始することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
映像信号を符号化して１つの動画像データストリームを生成し、これを複数の配信用セッションを介してストリーミング配信する画像処理装置であって、
動画像データストリームの符号量に基づき復号機の入力バッファの使用量を仮想的に算出し、前記使用量に基づき割り当て可能な最大の符号量をピクチャ毎に算出し、当該最大の割り当て符号量に基づきピクチャに対する割り当て符号量を定める符号量制御手段と、
前記符号量制御手段が定める割り当て符号量を補正する、符号量補正手段と、
前記補正された符号量に基づきピクチャ毎に、画面内符号化映像または画面間予測符号化映像のいずれか一方を選んで符号化を行い、動画像データストリームを生成する符号化手段と、
前記符号化手段が生成した動画像データストリームを配信する配信セッション数を検知するとともに、検知したセッションに対して前記動画像データストリームを配信する配信手段とを有し、
前記配信手段による配信セッション数の増加を検知した後、mフレーム分の符号化には、前記符号量補正手段による符号量の補正を行い、前記mフレーム符号化した後、画面内符号化で符号化映像を生成すると共に、前記符号量補正手段による補正を解除することを特徴とする画像処理装置。
【請求項４】
前記符号化手段は、前記mフレーム以内に、前記バッファ使用量が所定値を上回った場合に、画面内符号化で符号化映像を生成すると共に、前記符号量補正手段にとる補正を解除することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
映像信号を符号化して、動画像データストリームを生成し、これを複数の配信用セッションを介してストリーミング配信する画像処理装置の制御方法であって、
動画像データストリームの符号量に基づき復号機の入力バッファの使用量を仮想的に算出し、前記バッファ使用量に基づき割り当て可能な符号量をピクチャ毎に算出し、当該最大の割り当て符号量に基づきピクチャに対する割り当て符号量を定める符号量制御工程と、
前記符号量制御工程が定める割り当て符号量を、nフレーム以内に少なくとも１枚以上の画面内符号化映像が生成可能になるよう補正する、符号量補正工程と、
前記補正された符号量に基づきピクチャ毎に、画面内符号化映像または画面間予測符号化映像のいずれか一方を選んで符号化を行い、動画像データストリームを生成する符号化工程と、
前記符号化工程が生成した動画像データストリームを配信する配信セッション数を検知するとともに、検知したセッションに対して前記動画像データストリームを配信する配信工程とを有し、
前記配信工程による配信セッション数の変化に伴い、前記符号量補正工程の補正の量を変更するとともに、セッション数が増加する場合、前記符号化工程は前記セッション数の増加のタイミングから、nフレーム以内に少なくとも１枚以上の画面内符号化映像を生成することを特徴とする画像処理装置の制御方法。
【請求項６】
配信セッション数が０から１へ変化した後、前記バッファ使用量が所定の量を上まわることを条件に前記符号量補正工程は符号量の制御を開始することを特徴とする請求項５に記載の画像処理装置の制御方法。
【請求項７】
映像信号を符号化して動画像データストリームを生成し、これを複数の配信用セッションを介してストリーミング配信する画像処理装置の制御方法であって、
動画像データストリームの符号量に基づき復号機の入力バッファの使用量を仮想的に算出し、前記使用量に基づき割り当て可能な最大の符号量をピクチャ毎に算出し、当該最大の割り当て符号量に基づきピクチャに対する割り当て符号量を定める符号量制御工程と、
前記符号量制御工程が定める割り当て符号量を補正する、符号量補正工程と、
前記補正された符号量に基づきピクチャ毎に、画面内符号化映像または画面間予測符号化映像のいずれか一方を選んで符号化を行い、動画像データストリームを生成する符号化工程と、
前記符号化工程が生成した動画像データストリームを配信する配信セッション数を検知するとともに、検知したセッションに対して前記動画像データストリームを配信する配信工程とを有し、
前記配信工程による配信セッション数の増加を検知した後、mフレーム分の符号化には、前記符号量補正工程による符号量の補正を行い、前記mフレーム符号化した後、画面内符号化で符号化映像を生成すると共に、前記符号量補正工程による補正を解除することを特徴とする画像処理装置の制御方法。
【請求項８】
前記符号化工程は、前記mフレーム以内に、前記バッファ使用量が所定値を上回った場合に、画面内符号化で符号化映像を生成すると共に、前記符号量補正工程にとる補正を解除することを特徴とする請求項７に記載の画像処理装置の制御方法。
【請求項９】
コンピュータに読み込ませ実行させることで、前記コンピュータに請求項５乃至８のいずれか１項に記載の方法の各工程を実行させるためのプログラム。
【請求項１０】
画像配信システムであって、
取得した映像信号を画面内符号化方式及び画面間予測符号化方式を用いて符号化した動画データを生成する符号化手段と、
前記符号化手段によって生成された動画データをネットワークを介して配信する配信手段とを有し、
前記符号化手段は、所定の数のフレームを含む期間における発生符号量が所定の閾値を上回らないように発生符号量を制御し、
前記符号化手段は、前記配信手段のセッション数が増加したことに応じて、画面内符号化方式で前記取得した映像信号を符号化するとともに、所定の閾値を増加させることを特徴とする画像配信システム。
【請求項１１】
画像配信システムであって、
取得した映像信号を画面内符号化方式及び画面間予測符号化方式を用いて符号化した動画データを生成する符号化手段と、
前記符号化手段によって生成された動画データをネットワークを介して配信する配信手段とを有し、
前記符号化手段は、復号機の入力バッファの使用量を仮想的に算出し、符号化した動画データの符号量に基づいて、前記復号機の入力バッファの使用量が所定の閾値を下まわらないように発生符号量を制御し、
前記符号化手段は、前記配信手段のセッション数が増加したことに応じて、画面内符号化方式で前記取得した映像信号を符号化するとともに、前記所定の閾値を低下させることを特徴とする画像配信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及びその制御方法、並びに、画像配信システムに関するものである。
【背景技術】
【０００２】
監視カメラとクライアント(映像データ処理装置)とをネットワークを介して接続し、監視する監視カメラシステムにおいては、ネットワークの伝送量を抑えるため、配信データをMPEG(Movie Picture Experts Group)規格で符号化するのが一般的である。MPEGで符号化される映像データは、画面内符号化映像たるＩフレーム(Intra-codedフレーム)、画像間予測符号化画像たるＰフレーム(Predictedフレーム)・Ｂフレーム(Bi-directional predictedフレーム)の３種類からなるフレーム群で構成される。
【０００３】
Ｉフレームは他のフレームに依存することなく符号化されることから、データ量が多いが、単独で復号を開始できるという特徴を持つ。Ｂ，Ｐフレームは他のフレーム間のデータ差分に基づいて符号化されることから、データ量は少ないが、単独では映像データまで復号できないという特徴を持つ。監視カメラの配信データは、Ｉフレームの発生比率を抑えて、Ｂ,Ｐフレームの比率を上げることで、ネットワークの伝送量を抑えているのが一般的である。
【０００４】
近年、複数台の複監視カメラと複数台のクライアントがネットワークを介して接続され、各クライアントは受信先カメラを動的に切り替えながら監視を行うことが可能な監視カメラシステムが提案されている(図２）。ＭＰＥＧで配信される映像データは、Ｉフレームの受信まで復号できない。このため、クライアントは接続先を切り替える際、Ｉフレーム受信まで監視画を得られないという課題がある（図３）。
【０００５】
このような課題に対して、例えば、特許文献１が提案されている。特許文献１の装置は、カメラ内に、Iフレームの発生頻度が異なる複数個のＭＰＥＧ符号化部を配して複数個のMPEGデータを生成し、この複数個のＭＰＥＧデータの中から１つを、状況に応じて選択し配信することで、クライアントの監視画が得られない期間を短縮するというものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１１／０１３３４９号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、特許文献１の装置はＭＰＥＧ符号化を行う構成を複数個もつ必要があり、装置構成が複雑化し、かつ、コスト高になるという問題がある。
【０００８】
本発明はかかる問題に鑑みなされたものである。そして、本発明は、単一の符号化を行う構成が生成するＭＰＥＧデータを用いて複数の配信用セッションに対するストリーミング配信が可能であり、配信中に新たなセッションが増設された場合、短時間にＩフレームを、出力することができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
この課題を解決するため、例えば本発明の画像処理装置は以下の構成を備える。すなわち、
映像信号を符号化して、動画像データストリームを生成し、これを複数の配信用セッションを介してストリーミング配信する画像処理装置であって、
動画像データストリームの符号量に基づき復号機の入力バッファの使用量を仮想的に算出し、前記バッファ使用量に基づき割り当て可能な符号量をピクチャ毎に算出し、当該最大の割り当て符号量に基づきピクチャに対する割り当て符号量を定める符号量制御手段と、
前記符号量制御手段が定める割り当て符号量を、nフレーム以内に少なくとも１枚以上の画面内符号化映像が生成可能になるよう補正する、符号量補正手段と、
前記補正された符号量に基づきピクチャ毎に、画面内符号化映像または画面間予測符号化映像のいずれか一方を選んで符号化を行い、動画像データストリームを生成する符号化手段と、
前記符号化手段が生成した動画像データストリームを配信する配信セッション数を検知するとともに、検知したセッションに対して前記動画像データストリームを配信する配信手段とを有し、
前記配信手段による配信セッション数の変化に伴い、前記符号量補正手段の補正の量を変更するとともに、セッション数が増加する場合、前記符号化手段は前記セッション数の増加のタイミングから、nフレーム以内に少なくとも１枚以上の画面内符号化映像を生成することを特徴とする。
【発明の効果】
【００１０】
本発明の装置を用いることで、単一の符号化手段が生成するMPEGデータを用いて複数の配信用セッションに対するストリーミング配信が可能であり、配信中に新たなセッションが増設された場合、短時間にIフレームを出力することができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態におけるシステム構成を説明する図。
【図２】監視カメラとクライアントの接続と、接続切り替えの一例を示す図。
【図３】接続切り替えを行う際の、監視画を得られない期間を説明する図。
【図４】MPEGバッファ遷移の例を説明する図。
【図５】目標符号量の補正を説明する図。
【図６】第１の実施形態における補正処理の発生条件を説明する図。
【図７】第１の実施形態におけるVBV使用量遷移のイメージを示した図。
【図８】第２の実施形態における補正処理の発生条件を説明する図。
【図９】第２の実施形態におけるVBV使用量遷移のイメージを示した図。
【図１０】第３の実施形態におけるVBV使用量遷移のイメージを示した図。
【図１１】第４の実施形態におけるVBV使用量遷移のイメージを示した図。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態を詳細に説明するが、この発明は以下の実施の形態に限定されない。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１３】
なお、本実施形態において説明される各機能ブロックは必ずしも個別のハードウェアである必要はない。すなわち、例えばいくつかの機能ブロックの機能は、１つのハードウェアにより実行されても良い。また、いくつかのハードウェアの連係動作により１つの機能ブロックの機能または、複数の機能ブロックの機能が実行されても良い。また、各機能ブロックの機能は、ＣＰＵがメモリ上に展開したコンピュータプログラムにより実行されても良い。
【００１４】
［第１の実施形態］
図１（ａ）に本実施形態を適応したストリーミング装置の構成を示す。この装置は、監視カメラ内に搭載されるものである。最初の配信セッションが確立すると、N枚毎に発生するIフレーム（画面内符号化方式で生成された画面内符号化映像）と、(N-1)枚のPフレーム（画面間予測符号化方式で生成された画面間予測符号化映像）から成るフレーム群でGOP構成されるMPEGデータ（動画像データストリーム）を生成して、配信セッションへの配信を開始する機能を有す。配信セッションは、有限個の範囲でMPEGデータ配信中にも最大M個(M≧2)まで増設可能であり、MPEGデータ配信中に新たなセッションが増設された場合、前述のＩフレーム発生間隔Nより短い間隔でIフレームを発生させる機能を有す。
【００１５】
符号化部100は、配信用のMPEGデータを生成する。配信部200は、配信用セッションの確立要求の検知と、符号化部100で生成されたMPEGデータの配信を行う。制御部300は、符号化部100及び配信部200の制御を行う。
【００１６】
ネットワークからセッション確立の要求が受信すると、配信部200は配信用のセッションを確立すると共に、制御部300へセッションの確立を通知する。制御部300は、符号化部100を駆動してIPPPPP…IPPPPPとN枚毎に１枚以上のIフレームが発生するMPEGデータを生成し、配信部200に引き渡す。配信部200は受け取ったMPEGデータを前述のセッション確立の要求元のクライアントへ配信する。
【００１７】
MPEGデータ配信中に新たなセッションの確立の要求を別のクライアントから受信すると、配信部200はセッションの増設を制御部300へ通知する。セッション増設通知を受けた制御部300は、符号化部100に対して、前述の周期Nとは無関係にIフレームを生成させ、以降はこのＩフレームを基準として、同様にＩフレームがN枚毎のMPEGデータを生成させる。配信部200は、同様に請け負った同一のMPEGデータを、確立済みの全セッションに対して配信を行う。
【００１８】
以下に実施形態における符号化部100について図１（ｂ）を参照して詳しく説明する。符号化部100は、動き検出部101、動き補償部102、イントラ予測部103、減算部104、DCT(Discrete Cosine Transform)演算部105、量子化部106、VLC(可変長符号化)部107、送信バッファ108、符号量制御部109、符号量補正部110、逆量子化部111、IDCT(Inverse Discrete Cosine Transform)演算部112、加算部113、画像メモリ114を備えている。
【００１９】
D1は本装置がストリーミング配信する対象となる、不図示のカメラ部からの入力映像データを示す。D2はイントラ予測を行う場合の予測画像データ、D3はインター予測を行う場合の予測画像データを示す。そして、D4はインター予測する場合の参照画像データ、D5は入力画像データD1から冗長な情報を取り除いた差分画像データを示す。
【００２０】
まず、符号化部100に入力画像データD1が入力される。イントラ符号化においては、イントラ予測部103がD1から予測画像データD2を生成し、減算部104においてD1及びD2との差分画像データD5を得る。
【００２１】
一方、インター符号化においては、動き検出部101が入力映像データD1及び参照画像データD4から動きベクトルを生成する。動き補償部102は、この動きベクトル及び参照画像データD4から予測画像データD3を生成する。減算部102は同様にD1及びD3から差分画像データD5を生成する。これらは16画素×16画素のMB(Macro Block)毎に切り替えて使用できる。予測方向は与えられたフレームタイプにより決定される。
【００２２】
過去からの予測により符号化するモードと、予測をしないでそのMBを独立で符号化するモードの２モードが存在するのがPフレームである。すべてのMBが独立で符号化するモードであるのがIフレームである。Pフレームは、Iフレームに比べて過去からの予測が可能であるため、フレーム間の冗長な情報を削減することが可能であり、符号量を少なくできる。これに対し、Ｉフレームはフレーム内でしか冗長な情報を削減することができず、一般に、符号量はPフレームより多くなる。
【００２３】
動き検知部101における動き検出は、入力画像データD1と画像メモリ112からの参照画像データD4との間で、動き領域をMB毎にパターンマッチングを行って、ハーフペル精度で動きベクトルを検出し、動き分だけシフトしてから予測する。動きベクトルには水平方向と垂直方向が存在し、何処からの予測かを示すMC(Motion Compensation)モードと共にMBの付加情報としてVLC部106へ伝送される。
【００２４】
減算部104から出力された差分画像信号は、DCT演算部105に供給される。DCT演算部105は供給された差分画像信号に対して離散コサイン変換(Discrete Cosine Transform)を行い、DCT係数を生成する。生成されたDCT係数は量子化部106に供給され、ここで量子化が行われる。量子化部106で生成された量子化データはVLC部107に供給されて、可変長符号化される。VLC部107で可変長符号化されたデータは、送信バッファ108に一時蓄えられた後、前述の付加情報と共に配信部200を介して配信される。
【００２５】
また、その出力される符号化データの発生符号量は符号量制御部109に供給される。ここで目標符号量に対する発生符号量との誤差符号量とされた後、量子化部106へ目標符号量としてフィードバックされて、量子化スケールを調整することで符号量制御される。符号量制御部109が算出した目標符号量は、量子化部106へフィードバックされる前に、符号量補正部110によって補正されるが、この詳細は後述する。
【００２６】
また、量子化部106からの量子化データは、逆量子化部111にて逆量子化され、更にIDCT演算部112にて逆DCTされ、差分画像データまで戻される。この差分画像データは、加算部113を介して減算前の画像データD2又はD3のいずれかと加算され、画像データに復元され、参照画像データとして画像メモリ114に一時蓄積される。動き補償予測部101は、画像メモリ114に記録された信号を、入力画像信号データとの動き補償を行うための参照画像データ(復号化画像データ)として使用する。
【００２７】
ここで、送信バッファ108から出力される符号化データのビットストリームは、１フレーム毎に可変長の符号量をもっている。これはMPEGがDCT、量子化、ハフマン符号化という情報変換を用いている理由と同時に、画質向上のためにピクチャ毎に配分する符号量は適応的に変更する必要性があるためである。さらに、動き補償予測を行っているので、あるときは入力画像そのままを符号化し、あるときは予測画像の差分である差分画像を符号化するなど符号化画像自体のエントロピーも大きく変化するためでもある。
【００２８】
この場合、多くはその画像のエントロピー比率に配分しつつ、送信バッファ108の記憶容量(バッファ容量)の制限を守りながら符号量制御される。符号量制御部109は発生した符号量と符号化レートの関係を監視し、所定のバッファ容量に収まるように目標符号量を設定する。この値はVLC部107にフィードバックされ、符号量制御部109に入り、そこで量子化部106にセットする量子化値を大きくして発生符号量を抑えたり、量子化値を小さくして発生符号量を小さくしたりする。
【００２９】
このような可変長データを固定の転送レート(符号化レート)で符号化する場合、送信先（復号機）の復号化部の入力バッファの最大バッファ量を上限値とすると、一定速度でデータが入力されて、所定の値だけ溜まったところから、所定の時刻で復号化を一瞬で行うモデルを使用し、そのバッファがオーバーフローもアンダーフローも発生しないように符号化することがMPEGで規定されている。この規定(VBVバッファ規定）を守っていれば、VBVバッファ内でのレートは局部的に変化しているものの、観測期間を長くとれば固定の転送レートとなり、MPEGではこのことを固定転送レートであると定義している。
【００３０】
発生符号量の少ない場合にはバッファ使用量は、上限値に張り付いた状態になるが、この場合、バッファ使用量が上限値になった場合、復号化器の読み出しを中止することにより、原理的にオーバーフローが起きないように定義されている。
【００３１】
こうしたバッファ推移を図４に示す。図４は縦軸がバッファ使用量、横軸が時間を示す。同図に示すように、MPEG符号化では、仮に非常に発生符号量が少なくても、送信先の復号化部の読み出しが中止されるので、固定転送レートの時のように無効ビットをいれる必要はない。従って、アンダーフローだけが発生しないように符号化する必要がある。
【００３２】
次に、符号量補正部110の処理について図５を用いて説明する。符号量補正部110は、この仮想的なVBVモデルにおいて、nフレーム以内にIフレームを１枚発生させても、VBVモデルがアンダーフローしないように、符号量制御部109が生成した目標符号量を補正する機能を有する。
【００３３】
同図の「a」は、本システムが生成するIフレームの最小符号量、同図の「b」は本システムが生成するPフレームの最小符号量であり、これらは予めシステムで定められた数値である。同図の「c」は符号量制御部109が生成した当該フレームの目標符号量、同図のxは当該フレームを復号した時点でのVBVの使用量である。
【００３４】
当該フレーム後、n(n＜N)フレームでIフレームを生成可とする場合、MPEGデータ供給分によるVBV使用量の持ち上げ量は
ビットレート×n … (1)
である。また、nフレーム後にIピクチャが発生すると、
a + (n-1) × b …(2)
のVBV蓄積データを消費する(VBV使用量を低下させる)。
従って、
d = x + (ビットレート×n) − (a + (n-1) × b)  … (3)
dが、(n-1)フレーム後まで最小符号量でPフレームを生成し、最小符号量のIフレームを発生させた場合の、VBV使用量である。
【００３５】
dが0以上の数値であった場合、nフレーム後にアンダーフローなしにIフレームを発生可能である。d=0となる場合のxを目標符号量補正閾値とし、VBV使用量が閾値以上であれば目標符号量の補正は行わない。
【００３６】
しかし、dが負の値であった場合、nフレーム以内にアンダーフロー無しでＩフレームの発生が行えない。そこで、符号量補正部110は、目標符号量cからd分を減らしたc’を目標符号量として、量子化部106へ通知する(n=1は、常にIフレームを発生可能な制御である）。
【００３７】
また、この補正処理の発生条件を図６に示す。本システムは最大Mセッションまでの配信に対応しているので、配信セッションがM個確立後は、所定間隔Nより短い間隔でIフレームを発生させる必要がない。
【００３８】
従って、S601において確立済みの配信セッション数を最大値Mと比較する。配信セッション数がMより小さい場合は、S602において前述の目標符号量補正処理を行う。一方、セッション数が最大値Mに達した場合は、符号量補正部110による目標符号量の補正処理をスキップする。
【００３９】
この処理を行った場合のVBV使用量遷移を示したものが図７である。新たなセッションが確立した場合、符号量制御部109はPフレームに対する目標符号量に最小値bを与える。この目標符号量bのPフレームを(n-1)枚符号化したのち、目標符号量aのIフレームを発生させる。
【００４０】
以上を行うことで、セッション数が増加した場合に、その増加したタイミングからnフレーム以内にVBVモデル上でアンダーフローが発生しないように、Ｉフレームを生成して配信し、新たに確立したセッション先のクライアントに素早くストリーミング画を出力させることができる。
【００４１】
なお、Iフレーム、Pフレームの最小符号量a,bは、MPEG規格上の最小値とせず、本システムが配信したい画質に応じて異なる値を決定しても良い。また、目標符号量と実際に発生する符号量の誤差が大きい場合は、a,bに最大誤差量を算出して加算するなどしても良い。また、新たなセッションの確立後、nフレームをまたず、VBV使用量にＩフレーム生成可能なマージンが発生した場合は、その時点でＩフレームを発生させても良い。
【００４２】
また、本実施形態では、ストリーミング装置が映像信号の符号化、および符号化された動画データの配信を行うものとして説明したが、必ずしもこのような構成でなくともよい。たとえば、撮像装置とストリーミング装置とからなる画像配信システムであってもよい。この場合、撮像装置は、撮像部と、撮像部によって得られた画像に所定の処理を施す画像処理部、画像処理部で処理の施された映像信号を符号化する符号化部、および制御部を有する。また、撮像装置は、ストリーミング装置と通信を行う通信部を有する。一方、ストリーミング装置は、撮像装置と通信を行う通信部を有し、また、ネットワークを介してクライアントに、取得した符号化済みの動画データを配信する配信部、および制御部を有する。
【００４３】
このシステムでは、撮像装置の符号化部によって符号化された動画データを撮像装置の通信部を介して、ストリーミング装置の通信部に送信し、ストリーミング装置の配信部は、ネットワークを介してクライアントに符号化済みの動画データを配信する。そして、ストリーミング装置の制御部は、本実施形態の制御部300の動作を行う。このとき、実施形態において符号化部100との間で行われていた通信は、ストリーミング装置の通信部を介して、撮像装置の通信部に送信され、撮像装置の制御部によって、撮像装置の符号化部に通知される。一方、撮像装置の符号化部は、本実施形態の符号化部100と同様の動作を行う。このように、本実施形態で説明した各ブロックは、それぞれ別々の装置に備えられていてもよい。
【００４４】
［第２の実施形態］
次に、最初のセッションが確立して、符号化を開始直後の目標符号量補正の緩和について説明する。
【００４５】
符号化が始まった直後の、VBV使用量は0であり、ある程度の時間をかけてVBV使用量を持ち上げる。従って、符号化開始直後から補正をかけると、配信データの始端に十分な符号量を与えることができず、画質劣化する問題がある。
【００４６】
図８はこれに対する符号量補正処理の発生条件である。S801において、VBV使用量を所得する。S802においてVBV使用量が所定値を超えたか否かを判定し、一度でも超えていればS803以降の目標符号量補正処理を行う。一度も超えていない場合は、目標符号量補正処理を行わない。S803以降は、図６と同じであるため、説明を省略する。この処理を行った場合のVBV使用量遷移のイメージを示したものが図９である。
【００４７】
［第３の実施形態］
次に、セッション増加時のみ目標符号量補正処理を行う方法について説明する。システムの構成は第１の実施形態と同じであるため省略する。
【００４８】
aは、本システムが生成するIフレームの最小符号量、bは本システムが生成するPフレームの最小符号量であり、これらは予めシステムで定められた数値である。cは符号量制御部109が生成した当該フレームの目標符号量である。
【００４９】
当該フレーム後、mフレームでIフレームを生成可とする場合、MPEGデータ供給分によるVBV使用量の持ち上げ量は
ビットレート×m … (4)
である。また、mフレーム後にIピクチャが発生すると、
a + (m-1) × b …(5)
のVBV蓄積データを消費する(VBV使用量を低下させる)。
従って、次式が成り立つようにmを決定することで、
(ビットレート×m) − (a + (m-1) × b) ≧ 0 … (6)
VBV蓄積量が0の状態からでもmフレーム分符号化した後に、Ｉフレームが生成可能となる。換言すれば、『(ビットレート×m)』が『 (a + (m-1) × b)』を上回ったときに、Ｉフレームを生成する。
【００５０】
新たなセッションが確立した場合、符号量補正部110は、符号量制御部109へのPフレーム目標符号量を最小値bへ補正開始する。この目標符号量bのPフレームを(m-1)枚符号化したのち、Iフレームを発生させると共に、符号量補正部110による符号量補正を終了する。この処理を行った場合のVBV使用量遷移のイメージを示したものが図１０である。
【００５１】
以上を行うことで、セッション数が増加した場合に、mフレーム後にVBVモデル上でアンダーフローが発生しないように、Ｉフレームを生成して配信し、新たに確立したセッション先のクライアントに素早くストリーミング画を出力させることができる。
【００５２】
［第４の実施形態］
上記第３の実施形態に対して、mフレーム符号化前にＩフレームが発生可能であれば、Ｉフレームを発生させる方法を、第４の実施形態として説明する。
【００５３】
xは当該フレームを復号した時点でのVBVの使用量とすると、次式が成り立つようにm’を決定する。
x + (ビットレート×m’) − (a + (m’-1) × b) ≧ 0 … (7)
上記で算出したm’ (m’≦m)フレーム符号化した後に、Ｉフレームが生成可能となる。
{Ｄａｎｒａｋｕ=ＯＮ}
同様に、新たなセッションが確立した場合、符号量補正部110は、符号量制御部109へのPフレーム目標符号量を最小値bへ補正開始する。この目標符号量bのPフレームを(7)式で動的に算出したm’を用い、(m’-1)枚符号化したのち、Iフレームを発生させると共に、符号量補正部110による符号量補正を終了する（補正を解除する）。
【００５４】
この処理を行った場合のVBV使用量遷移のイメージを示したものが図１１である。
【００５５】
以上を行うことで、セッション数が増加した場合に、mフレーム以内にVBVモデル上でアンダーフローが発生しないように、Ｉフレームを生成して配信し、新たに確立したセッション先のクライアントに素早くストリーミング画を出力させることができる。
【００５６】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015130600.tif 000003
【図２】
2015130600.tif 000004
【図３】
2015130600.tif 000005
【図４】
2015130600.tif 000006
【図５】
2015130600.tif 000007
【図６】
2015130600.tif 000008
【図７】
2015130600.tif 000009
【図８】
2015130600.tif 000010
【図９】
2015130600.tif 000011
【図１０】
2015130600.tif 000012
【図１１】
2015130600.tif 000013