(57)【特許請求の範囲】
【請求項１】
画像内に設定された指定領域ごとに異なる画質を設定可能な設定手段と、
前記画像を符号化して得られる発生符号量が目標符号量となるように、前記符号化に用いる量子化パラメータを決定する決定手段と、
前記設定手段における前記指定領域の設定に変更があるか否かを判断する判断手段と、
前記判断手段によって前記指定領域の設定に変更があると判断した際に、前記符号化に用いる前記量子化パラメータを予め設定した固定値に変更する変更手段と、を備えることを特徴とする画像処理装置。
【請求項２】
前記固定値は、前記発生符号量が予め設定した最大許容符号量以下となる量子化パラメータであることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記固定値は、前記決定手段によって決定される量子化パラメータの初期値であることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記判断手段は、
前記指定領域の設定が解除される場合に、前記指定領域の設定に変更があると判断することを特徴とする請求項１〜３のいずれか１項に記載の画像処理装置。
【請求項５】
前記判断手段は、
前記指定領域が新たに設定される場合に、前記指定領域の設定に変更があると判断することを特徴とする請求項１〜４のいずれか１項に記載の画像処理装置。
【請求項６】
前記判断手段は、
前記指定領域の面積が変更される場合に、前記指定領域の設定に変更があると判断することを特徴とする請求項１〜５のいずれか１項に記載の画像処理装置。
【請求項７】
前記判断手段は、
前記画像を撮像する撮像手段の撮像方向および画角の少なくとも一方が変更される場合に、前記指定領域の設定に変更があると判断することを特徴とする請求項１〜６のいずれか１項に記載の画像処理装置。
【請求項８】
前記量子化パラメータを用いて前記画像を圧縮符号化する符号化手段をさらに備え、
前記符号化手段は、
前記変更手段により前記量子化パラメータを前記固定値に変更した直後に、フレーム内符号化を行うＩピクチャを挿入することを特徴とする請求項１〜７のいずれか１項に記載の画像処理装置。
【請求項９】
前記変更手段は、
前記判断手段によって前記指定領域の設定に変更があると判断した場合、前記指定領域の面積の変化量が所定の閾値を超える場合に、前記量子化パラメータを前記固定値に変更することを特徴とする請求項１〜８のいずれか１項に記載の画像処理装置。
【請求項１０】
画像内に設定された指定領域ごとに異なる画質を設定可能な設定手段と、
前記画像を符号化して得られる発生符号量が目標符号量となるように、前記符号化に用いる量子化パラメータを決定する決定手段と、
前記設定手段における前記指定領域の設定に変更があるか否かを判断する判断手段と、
前記判断手段によって前記指定領域の設定に変更があると判断した際に、前記符号化に用いる前記量子化パラメータを前記指定領域の面積の変化量に応じて変更する変更手段と、を備えることを特徴とする画像処理装置。
【請求項１１】
画像内に設定された指定領域ごとに異なる画質を設定可能な設定手段と、
前記画像を符号化して得られる発生符号量が目標符号量となるように、前記符号化に用いる量子化パラメータを決定する決定手段と、
前記設定手段により前記指定領域を新たに設定、もしくは前記指定領域の設定を解除した直後に前記符号化に用いる前記量子化パラメータを、予め設定した固定値に変更する変更手段と、を備えることを特徴とする画像処理装置。
【請求項１２】
請求項１〜１１のいずれか１項に記載の画像処理装置と、
前記画像を撮像する撮像手段と、を備えることを特徴とする撮像装置。
【請求項１３】
画像内に設定された指定領域ごとに異なる画質を設定するステップと、
前記画像を符号化して得られる発生符号量が目標符号量となるように、前記符号化に用いる量子化パラメータを決定するステップと、
前記指定領域の設定に変更があるか否かを判断するステップと、
前記指定領域の設定に変更があると判断した際に、前記符号化に用いる前記量子化パラメータを予め設定した固定値に変更するステップと、を含むことを特徴とする画像処理方法。
【請求項１４】
画像内に設定された指定領域ごとに異なる画質を設定するステップと、
前記画像を符号化して得られる発生符号量が目標符号量となるように、前記符号化に用いる量子化パラメータを決定するステップと、
前記指定領域の設定に変更があるか否かを判断するステップと、
前記指定領域の設定に変更があると判断した際に、前記符号化に用いる前記量子化パラメータを前記指定領域の面積の変化量に応じて変更するステップと、を含むことを特徴とする画像処理方法。
【請求項１５】
コンピュータを、請求項１〜１１のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を圧縮符号化するための画像処理装置、撮像装置および画像処理方法に関する。
【背景技術】
【０００２】
近年、映像の圧縮符号化の分野において、画像内の領域毎に圧縮率を変えることで画質を変える技術が知られている。特許文献１は、画像の中央部分の領域内と領域外とで量子化処理を変えることにより、画像中央部の映像を高画質とし、周辺部の映像を低画質にすることで、映像品質を下げることなくデータ容量を抑えることが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−２８４３９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、従来、符号量制御として、直前までの符号量をもとに、発生符号量が目標符号量と等しくなるように、次の画像に適用する量子化パラメータを決定する制御が知られている。この符号量制御は、固定ビットレート（ＣＢＲ：Constant Bit Rate）で画像を符号化するため、「固定ビットレート制御（ＣＢＲ制御）」とも呼ばれる。
ＣＢＲ制御中に、指定領域内の画質を指定領域外の画質よりも高画質にする、所謂「領域別画質制御」を行う場合、指定領域内の画質と指定領域外の画質とに差をつけつつ、ビットレートが一定に保たれる。しかしながら、例えば、カメラの撮影方向を変更することなどにより指定領域の大きさが急激に変化すると、ＣＢＲ制御中にもかかわらず、ビットレートが瞬間的に非常に大きくなってしまう場合がある。
そこで、本発明は、ＣＢＲ制御中に領域別画質制御を実行する場合に、発生符号量が目標符号量から大きく逸脱してビットレートが急激に大きくなることを防止することを課題としている。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係る画像処理装置の一態様は、画像内に設定された指定領域ごとに異なる画質を設定可能な設定手段と、前記画像を符号化して得られる発生符号量が目標符号量となるように、前記符号化に用いる量子化パラメータを決定する決定手段と、前記設定手段における前記指定領域の設定に変更があるか否かを判断する判断手段と、前記判断手段によって前記指定領域の設定に変更があると判断した際に、前記符号化に用いる前記量子化パラメータを予め設定した固定値に変更する変更手段と、を備える。
【発明の効果】
【０００６】
本発明によれば、ＣＢＲ制御中に領域別画質制御を実行する場合に、発生符号量が目標符号量から大きく逸脱してビットレートが急激に大きくなることを防止することができる。
【図面の簡単な説明】
【０００７】
【図１】本実施形態における監視システムのネットワーク構成例である。
【図２】カメラおよびクライアント装置の構成例を示すブロック図である。
【図３】画像符号化装置の構成例を示すブロック図である。
【図４】ネットワークカメラのハードウェア構成例である。
【図５】第一の実施形態におけるＣＢＲ制御時の動作を示すフローチャートである。
【図６】第二の実施形態におけるＣＢＲ制御時の動作を示すフローチャートである。
【図７】第三の実施形態におけるＣＢＲ制御時の動作を示すフローチャートである。
【図８】指定領域の一例を示す図である。
【図９】指定領域の一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明を実施するための形態について詳細に説明する。
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
（第一の実施形態）
本実施形態では、ネットワークカメラからネットワーク上のクライアント装置へ画像を送信可能な監視システムについて説明する。
図１は、本実施形態における監視システム１０００のネットワーク構成例である。監視システム１０００は、ネットワークカメラ（以下、単に「カメラ」という。）１００とクライアント装置２００とを備える。カメラ１００とクライアント装置２００とは、ネットワーク３００によって相互に通信可能に接続されている。ネットワーク３００は、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）の通信規格に準拠する複数のルータ、スイッチ、ケーブル等から構成される。なお、ネットワーク３００は、カメラ１００とクライアント装置２００との間で通信可能な構成であれば、その通信規格、規模および構成は問わない。ネットワーク３００は、インターネットや有線ＬＡＮ（Local Area Network）、無線ＬＡＮ（Wireless LAN）、ＷＡＮ（Wide Area Network）、若しくはこれらの複合により実現してもよい。
【０００９】
カメラ１００は、所定の監視対象範囲を撮像する撮像装置である。カメラ１００は、本実施形態においては、パン機構、チルト機構およびズーム機構を有するＰＴＺカメラ（Pan Tilt Zoom カメラ）である。なお、カメラ１００は、ＰＴＺカメラに限定されるものではない。また、カメラ１００は、ＰｏＥ（Power over Ethernet）に対応していてもよいし、ＬＡＮケーブルを介して電力が供給される構成でもよい。
クライアント装置２００は、パーソナルコンピュータ（ＰＣ）やスマートフォン、タブレット型ＰＣといった端末装置により構成され、カメラ１００に対して各種コマンドを送信可能である。カメラ１００に対して送信するコマンドには、カメラ１００の撮像方向および画角を変更するためのコマンド、撮像パラメータを変更するためのコマンド、画像処理に関するコマンド、画像の送信を開始させるためのコマンドが含まれる。
【００１０】
カメラ１００は、クライアント装置２００から受信した撮像方向および画角を変更するためのコマンドに応じて、撮像方向および画角を変更する。また、カメラ１００は、画像の送信を開始させるためのコマンドに応じて、画像をクライアント装置２００に送信する。クライアント装置２００は、上記の画像の送信を開始させるためのコマンドを受けてカメラ１００が送信した画像を受信し、受信した画像を、クライアント装置２００を使用するユーザ（例えば、監視員）に提示する表示制御を行う。
【００１１】
図２は、カメラ１００およびクライアント装置２００の構成例を示すブロック図である。この図２に示すように、カメラ１００は、撮像部１０１と、画像処理部１０２と、システム制御部１０３と、レンズ駆動部１０４と、レンズ制御部１０５と、パン駆動部１０６と、チルト駆動部１０７と、パンチルト制御部１０８と、通信部１０９と、を備える。また、クライアント装置２００は、表示部２０１と、入力部２０２と、システム制御部２０３と、通信部２０４と、を備える。そして、カメラ１００の通信部１０９とクライアント装置２００の通信部２０４とが、ネットワーク３００を介して相互に通信可能な状態に接続されている。
【００１２】
まず、カメラ１００の構成および各部の機能について説明する。
撮像部１０１は、レンズおよびＣＭＯＳ（Complementary Metal Oxide Semiconductor）、ＣＣＤ（Charge Coupled Device）等の撮像素子を含んで構成され、被写体の撮像を行う。また、撮像部１０１は、撮像面に結像された光像を光電変換によりデジタル電気信号に変換する処理を行う。画像処理部１０２は、撮像部１０１において光電変換された信号に対して所定の画像処理を行う。上記画像処理としては、ホワイトバランス処理、シャープネス処理、階調変換処理がある。
システム制御部１０３は、画像処理部１０２によって画像処理が施された画像を圧縮符号化し、生成された画像（符号化データ）をクライアント装置２００へ配信すべく通信部１０９に出力する。圧縮符号化処理の詳細については後述する。
【００１３】
また、システム制御部１０３は、通信部１０９を介してクライアント装置２００から受信したコマンドを解析し、コマンドに応じた処理を行う。具体的には、システム制御部１０３は、受信したコマンドに応じて、画像処理部１０２に対する画像処理パラメータの変更指示や、レンズ制御部１０５に対するズームやフォーカス制御の指示、パンチルト制御部１０８に対するパンチルト動作の指示を行う。さらに、システム制御部１０３は、後述する圧縮符号化処理における設定変更の指示も行う。
レンズ駆動部１０４は、フォーカスレンズおよびズームレンズの駆動系、およびその駆動源のモータにより構成され、その動作はレンズ制御部１０５により制御される。レンズ制御部１０５は、システム制御部１０３による指示に基づいて、レンズ駆動部１０４を制御する。パン駆動部１０６は、パン動作を行うメカ駆動系、およびその駆動源のモータにより構成され、その動作はパンチルト制御部１０８により制御される。また、チルト駆動部１０７は、チルト動作を行うメカ駆動系、およびその駆動源のモータにより構成され、その動作はパンチルト制御部１０８により制御される。パンチルト制御部１０８は、システム制御部１０３による指示に基づいて、パン駆動部１０６およびチルト駆動部１０７を制御する。
【００１４】
通信部１０９は、クライアント装置２００の通信部２０４からネットワーク３００を介して送信される各種コマンドを受信し、受信したコマンドをシステム制御部１０３へ送信する。また、通信部１０９は、システム制御部１０３による指示に基づいて、ネットワーク３００を介して画像をクライアント装置２００の通信部２０４へ送信する。
クライアント装置２００の表示部２０１は、液晶ディスプレイ（ＬＣＤ）等のモニタを含んで構成されている。また、入力部２０２は、キーボードやマウス等のポインティングデバイスを含んで構成されており、クライアント装置２００のユーザは、入力部２０２を操作して各種コマンドを入力することができる。システム制御部２０３は、通信部２０４を介してカメラ１００から受信した画像を表示部２０１へ表示する表示制御を行う。また、システム制御部２０３は、入力部２０２を介して取得した上記コマンドを、カメラ１００へ送信すべく通信部２０４へ出力する。通信部２０４は、カメラ１００の通信部１０９からネットワーク３００を介して送信される画像を受信し、受信した画像をシステム制御部２０３に送信する。また、通信部２０４は、システム制御部２０３の指示に基づいて、上記コマンドを、ネットワーク３００を介してカメラ１００の通信部１０９へ送信する。
【００１５】
次に、カメラ１００のシステム制御部１０３によって実行される圧縮符号化処理について具体的に説明する。
本実施形態では、圧縮符号化処理として、パラメータを制御することで発生符号量を制御可能な符号化方法を用いる。具体的には、量子化パラメータによって発生符号量を制御するＨ．２６４／ＭＰＥＧ−４  ＡＶＣ（ＩＳＯ／ＩＥＣ １４４９６−１０）に準拠した符号化方法を用いる。
また、システム制御部１０３は、符号量制御として、固定ビットレート制御（ＣＢＲ制御）と領域別画質制御とを併用することができる。ここで、ＣＢＲ制御は、画像を符号化して得られる発生符号量が目標符号量となるように、符号化に用いる量子化パラメータを決定する制御である。また、領域別画質制御は、画像内に設定された指定領域ごとに異なる画質を設定可能な制御である。具体的には、領域別画質制御は、指定領域内の画質が指定領域外の画質よりも高画質となるように、量子化パラメータを決定する。量子化パラメータを大きくすれば、発生符号量を減らして画質を低くすることができ、逆に、量子化パラメータを小さくすれば、発生符号量を増やして画質を高くすることができる。
【００１６】
領域別画質制御において高画質の設定にする指定領域は、例えば、カメラ１００に対して撮影方向の変更およびズーム制御することによって撮影可能な範囲からユーザが予め指定することができる。例えば、指定領域は、カメラ１００に対して撮影方向の変更およびズーム制御することによって得られる複数の撮影画像に基づいて生成されるパノラマ画像上で指定されてもよい。本実施形態では、ユーザが指定領域を設定および設定解除することで、システム制御部１０３が領域別画質制御の有効および無効の切り替えを行うことができるものとする。なお、以下の説明では、この領域別画質制御のことを「領域指定機能」ともいう。
【００１７】
また、ＣＢＲ制御の有効および無効の切り替えも、ユーザによって指示することができるものとする。ＣＢＲ制御と領域別画質制御とが共に有効である場合、システム制御部１０３は、領域別画質制御により設定された画質を維持しつつ、画像を符号化して得られる発生符号量が目標符号量となるように、符号化に用いる量子化パラメータを決定する。つまり、システム制御部１０３は、指定領域内の画質と指定領域外の画質とに差をつけつつ、ビットレートを一定に保つように符号量を制御する。
図３は、システム制御部１０３が備える画像符号化装置１１０の構成例を示すブロック図である。画像符号化装置１１０は、符号化器１１１と、量子化パラメータ算出部１１２と、割当符号量算出部１１３と、制御部１１４と、符号量計測部１１５と、誤差算出記憶部１１６と、を備える。画像符号化装置１１０は、図２の画像処理部１０２から出力される画像を入力画像データとし、入力画像データに対して符号化器１１１によって圧縮符号化処理を行い、圧縮符号化したデータ（符号化データ）を出力する。
【００１８】
符号化器１１１は、量子化パラメータ算出部１１２から与えられる量子化パラメータを用いて画像を圧縮符号化する。そして、符号化器１１１は、圧縮符号化した符号化データを画像符号化装置１１０の出力とすると共に、符号量計測部１１５に出力する。
符号量計測部１１５は、１フレーム毎（１画像毎）の発生符号量を計測し、計測した発生符号量を誤差算出記憶部１１６に出力する。誤差算出記憶部１１６は、符号量誤差として、符号量計測部１１５から入力された発生符号量と、制御部１１４から入力された目標符号量との差分量を算出する。そして、誤差算出記憶部１１６は、算出した差分量を累積して累積差分量を算出し、算出した累積差分量を図４のＲＡＭ１３等の記憶部に記憶すると共に、割当符号量演算部１１３に対して出力する。
【００１９】
制御部１１４は、画像符号化装置１１０に対する設定入力を受けて、図３の各部に対して、各種設定項目を出力する。この設定項目には、上記の目標符号量の他に、累積誤差範囲、量子化パラメータ範囲、入力画像サイズ（入力画像データの水平方向および垂直方向のピクセル数）、フレームレート、符号化方式（フレーム内予測符号化またはフレーム間予測符号化）が含まれる。なお、累積誤差範囲は、画像符号化装置１１０に対する設定入力ではなく、制御部１１４が算出してもよい。
割当符号量算出部１１３は、制御部１１４から入力される目標符号量やフレームレート、累積誤差範囲といった符号化設定値と、誤差算出記憶部１１６から入力される累積誤差量とに基づいて、次の画像に割り当てる符号量（割当符号量）を算出する。割当符号量算出部１１３は、算出した割当符号量を量子化パラメータ算出部１１２に出力する。
量子化パラメータ算出部１１２は、制御部１１４から入力される入力画像サイズや符号化方式に基づいて、割当符号量算出部１１３から入力される割当符号量に相当する量子化パラメータを算出する。量子化パラメータ算出部１１２は、算出した量子化パラメータを符号化器１１１に出力する。符号化器１１１に出力された量子化パラメータは、次の入力画像データに対する圧縮符号化処理時に使用される。
【００２０】
（ハードウェア構成）
図４は、カメラ１００のハードウェア構成例である。
図４に示すように、カメラ１００は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、外部メモリ１４と、撮像部１５と、入力部１６と、通信Ｉ／Ｆ１７と、システムバス１８とを備える。ＣＰＵ１１は、カメラ１００における動作を統括的に制御するものであり、システムバス１８を介して、各構成部（１２〜１７）を制御する。ＲＯＭ１２は、ＣＰＵ１１が処理を実行するために必要な制御プログラム等を記憶する不揮発性メモリである。なお、当該プログラムは、外部メモリ１４や着脱可能な記憶媒体（不図示）に記憶されていてもよい。ＲＡＭ１３は、ＣＰＵ１１の主メモリ、ワークエリア等として機能する。すなわち、ＣＰＵ１１は、処理の実行に際してＲＯＭ１２から必要なプログラム等をＲＡＭ１３にロードし、当該プログラム等を実行することで各種の機能動作を実現する。なお、画像符号化装置１１に対応する専用のハードウェアの構成をカメラ１００に設けてもよい。
【００２１】
外部メモリ１４は、例えば、ＣＰＵ１１がプログラムを用いた処理を行う際に必要な各種データや各種情報等を記憶している。また、外部メモリ１４には、例えば、ＣＰＵ１１がプログラム等を用いた処理を行うことにより得られた各種データや各種情報等が記憶される。撮像部１５は、図２の撮像部１０１に対応する。入力部１６は電源ボタンなどから構成される。通信Ｉ／Ｆ１７は、図２の通信部１０９に対応する。図２および図３に示すカメラ１００の各要素の一部または全部の機能は、ＣＰＵ１１がプログラムを実行することで実現することができる。ただし、図２および図３に示すカメラ１００の各要素のうち少なくとも一部が専用のハードウェアとして動作するようにしてもよい。この場合、専用のハードウェアは、ＣＰＵ１１の制御に基づいて動作する。
【００２２】
なお、クライアント装置２００の場合、図４の撮像部１５に代えて、図２の表示部２０１に対応するハードウェア構成を具備する。また、クライアント装置２００の場合、入力部１６として、図２の入力部２０２に対応するハードウェア構成を具備する。図２に示すクライアント装置２００の各要素の一部または全部の機能は、ＣＰＵ１１に対応するクライアント装置２００のＣＰＵがプログラムを実行することで実現することができる。ただし、図２に示すクライアント装置２００の各要素のうち少なくとも一部が専用のハードウェアとして動作するようにしてもよい。この場合、専用のハードウェアは、ＣＰＵの制御に基づいて動作する。
【００２３】
本実施形態では、システム制御部１０３は、ＣＢＲ制御が無効であり、且つ領域指定機能が無効であるときに、ユーザが指定領域を設定したことを確認すると、領域指定機能を有効に切り替える。このとき、システム制御部１０３は、ユーザが設定した指定領域内に適用する量子化パラメータを、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータに設定する。そして、システム制御部１０３は、指定領域外に適用する量子化パラメータを、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータよりも低画質となるような値に設定する。一方、システム制御部１０３は、ＣＢＲ制御が無効であり、且つ領域指定機能が有効であるときに、ユーザが指定領域の設定を解除したことを確認すると、領域指定機能を無効に切り替える。このとき、システム制御部１０３は、画像全体に適用する量子化パラメータを、領域指定機能を無効にする前に指定領域に適用していた量子化パラメータに設定する。図８（ａ）は、このような場合の一例を示したものである。図８（a）に示すように、指定領域を有効化する前は、画像全体に量子化パラメータ（Ｑ＝３０）を適用していることを示している。そして、指定領域を有効化した後は、指定領域に対して量子化パラメータ（Ｑ＝３０）が一旦設定され、指定領域外に対して量子化パラメータ（Ｑ＝４０）が設定される。それぞれの指定領域および指定領域外の量子化パラメータは予めユーザが登録しておいてもよい。
【００２４】
また、システム制御部１０３は、ＣＢＲ制御が有効であり、且つ領域指定機能が無効であるときに、領域指定機能を有効にする場合、領域指定機能を有効に切り替えた直後に指定領域に適用する量子化パラメータを、予め設定された固定値に変更する。さらにシステム制御部１０３は、指定領域外に適用する量子化パラメータを、固定値よりも同等か低画質となるような値に設定することで、瞬間的に符号量（ビットレート）が増大することを防ぐ。その後は、設定された量子化パラメータ（指定領域に対して固定値、指定領域外に対して固定値あるいは固定値以下の値）に従って発生した符号量に基づいて、システム制御部１０３は、ＣＢＲ制御を継続する。発生する符号量は目標符号量より下回ることが想定されるので、指定領域に対して高画質となるような量子化パラメータが上記固定値に代えて再設定されることになる。つまり、ＣＢＲ制御により、指定領域の量子化パラメータは、領域指定機能を有効にする前のＣＢＲ制御中に画像全体に適用していた量子化パラメータよりも高画質な値となる。また、指定領域外の量子化パラメータは、領域指定機能を有効にする前のＣＢＲ制御中に画像全体に適用していた量子化パラメータよりも低画質となるような値となる。図８（ｂ）は、このような場合の一例を示したものである。図８（ｂ）に示すように、指定領域を有効化する前は、画像全体に量子化パラメータ（Ｑ＝３０）を適用していることを示している。そして、指定領域を有効化した直後は、指定領域に対して固定値として量子化パラメータ（Ｑ＝４２）が一旦設定され、指定領域外に対して量子化パラメータ（Ｑ＝４２）が設定される。
【００２５】
さらに、システム制御部１０３は、ＣＢＲ制御が有効であり、且つ領域指定機能が有効であるときに、領域指定機能を無効にする場合、領域指定機能を無効に切り替えた直後に画像全体に適用する量子化パラメータを、領域指定機能が有効であるときに指定領域に設定された量子化パラメータではなく、予め設定した固定値に変更する。そして、その後は、システム制御部１０３は、変更した固定値に従って発生する符号量に基づいて、ＣＢＲ制御される。すなわち変更した固定値に基づいて発生する発生符号量が目標符号量となるように符号量制御する。また、システム制御部１０３は、ＣＢＲ制御と領域指定機能とが共に有効であるときに、指定領域が変化する場合にも、指定領域に適用する量子化パラメータを予め設定した固定値に一旦変更する。このように、システム制御部１０３は、領域指定機能における指定領域の設定に変更があるか否かを判断し、指定領域の設定に変更があると判断した際に、符号化に用いる量子化パラメータを予め設定した固定値に変更する。図８（ｃ）は、このような場合の一例を示したものである。図８（ｃ）に示すように、指定領域を無効化する前は、指定領域に対して量子化パラメータ（Ｑ＝２０）が設定され、指定領域外に対して量子化パラメータ（Ｑ＝３０）が設定されている。画像全体に量子化パラメータ（Ｑ＝３０）を適用していることを示している。そして、指定領域を無効化した直後は、画像全体に固定値である量子化パラメータ（Ｑ＝４２）が一旦設定される。
【００２６】
本実施形態においては、撮像装置であるカメラ１００が、画像を符号化してクライアント装置２００へ送信する符号化データを作成可能な画像処理装置として動作する。なお、撮像装置に接続されたＰＣ等の機器が、撮像装置から取得した画像を符号化してクライアント装置２００へ送信する符号化データを作成可能な画像処理装置として動作するようにしてもよい。
以下、ＣＢＲ制御時における動作について説明する。
図５は、ＣＢＲ制御時におけるシステム制御部１０３の動作を示すフローチャートである。この図５の処理は、カメラ１００のＣＰＵ１１がプログラムを実行することによって実現することができる。先ずＳ１において、システム制御部１０３は、ＣＢＲ制御中であるか否かを判断し、ＣＢＲ制御中ではないと判断した場合には、量子化パラメータの設定変更の必要はないと判断して図５の処理を終了する。一方、システム制御部１０３がＣＢＲ制御中であると判断すると、Ｓ２に移行し、領域指定機能を実行中であるか否かを判断する。そして、システム制御部１０３は、領域指定機能を実行していない（領域指定機能が無効である）と判断した場合にはＳ３に移行し、領域指定機能を実行している（領域指定機能が有効である）と判断した場合にはＳ６に移行する。
【００２７】
Ｓ３では、システム制御部１０３は、領域指定機能を有効にするか否かを判断する。このＳ３では、システム制御部１０３は、ユーザからの指示に指定領域の設定が含まれる場合に、領域指定機能を有効にすると判断する。そして、システム制御部１０３は、領域指定機能を有効にすると判断した場合にはＳ４に移行し、領域指定機能を無効のままにすると判断した場合にはそのまま設定変更処理を終了する。Ｓ４では、システム制御部１０３は、指定領域を設定し、領域指定機能を有効にする。これにより、符号量制御方式は、指定領域の量子化パラメータを指定領域外の量子化パラメータよりも高画質となるような値とするような制御方式となる。次に、Ｓ５では、システム制御部１０３は、指定領域の量子化パラメータを予め記憶部に保持しておいた固定値に一旦変更する。具体的には、システム制御部１０３は、制御部１１４が量子化パラメータ算出部１１２に対して、指定領域の量子化パラメータを上記固定値とするための設定変更の指示を出力するよう制御する。その後、システム制御部１０３は、設定された量子化パラメータ（指定領域に対して固定値、指定領域外に対して固定値あるいは固定値以下の値）に従って発生した符号量に基づいて、ＣＢＲ制御を継続する。ＣＢＲ制御の継続後も指定領域に対して再設定される量子化パラメータは、指定領域外に対して設定される量子化パラメータよりも高画質となるような値に設定される。
【００２８】
上記固定値は、カメラ１００の用途に応じて適宜決定することができる。なお、この固定値は、画像全体に適用してもネットワーク３００の帯域を圧迫するようなビットレートとなったり、フレーム落ちするほどのビットレートになったりしないことが確かめられている値とする。このように、固定値は、発生符号量が最大許容符号量以下となる量子化パラメータとする。ここで、最大許容符号量とは、ビットレートが、上述した帯域の圧迫やフレーム落ちといった不具合が生じない上限値である最大ビットレートとなる符号量である。つまり、発生符号量が最大許容符号量以下であれば、上述した不具合が生じないといえる。
固定値としては、ＣＢＲ制御を開始する際に設定される量子化パラメータの初期値を用いることができる。また、この固定値は、量子化パラメータの最低画質相当（もしくは画質低め相当）の値や、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータの値とすることもできる。固定値を、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータの値とした場合、指定領域外の量子化パラメータは、領域指定機能を有効にする前よりも同等か低画質となるような値に設定される。
【００２９】
Ｓ６では、システム制御部１０３は、領域指定機能を無効にするか否かを判断する。このＳ６では、システム制御部１０３は、ユーザからの指示に指定領域の設定解除の指示が含まれる場合に、領域指定機能を無効にすると判断する。そして、システム制御部１０３は、領域指定機能を無効にすると判断した場合にはＳ７に移行し、領域指定機能を有効のままにすると判断した場合にはＳ９に移行する。Ｓ７では、システム制御部１０３は、指定領域の設定を解除し、領域指定機能を無効にする。これにより、符号量制御方式は、画像全体の量子化パラメータが一定値となるような制御方式となる。次に、Ｓ８では、システム制御部１０３は、画像全体の量子化パラメータを予め記憶部に保持しておいた固定値に一旦変更する。具体的には、システム制御部１０３は、制御部１１４が量子化パラメータ算出部１１２に対して、指定領域の量子化パラメータを上記固定値とするための設定変更の指示を出力するよう制御する。システム制御部１０３は、量子化パラメータとして設定された固定値に従って発生した符号量に基づいて、ＣＢＲ制御を継続し、目標符号量となるように固定値からあらたな値に量子化パラメータを再設定する。
【００３０】
上記固定値は、カメラ１００の用途に応じて適宜決定することができる。なお、この固定値は、画像全体に適用してもネットワーク３００の帯域を圧迫するようなビットレートとなったり、フレーム落ちするほどのビットレートになったりしないことが確かめられている値とする。固定値としては、ＣＢＲ制御を開始する際に設定される量子化パラメータの初期値を用いることができる。また、この固定値は、量子化パラメータの最低画質相当（もしくは画質低め相当）の値や、領域指定機能を無効にする前に指定領域外に適用していた量子化パラメータの値とすることもできる。
【００３１】
Ｓ９では、システム制御部１０３は、指定領域を変更するか否かを判断する。このＳ９では、システム制御部１０３は、クライアント装置２００を介して受信したユーザからの指示に、指定領域の面積を変更する指示や指定領域の追加設定の指示が含まれる場合に、指定領域を変更すると判断する。そして、システム制御部１０３は、指定領域を変更すると判断した場合にはＳ１０に移行し、指定領域を変更しないと判断した場合にはＳ１２に移行する。Ｓ１０では、システム制御部１０３は、指定領域の量子化パラメータを予め記憶部に保持しておいた固定値に一旦変更する。さらにシステム制御部１０３は、指定領域外に適用する量子化パラメータを、固定値よりも同等か低画質となるような値に設定することで、瞬間的に符号量（ビットレート）が増大することを防ぐ。具体的には、システム制御部１０３は、制御部１１４が量子化パラメータ算出部１１２に対して、指定領域の量子化パラメータを上記固定値とするための設定変更の指示を出力するよう制御する。その後、システム制御部１０３は、設定された量子化パラメータ（指定領域に対して固定値、指定領域外に対して固定値あるいは固定値以下の値）に基づいて発生した符号量に基づいて、ＣＢＲ制御を継続する。ＣＢＲ制御の継続後も指定領域に対して再設定される量子化パラメータは、指定領域外に対して設定される量子化パラメータよりも高画質となるような値に設定される。上記固定値としては、ＣＢＲ制御を開始する際に設定される量子化パラメータの初期値を用いることができる。また、固定値は、量子化パラメータの最低画質相当（もしくは画質低め相当）の値や、指定領域を変更する前に指定領域外に適用していた量子化パラメータの値とすることもできる。次に、Ｓ１１では、システム制御部１０３は、指定領域をユーザが指定した指定領域に変更する。
【００３２】
Ｓ１２では、システム制御部１０３は、クライアント装置２００を介して受信した指示がカメラ１００の撮影方向あるいはズーム倍率の制御（ＰＴＺ制御）を実行する指示であるか否かを判断する。このＳ１２では、システム制御部１０３は、受信した指示に、ＰＴＺ制御の指示が含まれる場合に、ＰＴＺ制御を実行すると判断する。そして、システム制御部１０３は、ＰＴＺ制御を実行すると判断した場合にはＳ１３に移行し、ＰＴＺ制御を実行しないと判断した場合にはそのまま設定変更処理を終了する。Ｓ１３では、システム制御部１０３は、指定領域の量子化パラメータを予め記憶部に保持しておいた固定値に一旦変更する。具体的には、システム制御部１０３は、制御部１１４が量子化パラメータ算出部１１２に対して、指定領域の量子化パラメータを上記固定値とするための設定変更の指示を出力するよう制御する。すなわち、カメラ１００のＰＴＺ制御に応じて画角が変更されることにより、画角内の指定領域の大きさが増加する可能性がある。その場合、指定領域の量子化パラメータを適用してしまうと符号量が増大することが想定されるが、指定領域の量子化パラメータを一旦固定値とすることにより、符号量の増大を防ぐことができる。図９は、このような場合の一例を示している。図９に示すように、カメラの撮影方向が変更された場合、その変更先の画角内に大きいサイズの指定領域が存在する可能性がある。この場合、指定領域の量子化パラメータを一旦固定値（Ｑ＝４２）とすることによって符号量の増大を防ぐ。なお、上記固定値としては、ＣＢＲ制御を開始する際に設定される量子化パラメータの初期値を用いることができる。また、この固定値は、量子化パラメータの最低画質相当（もしくは画質低め相当）の値や、ＰＴＺ制御を実行する前に指定領域外に適用していた量子化パラメータの値とすることもできる。次に、Ｓ１４では、システム制御部１０３は、レンズ制御部１０５やパンチルト制御部１０８に対し、パン・チルト・ズーム動作の指示を行うことでＰＴＺ制御を実行する。
【００３３】
このように、本実施形態では、領域指定機能における指定領域の設定に変更があり、指定領域が変化する場合に、量子化パラメータが予め設定された固定値に一旦変更される。具体的には、ＣＢＲ制御中に領域指定機能における指定領域の設定が解除される場合や、ＣＢＲ制御中に領域指定機能における指定領域が新たに設定される場合に、指定領域の設定に変更があると判断される。さらに、ＣＢＲ制御中で且つ領域指定機能の実行中に、指定領域の面積が変更される場合や、撮像方向および画角の少なくとも一方が変更される場合（ＰＴＺ制御が行われる場合）にも、指定領域の設定に変更があると判断される。これにより、ビットレートが瞬間的に大きくなりすぎることを防止することができる。以下、この点について説明する。
【００３４】
まず、ＣＢＲ制御中に領域指定機能を有効にする場合について考える。領域別画質制御として、領域指定機能の有効への切り替え時に、指定領域の量子化パラメータを、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータよりも高画質な値に設定する制御方式が考えられる。この場合、指定領域の面積が大きいほど、符号量は大きくなる。そのため、指定領域の面積によってはビットレートが瞬間的に非常に大きくなり、利用可能帯域をオーバーしてフレーム落ちするおそれが生じる。
【００３５】
これに対して、本実施形態では、ＣＢＲ制御中に領域指定機能を有効にする場合、指定領域の量子化パラメータを予め設定した固定値に一旦変更する。そして、その固定値は、上述したように、画像全体に適用してもネットワーク３００の帯域を圧迫したり、フレーム落ちするほどのビットレートになったりしないことが確かめられている値とする。このように、ＣＢＲ制御中に領域指定機能を有効にする場合、指定領域の量子化パラメータを、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータよりも高画質な値とするのではなく、上記固定値とする。したがって、領域指定機能を有効に切り替えたときに、ビットレートが急激に大きくなる事態を回避することができる。
【００３６】
次に、ＣＢＲ制御中に領域指定機能を無効にする場合について考える。領域別画質制御として、領域指定機能の有効への切り替え時に、指定領域の量子化パラメータを変えず、指定領域外の量子化パラメータを、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータよりも低画質となるような値とする制御方式が考えられる。この場合、領域指定機能を有効にした後のＣＢＲ制御により、指定領域の量子化パラメータは、領域指定機能を有効にする前のＣＢＲ制御中に画像全体に適用していた量子化パラメータよりも高画質な値となる。また、指定領域外の量子化パラメータは、領域指定機能を有効にする前のＣＢＲ制御中に画像全体に適用していた量子化パラメータよりも低画質となるような値となる。そして、指定領域の量子化パラメータは、指定領域の面積が小さいほど高画質な値となる。そのため、この状態から領域指定機能を無効にしたとき、画像全体の量子化パラメータを、領域指定機能を無効にする前に指定領域に適用していた量子化パラメータとすると、画像全体の量子化パラメータが非常に高画質な値に切り替わってしまう。その結果、ビットレートが瞬間的に非常に大きくなってしまう。
【００３７】
これに対して、本実施形態では、ＣＢＲ制御中に領域指定機能を無効にする場合、画像全体の量子化パラメータを予め設定した固定値に一旦変更する。そして、その固定値は、上述したように、画像全体に適用してもネットワーク３００の帯域を圧迫したり、フレーム落ちするほどのビットレートになったりしないことが確かめられている値とする。このように、ＣＢＲ制御中に領域指定機能を無効にする場合、画像全体の量子化パラメータを、領域指定機能を無効にする前に指定領域に適用していた量子化パラメータではなく、上記固定値とする。したがって、領域指定機能を無効に切り替えたときに、ビットレートが急激に大きくなる事態を回避することができる。
【００３８】
さらに、ユーザが指定領域の面積を大きくする変更指示を行った場合や、ＰＴＺ制御により指定領域の面積が大きくなる場合、ＣＢＲ制御中にもかかわらずビットレートが瞬間的に非常に大きくなり得る。そこで、本実施形態では、ＣＢＲ制御中で且つ領域指定機能を実行中である場合に、指定領域が変更された場合や、ＰＴＺ制御が行われる場合には、指定領域の量子化パラメータを予め設定した固定値に一旦変更する。そして、その固定値は、上述したように、画像全体に適用してもネットワーク３００の帯域を圧迫したり、フレーム落ちするほどのビットレートになったりしないことが確かめられている値とする。これにより、高画質な指定領域の面積が急激に大きくなることに起因してビットレートが急激に大きくなる事態を回避することができる。
以上のように、本実施形態では、ＣＢＲ制御中に発生符号量が目標符号量を大きく逸脱してビットレートが急激に大きくなることを防止することができる。したがって、フレーム落ち等の不具合の発生を防止することができ、カメラ１００からクライアント装置２００へ安定して画像を送信することができる。
【００３９】
（第二の実施形態）
次に、本発明の第二の実施形態について説明する。
上述した第一の実施形態では、指定領域が変化する際に、量子化パラメータを一旦固定値に変更した。第二の実施形態では、指定領域が変化する際、量子化パラメータを固定値とすると共に、フレーム内符号化を行うＩピクチャ（Intra picture）を挿入する。
図６は、ＣＢＲ制御時におけるシステム制御部１０３の動作を示すフローチャートである。この図６の処理は、カメラ１００のＣＰＵ１１がプログラムを実行することによって実現することができる。図６の処理は、図５の処理にＳ２１〜Ｓ２４が追加されていることを除いては、図５の処理と同様である。したがって、以下、処理の異なる部分を中心に説明する。
Ｓ５において、システム制御部１０３が指定領域の量子化パラメータを固定値に変更した直後に、Ｓ２１において、システム制御部１０３は、Ｉピクチャを挿入する。本実施形態では、このように量子化パラメータを固定値に変更した直後にＩピクチャを挿入することにより、固定値に設定された量子化パラメータがＩピクチャに適用されるようにする。
【００４０】
同様に、Ｓ８、Ｓ１０およびＳ１３の直後にも、それぞれＳ２１と同様の処理であるＳ２２、Ｓ２３およびＳ２４を追加し、Ｉピクチャを挿入する処理を行う。
画像には、Ｉピクチャ、Ｐピクチャ（Predictive picture）、Ｂピクチャ（Bi-directional predictive picture）があるが、前後の画像とは関係なく１つの画像内だけで独立して符号化できるのはＩピクチャのみである。そのため、時間軸でみたときの映像のサイズに占めるＩピクチャの割合は、ＰピクチャやＢピクチャに比べて大きくなる。つまり、量子化パラメータによってトータルの映像サイズを制御するにあたり、最も寄与する画像がＩピクチャである。したがって、固定値である量子化パラメータを適用する画像がＩピクチャ以外である場合、想定していた映像サイズ（符号量）にならない場合がある。
本実施形態では、量子化パラメータを固定値に変更した直後に、フレーム内符号化を行うＩピクチャを挿入し、固定値に設定された量子化パラメータをＩピクチャに適用する。これにより、映像サイズを想定通りのサイズに変更することが可能となる。
【００４１】
（第三の実施形態）
次に、本発明の第三の実施形態について説明する。
上述した第一および第二の実施形態では、指定領域が変化する際に、量子化パラメータを固定値とした。第三の実施形態では、指定領域が変化する際、量子化パラメータを指定領域の面積の変化量に応じた値に変更する。
図７は、ＣＢＲ制御時におけるシステム制御部１０３の動作を示すフローチャートである。この図７の処理は、カメラ１００のＣＰＵ１１がプログラムを実行することによって実現することができる。
まずＳ３１において、システム制御部１０３は、ＣＢＲ制御中であるか否かを判断し、ＣＢＲ制御中ではないと判断した場合にはそのまま図７に示す処理を終了する。一方、システム制御部１０３は、ＣＢＲ制御中であると判断するとＳ３２に移行し、指定領域に変化があるか否かを判断する。本実施形態では、システム制御部１０３は、領域指定機能の有効／無効の切り替えや、ユーザによる指定領域の面積の変更、ユーザによる指定領域の追加、ＰＴＺ制御の実行が行われるとき、指定領域の面積が変化すると判断する。そして、システム制御部１０３は、指定領域に変化はないと判断した場合にはそのまま図７に示す処理を終了し、指定領域が変化すると判断した場合にはＳ３３に移行する。
【００４２】
Ｓ３３では、システム制御部１０３は、まず、指定領域の面積の変化量（面積差）を算出する。具体的には、システム制御部１０３は、変化前の指定領域の面積と変化後の指定領域の面積との差を、指定領域の面積の変化量として算出する。なお、領域指定機能を有効から無効に切り替える場合、変化後の指定領域の面積は画像全体の面積として上記変化量を算出する。また、領域指定機能を無効から有効に切り替える場合、変化前の指定領域の面積は０として上記変化量を算出する。そして、システム制御部１０３は、指定領域の面積の変化量と予め記憶された所定の閾値とを比較し、指定領域の面積の変化量が閾値以下の場合はＳ３４に移行し、指定領域の面積の変化量が閾値を超える場合はＳ３５に移行する。ここで、上記所定の閾値は、カメラ１００の用途に応じて決定することができる。この閾値は、ネットワーク３００の帯域を圧迫したり、フレーム落ちするほどのビットレートになったりしないことが確かめられている面積差に設定する。
【００４３】
Ｓ３４では、システム制御部１０３は、符号量の急激な増大のおそれがないので、現状の設定されている量子化パラメータを維持する。なお、通常の量子化パラメータに設定してもよい。具体的には、システム制御部１０３は、領域指定機能を有効から無効に切り替える場合、画像全体の量子化パラメータを、領域指定機能を無効にする前に指定領域に適用していた量子化パラメータに設定する。また、システム制御部１０３は、領域指定機能を無効から有効に切り替える場合、指定領域の量子化パラメータを、領域指定機能を有効にする前に画像全体に適用していた量子化パラメータよりも高画質な値に設定する。さらに、領域指定機能が有効であるときに指定領域の面積を変更する場合や、ＰＴＺ制御を行う場合には、変化後の指定領域の量子化パラメータを変化前の指定領域の量子化パラメータのままに設定する。
【００４４】
Ｓ３５では、システム制御部１０３は、指定領域の面積の変化量に応じて量子化パラメータを変更する。本実施形態では、システム制御部１０３は、横軸に面積差、縦軸に量子化パラメータをとった導出テーブルを参照して、面積差に応じた量子化パラメータを導出する。具体的には、導出テーブルは、面積差が閾値に等しいときの量子化パラメータを上述した通常適用される値とし、面積差が画像全体の面積のときの量子化パラメータを固定値として、面積差が大きいほど量子化パラメータが線形に大きくなるように設定する。上記固定値は、ＣＢＲ制御を開始する際に設定される量子化パラメータの初期値を用いてもよいし、量子化パラメータの最低画質相当（もしくは画質低め相当）の値や、指定領域外の量子化パラメータの値としてもよい。なお、量子化パラメータの導出方法は、上記の方法に限定されるものではなく、カメラ１００の特徴に合わせて種々の導出方法を用いることができる。
【００４５】
以上のように、本実施形態では、システム制御部１０３は、指定領域の設定に変更があるか否かを判断し、指定領域の設定に変更があると判断した直後の符号化に用いる量子化パラメータを、指定領域の面積の変化量に応じて変更する。具体的には、システム制御部１０３は、指定領域の面積の変化量が所定の閾値を超える場合にのみ、量子化パラメータを通常適用される値に対して変更する処理を行う。また、システム制御部１０３は、面積の変化量が所定の閾値を越える場合、面積の変化量が小さいほど量子化パラメータを固定値よりも小さい値（高画質な値）に変更する。したがって、なるべく画質を落とさずに、ビットレートの上昇を適切に抑えることができる。
なお、上記第三の実施形態においては、面積差に応じて量子化パラメータを変更する場合について説明したが、指定領域の面積の変化量が所定の閾値を超える場合に、上記変化量にかかわらず量子化パラメータを固定値に変更してもよい。この場合にも、不必要に画質を落とさずに、ビットレートの上昇を抑えることができる。
【００４６】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４７】
１００…ネットワークカメラ、１０１…撮像部、１０２…画像処理部、１０３…システム制御部、１０４…レンズ駆動部、１０５…レンズ制御部、１０６…パン駆動部、１０７…チルト駆動部、１０８…パンチルト制御部、１０９…通信部、１１０…画像符号化装置、２００…クライアント装置、３００…ネットワーク
【図１】
0006537396.tif 000002
【図２】
0006537396.tif 000003
【図３】
0006537396.tif 000004
【図４】
0006537396.tif 000005
【図５】
0006537396.tif 000006
【図６】
0006537396.tif 000007
【図７】
0006537396.tif 000008
【図８】
0006537396.tif 000009
【図９】
0006537396.tif 000010