処理中

しばらくお待ちください...

設定

設定

出願の表示

1. WO2020129434 - 画像ファイル生成装置、画像ファイル生成方法、及びプログラム

Document

明 細 書

発明の名称 画像ファイル生成装置、画像ファイル生成方法、及びプログラム

技術分野

0001  

背景技術

0002   0003  

先行技術文献

特許文献

0004  

発明の概要

発明が解決しようとする課題

0005   0006   0007   0008  

課題を解決するための手段

0009  

発明の効果

0010   0011  

図面の簡単な説明

0012  

発明を実施するための形態

0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093  

請求の範囲

1   2   3   4   5   6   7   8   9   10   11  

図面

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18A   18B   19   20   21  

明 細 書

発明の名称 : 画像ファイル生成装置、画像ファイル生成方法、及びプログラム

技術分野

[0001]
 本発明は、1つ以上の画像データを画像ファイルに格納するための技術に関する。

背景技術

[0002]
 MPEG(Moving Pictures Experts Group)では、単一の静止画像、複数の静止画像、又は、画像シーケンス(静止画像のバースト等)を1つのファイルに格納するための標準を開発している。本標準は、HEIF(High Efficiency Image File Format)と呼ばれ、画像と画像シーケンスの交換、編集、及び表示を可能とする。またHEIFは、ISOベースメディアファイルフォーマット(ISOBMFF:ISO Base Media File Format)で定められるツールを基に拡張された格納フォーマットである。HEIFは、ISO/IEC23008―12において「Image File Format」という名称で標準化が進行している。またHEIFは、メタデータを含む規範的な構造を定めており、メタデータと画像を関連付けする方法、特定の形式のメタデータの構成について定めている。特許文献1には、HEIFに準拠した画像ファイルに派生画像を格納することが記載されている。
[0003]
 一方、カメラやスマートフォン等、画像生成機能を備えた画像生成装置は近年様々な機能を有しており、撮影日時や、画像サイズ、画像品質だけでなく、撮影時の情報や、撮影した画像データのメタデータなど様々な情報を生成可能となっている。例えば、撮影した位置情報や、画像データの被写体やシーンが何であるかといったことを識別する情報、また、撮影時の撮像モード等画像データに付随する多様な情報が画像データとともに生成される。このような画像データに関する情報は、メタデータとしてHEIFファイルに格納できる。

先行技術文献

特許文献

[0004]
特許文献1 : 米国特許出願公開第2016/371265号明細書

発明の概要

発明が解決しようとする課題

[0005]
 所定の画像フォーマットに応じた画像ファイル(例えばHEIFファイル)内に格納される複数の画像のうち2以上の画像が共通のメタデータに対応する場合において、その処理を効率的に行うことが困難であった。つまり、HEIFファイルに格納される2以上の画像に同じメタデータが対応する場合であってもそのメタデータは画像毎に格納されていた。そのため、HEIFファイルを処理する装置は、各画像のメタデータやその構成情報を順に確認しなければ各画像のメタデータが共通であることを確認できなかった。したがって、HEIFファイル内の複数の画像がすべて共通なメタデータに対応する場合や、複数の画像のうちの2以上が共通のメタデータに対応している場合に、各画像に対して一括処理を行うときの処理負荷が大きかった。
[0006]
 また、例えば1つの画像をタイルに分割し、各タイル画像を派生画像として格納する場合、Exifデータ等のメタデータを派生画像ごとに定義すると、ファイル生成負荷やファイルサイズの観点から効率が悪かった。なお、ExifはExchangeable image file formatの略である。つまり、各タイル画像のメタデータ(例えば画像サイズ、カラー情報、及び符号化情報等)は共通であることが多いにもかかわらず、従来は、複数の(派生)画像ごとにメタデータが定義されていたため、効率的でなかった。
[0007]
 一方で、画像に適応する(対応する)メタデータを構成する際の情報には、そのメタデータが必須であるか否かの情報しか格納することができなかった。つまり、複数のメタデータを1つの画像に適応させる場合において、同種のメタデータからいずれか1つを選択して適応させることができなかった。例えば、HTML仕様で定義されているような代替テキスト情報を格納する場合や、複数の言語に対応した情報を格納しようとした場合、言語ごとのテキスト情報を、画像に選択的に適応できることが好ましい。HTMLでは他のURIから情報を取得するためのLongdesc情報を格納して多言語に対応しているが、イメージファイル内に閉じて格納する場合はそれぞれの言語に対応した情報をファイル内に格納しておく必要がある。その際、複数の言語のテキスト情報からいずれかを選択して画像に適応させることができなかった。
[0008]
 本開示は、上記課題に鑑み、画像ファイル生成に関する処理を効率的に行うための技術を提供する。

課題を解決するための手段

[0009]
 上記の課題を解決するための一手段として、本発明の画像ファイル生成装置は、以下の構成を有する。すなわち、1つ以上の画像を所定のイメージファイルフォーマットに従った画像ファイルに格納するための画像ファイル生成装置であって、前記画像ファイルに格納する複数のメタデータを取得する取得手段と、前記複数のメタデータのうち、メタデータの種別に応じてグループ化するグループ化手段と、前記グループ化されたメタデータを前記画像ファイルに格納する格納手段と、を有する。

発明の効果

[0010]
 本発明によれば、画像ファイル生成に関する処理を効率的に行うことが可能となる。
[0011]
 本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。

図面の簡単な説明

[0012]
 添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
[図1] 第1実施形態における画像ファイル生成装置の構成を示す図。
[図2] 第1実施形態における画像ファイル生成装置の処理フローを示す図。
[図3] 実施形態におけるファイルフォーマットの一例を示す図。
[図4] 実施形態におけるExifデータの一例を示す図。
[図5] 第2実施形態における画像ファイル生成装置の構成を示す図。
[図6] 第2実施形態における画像ファイル生成装置の処理フローを示す図。
[図7] 実施形態におけるイメージファイルフォーマット内のItemPropertyAssociationGroupBox構造の一例を示す図。
[図8] 実施形態におけるイメージファイルフォーマット内のItemPropertyAssociatioBox構造の一例を示す図。
[図9] 実施形態におけるイメージファイルフォーマット内のItemPropertyAssociatioBox構造の別の例を示す図。
[図10] 実施形態におけるイメージファイルフォーマット内のItemPropertyAssociatioGroupBox構造の別の例を示す図。
[図11] 実施形態におけるイメージファイルフォーマット内のCommonItemPropertyBox構造の一例を示す図。
[図12] 実施形態におけるイメージファイルフォーマット内のCommonItemPropertyGroupBox構造の一例を示す図。
[図13] 実施形態におけるイメージファイルフォーマット内のItemPropertyBox構造の一例を示す図。
[図14] 実施形態におけるイメージファイルフォーマット内のItemReferenceBoxの一例を示す図。
[図15] 実施形態におけるイメージファイルフォーマット内のItemInformationBoxの一例を示す図。
[図16] 実施形態におけるイメージファイルフォーマット内のItemPropertyAssociation構造の別の例を示す図。
[図17] 実施形態におけるイメージファイルフォーマット内のItemPropertyToGroupPropertyBox構造の一例を示す図。
[図18A] 第3実施形態における画像ファイル生成装置の処理フローを示す図。
[図18B] 第3実施形態における画像ファイル生成装置の処理フローを示す図。
[図19] 第3実施形態におけるイメージファイルフォーマット内のAccessibilityTextPropertyBox構造の一例を示す図。
[図20] 第3実施形態におけるイメージファイルフォーマット内のItemPropertyBoxの一例を示す図。
[図21] 第3実施形態におけるイメージファイルフォーマット内のItemPropertyBoxの別の例を示す図。

発明を実施するための形態

[0013]
 以下、添付の図面を参照して、本発明をその実施形態の一例に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
[0014]
 <第1実施形態>
 第1実施形態では、画像ファイル生成時に共通のメタデータを抽出して画像ファイル内に格納する例を説明する。
[0015]
 (画像ファイル生成装置101の構成)
 図1は、本実施形態の画像ファイル生成装置101の構成を示す。図1の画像ファイル生成装置101は、カメラやスマートフォン、タブレットPC等の撮影機能を有した通信装置である。本実施形態の画像ファイル生成装置101は、所定のイメージファイルフォーマットに準拠した画像ファイルを生成する。画像ファイル生成装置101はシステムバス102を有し、不揮発メモリ103、ROM104、RAM105、制御部106、撮像部107、操作部108を有する。画像ファイル生成装置101は更に、ファイル出力部109、メタデータ処理部110、符号化部111、表示部112、画像認識部113、LAN制御部114を有し、それぞれがシステムバス102に接続されるハードウェア構成となっている。システムバス102は、接続する各ブロック間でデータを伝達する。なお、本実施形態では、主に「画像」という言葉を用いるが、これは静止画に限定することを意図しない。
