IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-10
(45)【発行日】2023-07-19
(54)【発明の名称】解析装置及び解析プログラム
(51)【国際特許分類】
   H04N 19/115 20140101AFI20230711BHJP
   H04N 19/126 20140101ALI20230711BHJP
   H04N 19/136 20140101ALI20230711BHJP
   H04N 19/176 20140101ALI20230711BHJP
   H04N 19/192 20140101ALI20230711BHJP
【FI】
H04N19/115
H04N19/126
H04N19/136
H04N19/176
H04N19/192
【請求項の数】 11
(21)【出願番号】P 2021566651
(86)(22)【出願日】2019-12-25
(86)【国際出願番号】 JP2019050896
(87)【国際公開番号】W WO2021130919
(87)【国際公開日】2021-07-01
【審査請求日】2022-06-08
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】久保田 智規
(72)【発明者】
【氏名】中尾 鷹詔
(72)【発明者】
【氏名】村田 康之
【審査官】鉢呂 健
(56)【参考文献】
【文献】CHOI, Hyomin and BAJIC, Ivan V.,HIGH EFFICIENCY COMPRESSION FOR OBJECT DETECTION,2018 IEEE Internatilnal Conference on Acoustics, Speech and Signal Processing,米国,IEEE,2018年09月13日,pp.1792-1796,<URL:https://ieeexplore.ieee.org/ document/8462653>,<DOI:10.1109/ICASSP.2018.8462653>
【文献】SUZUKI, Satoshi et al.,IMAGE PRE-TRANSFORMATION FOR RECOGNITION-AWARE IMAGE COMPRESSION,2019 IEEE International Conference on Image Processing,米国,IEEE,2019年08月26日,pp 2686-2690,<URL:https://ieeexplore.ieee.org/document/8803275>,<DOI:10.1109/ICIP.2019.8803275>
【文献】GALTERI, Leonardo et al.,Video Compression for Object Detection Algorithms,2018 24th International Conference on Pattern Recognition,米国,IEEE,2018年11月29日,pp.3007-3012,<URL:https://ieeexplore.ieee.org/document/8546064>,<DOI:10.1109/ICPR.2018.8546064>
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
画像データに対して異なる圧縮レベルで圧縮処理が行われた場合のそれぞれの圧縮データを復号した復号データに対して、認識処理が行われることで算出された、それぞれの復号データの各領域の認識結果への影響度を示す情報を格納する格納部と、
前記異なる圧縮レベルに対応する、それぞれの復号データの各領域の認識結果への影響度を示す情報に基づいて、前記画像データの各領域の圧縮レベルを決定する決定部と
を有する解析装置。
【請求項2】
前記復号データに対して認識処理が行われることで算出された、前記復号データの各領域の認識結果への影響度を示すマップを生成するマップ生成部と、
生成された前記マップに基づいて、前記復号データの各領域の認識結果への影響度を、圧縮処理が行われる際に用いられるブロック単位で集計する集計部と、を更に有し、
前記格納部は、前記ブロック単位で集計した集計値を、前記各領域の認識結果への影響度を示す情報として格納する、請求項1に記載の解析装置。
【請求項3】
前記格納部は、
前記異なる圧縮レベルに対応する、それぞれの復号データの各領域の認識結果への影響度を示す情報を、複数のグループに分類した場合の各グループに、圧縮レベルが対応付けられたグループ情報を格納し、
前記決定部は、
所定の圧縮レベルに対応する、各領域の認識結果への影響度を示す情報が、前記各グループのいずれに属するかを判定し、判定したグループに対応付けられた圧縮レベルを、前記画像データの各領域の圧縮レベルとして決定する、請求項1または2に記載の解析装置。
【請求項4】
前記決定部は、
画像データに対して画像処理が行われることで生成された疑似圧縮データに対して、認識処理が行われることで算出された、該疑似圧縮データの各領域の認識結果への影響度を示す情報が、前記各グループのいずれに属するかを判定し、判定したグループに対応付けられた圧縮レベルを、前記画像データの各領域の圧縮レベルとして決定する、請求項3に記載の解析装置。
【請求項5】
前記決定部は、
異なる画像データに対して異なる圧縮レベルで圧縮処理が行われた場合のそれぞれの圧縮データを復号した復号データに対して、認識処理が行われることで算出された、それぞれの復号データの各領域の認識結果への影響度を示す情報が、所定の閾値を超えないように、前記異なる画像データそれぞれの各領域の圧縮レベルを決定する、請求項1に記載の解析装置。
【請求項6】
前記決定部は、
所定のブロック単位で集計した集計値のうち、基準となるブロックの集計値と、他のブロックの集計値とを比較し、該基準となるブロックの圧縮レベルと、比較結果とに基づいて、他のブロックの圧縮レベルを決定する、請求項2に記載の解析装置。
【請求項7】
前記決定部は、
誤った認識結果が出力される直前に出力された、正しい認識結果に対する前記復号データの各領域の認識結果への影響度を示す情報に重み係数をかけ、予め設定された圧縮レベルに加算することで、前記画像データの各領域の圧縮レベルを決定する、請求項1に記載の解析装置。
【請求項8】
誤った認識結果が出力される直前に出力された、正しい認識結果に対する前記復号データの各領域の認識結果への影響度を示す情報を取得し、無効領域を判定する無効領域判定部と、
画像データのうち、前記無効領域と判定された領域を無効化することで、無効化画像データを生成する無効化画像生成部と
を更に有する、請求項1に記載の解析装置。
【請求項9】
画像データのうち、所定の無効領域を無効化することで、無効化画像データを生成する無効化画像生成部を更に有し、
前記格納部は、
前記無効化画像データに対して異なる圧縮レベルで圧縮処理が行われた場合のそれぞれの圧縮データを復号した復号データに対して、認識処理が行われることで算出された、それぞれの無効化画像データの有効領域に含まれる各ブロックの集計値を格納し、
前記無効化画像生成部は、
前記無効化画像データの有効領域に含まれる各ブロックの集計値のうち、有効領域と無効領域との境界位置内側に位置するブロックの集計値が所定の条件を満たす場合、有効領域を拡張した新たな無効化画像データを生成する、請求項2に記載の解析装置。
【請求項10】
画像データのうち、有効領域を判定する有効領域判定部と、
前記画像データのうち、判定された有効領域以外の無効領域を無効化することで、無効化画像データを生成する無効化画像生成部と、を更に有し、
前記格納部は、
画像データに対して異なる圧縮レベルで圧縮処理が行われた場合のそれぞれの圧縮データを復号した復号データに対して、認識処理が行われることで算出された、それぞれの復号データの各ブロックの集計値を格納し、
前記有効領域判定部は、
前記復号データの各ブロックの集計値のうち、前記有効領域と前記無効領域との境界位置を介して隣接するブロックの集計値が、所定の条件を満たす場合、該有効領域を拡張し、
前記無効化画像生成部は、
前記有効領域が拡張された拡張後の有効領域以外の無効領域を無効化することで、無効化画像データを生成する、請求項2に記載の解析装置。
【請求項11】
画像データに対して異なる圧縮レベルで圧縮処理が行われた場合のそれぞれの圧縮データを復号した復号データに対して、認識処理が行われることで算出された、それぞれの復号データの各領域の認識結果への影響度を示す情報を取得し、
前記異なる圧縮レベルに対応する、それぞれの復号データの各領域の認識結果への影響度を示す情報に基づいて、前記画像データの各領域の圧縮レベルを決定する、
処理をコンピュータに実行させるための解析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、解析装置及び解析プログラムに関する。
【背景技術】
【0002】
一般に、画像データを記録または伝送する場合、画像圧縮処理によりデータサイズを小さくすることで、記録コストや伝送コストの削減を実現している。
【0003】
一方で、近年、AI(Artificial Intelligence)による画像認識処理に利用される目的で、画像データを記録または伝送するケースが増えてきている。AIの代表的なモデルとして、例えば、深層学習や機械学習を用いたモデルが挙げられる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2018-101406号公報
【文献】特開2019-079445号公報
【文献】特開2011-234033号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の圧縮処理は、人間の視覚特性に基づいて行われており、AIの動作解析に基づいて行われているわけではない。このため、AIによる画像認識処理に必要でない領域について、十分な圧縮レベルで圧縮処理が行われていない場合があった。
【0006】
一つの側面では、AIによる画像認識処理に適した圧縮処理を実現することを目的とする。
【課題を解決するための手段】
【0007】
一態様によれば、解析装置は、
画像データに対して異なる圧縮レベルで圧縮処理が行われた場合のそれぞれの圧縮データを復号した復号データに対して、認識処理が行われることで算出された、それぞれの復号データの各領域の認識結果への影響度を示す情報を格納する格納部と、
前記異なる圧縮レベルに対応する、それぞれの復号データの各領域の認識結果への影響度を示す情報に基づいて、前記画像データの各領域の圧縮レベルを決定する決定部とを有する。
【発明の効果】
【0008】
AIによる画像認識処理に適した圧縮処理を実現することができる。
【図面の簡単な説明】
【0009】
図1図1は、圧縮処理システムのシステム構成の一例を示す第1の図である。
図2図2は、解析装置または画像圧縮装置のハードウェア構成の一例を示す図である。
図3図3は、解析装置の機能構成の一例を示す第1の図である。
図4図4は、集計結果の具体例を示す図である。
図5図5は、量子化値決定部による処理の具体例を示す第1の図である。
図6図6は、画像圧縮装置の機能構成の一例を示す第1の図である。
図7図7は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第1のフローチャートである。
図8図8は、解析装置の機能構成の一例を示す第2の図である。
図9図9は、量子化値決定部による処理の具体例を示す第2の図である。
図10図10は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第2のフローチャートである。
図11図11は、解析装置の機能構成の一例を示す第3の図である。
図12図12は、量子化値決定部による処理の具体例を示す第3の図である。
図13図13は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第3のフローチャートである。
図14図14は、解析装置の機能構成の一例を示す第4の図である。
図15図15は、量子化値設定部による処理の具体例を示す図である。
図16図16は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第4のフローチャートである。
図17図17は、量子化値決定部による処理の具体例を示す第4の図である。
図18図18は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第5のフローチャートである。
図19図19は、量子化値決定部による処理の具体例を示す第5の図である。
図20図20は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第6のフローチャートである。
図21図21は、解析装置の機能構成の一例を示す第5の図である。
図22図22は、無効領域判定部による処理の具体例を示す図である。
図23図23は、無効化画像データの具体例を示す図である。
図24図24は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第7のフローチャートである。
図25図25は、解析装置の機能構成の一例を示す第6の図である。
図26図26は、有効領域判定部による処理の具体例を示す図である。
図27図27は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第8のフローチャートである。
図28図28は、解析装置の機能構成の一例を示す第7の図である。
図29図29は、有効領域判定部による処理の具体例を示す第2の図である。
図30図30は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第9のフローチャートである。
【発明を実施するための形態】
【0010】
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0011】
[第1の実施形態]
<圧縮処理システムのシステム構成>
はじめに、第1の実施形態に係る解析装置を含む、圧縮処理システム全体のシステム構成について説明する。図1は、圧縮処理システムのシステム構成の一例を示す第1の図である。第1の実施形態において、圧縮処理システムが実行する処理は、圧縮レベル(量子化値)を決定するフェーズと、決定した圧縮レベル(量子化値)に基づいて圧縮処理を行うフェーズとに大別することができる。
【0012】
図1において、1aは、圧縮レベル(量子化値)を決定するフェーズにおける圧縮処理システムのシステム構成を示しており、1bは、決定した圧縮レベル(量子化値)に基づいて圧縮処理を行うフェーズにおける圧縮処理システムのシステム構成を示している。
【0013】
図1の1aに示すように、圧縮レベル(量子化値)を決定するフェーズにおける圧縮処理システムには、撮像装置110、解析装置120、画像圧縮装置130が含まれる。
【0014】
撮像装置110は、所定のフレーム周期で撮影を行い、画像データを解析装置120に送信する。なお、画像データには、認識処理の対象となるオブジェクトが含まれる。
【0015】
解析装置120は、認識処理を行う学習済みモデルを有し、画像データまたは画像データに対して異なる圧縮レベルで圧縮処理が行われた場合の圧縮データを復号した復号データを、学習済みモデルに入力することで認識処理を行い、認識結果を出力する。
【0016】
また、解析装置120は、例えば、誤差逆伝播法を用いて学習済みモデルの動作解析を行うことで、認識結果への影響度を示すマップ(重要特徴マップと称す)を生成し、所定領域ごと(圧縮処理が行われる際に用いられるブロックごと)に影響度を集計する
なお、解析装置120では、異なる圧縮レベル(量子化値)での圧縮処理を画像圧縮装置130に指示し、それぞれの圧縮レベルで圧縮処理が行われた場合の圧縮データそれぞれについて、同様の処理を繰り返す。
【0017】
解析装置120は、異なる圧縮レベルでの圧縮処理を画像圧縮装置130に指示するごとに、各ブロックの影響度の集計値を算出し、各圧縮レベル(各量子化値)に対する、集計値の変化に基づいて、各ブロックの最適な圧縮レベル(量子化値)を決定する。なお、最適な圧縮レベル(量子化値)とは、画像データに含まれるオブジェクトを正しく認識処理することができる最大の圧縮レベル(量子化値)を指す。
【0018】
このように、学習済みモデルの動作解析を行い、認識結果への影響度を算出することで、解析装置120によれば、学習済みモデルによる画像認識処理に適した圧縮処理を行う際の、最適な圧縮レベルを決定することができる。
【0019】
一方、図1の1bに示すように、決定した圧縮レベル(量子化値)に基づいて圧縮処理を行うフェーズにおける圧縮処理システムには、解析装置120、画像圧縮装置130、ストレージ装置140が含まれる。
【0020】
解析装置120は、ブロックごとに決定した最適な圧縮レベル(量子化値)及び画像データを画像圧縮装置130に送信する。
【0021】
画像圧縮装置130は、決定された最適な圧縮レベル(量子化値)を用いて画像データに対して圧縮処理を行い、圧縮データをストレージ装置140に格納する。
【0022】
このように、本実施形態に係る解析装置120では、学習済みモデルによる画像認識処理に適した圧縮レベルを用いる。つまり、本実施形態に係る解析装置120では、従来の圧縮処理に対して下記のような相違点を有することにより、学習済みモデルによる画像認識処理に適した圧縮処理を実現することができる。
・従来の圧縮処理は、そもそも、推論時に注目した特徴部分に基づいておらず(あくまで、人間の概念で把握できる形状、性質、関心対象等に基づいており)、推論時に注目した特徴部分(必ずしも人間の概念で境界分けできない特徴部分)が用いられることもない。
・従来の圧縮処理では、認識結果を出力する過程であるCNN部320の内部動作(例えば、画像データを入力してから認識結果が出力されるまでの信号/処理結果の伝播過程や、信号/処理結果の伝播強度)を解析することもない。
【0023】
<解析装置または画像圧縮装置のハードウェア構成>
次に、解析装置120及び画像圧縮装置130のハードウェア構成について説明する。なお、解析装置120と画像圧縮装置130とは、同様のハードウェア構成を有するため、ここでは、両装置の説明をまとめて図2を用いて行う。
【0024】
図2は、解析装置または画像圧縮装置のハードウェア構成の一例を示す図である。解析装置120または画像圧縮装置130は、プロセッサ201、メモリ202、補助記憶装置203、I/F(Interface)装置204、通信装置205、ドライブ装置206を有する。なお、解析装置120または画像圧縮装置130の各ハードウェアは、バス207を介して相互に接続されている。
【0025】
プロセッサ201は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の各種演算デバイスを有する。プロセッサ201は、各種プログラム(例えば、後述する解析プログラムまたは画像圧縮プログラム等)をメモリ202上に読み出して実行する。
【0026】
メモリ202は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ201とメモリ202とは、いわゆるコンピュータを形成し、プロセッサ201が、メモリ202上に読み出した各種プログラムを実行することで、当該コンピュータは各種機能を実現する(各種機能の詳細は後述する)。
【0027】
補助記憶装置203は、各種プログラムや、各種プログラムがプロセッサ201によって実行される際に用いられる各種データを格納する。
【0028】
I/F装置204は、外部装置の一例である操作装置210、表示装置220と、解析装置120または画像圧縮装置130とを接続する接続デバイスである。I/F装置204は、解析装置120または画像圧縮装置130に対する操作を、操作装置210を介して受け付ける。また、I/F装置204は、解析装置120または画像圧縮装置130による処理の結果を出力し、表示装置220を介して表示する。
【0029】
通信装置205は、他の装置と通信するための通信デバイスである。解析装置120の場合、通信装置205を介して撮像装置110及び画像圧縮装置130と通信する。また、画像圧縮装置130の場合、通信装置205を介して解析装置120及びストレージ装置140と通信する。
【0030】
ドライブ装置206は記録媒体230をセットするためのデバイスである。ここでいう記録媒体230には、CD-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体230には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
【0031】
なお、補助記憶装置203にインストールされる各種プログラムは、例えば、配布された記録媒体230がドライブ装置206にセットされ、該記録媒体230に記録された各種プログラムがドライブ装置206により読み出されることでインストールされる。あるいは、補助記憶装置203にインストールされる各種プログラムは、通信装置205を介してネットワークからダウンロードされることで、インストールされてもよい。
【0032】
<解析装置の機能構成>
次に、解析装置120の機能構成について説明する。図3は、解析装置の機能構成の一例を示す第1の図である。上述したように、解析装置120には、解析プログラムがインストールされており、当該プログラムが実行されることで、解析装置120は、入力部310、CNN部320、量子化値設定部330、出力部340として機能する。また、解析装置120は、重要特徴マップ生成部350、集計部360、量子化値決定部370として機能する。
【0033】
入力部310は、撮像装置110より送信される画像データ、または、画像圧縮装置130より送信される圧縮データを取得する。入力部310は、取得した画像データをCNN部320及び出力部340に通知するとともに、不図示の復号部を用いて、取得した圧縮データを復号し、復号データをCNN部320に通知する。
【0034】
CNN部320は、学習済みモデルを有し、画像データまたは復号データを入力することで、画像データまたは復号データに含まれるオブジェクトに対して認識処理を行い、認識結果を出力する。
【0035】
量子化値設定部330は、画像圧縮装置130が圧縮処理を行う際に用いる圧縮レベル(最小の量子化値(初期値)から最大の量子化値まで)を、順次、出力部340に通知するとともに、格納部の一例である集計結果格納部380に格納する。
【0036】
出力部340は、入力部310が取得した画像データを、画像圧縮装置130に送信する。また、量子化値設定部330より通知された各量子化値を、順次、画像圧縮装置130に送信する。更に、量子化値決定部370により決定された量子化値(決定量子化値)を、画像圧縮装置130に送信する。
【0037】
重要特徴マップ生成部350はマップ生成部の一例であり、学習済みモデルが画像データまたは復号データに対して認識処理を行った際のCNN部構造情報を取得し、取得したCNN部構造情報に基づき誤差逆伝播法を利用することで、重要特徴マップを生成する。
【0038】
重要特徴マップ生成部350では、例えば、BP(Back Propagation)法、GBP(Guided Back Propagation)法または選択的BP法を用いることで、重要特徴マップを生成する。
【0039】
なお、BP法は、認識結果が正解ラベルとなる画像データ(または復号データ)に対して認識処理を行うことで得た分類確率から各ラベルの誤差を計算し、入力層まで逆伝播して得られる勾配の大小を画像化することで、特徴部分を可視化する方法である。また、GBP法は、勾配情報の正値のみを特徴部分として画像化することで、特徴部分を可視化する方法である。
【0040】
更に、選択的BP法は、正解ラベルの誤差のみを最大にしたうえで、BP法またはGBP法を用いて逆伝播する方法である。選択的BP法の場合、可視化される特徴部分は、正解ラベルのスコアのみに影響を与える特徴部分となる。
【0041】
このように、重要特徴マップ生成部350では、BP法、GBP法または選択的BP法を用いることで、画像データまたは復号データが入力されてから認識結果が出力されるまでのCNN部320内の各経路の信号の流れと強度とを解析する。これにより、重要特徴マップ生成部350によれば、入力された画像データまたは復号データのどの部分が、認識結果にどの程度影響を及ぼしているかを可視化することができる。したがって、例えば、CNN部320として、BP法、GBP法または選択的BP法を適用しない(または適用できない)AIが用いられる場合、重要特徴マップ生成部350では、同様の情報を解析することにより、重要特徴マップを生成する。
【0042】
なお、誤差逆伝播法による重要特徴マップの生成方法は、例えば、
「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」、
等の文献に開示されている。
【0043】
集計部360は、重要特徴マップに基づいて、認識結果への影響度をブロック単位で集計し、ブロックごとの影響度の集計値を算出する。また、集計部360は、算出した各ブロックの集計値を、量子化値と対応付けて集計結果格納部380に格納する。
【0044】
量子化値決定部370は決定部の一例であり、集計結果格納部380に格納された、各ブロックの集計値(量子化値の数に応じた数の集計値)に基づいて、各ブロックにおける最適な量子化値を決定する。また、量子化値決定部370は、決定した各ブロックにおける最適な量子化値を出力部340に通知する。
【0045】
このように、解析装置120では、CNN部320が認識処理を行う際に重要となる特徴部分の、圧縮処理に伴う劣化(認識精度への影響)の許容の度合い(量子化値)を、人間の認知する概念ではなく、CNN部320の認知する概念を基準として算出する。
【0046】
<集計結果の具体例>
次に、集計結果格納部380に格納された集計結果の具体例について説明する。図4は、集計結果の具体例を示す図である。このうち、4aは、画像データ410内のブロックの配置例を示している。4aに示すように、本実施形態では説明の簡略化のため、画像データ410内のブロックは全て同じ大きさであるとする。また、画像データの左上のブロックのブロック番号を"ブロック1"とし、右下のブロックのブロック番号を"ブロックm"とする。
【0047】
4bに示すように、集計結果420には、情報の項目として、"ブロック番号"、"量子化値"とが含まれる。
【0048】
"ブロック番号"には、画像データ410内の各ブロックのブロック番号が格納される。"量子化値"には、画像圧縮装置130が圧縮処理を行わない場合を示す"圧縮なし"、及び、画像圧縮装置130が圧縮処理を行う際に用いる、最小の量子化値("Q")から最大の量子化値("Q")が格納される。
【0049】
また、"ブロック番号"と"量子化値"とにより特定される領域には、
・対応する量子化値を用いて画像データ410について圧縮処理を行い、
・取得した圧縮データを復号した復号データを入力することで、学習済みモデルが認識処理を行い、
・認識処理が行われた際に算出された重要特徴マップに基づいて、対応するブロックにおいて集計された、
集計値が格納される。
【0050】
<量子化値決定部による処理の具体例>
次に、量子化値決定部370による処理の具体例について説明する。図5は、量子化値決定部による処理の具体例を示す第1の図である。図5において、グラフ510_1~510_mは、横軸に量子化値、縦軸に集計値をとり、集計結果420に含まれる各ブロックの集計値をプロットすることで生成したグラフである。
【0051】
なお、グラフ510_1~510_mの生成に用いられる各ブロックの集計値は、例えば、
・全ブロック共通のオフセット値を用いて調整されていてもよい。
・絶対値をとって集計されていてもよい。
・注目されていないブロックの集計値に基づいて、他のブロックの集計値が加工されていてもよい。
【0052】
グラフ510_1~510_mに示すように、最小の量子化値(Q)から最大の量子化値(Q)まで変化させた場合の集計値の変化は、ブロックごとに異なる。量子化値決定部370では、例えば、
・集計値の大きさが所定の閾値を超えた場合、あるいは、
・集計値の変化量が所定の閾値を超えた場合、あるいは、
・集計値の傾きが所定の閾値を超えた場合、あるいは、
・集計値の傾きの変化が所定の閾値を超えた場合、
のいずれかの条件を満たす場合に、各ブロックの最適な量子化値を決定する。
【0053】
図5において符号530は、ブロック1~ブロックmの最適な量子化値として、BQ~BQが決定され、対応するブロックに設定された様子を示している。
【0054】
なお、集計の際のブロックのサイズと圧縮処理に用いるブロックのサイズとは、一致していなくてもよい。その場合、量子化値決定部370では、例えば、以下のように量子化値を決定する。
・集計の際のブロックのサイズより、圧縮処理に用いるブロックのサイズの方が大きい場合
圧縮処理に用いるブロックに含まれる、集計の際の各ブロックの集計値に基づく量子化値の平均値(あるいは、最小値、最大値、その他の指標で加工した値)を、圧縮処理に用いる各ブロックの量子化値とする。
・集計の際のブロックのサイズより、圧縮処理に用いるブロックのサイズの方が小さい場合
集計の際のブロックに含まれる、圧縮処理に用いる各ブロックの量子化値として、集計の際のブロックの集計値に基づく量子化値を用いる。
【0055】
また、符号530に示す量子化値は、解析装置120にて追加評価してもよい。具体的には、まず、解析装置120にて、符号530に示す量子化値を用いて圧縮処理された圧縮データを復号し、復号データに対して認識処理を行う。続いて、解析装置120にて、符号530に示す量子化値のうち、最小値に対して量子化値を加算(例えば、1加算)し、符号530に示す量子化値を変更する。このとき、符号530に示す量子化値に、複数の最小値が存在する場合には、同様の加算を行う。
【0056】
続いて、解析装置120では、変更した符号530に示す量子化値を用いて圧縮処理された圧縮データを復号し、復号データに対して認識処理を行う。
【0057】
解析装置120では、これらの処理を、符号530に示す量子化値のうちの最大値に等しくなるまで繰り返し、変更した符号530に示す量子化値と、対応する認識結果との組を複数取得する。
【0058】
続いて、解析装置120では、複数の組の中から、認識精度が許容下限を上回る組であって、量子化値の最小値が最大となる組を選択し、選択した組に含まれる、変更した符号530に示す量子化値を用いて、(変更前の)符号530に示す量子化値を置き換える。
【0059】
このように、符号530に示す量子化値を追加評価することで、符号530に示す量子化値よりも更に圧縮率の高い量子化値を決定することができる。
【0060】
<画像圧縮装置の機能構成>
次に、画像圧縮装置130の機能構成について説明する。図6は、画像圧縮装置の機能構成の一例を示す第1の図である。上述したように、画像圧縮装置130には、画像圧縮プログラムがインストールされており、当該プログラムが実行されることで、画像圧縮装置130は、符号化部620として機能する。
【0061】
符号化部620は圧縮部の一例である。符号化部620は、差分部621、直交変換部622、量子化部623、エントロピ符号化部624、逆量子化部625、逆直交変換部626を有する。また、符号化部620は、加算部627、バッファ部628、ループ内フィルタ部629、フレームバッファ部630、画面内予測部631、画面間予測部632を有する。
【0062】
差分部621は、画像データ(例えば、画像データ410)と予測画像データとの差分を算出し、予測残差信号を出力する。
【0063】
直交変換部622は、差分部621により出力された予測残差信号に対して、直交変換処理を実行する。
【0064】
量子化部623は、直交変換処理された予測残差信号を量子化し、量子化信号を生成する。量子化部623では、符号530に示す量子化値(解析装置120より送信された量子化値または決定された最適な量子化値)を用いて量子化信号を生成する。
【0065】
エントロピ符号化部624は、量子化信号に対してエントロピ符号化処理を行うことで、圧縮データを生成する。
【0066】
逆量子化部625は、量子化信号を逆量子化する。逆直交変換部626は、逆量子化された量子化信号に対して、逆直交変換処理を実行する。
【0067】
加算部627は、逆直交変換部626より出力された信号と、予測画像データとを加算することで、参照画像データを生成する。バッファ部628は、加算部627により生成された参照画像データを格納する。
【0068】
ループ内フィルタ部629は、バッファ部628に格納された参照画像データに対してフィルタ処理を行う。ループ内フィルタ部629には、
・デブロッキングフィルタ(Deblocking filter:DB)、
・サンプルアダプティブオフセットフィルタ(Sample Adaptive Offset filter:SAO)、
・適応ループフィルタ(Adaptive loop filter:ALF)、
が含まれる。
【0069】
フレームバッファ部630は、ループ内フィルタ部629によりフィルタ処理が行われた参照画像データをフレーム単位で格納する。
【0070】
画面内予測部631は、参照画像データに基づいて画面内予測を行い、予測画像データを生成する。画面間予測部632は、入力された画像データ(例えば、画像データ410)と参照画像データとを用いてフレーム間で動き補償を行い、予測画像データを生成する。
【0071】
なお、画面内予測部631または画面間予測部632により生成された予測画像データは、差分部621及び加算部627に出力される。
【0072】
なお、上記説明では、符号化部620が、MPEG-2、MPEG-4、H.264、HEVCなどの既存の動画符号化方式を用いて圧縮処理を行うものとした。しかしながら、符号化部620による圧縮処理は、これらの動画符号化方式に限定されず、量子化等のパラメータにより圧縮率を制御する任意の符号化方式を用いて行われてもよい。
【0073】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図7は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第1のフローチャートである。
【0074】
ステップS701において、量子化値設定部330は、圧縮レベルを初期化する(最小の量子化値(Q)を設定する)とともに、圧縮レベルの上限を設定する(最大の量子化値(Q)を設定する)。
【0075】
ステップS702において、入力部310は画像データまたは圧縮データをフレーム単位で取得する。また、入力部310は、圧縮データを取得した場合にあっては、取得した圧縮データを復号し、復号データを生成する。
【0076】
ステップS703において、CNN部320は、画像データ(または復号データ)に対して認識処理を行い、認識結果を出力する。
【0077】
ステップS704において、重要特徴マップ生成部350は、CNN部構造情報に基づいて、各領域の認識結果への影響度を示す重要特徴マップを生成する。
【0078】
ステップS705において、集計部360は、重要特徴マップに基づいて、各領域の影響度をブロック単位で集計する。また、集計部360は、集計結果を、現在の圧縮レベル(量子化値)と対応付けて、集計結果格納部380に格納する。
【0079】
ステップS706において、出力部340は画像データと、現在の圧縮レベル(量子化値)とを画像圧縮装置130に送信する。また、画像圧縮装置130は、送信された画像データを、現在の圧縮レベル(量子化値)で圧縮処理を行い、圧縮データを生成する。
【0080】
ステップS707において、量子化値設定部330は、圧縮レベルを上げる(ここでは、量子化値(Q)を設定する)。
【0081】
ステップS708において、量子化値決定部370は、現在の圧縮レベルが上限を超えたか否か(現在の量子化値が、最大の量子化値(Q)を超えたか否か)を判定する。ステップS708において、現在の圧縮レベルが上限を超えていないと判定した場合には(ステップS708においてNoの場合には)、ステップS702に戻る。
【0082】
この場合、ステップS702では、ステップS706において生成された圧縮データを取得し、取得した圧縮データを復号した復号データに対して、ステップS703からステップS707の処理を行う。
【0083】
一方、ステップS708において、現在の圧縮レベルが上限を超えたと判定した場合には、ステップS708においてYesの場合には)、ステップS709に進む。
【0084】
ステップS709において、量子化値決定部370は、集計結果格納部380に格納された集計結果に基づいて、ブロック単位で最適な圧縮レベル(最適な量子化値)を決定する。また、出力部340は、決定された最適な量子化値を画像圧縮装置130に送信する。
【0085】
ステップS710において、画像圧縮装置130は、決定された最適な量子化値を用いて、画像データに対して圧縮処理を行い、圧縮データをストレージ装置140に格納する。
【0086】
以上の説明から明らかなように、第1の実施形態に係る解析装置は、画像データに対して異なる量子化値を用いて圧縮処理を行った場合の各圧縮データを取得する。また、第1の実施形態に係る解析装置は、各圧縮データを復号した復号データを学習済みモデルに入力し、認識処理を行った際のCNN部構造情報に基づいて、認識結果への影響度を示す重要特徴マップを生成する。また、第1の実施形態に係る解析装置は、重要特徴マップに基づいて影響度をブロック単位で集計し、異なる圧縮レベルに対応する、各ブロックの集計値に基づいて、画像データの各ブロックの圧縮レベルを決定する。
【0087】
これにより、第1の実施形態によれば、認識結果への影響度に基づいて決定した最適な量子化値を用いて圧縮処理を行うことができる。つまり、第1の実施形態によれば、AIによる画像認識処理に適した圧縮処理を実現することができる。
【0088】
[第2の実施形態]
上記第1の実施形態では、認識結果への影響度に基づいて最適な量子化値を決定するにあたり、画像圧縮装置130に設定可能な最小の量子化値から最大の量子化値まで全てを用いるものとして説明した。
【0089】
これに対して、第2の実施形態では、所定の量子化値を用いて圧縮処理を行うことで、最適な量子化値を決定する場合について説明する。以下、第2の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0090】
<解析装置の機能構成>
はじめに、第2の実施形態に係る解析装置120の機能構成について説明する。図8は、解析装置の機能構成の一例を示す第2の図である。図3に示した機能構成との相違点は、量子化値設定部330に代えて最大量子化値設定部810が含まれる点、及び、量子化値決定部820の機能が、量子化値決定部370の機能とは異なる点である。また、解析装置120が、集計結果格納部380に代えて、グループ情報格納部830を有する点である。
【0091】
最大量子化値設定部810は、最大の量子化値(Q)を、出力部340に通知する。量子化値決定部820は、格納部の一例であるグループ情報格納部830に格納されたグループ情報から、集計部360より通知された各ブロックの集計値が属するグループを判定する。また、量子化値決定部820は、判定したグループに予め対応付けられた最適な量子化値を、出力部340に通知する。
【0092】
<量子化値決定部による処理の具体例>
次に、量子化値決定部820による処理の具体例について説明する。図9は、量子化値決定部による処理の具体例を示す第2の図である。
【0093】
図9に示すように、グループ情報910には、最小の量子化値から最大の量子化値まで変化させた場合の集計値の典型的な複数のパターン(図9の例では、グラフ911~913に示す3つのパターン)を含むグループが規定されている。また、グループ情報910には、グループごとに、最適な量子化値が規定されている。図13の例は、
・グループ1に、最適な量子化値GQが、
・グループ2に、最適な量子化値GQが、
・グループ3に、最適な量子化値GQが、
それぞれ対応付けられていることを示している。
【0094】
量子化値決定部820では、集計部360から、最大の量子化値(Q)を用いて画像データに対して圧縮処理が行われた場合の圧縮データを復号した復号データについて、認識処理が行われることで算出された、各ブロックの集計値を取得する。また、量子化値決定部820では、各ブロックの集計値がいずれのグループの属するかを判定する。
【0095】
更に、量子化値決定部820では、判定したグループに対応付けられた量子化値を、各ブロックの最適な量子化値として、出力部340に通知する。
【0096】
なお、図9の例では、グループ情報910を1種類のみ示したが、グループ情報は複数種類あってもよい。例えば、認識処理の対象となるオブジェクトの種類ごとに異なるグループ情報を用意してもよい。あるいは、画像データの複雑度ごとに異なるグループ情報を用意してもよい。
【0097】
また、図9の例では、グループ情報910がグラフ911~913を含むものとして説明したが、近似関数や深層学習等のモデルを含んでいてもよい。
【0098】
また、図9の例では、グループを判定するにあたり、最大の量子化値(Q)を用いたが、最大の量子化値(Q)を含む複数の量子化値、あるいは、最大の量子化値(Q)を含まない複数の量子化値を用いてもよい。
【0099】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図10は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第2のフローチャートである。
【0100】
ステップS1001において、最大量子化値設定部810は、最大圧縮レベル(最大の量子化値(Q))を設定する。
【0101】
ステップS1002において、入力部310は画像データをフレーム単位で取得する。
【0102】
ステップS1003において、出力部340は、画像データと最大圧縮レベル(最大の量子化値(Q))とを画像圧縮装置130に送信する。また、画像圧縮装置130は、送信された画像データに対して、最大圧縮レベル(最大の量子化値(Q))で圧縮処理を行い、圧縮データを生成する。
【0103】
ステップS1004において、入力部310は、画像圧縮装置130により生成された圧縮データを取得し、復号する。また、CNN部320は、復号データに対して認識処理を行い、認識結果を出力する。
【0104】
ステップS1005において、重要特徴マップ生成部350は、CNN部構造情報に基づいて、認識結果への影響度を示す重要特徴マップを生成する。
【0105】
ステップS1006において、集計部360は、重要特徴マップに基づいて、各領域の影響度をブロック単位で集計する。また、集計部360は、集計結果を、量子化値決定部820に通知する。
【0106】
ステップS1007において、量子化値決定部820は、グループ情報格納部830に格納されたグループ情報を参照し、集計部360より通知された各ブロックの集計値が、いずれのグループに属するかを判定する。これにより、量子化値決定部820は、各ブロックをグループ分けする。
【0107】
ステップS1008において、量子化値決定部1220は、ブロックごとに判定したグループそれぞれに対応付けられた最適な量子化値を、各ブロックの最適な量子化値として決定する。また、出力部340は、決定された最適な量子化値を画像圧縮装置130に送信する。
【0108】
ステップS1009において、画像圧縮装置130は、決定された最適な量子化値を用いて、画像データに対して圧縮処理を行い、圧縮データをストレージ装置140に格納する。
【0109】
以上の説明から明らかなように、第2の実施形態に係る解析装置は、画像データに対して最大の量子化値を用いて圧縮処理を行った場合の圧縮データを取得する。また、第2の実施形態に係る解析装置は、圧縮データを復号した復号データを学習済みモデルに入力して認識処理を行った際のCNN部構造情報に基づいて、認識結果への影響度を示す重要特徴マップを生成する。また、第2の実施形態に係る解析装置は、重要特徴マップに基づいて影響度をブロック単位で集計し、集計値が属するグループを判定することで、グループに対応付けられた量子化値を、最適な量子化値として決定する。
【0110】
これにより、第2の実施形態によれば、認識結果への影響度に基づいて決定した最適な量子化値を用いて圧縮処理を行うことができる。つまり、第2の実施形態によれば、上記第1の実施形態と同様の効果を奏する。加えて、第2の実施形態によれば、上記第1の実施形態と比較して、より少ない圧縮処理回数で、最適な量子化値を決定することができる。
【0111】
[第3の実施形態]
上記第2の実施形態では、集計値が属するグループを判定するにあたり、最大の量子化値を用いて圧縮処理を行った場合の圧縮データを復号した復号データに対して認識処理を行うものとして説明した。これに対して、第3の実施形態では、最大の量子化値を用いて圧縮処理を行うのと、同等の効果を有する画像処理を行うことで、疑似的な圧縮データ(疑似圧縮データ)を生成し、当該疑似圧縮データに対して認識処理を行う。これにより、第3の実施形態によれば、第2の実施形態と比較して、更に少ない圧縮処理回数で、最適な量子化値を決定することができる。以下、第3の実施形態について、上記第2の実施形態との相違点を中心に説明する。
【0112】
<解析装置の機能構成>
はじめに、第3の実施形態に係る解析装置120の機能構成について説明する。図11は、解析装置の機能構成の一例を示す第3の図である。図8に示した機能構成との相違点は、最大量子化値設定部810が含まれていない点、及び、画像処理部1110が含まれている点である。
【0113】
画像処理部1110は、入力部310により取得された画像データに対して、例えば、ローパスフィルタを用いてフィルタリング処理を行う。これにより、画像処理部1110では、画像データに対して最大の量子化値を用いて圧縮処理を行うのと同様の効果を有する疑似圧縮データを生成する。
【0114】
また、画像処理部1110は、生成した疑似圧縮データをCNN部320に入力する。これにより、CNN部320では、疑似圧縮データに対して認識処理を行い、重要特徴マップ生成部350では、CNN部構造情報に基づいて重要特徴マップを生成する。更に、集計部360では、重要特徴マップをブロック単位で集計し、量子化値決定部820では、グループ情報格納部830に格納されたグループ情報から、各ブロックの集計値が属するグループを判定することで、最適な量子化値を出力部340に通知する。
【0115】
<量子化値決定部による処理の具体例>
次に、量子化値決定部820による処理の具体例について説明する。図12は、量子化値決定部による処理の具体例を示す第3の図である。図9との相違点は、量子化値決定部820が、ローパスフィルタを用いてフィルタリング処理された疑似圧縮データに対して、認識処理が行われた場合の、各ブロックの集計値を取得する点である。
【0116】
なお、量子化値決定部820は、取得した各ブロックの集計値に基づいて、各ブロックがいずれのグループの属するかを判定し、判定したグループに対応付けられた最適な量子化値を、各ブロックの最適な量子化値として、出力部340に通知する。
【0117】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図13は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第3のフローチャートである。なお、図10に示した第2のフローチャートとの相違点は、ステップS1001の処理を含まない点と、ステップS1003及びS1004に代えてステップS1301及びS1302の処理を含む点である。
【0118】
ステップS1301において、画像処理部1110は、ローパスフィルタを用いたフィルタリング処理により、疑似画像データを生成し、CNN部320に入力する。
【0119】
ステップS1302において、入力部310は、疑似画像データを取得し、CNN部320は、取得された疑似画像データに対して認識処理を行い、認識結果を出力する。
【0120】
以上の説明から明らかなように、第3の実施形態に係る解析装置は、画像データに対してフィルタリング処理を行い、疑似圧縮データを取得する。また、第3の実施形態に係る解析装置は、疑似圧縮データを学習済みモデルに入力して認識処理を行った際のCNN部構造情報に基づいて、認識結果への影響度を示す重要特徴マップを生成する。また、第3の実施形態に係る解析装置は、重要特徴マップに基づいて影響度をブロック単位で集計し、集計値が属するグループを判定することで、グループに対応付けられた量子化値を、最適な量子化値として決定する。
【0121】
これにより、第3の実施形態によれば、認識結果への影響度に基づいて決定した最適な量子化値を用いて圧縮処理を行うことができる。つまり、第3の実施形態によれば、上記第1の実施形態と同様の効果を奏する。加えて、第3の実施形態によれば、上記第1及び第2の実施形態と比較して、より少ない圧縮処理回数で、最適な量子化値を決定することができる。
【0122】
[第4の実施形態]
上記第1の実施形態では、フレーム単位の画像データが1枚入力されるごとに、異なる量子化値を用いて圧縮処理を行い、最適な量子化値を決定するものとして説明した。これに対して、第4の実施形態では、フレーム単位の画像データが複数枚入力される間に、異なる量子化値を用いて圧縮処理を行い、最適な量子化値を決定する。以下、第4の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0123】
<解析装置の機能構成>
はじめに、第4の実施形態に係る解析装置120の機能構成について説明する。図14は、解析装置の機能構成の一例を示す第4の図である。図3に示した機能構成との相違点は、位置判定部1410が含まれる点、量子化値設定部1420の機能が、量子化値設定部330の機能とは異なる点、量子化値決定部370及び集計結果格納部380が含まれていない点である。
【0124】
位置判定部1410は、CNN部320より出力された認識結果から、画像データまたは圧縮データを復号した復号データに含まれるオブジェクトの位置情報を抽出する。また、位置判定部1410は、抽出した位置情報を量子化値設定部1420に通知する。
【0125】
量子化値設定部1420は、画像圧縮装置130が圧縮処理を行う際に用いる圧縮レベル(量子化値)を出力部340に通知する。量子化値設定部1420では、最小の量子化値から開始して、所定のきざみ幅で加算した量子化値を、順次、出力部340に通知する。
【0126】
また、量子化値設定部1420は、量子化値を通知するごとに、集計部360から通知される各ブロックの集計値を監視し、各ブロックの集計値が所定の閾値を超えた場合には、量子化値を下げる。このように、量子化値設定部1420では、集計値が所定の閾値を超えないように、通知する量子化値を制御することができる。
【0127】
なお、量子化値設定部1420では、位置判定部1410より通知されたオブジェクトの位置情報に基づいて、集計値を監視するブロックを特定し、特定したブロックの量子化値を、特定したブロックの集計値に基づいて制御する。
【0128】
<量子化値設定部による処理の具体例>
次に、量子化値設定部1420による処理の具体例について説明する。図15は、量子化値設定部による処理の具体例を示す図である。図15において、圧縮データを復号した復号データ1511~1514は、それぞれ、時間=t~tにおいて入力部310が取得した圧縮データを復号した復号データを示している。
【0129】
圧縮データを復号した復号データ1511~1514には、それぞれ、オブジェクト1521が含まれている。図15の例は、オブジェクト1521が時間の経過とともに、圧縮データを復号した復号データ1511~1514内を、左下から右上に向かって移動する様子を示している。
【0130】
量子化値設定部1420では、位置判定部1410から通知される位置情報に基づいて、圧縮データを復号した復号データ1511~1514内におけるオブジェクト1521の位置を特定する。
【0131】
また、量子化値設定部1420では、特定した位置に含まれる各ブロックの集計値を集計部360から取得する。図15において、符号1531~1534は、量子化値設定部1420が集計部360から通知された、特定した位置に含まれるブロックの集計値を示している。
【0132】
図15の例では、量子化値設定部1420が、所定のきざみ幅で量子化値Qx+1、Qx+2、Qx+3を通知した様子を示している(ただし、Qx+1<Qx+2<Qx+3)。
【0133】
ここで、量子化値Qx+3を用いて圧縮処理が行われた場合の圧縮データを復号した復号データ1513に対して、認識処理が行われることで算出された、オブジェクト1521に含まれるブロックの集計値(符号1533)が、所定の閾値1530を超えたとする。
【0134】
この場合、量子化値設定部1420では、次に通知する量子化値を、量子化値Qx+3よりも小さい量子化値にする(図15の例では、量子化値Qx+2を通知した様子を示している)。
【0135】
このように、オブジェクトに含まれる各ブロックの集計値が、所定の閾値を超えないように、通知する量子化値を制御することで、量子化値設定部1420では、最適な量子化値を継続して通知することができる。
【0136】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図16は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第4のフローチャートである。なお、図7に示した第1のフローチャートとの相違点は、ステップS1601~ステップS1606である。
【0137】
ステップS1601において、集計部360は、重要特徴マップに基づいて、各領域の影響度をブロック単位で集計する。
【0138】
ステップS1602において、量子化値設定部1420は、位置判定部1410より通知された位置情報に基づいて、オブジェクトの位置を特定し、特定したオブジェクトの位置に含まれる各ブロックの集計値が、所定の閾値を超えたか否かを判定する。
【0139】
ステップS1602において、所定の閾値を超えていないと判定した場合には(ステップS1602においてNoの場合には)、ステップS1603に進む。
【0140】
ステップS1603において、量子化値設定部1420は、所定のきざみ幅で量子化値を加算し、加算後の量子化値を出力部1430に通知する。
【0141】
一方、ステップS1602において、所定の閾値を超えたと判定した場合には(ステップS1602においてYesの場合には)、ステップS1604に進む。
【0142】
ステップS1604において、量子化値設定部1420は、所定のきざみ幅で量子化値を減算し、減算後の量子化値を出力部1430に通知する。
【0143】
ステップS1605において、画像圧縮装置130は、出力部1430より送信される量子化値を用いて、画像データに対して圧縮処理を行い、圧縮データをストレージ装置140に格納する。
【0144】
ステップS1606において、入力部310は、画像圧縮処理を終了するか否かを判定し、終了しないと判定した場合には(ステップS1606においてNoの場合には)、ステップS702に戻る。一方、ステップS1606において、終了すると判定した場合には(ステップS1606においてYesの場合には)、画像圧縮処理を終了する。
【0145】
以上の説明から明らかなように、第4の実施形態に係る解析装置は、複数の画像データそれぞれを異なる量子化値を用いて圧縮処理を行った場合の各圧縮データを取得する。また、第4の実施形態に係る解析装置は、各圧縮データを復号した復号データを学習済みモデルに入力し、認識処理を行った際のCNN部構造情報に基づいて、認識結果への影響度を示す重要特徴マップを生成する。また、第4の実施形態に係る解析装置は、重要特徴マップをブロック単位で集計し、オブジェクトの位置に含まれるブロックの集計値を取得する。更に、第4の実施形態に係る解析装置は、取得した集計値が所定の閾値を超えないように、量子化値を制御する。
【0146】
このように、オブジェクトに含まれる各ブロックの集計値が、所定の閾値を超えないように、量子化値を制御することで、第4の実施形態に係る解析装置によれば、最適な量子化値を継続して出力することができる。
【0147】
[第5の実施形態]
上記第1乃至第3の実施形態では、ブロックごとに集計値を算出し、ブロックごとに最適な量子化値を決定するものとして説明した。これに対して、第5の実施形態では、基準となるブロックの集計値と比較し、比較結果に基づいて最適な量子化値を決定する。以下、第5の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0148】
<量子化値決定部による処理の具体例>
図17は、量子化値決定部による処理の具体例を示す第4の図である。図17において、グラフ510_1~510_mは、既に、図5を用いて説明したグラフ510_1~510_mと同じである。
【0149】
ここで、図17の例は、ブロック番号="ブロック1"を基準となるブロックとしており、当該ブロックにおける集計値は"v"、当該ブロックにおける最適な量子化値は"BQ"であるとする。
【0150】
この場合、量子化値決定部では、例えば、
・ブロック2について、最適な量子化値=BQ×v/v
・ブロック3について、最適な量子化値=BQ×v/v
・・・
・ブロックmについて、最適な量子化値=BQ×v/v
をそれぞれ算出する。これにより、量子化値決定部では、最適な量子化値1700を決定する。
【0151】
<圧縮処理システムによる画像圧縮処理の流れ>
図18は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第5のフローチャートである。図7に示した第1のフローチャートとの相違点は、ステップS1801である。
【0152】
ステップS1801において、量子化値決定部は、基準となるブロックの集計値と各ブロックの集計値とを比較し、基準となるブロックの最適な量子化値と比較結果とに基づいて、各ブロックの最適な量子化値を決定する。
【0153】
このように、基準となるブロックの集計値と比較し、比較結果に基づいて最適な量子化値を決定することで、第5の実施形態によれば、画像データによらず、所定の圧縮レベル以上の圧縮レベルで、圧縮処理を行うことができる。また、第5の実施形態によれば、ブロック間で量子化値の整合をとることができる。
【0154】
[第6の実施形態]
上記第1乃至第3の実施形態では、ブロックごとに集計値を算出し、算出した集計値に基づいて、量子化値を決定するものとして説明した。これに対して、第6の実施形態では、画像圧縮装置130に予め設定されている量子化値(人間の視覚特性に基づいて設定された量子化値)を、算出した集計値を用いて補正することで、最適な量子化値を決定する。以下、第6の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0155】
<量子化値決定部による処理の具体例>
図19は、量子化値決定部による処理の具体例を示す第5の図である。図19において、量子化値1900は、画像圧縮装置130に予め設定されている量子化値であって、人間の視覚特性に基づいて設定された量子化値である。
【0156】
また、図19において、集計結果1910は、所定の圧縮データを復号した復号データが認識処理された際の集計結果である。ここでいう所定の圧縮データとは、復号した復号データに対するCNN部320による認識処理において、誤った認識結果が出力された際の量子化値が設定される直前に設定された量子化値を用いて圧縮処理が行われた場合の圧縮データを指す。
【0157】
また、図19において、最適な量子化値1920は、量子化値1900と集計結果1910とに基づいて算出された量子化値である。図19に示すように、最適な量子化値1920は、下式(式1)に基づいて算出される。
(式1)Qa(x,y)=Qpb(x,y)+P(x,y)×重み係数
なお、式1において、Qa(x,y)は、座標(x,y)により特定されるブロックの最適な量子化値を指す。また、式1において、Qpb(x,y)は、座標(x,y)により特定されるブロックの量子化値であって、画像圧縮装置130に予め設定されている量子化値を指す。また、式1において、P(x,y)は、座標(x,y)により特定されるブロックの、所定の圧縮データを復号した復号データに対して認識処理が行われた際の集計結果を指す。
【0158】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図20は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第6のフローチャートである。図7に示した第1のフローチャートとの相違点は、ステップS2001、ステップS2002~2005である。
【0159】
ステップS2001において、量子化値決定部は、CNN部より正しい認識結果が出力されたか否かを判定する。ステップS2001において、正しい認識結果が出力されたと判定した場合には(ステップS2001においてYesの場合には)、ステップS704に進む。
【0160】
ステップS704において、重要特徴マップ生成部350は、CNN部構造情報に基づいて、各領域の認識結果への影響度を示す重要特徴マップを生成する。
【0161】
ステップS705において、集計部360は、重要特徴マップに基づいて、各領域の影響度をブロック単位で集計する。また、集計部360は、集計結果を、現在の圧縮レベル(量子化値)と対応付けて、集計結果格納部380に格納する。
【0162】
ステップS2002において、量子化値設定部330は、圧縮レベル(量子化値)を上げる。
【0163】
ステップS2003において、出力部340は画像データと、現在の圧縮レベル(量子化値)とを画像圧縮装置130に送信する。また、画像圧縮装置130は、送信された画像データに対して、現在の圧縮レベル(量子化値)を用いて圧縮処理を行い、圧縮データを生成する。
【0164】
一方、ステップS2001において、誤った認識結果が出力されたと判定した場合には(ステップS2001においてNoの場合には)、ステップS2004に進む。
【0165】
ステップS2004において、量子化値決定部は、最後に認識可能となった復号データの集計値に重み係数をかけ、画像圧縮装置130に予め設定されている量子化値に加算する。
【0166】
ステップS2005において、画像圧縮装置130は、ステップS2004において算出された量子化値を用いて、画像データに対して圧縮処理を行い、圧縮データをストレージ装置140に格納する。
【0167】
このように、画像圧縮装置に予め設定されている量子化値(人間の視覚特性に基づいて設定された量子化値)を、算出した集計値を用いて補正することで、第6の実施形態によれば、最適な量子化値を決定することができる。
【0168】
[第7の実施形態]
上記第1乃至第6の実施形態では、認識結果への影響度をブロック単位で集計し、集計結果に基づいて最適な量子化値を決定する場合について説明した。これに対して、第8の実施形態では、集計結果に基づいて、画像データを有効領域と無効領域とに分け、無効領域に含まれるブロックについては無効化したうえで、有効領域に対して圧縮処理を行う。
【0169】
なお、無効領域に含まれるブロックの無効化とは、例えば、無効領域に含まれるブロックの各画素の画素値を"0"にすることを指し、無効領域に含まれるブロックを無効化した画像データを、以下では"無効化画像データ"と称す。
【0170】
このように、無効化画像データに対して(無効化画像データに含まれる有効領域に対して)圧縮処理を行うことで、画像データ全体に対して圧縮処理を行う場合と比較して、圧縮データのデータサイズをより削減することができる。
【0171】
なお、無効化画像データに対して圧縮処理を行うにあたっては、予め定められた量子化値を用いてもよいし、上記第1乃至第6の実施形態において説明した方法に基づいて決定した最適な量子化値を用いてもよい。また、任意の形状のデータを圧縮処理可能な圧縮方式の場合にあっては、無効化画像データの無効領域を取り除いたデータを圧縮処理してもよい。以下、第7の実施形態について、上記第1の実施形態との相違点を中心に説明する。
【0172】
<解析装置の機能構成>
はじめに、第7の実施形態に係る解析装置120の機能構成について説明する。図21は、解析装置の機能構成の一例を示す第5の図である。図3に示した機能構成との相違点は、量子化値決定部370に代えて、無効領域判定部2110及び無効化画像生成部2120を有する点である。
【0173】
無効領域判定部2110は、集計結果格納部380に格納された、各ブロックの認識結果への影響度の集計値(量子化値の数に応じた数の集計値)に基づいて、各ブロックが無効領域に属するブロックであるのか否かを判定する。
【0174】
なお、無効領域判定部2110では、各ブロックが無効領域に属するブロックであるのか否かを判定するにあたり、まず、CNN部320より認識結果を取得し、正しい認識結果が出力されなかった際の量子化値を特定する。続いて、無効領域判定部2110では、最小の量子化値に対応する集計値と、特定した量子化値における集計値との差分が所定の閾値以上であるか否かに基づいて、各ブロックが無効領域に属するブロックであるのか否かを判定する。
【0175】
また、無効領域判定部2110は、無効領域に属すると判定したブロックを無効化画像生成部2120に通知する。
【0176】
無効化画像生成部2120は、画像データに含まれる各ブロックのうち、無効領域判定部2110より通知されたブロックを無効化した、無効化画像データを生成する。また、無効化画像生成部2120は、生成した無効化画像データを、出力部340に通知する。
【0177】
<無効領域判定部による処理の具体例>
次に、無効領域判定部2110による処理の具体例について説明する。図22は、無効領域判定部による処理の具体例を示す図である。図22において、グラフ510_1~510_mは、図5に示したグラフ510_1~510_mと同じである。ただし、図22に示すグラフ510_1~510_mには、CNN部320による認識処理において、正しい認識結果が出力されなかった際の量子化値(認識不可の量子化値)を明示している(一点鎖線参照)。
【0178】
無効領域判定部2110では、最小の量子化値に対応する集計値と、認識不可の量子化値に対応する集計値との差分を算出する。図22の例は、ブロック1~ブロックmそれぞれにおいて算出された差分が、Δ~Δであることを示している。
【0179】
無効領域判定部2110では、算出した差分が、所定の閾値以上であるか否かに基づいて、対応するブロックが無効領域に属するブロックか否かを判定する。
【0180】
図22の例は、Δが所定の閾値未満であるため、無効領域判定部2110が、ブロック1を、無効領域に属するブロックであると判定した様子を示している。一方、図22の例は、Δが所定の閾値以上であるため、無効領域判定部2110が、ブロック2を、有効領域に属するブロックであると判定した様子を示している。また、図22の例は、Δが所定の閾値未満であるため、無効領域判定部2110が、ブロック3を、無効領域に属するブロックであると判定した様子を示している。
【0181】
<無効化画像データの具体例>
次に、無効化画像生成部2120により生成される無効化画像データの具体例について説明する。図23は、無効化画像データの具体例を示す図である。
【0182】
図23に示す無効化画像データ2300において、ハッチングが施された領域2301は、無効領域判定部2110により無効領域と判定された領域である。一方、無効化画像データ2300において、ハッチングが施されていない領域2302は、無効領域判定部2110により有効領域と判定された領域である。
【0183】
出力部340では、領域2301に含まれる各ブロックを無効化し、領域2302に含まれる各ブロックからなる画像データ(無効化画像データ2300)を画像圧縮装置130に送信する。
【0184】
これにより、画像圧縮装置130では、無効化画像データ2300に対して圧縮処理を行うことで、圧縮データを生成する。このため、画像データ全体に対して、最適な量子化値を用いて圧縮処理を行う場合と比較して、圧縮データのデータサイズをより削減することができる。
【0185】
なお、画像圧縮装置130が無効化画像データ2300に対して圧縮処理を行うにあたり、解析装置120では、領域2302に含まれる各ブロックについて、認識結果への影響度に応じた最適な量子化値を算出し、画像圧縮装置130に送信してもよい。
【0186】
これにより、無効化画像データ2300について、予め定められた量子化値を用いて圧縮処理を行う場合と比較して、圧縮データのデータサイズを更に削減することができる。
【0187】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図24は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第7のフローチャートである。図7に示した第1のフローチャートとの相違点は、ステップS2401~S2404である。
【0188】
ステップS2401において、無効領域判定部2110は、CNN部320より正しい認識結果が出力されたか否かを判定する。ステップS2401において、正しい認識結果が出力されたと判定した場合には(ステップS2401においてYesの場合には)、ステップS702に戻る。
【0189】
一方、ステップS2401において、正しい認識結果が出力されなかったと判定した場合には(ステップS2401においてNoの場合には)、ステップS2402に進む。
【0190】
ステップS2402において、無効領域判定部2110は、各ブロックについて、最小の量子化値に対応付けられた集計値と、認識不可時の量子化値に対応付けられた集計値との差分を算出する。また、無効領域判定部2110は、算出した差分に基づいて、各ブロックが無効領域に属するブロックか否かを判定する。
【0191】
ステップS2403において、無効化画像生成部2120は、無効領域に属するブロックを無効化することで、無効化画像データを生成する。
【0192】
ステップS2404において、出力部340は、無効化画像データを画像圧縮装置130に送信する。また、画像圧縮装置130は、無効化画像データに対して圧縮処理を行い、圧縮データをストレージ装置140に格納する。なお、画像圧縮装置130では、正しい認識結果が出力されなかったと判定される直前の正しい認識結果が出力された際の量子化値を用いて圧縮処理を行う。
【0193】
以上の説明から明らかなように、第7の実施形態に係る解析装置は、画像データに対して異なる量子化値を用いて圧縮処理を行った場合の各圧縮データを取得する。また、第7の実施形態に係る解析装置は、各圧縮データを復号した復号データを学習済みモデルに入力して認識処理を行った際のCNN部構造情報に基づいて、認識結果への影響度を示す重要特徴マップを生成し、ブロックごとに影響度を集計する。また、第7の実施形態に係る解析装置は、正しい認識結果が出力されなかった際の量子化値に対応する集計値と、最小の量子化値に対応する集計値との差分に基づいて、各ブロックが無効領域に属するか否かを判定する。更に、第7の実施形態に係る解析装置は、無効領域に属するブロックを無効化した無効化画像データに対して圧縮処理を行う。
【0194】
このように、認識結果への影響度に基づいて判定した無効領域を無効化した画像データに対して圧縮処理を行うことで、上記第1の実施形態と同様の効果を奏するとともに、上記第1の実施形態と比較して、圧縮データのデータサイズを更に削減することができる。
【0195】
[第8の実施形態]
上記第7の実施形態では、認識結果への影響度に基づいて無効領域に属するブロックを判定するものとして説明した。これに対して、第8の実施形態では、認識結果への影響度に基づいて有効領域に属するブロックを判定する。
【0196】
なお、第8の実施形態では、有効領域に属するブロックを判定するにあたり、はじめに最小限の有効領域を設定しておき、量子化値を上げた際の各ブロックの集計値の変化に応じて、徐々に有効領域を拡張していくことで、有効領域を確定する。このように、第8の実施形態では、量子化値を上げたことによる認識精度の低下を、有効領域の拡張によりカバーすることで、より大きな量子化値を最適な量子化値として決定することができる。以下、第8の実施形態について、上記第7の実施形態との相違点を中心に説明する。
【0197】
<解析装置の機能構成>
はじめに、第8の実施形態に係る解析装置120の機能構成について説明する。図25は、解析装置の機能構成の一例を示す第6の図である。図21に示した機能構成との相違点は、初期無効化画像生成部2510を有する点、及び、無効領域判定部2110に代えて有効領域判定部2520を有する点である。また、無効化画像生成部2530の機能が、図21の無効化画像生成部2120の機能とは異なっている点である。
【0198】
初期無効化画像生成部2510は、予め設定された最小限の有効領域を含む無効化画像データ(初期無効化画像データと称す)を生成する。また、初期無効化画像生成部2510は、生成した初期無効化画像データを出力部340に通知する。
【0199】
有効領域判定部2520は、集計結果格納部380より集計結果を読み出し、量子化値の変化に対する各ブロックの集計値の変化量に基づいて、有効領域を拡張するか否かを判定する。また、有効領域判定部2520は、有効領域を拡張すると判定した場合、拡張後の有効領域を無効化画像生成部2530に通知する。
【0200】
無効化画像生成部2530は、有効領域判定部2520より通知された拡張後の有効領域以外の領域(無効領域)に属するブロックを無効化し、無効化画像データを生成する。また、無効化画像生成部2530は、生成した無効化画像データを出力部340に通知する。
【0201】
<有効領域判定部による処理の具体例>
次に、有効領域判定部2520による処理の具体例について説明する。図26は、有効領域判定部による処理の具体例を示す図である。図26において、初期無効化画像データ2610は、初期無効化画像生成部2510により生成された初期無効化画像データを示している。
【0202】
初期無効化画像データ2610において、ハッチングが施された領域は、無効領域2611である。一方、初期無効化画像データ2610において、ハッチングが施されていない領域2612は、最小限の有効領域である。
【0203】
ここで、画像圧縮装置130では、異なる量子化値に基づいて初期無効化画像データ2610に対して圧縮処理を行う。これにより、CNN部320では、それぞれの量子化値に対応する圧縮データを復号した復号データに対して認識処理を行い、集計部360では、それぞれの量子化値に対応する、認識結果への影響度をブロック単位で集計する。
【0204】
図26において、グラフ2641は、それぞれの量子化値に対応する、ブロック2612_1(ブロック番号="ブロックX")の集計値を示している。また、グラフ2642は、それぞれの量子化値に対応する、ブロック2612_2(ブロック番号="ブロックX+1")の集計値を示している。
【0205】
有効領域判定部2520では、例えば、ブロック2612_1について、現在の量子化値に対応する集計値と、最小の量子化値に対応する集計値との差分Δを算出する。これにより、有効領域判定部2520は、有効領域を、ブロック2612_1に隣接するブロックまで拡張すべきか否かを判定する。
【0206】
同様に、有効領域判定部2520では、ブロック2612_2について、現在の量子化値に対応する集計値と、最小の量子化値に対応する集計値との差分Δx+1を算出する。これにより、有効領域判定部2520は、有効領域を、ブロック2612_2に隣接するブロックまで拡張すべきか否かを判定する。
【0207】
なお、有効領域判定部2520では、有効領域と無効領域との境界位置内側にある全てのブロックについて同様の判定を行う。
【0208】
図26の例は、ブロック2612_1については、Δが所定の閾値未満であるため、隣接するブロックまで有効領域を拡張する必要はないと判定した様子を示している。また、図26の例は、ブロック2612_2については、Δx+1が所定の閾値以上であるため、隣接するブロックまで有効領域を拡張する必要があると判定された様子を示している。
【0209】
なお、有効領域判定部2520では、ブロック2612_2に隣接するブロックを有効領域に含めた、拡張後の有効領域を無効化画像生成部2530に通知し、無効化画像生成部2530では、通知された拡張後の有効領域に基づいて、無効化画像データを生成する。
【0210】
図26において、無効化画像データ2620は、無効化画像生成部2530が、有効領域判定部2520より通知された、拡張後の有効領域に基づいて生成した無効化画像データを示している。
【0211】
図26に示すように、無効化画像データ2620の有効領域2622には、ブロック2612_2に隣接するブロック2631が含まれる。また、無効化画像データ2620の無効領域2621は、有効領域が拡張されたことで、初期無効化画像データ2610の無効領域2611よりも小さくなっている。
【0212】
このように、有効領域判定部2520では、量子化値を上げた際の各ブロックの集計値の変化に応じて、徐々に有効領域を拡張していくことで、有効領域を確定する。なお、有効領域判定部2520では、隣接するブロックを有効領域に含めることで、有効領域と無効領域との境界位置内側にあったブロックの集計値が下がり、最小の量子化値に対応する集計値との差分が所定の閾値未満になった場合、有効領域の拡張を継続する。
【0213】
一方、有効領域判定部2520では、隣接するブロックを有効領域に含めたが、有効領域と無効領域との境界位置内側にあったブロックの集計値が下がらず、最小の量子化値に対応する集計値との差分が所定の閾値以上のままの場合には、有効領域の拡張を終了する。
【0214】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図27は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第8のフローチャートである。
【0215】
ステップS2701において、入力部310は画像データをフレーム単位で取得する。
【0216】
ステップS2702において、CNN部320は、画像データに対して認識処理を行うことで、認識結果を出力し、重要特徴マップ生成部350は重要特徴マップを生成する。また、集計部360は、ブロック単位で影響度を集計する。これにより、各ブロックについて、最小の量子化値に対応する集計値が算出される。
【0217】
ステップS2703において、量子化値設定部330は、圧縮レベルを初期化するとともに、圧縮レベルの上限を設定する。また、初期無効化画像生成部2510は、初期無効化画像データを生成する。
【0218】
ステップS2704において、画像圧縮装置130は、現在の量子化値を用いて、無効化画像データ(ここでは初期無効化画像データ)に対して圧縮処理を行い、圧縮データを生成する。
【0219】
ステップS2705において、CNN部320は、圧縮データを復号した復号データに対して認識処理を行うことで認識結果を出力し、重要特徴マップ生成部350は重要特徴マップを生成する。また、集計部360は、ブロック単位で影響度を集計する。
【0220】
ステップS2706において、有効領域判定部2520は、有効領域と無効領域との境界位置内側のブロックについて、現在の量子化値に対応する集計値と、最小の量子化値に対応する集計値との差分が所定の閾値以上であるか否かを判定する。
【0221】
ステップS2706において、所定の閾値未満であると判定された場合には(ステップS2706においてNoの場合には)、ステップS2712に進む。
【0222】
一方、ステップS2706において、所定の閾値以上であると判定された場合には(ステップS2706においてYesの場合には)、ステップS2707に進む。
【0223】
ステップS2707において、有効領域判定部2520は、差分が所定の閾値以上のブロックに隣接するブロックを有効領域に含め、拡張後の有効領域を無効化画像生成部2530に通知する。
【0224】
ステップS2708において、無効化画像生成部2530は、拡張後の有効領域に基づいて無効化画像データを生成する。
【0225】
ステップS2709において、画像圧縮装置130は、現在の量子化値を用いて、無効化画像データに対して圧縮処理を行い、圧縮データを生成する。
【0226】
ステップS2710において、CNN部320は、圧縮データを復号した復号データに対して認識処理を行うことで認識結果を出力し、重要特徴マップ生成部350は重要特徴マップを生成する。また、集計部360は、ブロック単位で影響度を集計する。
【0227】
ステップS2711において、有効領域判定部2520は、ステップS2706において、所定の閾値以上であると判定されたブロックについて集計値が下がり、差分が所定の閾値未満になったか否かを判定する。
【0228】
ステップS2711において、所定の閾値未満になったと判定した場合には(ステップS2711においてYesの場合には)、ステップS2712に進む。
【0229】
ステップS2712において、量子化値設定部330は、圧縮レベル(量子化値)を上げ、ステップS2704に戻る。
【0230】
一方、ステップS2711において、所定の閾値以上のままであると判定した場合には(ステップS2711においてNoの場合には)、ステップS2713に進む。
【0231】
ステップS2713において、無効化画像生成部2530は、ステップS2707において有効領域を拡張する直前の有効領域に基づいて無効化画像データを生成する。
【0232】
ステップS2714において、画像圧縮装置130は、ステップS2707において有効領域を拡張する直前の圧縮レベル(量子化値)を用いて、ステップS2713において生成された無効化画像データに対して圧縮処理を行い、圧縮データを格納する。
【0233】
以上の説明から明らかなように、第8の実施形態に係る解析装置は、はじめに最小限の有効領域を設定しておき、量子化値を上げた際の各ブロックの集計値の変化に応じて、徐々に有効領域を拡張していく。
【0234】
これにより、第8の実施形態に係る解析装置によれば、量子化値を上げたことによる認識精度の低下を、有効領域の拡張によりカバーすることが可能となり、より大きな量子化値を最適な量子化値として圧縮処理を行うことが可能となる。
【0235】
この結果、第8の実施形態によれば、上記第1の実施形態と同様の効果を奏するとともに、上記第1の実施形態よりも、圧縮データのデータサイズをより削減することができる。
【0236】
[第9の実施形態]
上記第8の実施形態では、有効領域を拡張するにあたり、有効領域と無効領域との境界位置内側のブロックの集計値に着目した。これに対して、第9の実施形態では、有効領域を拡張するにあたり、境界位置を介して隣接するブロックの集計値(有効領域と無効領域との境界位置内側のブロックの集計値と外側のブロックの集計値と)に着目する。以下、第9の実施形態について、上記第8の実施形態との相違点を中心に説明する。
【0237】
<解析装置の機能構成>
はじめに、第8の実施形態に係る解析装置120の機能構成について説明する。図28は、解析装置の機能構成の一例を示す第7の図である。図25に示した機能構成との相違点は、有効領域判定部2810の機能が、有効領域判定部2520の機能と異なる点、無効化画像生成部2830の機能が、無効化画像生成部2530の機能と異なる点である。また、初期無効化画像生成部2510に代えて、初期有効領域設定部2820を有する点である。
【0238】
初期有効領域設定部2820は、はじめに、有効領域判定部2810に対して最小限の有効領域を設定する。
【0239】
有効領域判定部2810は、集計結果格納部380より集計結果を読み出し、それぞれの量子化値における各ブロックの集計値に基づいて、有効領域を拡張するか否かを判定する。
【0240】
具体的には、有効領域判定部2810は、画像データ全体に対して量子化値を上げるごとに生成されるそれぞれの圧縮データについて、各ブロックの集計値が算出され、集計結果格納部380に格納された場合に、各ブロックの集計値を取得する。
【0241】
その際、有効領域判定部2810では、初期有効領域と無効領域との境界位置内側にあるブロックと外側にあるブロックとの間(境界位置を介して隣接するブロック間)で、集計値の差分を算出する。そして、有効領域判定部2810では、算出した差分が所定の閾値以上であると判定した場合に、境界位置外側にあるブロックを有効領域に含める。
【0242】
その後も、継続して、画像データ全体に対して量子化値を上げるごとに生成されるそれぞれの圧縮データについて、同様に、各ブロックの集計値を取得する。その際、有効領域判定部2810では、拡張後の有効領域と無効領域との境界位置内側にあるブロックと外側にあるブロックとの間で、集計値の差分を算出する。そして、有効領域判定部2810では、算出した差分が所定の閾値以上であると判定した場合に、境界位置外側にあるブロックを有効領域に含める。
【0243】
無効化画像生成部2830は、有効領域判定部2810による有効領域の拡張が完了した際の有効領域に基づいて無効化画像データを生成する。また、無効化画像生成部2830は、生成した無効化画像データを出力部340に通知する。
【0244】
<有効領域判定部による処理の具体例>
次に、有効領域判定部2810による処理の具体例について説明する。図29は、有効領域判定部による処理の具体例を示す第2の図である。図29において、画像データ2910は、画像圧縮装置130により圧縮処理される画像データである。また、画像データ2910内の、初期有効領域2912は、初期有効領域設定部2820により設定された初期有効領域を示している。
【0245】
ここで、画像データ2910に対しては、画像圧縮装置130が、それぞれの量子化値を用いて圧縮処理を行い、圧縮データを生成する。これにより、CNN部320では、それぞれの量子化値に対応する圧縮データを復号した復号データに対して認識処理を行い、集計部360では、それぞれの量子化値に対応する、認識結果への影響度をブロック単位で集計する。
【0246】
図29において、グラフ2931は、それぞれの量子化値に対応する、ブロック2921(ブロック番号="ブロックX")の集計値を示している。なお、ブロック2921は、初期有効領域2912と無効領域2911との境界位置内側のブロックである。
【0247】
また、グラフ2932は、それぞれの量子化値に対応する、ブロック2922(ブロック番号="ブロックX+1")の集計値を示している。なお、ブロック2922は、初期有効領域2912と無効領域2911との境界位置外側のブロックであって、ブロック2921と隣接するブロックである。
【0248】
有効領域判定部2810では、現在の量子化値に対応する、ブロック2921の集計値と、ブロック2922の集計値との差分を算出し、算出した差分が所定の閾値以上であるか否かを判定することで、ブロック2922を有効領域に含めるか否かを判定する。
【0249】
図29の例は、ブロック2922について、有効領域に含めると判定された様子を示している。なお、有効領域判定部2810では、初期有効領域と無効領域との境界位置内側にある全てのブロックについて同様の処理を行う。
【0250】
図29において、画像データ2940は、有効領域判定部2810により、拡張後の有効領域2942が設定された様子を示している。図29において、ブロック2922は、新たに有効領域に含めたブロックである。
【0251】
なお、画像圧縮装置130では、その後も、継続して画像データ全体に対して量子化値を上げるごとに生成されるそれぞれの圧縮データについて、同様に、各ブロックの集計値を取得する。その際、有効領域判定部2810では、拡張後の有効領域2942と無効領域2941との境界位置内側にあるブロックと外側にあるブロックとの間で、集計値の差分を算出する。そして、有効領域判定部2810では、算出した差分が所定の閾値以上であると判定した場合に、境界位置外側にあるブロックを有効領域に含める。
【0252】
有効領域判定部2810では、有効領域の拡張が完了すると、完了時の有効領域を無効化画像生成部2830に通知し、無効化画像生成部2830では、通知された有効領域に基づいて、無効化画像データを生成する。
【0253】
<圧縮処理システムによる画像圧縮処理の流れ>
次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図30は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第9のフローチャートである。図27に示した第8のフローチャートとの相違点は、ステップS3001~S3009である。
【0254】
ステップS3001において、初期有効領域設定部2820は、初期有効領域を設定する。
【0255】
ステップS3002において、画像圧縮装置130は、現在の量子化値で画像データに対して圧縮処理を行い、圧縮データを生成する。
【0256】
ステップS3003において、CNN部320は、圧縮データを復号した復号データに対して認識処理を行うことで認識結果を出力し、重要特徴マップ生成部350は、重要特徴マップを生成する。また、集計部360は、ブロック単位で影響度を集計する。
【0257】
ステップS3004において、有効領域判定部2810は、現在の有効領域及び無効領域について、境界位置内側のブロックと外側のブロックとの間で集計値の差分を算出し、算出した集計値の差分が所定の閾値以上であるか否かを判定する。
【0258】
ステップS3004において、所定の閾値未満であると判定した場合には(ステップS3004においてNoの場合には)、ステップS3006に進む。
【0259】
一方、ステップS3004において、所定の閾値以上であると判定した場合には(ステップS3004においてYesの場合には)、ステップS3005に進む。
【0260】
ステップS3005において、有効領域判定部2810は、境界位置外側のブロックを有効領域に含める。
【0261】
ステップS3006において、量子化値設定部330は、圧縮レベル(量子化値)を上げ、ステップS3007に進む。
【0262】
ステップS3007において、量子化値設定部330は、圧縮レベル(量子化値)が上限を超えたか否かを判定し、上限を超えていないと判定した場合には(ステップS3007においてNoの場合には)、ステップS3002に戻る。
【0263】
一方、ステップS3007において、上限を超えたと判定した場合には(ステップS3007においてYesの場合には)、ステップS3008に進む。
【0264】
ステップS3008において、無効化画像生成部2830は、現在の有効領域に基づいて、無効化画像データを生成する。
【0265】
ステップS3009において、画像圧縮装置130は、無効化画像データに対して圧縮処理を行い、圧縮データを格納する。なお、画像圧縮装置130では、例えば、有効領域を拡張した際の量子化値を用いて、無効化画像データに対して圧縮処理を行う。
【0266】
以上の説明から明らかなように、第9の実施形態に係る解析装置は、はじめに最小限の有効領域を設定しておき、量子化値を上げた際の、境界位置の隣接ブロック間の集計値の差分に応じて、徐々に有効領域を拡張していく。
【0267】
これにより、第9の実施形態に係る解析装置によれば、量子化値を上げたことによる認識精度の低下を、有効領域の拡張によりカバーすることが可能となり、より大きな量子化値を最適な量子化値として圧縮処理を行うことが可能となる。
【0268】
この結果、第9の実施形態によれば、上記第1の実施形態と同様の効果を奏するとともに、上記第1の実施形態よりも、圧縮データのデータサイズをより削減することができる。
【0269】
[その他の実施形態]
上記第1の実施形態では、最小の量子化値から最大の量子化値まで全てを用いて圧縮処理を行うものとして説明した。しかしながら、圧縮処理に用いる量子化値は、これに限られず、最小の量子化値から最大の量子化値までの間に含まれる所定数の量子化値を用いて圧縮処理を行ってもよい。所定数の量子化値とは、最適な量子化値を決定しうる数の量子化値を指し、少なくとも2以上の量子化値を指す。
【0270】
また、上記第1の実施形態では、画像データに1のオブジェクトが含まれるものとして説明した。しかしながら、画像データには複数のオブジェクトが含まれていてもよい。この場合、画像データ内の複数のオブジェクトについて、同時に、CNN部構造情報を取得し、複数のオブジェクトについて同時に圧縮レベルを決定してもよい。あるいは、画像データ内の複数のオブジェクトについて、個別に、CNN部構造情報を取得し、オブジェクトごとに圧縮レベルを決定した後に、各オブジェクトの圧縮レベルをマージすることで、画像データ全体の圧縮レベルを決定してもよい。
【0271】
また、上記第3の実施形態では、疑似圧縮データを生成する際の画像処理として、ローパスフィルタを用いたフィルタリング処理を例に挙げて説明した。しかしながら、疑似圧縮データを生成する際の画像処理は、これに限定されない。
【0272】
例えば、画像データ全体をフーリエ変換し、高周波成分をカットしたうえで、逆フーリエ変換してもよい。あるいは、画像データをブロック単位でフーリエ変換し、高周波成分をカットしたうえで、逆フーリエ変換してもよい。
【0273】
あるいは、画像データ全体をDCT変換し、量子化したうえで、逆DCT変換してもよい。あるいは、画像データをブロック単位でDCT変換し、量子化したうえで、逆DCT変換してもよい。
【0274】
また、上記第7~第9のいずれかの実施形態、あるいは、上記第7~第9のいずれかの実施形態を組み合わせた実施形態において、認識結果への影響度が大きい領域と小さい領域とに分離し、
・認識結果への影響度が大きい領域に対しては、上記第1~第6のいずれかの実施形態、あるいは、上記第1~第6のいずれかの実施形態を組み合わせた実施形態を適用し、
・認識結果への影響度が小さい領域に対しては、高圧縮の量子化値を適用してもよい(あるいは、無効領域としてもよい)。
【0275】
なお、上記各実施形態において算出される圧縮レベルや、有効領域または無効領域を示す情報は、圧縮処理が行われることでデータサイズの削減が期待できる画像データに対する前処理の処理内容を決定するための情報として用いてもよい。ここでいう前処理には、例えば、画像データから色情報を削減する処理や、画像データから高周波成分を削減する処理等が含まれる。
【0276】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【0277】
100 :圧縮処理システム
120 :解析装置
130 :画像圧縮装置
310 :入力部
320 :CNN部
330 :量子化値設定部
340 :出力部
350 :重要特徴マップ生成部
360 :集計部
370 :量子化値決定部
420 :集計結果
810 :最大量子化値設定部
820 :量子化値決定部
910 :グループ情報
1110 :画像処理部
1410 :位置判定部
1420 :量子化値設定部
1430 :出力部
2110 :無効領域判定部
2120 :無効化画像生成部
2300 :無効化画像データ
2510 :初期無効化画像生成部
2520 :有効領域判定部
2530 :無効化画像生成部
2810 :有効領域判定部
2820 :初期有効領域設定部
2830 :無効化画像生成部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30