(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-06
(45)【発行日】2024-09-17
(54)【発明の名称】撮像装置、撮像装置の制御方法、記録装置、及び、記録装置の制御方法
(51)【国際特許分類】
H04N 5/919 20060101AFI20240909BHJP
H04N 23/741 20230101ALI20240909BHJP
【FI】
H04N5/919
H04N23/741
(21)【出願番号】P 2023036746
(22)【出願日】2023-03-09
(62)【分割の表示】P 2018026307の分割
【原出願日】2018-02-16
【審査請求日】2023-04-04
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】秋吉 秀信
(72)【発明者】
【氏名】小林 達
(72)【発明者】
【氏名】田邉 章弘
【審査官】大西 宏
(56)【参考文献】
【文献】特開2013-141074(JP,A)
【文献】特開2017-073761(JP,A)
【文献】国際公開第2015/008775(WO,A1)
【文献】国際公開第2016/103968(WO,A1)
【文献】国際公開第2018/021261(WO,A1)
【文献】ISO/IEC 2017,Information technology-High efficiency coding and media delivery in heterogeneous environments-Part,ISO/IEC 23008-12,First Edition,米国,ISO/IEC,2017年12月,p.39-50,Annex B
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/91 - 5/956
H04N 21/00 -21/858
(57)【特許請求の範囲】
【請求項1】
撮影して得られたHDR(ハイダイナミックレンジ)画像データを記録する撮像装置であって、
撮像センサと、
前記撮像センサにより撮影して得られたHDR画像データを符号化する符号化手段と、
前記撮像センサより撮影して得られたHDR画像データを
HEIF(High Efficiency Image File Format)形式で1つの画像ファイルとして記録媒体に記録するように制御する記録制御手段と、
記録モードを設定する設定手段と、
を有し、
前記記録制御手段は、前記設定手段により設定された記録モードに対応する画像サイズに応じて、
(1)前記撮影して得られたHDR画像データを複数の分割HDR画像データに分割して前記符号化手段によりそれぞれ符号化し、当該符号化された複数の分割HDR画像データ
を画像アイテムとして、かつ、当該複数の分割HDR画像データを分割前の状態に結合するための画像構造体情報
を導出画像アイテムとして、HEIF形式で前記画像ファイル内に
HEIF形式で記録するか、
(2)前記撮影して得られたHDR画像データを分割せずに前記符号化手段により符号化し、当該符号化されたHDR画像データを
HEIF形式で前記画像ファイル内に記録するか、を切り替える、
ことを特徴とする撮像装置。
【請求項2】
前記設定手段は、
記録モードとして、画像のサイズ、画像のアスペクト比をユーザ選択により設定可能であり、
前記設定手段により設定された記録モードに対応する画像サイズは、ユーザ選択により設定された前記画像のサイズおよび前記画像のアスペクト比に対応する画像サイズである
ことを特徴とする請求項
1に記載の撮像装置。
【請求項3】
前記設定手段により設定可能な前記画像のサイズは、Lサイズを含むことを特徴とする請求項2に記載の撮像装置。
【請求項4】
撮影して得られたHDR画像データを複数の分割HDR画像データに分割する場合に、前記記録制御手段は、前記設定手段により設定された記録モードに対応する画像サイズに応じて、分割HDR画像データのサイズを決定する、ことを特徴とする請求項1
または3に記載の
撮像装置。
【請求項5】
前記設定手段により設定された記録モードに応じて、分割HDR画像データのサイズは異なる、ことを特徴とする請求項1乃至
3のいずれか1項に記載の
撮像装置。
【請求項6】
前記記録制御手段は、前記設定手段により設定された記録モードに対応する画像サイズよりも大きいサイズの前記撮影して得られたHDR画像データを前記画像ファイル内に記録するように制御することを特徴とする請求項1乃至
5のいずれか1項に記載の
撮像装置。
【請求項7】
前記記録制御手段は、前記複数の分割HDR画像データ及び前記画像構造体情報を、HEIFのオーバーレイ形式で記録するように制御することを特徴とする請求項
1乃至6のいずれか1項に記載の撮像装置。
【請求項8】
前記複数の分割HDR画像データの幅方向のサイズは第1のサイズの倍数であり、
前記複数の分割HDR画像データの高さ方向のサイズは前記第1のサイズと異なる第2のサイズの倍数である、
ことを特徴とする請求項5に記載の撮像装置。
【請求項9】
前記記録制御手段は、前記設定手段により設定された記録モードに対応する画像サイズの幅方向のサイズおよび高さ方向のサイズが所定のサイズ以下の場合は、前記撮影して得られたHDR画像データを分割せずに前記符号化手段により符号化し、当該符号化されたHDR画像データをHEIF形式で前記画像ファイル内に記録するように制御する、ことを特徴とする請求項1乃至8のいずれか1項に記載の撮像装置。
【請求項10】
前記所定のサイズは4096画素であることを特徴とする請求項9に記載の撮像装置。
【請求項11】
前記HDR画像データは、ビット深度が8ビットよりも大きい画像である、ことを特徴とする請求項1
乃至10のいずれか1項に記載の
撮像装置。
【請求項12】
前記HDR画像データは、ビット深度が10ビットの画像データであることを特徴とする請求項
11に記載の
撮像装置。
【請求項13】
前記HDR画像データは、色域がBT.2020の画像データであることを特徴とする請求項1
乃至12のいずれか1項に記載の
撮像装置。
【請求項14】
前記HDR画像データは、撮影して得られたHDR画像データに対してPQガンマカーブを用いた処理を施して生成された画像データであることを特徴とする請求項1
乃至12のいずれか1項に記載の
撮像装置。
【請求項15】
前記符号化手段は、HEVC(High Efficiency VideoCoding)規格に従って、前記複数の分割HDR画像データまたは前記HDR画像データを圧縮符号化することを特徴とする請求項1乃至
14のいずれか1項に記載の
撮像装置。
【請求項16】
撮影モードを設定するための操作手段を有し、
HDR静止画を撮影するためのHDR撮影モードに設定されている場合は、JPEG形式ではなく、
HEIF形式で前記撮影して得られたHDR画像データを記録するように制御する
ことを特徴とする請求項1乃至
15のいずれか1項に記載の撮像装置。
【請求項17】
撮像センサにより撮影して得られたHDR(ハイダイナミックレンジ)画像データを記録する撮像装置の制御方法であって、
前記撮像センサより撮影して得られたHDR画像データを
HEIF(High Efficiency Image File Format)形式で1つの画像ファイルとして記録媒体に記録するように制御する記録制御工程と、
記録モードを設定する設定工程と、
を有し、
前記記録制御工程では、前記設定工程で設定された記録モードに対応する画像サイズに応じて、
(1)前記撮影して得られたHDR画像データを複数の分割HDR画像データに分割してそれぞれ符号化し、当該符号化された複数の分割HDR画像データ
を画像アイテムとして、かつ、当該複数の分割HDR画像データを分割前の状態に結合するための画像構造体情報
を導出画像アイテムとして、前記画像ファイル内に
HEIF形式で記録するか、
(2)前記撮影して得られたHDR画像データを分割せずに符号化し、当該符号化されたHDR画像データを前記画像ファイル内に
HEIF形式で記録するか、を切り替える、
ことを特徴とする撮像装置
の制御方法。
【請求項18】
コンピュータを、請求項1乃至
16のいずれか1項に記載の撮像装置の各手段として機能させるためのプログラム。
【請求項19】
請求項
17に記載の撮像装置の制御方法をコンピュータに実行させるためのプログラム。
【請求項20】
撮影して得られたHDR(ハイダイナミックレンジ)画像データを記録する記録装置であって、
前記撮影して得られたHDR画像データを符号化する符号化手段と、
前記撮影して得られたHDR画像データをHEIF(High Efficiency Image File Format)形式で1つの画像ファイルとして記録媒体に記録するように制御する記録制御手段と、
記録モードを設定する設定手段と、
を有し、
前記記録制御手段は、前記設定手段により設定された記録モードに対応する画像サイズに応じて、(1)前記撮影して得られたHDR画像データを複数の分割HDR画像データに分割して前記符号化手段によりそれぞれ符号化し、当該符号化された複数の分割HDR画像データを画像アイテムとして、かつ、当該複数の分割HDR画像データを分割前の状態に結合するための画像構造体情報を導出画像アイテムとして、HEIF形式で前記画像ファイル内にHEIF形式で記録するか、(2)前記撮影して得られたHDR画像データを分割せずに前記符号化手段により符号化し、当該符号化されたHDR画像データをHEIF形式で前記画像ファイル内に記録するか、を切り替える、
ことを特徴とする記録装置。
【請求項21】
撮影して得られたHDR(ハイダイナミックレンジ)画像データを記録する記録装置の制御方法であって、
前記撮影して得られたHDR画像データをHEIF(High Efficiency Image File Format)形式で1つの画像ファイルとして記録媒体に記録するように制御する記録制御工程と、
記録モードを設定する設定工程と、
を有し、
前記記録制御工程では、前記設定工程で設定された記録モードに対応する画像サイズに応じて、(1)前記撮影して得られたHDR画像データを複数の分割HDR画像データに分割してそれぞれ符号化し、当該符号化された複数の分割HDR画像データを画像アイテムとして、かつ、当該複数の分割HDR画像データを分割前の状態に結合するための画像構造体情報を導出画像アイテムとして、前記画像ファイル内にHEIF形式で記録するか、(2)前記撮影して得られたHDR画像データを分割せずに符号化し、当該符号化されたHDR画像データを前記画像ファイル内にHEIF形式で記録するか、を切り替える、
ことを特徴とする記録装置の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像装置、記録装置及び表示制御装置に関する。
【背景技術】
【0002】
画像データを圧縮符号化する画像処理装置として撮像装置が知られている。このような画像処理装置は、撮像部によって動画像信号を取得し、取得した動画像信号を圧縮符号化し、圧縮符号化が行われた画像ファイルを記録媒体に記録する。従来、圧縮符号化前の画像データは100nitsの輝度レベルを上限とするSDR(Standard Dynamic Range)で表現されたものであった。しかしながら、近年では、輝度レベルの上限を10000nits程度にまで拡張させたHDR(High Dynamic Range)で表現され、人が知覚できる輝度範囲に近い輝度範囲を有する画像データが提供されている。
【0003】
特許文献1では、HDRの画像を撮影して記録する際に、HDRに非対応の装置でも、HDR画像を詳細に確認可能な画像データを生成して記録する画像データ記録装置について記載がある。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1では、HDRの画像を記録することについては記載されているが、HDR画像を記録する場合の最適な記録方式については考慮されていなかった。
【0006】
そこで、本発明は、例えばHDR画像のようにデータ量が大きい画像を記録する際に、記録および再生に適した記録形態で画像を記録する装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上述の課題を解決するため、本発明の撮像装置は、
撮影して得られたHDR(ハイダイナミックレンジ)画像データを記録する撮像装置であって、撮像センサと、前記撮像センサにより撮影して得られたHDR画像データを符号化する符号化手段と、前記撮像センサより撮影して得られたHDR画像データをHEIF(High Efficiency Image File Format)形式で1つの画像ファイルとして記録媒体に記録するように制御する記録制御手段と、記録モードを設定する設定手段と、を有し、前記記録制御手段は、前記設定手段により設定された記録モードに対応する画像サイズに応じて、(1)前記撮影して得られたHDR画像データを複数の分割HDR画像データに分割して前記符号化手段によりそれぞれ符号化し、当該符号化された複数の分割HDR画像データを画像アイテムとして、かつ、当該複数の分割HDR画像データを分割前の状態に結合するための画像構造体情報を導出画像アイテムとして、HEIF形式で前記画像ファイル内にHEIF形式で記録するか、(2)前記撮影して得られたHDR画像データを分割せずに前記符号化手段により符号化し、当該符号化されたHDR画像データをHEIF形式で前記画像ファイル内に記録するか、を切り替える、ことを特徴とする。
また、本発明の記録装置は、
撮影して得られたHDR(ハイダイナミックレンジ)画像データを記録する記録装置であって、前記撮影して得られたHDR画像データを符号化する符号化手段と、前記撮影して得られたHDR画像データをHEIF(High Efficiency Image File Format)形式で1つの画像ファイルとして記録媒体に記録するように制御する記録制御手段と、記録モードを設定する設定手段と、を有し、前記記録制御手段は、前記設定手段により設定された記録モードに対応する画像サイズに応じて、(1)前記撮影して得られたHDR画像データを複数の分割HDR画像データに分割して前記符号化手段によりそれぞれ符号化し、当該符号化された複数の分割HDR画像データを画像アイテムとして、かつ、当該複数の分割HDR画像データを分割前の状態に結合するための画像構造体情報を導出画像アイテムとして、HEIF形式で前記画像ファイル内にHEIF形式で記録するか、(2)前記撮影して得られたHDR画像データを分割せずに前記符号化手段により符号化し、当該符号化されたHDR画像データをHEIF形式で前記画像ファイル内に記録するか、を切り替える、ことを特徴とする。
【発明の効果】
【0008】
本発明によれば、データ量が大きく、かつ、高解像度の画像を記録する際に、記録および再生に適した記録形態で画像を記録する装置を提供することができる。
【図面の簡単な説明】
【0009】
【
図1】撮像装置100の構成を示すブロック図である。
【
図3】HDR撮影モードでの処理を示すフローチャート。
【
図4】HDR撮影モードにおける画像データの分割方法を決定する処理を示すフローチャート。
【
図5】HDR画像データ記録時の画像データの符号化領域および分割方法を示す図。
【
図6】HEIFファイルを構築する処理を示すフローチャート。
【
図7】HEIFファイルとして記録されたHDR画像データを再生する際の表示処理を示すフローチャート。
【
図8】オーバーレイ画像作成処理を示すフローチャート。
【
図9】画像アイテムのプロパティ取得処理を示すフローチャート。
【
図10】画像アイテムのデータ取得処理を示すフローチャート。
【
図11】主画像を構成する画像のアイテムID取得処理を示すフローチャート。
【
図12】1画像アイテムの画像作成処理を示すフローチャート。
【
図13】オーバーレイ画像と分割画像の位置関係を示す図。
【発明を実施するための形態】
【0010】
本発明の実施の形態を、撮像装置100を例に添付の図面を参照して以下に詳細に説明するが、本発明は、以下の実施形例に限定されるものではない。
【0011】
<撮像装置の構成>
図1は、撮像装置100を示すブロック図である。
図1に示すように、撮像装置100は、CPU101と、メモリ102と、不揮発性メモリ103と、操作部104と、撮像部112と、画像処理部113と、符号化処理部114と、表示制御部115と、表示部116とを有している。更に、撮像装置100は、通信制御部117と、通信部118と、記録媒体制御部119と、内部バス130とを有している。撮像装置100は、撮影レンズ111を用いて被写体の光学像を撮像部112の画素アレイに結像するが、撮影レンズ111は、撮像装置100のボディ(筐体、本体)から、着脱不能であってもよいし、着脱可能であってもよい。また、撮像装置100は、記録媒体制御部119を介して画像データの書き込み及び読み出しを記録媒体120に対して行う。記録媒体120は、撮像装置100に着脱可能であってもよいし、着脱不能であってもよい。
【0012】
CPU101は、不揮発性メモリ103に記憶されているコンピュータプログラムを実行することによって、内部バス130を介して撮像装置100の各部(各機能ブロック)の動作を制御する。
【0013】
メモリ102は、書き換え可能な揮発性メモリである。メモリ102は、撮像装置100の各部の動作を制御するためのコンピュータプログラム、撮像装置100の各部の動作に関するパラメータ等の情報、通信制御部117によって受信される情報等を一時的に記録する。また、メモリ102は、撮像部112によって取得された画像、画像処理部113、符号化処理部114等によって処理された画像及び情報を一時的に記録する。メモリ102は、これらを一時的に記録するために十分な記憶容量を備えている。
【0014】
不揮発性メモリ103は、電気的に消去及び記録が可能なメモリであり、例えばEEPROM等が用いられる。不揮発性メモリ103は、撮像装置100の各部の動作を制御するコンピュータプログラム及び撮像装置100の各部の動作に関するパラメータ等の情報を記憶する。当該コンピュータプログラムにより、撮像装置100によって行われる各種動作が実現される。
【0015】
操作部104は、撮像装置100を操作するためのユーザインターフェースを提供する。操作部104は、電源ボタン、メニューボタン、撮影ボタン等の各種ボタンを含んでおり、各種ボタンはスイッチ、タッチパネル等により構成される。CPU101は、操作部104を介して入力されたユーザの指示に従って撮像装置100を制御する。なお、ここでは、操作部104を介して入力される操作に基づいてCPU101が撮像装置100を制御する場合を例に説明したが、これに限定されるものではない。例えば、不図示のリモートコントローラ、不図示の携帯端末等から通信部118を介して入力される要求に基づいて、CPU101が撮像装置100を制御してもよい。
【0016】
撮影レンズ(レンズユニット)111は、ズームレンズ、フォーカスレンズ等を含む不図示のレンズ群、不図示のレンズ制御部、不図示の絞り等によって構成される。撮影レンズ111は、画角を変更するズーム手段として機能し得る。レンズ制御部は、CPU101から送信される制御信号により、焦点の調整及び絞り値(F値)の制御を行う。撮像部112は、動画像を構成する複数の画像を順次取得する取得手段として機能し得る。撮像部112としては、例えば、例えばCCD(電荷結合素子)、CMOS(相補型金属酸化膜半導体)素子等でのエリアイメージセンサが用いられる。撮像部112は、被写体の光学像を電気信号に変換する不図示の光電変換部が行列状、すなわち、2次元的に配列された不図示の画素アレイを有している。当該画素アレイには、被写体の光学像が撮影レンズ111によって結像される。撮像部112は、撮像した画像を画像処理部113又はメモリ102に出力する。なお、撮像部112は、静止画像を取得することも可能である。
【0017】
画像処理部113は、撮像部112から出力される画像データ、又は、メモリ102から読み出された画像データに対し、所定の画像処理を行う。当該画像処理の例としては、補間処理、縮小処理(リサイズ処理)、色変換処理等が挙げられる。また、画像処理部113は、撮像部112によって取得された画像データを用いて、露光制御、測距制御等のための所定の演算処理を行う。画像処理部113による演算処理によって得られた演算結果に基づいて、露光制御、測距制御等がCPU101によって行われる。具体的には、AE(自動露出)処理、AWB(オートホワイトバランス)処理、AF(オートフォーカス)処理等がCPU101によって行われる。
【0018】
符号化処理部114は、画像データに対してフレーム内予測符号化(画面内予測符号化)、フレーム間予測符号化(画面間予測符号化)等を行うことによって、画像データのサイズを圧縮する。符号化処理部114は、例えば、半導体素子等により構成された符号化装置である。符号化処理部114は、撮像装置100の外部に設けられた符号化装置であってもよい。符号化処理部114は、例えば、H.265(ITU H.265又はISO/IEC23008-2)方式によって符号化処理を行う。
【0019】
表示制御部115は、表示部116を制御する。表示部116は、不図示の表示画面を備える。表示制御部115は、画像データに対してリサイズ処理、色変換処理等を行うことにより、表示部116の表示画面に表示可能な画像を生成し、当該画像、すなわち、画像信号を表示部116に出力する。表示部116は、表示制御部115から送られてくる画像信号に基づいて、表示画面に画像を表示する。表示部116は、表示画面にメニュー等の設定画面を表示する機能であるOSD(On Screen Display)機能を備えている。表示制御部115は、画像信号にOSD画像を重畳して表示部116に画像信号を出力し得る。表示部116は、液晶ディスプレイ、有機ELディスプレイ等により構成されており、表示制御部115から送られてきた画像信号を表示する。表示部116は、例えばタッチパネルであってもよい。表示部116がタッチパネルである場合、表示部116は、操作部104としても機能し得る。
【0020】
通信制御部117は、CPU101に制御される。通信制御部117は、IEEE802.11等によりあらかじめ定められた無線通信規格に適合する変調信号を生成して、当該変調信号を通信部118に出力する。また、通信制御部117は、無線通信規格に適合する変調信号を、通信部118を介して受信し、受信した変調信号を復号し、復号した信号に応じた信号をCPU101に出力する。通信制御部117は、通信設定を記憶するためのレジスタを備えている。通信制御部117は、CPU101からの制御によって、通信時の送受信感度を調整し得る。通信制御部117は、所定の変調方式で送受信を行うことができる。通信部118は、通信制御部117から供給される変調信号を撮像装置100の外部にある情報通信機器等の外部機器127へ出力し、また、外部機器127からの変調信号を受信するアンテナを備えている。また、通信部118には、通信用の回路等が備えられている。なお、ここでは、通信部118によって無線通信が行われる場合を例に説明したが、通信部118によって行われる通信は無線通信に限定されるものではない。例えば、配線等を用いた電気的な接続によって通信部118と外部機器127とが接続されてもよい。
【0021】
記録媒体制御部119は、記録媒体120を制御する。記録媒体制御部119は、CPU101からの要求に基づいて、記録媒体120を制御するための制御信号を記録媒体120に出力する。記録媒体120としては、例えば不揮発性メモリや磁気ディスク等が用いられる。記録媒体120は、上述したように、着脱可能であってもよいし、着脱不能であってもよい。記録媒体120は、符号化された画像データ等を記録する。記録媒体120のファイルシステムに適合した形式で画像データ等がファイルとして保存される。ファイルとしては、例えば、MP4ファイル(ISO/IEC 14496-14:2003)、MXF(Material eXchange Format)ファイル等が挙げられる。各々の機能ブロック101~104、112~115、117、119は、内部バス130を介して互いにアクセス可能となっている。
【0022】
ここで、本実施例の撮像装置100の通常の動作について説明する。
【0023】
撮像装置100は、ユーザが操作部104の電源ボタンを操作すると、操作部104からCPU101に起動の指示が出される。この指示を受けて、CPU101は、不図示の電源供給部を制御して、撮像装置100の各ブロックに対して電源を供給させる。電源が供給されると、CPU101は、例えば、操作部104のモード切り換えスイッチが、例えば、静止画撮影モード、再生モード等のどのモードであるかを操作部102からの指示信号により確認する。
【0024】
通常の静止画撮影モードでは、撮像装置100は、撮影待機状態でユーザが操作部104の静止画記録ボタンを操作することで撮影処理を行う。撮影処理では、撮像部112で撮影した静止画の画像データについて、画像処理部113で画像処理を施し、符号化処理部114で符号化処理し、記録媒体制御部119により符号化された画像データを画像ファイルとして記録媒体120に記録する。なお、撮影待機状態では、撮像部112で所定のフレームレートで画像を撮影し、画像処理部で表示用の画像処理を施して表示制御部115により表示部116に表示させることによりライブビュー画像の表示を行う。
【0025】
再生モードでは、記録媒体120に記録されている画像ファイルを記録媒体制御部119により読み出し、読み出した画像ファイルの画像データを符号化処理部114で復号する。つまり、符号化処理部114はデコーダの機能も有している。そして、画像処理部113で表示用の処理を施し、表示制御部115により表示部116に表示させる。
【0026】
通常の静止画の撮影および再生については、上記のように実行されるが、本実施形例の撮像装置では、通常の静止画だけでなく、HDR静止画を撮影するためのHDR撮影モードを有し、また、撮影したHDR静止画を再生することができる。
【0027】
以降、HDR静止画像の撮影および再生の処理について説明する。
【0028】
<ファイル構造>
まずは、HDR静止画像を記録する際のファイル構造について説明する。
【0029】
最近、High Efficiency Image File Format(以下、HEIFと称す)と呼ばれる静止画ファイルフォーマットが策定された。(ISO/IEC 23008-12:2017)
【0030】
これは、JPEGのような従来の静止画ファイルフォーマットと比べ、以下のような特徴を持つ。
・ISOベースメディアファイルフォーマット(以下、ISOBMFFと称す)に準拠したファイル形式である。(ISO/IEC 14496-14:2003)
・単一の静止画像だけでなく、複数の静止画像を格納できる。
・HEVC/H.265やAVC/H.264など、動画の圧縮に用いられる圧縮形式で圧縮された静止画を格納できる。
【0031】
本実施形例では、HDR静止画像の記録ファイルとして、HEIFを採用する。
【0032】
最初に、HEIFが格納するデータについて説明する。
【0033】
HEIFは、格納する個々のデータを、アイテムという単位で管理する。
【0034】
各アイテムは、データ自身の他に、ファイル内で一意となる整数値アイテムID(item_ID)と、アイテムの種別を表すアイテムタイプ(item_type)を持つ。
【0035】
アイテムは、データが画像を表す画像アイテム(image item)と、データがメタデータであるメタデータアイテム(metadata item)に分けることができる。
【0036】
画像アイテムには、データが符号化された画像データである符号化画像アイテム(coded image item)と、1個以上の他の画像アイテムを操作した結果の画像を表す、導出画像アイテム(derived image item)がある。
【0037】
導出画像アイテムの例として、オーバーレイ形式の導出画像アイテムであるオーバーレイ画像がある。これは、ImageOverlay構造体(オーバーレイ情報)用いて、任意個の画像アイテムを任意の位置に配置して合成された結果のオーバーレイ画像である。
【0038】
メタデータアイテムの例として、Exifデータを格納することができる。
【0039】
前述のように、HEIFは複数の画像アイテムを格納することができる。
【0040】
複数の画像間に関係がある場合、それらの関係を記述することができる。
【0041】
複数の画像間の関係の例は、導出画像アイテムとそれを構成する画像アイテムの関係、本画像とサムネイル画像の関係、などである。
【0042】
また、画像アイテムとメタデータアイテムの関係も、同様に記述することができる。
【0043】
HEIF形式は、ISOBMFF形式に準拠している。そのため、まず、ISOBMFFについて、簡単に説明する。
【0044】
ISOBMFF形式は、ボックスと呼ばれる構造でデータを管理する。
【0045】
ボックスは、4バイトのデータ長フィールドと、4バイトのデータタイプフィールドから始まり、それ以降に任意長のデータを持つデータ構造である。
【0046】
データ部の構造は、データタイプによって決定する。ISOBMFFの仕様書やHEIFの仕様書では、いくつかのデータタイプ及びそのデータ部の構造が規定されている。
【0047】
また、ボックスは、別のボックスをデータに持つこともある。すなわち、ボックスの入れ子が可能である。ここで、あるボックスのデータ部に入れ子にされたボックスを、サブボックスと呼ぶ。
【0048】
また、サブボックスではないボックスを、ファイルレベルのボックスと呼ぶ。これは、ファイルの先頭から、順次アクセス可能なボックスである。
【0049】
図2を用いて、HEIF形式のファイルについて説明する。
【0050】
まず、ファイルレベルのボックスについて説明する。
【0051】
データタイプが’ftyp’であるファイルタイプボックスには、ファイルの互換性に関する情報を格納する。ISOBMFF準拠のファイル仕様は、その仕様が規定するファイルの構造や、ファイルが格納するデータを、ブランドと呼ぶ4バイトのコードで宣言し、それらをファイルタイプボックスに格納する。ファイルの先頭にファイルタイプボックスを配置することにより、ファイルのリーダは、ファイルタイプボックスの内容をチェックすることで、さらにファイルの内容を読み出して解釈することなく、ファイルの構造を知ることができる。
【0052】
HEIFの仕様では、’mif1’というブランドでそのファイル構造を表す。また、格納する符号化画像データがHEVC圧縮されたデータの場合、HEVC圧縮のプロファイルに従って、’heic’または’heix’というブランドで表す。
【0053】
データタイプが’meta’であるメタデータボックスは、いろいろなサブボックスを含み、各アイテムに関するデータを格納する。内訳については、後述する。
【0054】
データタイプが’mdat’であるメディアデータボックスには、各アイテムのデータを格納する。例えば、符号化画像アイテムの符号化画像データや、メタデータアイテムのExifデータ、である。
【0055】
次に、メタデータボックスのサブボックスについて説明する。
【0056】
データタイプが’hdlr’であるハンドラボックスは、メタデータボックスが管理するデータのタイプを表す情報を格納する。HEIF仕様では、ハンドラボックスのhandler_typeは‘pict’である。
【0057】
データタイプが’dinf’であるデータ情報ボックスは、このファイルが対象とするデータが存在するファイルを指定する。ISOBMFFでは、あるファイルが対象とするデータを、そのファイル以外のファイルに格納することが可能である。その場合、データ情報ボックス内のデータリファレンスに、データが存在するファイルのURLを記述したデータエントリURLボックスを格納する。対象とするデータが同じファイルに存在する場合、それを表すフラグのみを有するデータエントリURLボックスを格納する。
【0058】
データタイプが’pitm’であるプライマリアイテムボックスは、主画像を表す画像アイテムのアイテムIDを格納する。
【0059】
データタイプが’iinf’であるアイテム情報ボックスは、以下の、アイテム情報エントリを格納するためのボックスである。
【0060】
データタイプが’infe’であるアイテム情報エントリは、各アイテムの、アイテムIDやアイテムタイプ、フラグを格納する。
【0061】
符号化画像データがHEVC圧縮されたデータである画像アイテムのアイテムタイプは、’hvc1’であり、画像アイテムである。
【0062】
オーバーレイ形式の導出画像アイテム、つまり、ImageOverlay構造体(オーバーレイ情報)のアイテムタイプは、’iovl’であり、画像アイテムに分類である。
【0063】
Exif形式のメタデータアイテムのアイテムタイプは、’Exif’であり、メタデータアイテムである。
【0064】
また、画像アイテムには、フラグフィールドの最下位ビットが立っている場合、その画像アイテムは隠し画像(hidden image)であることを指定することができる。このフラグが立っている場合、その画像アイテムは、再生時に表示対象として扱われず、非表示となる。
【0065】
データタイプが’iref’であるアイテム参照ボックスは、各アイテム間の参照関係を、参照関係の種類、参照元アイテムのアイテムID、1個以上の参照先アイテムのアイテムID、で格納する。
【0066】
オーバーレイ形式の導出画像アイテムの場合、参照関係の種類に’dimg’、参照元アイテムのアイテムIDに導出画像アイテムのアイテムID、参照先アイテムのアイテムIDにオーバーレイを構成する各画像アイテムのアイテムID、を格納する。
【0067】
サムネイル画像の場合、参照関係の種類に’thmb’、参照元アイテムのアイテムIDにサムネイル画像のアイテムID、参照先アイテムのアイテムIDに本画像のアイテムID、を格納する。
【0068】
データタイプが’iprp’であるアイテムプロパティボックスは、以下の、アイテムプロパティコンテナボックスとアイテムプロパティ関連ボックスを格納するためのボックスである。
【0069】
データタイプが’ipco’であるアイテムプロパティコンテナボックスは、個々のプロパティデータのボックスを格納するボックスである。
【0070】
各画像アイテムは、その画像の特徴、属性を表すプロパティデータを持つことができる。
【0071】
プロパティデータボックスには、以下のようなものがある。
【0072】
デコーダ構成・初期化データ(Decoder configuration and initialization。HEVCの場合、タイプは’hvcC’)は、デコーダの初期化に使われるデータである。HEVCのパラメータセットデータ(VideoParameterSet、SequenceParameterSet、PictureParameterSet)は、ここに格納する。
【0073】
画像空間範囲(Image spatial extents。タイプは’ispe’)は、画像の大きさ(幅、高さ)である。
【0074】
色空間情報(Colour information。タイプは’colr’)は、画像の色空間情報である。
【0075】
画像回転情報(Image rotation。タイプは’irot’)が、画像を回転して表示する際の、回転方向である。
【0076】
画像のピクセル情報(タイプは’pixi’)は、画像を構成するデータのビット数を示す情報である。
【0077】
また、本実施例では、HDRメタデータとして、マスターディスプレイカラーボリューム情報(Mastering display colour volume。タイプは’MDCV’)や、コンテンツライトレベル情報(Contents light level information。タイプは’CLLI’)を、プロパティデータボックスとして格納している。
【0078】
上記以外プロパティも存在するが、ここでは明記しない。
【0079】
データタイプが’ipma’であるアイテムプロパティ関連ボックスは、各アイテムとプロパティの関連付けを、アイテムIDと、関連するプロパティの’ipco’におけるインデックスの配列、の形式で格納する。
【0080】
データタイプが’idat’であるアイテムデータボックスは、データサイズが小さいアイテムデータを格納するボックスである。
【0081】
オーバーレイ形式の導出画像アイテムのデータは、構成画像の位置情報などを格納したImageOverlay構造体(オーバーレイ情報)を’idat’に格納することができる。オーバーレイ情報には、背景色情報であるcanvas_fill_valueパラメータや、オーバーレイで合成した際の最終的な合成後の再生画像サイズであるoutput_width、output_heightパラメータ等がある。さらに、合成要素となる画像毎に、合成画像内での配置位置を水平位置座標、垂直位置座標を示すhorizontal_offset、vertical_offsetパラメータがある。オーバーレイ情報に含まれるこれらのパラメータを用いることにより、指定した背景色、サイズの1つの画像内の任意の位置に複数の画像を配置した合成画像を再生することができる。 データタイプが’iloc’であるアイテムロケーションボックスは、各アイテムのデータの位置情報を、オフセット基準(construction_method)、オフセット基準からのオフセット値、長さ、の形式で格納する。
【0082】
オフセット基準は、ファイルの先頭、または、’idat’、である。
【0083】
なお、メタデータボックスには上記以外のボックスも存在するが、ここでは明記しない。
【0084】
図2では、2つの符号化画像アイテムがオーバーレイ形式の画像を構成している構造を図示している。オーバーレイ形式の画像を構成する符号化画像アイテム数は2に限定されない。オーバーレイ形式の画像を構成する符号化画像アイテム数が増加すると、以下のボックス、項目、がその分増加する。
・アイテム情報ボックスに、符号化画像アイテムの、アイテム情報エントリが追加。
・アイテム参照ボックスの参照関係種類‘dimg’の参照先アイテムIDに、符号化画像アイテムのアイテムIDが増加。
・アイテムプロパティコンテナボックスにおける、デコーダ構成・初期化データ、画像空間範囲、など。
・アイテムプロパティ関連ボックスに、符号化画像アイテムとその関連プロパティのインデックスの項目が追加。
・アイテムロケーションボックスに符号化画像アイテムの位置情報の項目が追加。
・メディアデータボックスに、符号化画像データが追加。
【0085】
<HDR画像の撮影>
次に、HDR画像を撮影して記録する際の撮像装置100での処理について説明する。
【0086】
記録する画像の幅や高さが昨今大きくなってきているが、あまりに大きいサイズを符号化すると他機種での復号時に互換性が失われたり、システムの規模が大きくなったりする。具体的に本実施例では符号・復号にH.265を用いた例を説明する。H.265には規格として、ProfileやLevelといったパラメータがあり、画像符号化方法や、画像サイズが大きくなるとこれらのパラメータが変化する。これらの値は復号時の機器で再生対象の可否を判断するパラメータであり、このパラメータを判定して再生不可として弾かれる場合がある。本実施例では大きな画像サイズを記録する場合、複数の画像表示領域に分割して、HEIF規格が謳うオーバーレイの方法を用い、それらの符号データをHEIFファイルに格納して管理する方法について述べる。このように複数の画像表示領域に分けることで1つあたりの画像表示領域のサイズが小さくなり他の機種での再生互換性が高まる。以下、符号化領域の1辺のサイズを4096以下と定めて説明する。なお符号化形式はH.265以外のものであってもよいし、1辺のサイズを4096以外のサイズに規定してもよい。
【0087】
次に符号化領域の開始位置や符号化領域の幅・高さ、また、再生領域の開始位置や再生領域の幅・高さについてのアライメント制約について説明する。撮像装置としては、分割後の画像を符号化する際に、符号化領域の垂直・水平符号化開始アライメントや、再生時の再生幅・高さアライメント等がハードウエア制約として一般的に存在する。つまり1つ以上の符号化領域のそれぞれの符号化開始位置、再生領域の開始位置や幅・高さを計算して符号化する必要がある。撮像装置はユーザからの指示で複数の画像サイズを切り替えて記録するため、画像サイズごとにそれらを切り替える必要がある。
【0088】
本実施例で説明する符号化処理部114は符号化時に横方向(以後x方向)に64画素単位、縦方向(以後y方向)に1画素単位の開始位置のアライメント制約がある。また符号化する幅、高さのアライメント制約にそれぞれ32画素単位、16画素単位の制約がある。再生領域の開始位置はx方向に2画素単位、y方向に1画素単位の開始位置のアライメント制約がある。また、再生領域の幅・高さのアライメント制約はそれぞれ、2画素、1画素単位の制約がある。なお、ここでアライメント制約について例を述べたが、一般的にはこれ以外のアライメント制約であってもよい。
【0089】
次にHDR記録モード(HDR撮影モード)でHDR画像データを撮影し、撮影したHDR画像データをHEIFファイルとして記録するまでのフローについて
図3を用いて説明する。HDRモードでは撮像部112と画像処理部113においてHDRを示す色域BT.2020と、PQガンマカーブを用いてHDRの色空間を表現する処理を行う。HDRのための記録については本実施例では割愛する。
【0090】
S101ではCPU101がユーザによるSW2の押下の有無を判定する。ユーザが被写体を捉え、SW2まで押下した場合(S101のYES)、CPU101はSW2が押されたことを検知し、S102に遷移する。SW2が押されるまでCPU101はこの検出を続ける(S101のNO)。
【0091】
S102ではCPU101が、ユーザが捉えた画角の画像をHEIFファイルに保存するため、符号化領域を縦横方向にいくつに分割するか(分割数N)、どのように分割するかを決定する。この結果をメモリ102に保存する。S102については
図4を用いながら後述する。S103に進む。
【0092】
S103ではCPU101がメモリ102にある変数MをM=1に初期化する。その後S104に進む。
【0093】
S104ではCPU101が、S102で決定した分割数N回分ループしたかを監視する。ループ回数が分割数Nに到達した場合(S104のYES)S109に進み、そうでなければ(S104のNO)S105に進む。
【0094】
S105ではCPU101が分割画像Mの符号開始領域、再生領域の情報を先のメモリ102から読み出しておく。S106に進む。
【0095】
S106ではCPU101が符号化処理部114にメモリ102に配置された画像全体のうち、どの領域を符号化するかを伝え、符号化させる。S107に進む。
【0096】
S107では符号化処理部114が符号化した結果の符号データと、符号時に発生する付随情報をCPU101がメモリ102に一時保存する。具体的にH.265の例では、のちにHEIFファイルに格納しなければならない、VPS、SPS、PPS等のH.265規格情報のことである。本実施例とは直接関係ないため割愛するが、H.265のVPS、SPS、PPSは、符号データのサイズや、ビット深度、表示・非表示領域の指定、フレーム情報等復号に必要な様々な情報である。その後S108に進む。
【0097】
S108ではCPU101が変数MをインクリメントしS104に戻る。
【0098】
S109ではCPU101がHEIFファイルに格納するメタデータを生成する。CPU101は、撮像部112、画像処理部113、符号化処理部114等から、再生時に必要な情報を引出し、メタデータとしてメモリ102に一旦保存する。具体的にはExif形式に成形されたデータである。Exifデータの詳細についてはすでに一般的であるため本実施例での説明は割愛する。S110に進む。
【0099】
S110ではCPU101がサムネイルを符号化する。メモリ102にある画像全体を画像処理部113が縮小しサムネイルサイズにして一旦メモリ102に配置する。このメモリ102にあるサムネイル画像をCPU101が符号化処理部114に指示して符号化する。ここでサムネイルは先に述べたアライメント制約を満たすようなサイズで符号化するが、符号化領域と再生領域とが異なる方式でもよい。このサムネイルもH.265で符号化される。S111に進む。
【0100】
S111では符号化処理部114がサムネイルを符号化した結果の符号データと、符号時に発生する付随情報をCPU101がメモリ102に一時保存する。先のS107の説明と同様にVPS、SPS、PPS等のH.265規格情報のことである。次にS112に進む。
【0101】
S112では、ここまでのステップでCPU101が各種データをメモリ102に保存した。CPU101はこのメモリ102に保存したデータを順序良く結合しHEIFファイルを完成させ、メモリ102に保存する。このHEIFファイルを完成させるためのフローは、
図6を用いてのちに説明する。S113に進む。
【0102】
S113でCPU101は、メモリ102にあるHEIFファイルを記録媒体制御部119によって記録媒体 120に書き出すよう指示する。その後S101に戻る。
【0103】
このようなステップで撮影が行われてからHEIFファイルが記録媒体120に記録される。
【0104】
次に、先に説明したS102での分割の方法決定について、
図4、
図5(a)を用いて説明する。以下センサ画像領域の左上を原点(0、0)とし、座標を(x、y)、幅高さをそれぞれw、hで表す。また領域については開始座標の(x、y)と幅高さのw、hを合わせて[x、y、w、h]と表現する。
【0105】
S121でCPU101は撮影時の記録モードをメモリ102から取得する。記録モードとは例えば画像サイズ、画像のアスペクト比、画像の圧縮率などが決定した記録方法を決めたもので、ユーザはこの記録モードから1つを選択して撮影を行う。例えば、Lサイズ、3:2アスペクトなどの設定のことである。記録モードに応じて撮影画角が異なるため、撮影の画角を決定する。S122に進む。
【0106】
S122ではセンサ画像領域[0、0、H、V]の中から、再生画像の開始座標位置(x0、y0)を取得する。次にS123に進む。
【0107】
S123では再生画像の領域[x0、y0、Hp、Vp]をメモリ102から取得する。次にS124に進む。
【0108】
S124では再生画像の領域を含むように符号化する必要がある。先に述べたように符号開始位置のアライメントはx方向に64画素のアライメントをとるため、再生画像の領域を含むように符号化しようとすると(Ex0、Ey0)の位置から符号化しなければならない。このようにしてLexのサイズが求まる。このLexのオフセットが0であれば(S124のNO)S126に進み、必要であれば(S124のYES)S125に進む。
【0109】
S125では、Lexを求める。Lexは先に述べたように再生画像領域と符号化開始位置のアライメントによって決定される。CPU101はLexを以下のようにして決定する。x0を水平方向の符号化開始位置の画素アライメント64画素で除し、その商に先の64画素を乗じて求める。余りを含めず計算するため、再生画像領域の開始位置よりも左側に位置する座標が得られる。よってLexは、再生画像領域のx座標から先の計算によって求めた符号化開始位置のx座標の差で求まる。S126に進む。
【0110】
S126では再生画像の最上位ラインの右端の最終位置の座標を計算する。これを(xN、y0)とする。xNはx0にHpを加算して求める。S127に進む。
【0111】
S127では再生画像の右端を含むように符号化領域の右端を求める。符号化領域の右端wの求めるためには、符号化の幅のアライメント制約が必要である。先に述べたように符号化の幅・高さの制約はそれぞれ32画素の倍数の制約がある。この制約と(xN、y0)との関係から再生画像の右端より先にRexのオフセットが必要かどうかをCPU101が計算する。Rexが必要であれば(S127のYES)S128に進み、不要であれば(S127のNO)S129に進む。
【0112】
S128では、CPU101が再生画像右端座標(xN、y0)の右側に32画素のアライメントになるようにRexを付加し、符号化の終了位置(ExN、Ey0)を求める。S129に進む。
【0113】
S129では、CPU101が表示領域の右下の座標を求める。再生画像のサイズが自明のためこの座標は(xN、yN)となる。S130に進む。
【0114】
S130では再生画像の下端を含むように符号化領域の下端を求める。符号化領域の下端を求めるためには、符号化の高さのアライメント制約が必要である。先に述べたように符号化の高さの制約はそれぞれ16画素の倍数の制約がある。この制約と再生画像の右下座標(xN、yN)との関係から再生画像の下端より先にVexのオフセットが必要かどうかをCPU101が計算する。Vexが必要であれば(S130のYES)S131に進み、不要であれば(S130のNO)S132に進む。
【0115】
S131ではCPU101がVexを先の制約と再生画像の右下座標(xN、yN)との関係から計算し、符号化領域の右下の座標(ExN、EyN)を求める。Vexの計算方法は、垂直方向の符号化開始位置であるy0からyNを含むように符号化の高さアライメントである16画素の倍数の位置に設定する。具体的には、y0=0であったとして、Vpを符号化の高さアライメントの16画素で除し、商と余りを求める。再生領域を含むように符号化領域をとらなければならないため、余りがある場合は商に1を加算し、先の16画素を乗じる。これによって16画素の倍数でありながらVpを含む符号化領域の下端のy座標のEyNが得られる。VexはEyNからyNの差で求まる。なお、EyNはyNからVexだけ下方向にオフセットさせた値であり、ExNはS128で既に求めた値である。S132に進む。
【0116】
S132では、CPU101が、符号化領域のサイズHp’xVp’を以下のように求める。水平サイズHpに、アライメント制約から求めたLexとRexを加算して、Hp’を求める。また、垂直サイズVpに、アライメント制約から求めたVexを加算して、Vp’を求める。Hp’とVp’から符号化領域のサイズHp’×Vp’が求まる。S133に進む。
【0117】
S133では、CPU101が符号化対象の水平サイズHp’が分割すべき4096画素を超えるか否かを判断し、超える場合は(S133のYES)S134に進み、超えない場合(S133のNO)はS135に進む。
【0118】
S134では、符号化対象の水平サイズHp’を4096画素以下になるように2つ以上の領域に分割する。例えば6000画素であれば2分割であるし、9000画素であれば3分割となる。
【0119】
2分割の場合は、先の符号化の幅に関するアライメント32画素を満足するおおよその中心位置で分割する。均等にならない場合は左の分割画像を大きくする。また3分割に分割する場合で均等にならない場合、先の符号化の幅に関するアライメントに注意しながら、A、B、Cと分割領域を分け、分割領域AとBのサイズが等しくなるようにし、分割領域Cをそれよりも若干小さくなるように分割する。3分割以上であっても同じアルゴリズムによって分割位置、サイズを決定する。S135に進む。
【0120】
S135では、CPU101が符号化対象の垂直サイズVp’が分割すべき4096画素を超えるか否かを判断し、超える場合(S135のYES)はS136に進み、超えない場合(S135のNO)は処理を終了する。
【0121】
S136では、S134と同様にVp’を複数の分割領域に分割し処理を終了する。
【0122】
S102での分割の例について、
図5(b)、(c)、(d)、(e)を用いて具体的な数値で説明する。
図5は、画像データの分割方法だけでなく、符号化領域および再生領域の関係も示している。
【0123】
図5(b)について説明する。
図5(b)は左右二つの領域に画像を分割し再生領域の左右と下端にLex、Rex、Vexが付与されるケースである。まず、再生画像領域は[256+48、0、4864、3242]が撮像装置で記録したい最終的な画像の領域である。この再生画像領域の左上の座標は(256+48、0)であり、先に述べた符号化の開始アライメントである64画素単位の倍数ではない。よって、ここより48画素左側にLexを設け、符号化開始位置の左端はx=256の位置となる。次に再生領域の幅についてはw=48+4864となるが、これは符号化の幅のアライメントの32画素の倍数になっておらず符号化時の幅の制約アライメントを鑑みて、再生画像領域の右端に16画素Rexを付与する。同様に垂直方向も計算するとVex=4画素となる。この再生画像は横方向のサイズが4096を超えているため、横方向を符号化の幅のアライメントを鑑みつつおおよそ中心の位置で2分割し、結果として分割画像1の符号化領域は[256、0、2496、3242+8]、分割画像2の符号化画像領域は[256+2496、0、2432、3242+8]が求まる。
【0124】
図5(c)について説明する。
図5(c)は左右二つの領域に画像を分割し、再生領域の右と下端にRex、Vexが付与されるケースである。再生画像領域のx位置がx=0のため、符号化領域の開始アライメントである64画素とも一致するためLex=0となる。以後、先に述べた計算方法と同様であり、結果として分割画像1の符号化領域は[0、0、2240、32456+8]、分割画像2の符号化画像領域は[2240、0、2144、2456+8]が求まる。
【0125】
図5(d)について説明する。
図5(d)は左右二つの領域に画像を分割し、再生領域の左右にLex、Rexが付与されるケースである。再生画像領域の縦サイズh=3648であり、これは符号化時の画像高さの制約である16画素の倍数となるため、Vex=0となる。以後、先に述べた計算方法と同様であり、結果として分割画像1の符号化領域は[256+48、0、2240、3648]、分割画像2の符号化画像領域は[256+2240、0、2144、3648]が求まる。
【0126】
図5(d)について説明する。
図5(d)は上下左右に4つの領域に画像を分割し、再生領域の左右にLex、Rexが付与されるケースである。このケースは符号化領域が、縦方向も横方向も4096を超えるため、田の字に分割を実施する。以後、先に述べた計算方法と同様であり、結果として分割画像1の符号化領域は[0、0、4032、3008]、分割画像2の符号化画像領域は[4032、0、4032、3008]、分割画像3の符号化画像領域は[0、3008、4032、2902]、分割画像4の符号化画像領域は[4032、3008、4032、2902]が求まる。
【0127】
このようにしてCPU101は記録モードに応じて再生画像の領域が決定し、それごとに分割領域の計算を行う必要がある。他の方法として、これらの計算をあらかじめ実施しておき、その結果をメモリ102保存しておく。CPU101は記録モードに応じた分割領域、再生領域の情報をメモリ102から読みだして符号化処理部114に設定してもよい。
【0128】
本実施例のように撮影画像を複数の分割画像に分割して記録する場合、記録した画像から撮影画像を復元するには、複数の表示領域を合成する必要がある。合成画像を生成する際に、各々の分割画像に重複領域がないほうが、余分なデータの符号化や記録をしなくてよいため、効率的となる。そのため、本実施例では分割画像間で接する境界には重なる部分(重複領域)を持たないように、各再生領域、各符号化領域を設定した。ただし、ハードウエアのアライメント制約などの条件によっては分割画像間に重複領域を設けても構わない。
【0129】
次に、先のS112で述べたHEIFファイルの構築方法について
図6を用いながら説明する。HEIFファイルは
図2で示す構造であるから、CPU101はファイルの先頭から順にメモリ102上に構築する。
【0130】
S141で’ftyp’ボックスを生成する。このボックスはファイルの互換性を知るためのボックスでファイルの先頭におかれる。CPU101はこのボックスのメジャーブランドに’heic’、コンパチブルブランドに’mif1’、’heic’を格納する。本実施例ではこれらの値を使用するがこれ以外であってもよい。S142に進む。
【0131】
S142で’meta’ボックスを生成する。このボックスは以下に記載の複数のボックスを格納するボックスである。CPU101はこのボックスを生成してS143に進む。
【0132】
S143では、’iinf’ボックス内に格納する’hdlr’ボックスを生成する。このボックスは先に述べた’meta’ボックスの属性を示すものである。CPU101はこのタイプに’pict’を格納して、S144に進む。なお’pict’は、メタデータボックスが管理するデータのタイプを表す情報であり、HEIF仕様では、ハンドラボックスのhandler_typeは‘pict’と規定されている。
【0133】
S144では、’iinf’ボックス内に格納する’dinf’ボックスを生成する。このボックスはこのファイルが対象とするデータの存在位置を示すものである。CPU101はこのボックスを生成してS145に進む。
【0134】
S145では、’iinf’ボックス内に格納する’pitm’ボックスを生成する。このボックスは、主画像を表す画像アイテムのアイテムIDを格納する。主画像となるのはオーバーレイで合成されたオーバーレイ画像であるからCPU101はオーバーレイ情報アイテムIDを、主画像のアイテムIDとして格納する。S146に進む。
【0135】
S146では、’meta’ボックス内に格納する’iinf’ボックスを生成する。このボックスはアイテムのリストを管理するボックスである。ここではデータ長フィールドに初期値を入れ、データタイプフィールドに’iinf’を保存しS147に進む。
【0136】
S147では、’iinf’ボックス内に格納する’infe’ボックスを生成する。この’infe’ボックスはファイル内に格納される各アイテムのアイテム情報を登録するボックスであり、アイテム毎に’infe’ボックスを生成する。分割画像については、それぞれの分割画像が1つのアイテムとしてこのボックスに登録される。他にも、複数の分割画像から主画像を構成するためのオーバーレイ情報や、Exif情報、サムネイル画像が、それぞれアイテムとして登録される。この際、前述したとおり、オーバーレイ情報、分割画像、サムネイル画像は、画像アイテムとして登録する。画像アイテムについては、隠し画像を示すフラグを付加することが可能であり、このフラグが付加することにより、再生時に画像が表示されないことになる。つまり、画像アイテムにこの隠し画像フラグを付加することにより、再生時に非表示とする画像を指定することができる。そこで、分割画像に関しては、隠し画像を示すフラグを立てておき、オーバーレイ情報のアイテムにはそのフラグを立てないでおく。これにより、個々の分割画像自体は表示対象外となり、オーバーレイ情報により複数の分割画像がオーバーレイ合成された結果の画像のみが表示対象となる。それぞれのアイテムについて個別に’infe’ボックスを生成し、それらを先の’iinf’内に格納する。S148に進む。
【0137】
S148では、’iinf’ボックス内に格納する’iref’ボックスを生成する。このボックスはオーバーレイで構成される画像(主画像)、その画像を構成する分割画像の関係を示す情報を格納する。先に説明したS102で分割方法が決定しているため、決定された分割方法に基づいてCPU101はこのボックスを生成する。S149に進む。
【0138】
S149では、’iinf’ボックス内に格納する’iprp’ボックスを生成する。このボックスはアイテムのプロパティを格納するボックスであり、S150で生成される’ipco’ボックスや、S151で生成される’ipma’ボックスを格納するボックスである。S150に進む。
【0139】
S150では、’iprp’ボックス内に格納する’ipco’ボックスを生成する。このボックスはアイテムのプロパティコンテナボックスであり、各種プロパティを保存する。プロパティは複数存在し、CPU101は以下のプロパティコンテナボックスを生成して’ipco’ボックス内に格納する。プロパティは、画像アイテム毎に生成されるものと複数の画像アイテムに共通して生成されるものがある。主画像となるオーバーレイ情報により構成されるオーバーレイ画像および分割画像とで共通する情報として、’colr’ボックスを生成する。’colr’ボックスには、主画像(オーバーレイ画像)、分割画像の色空間情報として、HDRのガンマカーブ等の色情報を格納する。分割画像については、それぞれ、’hvcC’ボックス、’ispe’ボックスを生成する。先に説明したS107やS111で、メモリ102に格納してある符号化時の付随情報をCPU101が読み出し、’hvcC’のプロパティコンテナボックスを生成する。この’hvcC’に格納する付随情報は、符号化領域を符号化したときの情報や、符号化領域のサイズ(幅、高さ)だけでなく、再生領域のサイズ(幅、高さ)や、符号化領域中の再生領域の位置情報等も含む。これらの付随情報がゴロム圧縮されて’hvcC’のプロパティコンテナボックスに記録される。ゴロム圧縮については一般的な圧縮方法のためここでは説明を割愛する。また、’ispe’ボックスには、分割画像の再生領域のサイズ(幅、高さ)情報(例として2240x2450等)を格納する。主画像となるオーバーレイ画像の回転を表す情報を格納した’irot’ボックス、画像のデータのビット数を示す‘pixi’ボックスを生成する。‘pixi’ボックスについては、主画像(オーバーレイ画像)と分割画像とで個別に生成してもよいが、本実施例においてはオーバーレイ画像と分割画像は同じビット数、つまり10ビットであるので1つだけ生成する。またHDRの補足情報が格納される’CLLI’や’MDCV’ボックスも生成する。さらに、サムネイル画像のプロパティとして、主画像(オーバーレイ画像)とは別に、色空間情報を格納した’colr’ボックス、符号化時の情報を格納した’hvcC’ボックス、画像サイズを格納した’ispe’ボックス、画像データのビット数の情報を格納した‘pixi’ボックス、HDRの補足情報を格納した’CLLI’ボックスを生成する。これらのプロパティコンテナボックスを生成し、’ipco’ボックス内に格納する。S151に進む。
【0140】
S151で’ipma’ボックスを生成する。このボックスはアイテムとプロパティの関係性を示すボックスであり、アイテム毎に先に述べたどのプロパティと関連性があるのかを示す。CPU101はメモリ102に保存された各種データからアイテムとプロパティの関係性を判断し、このボックスを生成する。S152に進む。
【0141】
S152で’idat’ボックスを生成する。このボックスには各分割画像の再生領域をどのように配置してオーバーレイ画像を生成するかを示すオーバーレイ情報を格納する。オーバーレイ情報には、背景色情報であるcanvas_fill_valueパラメータや、オーバーレイ画像全体のサイズであるoutput_width、output_heightパラメータがある。また、合成要素となる分割画像一つずつに対して、分割画像を合成する水平位置座標、垂直位置座標を示すhorizontal_offset、vertical_offsetパラメータがある。これらのパラメータに対してCPU101は、S102で決定した分割方法に基づいてこれらの情報を記載する。具体的には、オーバーレイ画像のサイズを示すoutput_width、output_heightパラメータに、再生領域全体のサイズを記載する。そして、各分割画像の位置情報を示すhorizontal_offset、vertical_offsetパラメータには、再生領域左上の開始座標位置(x0、y0)から、分割画像の左上の位置までの幅方向および高さ方向のオフセット値をそれぞれ記載する。このようにしてオーバーレイ情報を生成することにより、画像の再生時に、分割画像をhorizontal_offset、vertical_offsetパラメータに基づいて配置して分割画像を合成することにより、分割前の状態の画像を再生することができるようになる。本実施例では、分割画像に重複領域を設けていないため、各分割画像が重ならないように配置されるように位置情報が記載されることになる。そして、分割画像を合成して得られた画像のうち、output_width、output_heightパラメータにより表示される領域を指定することにより、再生領域のみを表示対象として再生することができる。このように生成されたオーバーレイ情報が格納された’idat’ボックスを生成する。S153に進む。
【0142】
S153で’iloc’ボックスを生成する。このボックスは各種データがファイルのどの位置に配置されるかを示すボックスである。各種情報がメモリ102に保存されているため、これらのサイズからこのボックスを生成する。具体的に、オーバーレイを示す情報は先の’idat’に格納するが、この’idat’内部の位置とサイズ情報である。また、サムネイルデータ、符号データ12は’mdat’ボックスに格納するが、この位置とサイズ情報を格納する。S154に進む。
【0143】
S154で’mdat’ボックスを生成する。このボックスは以下に記載の複数のボックスを含むボックスである。CPU101は’mdat’ボックスを生成しS155に進む。
【0144】
S155でExifデータを’mdat’ボックスに格納する。先のS109で、メタデータのExifがメモリ102に保存されているので、CPU101はこれをメモリ102から読み出し’mdat‘ボックスに追記する。S156に進む。
【0145】
S156でサムネイルデータを’mdat’ボックスに格納する。先のS110で、サムネイルデータはメモリ102に保存されているので、CPU101はこれをメモリ102から読み出し、‘mdat’ボックスに追記する。S157に進む。
【0146】
S157で符号化画像1のデータを’mdat’ボックスに格納する。先のS106のループ1回目で、分割画像1のデータはメモリ102に保存されているので、CPU101はこれをメモリ102から読み出し、‘mdat’ボックスに追記する。これを符号化画像Nまで繰り返して符号化画像1-Nをすべて’mdat’ボックスに追記する。このようなステップでCPU101はHEIFファイルを構築する。
【0147】
以上の処理により、
図2のようなHEIFフォーマットでHDR画像を記録媒体120に記録することができる。
【0148】
<HDR画像の再生>
次に、記録媒体120にHEIFフォーマットで記録されたHDR画像ファイルを再生する際の撮像装置100での処理について説明する。なお、本実施形例では、撮像装置100で再生する場合について説明するが、撮像部を有さない画像処理装置において、記録媒体120に記録されたHEIFフォーマットで記録されたHDR画像を再生する場合に、同様の処理を実現するようにしてもよい。
【0149】
図7を用いて、主画像がオーバーレイ画像時のHEIFの再生(表示)処理について説明する。
【0150】
ステップS701で、CPU101は、記録媒体制御部119を使用して、記録媒体120に存在する指定ファイルの先頭部分をメモリ102に読み出す。そして、読み出したファイルの先頭部分に、正しい構造のファイルタイプボックスが存在するか、さらに、その中のブランドに、HEIFを表す’mif1’が存在するかをチェックする。
【0151】
また、独自のファイル構造に対応したブランドを記録してある場合、そのブランドの存在チェックを行う。そのブランドが特定の構造を保証する限りにおいて、このブランドのチェックにより、これ以降のいくつかの構造チェック、例えば、ステップS703、ステップS704、を省略することも可能である。
【0152】
ステップS702で、CPU101は、記録媒体120から指定ファイルのメタデータボックスをメモリ102に読み出す。
【0153】
ステップS703で、CPU101は、ステップS702で読み出したメタデータボックスからハンドラボックスを探し、構造をチェックする。HEIFの場合、ハンドラタイプは’pict’でなければならない。
【0154】
ステップS704で、CPU101は、ステップS702で読み出したメタデータボックスからデータ情報ボックスを探し、構造をチェックする。本実施例では、同一ファイル内にデータが存在することを前提としているため、データエントリURLボックスに、そのむねを表すフラグが立っていることをチェックする。
【0155】
ステップS705で、CPU101は、ステップS702で読み出したメタデータボックスからプライマリアイテムボックスを探し、主画像のアイテムIDを取得する。
【0156】
ステップS706で、CPU101は、ステップS702で読み出したメタデータボックスからアイテム情報ボックスを探し、ステップS705で取得した主画像のアイテムIDに対応したアイテム情報エントリを取得する。上述のHDR画像の撮影処理により記録されたHEIF形式の画像ファイルの場合、オーバーレイ情報が主画像として指定されていることになる。つまり、主画像のアイテムIDに対応したアイテム情報エントリには、そのアイテムタイプがオーバーレイを表す‘iovl’となっている。
【0157】
ステップS707で、CPU101は、オーバーレイ画像作成処理を実行する。これについては、
図8を用いて、後に説明する。
【0158】
ステップS708で、CPU101は、ステップS707で作成したオーバーレイ画像を、表示制御部115を経由して、表示部116に表示する。
【0159】
なお、作成したオーバーレイ画像を表示する際には、画像の色空間情報を指定する必要があることがある。画像の色空間情報は、色空間プロパティ’colr’のcolour_primariesで色域が、transfer_characteristicsで変換特性(ガンマ相当)が指定されているので、それらの値を用いる。HDR画像の例として、色域がRec.ITU-R BT.2020、変換特性がRec.ITU-R BT.2100(PQ)、などが用いられる。
【0160】
また、アイテムプロパティコンテナボックスに、’MDCV’、’CLLI’などのHDR用メタデータが存在する場合、それを使用することも可能である。
【0161】
次に、
図8を用いて、オーバーレイ画像作成処理について説明する。
【0162】
ステップS801で、CPU101は、オーバーレイ画像のプロパティ取得処理を実行する。これについては、
図9を用いて、後に説明する。
【0163】
ステップS802で、CPU101は、オーバーレイ画像のオーバーレイ情報取得処理を実行する。オーバーレイ情報は、‘idat‘ボックスに記録されているので、‘idat‘ボックスに格納されているデータを取得することになる。
【0164】
オーバーレイ情報には、オーバーレイ画像の画像サイズ(output_width、output_heightパラメータ)、オーバーレイ画像を構成する個々の画像アイテム(分割画像アイテム)の位置情報(horizontal_offset、vertical_offset)、などが存在する。
【0165】
オーバーレイ情報は、アイテムタイプがオーバーレイ’iovl’である画像アイテムの、画像アイテムデータ扱いである。
【0166】
この取得処理については、
図10を用いて、後に説明する。
【0167】
ステップS803で、CPU101は、分割画像アイテムのすべてのアイテムID取得処理を実行する。これについては、
図11を用いて、後に説明する。
【0168】
ステップS804で、CPU101は、ステップS802で取得したオーバーレイ情報のオーバーレイ画像サイズを用いて、そのサイズの画像データを格納するメモリを確保する。このメモリ領域をキャンバスと呼ぶこととする。
【0169】
ステップS805で、CPU101は、分割画像カウンタnを0に初期化する。
【0170】
ステップS806で、CPU101は、分割画像カウンタnが分割画像アイテム数と等しいかチェックする。等しい場合、ステップS2210に進む。等しくない場合、ステップS807に進む。
【0171】
ステップS807で、CPU101は、n番目の分割画像アイテムに関して、1個の画像アイテムの画像作成処理を実行する。これについては、
図12を用いて、後に説明する。
【0172】
ステップS808で、CPU101は、ステップS807で作成した、n番目の分割画像アイテムの画像(分割画像)を、ステップS802で取得したオーバーレイ情報に従い、ステップS804で確保したキャンバス上に配置する。
【0173】
オーバーレイでは、オーバーレイを構成する分割画像は、キャンバス上の任意の位置に配置することが可能であり、その位置はオーバーレイ情報に記述されている。しかし、オーバーレイ画像の外側は表示対象外である。そのため、ここで、分割画像をキャンバスに配置する際に、分割画像の符号化領域のうち、オーバーレイ画像の領域と重複する領域、すなわち、分割画像の再生領域、のみを配置するようにする。
【0174】
【0175】
座標系は、オーバーレイ画像の左上を原点(0,0)とし、X座標は右方向に増加、Y座標は下方向に増加するとする。
【0176】
オーバーレイ画像の大きさを、幅Wo、高さHoとする(0<Wo、0<Ho)。
【0177】
従って、オーバーレイ画像は、左上の座標が(0,0)で、右下の座標が(Wo-1、Ho-1)である。
【0178】
また、分割画像の大きさを、幅Wn、高さHnとする(0<Wn、0<Hn)。
【0179】
分割画像の左上の位置を、(Xn、Yn)とする。
【0180】
従って、分割画像は、左上座標が(Xn、Yn)、右下座標が(Xn+Wn-1、Yn+Hn-1)である。
【0181】
分割画像における、オーバーレイ画像(キャンバス)との重複領域は、以下の方法で求めることができる。
【0182】
以下の場合は、重複領域が存在しない場合である。
Wo-1<Xn(分割画像の左端が、オーバーレイ画像の右端より右)
Xn+Wn-1<0(分割画像の右端が、オーバーレイ画像の左端より左)
Ho-1<Yn(分割画像の上端が、オーバーレイ画像の下端より下)
Yn+Hn-1<0(分割画像の下端が、オーバーレイ画像の上端より上)
この場合、この画像は、処理対象外となる。
【0183】
また、以下の場合、分割画像全体が、重複領域となる。
0<=Xnかつ(Xn+Wn-1)<=(Wo-1)かつ0<=Ynかつ(Yn+Hn-1)<=(Ho-1)
この場合、分割画像全体を、キャンバス上の指定位置(Xn、Yn)に配置する。
【0184】
上記以外の場合、分割画像の一部が配置対象となる。
重複領域の左上座標を(Xl、Yt)、右下座標を(Xr、Yb)とする。
左端Xlは、以下の通り。
if(0<=Xn)
Xl=Xn;
else
Xl=0;
右端Xrは、以下の通り。
if(Xn+Wn-1<=Wo-1)
Xr=Xn+Wn-1;
else
Xr=Wo-1;
上端Ytは、以下の通り。
if(0<=Yn)
Yt=Yn;
else
Yt=0;
下端Ybは、以下の通り。
if(Yn+Hn-1<=Ho-1)
Yb=Yn+Hn-1;
else
Yb=Ho-1;
この重複領域の大きさは、幅Xr-Xl+1、高さYb-Yt+1、である。
【0185】
この重複領域の左上座標(Xl、Yt)、右下座標(Xr、Yb)は、前述のように、キャンバスの左上を原点(0,0)とした座標系である。
【0186】
重複領域の左上座標(Xl、Yt)を、分割画像の左上を原点とする座標系で表すと、以下のようになる。
Xl’=Xl-Xn;
Yt’=Yt-Yn;
【0187】
まとめると、以下のようになる。
分割画像の左上から(Xl’、Yt’)離れた位置から幅(Xr-Xl+1)、高さ(Yb-Yt+1)の矩形を切り出し、キャンバスの(Xl、Yt)の位置に配置する。
【0188】
これにより、分割画像のうちの再生領域を、キャンバス上の適切な位置に配置することが可能である。
【0189】
ステップS809で、CPU101は、分割画像カウンタnに1加算し、ステップS806に戻る。
【0190】
ステップS810で、CPU101は、ステップS801で取得したオーバーレイ画像のプロパティ中に回転プロパティ’irot’が存在するか調べ、存在する場合、回転角を調べる。回転プロパティが存在しない場合、または、回転プロパティが存在するが回転角が0の場合、処理を終了する。回転プロパティが存在し、回転角が0以外の場合、ステップS811に進む。
【0191】
ステップS811で、CPU101は、ステップS806~ステップS809で作成したキャンバスの画像を、ステップS810で取得した角度だけ回転し、それを作成画像とする。
【0192】
これにより、オーバーレイ画像を作成することが可能である。
【0193】
なお、上記説明では、ステップS806~ステップS809の処理を分割画像数分ループで繰り返しているが、並行処理可能な環境では、ステップS806~ステップS809の処理を、分割画像数分並行処理しても良い。
【0194】
次に、
図9を用いて、画像アイテムのプロパティ取得処理について説明する。
【0195】
ステップS901で、CPU101は、メタデータボックス内のアイテムプロパティボックス内のアイテムプロパティ関連ボックスから、指定画像アイテムIDのエントリを探し、そこに格納されている、プロパティインデックスの配列を取得する。
【0196】
ステップS902で、CPU101は、配列カウンタnを0に初期化する。
【0197】
ステップS903で、CPU101は、配列カウンタnが配列要素数と等しいかチェックする。等しい場合、終了する。等しくない場合、ステップS904に進む。
【0198】
ステップS904で、CPU101は、メタデータボックス内のアイテムプロパティボックス内のアイテムプロパティコンテナボックスから、配列のn番目の要素のインデックスのプロパティを取得する。
【0199】
ステップS905で、CPU101は、配列カウンタnに1加算し、ステップS903に戻る。
【0200】
次に、
図10を用いて、画像アイテムのデータ取得処理について説明する。
【0201】
ステップS1001で、CPU101は、メタデータボックス内のアイテムロケーションボックスから、指定画像アイテムIDのエントリを探し、オフセット基準(construction_method)、オフセット、長さ、を取得する。
【0202】
ステップS1002で、CPU101は、ステップS1001で取得したオフセット基準をチェックする。オフセット基準は、値0がファイルの先頭からのオフセット、値1がアイテムデータボックス内のオフセット、を表す。オフセット基準が0の場合、ステップS1003に進む。オフセット基準が1の場合、ステップS1004に進む。
【0203】
ステップS1003で、CPU101は、ファイルの先頭からオフセットバイトの位置から長さバイト分を、メモリ102に読み出す。
【0204】
ステップS1004で、CPU101は、メタデータボックス内のアイテムデータボックスのデータ部の先頭からオフセットバイトの位置から長さバイト分を、メモリ102に読み出す。
【0205】
次に、
図11を用いて、主画像を構成する画像のアイテムID取得処理について説明する。
【0206】
ステップS1101で、CPU101は、メタデータボックス内のアイテム参照ボックスから、参照タイプが‘ding’で、参照元アイテムIDが主画像のアイテムIDであるエントリを探す。
【0207】
ステップS1102で、CPU101は、ステップS1101で取得したエントリの、参照先アイテムIDの配列を取得する。
【0208】
次に、
図12を用いて、1個の符号化画像アイテムの画像作成処理について説明する。
【0209】
ステップS1201で、CPU101は、その画像アイテムのプロパティを取得する。これは、
図9を用いて、説明済みである。
【0210】
ステップS1202で、CPU101は、その画像アイテムのデータを取得する。これは、
図10を用いて、説明済みである。画像アイテムのデータとは、符号化された画像データである。
【0211】
ステップS1203で、CPU101は、ステップS1201で取得したプロパティのうちのデコーダ構成・初期化データを用いて、デコーダを初期化する。
【0212】
ステップS1204で、CPU101は、ステップS1202で取得した符号化された画像データをデコーダでデコードし、デコード結果を取得する。
【0213】
ステップS1205で、CPU101は、ピクセル形式変換が必要かどうかチェックする。
【0214】
不要な場合、終了する。必要な場合、ステップS1206に進む。
【0215】
デコーダの出力データのピクセル形式と、表示装置がサポートしている画像のピクセル形式が異なる場合、ピクセル形式変換が必要である。
【0216】
例えば、デコーダの出力データのピクセル形式がYCbCr(輝度色差)形式であり、表示装置の画像のピクセル形式がRGB形式の場合、YCbCr形式からRGB形式へのピクセル形式変換が必要である。また、同じYCbCr形式でも、ビット深度(8ビット、10ビット、など)や色差サンプル(4:2:0、4:2:2、など)が異なる場合も、ピクセル形式変換が必要である。
【0217】
なお、色空間情報プロパティ’colr’のmatrix_coefficientsで、RGB形式からYCbCr形式へ変換する際の係数が指定されているので、YCbCr形式からRGB形式へ変換するためには、その係数の逆数を用いればよい。
【0218】
ステップS1206で、CPU101は、ステップS1204で取得したデコーダ出力データを、所望のピクセル形式に変換する。
【0219】
これにより、指定された符号化画像アイテムの画像を作成することが可能である。
【0220】
以上の処理により、記録媒体120に
図2のようなHEIFフォーマットで記録されたHDR画像を再生することができる。
【0221】
<その他の実施形態>
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【0222】
また、上記の実施の形態の機能を制御方法として、この制御方法を画像処理装置に実行させるようにすればよい。また、上述の実施の形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムを画像処理装置が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記憶媒体に記録される。
【0223】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。