[0016]
 制御部106は、1つ以上のCPUにより構成され、ROM104に記憶されるプログラムを実行する。制御部106が実行するプログラムには、OS(オペレーティングシステム)やドライバ、アプリケーション等が含まれる。制御部106はプログラムを実行することにより、画像ファイル生成装置101の全体制御を行う。例えば、制御部106は、ユーザが操作部108より入力した指示を基に、表示部112への表示制御を行ったり、撮像部107へ撮影の指示を行ったり、LAN制御部114への接続指示を行ったりといった処理を行う。撮像部107はCMOSセンサー等の画像センサーを有し、制御部106からの指示により画像信号を入力する。入力された画像信号は符号化部111によってデジタルデータに符号化される。また画像ファイル生成装置101は、画像ファイルを復号化するように機能しても良い。例えば、制御部106が、操作部108を介した再生処理に関するユーザ操作に応じて、復号化部(不図示)に画像ファイルの復号化を行わせ、復号化された画像データを表示部112に表示させる。
[0017]
 メタデータ処理部110は、符号化部111によって符号化されたデータを取得し、所定のファイルフォーマット(例えばHEIF)に準拠した画像ファイルを生成する。なお、メタデータ処理部110は、HEIFに限らず、例えば、MPEGにおいて規定される他の動画ファイルフォーマットやJPEG等のフォーマットに準拠したファイルを生成することもできる。また、メタデータ処理部110は、符号化部111に限らず、他の装置から符号化済みのデータを取得し、画像ファイルを生成しても良い。
[0018]
 ファイル出力部109は、メタデータ処理部110により生成された画像ファイルを出力する。出力先は特に限定しないが、例えば、画像ファイルに基づいて画像を表示する表示装置、または、画像ファイルに基づく画像を印刷する印刷装置などに出力されるようにしても良い。また、画像ファイルは、画像ファイルを格納するストレージ装置、または、画像ファイルを格納するストレージメディア(不揮発メモリ103)に出力されるようにしても良い。不揮発メモリ103は、SDカード、コンパクトフラッシュ(登録商標)、又はフラッシュメモリ等である。画像認識部113は、撮像部107から入力された画像信号や、不揮発メモリ103に格納された画像ファイルから人物や物体、シーン等の認識処理を実行し、その結果(シーン情報や被写体情報)を制御部106へ送る。制御部106は、認識処理の結果を基に表示部112へ指示を送ったり、撮像部107へ自動でシャッターを切ったりなどの指示を行う。また制御部106は、メタデータ処理部110に対し、画像ファイルに格納するメタデータを通知する等の処理を行う。なお、本実施形態においてメタデータとプロパティ情報はほぼ同じ意味であるものとして説明する。
[0019]
 なお、本実施形態では各機能ブロックを別回路による構成としたが、少なくとも1つの機能ブロックの処理(動作)が制御部106等によるプログラムの実行により実現されるようにしてもよい。
[0020]
 RAM105は、画像ファイル生成装置101の主記憶部であって、主に、各機能ブロックの処理実行時にデータの一時記憶領域として使用される。ROM104は、各機能ブロックが実行するソフトウェアプログラムが格納される不揮発性の記憶部である。ROM104に格納されるプログラムは、RAM105に転送され、各機能ブロックによって読み出されて実行される。LAN制御部114は、LANに接続する通信インターフェースであり、有線LANもしくは無線LANの通信制御を実行する。例えば、画像ファイル生成装置101が有線LANによって他の装置と接続する場合、LAN制御部114は伝送メディアのPHY及びMAC(伝送メディア制御)ハードウェア回路を含む。この場合、LAN制御部114はEthernet(登録商標)のNIC(Network Interface Card)に相当する。また、画像ファイル生成装置101が無線LANにより他の装置と接続する場合、LAN制御部114は、IEEE802.11a/b/g/n/ac等の無線LAN制御を実行するコントローラ、RF回路、アンテナを含む。
[0021]
 (処理の流れ)
 次に、イメージファイルフォーマット(HEIF)に準拠した画像ファイル(HEIFファイル)の生成処理フローについて、図2を参照して説明する。図2は、本実施形態における画像ファイルの生成処理フローを示す図である。本処理フローはユーザ操作に応じて、図1に示す各回路により実行され得る。あるいは、本処理フローは、制御部106が適時にROM104に格納されるプログラムを実行し、情報の演算及び加工並びに各ハードウェアの制御を実行することにより実現され得る。
[0022]
 S201において、画像ファイル生成装置101は、HEIFファイルに格納する画像を取得する。具体的には、撮像部107により取得された画像信号は符号化部111によって符号化され、符号化済みの画像信号(デジタルデータ)がメタデータ処理部110へ入力される。なお、画像ファイル生成装置101は複数の画像に対応する画像信号を取得できる。例えば、撮像部107がバースト撮影(連続撮影)をした場合は、連続的に撮影された複数の画像が取得される。また、撮像部107による撮影画像が符号化部111によってタイルに分割されて符号化された場合は、各タイル画像が複数の画像として取得される。なお、画像をタイルに分割して符号化する方法には、HEVCにおいて規定されているタイル符号化を用いる方法、各分割領域を個別に符号化する方法、その他の方法があり、その方法は限定しない。また、画像ファイル生成装置101は、撮像部107のみならず、他の装置から1又は複数の画像を取得することもできる。
[0023]
 S202において、メタデータ処理部110は、符号化済みの画像信号のメタデータを解析する。次にS203において、メタデータ処理部110は、S201において取得された画像に対応するメタデータを取得(抽出)する。例えば、メタデータ処理部110が、符号化済み画像信号として、ISOBMFF(ISOベースメディアファイルフォーマット)に準拠する画像ファイルを取得した場合について説明する。この場合、メタデータ処理部110は、当該画像ファイル内のアイテムプロパティボックス(iprp)に格納されるプロパティ情報や、イメージプロパティアソシエーションボックスにおいてアイテムが参照するプロパティ情報を取得する。
[0024]
 また、メタデータ処理部110は、例えば、符号化済み画像信号として、Exifデータを含む画像ファイルを取得した場合、Exifデータを取得する。なおExifデータに限らず、XMP(Extensible Metadata Platform)及びMPEG-7のメタデータ等でも良い。また、例えばExifデータの一部がS203において取得されるようにしても良い。
[0025]
 また、画像認識部113によって認識された画像情報をメタデータとするケースも考えられる。例えば、画像認識部113は、画像のシーンがどのようなシーンであるか、特定の被写体が画像に含まれているかといったことを認識し、その結果(シーンの認識結果や被写体情報)をメタデータとしてメタデータ処理部110へ入力されても良い。認識処理の結果に基づくメタデータも後述する共通メタデータの対象となりうる。
[0026]
 S204において、メタデータ処理部110は、すでにHEIFファイルに1以上の画像が格納されているかを判定し、格納されている場合はS205へ進み、格納されていない場合はS207へ進む。S205において、メタデータ処理部110は、すでにHEIFファイルに格納されているメタデータと、今回取得した画像に対応するメタデータが一致するか、または、所定の範囲内のものかを判定する。一致、または、所定の範囲である場合はS206へ進み、メタデータ処理部110は、すでにHEIFファイルに格納済みのメタデータ(すなわち共通メタデータ)に、今回取得した画像のアイテムID(画像の識別情報)を対応付けて格納する。一方、メタデータ処理部110は、S204からS207に進んだ場合は、新規のHEIFファイルに、今回取得した共通メタデータとしての画像のメタデータに今回取得した画像のアイテムIDを対応付けて格納する。また、メタデータ処理部110は、S205からS207に進んだ場合は、生成済みのHEIFファイルに、今回取得した共通メタデータとしての画像のメタデータに今回取得した画像のアイテムを対応付けて格納する。
[0027]
 なお、メタデータをすべて共通メタデータの対象とするか、一部のみとするかは任意の設定によって決定されるようにしても良い。例えば、Exifデータのみが共通メタデータの対象となっても良いし、イメージプロパティアソシエーションボックス内のメタデータのみが共通メタデータの対象となっても良いし、撮影日時の情報のみが共通メタデータの対象となっても良い。
[0028]
 S208において、メタデータ処理部110は、未処理画像の有無を判定する。未処理画像が存在しない場合はS209へ進み、未処理画像が存在する場合はS201へ進む。なお、S208の判定は、撮影条件の設定(例えばバースト撮影の枚数)や、ユーザによる画像数の設定や、その他の予め決定された条件などに基づいて行われ得る。
