(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-22
(45)【発行日】2024-07-30
(54)【発明の名称】符号化システム、符号化方法及び符号化プログラム
(51)【国際特許分類】
H04N 19/85 20140101AFI20240723BHJP
H04N 19/126 20140101ALI20240723BHJP
H04N 19/136 20140101ALI20240723BHJP
H04N 19/17 20140101ALI20240723BHJP
【FI】
H04N19/85
H04N19/126
H04N19/136
H04N19/17
(21)【出願番号】P 2022570911
(86)(22)【出願日】2020-12-24
(86)【国際出願番号】 JP2020048568
(87)【国際公開番号】W WO2022137463
(87)【国際公開日】2022-06-30
【審査請求日】2023-06-14
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】久保田 智規
(72)【発明者】
【氏名】中尾 鷹詔
【審査官】岩井 健二
(56)【参考文献】
【文献】国際公開第2020/080139(WO,A1)
【文献】特開2016-046707(JP,A)
【文献】特開2016-025494(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 ー 19/98
(57)【特許請求の範囲】
【請求項1】
認識対象を含む第1画像
の前記認識対象を含まない領域について、認識処理の際の認識精度への影響度に応じた
第1圧縮率となる量子化値
を算出する算出部と、
前記第1画像より後に取得される第2画像
に対して
、算出された量子化値を設定する際、前記第1画像
のうちの一部である探索用の帯状領域について、前記第1圧縮率よりも低い第2圧縮率となる量子化値を設定する設定部と、
前記設定部により設定された量子化値を用いて前記第2画像を符号化する符号化部と
を有する符号化システム。
【請求項2】
前記帯状領域は、画像内を複数の
帯状の領域に分割した場合の、少なくとも1つの
帯状領域
のことであり、
前記符号化システムは、
前記帯状領域を前記複数の帯状の領域の中から予め定められた順序で順次選択する特定部を更に有し、
前記設定部は、
前記
複数の帯状の領域のうち、前記特定部により選択された
前記帯状領域について、前記
第1圧縮率よりも低い
第2圧縮率となる量子化値を設定する、請求項1に記載の符号化システム。
【請求項3】
前記設定部は、
前記算出部により
算出された
量子化値を設定する際、前記算出部により
算出された
量子化値を低圧縮方向に補正し、補正後の量子化値を設定する、請求項
2に記載の符号化システム。
【請求項4】
認識対象を含む第1画像
の前記認識対象を含まない領域について、認識処理の際の認識精度への影響度に応じた
第1圧縮率となる量子化値
を算出し、
前記第1画像より後に取得される第2画像
に対して
、算出された量子化値を設定する際、前記第1画像
のうちの一部である探索用の帯状領域について、前記第1圧縮率よりも低い第2圧縮率となる量子化値を設定し、
前記設定された量子化値を用いて前記第2画像を符号化する、
処理をコンピュータが実行する符号化方法。
【請求項5】
認識対象を含む第1画像
の前記認識対象を含まない領域について、認識処理の際の認識精度への影響度に応じた
第1圧縮率となる量子化値
を算出し、
前記第1画像より後に取得される第2画像
に対して
、算出された量子化値を設定する際、前記第1画像
のうちの一部である探索用の帯状領域について、前記第1圧縮率よりも低い第2圧縮率となる量子化値を設定し、
前記設定された量子化値を用いて前記第2画像を符号化する、
処理をコンピュータに実行させるための符号化プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化システム、符号化方法及び符号化プログラムに関する。
【背景技術】
【0002】
一般に、画像データを記録または伝送する際には、符号化処理によりデータサイズを小さくすることで、記録コストや伝送コストの削減を図る。
【0003】
一方で、AI(Artificial Intelligence)による認識処理に利用する目的で、画像データを記録または伝送する場合においては、認識対象をAIが認識できる限界まで圧縮率を上げて(つまり、限界圧縮率で)符号化処理を行うことが考えられる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2020-068008号公報
【文献】特開2009-117997号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、限界圧縮率の算出に時間を要する場合、動画像データをリアルタイムに伝送しようとすると、限界圧縮率の算出に用いるフレーム画像と、算出した限界圧縮率を適用するフレーム画像とが異なることになる。この結果、限界圧縮率の算出に用いるフレーム画像には含まれていない認識対象が、限界圧縮率を適用するフレーム画像に新たに含まれるといったケースが生じ得る。
【0006】
このようなケースでは、当該新たな認識対象に認識対象外の限界圧縮率を適用して符号化処理が行われるため、復号時に当該新たな認識対象を認識するのが困難となる。
【0007】
一つの側面では、動画像の符号化処理に起因する認識精度への影響を抑えることを目的とする。
【課題を解決するための手段】
【0008】
一態様によれば、符号化システムは、
認識対象を含む第1画像の前記認識対象を含まない領域について、認識処理の際の認識精度への影響度に応じた第1圧縮率となる量子化値を算出する算出部と、
前記第1画像より後に取得される第2画像に対して、算出された量子化値を設定する際、前記第1画像のうちの一部である探索用の帯状領域について、前記第1圧縮率よりも低い第2圧縮率となる量子化値を設定する設定部と、
前記設定部により設定された量子化値を用いて前記第2画像を符号化する符号化部とを有する。
【発明の効果】
【0009】
動画像の符号化処理に起因する認識精度への影響を抑えることができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、符号化システムのシステム構成の一例を示す第1の図である。
【
図2】
図2は、エッジ装置及びサーバ装置のハードウェア構成の一例を示す図である。
【
図3】
図3は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第1の図である。
【
図4】
図4は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第2の図である。
【
図5】
図5は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第3の図である。
【
図6】
図6は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第4の図である。
【
図7】
図7は、解析部の機能構成の一例を示す図である。
【
図9】
図9は、量子化値生成部の処理の具体例を示す図である。
【
図11】
図11は、符号化処理の流れを示す第1のフローチャートである。
【
図12】
図12は、符号化システムのシステム構成の一例を示す第2の図である。
【
図13】
図13は、動画像の各フレーム画像に適用される修正量子化値マップと、認識結果との関係を示す第1の図である。
【
図14】
図14は、動画像の各フレーム画像に適用される修正量子化値マップと、認識結果との関係を示す第2の図である。
【
図15】
図15は、符号化処理の流れを示す第2のフローチャートである。
【発明を実施するための形態】
【0011】
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0012】
[第1の実施形態]
<符号化システムのシステム構成>
はじめに、第1の実施形態に係る符号化システムのシステム構成について説明する。
図1は、符号化システムのシステム構成の一例を示す第1の図である。
図1に示すように、符号化システム100は、撮像装置110、エッジ装置120、サーバ装置130を有する。符号化システム100において、エッジ装置120とサーバ装置130とは、ネットワークを介して通信可能に接続される。
【0013】
撮像装置110は、所定のフレーム周期で撮影を行い、動画像データをエッジ装置120に送信する。なお、動画像データには、少なくとも認識処理の対象となる物体(認識対象)が含まれるフレーム画像と、認識処理の対象となる物体(認識対象)が含まれない(認識対象外の物体のみが含まれる)フレーム画像とが含まれる。更には、動画像データには物体を含まないフレーム画像が含まれてもよい。
【0014】
エッジ装置120には符号化プログラムがインストールされており、当該符号化プログラムが実行されることで、エッジ装置120は、符号化部121として機能する。
【0015】
符号化部121は、サーバ装置130から指示された量子化値(量子化ステップともいう。以下同様)を設定して、動画像データの各フレーム画像を符号化し、符号化データを生成する。また、符号化部121は、生成した符号化データをサーバ装置130に送信する。
【0016】
なお、符号化部121は、サーバ装置130から、符号化時の処理単位であるブロックごとの量子化値が指示される。ブロックごとに指示される量子化値の集合を、以下では、「量子化値マップ」と称す。
【0017】
本実施形態において、符号化部121は、サーバ装置130から更新量子化値マップ(詳細は後述)を取得し、当該更新量子化値マップを用いて動画像データの各フレーム画像を符号化する。
【0018】
サーバ装置130には、復号プログラムがインストールされており、当該復号プログラムが実行されることで、サーバ装置130は、復号部131、解析部132、更新部133として機能する。
【0019】
復号部131は、エッジ装置120から送信された符号化データを復号し、復号データを生成する。復号部131は、生成した復号データを、復号データ格納部134に格納する。また、復号部131は、生成した復号データを、解析部132に通知する。
【0020】
解析部132は、復号部131から通知された復号データを解析し、量子化値マップを生成する。具体的には、解析部132は、復号データに対して認識処理を行うことで、認識処理の際の復号データの各領域の認識精度への影響度を算出する。また、解析部132は、各領域の影響度を、ブロックごとに集計し、集計結果に応じた量子化値を算出することで、認識精度への影響度に応じた量子化値マップ140を生成する。
【0021】
なお、
図1の量子化値マップ140において、白色矩形の領域は、対応する復号データにおいて、
・認識対象が認識された領域、かつ、
・認識対象を認識するための限界圧縮率となる量子化値、あるいは、認識対象を認識するための限界圧縮率に到達するまでの途中過程の量子化値が設定される領域、
である。また、量子化値マップ140において、斜線領域は、対応する復号データにおいて、
・認識対象が認識されなかった領域、かつ、
・認識対象外の限界圧縮率(認識対象を認識するための限界圧縮率よりも高い限界圧縮率)、あるいは、認識対象外の限界圧縮率に到達するまでの途中過程の量子化値が設定される領域、
である。
【0022】
更新部133は、量子化値マップ140を生成する際に用いられた復号データには含まれていない新たな認識対象が、量子化値マップ140が適用される次のフレーム画像に含まれる可能性があることを考慮し、探索用量子化値マップを生成する。
【0023】
具体的には、更新部133は、量子化値マップ140において、斜線領域に設定された量子化値よりも低い圧縮率となる量子化値が、斜線領域の一部に設定されるよう、探索用量子化値マップ151~153を生成する。
【0024】
更新部133では、解析部132から量子化値マップ140が通知されるごとに、通知された量子化値マップ140に、探索用量子化値マップ151~153のいずれかを重畳することで、更新量子化値マップ161~163のいずれかを生成する。
【0025】
なお、探索用量子化値マップ151~153において、網掛け矩形の領域は、量子化値マップ140の斜線領域よりも低い圧縮率となる量子化値が設定される領域である。
図1の例は、
・フレーム画像の上段部の帯状領域(特定領域の一例)の位置に、量子化値マップ140の斜線領域よりも低い圧縮率となる量子化値が設定された探索用量子化値マップ151、
・フレーム画像の中段部の帯状領域の位置に、量子化値マップ140の斜線領域よりも低い圧縮率となる量子化値が設定された探索用量子化値マップ152、
・フレーム画像の下段部の帯状領域の位置に、量子化値マップ140の斜線領域よりも低い圧縮率となる量子化値が設定された探索用量子化値マップ153、
のいずれかが生成される様子を示している。
【0026】
なお、更新部133では、量子化値マップ140に、探索用量子化値マップ151~153を順次重畳する際、例えば、ブロックごとに、量子化値の低い方を選択して、更新量子化値マップを生成する。つまり、更新部133では、認識対象の領域に対応する領域以外の領域のうちの帯状領域(=特定領域)に含まれるブロックの量子化値を下げて設定する。
【0027】
また、更新部133では、生成した更新量子化値マップ161~163のいずれかを、エッジ装置120に送信する。
【0028】
なお、上記白色矩形の領域は、認識結果や限界圧縮率の導出結果により決まる形状であれば、矩形に限定されず、矩形以外の形状であってもよい。また、網掛け矩形の領域の形状、配置等は、
図1の例に限定されない。
【0029】
<エッジ装置及びサーバ装置のハードウェア構成>
次に、エッジ装置120及びサーバ装置130のハードウェア構成について説明する。
図2は、エッジ装置及びサーバ装置のハードウェア構成の一例を示す図である。
【0030】
このうち、
図2の2aは、エッジ装置のハードウェア構成の一例を示す図である。エッジ装置120は、プロセッサ201、メモリ202、補助記憶装置203、I/F(Interface)装置204、通信装置205、ドライブ装置206を有する。なお、エッジ装置120の各ハードウェアは、バス207を介して相互に接続されている。
【0031】
プロセッサ201は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の各種演算デバイスを有する。プロセッサ201は、各種プログラム(例えば、符号化プログラム等)をメモリ202上に読み出して実行する。
【0032】
メモリ202は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ201とメモリ202とは、いわゆるコンピュータを形成し、プロセッサ201が、メモリ202上に読み出した各種プログラムを実行することで、当該コンピュータは各種機能を実現する。
【0033】
補助記憶装置203は、各種プログラムや、各種プログラムがプロセッサ201によって実行される際に用いられる各種データを格納する。
【0034】
I/F装置204は、外部装置の一例である撮像装置110と、エッジ装置120とを接続する接続デバイスである。
【0035】
通信装置205は、他の装置の一例であるサーバ装置130と通信するための通信デバイスである。
【0036】
ドライブ装置206は記録媒体210をセットするためのデバイスである。ここでいう記録媒体210には、CD-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体210には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
【0037】
なお、補助記憶装置203にインストールされる各種プログラムは、例えば、配布された記録媒体210がドライブ装置206にセットされ、該記録媒体210に記録された各種プログラムがドライブ装置206により読み出されることでインストールされる。あるいは、補助記憶装置203にインストールされる各種プログラムは、通信装置205を介してネットワークからダウンロードされることで、インストールされてもよい。
【0038】
一方、
図2の2bは、サーバ装置130のハードウェア構成の一例を示す図である。なお、サーバ装置130のハードウェア構成は、エッジ装置120のハードウェア構成と概ね同じであるため、ここでは、エッジ装置120との相違点を中心に説明する。
【0039】
プロセッサ221は、例えば、復号プログラム等をメモリ222上に読み出して実行する。
【0040】
I/F装置224は、サーバ装置130に対する操作を、操作装置231を介して受け付ける。また、I/F装置224は、サーバ装置130による処理の結果を出力し、表示装置232を介して表示する。また、通信装置225は、エッジ装置120と通信する。
【0041】
<更新量子化値マップと認識結果との関係(1)>
次に、動画像の各フレーム画像に適用される更新量子化値マップ(量子化値マップ及び探索用量子化値マップ)と、対応する復号データに対する認識処理の結果との関係について説明する。
図3は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第1の図である。
【0042】
図3において、縦軸300は、時間軸を表しており、
図3の例は、エッジ装置120が、時刻T1~T4に、それぞれ、動画像のフレーム画像311~341を取得したことを示している。なお、
図3の例の場合、時刻T1では、認識対象として2名の人物がフレーム画像311に含まれていたところ、時刻T2~T4では、認識対象として3名の人物がフレーム画像321、331、341に含まれている。
【0043】
また、
図3の例は、時刻T1に取得されたフレーム画像311(第1画像の一例)に対して、エッジ装置120が、量子化値マップ312に探索用量子化値マップ313を重畳した更新量子化値マップを用いて、符号化処理を行う様子を示している。更に、
図3の例は、フレーム画像311に対して符号化処理を行うことで生成された符号化データを、サーバ装置130が復号し、復号データに対して認識処理を行うことで、認識結果314が得られた様子を示している。
【0044】
図3の例によれば、フレーム画像311内の認識対象(2名の人物)が位置する領域に対応する領域の量子化値が低く設定された量子化値マップ312が用いられることで、復号データにおいては、認識対象の領域が精度よく再現されることになる。この結果、認識結果314に示すように、サーバ装置130では、復号データにおいて認識対象(2名の人物)を認識することができる。
【0045】
なお、この場合、サーバ装置130では、認識結果314に応じて量子化値マップを生成する。
図3の例は、認識結果314に応じて量子化値マップ322が生成された様子を示している。
【0046】
また、
図3の例は、時刻T2に取得されたフレーム画像321(第2画像の一例)に対して、エッジ装置120が、量子化値マップ322に探索用量子化値マップ323を重畳した更新量子化値マップを用いて、符号化処理を行う様子を示している。更に、
図3の例は、フレーム画像321に対して符号化処理を行うことで生成された符号化データを、サーバ装置130が復号し、復号データに対して認識処理を行うことで、認識結果324が得られた様子を示している。
【0047】
図3の例の場合、フレーム画像321内の認識対象(3名の人物)が位置する領域の一部の領域(新たな認識対象が位置する領域)の量子化値が低く設定されていない量子化値マップ322が用いられることになる。
【0048】
しかしながら、
図3の例の場合、探索用量子化値マップ323は、フレーム画像321の上段部の帯状領域の量子化値が低く設定されている。このため、復号データにおいて、新たな認識対象が位置する領域は、精度よく再現されることになる。この結果、サーバ装置130では、復号データにおいて認識対象(3名の人物)を認識することができる(認識結果324参照)。
【0049】
なお、この場合、サーバ装置130では、認識結果324に応じて量子化値マップを生成する。
図3の例は、認識結果324に応じて量子化値マップ332が生成された様子を示している。
【0050】
また、
図3の例は、時刻T3に取得されたフレーム画像331に対して、エッジ装置120が、量子化値マップ332に探索用量子化値マップ333を重畳した更新量子化値マップを用いて、符号化処理を行う様子を示している。更に、
図3の例は、フレーム画像331に対して符号化処理を行うことで生成された符号化データを、サーバ装置130が復号し、復号データに対して認識処理を行うことで、認識結果334が得られた様子を示している。
【0051】
図3の例によれば、フレーム画像331内の認識対象(3名の人物)が位置する領域に対応する領域の量子化値が低く設定された量子化値マップ332が用いられることで、復号データにおいては、認識対象の領域が精度よく再現されることになる。この結果、認識結果334に示すように、サーバ装置130では、復号データにおいて認識対象(3名の人物)を認識することができる。
【0052】
なお、この場合、サーバ装置130では、認識結果334に応じて量子化値マップを生成する。
図3の例は、認識結果334に応じて量子化値マップ342が生成された様子を示している。
【0053】
また、
図3の例は、時刻T4に取得されたフレーム画像341に対して、エッジ装置120が、量子化値マップ342に探索用量子化値マップ343を重畳した更新量子化値マップを用いて、符号化処理を行う様子を示している。更に、
図3の例は、フレーム画像341に対して符号化処理を行うことで生成された符号化データを、サーバ装置130が復号し、復号データに対して認識処理を行うことで、認識結果344が得られた様子を示している。
【0054】
図3の例によれば、フレーム画像341内の認識対象(3名の人物)が位置する領域に対応する領域の量子化値が低く設定された量子化値マップ342が用いられることで、復号データにおいては、認識対象の領域が精度よく再現されることになる。この結果、認識結果344に示すように、サーバ装置130では、復号データにおいて認識対象(3名の人物)を認識することができる。
【0055】
このように、探索用量子化値マップを用いることで、新たな認識対象を認識することが可能となる。
【0056】
<更新量子化値マップと認識結果との関係(2)>
次に、動画像の各フレーム画像に適用される更新量子化値マップ(量子化値マップ及び探索用量子化値マップ)と、対応する復号データに対する認識処理の結果との関係について、
図3とは異なる具体例を用いて説明する。
【0057】
図4は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第2の図である。
図3との相違点は、各時刻における探索用量子化値マップである。
【0058】
具体的には、
図3では、時刻T1において、斜線領域よりも低い量子化値が設定される帯状領域が下段部に位置していたのに対して、
図4では、時刻T1において、中段部に位置している。同様に、
図3では、時刻T2において、斜線領域よりも低い量子化値が設定される帯状領域が上段部に位置していたのに対して、
図4では、時刻T2において、下段部に位置している。同様に、
図3では、時刻T3において、斜線領域よりも低い量子化値が設定される帯状領域が中段部に位置していたのに対して、
図4では、時刻T3において、上段部に位置している。同様に、
図3では、時刻T4において、斜線領域よりも低い量子化値が設定される帯状領域が下段部に位置していたのに対して、
図4では、時刻T4において、中段部に位置している。
【0059】
このように、各時刻に重畳される探索用量子化値マップが異なることで、更新量子化値マップも異なってくる。具体的には、
図4の例の場合、時刻T2に取得されたフレーム画像321に対しては、量子化値マップ422に探索用量子化値マップ423が重畳された更新量子化値マップを用いて、符号化処理が行われることになる。
【0060】
ここで、
図4の例によれば、時刻T2においては、フレーム画像321内の認識対象(3名の人物)が位置する領域の一部の領域(新たな認識対象が位置する領域)の量子化値が低く設定されていない量子化値マップ422が用いられることになる。
【0061】
加えて、
図4の例によれば、探索用量子化値マップ423は、フレーム画像321の下段部の帯状領域の量子化値が低く設定されている。このため、復号データにおいて、新たな認識結果が位置する領域は、精度よく再現されないことになる。この結果、サーバ装置130では、復号データにおいて、認識対象(3名の人物)のうち、新たな認識対象については、認識することができない(認識結果424参照)。
【0062】
なお、この場合、サーバ装置130では、認識結果424に応じて量子化値マップを生成する。
図4の例は、認識結果424に応じて量子化値マップ432が生成された様子を示している。
【0063】
また、
図4の例は、時刻T3に取得されたフレーム画像331に対して、エッジ装置120が、量子化値マップ432に探索用量子化値マップ433を重畳した更新量子化値マップを用いて、符号化処理を行う様子を示している。更に、
図4の例は、フレーム画像331に対して符号化処理を行うことで生成された符号化データを、サーバ装置130が復号し、復号データに対して認識処理を行うことで、認識結果434が得られた様子を示している。
【0064】
ここで、
図4の例によれば、時刻T3においては、フレーム画像331内の認識対象(3名の人物)が位置する領域の一部の領域(新たな認識対象が位置する領域)の量子化値が低く設定されていない量子化値マップ432が用いられることになる。
【0065】
しかしながら、
図4の例の場合、探索用量子化値マップ433は、フレーム画像331の上段部の帯状領域の量子化値が低く設定されている。このため、復号データにおいて、新たな認識対象が位置する領域は、精度よく再現されることになる。この結果、サーバ装置130では、復号データにおいて、認識対象(3名の人物)を認識することができる(認識結果434参照)。
【0066】
なお、この場合、サーバ装置130では、認識結果434に応じて量子化値マップを生成する。
図4の例は、認識結果434に基づいて、量子化値マップ442が生成された様子を示している。以降、時刻T4においても、
図3の時刻T3における処理と同様の処理が行われる。
【0067】
このように、探索用量子化値マップを用いることで、1フレーム画像遅れて、新たな認識対象を認識することが可能となる。
【0068】
<更新量子化値マップと認識結果との関係(3)>
次に、動画像の各フレーム画像に適用される更新量子化値マップ(量子化値マップ及び探索用量子化値マップ)と、対応する復号データに対する認識処理の結果との関係について、
図3、
図4とは異なる具体例を用いて説明する。
【0069】
図5は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第3の図である。
図3、
図4との相違点は、各時刻における探索用量子化値マップである。
【0070】
図5に示すように、新たな認識対象が出現したタイミング及び位置と、各時刻において重畳される探索用量子化値マップとの関係によっては、最大で、2つのフレーム画像について、認識対象が正しく認識できないことになる(認識結果524、534参照)。
【0071】
一方で、時刻T4のフレーム画像341については、認識対象を正しく認識することができる(認識結果544参照)。つまり、本実施形態における探索用量子化値マップによれば、解析部132は、新たな認識対象が出現してから、3フレーム画像以内に当該新たな認識対象を認識することが可能となる。
【0072】
<更新量子化値マップと認識結果との関係(4)>
次に、動画像の各フレーム画像に適用される更新量子化値マップ(量子化値マップ及び探索用量子化値マップ)と、対応する復号データに対する認識処理の結果との関係について、
図3~
図5とは異なる具体例を用いて説明する。
【0073】
図6は、動画像の各フレーム画像に適用される更新量子化値マップと、認識結果との関係を示す第4の図である。
図4との相違点は、各時刻におけるフレーム画像である。
【0074】
具体的には、
図4では、時刻T2において、新たな認識対象が出現したのに対して、
図6では、時刻T2において、新たな物体(認識対象外の物体)が出現している点である。
【0075】
図6の例の場合、時刻T2に取得されたフレーム画像621に対して、エッジ装置120では、量子化値マップ622に探索用量子化値マップ623を重畳した更新量子化値マップを用いて、符号化処理を行うことになる。
【0076】
図6の例によれば、時刻T2においては、フレーム画像621内の認識対象(2名の人物)が位置する領域に対応する領域の量子化値が低く設定された量子化値マップ622が用いられる。このため、復号データにおいては、認識対象の領域が精度よく再現されることになる。
【0077】
一方で、
図6の例の場合、探索用量子化値マップ623は、フレーム画像621の下段部の帯状領域の量子化値が低く設定されている。このため、復号データにおいて、新たな物体(認識対象外の物体)が位置する領域も、精度よく再現されることになる。しかしながら、当該新たな物体は、認識対象外であるため、サーバ装置130において認識されない。この結果、サーバ装置130では、復号データにおいて認識対象(2名の人物)のみが認識されることになる(認識結果624参照)。
【0078】
なお、この場合、サーバ装置130では、認識結果624に応じて量子化値マップを生成する。
図6の例は、認識結果624に応じて量子化値マップ632が生成された様子を示している。
【0079】
また、
図6の例は、時刻T3に取得されたフレーム画像631に対して、エッジ装置120が、量子化値マップ632に探索用量子化値マップ633を重畳した更新量子化値マップを用いて、符号化処理を行う様子を示している。更に、
図6の例は、フレーム画像631に対して符号化処理を行うことで生成された符号化データを、サーバ装置130が復号し、復号データに対して認識処理を行うことで、認識結果634が得られた様子を示している。
【0080】
図6の例によれば、時刻T3においては、フレーム画像631内の認識対象(2名の人物)が位置する領域に対応する領域の量子化値が低く設定された量子化値マップ632が用いられる。このため、復号データにおいては、認識対象の領域が精度よく再現されることになる。
【0081】
また、
図6の例の場合、探索用量子化値マップ633は、フレーム画像631の上段部の帯状領域の量子化値が低く設定されている。このため、復号データにおいて、認識対象外の物体が位置する領域については、精度よく再現されない。この結果、サーバ装置130では、復号データにおいて、新たな物体(認識対象外の物体)が認識されることなく、認識対象(2名の人物)のみが認識されることになる。
【0082】
なお、この場合、サーバ装置130では、認識結果634に応じて量子化値マップを生成する。
図6の例は、認識結果634に応じて量子化値マップ642が生成された様子を示している。以降、時刻T4においても、時刻T3における処理と同様の処理が行われる。
【0083】
<解析部の機能構成>
次に、サーバ装置130の解析部132の機能構成について説明する。
図7は、解析部の機能構成の一例を示す図である。
図7に示すように、解析部132は、入力部710、CNN部720、重要特徴マップ生成部730、集計部740、量子化値生成部750、出力部760を有する。
【0084】
入力部710は、復号部131より復号データを取得する。入力部710は、取得した復号データをCNN部720に通知する。
【0085】
CNN部720は、学習済みモデルを有する。CNN部720は、復号データを入力することで、復号データに含まれる認識対象についての認識処理を行う。
【0086】
重要特徴マップ生成部730は、学習済みモデルが復号データに対して認識処理を行った際の認識結果に基づいて算出される誤差から、誤差逆伝播法を利用して重要特徴マップを生成する。
【0087】
重要特徴マップ生成部730では、例えば、BP(Back Propagation)法、GBP(Guided Back Propagation)法または選択的BP法を用いることで、重要特徴マップを生成する。
【0088】
なお、BP法は、認識結果が正解ラベルとなる復号データに対して認識処理を行うことで得たスコアから各ラベルの誤差(所定の基準スコアに対する誤差)を計算し、入力層まで逆伝播して得られる勾配の大小を画像化することで、特徴部分を可視化する方法である。また、GBP法は、勾配情報の正値のみを特徴部分として画像化することで、特徴部分を可視化する方法である。
【0089】
更に、選択的BP法は、正解ラベルの誤差のみを最大にしたうえで、BP法またはGBP法を用いて逆伝播する方法である。選択的BP法の場合、可視化される特徴部分は、正解ラベルのスコアにのみ影響を与える特徴部分となる。
【0090】
このように、重要特徴マップ生成部730では、BP法、GBP法または選択的BP法等の誤差逆伝播法による誤差逆伝播結果を用いる。これにより、重要特徴マップ生成部730では、復号データが入力されてから認識結果が出力されるまでのCNN部720内の各経路の信号の流れと強度とを解析することができる。この結果、重要特徴マップ生成部730によれば、入力された復号データのどの領域が、認識結果にどの程度影響を及ぼしているかを可視化することができる。
【0091】
なお、誤差逆伝播法による重要特徴マップの生成方法は、例えば、
「Selvaraju, Ramprasaath R., et al. "Grad-cam: Visual explanations from deep networks via gradient-based localization." The IEEE International Conference on Computer Vision (ICCV), 2017, pp. 618-626」、
等の文献に開示されている。
【0092】
集計部740は、重要特徴マップに基づいて、各領域の認識結果への影響度を、ブロック単位で集計し、ブロックごとの影響度の集計値を算出する。また、集計部740は、算出した各ブロックの集計値を、量子化値と対応付けて集計結果格納部770に格納する。
【0093】
量子化値生成部750は算出部の一例であり、集計結果格納部770に格納された集計結果に基づいて、ブロックごとに量子化値を変更しながら量子化値マップを生成する。また、量子化値生成部750は、ブロックごとに限界圧縮率となる量子化値を判定しながら、量子化値マップを生成する。
【0094】
出力部760は、量子化値生成部750により生成された量子化値マップ(限界圧縮率となる量子化値が設定された量子化値マップ、または、限界圧縮率に到達するための途中過程の量子化値が設定された量子化値マップ)を、更新部133に通知する。
【0095】
<集計結果の具体例>
次に、集計結果格納部770に格納される集計結果の具体例について説明する。
図8は、集計結果の具体例を示す図である。このうち、8aは、フレーム画像810内の符号化時のブロックの配置例を示している。8aに示すように、本実施形態では説明の簡略化のため、フレーム画像810内のブロックは全て同じ大きさであるとする。また、8aの例は、フレーム画像810の左上のブロックのブロック番号を"ブロック1"とし、右下のブロックのブロック番号を"ブロックm"としている。
【0096】
また、8bに示すように、集計結果820には、情報の項目として、"ブロック番号"、"量子化値"が含まれる。
【0097】
"ブロック番号"には、フレーム画像810内の各ブロックのブロック番号が格納される。"量子化値"には、符号化部121が符号化処理を行う際に設定可能な量子化値が格納される。
【0098】
なお、8bの例では、説明の簡略化のため、4種類の量子化値("Q1"から"Q4")のみを記載しているが、符号化部121による符号化処理では、4種類以上の量子化値が設定可能であるとする。
【0099】
また、集計結果820において、"ブロック番号"と"量子化値"とに対応付けられた欄には、
・対応する量子化値を用いてフレーム画像810に対して符号化処理を行い、
・復号データについて認識処理が行われた際に算出された重要特徴マップに基づいて、対応するブロックにおいて集計された、
集計値が格納される。
【0100】
<量子化値生成部による処理の具体例>
次に、量子化値生成部750による処理の具体例について説明する。
図9は、量子化値生成部による処理の具体例を示す図である。
図9において、グラフ910_1~910_mは、横軸に量子化値、縦軸に集計値をとり、集計結果820に含まれる各ブロックの集計値をプロットすることで生成されるグラフである。
【0101】
グラフ910_1~910_mに示すように、量子化値を用いて符号化処理を行った場合の集計値の変化は、ブロックごとに異なる。量子化値生成部750では、例えば、
・集計値の大きさが所定の閾値を超えた場合、あるいは、
・集計値の変化量が所定の閾値を超えた場合、あるいは、
・集計値の傾きが所定の閾値を超えた場合、あるいは、
・集計値の傾きの変化が所定の閾値を超えた場合、
のいずれかの条件を満たす場合の量子化値を、各ブロックの限界圧縮率となる量子化値と判定する。
【0102】
図9の例は、量子化値生成部750が、グラフ910_1に基づいて、限界圧縮率となる量子化値を"Q
3"と判定したことを示している。また、
図9の例は、量子化値生成部750が、グラフ910_2に基づいて、限界圧縮率となる量子化値を"Q
1"と判定したことを示している。また、
図9の例は、量子化値生成部750が、グラフ910_3に基づいて、限界圧縮率となる量子化値を"Q
2"と判定したことを示している。更に、
図9の例は、量子化値生成部750が、グラフ910_mに基づいて、限界圧縮率となる量子化値を"Q
3"と判定したことを示している。
【0103】
図9において、符号930は、ブロック1~ブロックmに、限界圧縮率となる量子化値が設定され、量子化値マップが生成された様子を示している。
【0104】
<更新部の機能構成>
次に、更新部133の機能構成について説明する。
図10は、更新部の機能構成の一例を示す図である。
図10に示すように、更新部133は、入力部1001、更新量子化値マップ生成部1002、探索用量子化値特定部1003を有する。
【0105】
入力部1001は、解析部132より通知された量子化値マップを取得し、更新量子化値マップ生成部1002に通知する。
【0106】
探索用量子化値特定部1003は特定部の一例であり、探索用量子化値マップ151~153を生成する。具体的には、探索用量子化値特定部1003は、
・帯状領域の位置、大きさ、
・帯状領域に設定する量子化値、
を特定する。
【0107】
そして、探索用量子化値特定部1003は、特定した帯状領域の位置、大きさに基づいて、画像内を複数の帯状領域に分割し、いずれか1つの帯状領域を、予め定められた順序で順次選択し、特定した量子化値を設定することで、探索用量子化値マップを生成する。
【0108】
更新量子化値マップ生成部1002は設定部の一例であり、入力部1001から通知された量子化値マップに、探索用量子化値特定部1003により生成された探索用量子化値マップを重畳することで、更新量子化値マップを生成し、エッジ装置120に送信する。
【0109】
<符号化処理の流れ>
次に、符号化システム100による符号化処理の流れについて説明する。
図11は、符号化処理の流れを示すフローチャートである。
【0110】
ステップS1101において、サーバ装置130は、更新量子化値マップを初期化して、エッジ装置120に設定するとともに、撮像装置110により撮影された動画像データの取得を開始する。
【0111】
ステップS1102において、エッジ装置120は、フレーム画像を取得する。
【0112】
ステップS1103において、エッジ装置120は、更新量子化値マップを用いてフレーム画像を符号化し、符号化データを生成する。
【0113】
ステップS1104において、エッジ装置120は、符号化データをサーバ装置130に送信する。
【0114】
ステップS1105において、サーバ装置130は、エッジ装置120から送信された符号化データを復号し、復号データを、復号データ格納部134に格納する。
【0115】
ステップS1106において、サーバ装置130は、復号データに対して認識処理を行う。
【0116】
ステップS1107において、サーバ装置130は、認識処理を行った際の誤差(所定の基準スコアに対する誤差)から、誤差逆伝播法を利用して重要特徴マップを生成する。また、サーバ装置130は、生成した重要特徴マップをブロック単位で集計する。
【0117】
ステップS1108において、サーバ装置130は、集計結果が限界圧縮率に到達したか否かを、ブロックごとに判定する。ステップS1108において、集計結果が限界圧縮率に到達していないと判定された場合には(ステップS1108においてNoの場合には)、ステップS1109に進む。
【0118】
ステップS1109において、サーバ装置130は、集計結果が限界圧縮率に到達していないブロックについて、量子化値を変更したのち(例えば、Q1→Q2)、ステップS1110に進む。
【0119】
一方、ステップS1108において、集計結果が限界圧縮率に到達したと判定された場合には(ステップS1108においてYesの場合には)、直接(つまり、量子化値を変更することなく)、ステップS1110に進む。
【0120】
ステップS1110において、サーバ装置130は、量子化値マップを生成する。
【0121】
ステップS1111において、サーバ装置130は、生成した量子化値マップに、探索用量子化値マップを重畳し、更新量子化値マップを生成する。
【0122】
ステップS1112において、サーバ装置130は、生成した更新量子化値マップをエッジ装置120に送信する。
【0123】
ステップS1113において、エッジ装置120は、符号化処理を終了するか否かを判定する。ステップS1113において、符号化処理を終了しないと判定した場合には(ステップS1113においてNoの場合には)、ステップS1102に戻る。
【0124】
一方、ステップS1113において、符号化処理を終了すると判定した場合には(ステップS1113においてYesの場合には)、符号化処理を終了する。
【0125】
以上の説明から明らかなように、第1の実施形態に係る符号化システム100は、時刻T1のフレーム画像について、認識処理の際の認識精度への影響度に応じた圧縮率となる量子化値を、ブロックごとに算出する。また、第1の実施形態に係る符号化システム100は、時刻T1のフレーム画像より後に取得される時刻T2のフレーム画像の各ブロックに対して、ブロックごとに算出した量子化値を設定する。その際、第1の実施形態に係る符号化システム100では、時刻T1のフレーム画像に含まれる認識対象の領域に対応する領域以外の特定領域(探索用量子化値マップが重畳される領域)について、算出した圧縮率よりも低い圧縮率となる量子化値を設定する。
【0126】
このように、符号化処理の際、特定領域について、量子化値を下げて設定することで、第1の実施形態によれば、新たな認識対象の出現に対応した認識処理を行うことが可能となる。
【0127】
この結果、第1の実施形態によれば、動画像の符号化処理に起因する認識精度への影響を抑えることができる。
【0128】
[第2の実施形態]
上記第1の実施形態では、新たな認識対象の出現に対応するために、探索用量子化値マップを用いる場合について説明した。しかしながら、新たな認識対象の出現に対応するための方法はこれに限定されない。
【0129】
例えば、エッジ装置において、新たに出現した物体を検出し、当該フレーム画像に対して符号化処理を行う際、新たに出現した物体が位置する領域について、量子化値マップを修正したうえで符号化処理を行うように構成してもよい。以下、第2の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0130】
<符号化システムのシステム構成>
はじめに、第2の実施形態に係る符号化システムのシステム構成について説明する。
図12は、符号化システムのシステム構成の一例を示す第2の図である。
図1に示した符号化システム100との相違点は、符号化システム1200の場合、エッジ装置1210及びサーバ装置1220において実現される機能が、エッジ装置120及びサーバ装置130において実現される機能とは異なっている点である。
【0131】
図12に示すように、エッジ装置1210は、符号化プログラムを実行することで、検出部1211、量子化値マップ修正部1212、符号化部1213として機能する。
【0132】
検出部1211は、撮像装置110により撮影された動画像データの各フレーム画像において、物体を検出する(物体の位置及び大きさを特定する)。
【0133】
なお、検出部1211における物体の検出機能は、直接的に物体を検出する機能であってもよいし、間接的に物体を検出する機能であってもよい。直接的に物体を検出する機能の場合、演算量を多く使う手法や、物体の種別・位置を正しく検出する手法等を用いてもよいし、演算量が少ない手法や、物体の種別・位置が、量子化値マップとの対比を行うのに足る程度の情報が得られる手法等を用いてもよい。つまり、検出部1211における物体の検出機能は、認識エンジン等のような高度な検出機能であっても、フレーム画像間で何らかの変化があったことを検出できる程度のものであってもよい。具体的には、コンピュータビジョンで物体を検出する機能や、マシンラーニングにより物体を検出する機能、色の変化を検出する機能等であってもよい。
【0134】
また、間接的に物体を検出する機能の場合、エッジ装置1210で明に物体検出処理を行うことなく、過去に得られた量子化値マップの情報に基づいて、物体の位置を予測する手法を用いてもよい。なお、検出部1211に、直接的に物体を検出する機能と、間接的に物体を検出する機能の両方を配し、両方の手法を組み合わせて用いてもよい。
【0135】
量子化値マップ修正部1212は設定部の他の一例であり、検出部1211における検出結果に基づいて、サーバ装置1220から送信された量子化値マップを修正する。具体的には、量子化値マップ修正部1212では、サーバ装置1220から送信された量子化値マップの各ブロックの量子化値のうち、検出部1211において検出された物体の領域に対応するブロックの量子化値を、低い値に修正する。
【0136】
例えば、量子化値マップ修正部1212では、認識対象の領域に対応する領域以外の領域のうちの検出された物体の領域(=特定領域)に含まれるブロックの量子化値を下げて設定する。
【0137】
符号化部1213は、量子化値マップ修正部1212により修正された修正後の量子化値マップ(修正量子化値マップと称す)を用いて、動画像データの各フレーム画像を符号化し、符号化データを生成する。また、符号化部121は、生成した符号化データをサーバ装置130に送信する。
【0138】
サーバ装置1220は、復号プログラムを実行することで、復号部131、解析部132として機能する。
【0139】
復号部131は、エッジ装置1210から送信された符号化データを復号し、復号データを生成する。復号部131は、生成した復号データを、復号データ格納部134に格納する。また、復号部131は、生成した復号データを、解析部132に通知する。
【0140】
解析部132は、復号部131から通知された復号データを解析し、量子化値マップを生成する。具体的には、解析部132は、復号データに対して認識処理を行うことで、認識処理の際の復号データの各領域の認識精度への影響度を算出する。また、解析部132は、各領域の影響度を、ブロックごとに集計し、集計結果に応じた量子化値を算出することで、認識精度への影響度に応じた量子化値マップ1230を生成する。解析部132は、生成した量子化値マップ1230を、エッジ装置1210に送信する。
【0141】
<修正量子化値マップと認識結果との関係(1)>
次に、動画像の各フレーム画像において検出された物体の領域と、動画像の各フレーム画像に適用される、量子化値マップを修正した修正量子化値マップと、対応する復号データに対する認識結果との関係について説明する。
図13は、動画像の各フレーム画像に適用される修正量子化値マップと、認識結果との関係を示す第1の図である。
【0142】
図13において、縦軸1300は、時間軸を表しており、
図13の例は、エッジ装置1210が、時刻T1~T4に、それぞれ、動画像のフレーム画像311~341を取得したことを示している。なお、
図13の例の場合、時刻T1では、認識対象として2名の人物がフレーム画像311に含まれていたところ、時刻T2~T4では、認識対象として3名の人物がフレーム画像321、331、341に含まれている。
【0143】
また、
図13の例は、時刻T1に取得されたフレーム画像311に対して、エッジ装置1210が、物体の検出処理を行い、2名の人物を検出した様子を示している(検出結果1311参照)。更に、
図13の例は、フレーム画像311に対して、エッジ装置120が、量子化値マップ1312を修正することなく、符号化処理を行った様子を示している(修正量子化値マップ1313参照)。更に、
図13の例は、フレーム画像311に対して符号化処理を行うことで生成された符号化データを、サーバ装置1220が復号し、復号データに対して認識処理を行うことで、認識結果1314が得られた様子を示している。
【0144】
図13の例によれば、フレーム画像311内の認識対象(2名の人物)が位置する領域に対応する領域の量子化値が低く設定された量子化値マップ1312が用いられることで、復号データにおいては、認識対象の領域が精度よく再現されることになる。この結果、サーバ装置1220では、復号データにおいて認識対象(2名の人物)を認識することができる。
【0145】
なお、この場合、サーバ装置1220では、認識結果1314に応じて量子化値マップを生成する。
図13の例は、認識結果1314に応じて量子化値マップ1322が生成された様子を示している。
【0146】
また、
図13の例は、時刻T2に取得されたフレーム画像321に対して、エッジ装置1210が物体の検出処理を行い、3名の人物を検出した様子を示している(検出結果1321参照)。更に、
図13の例は、エッジ装置1210が、量子化値マップ1322を、検出結果1321に基づいて修正し、修正量子化値マップ1323を生成した様子を示している。更に、
図13の例は、エッジ装置1210が、修正量子化値マップ1323を用いて、フレーム画像321に対して符号化処理を行う様子を示している。更に、
図13の例は、フレーム画像321に対して符号化処理を行うことで生成された符号化データを、サーバ装置1220が復号し、復号データに対して認識処理を行うことで、認識結果1324が得られた様子を示している。
【0147】
図13の例によれば、フレーム画像321内の認識対象(3名の人物)が位置する領域に対応する領域の量子化値が低く設定された修正量子化値マップ1323が用いられることで、復号データにおいては、認識対象の領域が精度よく再現されることになる。この結果、サーバ装置1220では、復号データにおいて認識対象(3名の人物)を認識することができる。
【0148】
なお、この場合、サーバ装置1220では、認識結果1324に応じて量子化値マップを生成する。
図13の例は、認識結果1324に応じて量子化値マップ1332が生成された様子を示している。
【0149】
また、
図13の例は、時刻T3に取得されたフレーム画像331に対して、エッジ装置1210が物体の検出処理を行い、3名の人物を検出した様子を示している(検出結果1331参照)。更に、
図13の例は、エッジ装置1210が、量子化値マップ1332を修正することなく、符号化処理を行う様子を示している(修正量子化値マップ1333参照)。更に、
図13の例は、フレーム画像331に対して符号化処理を行うことで生成された符号化データを、サーバ装置1220が復号し、復号データに対して認識処理を行うことで、認識結果1334が得られた様子を示している。
【0150】
図13の例によれば、フレーム画像331内の認識対象(3名の人物)が位置する領域に対応する領域の量子化値が低く設定された量子化値マップ1332が用いられることで、復号データにおいては、認識対象の領域が精度よく再現されることになる。この結果、サーバ装置1220では、復号データにおいて認識対象(3名の人物)を認識することができる。
【0151】
なお、この場合、サーバ装置1220では、認識結果1334に応じて量子化値マップを生成する。
図13の例は、認識結果1334に応じて量子化値マップ1342が生成された様子を示している。以降、時刻T4においても、時刻T3における処理と同様の処理が行われる。
【0152】
このように、検出した物体の領域に基づいて量子化値マップを修正することで、新たな認識対象を認識することが可能となる。
【0153】
<修正量子化値マップと認識結果との関係(2)>
次に、動画像の各フレーム画像において検出された物体の領域と、動画像の各フレーム画像に適用される、量子化値マップを修正した修正量子化値マップと、対応する復号データに対する認識結果との関係について、
図13とは異なる具体例を用いて説明する。
【0154】
図14は、動画像の各フレーム画像に適用される修正量子化値マップと、認識結果との関係を示す第2の図である。
図13との相違点は、各時刻におけるフレーム画像である。
【0155】
具体的には、
図13では、時刻T2において、新たな認識対象が出現したのに対して、
図14では、時刻T2において、新たな物体(認識対象外の物体)が出現している点である。
【0156】
図14の例の場合、時刻T2に取得されたフレーム画像621に対して、エッジ装置1210は、物体の検出処理を行うことで、2名の人物と、1つの物体とを検出する(検出結果1421参照)。また、
図14の例の場合、エッジ装置1210は、検出結果1421に基づいて量子化値マップ1422を修正し、修正量子化値マップ1423を生成する。また、
図14の例の場合、エッジ装置1210は、修正量子化値マップ1423を用いて、フレーム画像621に対して符号化処理を行う。更に、
図14の例の場合、フレーム画像621に対して符号化処理を行うことで生成された符号化データを、サーバ装置1220が復号し、復号データに対して認識処理を行うことで、認識結果1424を得る。
【0157】
図14の例によれば、フレーム画像621内の認識対象(2名の人物)と認識対象外の1つの物体とが位置する領域に対応する領域の量子化値が低く設定された修正量子化値マップ1423が用いられる。このため、復号データにおいて、認識対象と、認識対象外の物体とが精度よく再現されることになる。
【0158】
しかしながら、サーバ装置1220では、認識対象外の物体については認識せず、認識対象のみを認識するため、認識結果1424が生成されることになる。
【0159】
なお、この場合、サーバ装置1220では、認識結果1424に応じて量子化値マップを生成する。
図14の例は、認識結果1424に応じて量子化値マップ1432が生成された様子を示している。以降、時刻T3、T4においても、時刻T2における処理と同様の処理が行われる。
【0160】
<符号化処理の流れ>
次に、符号化システム1200による符号化処理の流れについて説明する。
図15は、符号化処理の流れを示すフローチャートである。
【0161】
ステップS1501において、サーバ装置1220は、量子化値マップを初期化して、エッジ装置1210に設定するとともに、撮像装置110により撮影された動画像データの取得を開始する。
【0162】
ステップS1502において、エッジ装置1210は、フレーム画像を取得する。
【0163】
ステップS1503において、エッジ装置1210は、フレーム画像内の物体を検出し、検出した物体の領域を特定する。
【0164】
ステップS1504において、エッジ装置1210は、特定した物体の領域と、量子化値マップとを対比し、量子化値マップを修正する。
【0165】
ステップS1505において、エッジ装置1210は、修正量子化値マップを用いてフレーム画像を符号化し、符号化データを生成する。
【0166】
ステップS1506において、エッジ装置1210は、符号化データをサーバ装置1220に送信する。
【0167】
ステップS1507において、サーバ装置1220は、エッジ装置1210から送信された符号化データを復号し、復号データを、復号データ格納部134に格納する。
【0168】
ステップS1508において、サーバ装置1220は、復号データに対して認識処理を行う。
【0169】
ステップS1509において、サーバ装置1220は、認識処理を行った際の誤差(所定の基準スコアに対する誤差)から、誤差逆伝播法を利用して重要特徴マップを生成する。また、サーバ装置1220は、生成した重要特徴マップをブロック単位で集計する。
【0170】
ステップS1510において、サーバ装置1220は、集計結果が限界圧縮率に到達したか否かを、ブロックごとに判定する。ステップS1510において、集計結果が限界圧縮率に到達していないと判定された場合には(ステップS1510においてNoの場合には)、ステップS1511に進む。
【0171】
ステップS1511において、サーバ装置1220は、集計結果が限界圧縮率に到達していないブロックについて、量子化値を変更したのち(例えば、Q1→Q2)、ステップS1512に進む。
【0172】
一方、ステップS1510において、集計結果が限界圧縮率に到達したと判定された場合には(ステップS1510においてYesの場合には)、直接(つまり、量子化値を変更することなく)、ステップS1512に進む。
【0173】
ステップS1512において、サーバ装置1220は、量子化値マップを生成する。
【0174】
ステップS1513において、サーバ装置1220は、生成した量子化値マップを、エッジ装置1210に送信する。
【0175】
ステップS1514において、エッジ装置1210は、符号化処理を終了するか否かを判定する。ステップS1514において、符号化処理を終了しないと判定した場合には(ステップS1514においてNoの場合には)、ステップS1502に戻る。
【0176】
一方、ステップS1514において、符号化処理を終了すると判定した場合には(ステップS1514においてYesの場合には)、符号化処理を終了する。
【0177】
以上の説明から明らかなように、第2の実施形態に係る符号化システム1200は、時刻T1のフレーム画像について、認識処理の際の認識精度への影響度に応じた圧縮率となる量子化値をブロックごとに算出し、量子化値マップを生成する。また、第2の実施形態に係る符号化システム1200は、時刻T1のフレーム画像より後に取得される時刻T2のフレーム画像の各ブロックに対して、算出した量子化値マップを設定する。その際、第2の実施形態に係る符号化システム1200では、物体の検出処理を行い、認識対象の領域に対応する領域以外の領域であって、検出した物体の領域(特定領域)について、算出した圧縮率よりも低い圧縮率となる量子化値に修正する。
【0178】
このように、符号化処理の際、特定領域について、量子化値を下げて設定することで、第2の実施形態によれば、新たな認識対象の出現に対応した認識処理を行うことが可能となる。
【0179】
この結果、第2の実施形態によれば、動画像の符号化処理に起因する認識精度への影響を抑えることができる。
【0180】
[第3の実施形態]
上記第1及び第2の実施形態では、復号データについて、限界圧縮率を判定しながら、量子化値マップを生成するものとして説明した。しかしながら、量子化値マップの生成方法はこれに限定されない。
【0181】
例えば、限界圧縮率を判定し、判定した限界圧縮率となる量子化値を微小に低圧縮方向に補正したうえで、量子化値マップを生成するように構成してもよい。
【0182】
なお、補正後の量子化値マップを生成するにあたり、低圧縮方向への補正量は、所定の固定値であってもよい。あるいは、認識処理の際の認識精度の推移を監視し、精度劣化の予兆が検知された場合に、精度劣化の変化速度等を考慮して、適応的に補正量を決定してもよい。
【0183】
また、低圧縮方向への補正は、サーバ装置において実行してもよいし、エッジ装置において実行してもよい。
【0184】
[その他の実施形態]
上記各実施形態では、符号化システムのエッジ装置にて実現される機能及びサーバ装置にて実現される機能について、例えば、
図1及び
図12等を用いて説明した。しかしながら、符号化システムにおいて、エッジ装置にて実現される機能及びサーバ装置にて実現される機能は、
図1及び
図12に示した例に限定されない。
【0185】
例えば、第1の実施形態において、解析部132の量子化値生成部750及び更新部133は、エッジ装置120において実現されてもよい(つまり、符号化プログラムが実行されることで実現されてもよい)。
【0186】
また、上記各実施形態では、説明の簡略化のため、動画像データの各フレーム画像311~341、611~641において、認識対象が移動しない場合について示した。しかしながら、認識対象はフレーム画像間で移動してもよい。ただし、その場合、認識対象の移動方向及び移動量を予測して、量子化値マップが補正されるものとする。
【0187】
また、上記第1の実施形態では、動画像の各フレーム画像について、探索用量子化値マップを重畳した更新量子化値マップが適用されるものとして説明した。しかしながら、更新量子化値マップの適用頻度はこれに限定されず、例えば、所定数のフレーム画像に1回の割合で、探索用量子化値マップを重畳した更新量子化値マップが適用されてもよい。
【0188】
同様に、上記第2の実施形態では、動画像の各フレーム画像について、修正量子化値マップが適用されるものとして説明した。しかしながら、修正量子化値マップの適用頻度はこれに限定されず、例えば、所定数のフレーム画像に1回の割合で、修正量子化値マップが適用されてもよい。
【0189】
また、上記第1及び第2の実施形態では、新たな認識対象の領域が、探索用量子化値マップまたは修正量子化値マップにおいて量子化値を下げて再現性を上げる領域に全て含まれるものとして説明した。しかしながら、新たな認識対象の領域は、探索用量子化値マップまたは修正量子化値マップにおいて量子化値を下げて再現性を上げる領域に、全て含まれていなくてもよい。
【0190】
つまり、CNN部720等が、新たな認識対象の領域に、新たな認識対象が存在することを識別できるだけの情報があればよい。例えば、CNN部720等が、新たな認識対象の領域の一部の領域から、新たな認識対象が存在することを識別することができる場合にあっては、当該一部の領域の情報があればよい。また、CNN部720等が、例えば、新たな認識対象の領域の一部の領域が隠れていても、当該隠れた一部の領域を推測することができる場合にあっては、新たな認識対象の領域の一部の領域は含まれていなくてもよい。
【0191】
これらの場合、新たな認識対象の領域の全ての領域が含まれていなくても、量子化値生成部750では、新たな認識対象の領域の全ての領域が反映された量子化値マップを生成することができる。
【0192】
また、上記第1の実施形態では、探索用量子化値マップを帯状に形成したが、探索用量子化値マップの形状は、例えば、動画像データに含まれる認識対象の特性(形状、大きさ、動作)に基づいて決定されてもよい。例えば、街を歩行する人物が認識対象である場合のように、縦長の認識対象が動画像データに含まれることが想定される場合には、探索用量子化値マップは縦長の矩形により形成されてもよい。
【0193】
また、上記第3の実施形態では、低圧縮方向への補正の趣旨について特に言及しなかったが、低圧縮方向への補正は、例えば、集計値の大きさの変化を観測するために行ってもよい。あるいは、上記第1及び第2の実施形態で説明した手法以外の手法により量子化値マップを生成する場合であって、量子化値を微小に低圧縮方向に補正することが有効である場合に、低圧縮方向への補正を行ってもよい。あるいは、単純にマージンを持たせる目的で、低圧縮方向への補正を行ってもよい。
【0194】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【0195】
100 :符号化システム
110 :撮像装置
120 :エッジ装置
121 :符号化部
130 :サーバ装置
131 :復号部
132 :解析部
133 :更新部
140 :量子化値マップ
151~153 :探索用量子化値マップ
161~163 :更新量子化値マップ
710 :入力部
720 :CNN部
730 :重要特徴マップ生成部
740 :集計部
750 :量子化値生成部
760 :出力部
1001 :入力部
1002 :更新量子化値マップ生成部
1003 :探索用量子化値特定部
1200 :符号化システム
1210 :エッジ装置
1211 :検出部
1212 :量子化値マップ修正部
1213 :符号化部
1220 :サーバ装置
1230 :量子化値マップ