(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023181935
(43)【公開日】2023-12-25
(54)【発明の名称】情報生成装置、情報生成方法、およびプログラム
(51)【国際特許分類】
G06F 16/583 20190101AFI20231218BHJP
G06V 20/70 20220101ALI20231218BHJP
【FI】
G06F16/583
G06V20/70
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022095347
(22)【出願日】2022-06-13
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【弁理士】
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【弁理士】
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【弁理士】
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【弁理士】
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】東 秀憲
(72)【発明者】
【氏名】大川 浩司
【テーマコード(参考)】
5B175
5L096
【Fターム(参考)】
5B175DA02
5B175FB02
5L096AA06
5L096BA08
5L096DA02
5L096FA69
5L096HA05
5L096HA09
(57)【要約】 (修正有)
【課題】画像から検出されたオブジェクトの情報に係るメタデータの情報量が増大してしまうことの抑制を行う情報生成装置、情報生成方法及びプログラムを提供する。
【解決手段】情報生成装置による情報生成処理は、画像を複数の領域に分割するための分割情報を取得し、画像のフレーム番号に基づき、画像を分割して得られる複数の領域のうち、少なくとも1つの領域を更新領域として決定し、画像の更新領域において検出されたオブジェクトの情報を含むメタデータを生成する。
【選択図】
図7
【特許請求の範囲】
【請求項1】
画像のフレーム番号に基づき、前記画像を分割して得られる複数の領域のうち、少なくとも1つの領域を更新領域として決定する決定手段と、
前記画像の前記更新領域において検出されたオブジェクトの情報を含むメタデータを生成する生成手段と、を有することを特徴とする情報生成装置。
【請求項2】
前記画像に対しオブジェクトの検出を行う検出手段を更に有することを特徴とする請求項1に記載の情報生成装置。
【請求項3】
前記検出手段は、前記画像の前記複数の領域のうち前記更新領域として決定された領域に対してのみオブジェクトの検出を実行することを特徴とする請求項2に記載の情報生成装置。
【請求項4】
前記決定手段は、
前記画像の前記フレーム番号が第1フレーム番号である場合、前記画像の前記複数の領域のうち第1領域を前記更新領域として決定し、前記画像の前記フレーム番号が前記第1フレーム番号と異なる第2フレーム番号である場合、前記画像の前記複数の領域のうち前記第1領域と異なる第2領域を前記更新領域として決定することを特徴とする請求項1に記載の情報生成装置。
【請求項5】
前記決定手段は、更に、前記画像における前記複数の領域のうち重要領域を決定し、
前記決定手段は、前記複数の領域のうち前記重要領域として決定された領域については、前記画像のフレーム番号によらず前記更新領域として決定することを特徴とする請求項1に記載の情報生成装置。
【請求項6】
前記生成手段は、前記メタデータとして、ARSEIに準拠するメタデータを生成することを特徴とする請求項1に記載の情報生成装置。
【請求項7】
前記生成手段は、前記画像の前記更新領域において検出されたオブジェクトの位置情報を前記メタデータに含めることを特徴とする請求項6に記載の情報生成装置。
【請求項8】
前記生成手段は、前記位置情報として、ar_bounding_box_top、ar_bounding_box_left、ar_bounding_box_width、およびar_bounding_box_heightの情報を前記メタデータに含めることを特徴とする請求項7に記載の情報生成装置。
【請求項9】
前記生成手段は、前記前記画像の前記更新領域において検出されたオブジェクトのインデックスとしてar_object_idxの情報を前記メタデータに含めることを特徴とする請求項6に記載の情報生成装置。
【請求項10】
画像のフレーム番号に基づき、前記画像を分割して得られる複数の領域のうち、少なくとも1つの領域を更新領域として決定する決定工程と、
前記画像の前記更新領域において検出されたオブジェクトの情報を含むメタデータを生成する生成工程と、を有することを特徴とする情報生成方法。
【請求項11】
コンピュータを、請求項1乃至9のいずれか1項に記載の情報生成装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報生成技術に関する。
【背景技術】
【0002】
VCA(Video Content Analysis)を用いて画像中のオブジェクトを検出し、該オブジェクトの情報に関するメタデータを生成してクライアント装置に配信するシステムが広く普及している。
【0003】
特許文献1では、画像から検出されたオブジェクトの位置情報をメタデータとしてクライアント装置に送信する旨の技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1では、画像から検出されたオブジェクトの各々について一律で位置情報等の情報をメタデータに格納し、クライアント装置に送信しているため、メタデータの情報量が増大してしまうことがある。
【0006】
そこで本発明は、画像から検出されたオブジェクトの情報に係るメタデータの情報量が増大してしまうことの抑制を目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明の情報生成装置は、例えば以下の構成を備える。すなわち、画像のフレーム番号に基づき、前記画像を分割して得られる複数の領域のうち、少なくとも1つの領域を更新領域として決定する決定手段と、前記画像の前記更新領域において検出されたオブジェクトの情報を含むメタデータを生成する生成手段と、を有する。
【発明の効果】
【0008】
本発明によれば、画像から検出されたオブジェクトの情報に係るメタデータの情報量の増大を抑制することができる。
【図面の簡単な説明】
【0009】
【
図2】情報生成装置の機能ブロックを示す図である。
【
図4】生成されるビットストリーム構造の一例を示す図である。
【
図7】情報生成処理の流れを示すフローチャートである。
【
図8】情報生成処理の流れを示すフローチャートである。
【
図9】情報生成装置のハードウェア構成を示す図である。
【発明を実施するための形態】
【0010】
以下、添付図面を参照しながら、本発明に係る実施形態について説明する。なお、以下の実施形態において示す構成は一例に過ぎず、図示された構成に限定されるものではない。
【0011】
(実施形態1)
図1は、本実施形態におけるシステム構成を示す図である。本実施形態におけるシステムは、情報生成装置100、クライアント装置101、ディスプレイ103、およびネットワーク102を有している。
【0012】
情報生成装置100およびクライアント装置101は、ネットワーク102を介して相互に接続されている。ネットワーク102は、例えばETHERNET(登録商標)等の通信規格に準拠する複数のルータ、スイッチ、ケーブル等から実現される。
【0013】
なお、ネットワーク102は、インターネットや有線LAN(Local Area Network)、無線LAN(Wireless Lan)、WAN(Wide Area Network)等により実現されてもよい。
【0014】
情報生成装置100は、画像から検出されたオブジェクトの情報を含むメタデータを生成する装置である。情報生成装置100は、撮像した画像を符号化して得られた符号化データと、該画像について生成されたメタデータとを統合したビットストリームを、ネットワーク102を介し、クライアント装置101等の外部装置へ送信する。なお、情報生成装置100は、撮像装置としての機能を有していてもよく、情報生成装置100が撮像した画像を符号化し且つ該画像からメタデータを生成し、それらを統合してビットストリームを生成するようにしてもよい。また、情報生成装置100は、画像を撮像する撮像装置(不図示)や画像を記録する記録装置(不図示)から画像を取得してもよい。このとき、情報生成装置100は、取得した該画像を符号化して符号化データを生成し、かつ該画像からメタデータを生成し、それらを統合してビットストリームを生成するようにしてもよい。クライアント装置101は、例えば、CPUなどのプロセッサーを有するパーソナルコンピュータ等の情報処理装置である。
【0015】
ディスプレイ103は、LCD(Liquid Crystal Display)等により構成されており、撮像装置100から送信された配信データに含まれる符号化データをクライアント装置102が復号することで得られた復号画像などを表示する。ディスプレイ103は、HDMI(登録商標)(High Definition Multimedia Interface)等の通信規格に準拠したディスプレイケーブルを介してクライアント装置101と接続されている。なお、ディスプレイ103およびクライアント装置101は、単一の筐体に設けられてもよい。
【0016】
ここで
図2に示す機能ブロックを参照して、本実施形態における情報生成装置100の処理について説明する。
図2は、本実施形態のメタデータの生成を実行する情報生成装置100の機能ブロックを示す図である。なお
図2に示す各機能は、例えば、次のようにして実現される。すなわち、
図9を参照して後述する情報生成装置100のROM(Read Only Memory)920に格納されたコンピュータプログラムを撮像装置100のCPU(Central Processing Unit)900が実行することで実現される。
【0017】
図2において、取得部201は、撮像された画像を取得する。情報生成装置100が撮像装置としての機能を有していている場合には、取得部201は、情報生成装置100が撮像した画像を取得するようにしてもよい。また取得部201は、ネットワーク102を介して、撮像装置や記録装置から画像を取得するようにしてもよい。なお取得部201は、動画像を構成する一連のフレームの画像(複数の画像)の各々を、1つずつ順次取得していく。
【0018】
画像処理部202は、取得部201が取得した画像に含まれるオブジェクトの検出を行う。画像からオブジェクトを検出する方法としては、パターンマッチングや機械学習により学習された学習モデルなどを用いる公知の技術を利用するものとする。なお本実施形態において検出対象とするオブジェクトは人物とするが、動物、車、動体など他のオブジェクトを検出対象としてもよい。
【0019】
メタデータ生成部203は、画像に対する画像処理部202によるオブジェクトの検出結果に基づき、該画像についてメタデータを生成する。メタデータ生成部203は、記憶部204に対し生成した該メタデータを格納する。
【0020】
符号化部205は、取得部201により取得された画像を符号化して、符号データを生成し出力する。なお本実施形態における符号化部205は、H.265を用いて画像を符号化し符号データを生成するものとするが、H.264やH.266など他の動画符号化規格を用いて画像を符号化してもよい。統合符号化部206は、メタデータ生成部203から出力されたメタデータと、符号化部205から出力された符号データとを統合し、ビットストリームを生成する。出力部207は、ネットワーク102を介して、統合符号化部206で生成されたビットストリームをクライアント装置101などの外部装置に出力する。
【0021】
ここで
図3を参照して、メタデータ生成部203で生成されるメタデータについてより具体的に説明する。以下メタデータのフォーマットとして、H.265におけるAnnotated Region SEIメッセージ(以下、ARSEI)ARSEIが用いられるものとする。
図3に示すメタデータ300は、本実施形態におけるメタデータでありARSEIに準拠したデータ構造を有している。メタデータ生成部104は、該データ構造内の各種シンタックスに数値を格納することで、メタデータを生成することができる。
【0022】
ここで
図3に示すメタデータ300に含まれるデータ領域301は、メタデータ300の一部であり、ar_object_label_present_flagを“1”とすることで記述される情報である。
【0023】
データ領域301において、メタデータ生成部203は、クライアント装置101に対して通知したいラベル(ar_label)の個数をar_num_label_updatesに挿入する。なおここでのラベル(ar_label)とは、255byte以下の所定の情報を記述できるシンタックスである。以下の説明においては、“personA”というラベルと、“personB”というラベルと、を定義してクライアント装置101に通知したい場合を想定する。このとき、ar_num_label_updatesは2となる。次に、メタデータ生成部203は、ar_num_label_updatesの数値だけ、ラベルを識別するインデックスをar_label_idx[i]に挿入する。例えば、メタデータ生成部203は、ar_label_idx[0]=0、ar_label_idx[1]=1とする。そして、メタデータ生成部203は、ラベルのインデックス(ar_label_idx)の各々に関連付けるラベルをar_label[ar_label_idx[i]]に挿入する。例えば、メタデータ生成部104は、ar_label[ar_label_idx[0]]=“personA”、ar_label[ar_label_idx[1]]=“personB”とする。このようなデータ領域301を含むメタデータ300を生成することで、ラベルインデックス(ar_label_idx)“0”とラベル(第1ラベル)“pesonA”との関連付け、および、ラベルインデックス(ar_label_idx)“1”とラベル(第2ラベル)“pesonB”との関連付け、をそれぞれ定義付けることができる。データ領域301を含むメタデータ300を取得したクライアント装置101は、ラベルインデックス(ar_label_idx)“0”とラベル“pesonA”との関連付け、および、ラベルインデックス(ar_label_idx)“1”とラベル“pesonB”との関連付け、をそれぞれ情報として得ることができる。
【0024】
続いて、
図3のメタデータ300に含まれるデータ領域302は、メタデータ300の一部であり、ar_num_object_updatesに1以上255以下の値をセットすることで記述される情報である。データ領域302では、画像内に存在する各オブジェクトに対応するラベルインデックスと、当該オブジェクトが存在する領域の位置情報を記述することができる。
【0025】
具体的には、メタデータ生成部203は、或る画像についてクライアント装置101に対して情報の更新が行われるオブジェクトの数をar_num_object_updatesに挿入する。ここで以下、一例として、画像から検出された第1オブジェクトと第2オブジェクトについて位置やラベルに関する情報の更新を行う場合について考える。このとき、メタデータ生成部203は、ar_num_object_updatesとして“2”の数値をセットする。続いて、メタデータ生成部104は、ar_num_object_updatesの数だけ、オブジェクトのインデックスをar_object_idx[i]に挿入する。ここで第1オブジェクトのオブジェクトインデックスとして“0”、第2オブジェクトのオブジェクトインデックスとして”1”が割り当てられるものとする。このときメタデータ生成部203は、データ領域302に含まれるar_object_idx[0]=0、ar_object_idx[1]=1と設定する。
【0026】
次に、メタデータ生成部203は、ar_num_object_updatesが示す数だけ(言い換えればデータ領域302のi=0およびi=1の各々について)、ar_object_label_update_flagを‘1’にする。なお、ar_object_label_update_flagを1にすることで、該ar_object_idx[i]に紐づけるラベルインデックスを更新することが可能である。ar_object_label_update_flagを‘1’にしたうえで、メタデータ生成部203は、ar_object_label_idx[ar_object_idx[i]]に、前述のラベルインデックスから画像内に存在する各オブジェクトに紐づけたいラベルインデックスを選択して挿入する。例えばオブジェクトインデックス“0”の第1オブジェクトにラベルインデックス0の“personA”というラベル(ar_label)を紐づけたい場合を想定する。このとき、メタデータ生成部203は、ar_object_label_idx[ar_object_idx[0]]に、“personA”のラベル(ar_label)に対応するラベルインデックス(ar_label_idx)“0”をセットする。すなわち、メタデータ生成部104は、ar_object_label_idx[ar_object_idx[0]]=0とする。このようにすることで、第1オブジェクトのオブジェクトインデックス“0”と、“personA”のラベル名のラベルインデックス“0”とを対応付けることができる。
【0027】
また、メタデータ生成部203は、オブジェクトの領域の位置情報として、ar_bounding_box_top[ar_object_idx[i]]、ar_bounding_box_left[ar_object_idx[i]]、ar_bounding_box_width[ar_object_idx[i]]、ar_bounding_box_height[ar_object_idx[i]]をメタデータに格納する。なお、ar_bounding_box_top[ar_object_idx[i]]、および、ar_bounding_box_left[ar_object_idx[i]]はオブジェクトの領域の左上の座標を示す。また、ar_bounding_box_width[ar_object_idx[i]]は該オブジェクトの領域の幅を示し、ar_bounding_box_height[ar_object_idx[i]]は該オブジェクトの領域の高さを示す。
【0028】
以上のように、上述のメタデータ300を用いたオブジェクトに関する情報の更新では、画像内に存在しうるオブジェクトのラベルや、画像内に存在するオブジェクトの領域の位置情報を追加可能である。一方で、これらの情報は、所定のフラグを用いて削除することも可能である。例えば、データ領域301の或るiについて、ar_label_cancel_flagを1にすることで、対応するar_label_idx[i]の情報を削除することができる。また、データ領域302の或るiについて、ar_object_cancel_flagを1にすることで、ar_object_label_idx[ar_object_idx[i]]を用いたオブジェクトインデックスとラベルインデックスとの対応付けを削除(キャンセル)することが可能である。また、データ領域302の或るiについて、ar_bounding_box_cancel_flagを‘1’とすることで、対応するオブジェクトの領域の位置情報(ar_bounding_box_top[ar_object_idx[i]]、ar_bounding_box_left[ar_object_idx[i]]、ar_bounding_box_width[ar_object_idx[i]]、ar_bounding_box_height[ar_object_idx[i]])を削除(キャンセル)することが可能である。
【0029】
また、メタデータ生成部203は、ar_num_object_updatesを“0”にすることで、データ領域302の情報をメタデータ300にシグナリングせず、ar_object_label_present_flagを“1”にして、データ領域301の情報をメタデータ300にシグナリングするようにしてもよい。例えば、メタデータ生成部203は、画像のビットストリームをクライアント装置に配信する前に、予め、データ領域301の情報をメタデータ300にシグナリングして、クライアント装置に配信してもよい。このとき、データ領域301において、予めクライアント装置101に通知しておきたいラベルの情報をクライアントに送っておくことが可能である。例えば、メタデータ生成部203は、上述の説明のように、ar_label_idx[0]=0、ar_label[ar_label_idx[0]]=“personA”とし、更に、ar_label_idx[1]=1、ar_label[ar_label_idx[1]]=“personB”とセットする。そして、メタデータ生成部104は、それらの情報を含むメタデータ300をクライアント装置に通知しておくことが可能である。このときクライアント装置101は、画像データの受信に先立って、ラベルインデックス(ar_label_idx)“0”とラベル(ar_label_idx)“personA”との関連付け、および、ラベルインデックス(ar_label_idx)“1”とラベル(ar_label_idx)“personB”との関連付け、を情報として取得することが可能となる。
【0030】
そしてそれ以降の処理においては、メタデータ生成部203は、例えば、ar_object_label_present_flagを“0”にして、データ領域301の情報をメタデータ300にシグナリングせず、且つ、ar_num_object_updatesを1以上255以下にすることで、データ領域302の情報をメタデータ300にシグナリングするようにしてもよい。このとき、メタデータ生成部203は、ラベルインデックスとラベルの関連付けの更新や新たなラベルの追加などは行わず、現在処理対象とする画像から検出されたオブジェクトに紐づくラベルおよび領域の位置情報の更新を行うことができる。
【0031】
ここで
図4を参照して本実施形態におけるビットストリームの例について説明する。
図4は、統合符号化部206により生成されるビットストリーム400を示す。ここで
図4に示すビットストリーム400には、ビデオシーケンスに関するパラメータが含まれるシーケンスヘッダ401が含まれる。また取得部201により取得された第1画像に関するパラメータが格納されるピクチャヘッダ402と、該第1画像についての補助情報であるSEI403と、該第1画像の符号化データであるピクチャデータ404と、がビットストリーム400に含まれる。同様に、第1画像と異なる画像である第2画像に関するパラメータが格納されるピクチャヘッダ405と、該第2画像についてのSEI406と、該第2画像の符号化データであるピクチャデータ407と、がビットストリーム400に含まれる。
【0032】
統合符号化部206は、第1画像から検出されたオブジェクトについてメタデータ生成部203により生成されたメタデータ300をSEI403に格納し、第2画像から検出されたオブジェクトについてメタデータ生成部203に生成されたメタデータ300をSEI406に格納する。このようなビットストリームにより、情報生成装置100は、クライアント装置101に対して、第1画像のメタデータ300により該第1画像のオブジェクトに関する情報を通知することができる。また第2画像のメタデータ300により第2画像のオブジェクトに関する情報をクライアント装置101に通知することができる。
【0033】
ここで
図5は、画像におけるオブジェクトを検出する領域を説明するための図である。本実施形態における画像処理部202は、取得部201により取得された画像を複数の領域に分割する。
図5に示す例では、画像500は4つの領域(領域501~504)に分割される場合を示しているが、これに限らず、2以上の領域に分割されればよい。また、分割の形状としては
図5の例に限らず、他の分割の形状でもよく、例えば
図6のような分割の形状で、画像600を4つの領域(領域601~604)に分割してもよい。
【0034】
本実施形態におけるメタデータ生成部203は、処理対象の画像のフレーム番号に基づき、画像を分割して得られる複数の領域のうち、少なくとも1つの領域を更新領域として決定する。そして、メタデータ生成部203は、画像の更新領域において検出されたオブジェクトの情報を含むメタデータを生成する。
【0035】
ここで
図7に示すフローを参照して、本実施形態における情報生成装置100によるメタデータの生成処理について更に具体的に説明する。
図7に示すフローの処理を実行することでメタデータを生成することができる。なお、
図7に示すフローの処理は、例えば情報生成装置100のROM920に格納されたコンピュータプログラムを情報生成装置100のCPU900が実行して実現される
図2に示す情報生成装置100の機能ブロックにより実行される。
【0036】
まずS701にて、画像処理部202は、画像を複数の領域に分割するための分割形状の情報である分割情報を取得する。例えば、画像処理部202は、分割情報として、
図5に示す領域501~504それぞれの位置情報を取得する。なお
図5の例では、各領域の位置情報は、領域の左上頂点の位置座標および該領域の幅および高さにより定義づけられるものとする。次にS702にて、取得部201は、動画像を構成する複数の画像に含まれる1つの画像を、処理対象の画像として取得する。なお取得部201は、撮像時刻がより前の画像から処理対象の画像として取得するものとし、以降は撮像時刻の順に処理対象の画像を順次取得していく。S703にて、画像処理部202は、現在の処理対象の画像のフレーム番号を特定する。なおここで、画像処理部202は、例えば、
図7に示すフローの処理が開始されてから、1つ目の処理対象の画像にはフレーム番号“1”を割り当て、2つ目の処理対象の画像にはフレーム番号“2”を割り当てる。このように、画像処理部202は、処理対象の画像に割り当てるフレーム番号を順次インクリメントしていく。
【0037】
次にS704にて、メタデータ生成部203は、現在処理対象の画像をS701の分割情報に従って分割して得られた複数の領域のうち、現在処理対象とする画像のフレーム番号に従って、メタデータの更新対象となる領域である更新領域を決定する。ここで例えば、画像に対し
図5に示す分割が実行される場合を想定する。このとき画像処理部202は、現在の処理対象とする画像のフレーム番号を4で割ったときの余りが0の場合、領域501を更新領域として決定する。同様に画像処理部202は、現在の処理対象とする画像のフレーム番号を4で割ったときの余りが1の場合、領域502を更新領域として決定する。同様に画像処理部202は、現在の処理対象とする画像のフレーム番号を4で割ったときの余りが2の場合、領域503を更新領域として決定する。同様に画像処理部202は、現在の処理対象とする画像のフレーム番号を4で割ったときの余りが3の場合、領域504を更新領域として決定する。なおこの例では、画像を分割して得られた複数の領域のうち、画像ごとに1つの領域を更新領域として決定したがこれに限らない。例えば、画像処理部202は、処理対象の画像を分割して得られた複数の領域のうち、該処理対象の画像のフレーム番号に応じて、2以上の領域を更新領域として決定してもよい。具体的には、
図5の場合、画像処理部202は、処理対象の画像のフレーム番号が偶数であれば、領域501と領域504を更新領域として決定し、処理対象の画像のフレーム番号が奇数であれば、領域502と領域503を更新領域として決定してもよい。以上のように本実施形態における画像処理部202は、処理対象の画像を複数の領域に分割し、該処理対象とする画像のフレーム番号に応じて、該複数の領域のうち更新領域を決定する。また画像処理部202は、処理対象の画像のフレーム番号が第1フレーム番号(例えば偶数の番号)である場合、該画像の複数の領域のうち第1領域を更新領域として決定する。一方で、画像処理部202は、該処理対象の画像のフレーム番号が第1フレーム番号と異なる第2フレーム番号(例えば奇数の番号)である場合、該画像の複数の領域のうち第1領域と異なる第2領域を更新領域として決定する。
【0038】
次にS705にて、画像処理部202は、現在処理対象の画像に対しオブジェクトの検出処理を実行する。なおこのとき、画像処理部202は、該現在処理対象の画像の全体にオブジェクトの検出処理を実行してもよいし、該画像の複数の領域のうちS704にて更新領域として決定された領域に対してのみオブジェクトの検出処理を実行するようにしてもよい。S706にて、メタデータ生成部203は、現在処理対象とする画像のメタデータとして、S704で決定された更新領域において検出されたオブジェクトの情報を含むメタデータを生成する。なおここで処理対象の画像について生成されたメタデータと、該処理対象の画像の符号化データとを含むビットストリームがクライアント装置101に送信される。なお、S706にて、メタデータ生成部203は、例えば、処理対象の画像における更新領域から検出されたオブジェクトについて、該オブジェクトの位置情報をメタデータ300のデータ領域302におけるar_bounding_box_top[ar_object_idx[i]]、ar_bounding_box_left[ar_object_idx[i]]、ar_bounding_box_width[ar_object_idx[i]]、ar_bounding_box_height[ar_object_idx[i]]に記述する。また、メタデータ生成部203は、処理対象の画像における更新領域から検出されたオブジェクトについて、該オブジェクトに紐づくラベルインデックスをメタデータ300のデータ領域302において記述する。
【0039】
次にS707にて、画像処理部202は
図7に示すフローの処理を終了するかを判定し、終了しないと判定した場合(S707にてNo)、S702に遷移し、S702にて、取得部201は、次に処理対象とする画像を取得する。一方、S707にて終了すると判定した場合(S707にてYes)、
図7に示すフローの処理を終了する。
【0040】
ARSEIでは、上述で説明したように、画像から検出されたオブジェクトのラベルや位置情報などを含むメタデータを生成することが可能である。またARSEIでは、生成されるメタデータにおいて、1度に更新可能なオブジェクトの最大数は255個と定められている。そして、オブジェクトの外接矩形の左上の座標は4バイトの二次元座標で表現され、オブジェクトの幅および高さがそれぞれ2バイトで表現され、オブジェクトの位置情報は合計8バイトで表現される。このとき、255個のARSEIオブジェクトの更新を30FPSで行う場合を想定すると、8バイト×255個×30≒500kbpsのデータが位置情報の更新のみで必要となってしまう。このように、画像から検出されるオブジェクトの各々の情報を一律でメタデータに含めようとするとメタデータの情報量の増大が発生することがある。
【0041】
これに対し、本実施形態における情報生成装置100は、処理対象の画像を複数の領域に分割し、該処理対象の画像のフレーム番号に応じて、該複数の領域から更新領域を決定する。そして情報生成装置100は、該決定した更新領域から検出されたオブジェクトについてメタデータを生成するようにした。このようにすることで、メタデータ生成の対象となるオブジェクトを限定することができるため、メタデータの情報量の増大を抑制することが可能となる。
【0042】
(実施形態2)
本実施形態では、実施形態1と異なる部分を主に説明し、実施形態1と同一または同等の構成要素、および処理には同一の符号を付すとともに、重複する説明は省略する。
【0043】
ここで
図8に示すフローの処理を参照し、本実施形態における情報生成装置100のメタデータの生成処理について説明する。
図8に示すフローの処理を実行することでメタデータを生成することができる。なお、
図8に示すフローの処理は、例えば情報生成装置100のROM920に格納されたコンピュータプログラムを情報生成装置100のCPU900が実行して実現される
図2に示す情報生成装置100の機能ブロックにより実行される。
【0044】
まずS801にて、画像処理部202は、画像を複数の領域に分割するための分割形状の情報である分割情報を取得する。例えば、画像処理部202は、分割情報として、
図5に示す領域501~504それぞれの位置情報を取得する。
【0045】
次にS802にて、画像処理部202は、重要領域の決定を行う。例えば、画像を複数の領域に分割するための分割情報をユーザにより設定される場合に、該複数の領域のうちいずれを重要領域とするかも併せてユーザにより指定されてもよい。画像処理部202は、S801により取得される分割情報に基づく画像の分割により得られる複数の領域のうち、該ユーザによる指定に基づき、重要領域を決定する。例えば、
図5に示す複数の領域(領域501~504)のうちユーザにより指定された領域502と領域503とを重要領域として決定する。なお、重要領域の決定方法としてユーザによる指定ではなく他の方法を用いてもよい。例えば、画像処理部202は、取得した画像に対し特定オブジェクトの検出処理を実行し、画像における複数の領域のうち、該特定オブジェクトが検出された領域を重要領域として決定してもよい。ここで特定オブジェクトとしては、任意のオブジェクトであってもよく、例えば広場や駐車場など或る所定の場所を特定オブジェクトとしてもよい。
【0046】
次に、S803にて、メタデータ生成部203は、画像における複数の領域のうち、重要領域と、重要領域以外の領域(非重要領域)とで、メタデータの生成の頻度を決定する。例えば、メタデータ生成部203は、重要領域についてオブジェクトが検出される場合には毎フレームの画像で該オブジェクトの情報を、生成するメタデータに含めると決定する。言い換えれば重要領域におけるオブジェクトについては毎フレーム、メタデータの生成が行われる。一方で、メタデータ生成部203は、非重要領域についてオブジェクトが検出される場合には例えばフレーム番号が偶数(もしくは奇数)のときに該オブジェクトの情報を、生成するメタデータに含めると決定する。言い換えれば非重要領域におけるオブジェクトについては、重要領域におけるオブジェクトに比べればメタデータ生成の頻度は低くなる。なおこのようなメタデータの生成頻度は、ユーザの指定により決定されてもよいし、ネットワーク帯域に応じて決定されてもよい。
【0047】
次にS804にて、取得部201は、取得部201は、動画像を構成する複数の画像に含まれる1つの画像を、処理対象の画像として取得する。なお取得部201は、撮像時刻がより早い画像から処理対象の画像として取得するものとし、以降は撮像時刻の順に処理対象の画像を取得していく。次に、S805にて、画像処理部202は、現在の処理対象の画像のフレーム番号を特定する。なおここで、画像処理部202は、例えば、
図8に示すフローの処理が開始されてから、1つ目の処理対象の画像にはフレーム番号“1”を割り当て、2つ目の処理対象の画像にはフレーム番号“2”を割り当てる。このように、画像処理部202は、処理対象の画像に割り当てるフレーム番号を順次インクリメントしていく。
【0048】
次にS806にて、メタデータ生成部203は、現在処理対象の画像をS801の分割情報に従って分割して得られた複数の領域のうち、現在処理対象とする画像のフレーム番号に従って、メタデータの更新対象となる領域である更新領域を決定する。ここで、非重要領域ではフレーム番号が偶数の場合にメタデータで情報の更新が行われる場合を想定する。このとき、S805で特定したフレーム番号が奇数である場合、メタデータ生成部203は、画像の複数の領域のうち重要領域のみを更新領域として決定する。一方で、S805で特定したフレーム番号が偶数である場合、メタデータ生成部203は、画像の複数の領域のすべてを更新領域として決定する。このようにメタデータ生成部203は、複数の領域のうち重要領域として決定された領域については、画像のフレーム番号によらず更新領域として決定する。
【0049】
次に、S807にて、画像処理部202は、処理対象の画像に対してオブジェクトの検出を実行する。なおこのとき、画像処理部202は、該処理対象の画像の全体にオブジェクトの検出処理を実行してもよいし、該画像の複数の領域のうちS806にて更新領域として決定された領域に対してのみオブジェクトの検出処理を実行するようにしてもよい。
【0050】
S808にて、メタデータ生成部203は、現在処理対象とする画像のメタデータとして、S806で決定された更新領域において検出されたオブジェクトの情報を含むメタデータを生成する。なおここで処理対象の画像について生成されたメタデータと、該処理対象の画像の符号化データとを含むビットストリームがクライアント装置101に送信される。なお、S808にて、メタデータ生成部203は、例えば、処理対象の画像における更新領域から検出されたオブジェクトについて、該オブジェクトの位置情報をメタデータ300のデータ領域302におけるar_bounding_box_top[ar_object_idx[i]]、ar_bounding_box_left[ar_object_idx[i]]、ar_bounding_box_width[ar_object_idx[i]]、ar_bounding_box_height[ar_object_idx[i]]に記述する。また、メタデータ生成部203は、処理対象の画像における更新領域から検出されたオブジェクトについて、該オブジェクトに紐づくラベルインデックスをメタデータ300のデータ領域302において記述するようにしてもよい。
【0051】
以上説明したように、本実施形態における情報生成装置100は、画像を複数の領域に分割し、更に、該複数の領域のうち重要領域を決定する。そして情報生成装置100は、重要領域については処理対象の画像のフレーム番号によらず更新領域として決定する。このようにすることで、複数の領域のうち、ユーザにより重要領域とされる領域についての情報は随時更新することが可能となる。
【0052】
(その他の実施形態)
次に
図9を参照して、情報生成装置100のハードウェア構成を説明する。情報生成装置100は、CPU900、RAM910、ROM920、HDD930、および、I/F940を有している。
【0053】
CPU900は、情報生成装置100を統括制御する中央処理装置である。RAM910は、CPU900が実行するコンピュータプログラムを一時的に記憶する。また、RAM910は、CPU900が処理を実行する際に用いるワークエリアを提供する。また、RAM910は、例えば、フレームメモリとして機能したり、バッファメモリとして機能したりする。
【0054】
ROM920は、CPU900が情報生成装置100を制御するためのプログラムなどを記憶する。HDD930は、画像データ等を記録する記憶装置である。I/F940は、ネットワーク102を介して、TCP/IPやHTTPなどに従って、外部装置との通信を行う。
【0055】
なお、上述した各実施形態の説明では、CPU900が処理を実行する例について説明するが、CPU900の処理のうち少なくとも一部を専用のハードウェアによって行うようにしてもよい。例えば、ROM920からプログラムコードを読み出してRAM910に展開する処理は、転送装置として機能するDMA(DIRECT MEMORY ACCESS)によって実行してもよい。
【0056】
なお、本発明は、上述の実施形態の1以上の機能を実現するプログラムを1つ以上のプロセッサが読出して実行する処理でも実現可能である。プログラムは、ネットワーク又は記憶媒体を介して、プロセッサを有するシステム又は装置に供給するようにしてもよい。また、本発明は、上述の実施形態の1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。また、情報生成装置100の各部は、
図9に示すハードウェアにより実現してもよいし、ソフトウェアにより実現することもできる。
【0057】
以上、本発明を実施形態と共に説明したが、上記実施形態は本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲は限定的に解釈されるものではない。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱しない範囲において、様々な形で実施することができる。例えば、各実施形態を組み合わせたものも本明細書の開示内容に含まれる。
【符号の説明】
【0058】
201 取得部
202 画像処理部
203 メタデータ生成部
204 記憶部
205 符号化部
206 統合符号化部
207 出力部