[0029]
 S209において、メタデータ処理部110は、2以上の画像において共通ではないメタデータを、共通メタデータの格納領域から削除する。なお、本実施形態では2以上の画像において共通でないメタデータを削除することとしたが、2以外の閾値などによって削除の判定をするようにしても良い。また、場合によっては、単一の画像にのみ対応するメタデータが、共通メタデータの格納領域に格納されるようにしても良い。このような構成は、例えば、HEIFファイルに画像が1つしか格納されない場合や、特定のメタデータが記録されている画像アイテムをすばやく取り出したいといったユースケースにおいて有効である。つまり、共通メタデータの格納領域に格納される情報は、特定のメタデータが対応付けられている画像のインデックスとして利用できる。
[0030]
 次にS210において、メタデータ処理部110は、共通メタデータをHEIFファイルに格納する。なお、共通メタデータをHEIFファイルに格納するタイミングは、S206またはS207であっても良い。なお、HEIFファイルに共通メタデータを格納することで、各画像のメタデータが不要となる場合、メタデータ処理部110はそのメタデータをHEIFファイルから削除する。例えばアイテムプロパティアソシエーションをグループ化した場合は、それぞれのアイテム毎のアイテムプロパティアソシエーションは不要となるため削除される。
[0031]
 (HEIFファイルのフォーマットの構成例)
 次に、画像ファイル生成装置101によって生成されるHEIFファイルのフォーマットの構成例を、図3を参照して説明する。図3は、HEIFファイルのフォーマットの一例を示す。
[0032]
 一般的でシンプルな形式のHEIFファイル301は、管理データ部302と、メディアデータ部303で構成される。管理データ部302には、メディアデータの符号化に関する情報や、HEIFファイルへの格納方法に関する情報などを含んだファイル管理データが格納される。メディアデータ部303には、コンテンツデータ(動画像、静止画像及び音声)を符号化したデータ(メディアデータ)や外部規格を参照するメタデータ等が格納される。メディアデータ部303内には、MediaDataBoxというボックス内に、符号化された画像やExifデータ等が格納される。格納領域316、317、318は各画像の格納領域を示し、格納領域319、320、321はExifデータ等の外部規格で定義されたメタデータの格納領域を示している。
[0033]
 管理データ部302はボックス構造となっており、各ボックスはtype識別子によって識別される。ボックス304は、識別子ftypにより識別されるFileTypeBoxである。FileTypeBoxはファイルの種類を識別するために用いられ、ファイル形式はbrandと呼ばれる4文字の識別子によって識別される。HEIFファイルはmif1やmsf1等のbrandを識別する4文字の識別子を用いて表される。ボックス305は、MetaBoxと呼ばれ、識別子metaにより識別される。ボックス305(MetaBox)内にはさらに様々なボックスが格納される。例えば、画像(画像アイテム)や画像(画像アイテム)に関連したメタデータアイテム等のアンタイムドなメタデータを格納するボックスが、ボックス305(MetaBox)に含まれる。ボックス306は、HandlerReferenceBoxと呼ばれ、識別子hdlrにより識別される。HandlerReferenceBox内のハンドラタイプによって、ボックス305(MetaBox)に含まれるコンテンツの構造やフォーマットが識別される。HEIFファイルにおいては、本ハンドラのタイプにpictという4文字の識別コードが適用される。ボックス307は、ItemLocationBoxと呼ばれ、識別子ilocにより識別される。ボックス307(ItemLocationBox)には各アイテムのID(各画像の識別情報)や格納場所(ロケーション)を示す情報が記述される。メタデータ処理部110は、この情報を参照することで、管理データ部302で定義されたアイテムのデータがどこに存在するかを知ることができる。ボックス308は、ItemInfomationBoxと呼ばれ、識別子iinfにより識別される。ボックス308(ItemInfomationBox)内にはアイテム毎にItemInformationEntryが定義され、このエントリー内にアイテムIDやアイテム種別、アイテム名称等の情報が格納される。
[0034]
 ボックス309は、ItemReferenceBoxと呼ばれ、識別子irefにより識別される。ボックス309(ItemReferenceBox)は、参照関係のあるアイテムの関連付けに関して、どのような参照タイプであるかといった情報が格納される。1つのアイテムが複数のアイテムを参照して構成される場合は、参照するアイテムIDが順に記述される。例えば、アイテム1のサムネイル画像がアイテム2である場合、参照タイプとしてサムネイル画像を示すthmbが格納され、from_item_idにはアイテム1を示すアイテムIDが、to_item_idにはアイテム2を示すアイテムIDが格納される。また、1枚の画像を複数のタイルに分割してHEIFファイルに格納する場合には、ボックス309(ItemReferenceBox)には、それらの関連を示す情報が格納される。例えば、全体画像をアイテム1とし、複数のタイル画像をアイテム2、アイテム3、アイテム4、及びアイテム5とする。この場合、アイテム1は、アイテム2、アイテム3、アイテム4、及びアイテム5によって形成される画像であることがわかる情報が格納される。具体的には、参照タイプとして派生画像を示すdimgが格納され、from_item_idにはアイテム1を示すIDが格納される。さらにto_item_idにはアイテム2、アイテム3、アイテム4、及びアイテム5を示すアイテムIDがすべて格納される。このようにすることで、タイルに分割した複数の画像アイテムを1つの画像として再構成するための情報が表される。また、ボックス309(ItemReferenceBox)は、Exifデータ等の外部規格で定義されたメタデータと画像アイテムとの参照関係を記述することもできる。この場合、参照タイプとしてcdscが用いられ、from_item_idにExifデータを示すアイテムIDが、to_item_idに画像アイテムを示すアイテムIDがそれぞれ格納される。
[0035]
 ボックス310はItemPropertyBoxと呼ばれ、iprp識別子により識別される。ボックス310(ItemPropertyBox)には各アイテムに適用するプロパティ情報や、そのプロパティの構成方法について示すボックスが格納される。ボックス311は、ImagePropertyContainerBoxと呼ばれ、識別子ipcoにより識別される。ボックス311内には各プロパティを記述するためのボックスが格納される。ボックス311(ImagePropertyContainerBox)は様々なボックスを有しており、例えば画像のサイズを示すボックスや、カラー情報を示すボックス、ピクセル情報を示すボックス、HEVCパラメータを格納するボックス等が必要に応じて格納される。これらファイルフォーマットは、ISO/IEC23008―12で規定されているボックス構造と共通である。
[0036]
 ボックス312は、ItemPropertyAssociationGroupBoxと呼ばれ、ipag識別子により識別される。ボックス312(ItemPropertyAssociationGroupBox)は、図7で示す構造で定義される。図7は、ファイルフォーマット内のItemPropertyAssociationGroupBox構造の一例を示す図である。ボックス312は、ISO/IEC23008―12において規定されているItemPropertyAssociationBoxのエントリーで定義するアイテム毎のItemPropertyの関連付けをグループ化するためのボックスである。本ItemPropertyAssociationGroupBoxを用いることで、共通のアイテムプロパティが適用されるアイテムをグループ化できる。グループ化されたアイテム群はitem_association_group_idによって識別可能である。
[0037]
 ボックス313は、ItemPropertyAssociatioBoxと呼ばれ、ipma識別子により識別される。ボックス313は図8で示す構造で定義される。図8は、イメージファイルフォーマット内のItemPropertyAssociatioBox構造の一例を示す図である。アイテム毎にアイテムプロパティの構成を記述する場合はgroupビットを0に設定して、そのアイテムに適用されるプロパティのインデックスが順に記述される。一方で、ItemPropertyAssociationGroupBoxを用いてグループ化されたアイテムについては、groupビットを1に設定することで、アイテムグループに対するプロパティ構成が記述されることがわかるようにする。そしてitem_association_group_IDにより識別されるグループに対して適用するプロパティ構成が順に記述される。こうすることで、アイテム毎にアイテム構成をすべて記述していた従来の構造から、共通のプロパティを適用するアイテムについてはグループ化して記述できるようになる。これにより、ファイルフォーマットに記述されるデータ量を削減できる。
[0038]
 なお、本実施形態では図7に示すボックスを新しく定義した。しかし、ISO/IEC23008―12において規定されているEntityToGroupBoxを利用して、それに合わせて図8のボックスを拡張することによって、同様にグループ化して記述をする方法を採用しても良い。
[0039]
 本実施形態で示した図7のボックス構造では、使用するビット数を削減できるような構造としたため、より効率的に、メタデータの画像への対応付けが可能となる。一方で、既存のEntityToGroupBoxを利用しても、アイテムのグループ化を定義するという目的を達成することは可能である。この場合は新たにgrouping_typeを定義することとなる。本実施形態では、アイテムプロパティに関するグループ化であるためItemPropertyBox内にアイテムのグルーピングを定義する構成とした。
[0040]
 以上、本実施形態では上記方法でアイテム構成を効率的に記述する方法を示したが、変形例として、図9及び図10で示すボックス構造を採用しても良い。図9は、イメージファイルフォーマット内のItemPropertyAssociationBox構造の別の例を示す図であり、図10は、イメージファイルフォーマット内のItemPropertyAssociatioGroupBox構造の別の例を示す図である。これはアイテムをグループ化するのではなく、画像に適用するアイテムプロパティをグループ化して記述する方法である。つまり、この方法では、アイテム毎に記載するプロパティ情報の一部がプロパティグループとして記述される。なお、図10で示すボックス構造では記述していないが、グループ化するタイプを示す識別子を定義して格納するようにしてもよい。この際のグループタイプを示す識別子として、プロパティを結合してすべて画像に適応させることを示す‘join’等の値を用いて識別する。詳細は記載しないが、これにより共通プロパティ以外のプロパティグループを適応可能となる。その際、ボックスタイプに示した‘ipag’の代わりにグループタイプの4文字コード格納するようにしてもよいし、構造体メンバのひとつとしてグループタイプを定義して格納するようにしてもよい。また本実施形態では、図10に示すボックス構造をItemPropertyBox内に定義したが、ISO/IEC23008―12において規定されるGroupListBox内に定義されるようにしても良い。これにより、ファイルフォーマットに記述する際のデータ量を削減できる。
[0041]
 また、図17に示すボックス構造をItemPropertyContainerBox内に定義される各アイテムプロパティのボックスの1つとして格納してもよい。図17は、イメージファイルフォーマット内のItemPropertyToGroupPropertyBox構造の一例を示す図である。図17に示すボックスは、ItemPropertyToGroupPropertyBoxであり、前述したItemPropertyAssociationGroupBoxと同等のボックスである。本ボックスをItemPropertyContainerBox内の1つのItemPropertyとして格納することで、ItemPropertyAssociationBoxの構造を変更せずにアイテムプロパティをグループ化して、画像に適用することが可能となる。本ボックスではボックスタイプを示す4文字コードにグループのタイプを示す識別子を格納可能とした。これにより、どのようなグループのアイテムプロパティなのかを判別可能となる。num_properties_in_groupはグループ化するアイテムプロパティの個数を示している。またessential情報では各property_indexで示されるアイテムプロパティが必須か否かを示す。なお、ItemPropertyAssociationBoxでItemPropertyToGroupPropertyBoxを示すインデックス情報が格納した際のItemPropertyAssociationBox内のessential情報は、アイテムグループ自体が必須か否かを示すものとなる。property_indexでは、ItemPropertyAssociationBoxと同様に、ItemPropertyContainerBox内の1から始まるインデックス順で示されるアイテムプロパティの情報が記述される。インデックス番号0はreservedである。なお、ItemPropertyToGroupPropertyBox自身も同様のインデックス順で示されるが、本ボックス内に自信のインデックス順を示す情報を格納してはならない。もし自身のインデックが格納されていた場合は、無視するようにする。これにより無限ループすることを避けることが可能となる。なお、本ボックスはアイテムプロパティのひとつとして定義されるため、プロパティのタイプはDescriptiveタイプとなる。またproperty_indexのリストによりグループ化される各アイテムプロパティはDescriptiveタイプとTransformativeタイプを別々にグループ化することが望ましいがその限りではない。またその際、Descriptiveタイプのアイテムプロパティを記述した後にDescriptiveタイプをグループ化したItemPropertyToGroupPropertyBoxを記述する。その後にTransformativeのアイテムプロパティを記述し、その後Transformativeタイプのアイテムプロパティをグループ化したItemPropertyToGroupPropertyBoxを記述する方が望ましい。なお、ItemPropertyToGroupPropertyBoxのgrouping_typeまたはflagsを用いてDescriptiveタイプのグループなのか、Transformativeタイプのグループなのかを識別可能な構成としてもよい。
[0042]
 本実施形態では、以上のボックス構造を定義することにより、画像ファイルに記述されるデータ量を削減することを可能とした。しかしながら、2以上のアイテム(画像アイテム)に適応されるメタデータ(プロパティ)をグループ化して定義する方法であれば別のボックス構造を用いてもよい。また、ボックス内のエントリーとして扱ったデータ構造を別のボックスとして定義して格納してもよい。その他のボックス構造として例えば図16に示すボックス構造であってもよい。図16は、イメージファイルフォーマット内のItemPropertyAssociationBox構造の別の例を示す図である。図16に示したボックス構造によれば、複数のアイテムに対して複数のアイテムプロパティを適応可能となる。つまり明示的にアイテムプロパティやアイテムをグループ化せずに、ItemPropertyAssociationBoxの各エントリー内でアイテムをグループ化して、それに適応するプロパティを記述可能となる。
[0043]
 ボックス314はCommonItemPropertyBoxと呼ばれ、cipr識別子により識別される。ボックス314は図11で示す構造により定義される。図11は、CommonItemPropertyBox構造の一例を示す図である。ボックス314(CommonItemPropertyBox)は、すべてのアイテムに共通で適用されるアイテムプロパティを示すためのボックスである。ボックス314を用いることによって、すべてのアイテムに共通で適用されるプロパティ(メタデータ)が容易に抽出される。すなわち、ボックス314を利用して共通メタデータを格納すれば、ItemPropertyAssociationBoxのエントリーをすべて検索せずに共通メタデータを抽出することが可能となる。これにより、ファイルアクセス時の検索効率が向上する。
[0044]
 なお、本実施形態ではすべてのアイテムに共通で適用されるプロパティを示すボックスを定義することで、検索効率を向上する例を説明した。しかし、この例に限らず、ItemPropertyContainerBox内に定義される各アイテムプロパティのボックス内にそのようなすべてのアイテムに適用することが識別可能な情報を格納しても良い。
[0045]
 ボックス315はCommonItemPropertyGroupBoxと呼ばれ、識別子cipgにより識別される。ボックス315は図12で示す構造により定義される。図12は、CommonItemPropertyGroupBox構造の一例を示す図である。ボックス315(CommonItemPropertyGroupBox)は共通のプロパティ(メタデータ)が適用されているアイテムを識別することを可能とするボックスである。言い換えると、ボックス315(CommonItemPropertyGroupBox)は、共通のプロパティが適用されるアイテムのリストを記述するボックスである。メタデータ処理部110は、ボックス315を用いることで、特定のプロパティが適用されているアイテムを、ItemPropertyAssociationBoxのエントリーをすべて確認せずとも特定できる。また、ボックス315によれば、画像ファイルを読み込んで、特定のプロパティが適用されているアイテムのみをピックアップして処理を行う場合の効率が向上し、ファイルアクセス時の検索効率が向上する。また、ボックス315によれば、ファイルを編集する場合等において、一括操作が容易になる。例えばproperty_indexに示すアイテムプロパティが画像サイズを示すプロパティであった場合、同じサイズの画像アイテムをグループ化して記述することが可能となる。その他にもItemPropertyContainerBox内に定義された画像プロパティが適用される複数の画像アイテムをボックス315によって表すことで、メタデータ処理部110は、共通のプロパティが適用される複数の画像を容易に特定できる。
[0046]
 共通プロパティを表すボックスを格納するためのボックス310(ItemPropertyBox)は、図13に示す構造を有する。図13は、ItemPropertyBox(ItemPropertiesBox)構造の一例を示す図である。ボックス310(ItemPropertyBox)は、具体的には、識別子iprpにより識別されるItemPropertiesBox内にItemPropertyAssociationBoxを格納する。さらにItemPropertyContainerBoxと、ItemPropertyAssociationGroupBoxとCommonItemPropertyBoxとCommonItemPropertyGroupBoxを格納する。
[0047]
 次に、メディアデータ部303に格納される各格納領域(ボックス)319、320、及び321が示す外部定義メタデータ(例えばExifデータ)を共通メタデータとして格納する方法について、図14、図15、及び図4を用いて説明する。図14は、図3のボックス309(ItemReferenceBox)の記述例である。図15は、図3のボックス308(ItemInformationBox)の記述例である。図4は、Exifデータブロック401、402、403、404、405を示す。図15に示すItemInfomationBoxは9つのエントリーで構成されており、item_ID1、2、3、4は画像アイテムである。またitem_IDが5の画像アイテムはExifデータブロック401に、item_IDが6の画像アイテムがExifデータブロック402に、item_IDが7の画像アイテムがExifデータブロック403、item_IDが8の画像アイテムがExifデータブロック404、item_IDが9の画像アイテムがExifデータブロック405にそれぞれ対応する。図14に示すItemReferenceBoxは各アイテムの参照関係を示している。図14及び図15より、item_ID5はitem_ID1の画像に関するExifデータブロックであることが読み取れる。また同様にしてitem_ID6はitem_ID2の画像に関するExifデータブロックであり、item_ID7はitem_ID3の画像に関するExifデータブロックである。またitem_ID8はitem_ID4の画像に関するExifデータブロックである。またitem_ID9はitem_ID5、6、7、8を参照している。この記述により、item_ID9はitem_ID5、6、7、8のExifデータブロックから共通部分(共通メタデータ)を抽出したExifデータブロックであることを示している。
[0048]
 図4に示すExifデータブロック401は、画像幅410、画像高411、X解像度412、Y解像度413、メーカ名414、モデル名415、撮影日時416、ISO感度417、GPS情報418のExifタグ(メタデータ)を有する。Exifデータブロック402、403、及び404も同様である。これらタグは撮像時に生成される。また別途編集処理等によってタグを追加、変更、削除が行われることもある。Exifデータブロック405はExifデータブロック401、402、403、及び404の共通データ(共通メタデータ)を格納するブロックである。画像幅410、420、430、及び440により示される値はすべて「320pixel」で共通のため、Exifデータブロック405内の画像幅タグ450に値「320pixel」が格納される。同様に、画像高411、421、431、及び441に示される値はすべて「240pixel」で共通のため、Exifデータブロック405内の画像高タグ451に値「240pixel」が格納される。また、X解像度412、422、432、及び442により示される「96dpi」が領域452に格納される。また、Y解像度413、423、433、及び443により示される「96dpi」が領域453に格納される。また、メーカ名414、424、434、及び444により示される「A社」が領域454に格納される。また、モデル名415、425、435、及び445により示される「11」が領域455に格納される。
[0049]
 一方、撮影日時は画像によって異なっている。図4の例においては、(撮影)日時416と426は「2018年6月13日」、日時436は「2018年6月14日」であり、日時446は「2018年6月15日」である。そのため、撮影日時については各Exifデータブロックの共通データを抽出したExifデータブロック405には格納されない。このように、図4の例においては、すべての画像アイテムに共通するメタデータのみがExifデータブロック405に格納される。また、ISO感度417、427、437、447についてもそれぞれ値が異なっているため、Exifデータブロック405には格納されない。なお、図4では、日時416、426、436、446において、時刻の情報は省略されている。
[0050]
 ただし、図4の例において、位置情報であるGPS情報418、428、438、448は、完全に値が一致していなくても所定範囲内に収まっていれば、Exifデータブロック405に格納される。これは、GPS情報418、428、438、及び448は完全に一致しないまでも特定の場所を示す情報としては一致しているためである。つまり、GPS情報418、428、438、及び448はすべてA社の場所を示しており、ジオコード等で導き出される場所はすべてA社となり一致する。
[0051]
 そのため、本実施形態のメタデータ処理部110は、特定の範囲内に収まる複数のGPS情報は、共通メタデータとして扱う。このように、いくつかのタイプのメタデータ(例えばGPS情報)については、値が完全に一致していなくても共通メタデータを格納するための領域に格納させることができる。なお、どの範囲をもって共通とするかについては、ユーザが別途指定しても良いし、特定のシステムの設定等に応じて適宜決められる。図4の例においては、A社の敷地内のGPS情報はすべて共通のメタデータであるものとして扱われており、GPS情報458に格納されるGPS情報はジオコードなどで表されるA社の代表地点を表している。例えば、東京都内のGPS情報を共通のGPS情報として扱う場合は、東京都の代表地点の位置情報がGPS情報458に格納されることになる。本実施形態のHEIFファイルはどの粒度でGPS情報を扱うかを示す情報を格納していないが、ファイル内に格納するようにしてもよい。
[0052]
 また、図4は、各画像のExifデータブロックすべてに共通するデータを共通のExifデータブロックに格納する例を示している。しかしながら、2以上のExifデータブロックに共通するExifデータブロックを共通のExifデータブロックに格納するようにしても良い。その場合、図14に示すItemReferenceBoxにおいて、参照するExifデータブロックを定義するようにすればよい。例えば、item_id5と6のみの共通Exifデータブロックを抽出する場合、to_item_IDに5と6を格納する。そのようにした場合、(撮影)日時416、426についても共通のExifデータとなるため抽出対象に含まれる。また、共通のExifデータブロックとして抽出するExifデータブロックは複数あってもよく、item_ID5と6に共通するものと、item_ID5、6、7、及び8に共通するものというように、抽出する元データが重複してもよい。
[0053]
 また、本実施形態のメタデータ処理部110は、各画像に対応するExifデータブロックにおいて共通しているデータをすべて抽出したが、ある特定のExifデータについてのみ、共通しているデータを抽出するようにしても良い。例えば撮影日時のみを共通しているか否かの判定対象としても良い。また、例えば、撮影日時が特定の範囲に収まる画像についてのみ、撮影日時の共通性を判定するようにしても良い。このように、特定の種類のメタデータについてのみ共通性を判断するようにしてもよく、特定の種類の決めかたにも種々のバリエーションが存在することに留意されたい。
[0054]
 以上、本実施形態の画像ファイル生成装置101は、イメージファイルフォーマットに準拠した画像ファイル(HEIFファイル)に格納する複数の画像のそれぞれに対応付けられたメタデータ(プロパティ情報)から共通するメタデータを抽出する。そして、画像ファイル生成装置101は、抽出されたメタデータを共通メタデータとしてメタデータ領域に格納する。また、画像ファイル生成装置101は、すべての画像に共通する共通メタデータなのか、複数の画像のうちの一部に共通する共通メタデータなのかを示す情報をHEIFファイル中に格納しても良い。一部の画像に共通する共通メタデータである場合は、当該一部の画像のアイテムID(画像の識別情報)を格納する。また、画像ファイル生成装置101は、外部規格に基づくメタデータ(例えばExifデータ)についても、画像毎のメタデータから共通のメタデータを抽出し、それを共通メタデータとして保持する。これにより、HEIFファイルに格納された複数の画像を扱う際の処理負荷が低減できる。例えば、HEIFファイルに格納された複数の画像のうち、特定のメタデータに対応付けられた1以上の画像に対してだけ特定の処理を行う場合において処理負荷を低減できる。また、HEIFファイルに格納された複数の画像の中から特定の画像を検索する処理が低負荷で行えるようになる。また、画像ごとのメタデータを共通化して格納することにより、画像ファイルのサイズを低減できる。
[0055]
 <第2実施形態>
 第1実施形態では、画像ファイル生成時に共通のメタデータを抽出して画像ファイル内に格納する例を中心に説明した。以下に示す第2実施形態では、画像ファイルに格納済みの画像やメタデータから共通するメタデータを抽出する例を詳細に説明する。
[0056]
 (画像ファイル生成装置501の構成)
 本実施形態の画像ファイル生成装置501の構成を図5に示す。図5の画像ファイル生成装置501は、タブレットPCやデスクトップPC、クラウド等のWebサービスで処理を行うサーバ装置等の、ファイル編集機能を有した通信装置である。図1と同じ参照番号の構成要素は、図1と同様のため、説明を省略する。メタデータ処理部502は、画像ファイルを編集し、画像ファイルに格納済みの画像やメタデータから共通するメタデータを抽出するための処理を行う。なお、本実施形態における画像ファイル生成装置501は、画像ファイルの編集に特徴があるため、撮像部107を有さない構成としてもよい。
[0057]
 (処理の流れ)
 次に、イメージファイルフォーマットに準拠した画像ファイル(HEIFファイル)のから共通メタデータを抽出する処理(編集処理)のフローについて、図6を参照して説明する。図6は、第2実施形態における画像ファイル生成装置501の処理フローを示す図である。本処理フローは、ユーザ操作に応じて、図5に示す各回路により実行され得る。あるいは、本処理フローは、制御部106が適時にROM104に格納されるプログラムを実行し、情報の演算及び加工並びに各ハードウェアの制御を実行することにより実現され得る。なお、1つ以上のイメージファイルフォーマットに準拠した画像ファイル(HEIFファイル)が、予め画像ファイル生成装置501に格納されているものとする。
[0058]
 S601において、メタデータ処理部502は、HEIFファイルに格納された複数の画像のそれぞれに対応付けられたメタデータに基づいて、メタデータの値、範囲、種別といった、抽出対象とするメタデータに関する情報(抽出対象メタデータ)を決定する。この決定は、操作部108を介したユーザ指定に基づいて行われるようにしても良いし、あらかじめ決められたシステム設定などに基づいて行われるようにしても良い。また、複数の決定が行われるようにしても良い。
[0059]
 S602において、メタデータ処理部502は、HEIFファイルに格納された複数の画像のそれぞれのメタデータを取得する。メタデータ処理部502は、1つのHEIFファイルに限らず、複数のHEIFファイルを処理対象としても良い。また、HEIFファイルに限らず、JPEGファイルなども処理対象としても良い。また、メタデータ処理部502は、HEIFファイルに記録済みのメタデータのみを取得対象としてもよいし、画像認識部506の処理によって新規に生成されたメタデータ等を取得対象としても良い。
[0060]
 次にS603において、メタデータ処理部502は、S602において取得されたメタデータとS601において決定された抽出対象メタデータが一致するかを判定する。一致する場合はS604へ進み、一致しない場合S605へ進む。なお、S603では、メタデータ処理部502が両メタデータの範囲が所定の範囲内か否かを判定し、所定の範囲内の場合にS604へ進み、所定の範囲内でない場合にS605へ進むようにしても良い。
[0061]
 S604において、メタデータ処理部502は、一致するメタデータを共通メタデータとして抽出し、当該共通メタデータに、画像を識別するためのアイテムIDを対応付けて共通メタデータの格納領域に格納する。複数の画像ファイルを処理対象としている場合には、メタデータ処理部502は新規にHEIFファイルを作成し、当該ファイルに画像アイテムとそれに対応するアイテムIDを格納する。S605において、メタデータ処理部502は、メタデータの取得対象となるすべての画像について処理が完了したか判定する。完了した場合はS606に進み、完了していない場合はS602に進み、処理が繰り返される。
[0062]
 S606において、メタデータ処理部502は、抽出した共通メタデータのうち、他の画像と共通しないメタデータを削除する。つまり、メタデータ処理部502は、単一の画像にのみ適用されるメタデータを、共通メタデータとして格納しない。次にS607において、メタデータ処理部502は、共通メタデータをHEIFファイルに格納する。このとき、メタデータ処理部502は、共通メタデータとその画像のアイテムIDを基に、図7から図17に示したフォーマットに従って、HEIFファイル内に共通メタデータを格納する。本実施形態では単一の画像のみに対応するメタデータは共通メタデータとして格納しないこととしたが、所定の閾値よりも少ない数の画像のみに共通しているメタデータは共通メタデータとして格納しないようにしても良い。また、場合によっては、単一の画像にのみ対応するメタデータが、共通メタデータを格納するための領域に格納されるようにしても良い。このような構成は、例えば、HEIFファイルに画像が1つしか格納されない場合や、特定のメタデータが記録されている画像アイテムをすばやく取り出したいといったユースケースにおいて有効である。つまり、共通メタデータの格納領域に格納される情報は、特定のメタデータが対応付けられている画像のインデックスとして利用できる。
[0063]
 以上、本実施形態の画像ファイル生成装置501は、生成済みの画像ファイルから共通メタデータを抽出し、当該共通メタデータが格納されたHEIFファイルを新規に生成する。これにより共通メタデータとして記録していない画像ファイルから共通のメタデータを格納した画像ファイルを生成できる。また本実施形態の画像ファイル生成装置501は、複数の画像ファイル(ビデオファイルも含む)に格納される複数の画像(ビデオも含む)から共通のメタデータを抽出し、共通メタデータを格納した画像ファイルを新規に生成する。
[0064]
 これにより、複数の装置で生成された画像ファイルや、異なる条件下で生成された画像ファイルから編集処理によって1つのHEIFファイルを生成することが可能となる。その際、第1実施形態で説明したように、すべての画像群に共通する共通メタデータなのか、画像群のうちの一部に共通する共通メタデータなのかを示す情報を格納しても良い。一部に共通する共通メタデータである場合は、当該共通メタデータに対応する画像のアイテムIDがさらに格納される。また、画像ファイル生成装置101は、外部規格に基づくメタデータ(例えばExifデータ)についても、画像毎のメタデータから共通のメタデータを抽出し、それを共通メタデータとして保持する。これにより、HEIFファイルに格納された複数の画像を扱う際の処理負荷が低減できる。例えば、HEIFファイルに格納された複数の画像のうち、特定のメタデータに対応付けられた1以上の画像に対してだけ特定の処理を行う場合において処理負荷を低減できる。また、HEIFファイルに格納された複数の画像の中から特定の画像を検索する処理が低負荷で行えるようになる。また、画像ごとのメタデータを共通化して格納することにより、画像ファイルのサイズを低減できる。
[0065]
 <第3実施形態>
 第1実施形態及び第2実施形態では、共通のメタデータを抽出して画像ファイル内に格納する例を中心に説明した。以下に示す第3実施形態では、同種のメタデータをグループ化して、同一の画像に適応させて格納する例を説明する。本実施形態の画像ファイル生成装置は、撮影機能を有した装置の場合、図1に示した構成となる。また画像ファイルに格納済みの画像やメタデータに同種のメタデータを追加して格納する場合、図5に示した構成となる。
[0066]
 (処理の流れ)
 次にイメージファイルフォーマットに準拠した画像ファイル(HEIFファイル)への同種メタデータの付加処理フローについて、図18Aと図18Bを参照して説明する。図18Aと図18Bは、本実施形態における画像ファイルの生成処理フローを示す図である。本処理フローは、典型的には、ユーザからの編集指示の入力に応じて開始される。なお、説明のため、本処理フローは、図5に示した画像ファイル生成装置501により行われるものとする。例えば、本処理フローは、ユーザ操作により、図5に示す各回路により、あるいは、制御部106が適時にROM104に格納されるプログラムを実行し、情報の演算及び加工並びに各ハードウェアの制御を実行することにより実現され得る。なお、1つ以上のイメージファイルフォーマットに準拠した画像ファイル(HEIFファイル)が、予め画像ファイル生成装置501に格納されているものとする。また、付加されるメタデータ(後述の付加対象メタデータ)に適応し得る画像が予めHEIFファイルに存在するものとする。
[0067]
 S1801においてメタデータ処理部502は、HEIFファイルに格納するメタデータ(付加対象メタデータ)を取得する。メタデータ処理部502は、操作部108を介したユーザ指定に基づいて付加対象メタデータを取得しても良いし、あらかじめ決められたシステム設定などに基づいてメタデータを取得しても良い。
[0068]
 S1802においてメタデータ処理部502は、HEIFファイルに格納された1つ以上のメタデータを取得し、それぞれのメタデータの種別を取得する。メタデータの種別の詳細については、後述する。次にS1803において、メタデータ処理部502は、HEIFファイル内に、S1801で取得された付加対象メタデータと同種のメタデータが存在するかを判定する。すなわち、メタデータ処理部502は、S1802において取得された1つ以上のメタデータの種別のうち、S1801で取得した付加対象メタデータの種別と一致するものが存在するか判定する。存在する場合はS1804へ進み、存在しない場合S1805へ進む。なお、当該判定は、画像ファイル生成装置502に予め格納されている辞書等の知識ベース等に基づいて行われ得る。また、メタデータの種別に替えて、メタデータの性質や属性といった他の情報が比較されても良い。
[0069]
 S1804において、メタデータ処理部502は、付加対象メタデータを適応する画像(付加対象メタデータが適用される画像)に、S1803で存在すると判定された同種のメタデータが適応(適用)されているかを確認する。適応されている場合はS1807へ進み、適応されていない場合はS1805へ進む。なお、付加対象メタデータを適応する画像が複数存在する場合は、メタデータ処理部502は、それぞれの画像に対して確認を行い、いずれか一つでも適応されている場合はS1807へ進む。
[0070]
 S1805において、メタデータ処理部502は、付加対象メタデータの情報をHEIFファイルに格納する。これは主に、ItemPropertyContainerBoxの要素にItemPropertyとして格納することに対応する。次にS1806において、メタデータ処理部502は、格納された付加対象メタデータと画像(付加対象メタデータに適応する画像)の関連づけ情報を格納して処理を終了する。これは主にItemPropertyAssociationBox内の画像アイテム毎の関連付け情報の格納に対応する。詳細には、メタデータ処理部502は、アイテムプロパティのItemPropertyContainerBoxのインデックス順を各アイテムIDの関連づけとして格納する。
[0071]
 S1804でYesの場合のS1807において、メタデータ処理部502は、同一の画像に適応される同種のメタデータがすでにグループ化されているかを確認する。同種のメタデータがグループ化されている場合はS1806へ進み。グループ化されていない場合はS1810へ進む。なお、同種のメタデータであっても選択的に適応されず、異なる意味で適応されている場合は同種のメタデータであるとみなさず、S1810へ進む。
[0072]
 S1808において、メタデータ処理部502は、S1805と同様に付加対象メタデータの情報をHEIFファイルに格納する。S1809において、メタデータ処理部502は、すでにグループ化されているメタデータグループに、S1808で格納された付加対象メタデータの情報を追加して、処理を終了する。これにより、すでに画像アイテムへItemAssociationBoxで関連付けられているアイテムプロパティのグループ内の選択肢が追加されることとなる。
[0073]
 S1807でYesの場合のS1810において、メタデータ処理部502は、S1805やS1808同様に、付加対象メタデータの情報をHEIFファイルに格納する。S1811において、メタデータ処理部502は、同一の画像に適応されるメタデータを同種のメタデータをしてグループ化するための情報を格納する。すなわち、メタデータ処理部502は、付加対象メタデータが適応される画像に適応されるメタデータと、付加対象メタデータとを、同種のメタデータとしてグループ化するための情報を格納する。S1812において、メタデータ処理部502は、すでに格納されていた同種のメタデータと画像アイテムを関連付ける情報を削除する。具体的には、ItemAssociationBox内のアイテムプロパティにおいて該当するインデックス情報を削除することに対応する。S1813において、メタデータ処理部502は、グループ化されたメタデータを画像アイテムに関連付ける情報を格納する。具体的には、ItemAssociationBoxにアイテムプロパティグループを示す関連付け情報を格納することに対応する。
[0074]
 以上により、画像に適応されるプロパティ(メタデータ)を、複数のプロパティの中から選択的に適応させる(画像に関連するプロパティとして、複数のプロパティの中から選択的に対応付ける)ことが可能となる。なお、本実施形態では、画像ファイルに格納済みの画像やメタデータに同種のメタデータを追加して格納するフローを説明したが、図2に示したフローで画像ファイルの生成処理の際に同種のプロパティをグループ化して格納する形態であってもよい。その際、S201のイメージファイルフォーマットに格納する画像を入力した際に、関連するメタデータを格納する際に、同種のメタデータグループ情報を格納する。また、本実施形態では上記ボックス構造でプロパティのグループ化を示したが、本目的を達成可能なボックス構造であればよい。
[0075]
 (アイテムプロパティグループボックスの構成例)
 次に、アイテムプロパティグループとしてアイテムプロパティ(メタデータ)格納する際の、画像へ適応例を図19、図20、図21を用いて説明する。図19は、AccessibilityTextPropertyBox構造の一例を示す図であり、図20と図21は、ItemPropertyBoxの例を示す。
[0076]
 図19に示したボックスはAccessibilityTextPropertyBoxである。このボックスはHTML仕様の代替テキスト文字列の情報を格納するボックスである。本ボックスに格納されるalt_textはHTML仕様の代替テキストを格納するパラメータである。またalt_langはRFC4646やBCP47準拠の言語タグの文字列でたとえば‘en-US’や‘fr-FR’、‘zh-CN’、‘ja-JP’等の言語を示す識別子が格納される。alt_langに示される言語のテキスト情報がalt_textに格納される。本ボックスを用いることで、画像アイテムがどのような内容の画像であるか等のテキスト情報を格納することができる。また本ボックスを格納したい言語毎にアイテムプロパティとして格納することで、言語に対応したテキスト情報を格納することが可能となる。なお、本実施形態ではHTML仕様の代替テキストを格納することとしたが、HTML仕様に限らずテキスト情報を格納するようにしてもよい。
[0077]
 図20に示したItemPropertiesBoxは、画像ファイルに格納されるアイテムプロパティの画像への適応例を示した図である。本画像ファイルは4つのサブピクチャがアイテムID1から4として格納されており、それをグリッドの派生イメージとして構成する1つの画像アイテムがアイテムID5として構成されている。4つのサブピクチャは画像サイズが幅512、高さ512の画像であり、その派生イメージである1つの画像は幅1024、高さ1024の画像が格納されている。4つのサブピクチャには共通のプロパティが適応されており、1つの派生画像にはその画像が何であるかを示すテキスト情報が格納されている(インデックス1~6)。
[0078]
 具体的には、ItemPropertiesBox内にはItemPropertyContainerBox及び、ItemPropertyAssociationBoxが格納されている。また、ItemPropertyContainerBoxには6個の各種アイテムプロパティが格納されている。
[0079]
 1番目のHEVCConfigurationBoxは、識別子hvcCで示されるボックスであり、画像アイテムの符号化パラメータが格納されている。2番目のImageSpatialExtentsPropertyBoxは、識別子ispeで示されるBoxであり、画像のサイズを示す情報が格納されている。
[0080]
 3番目~5番目のAccessibilityTextPropertyBoxは図19に示した構造を持つボックスであり、‘altt’で識別される。3番目のAccessibilityTextPropertyBoxには、alt_langにen-USが格納されており、アメリカ地域の英語を示している。また、alt_textには、英語のテキスト文字列‘dog’が格納されている。同様にして、4番目のAccessibilityTextPropertyBoxには、alt_langにja-JPが格納されており、日本地域の日本語を示している。また、alt_langには、日本語のテキスト文字列‘犬’が格納されている。同様にして、5番目のAccessibilityTextPropertyBoxには、alt_langにfr-FRが格納されており、フランス地域のフランス語を示している。またalt_textには、フランス語のテキスト文字列‘chien’が格納されている。これら3つのAccessibilityTextPropertyBoxは、いずれも同じ意味のテキスト文字列がそれぞれの言語で格納されている。すなわち、同一の画像に関連するテキスト情報の意味としての種別が同じである。なお、上述のように、画像ファイル生成装置501(または101)において、予め学習データや辞書等の知識ベースが格納されており、メタデータの種別が同一か否かを判定できるものとする。
[0081]
 6番目のItemPropertyToGroupPropertyBoxは、図17に示すように識別子ipmaで示されるボックスである。本ボックスを用いて、ItemPropertyContainerBoxのインデックス順3、4、5番目のAccessiblityTextPropertyBoxが同種のアイテムプロパティとしてグループ化されている。具体的には、altrのグルーピングタイプを用いて、同種のアイテムプロパティとしてアイテムプロパティがグループ化されている。また、num_properties_in_groupは3を示しており、これは、3つのアイテムプロパティがグループ化されていることを示している。また、essential情報は必須のアイテムプロパティであることを示している(1=必須)。また、ItemPropertyContainerBoxのインデックス順であるproperty_indexが3、4、5を示しており、前述したAccessibilityTextPropertyBoxをグループ化している。このように、3つのAccessibilityTextPropertyBoxは、ItemPropertyToGroupPropertyBoxを用いてグループ化され、ItemPropertyToGroupPropertyBoxを用いてアイテムにグループとして適応させることができる。
[0082]
 次に、ItemPropertyAssociationBoxは識別子ipmaで示されるボックスであり、各画像アイテムとアイテムプロパティの関連を示す情報が格納されている。entry_countは1を示しており、1つの画像のアイテムプロパティの関連が格納されていることを示している。item_IDが1である画像は3つのアイテムプロパティに関連づけられていることをassociation_countで示している。essentialは1を示し必須のプロパティであることを示す。また、property_indexの1はItemPropertyContainerBoxのインデックス順1である、前述したHEVCConfigurationBoxが関連付けられていることを示している。次に、2つ目のエントリーはessentialが0を示しており、必須ではないプロパティであることを示している。property_indexの2は前述したImageSpatialExtentsPropertyBoxが関連付けられていることを示している。次に、3つ目のエントリーはessentialが0を示しており、必須ではないプロパティであることを示している。property_indexは6を示しており、ItemPropertyToGroupPropertyBoxが関連付けられている。これにより、画像ファイルを読み出す装置は、ItemPropertyToGroupPropertyBoxがグループタイプaltrで適応されている画像アイテムを参照する際には、3つのAccessibilityTextPropertyBoxのうち1つを選択することで参照することができる。
[0083]
 なお、本実施形態ではaltrでグループ化されたアイテムプロパティのうちいずれか1つが選択的に画像アイテムに適応される構成としたが、選択的に複数のプロパティが適応されてもよい。また、本実施形態では明示的にItemPropertyToGroupPropertyBoxを用いてアイテムプロパティをグループ化して画像アイテムに適応させる構成としたが、ItemPropertyAssociationBoxに同種のアイテムプロパティが適応されていた場合は、暗黙的に選択的に画像アイテムに適応させる構成としてもよい。また代替テキスト情報に限らず、関連するテキストをラベルとして格納するようにしてもよい。その場合意味毎にグループ化したテキスト情報を複数適応し、そのグループ毎にラベル情報を選択的に適応することも可能である。図20ではDescriptiveタイプのみ記述しているが、Transfomativeタイプのアイテムプロパティも同様にグループ化可能である。その際、DescriptiveタイプとTransformativeタイプのプロパティは混在せずにグループ化することが望ましい。またその際、flagsを用いてグループ化するプロパティのタイプがなんであるかを示すようにしてもよいし、grouping_typeを用いてグループタイプを識別可能なように定義してもよい。またDescriptiveタイプのプロパティを記述した後にDescriptiveタイプのグループを記述することで、あらかじめ記述されたインデックス番号を記述可能である。またその後にTransformativeタイプのアイテムプロパティを記述する。その後同様にTransformativeタイプのアイテムプロパティをグループ化したItemPropertyToGroupPropertyBoxを記述する方が望ましい。これにより、アイテムプロパティを適応する際の制約条件を変更することなく適応可能となる。
[0084]
 本実施形態のように明示的にグループ化して画像アイテムに適応させることにより、異なるグループタイプのグループ化が可能となるだけでなく、同種ではあるが意味が異なるプロパティを複数グループ化して画像アイテムに適応させることが可能となる。これにより、異なる意味で適応された同種のアイテムプロパティを、グループ毎に選択的に画像アイテムに適応させることができる。
[0085]
 次に、図21を用いて、同種のアイテムプロパティと共通のアイテムプロパティのそれぞれのアイテムグループを適応した画像ファイルのItemPropertiesBoxの例を示す。
[0086]
 ItemPropertiesBox内にはItemPropertyContainerBox及び、ItemPropertyAssociationBoxが格納されている。またItemPropertyContainerBoxには9個の各種アイテムプロパティが格納されている。1番目のHEVCConfigurationBoxは、識別子hvcCで示されるボックスであり、画像アイテムの符号化パラメータが格納されている。2番目のHEVCConfigurationBoxには、異なる符号化パラメータが格納されている。3番目と4番目のImageSpatialExtentsPropertyBoxは識別子ispeで示されるBoxであり、画像のサイズを示す情報が格納されている。2つのImageSpatialExtentsPropertyBoxには、それぞれ異なる画像サイズの情報が格納されている。
[0087]
 5番目から7番目のAccessibilityTextPropertyBoxは、図19に示した構造を持つボックスであり、‘altt’で識別される。3つのAccessibilityTextPropertyBoxには、それぞれ異なる言語のテキストが格納されている。グループタイプ‘altr’で識別されてItemPropertyToGroupPropertyBoxは、3つのアイテムプロパティをグループ化している。本実施形態ではインデックス順5、6、7のAccessibilityTextPropertyが同種のプロパティとしてグループ化されている。またグループタイプ‘join’で示されるItemPropertyToGroupPropertyBoxは2つのアイテムプロパティがグループ化されている。本実施形態ではインデックス順1のHEVCConfigurationBoxとインデックス順3のImageSpatialExtentsPropertyBoxが共通アイテムプロパティとしてグループ化されている。次にItemPropertyAssociationBoxには5つのアイテムのプロパティ関連情報が格納されている。item_IDが1から4のアイテムはインデックス順9番目の‘join’タイプのアイテムグループが適応されており、インデックス順1番目と3番目のアイテムプロパティがすべて共通に適応される。またアイテムIDが5のアイテムはインデックス順2、4、8のアイテムプロパティが適応されている。インデックス順8番目のアイテムプロパティはaltrタイプのアイテムプロパティグループでインデックス順5、6、7番目のアイテムプロパティが選択的に適応される。
[0088]
 本実施形態では同種のアイテムプロパティとしてAccessibilityTextPropertyBoxを定義して説明したが、その他異なるアイテムプロパティが選択的に適応可能であってもよい。例えば、同一のアイテムプロパティが複数のバージョンを持つ場合、異なるバージョンそれぞれを同種のプロパティとして格納しておき、読み出し装置が対応しているバージョンのボックスとして適応してもよい。またその他‘clap’で識別されるCleanApertureBoxを同種のプロパティとして複数適応し、読み出し装置の選択により、16:9や4:3での切り出しを可能とすることが可能である。またその他、複数人の特定の人物ごとのCleanApertureBoxを定義し、読み出し装置が選択的に特定の人物のみを表示するといったことが可能となる。またその他にもさまざまな拡張が考えられる。
[0089]
 以上、本実施形態の画像ファイル生成装置101または501は、イメージファイルフォーマットに準拠した画像ファイル(HEIFファイル)に格納する画像に関連する複数のメタデータ(プロパティ情報)のうち共通または同種のメタデータを抽出する。そして抽出したメタデータをグループ化してメタデータ領域に格納する。その際グループ化した種別を判定可能な識別子を格納する。グループ化したメタデータを他のグループ化していないメタデータ同様にして画像に関連付けて画像ファイルに保持する。これにより、HEIFファイルに格納された複数のメタデータ(プロパティ情報)をグループとして扱うことが可能となり、画像を扱う際の処理負荷の低減や、選択的なメタデータの適応ができる。選択的な適応により、画像ファイルを読み出す装置の状況や条件、判断に基づいて適応的に画像を扱うことが可能となる。また、画像ごとのメタデータを共通化して格納することにより、画像ファイルのサイズを低減できる。
[0090]
 このように、上記にのべた各実施形態によれば、所定のファイルフォーマットに応じた画像ファイル内に格納される複数の画像のうち2以上の画像が共通のメタデータに対応する場合において、その画像ファイルに関する処理を効率的に行うことができる。また、所定のファイルフォーマットに応じた画像ファイル内に格納される複数のメタデータのうち2以上の同種のメタデータを1つの画像に適応させる場合において、その画像ファイルにメタデータの選択的な適応を行うことができる。
[0091]
(その他の実施例) 
 本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
[0092]
 本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
[0093]
 本願は、2018年12月18日提出の日本国特許出願特願2018-236722を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。

請求の範囲

[請求項1]
 1つ以上の画像を所定のイメージファイルフォーマットに従った画像ファイルに格納するための画像ファイル生成装置であって、
 前記画像ファイルに格納する複数のメタデータを取得する取得手段と、
 前記複数のメタデータのうち、メタデータの種別に応じてグループ化するグループ化手段と、
 前記グループ化されたメタデータを前記画像ファイルに格納する格納手段と、
を有することを特徴とする画像ファイル生成装置。
[請求項2]
 前記グループ化手段は、同一の画像に適応される、同じ種別を有するメタデータをグループ化し、前記格納手段は、前記グループ化されたメタデータを前記同一の画像に対応付けて前記画像ファイルに格納することを特徴とする請求項1に記載の画像ファイル生成装置。
[請求項3]
 前記グループ化手段は、前記同一の画像に関連するテキスト情報の意味としての種別が同じメタデータをグループ化することを特徴とする請求項2に記載の画像ファイル生成装置。
[請求項4]
 前記グループ化手段は、前記テキスト情報の意味が同じで異なる言語で表された複数のメタデータをグループ化することを特徴とする請求項3に記載の画像ファイル生成装置。
[請求項5]
 前記グループ化手段は、2つ以上の画像に共通の種別を有するメタデータをグループ化し、前記格納手段は、前記グループ化されたメタデータを前記2つ以上の画像に対応付けて前記画像ファイルに格納することを特徴とする請求項1から4のいずれか1項に記載の画像ファイル生成装置。
[請求項6]
 前記取得手段は、ユーザによる入力により、または、あらかじめ決められた設定に基づいて、前記複数のメタデータを取得することを特徴とする請求項1から5のいずれか1項に記載の画像ファイル生成装置。
[請求項7]
 前記画像ファイルを外部へ出力する出力手段を更に有することを特徴とする請求項1から6のいずれか1項に記載の画像ファイル生成装置。
[請求項8]
 前記所定のイメージファイルフォーマットは、ISO/IEC23008―12において規定されるフォーマットであることを特徴とする請求項1から7のいずれか1項に記載の画像ファイル生成装置。
[請求項9]
 前記取得手段は、前記メタデータとして、ISOベースメディアファイルフォーマットに準拠する画像ファイルのメタデータを取得し、
 前記グループ化手段は、前記ISOベースメディアファイルフォーマットに準拠する前記画像ファイルから、アイテムプロパティボックスに格納されるプロパティ情報を抽出し、当該抽出の結果に基づいてグループ化を行うことを特徴とする請求項8に記載の画像ファイル生成装置。
[請求項10]
 1つ以上の画像を所定のイメージファイルフォーマットに従った画像ファイルに格納するための画像ファイル生成方法であって、
 前記画像ファイルに格納する複数のメタデータを取得する取得工程と、
 前記複数のメタデータのうち、メタデータの種別に応じてグループ化するグループ化工程と
 前記グループ化されたメタデータを前記画像ファイルに格納する格納工程と、
を有することを特徴とする画像ファイル生成方法。
[請求項11]
 コンピュータを、請求項1から9のいずれか1項に記載の画像ファイル生成装置として機能させるためのプログラム。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4]

[ 図 5]

[ 図 6]

[ 図 7]

[ 図 8]

[ 図 9]

[ 図 10]

[ 図 11]

[ 図 12]

[ 図 13]

[ 図 14]

[ 図 15]

[ 図 16]

[ 図 17]

[ 図 18A]

[ 図 18B]

[ 図 19]

[ 図 20]

[ 図 21]