(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-08
(45)【発行日】2024-10-17
(54)【発明の名称】撮像装置、制御方法、システム、プログラムならびに記憶媒体
(51)【国際特許分類】
H04N 23/60 20230101AFI20241009BHJP
H04N 5/77 20060101ALI20241009BHJP
G03B 15/00 20210101ALI20241009BHJP
G03B 17/00 20210101ALI20241009BHJP
【FI】
H04N23/60 300
H04N5/77
G03B15/00 H
G03B17/00 X
(21)【出願番号】P 2020140215
(22)【出願日】2020-08-21
【審査請求日】2023-08-07
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】吉田 昌史
【審査官】眞岩 久恵
(56)【参考文献】
【文献】特開2009-044256(JP,A)
【文献】特開2017-135755(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/222
H04N 5/253- 5/257
H04N 5/77
H04N 23/00
H04N 23/40 -23/76
H04N 23/90 -23/959
G03B 15/00 -15/035
G03B 15/06 -15/16
G03B 17/00
G03B 17/26 -17/34
G03B 17/38 -17/46
(57)【特許請求の範囲】
【請求項1】
RAW画像を現像する画像処理装置と通信可能な撮像装置であって、
撮像手段と、
前記撮像手段により連続的に撮影して取得された複数枚のRAW画像から、撮影時の設定と操作に応じて、前記画像処理装置に送信する優先度を決定する決定手段と、
前記決定手段により決定された優先度に従って、前記複数枚のRAW画像を前記画像処理装置に送信する通信手段と、を有することを特徴とする撮像装置。
【請求項2】
前記決定手段は、
所定の撮影設定の場合は、撮影準備指示を受け付けた後であって撮影開始指示を受け付けた時点より所定の時間前の時点から撮影開始までの間に撮影されたRAW画像の優先度を他のRAW画像よりも高くなるように決定することを特徴とする請求項1に記載の撮像装置。
【請求項3】
所定の撮影設定ではない場合は、撮影終了指示を受け付けた時点から所定の時間前の時点から撮影終了指示を受け付けた時点までの間に撮影されたRAW画像の優先度が他のRAW画像よりも高くなるように決定することを特徴とする請求項1または2に記載の撮像装置。
【請求項4】
前記決定手段は、所定の撮影設定の場合は、撮影開始指示を受け付けた時点より所定の時間前の時点から撮影開始指示を受け付けた時点までの間に撮影されたRAW画像が撮影時刻が早くなる方向に順番に送信され、その後、撮影開始指示を受け付けた時点から撮影終了指示を受け付けた時点までの間に撮影された複数のRAW画像が撮影時刻が遅くなる方向に順番に送信されるように優先度を決定し、
所定の撮影設定ではない場合は、撮影開始指示を受け付けた時点から撮影終了指示を受け付けた時点までの間に撮影された複数のRAW画像が撮影時刻が早くなる方向に順番に送信されるように優先度を決定することを特徴とする請求項3に記載の撮像装置。
【請求項5】
前記決定手段は、前記決定された順番でRAW画像を送信中に前記画像処理装置からの送信停止指示を受けた場合、前記RAW画像の送信を停止することを特徴とする請求項4に記載の撮像装置。
【請求項6】
前記画像処理装置において前記撮像装置から受信した複数のRAW画像の中から所定の条件を満たす画像が抽出された場合に、前記通信手段は前記RAW画像の送信を停止することを特徴とする請求項5に記載の撮像装置。
【請求項7】
RAW画像を現像する画像処理装置と通信可能な撮像装置の制御方法であって、
撮像手段により連続的に撮影して取得された複数枚のRAW画像から、撮影時の設定と操作に応じて、前記画像処理装置に送信する優先度を決定するステップと、
前記決定された優先度に従って、前記複数枚のRAW画像を前記画像処理装置に送信するステップと、を有することを特徴とする制御方法。
【請求項8】
コンピュータを、請求項1から6のいずれか1項に記載された撮像装置として機能させるためのプログラム。
【請求項9】
コンピュータを、請求項1から6のいずれか1項に記載された撮像装置として機能させるためのプログラムを記憶したコンピュータによる読み取りが可能な記憶媒体。
【請求項10】
撮像装置と画像処理装置が通信可能なシステムであって、
前記撮像装置は、
撮像手段と、
前記撮像手段により連続的に撮影して取得された複数枚のRAW画像から、撮影時の設定と操作に応じて、前記画像処理装置に送信する優先度を決定する決定手段と、
前記決定手段により決定された優先度に従って、前記複数枚のRAW画像を前記画像処理装置に送信する通信手段と、を有し、
前記画像処理装置は、
前記撮像装置から複数のRAW画像を受信する受信手段と、
前記撮像装置から受信した複数のRAW画像から所定の条件を満たすRAW画像を抽出する抽出手段と、
前記抽出手段により抽出されRAW画像を現像する現像手段と、
前記現像手段により現像された画像および/または前記抽出手段により抽出された結果を前記撮像装置に送信する送信手段と、を有することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、RAW画像の現像処理を行うシステムに関する。
【背景技術】
【0002】
撮像素子の性能向上により、シャッターを機械的に作動させて画像を撮像するメカニカルシャッター方式に代えて、撮像素子による電荷の蓄積および読み出しタイミングを制御して撮像を行う電子シャッター方式が主流となっている。電子シャッター方式はメカニカルシャッター方式とは異なり撮影時にシャッター音が出ないため、例えば静穏な環境下での撮影シーンに好適である。また、電子シャッター方式では、撮像素子の電荷の読み出し速度の向上により、1秒間に数10コマの撮影を行うことも可能である。
【0003】
このように、1秒間に数10コマ(例えば、30コマ)を撮像可能な撮像装置では、撮像後の比較的時間のかかる圧縮処理やファイル化処理などは省略し、次の撮影が可能な状態へ移行する必要がある。そのため、1秒間に数10コマの各フレームをRAW画像データとして撮影直後に現像処理は行わずに記録している。また、RAW画像データであっても表示用のサムネイルデータは必要であるため、撮像時のデータサイズよりも小さくしたサムネイルデータを各フレームに埋め込む。このようにして撮影全体の処理時間を節約している。
【0004】
また、従来のRAW画像データの現像処理はデジタルカメラやPCの現像アプリケーションを用いて行われていたが、近年の通信環境の向上により、ネットワークを介してクラウドサーバにより現像処理が行えるようなっている。このようにクラウドサーバで現像処理を行うことで、新たなサービスやアルゴリズムをいち早く取り入れ、高品質な現像画像を実現できる。また、高性能なサーバを利用することで現像処理に要する時間を短縮できる。特許文献1には、クラウドサーバによる現像処理に関して、撮像装置からサーバにRAW画像データを送信し、サーバにおいてRAW画像データの現像処理を行って撮像装置に送信するシステムが記載されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1では、データ量の多いRAW画像データをクラウドサーバに送信する必要があり、送信に時間がかかる。また、クラウドサーバにおいて全てのRAW画像データの現像処理を行うと、サーバにおけるデータ処理により多くの時間が必要となってしまう。
【0007】
本発明は、上記課題に鑑みてなされ、その目的は、サーバでの現像処理を効率的に行えるようにすることである。
【課題を解決するための手段】
【0008】
上記課題を解決し、目的を達成するために、本発明は、撮像装置と画像処理装置が通信可能なシステムであって、前記撮像装置は、撮像手段と、前記撮像手段により連続的に撮影して取得された複数枚のRAW画像から、撮影時の設定と操作に応じて、前記画像処理装置に送信する優先度を決定する決定手段と、前記決定手段により決定された優先度に従って、前記複数枚のRAW画像を前記画像処理装置に送信する通信手段と、を有し、前記画像処理装置は、前記撮像装置から複数のRAW画像を受信する受信手段と、前記撮像装置から受信した複数のRAW画像から所定の条件を満たすRAW画像を抽出する抽出手段と、前記抽出手段により抽出されRAW画像を現像する現像手段と、前記現像手段により現像された画像および/または前記抽出手段により抽出された結果を前記撮像装置に送信する送信手段と、を有する。
【発明の効果】
【0009】
本発明によれば、サーバでの現像処理を効率的に行えるようになる。
【図面の簡単な説明】
【0010】
【
図2】実施形態1~3のデジタルカメラの構成を示すブロック図。
【
図3】実施形態1~3のサーバの構成を示すブロック図。
【
図4】(a)は実施形態1~3におけるバンドルRAW画像ファイルとベストショット判定の説明図、(b)は実施形態1~3におけるプリ撮影「切」の場合のRAWバースト撮影の説明図、(c)は実施形態1~3におけるプリ撮影「入」の場合のRAWバースト撮影の説明図、(d)は実施形態1~3におけるバンドルRAW画像ファイルのデータ構成図。
【
図5】実施形態1~3におけるサーバの処理を示すフローチャート。
【
図6】実施形態1~3におけるベストショット抽出結果の通知処理を説明する図。
【
図7】実施形態1におけるデジタルカメラの処理を示すフローチャート。
【
図8】実施形態1~3におけるバンドルRAW画像ファイルから送信するRAW画像データを切り取る処理の説明図。
【
図9】実施形態2におけるデジタルカメラの処理を示すフローチャート。
【
図10】実施形態3におけるデジタルカメラの処理を示すフローチャート。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでするものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
[実施形態1]
本実施形態においては、画像生成装置および画像処理装置としてデジタルカメラ(以下、カメラ)200およびサーバコンピュータ(以下、サーバ)300が通信ネットワーク100により接続されたシステムの例を説明する。
【0013】
なお、本実施形態のシステムは、カメラ200で生成されたRAW画像データの現像処理を、現像処理機能を提供するネットワーク上のクラウドサーバ(以下、サーバ)300で実行する。なお、本実施形態では、サーバ300がRAW画像データの現像処理を実行する例を説明するが、サーバ300において現像処理以外の画像処理を行うようにしてもよい。
【0014】
<システム構成>まず、
図1を参照して、本実施形態のシステム構成について説明する。
【0015】
カメラ200には、サーバ300の現像処理機能を利用するための画像処理アプリケーションがインストールされている。カメラ200はWAN(Wide Area Network)、インターネット、公衆回線などの通信ネットワーク100を介してサーバ300と通信可能に接続される。
【0016】
カメラ200は、連写撮影(RAWバースト撮影)により連続的に撮影して生成された複数のRAW画像データから構成されるバンドルRAW画像ファイル50を生成し、バンドルRAW画像ファイル50から優先的にサーバ300に送信するRAW画像データを決定する。カメラ200で生成されるRAW画像データは、デジタルカメラなどで撮影される静止画や動画など画像データであって、現像処理を行わずにファイル化されたものである。
【0017】
カメラ200は、カメラ200で生成されたRAW画像データをサーバ300に送信し、サーバ300がカメラ200から受信したRAW画像データに対して現像処理を実行し、現像済みの画像データをカメラ200に送信する。
【0018】
サーバ300は、カメラ200から受信した複数枚のRAW画像データからベストショットと判定したRAW画像データを抽出する。そして、サーバ300は、ベストショットと判定したRAW画像データに関する情報またはベストショットと判定したRAW画像データを現像した画像データ51をカメラ200に送信する。
【0019】
<カメラ200の構成>次に、
図2を参照して、カメラ200のハードウェア構成について説明する。
【0020】
なお、本実施形態では、画像生成装置をデジタルカメラなどの撮像装置に適用した例を説明するが、これに限定されるものではない。例えば、携帯電話の一種であるスマートフォン、タブレットデバイス、時計型端末や眼鏡型端末などの情報処理装置であってもよい。
【0021】
制御部201は、カメラ200の全体を統括して制御する演算処理装置(CPU)であって、後述する不揮発性メモリ202に格納されたプログラムを実行することで、後述するフローチャートの処理を実現する。なお、制御部201が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
【0022】
不揮発性メモリ202には、制御部201の動作用の定数、プログラム等が格納される。ここでいう、プログラムとは、本実施形態にて後述するサーバ300との通信処理を実行するためのプログラムを含む。また、不揮発性メモリ202には、制御部201が実行する基本的なソフトウェアであるOS(オペレーティングシステム)や、このOSと協働して応用的な機能を実現する画像処理アプリケーションが格納されている。本実施形態のカメラ200の処理は、画像処理アプリケーションにより提供されるソフトウェアを読み込むことにより実現される。なお、画像処理アプリケーションはカメラ200にインストールされたOSの基本的な機能を利用するためのソフトウェアを有しているものとする。なお、カメラ200のOSが本実施形態における処理を実現するためのソフトウェアを有していてもよい。不揮発性メモリ202は、例えば、EEPROMである。
【0023】
作業用メモリ203は、制御部201の動作用の定数、変数、不揮発性メモリ202から読み出したプログラム等を展開する作業領域として使用される。また、作業用メモリ203は、撮像部204で撮像された画像データを一時的に保持するバッファメモリや、表示部206の画像表示用メモリとして使用される。
【0024】
撮像部204は、ズームレンズやフォーカスレンズを含むレンズ群、絞り機能を備えるシャッターを含む。また、撮像部204は、被写体像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子、撮像素子から出力されるアナログ画像信号をデジタル信号に変換するA/D変換器を有する。撮像部204は、制御部201の制御により、撮像部204に含まれるレンズにより結像された被写体像光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行って、デジタル信号からなる画像データを出力する。
【0025】
制御部201は、撮像部204により撮像されたRAW画像データに対して現像処理を除く各種の画像処理を行い、画像ファイルを生成し、記録媒体208に記録する。本実施形態のカメラ200では、RAW画像データはDCF(Design Rule for Camera File system)規格に従って、記録媒体208に記録される。また、制御部201は、撮像した画像データを用いて所定の演算処理を行い、得られた演算結果に基づき制御部201が撮像部204のフォーカスレンズや絞り、シャッターを制御することで、AF(オートフォーカス)処理やAE(自動露出)処理を行う。
【0026】
操作部205は、ユーザからの各種操作を受け付ける各種スイッチ、ボタン、タッチパネル等の操作部材からなる。操作部205は、例えば、電源のオンまたはオフにする電源ボタンや画像の撮影を行うシャッターボタン、カメラ200の動作モードを設定するモード設定ボタンなどを含む。また、後述する表示部206に一体的に形成されるタッチパネルも操作部205に含まれる。また、操作部205は、後述の通信部207を介して外部装置との通信を開始するための専用の接続ボタンなどの操作部材を含む。また、操作部205は、カメラ200と一体化された構成であっても、カメラ200に接続された外部装置であってもよい。カメラ200は、操作部205と接続することができればよい。
【0027】
シャッターボタンは、ユーザによる撮影時の操作として操作途中、いわゆる半押し(撮影準備指示)でオンとなり第1シャッタースイッチ信号SW1を発生する。第1シャッタースイッチ信号SW1オンを受けて、制御部201は撮像部204を制御することによりAF(オートフォーカス)処理やAE(自動露出)処理、AWB(オートホワイトバランス)処理、EF(フラッシュプリ発光)処理等の撮影準備動作を開始する。また、シャッターボタンは、ユーザによる撮影時の操作として操作完了、いわゆる全押し(撮影開始指示)でオンとなり、第2シャッタースイッチ信号SW2を発生する。制御部201は、第2シャッタースイッチ信号SW2オンを受けて、撮像部204からの信号読み出しから記録媒体208に画像データを書き込むまでの一連の撮影動作を開始し、第2シャッタースイッチ信号SW2オフ(撮影終了指示)を受けて、撮影動作を終了する。
【0028】
モード設定ボタンは、カメラ200の動作モードを、静止画や動画を撮影するための撮影モード、画像を再生するための再生モード、後述するRAWバースト撮影モードを含む複数の動作モードのいずれかに設定可能である。なお、RAWバースト撮影では、撮影時の設定として後述するプリ撮影「切」またはプリ撮影「入」に設定可能である。
【0029】
表示部206は、撮像部204で撮像された画像データ(ライブビューを含む)やサーバ300で画像処理が実行された画像データなどの表示を行う。また、表示部206は、画像処理アプリケーションのGUI(Graphical User Interface)など、対話的な操作のための文字表示等を行う。表示部206は、例えば、液晶ディスプレイ、有機ELディスプレイ等の表示デバイスである。表示部206は、カメラ200と一体化された構成であっても、カメラ200に接続された外部装置であってもよい。カメラ200は、表示部206と接続することができ、表示部206の表示を制御する機能を有していればよい。
【0030】
通信部207は、サーバ300などの外部装置と接続するためのインターフェースである。本実施形態のカメラ200は、通信部207を介して、外部装置とデータの授受を行うことができる。例えば、カメラ200で生成されたRAW画像データを、通信部207を介して外部装置に送信することができる。なお、本実施形態では、通信部207は、USBケーブルやHDMI(登録商標)、IEEE1394などの有線接続インターフェースを含む。また、通信部207は、IEEE802.11の規格による無線LAN(Local Area Network)、IEEE802.15の規格によるBluetooth(登録商標)などの無線接続インターフェースを含む。制御部201は、通信部207を制御することで外部装置との通信を実現する。
【0031】
記録媒体208は、撮像部204から出力された画像データが書き込まれたり、既に記録されている画像ファイルが読み出されたりする。記録媒体208は、カメラ200に装着されるメモリカードやハードディスクドライブ等であってもよいし、カメラ200に内蔵されたフラッシュメモリやハードディスクドライブであってもよい。カメラ200は少なくとも記録媒体208にアクセスする機能を有していればよい。
【0032】
<サーバ300の構成>次に、
図3を参照して、サーバ300のハードウェア構成について説明する。
【0033】
本実施形態のサーバ300は、制御部301、不揮発性メモリ302、作業用メモリ303、画像処理部304、通信部305、記憶部306、画像判定部307を備える。
【0034】
制御部301は、サーバ300の全体を統括して制御する演算処理装置(CPU)であって、後述する不揮発性メモリ302に格納されたプログラムを実行することで、後述するフローチャートの処理を実現する。なお、制御部301が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
【0035】
不揮発性メモリ302には、制御部301の動作用の定数、プログラム等が格納される。ここでいう、プログラムとは、カメラ200との通信処理を実行するためのプログラムを含む。また、不揮発性メモリ302には、制御部301が実行する基本的なソフトウェアであるOS(オペレーティングシステム)や、このOSと協働して応用的な機能を実現する画像処理プログラムが格納されている。本実施形態のサーバ300の処理は、画像処理プログラムにより提供されるソフトウェアを読み込むことにより実現される。なお、画像処理プログラムはサーバ300にインストールされたOSの基本的な機能を利用するためのソフトウェアを有しているものとする。なお、サーバ300のOSが本実施形態における処理を実現するためのソフトウェアを有していてもよい。不揮発性メモリ302は、例えば、ハードディスクドライブ(HDD)、フラッシュメモリで構成されるソリッドステートドライブ(SSD)、EEPROM、フラッシュメモリ、光ディスクなどである。
【0036】
作業用メモリ303は、制御部301の動作用の定数、変数、不揮発性メモリ302から読み出したプログラム等を展開する作業領域として使用される。また、作業用メモリ303は、カメラ200から受信したRAW画像データを一時的に保持するバッファメモリとして使用される。
【0037】
画像処理部304は、カメラ200から受信したRAW画像データに対して、画素補間処理、輝度信号処理、および色信号処理などの現像処理を施した現像済み画像データを生成するGPU(Graphics Processing Unit)である。
【0038】
通信部305は、HTTP通信等によって外部装置と通信を行うソフトウェアや回路を含む。本実施形態のサーバ300は、通信部305を介して、カメラ200とデータの授受を行うことができる。例えば、サーバ300は、画像処理部304で現像済みの画像データを、通信部305を介して外部装置に送信することができる。なお、本実施形態では、通信部305は外部装置と無線方式や有線方式で通信するためのインターフェースを含む。制御部301は、通信部305を制御することで外部装置との通信を実現する。本実施形態では、通信部305は、GET/HEADメソッドを用いてカメラ200と接続することができる。なお、GET/HEADメソッドに限らず、POSTメソッドやPUTメソッド等の方法を使用してもよい。ユーザが外出時にカメラ200とサーバ300を接続させる場合は、公衆回線やWi-Fi(登録商標)等を使用して接続を行い、帰宅時は自宅のアクセスポイント等を介して接続してもよい。なお、カメラ200との通信はこれに限られるものではなく、また、現像済みの画像データをカメラ200に送信しなくてもよい。
【0039】
記憶部306は、カメラ200から受信した画像データその他のデータを記憶するSSDやハードディスクなどの記憶装置である。なお、サーバ300が通信を行う対象はカメラ200に限らず、他の通信機器であってもよい。
【0040】
画像判定部307は、カメラ200から受信し、記憶部306に格納されているRAW画像データの中からベストショットを判定し、ベストショットと判定したRAW画像データを抽出するソフトウェアや回路を含む。
【0041】
画像処理部304は、画像判定部307においてベストショットと判定されたRAW画像データに対して現像処理を行う。現像済みの画像データは、通信部305によりカメラ200に送信される。
【0042】
<バンドルRAW画像とベストショット判定>
図4(a)は複数のRAW画像データからベストショットと判定した画像を抽出する方法を説明する図である。
【0043】
本実施形態において、ベストショットとは、RAWバースト撮影により所定の撮影操作に応じて同一の被写体を連写して複数のRAW画像データを生成し、複数のRAW画像の中で最適と判定されるRAW画像データである。ベストショットとしては、ピントが合っている、被写体が大きく写っている、決定的瞬間を捉えている、など複数の判定条件がある。本実施形態では、
図4(a)を用いて、一人の人物を連写して複数(例えば、6枚)の画像401~406を撮影した例を説明する。この場合、画像404が最も笑顔となっており、画像401~406の中のベストショットとして判定される。
【0044】
図4(b)、(c)はRAWバースト撮影について説明する図である。
【0045】
RAWバースト撮影とは、複数のRAW画像データを連写で撮影する方法であり、所定の撮影設定としてプリ撮影「切」とプリ撮影「入」がある。
図4(b)はプリ撮影「切」の場合の撮影動作の例を示し、
図4(c)はプリ撮影「入」の場合の撮影動作の例を示している。
図4(b)、(c)の横軸は時間を示している。
【0046】
図4(b)のプリ撮影「切」の状態では、第2シャッタースイッチ信号SW2オン(撮影開始)から第2シャッタースイッチ信号SW2オフ(撮影終了)までの間に連写撮影を行い、連写撮影された複数のRAW画像データを1つのバンドルRAW画像ファイル410として記録される。
【0047】
図4(c)のプリ撮影「入」の状態では、第1シャッタースイッチ信号SW1オン後であって第2シャッタースイッチ信号SW2オンから所定の時間前の時点から第2シャッタースイッチ信号SW2オフまでの間に連写撮影を行い、連写撮影された複数のRAW画像データを1つのバンドルRAW画像ファイル411として記録される。この場合、第2シャッタースイッチ信号SW2オンとなる所定の時間前(最大0.5秒前)から第2シャッタースイッチ信号SW2オフまでの間に連写されたRAW画像データが記録される。
【0048】
図4(d)はRAWバースト撮影により生成されるバンドルRAW画像ファイルのデータ構成を例示する図である。
【0049】
バンドルRAW画像ファイル420は、メタ情報421、代表画像422、各画像フレーム423~426を含む。
【0050】
メタ情報421には撮影情報や代表画像情報、フレーム数、ベストショット情報が含まれる。
【0051】
代表画像情報は、後述する代表画像422に対応するRAW画像データのフレーム番号や撮影日時、代表画像の解像度などを含む情報である。フレーム数はRAW画像データ数である。ベストショット情報は、ベストショットと判定されたフレームの情報である。本実施形態ではサーバ300の画像判定部307がベストショットを判定し、判定結果をサーバ300の通信部305を介してカメラ200に送信するが、これに限らず、ユーザ自身でベストショットを判定したり、カメラ200で自動判定したりしてもよい。
【0052】
代表画像422には、バンドルRAW画像ファイル全体の代表画像の表示用JPEGデータが含まれている。例えば、
図4(b)や
図4(c)で第2シャッタースイッチ信号SW2オン時のフレームの表示用画像が代表画像として記録され、再生時やインデックス表示時に表示される画像として利用される。
【0053】
各画像フレーム423~426はバンドルRAW画像ファイル420に含まれる複数のRAW画像データである。画像フレーム423は1フレーム目のフレーム情報と表示用JPEG(サイズ:小)とRAWデータを含む。画像フレーム424は2フレーム目のフレーム情報と表示用JPEG(サイズ:小)とRAWデータを含む。画像フレーム425は3フレーム目のフレーム情報と表示用JPEG(サイズ:小)とRAWデータを含む。画像フレーム426は最後のフレームNのフレーム情報と表示用JPEG(サイズ:小)とRAWデータを含む。
【0054】
カメラ200を用いてRAWバースト撮影を行うことで、連写撮影されたRAW画像データの束である1つのバンドルRAW画像ファイル420が生成される。サーバ300では、カメラ200から受信したバンドルRAW画像ファイル420からベストショットと判定される1枚のRAW画像データを抽出することで、ベストショット画像を取得することができる。
【0055】
<サーバ300の処理>次に、
図5を参照して、サーバ300により実行されるベストショット抽出処理および現像処理について説明する。
【0056】
なお、
図5の処理は、サーバ300の制御部301が不揮発性メモリ302に格納されているプログラムを作業用メモリ303に展開して実行し、各構成要素を制御することにより実現される。後述する
図7、
図9、
図10でも同様である。また、
図5の処理は、サーバ300がカメラ200からバンドルRAW画像ファイルを受信すると開始される。
【0057】
ステップS501では、制御部301は、カメラ200から送信されるバンドルRAW画像ファイルに含まれる全てのRAW画像データが受信済みであるか否かを判定する。制御部301は、全て受信済みであると判定した場合は処理をステップS504へ進め、全て受信済みはでないと判定した場合は処理をステップS502に進める。受信済みか否かの判定は、制御部301が受信したバンドルRAW画像ファイル420のメタ情報421にあるフレーム数を参照して行う。
【0058】
ステップS502では、制御部301は、カメラ200から受信した一部のRAW画像データを用いてベストショット判定が可能か否かを判定する。制御部301は、ベストショット判定可能と判定した場合は処理をステップS504へ進め、ベストショット判定不能と判定した場合は処理をステップS503に進める。ベストショット判定可能か否かの判定は、例えば、所定枚数以上のRAW画像データを受信済みであるか否か、受信済みのRAW画像データから被写体の傾向が判定できるか否かを判定する。また、これ以上のRAW画像データは不要と判定した場合など、制御部301がバンドルRAW画像ファイルの一部のRAW画像データからベストショットを抽出可能であるか否かで判定される。
【0059】
ステップS503では、制御部301は、カメラ200から残りのRAW画像データが送信されるまで待機し、処理をステップS501へ戻す。
【0060】
ステップS504では、制御部301は、画像判定部307によりベストショット判定を行い、処理をステップS505へ進める。ベストショット判定は、ピントが合っている、被写体が大きく写っている、決定的瞬間をとらえている等の複数の条件が用いられ、被写体認識結果により条件を変更したり組み合わせたりすることで行うことができる。なお、ベストショット判定方法はこれに限らず、どのような方法を用いてもよい。例えば、人工知能(AI)を利用して様々なアルゴリズムを組み合わせたり、ユーザの撮影傾向を学習してベストショット判定に反映させたりしてもよい。
【0061】
ステップS505では、制御部301は、ベストショットと判定されたRAW画像データに対し、画像処理部304により現像処理を行い、処理をステップS506に進める。なお、画像処理部304で実行される現像処理のパラメータは、ユーザが任意に設定したり、サーバ300が人工知能(AI)を利用して自動で決定したりすることが可能である。また、現像処理は行わずRAW画像データのまま保持することも可能である。
【0062】
ステップS506では、制御部301は、ステップS505で現像処理を行ったRAW画像データに対して現像済み状態を示す現像済みフラグをセットし、処理をステップS507に進める。なお、現像済みフラグは、不揮発性メモリ302や作業用メモリ303の専用の記憶領域に記憶されてもよい。
【0063】
ステップS507では、制御部301は、現像処理が終了したか否かを判定し、現像処理が終了したと判定した場合は処理をステップS508に進め、現像処理が終了していないと判定した場合は処理をステップS504へ戻す。現像処理を終了するか否かは1つのバンドルRAW画像ファイルからベストショットと判定し現像するRAW画像データの枚数の上限の設定に基づき、設定された枚数分のRAW画像データの現像が完了したか否かにより判定される。ベストショットと判定し現像するRAW画像データの枚数の上限は、予めサーバ300に設定されていてもよいし、何らかの方法でサーバに設定可能であればよい。
【0064】
ステップS508では、制御部301は、ベストショット抽出結果をカメラ200へ通知し、現像済みの画像データをカメラ200に送信して処理を終了する。なお、ステップS508の処理の詳細は
図6で後述する。サーバ300からカメラ200へのベストショット抽出結果の通知は、サーバ300の画像判定部307で判定されたRAW画像データのフレーム番号等のベストショット情報だけを通知してもよい。また、ベストショットと判定されたRAW画像データを現像した現像済み画像データを送信してもよいし、それらの両方を送信してもよい。
【0065】
<ベストショット抽出結果の通知>
次に、
図6を参照して、サーバ300からカメラ200にベストショット抽出結果を通知する処理について説明する。
【0066】
図6(a)は、ベストショット抽出結果の通知処理を説明する図である。カメラ200は、サーバ300にベストショット抽出状態問い合せ601を送信することにより、サーバ300に送信したバンドルRAW画像ファイルのいずれのフレームがベストショットと判定されたかを問い合せる。問い合わせを送信するトリガは、例えばカメラ200での画像再生時である。カメラ200が常時サーバ300に接続されている場合、接続のタイミングは考慮する必要はないが、サーバ300と接続状態でない場合はベストショット抽出状態問い合わせ601を行う場合にサーバ300と接続する必要がある。サーバ300はカメラ200からベストショット抽出状態問い合わせ601を受信した場合、その応答としてサーバ300におけるベストショット抽出状態602をカメラ200に送信する。
【0067】
図6(b)は、サーバ300のベストショット抽出状態の遷移を例示する図である。サーバ300がバンドルRAW画像ファイルを受信し、まだベストショット抽出処理を開始していない状態を未処理605とする。ベストショット抽出処理中の状態をベストショット判定中606とする。ベストショット抽出処理が終了した状態をベストショット抽出完了607とする。なお、
図6の例では3つの状態を例示しているが、他の状態があってもよい。
【0068】
ベストショット抽出状態問い合わせ601に対する応答であるベストショット抽出状態602が未処理605またはベストショット判定中606の場合、サーバ300に対してはベストショット抽出完了607になるまでベストショット抽出状態問い合わせ601を繰り返し送信する。カメラ200はサーバ300のベストショット抽出状態602がベストショット抽出完了607になったと判定した場合、サーバ300にベストショット情報取得要求603を送信し、サーバ300に対してベストショットとして抽出されたフレームを問い合わせる。サーバ300はベストショット情報取得要求603に対する応答として、バンドルRAW画像ファイルからベストショットと判定されたRAW画像データのフレーム番号等のベストショット情報604を送信する。
【0069】
<バンドルRAW画像ファイルの一部をサーバ300に送信する処理>
次に、
図7および
図8を参照して、カメラ200でバンドルRAW画像ファイルの一部を選択し、サーバ300に送信する処理について説明する。
【0070】
カメラ200は、
図4(b)および
図4(c)で説明したRAWバースト撮影により生成されたバンドルRAW画像ファイルから基準フレームとなるRAW画像データを選択する。そして、カメラ200は、基準フレームから所定枚数分のRAW画像データを切り取ったバンドルRAW画像ファイルの一部をサーバ300に送信する。
【0071】
図8はバンドルRAW画像ファイル(RAW画像束)から基準フレーム801、811と所定枚数分のRAW画像データを切り取った結果802、812について、プリ撮影「入」の場合とプリ撮影「切」の場合を対比して示している。プリ撮影「入」の場合、第2シャッタースイッチ信号SW2オン直前(最大0.5秒前)からRAW画像データの記録を開始する。これにより、ねらった瞬間にシャッタレリーズ(第2シャッタースイッチ信号SW2オン)が間に合わなかった場合でも時間をさかのぼって記録できるので、飛び立つ鳥などシャッターレリーズタイミングが予測しにくい瞬間を撮影することが可能となる。よって、プリ撮影「入」の場合、ベストショットは第2シャッタースイッチ信号SW2オンの直前にあることが多いと考えられる。一方、プリ撮影「切」の場合、シャッターレリーズタイミングが予測可能である場合が多く、ベストショットを撮影できたことにより第2シャッタースイッチ信号SW2オフにして撮影を終了すると考えられる。よって、プリ撮影「切」の場合、第2シャッタースイッチ信号SW2オフの直前にベストショットがあることが多いと考えられる。
【0072】
よって、実施形態1では、プリ撮影「入」の場合は、第1シャッタースイッチ信号SW1オン後であって第2シャッタースイッチ信号SW2オンより所定の時間前の時点から第2シャッタースイッチ信号SW2オンまでの間に撮影されたRAW画像が他のRAW画像よりも優先して送信されるように送信時の優先度を高くする。また、プリ撮影「切」の場合は、第2シャッタースイッチ信号SW2オフから所定の時間前の時点から第2シャッタースイッチ信号SW2オフまでの間に撮影されたRAW画像が他のRAW画像よりも優先して送信されるように送信時の優先度を高くする。
【0073】
次に、
図7を参照して、カメラ200の処理を説明する。
【0074】
図7の処理は、カメラ200の制御部201が不揮発性メモリ202に格納されているプログラムを作業用メモリ203に展開して実行し、各構成要素を制御することにより実現される。また、
図7の処理は、ユーザがカメラ200の操作部205を操作してRAWバースト撮影を行った後、もしくは記録媒体208に記録済みのRAW画像データを表示部206に表示したことに応じて開始される。
【0075】
ステップS701では、制御部201は、バンドルRAW画像ファイルの種別を取得し、処理をステップS702に進める。バンドルRAW画像ファイルの種別とは、プリ撮影「入」で撮影したものであるのか、プリ撮影「切」で撮影したものであるのかといった属性である。
【0076】
ステップS702では、制御部201は、バンドルRAW画像ファイルの種別がプリ撮影「入」で撮影したものであるのか否かを判定する。制御部201は、プリ撮影「入」で撮影したものであると判定した場合は処理をステップS703に進め、プリ撮影「切」で撮影したものであると判定した場合は処理をステップS704に進める。
【0077】
ステップS703では、制御部201は、バンドルRAW画像ファイルから第2シャッタースイッチ信号SW2オンの時点で撮影されたRAW画像データを検索する。
図4(d)で説明したように、バンドルRAW画像ファイル420の代表画像422が第2シャッタースイッチ信号SW2オンの時点のRAW画像データであるため、メタ情報421の代表画像情報から代表画像のフレーム番号を検索する。プリ撮影「入」の場合は、ユーザが操作部205を操作して第2シャッタースイッチ信号SW2オンとなった時点の少し前のRAW画像データがベストショットになることが多いと考えられる。このため、第2シャッタースイッチ信号SW2オンの時点のRAW画像データを基準フレーム811として選択する。
【0078】
ステップS704では、制御部201は、バンドルRAW画像ファイルから第2シャッタースイッチ信号SW2オフの時点で撮影されたRAW画像データを検索する。RAWバースト撮影は第2シャッタースイッチ信号SW2オフの時点で終了するので、バンドルRAW画像ファイルの最終フレームが第2シャッタースイッチ信号SW2オフの時点のRAW画像データとなる。プリ撮影「切」の場合は、ユーザが操作部205を操作して第2シャッタースイッチ信号SW2オフとなった時点の少し前のRAW画像データがベストショットになることが多いと考えられる。このため、第2シャッタースイッチ信号SW2オフの時点のRAW画像データを基準フレーム801として選択する。
【0079】
ステップS705では、制御部201は、バンドルRAW画像ファイルからステップS703またはS704で選択された基準フレーム801、811から所定枚数(例えば5枚)分のRAW画像データを切り取り、処理をステップS706に進める。所定枚数分のRAW画像データの切り取りは基準フレーム801、811から撮影時刻が早くなる方向に予め設定された枚数を切り取るものとする。所定枚数はユーザがカメラ200の操作部205を操作して設定してもよいし、制御部201が撮影したバンドルRAW画像データの被写体や撮影時の撮影パラメータなどを解析して得られた画像の特徴に応じた枚数として決定してもよい。また、プリ撮影「入」の場合とプリ撮影「切」の場合で所定枚数を可変としてもよい。制御部201はバンドルRAW画像ファイルから切り取った一部のRAW画像データを新たなバンドルRAW画像ファイル802、812として生成する。
【0080】
なお、プリ撮影「切」の場合、ステップS704では、制御部201は第2シャッタースイッチ信号SW2オンの時点のRAW画像データを基準フレーム801とすることも可能である。プリ撮影「切」の場合はプリ撮影「入」の場合に比べて、ユーザの撮影の仕方によってベストショットの存在するフレーム位置に幅がある可能性がある。このため、第2シャッタースイッチ信号SW2オンの時点である先頭フレームを基準フレーム801にすることも可能である。この場合、ステップS705では、制御部201は基準フレーム(先頭フレーム)から撮影時刻が遅くなる方向に所定枚数分のRAW画像データを切り取るものとする。
【0081】
ステップS706では、制御部201は、ステップS705において生成したバンドルRAW画像ファイル802、812をサーバ300へ通信部207を介して送信し処理を終了する。
【0082】
以上説明したように、実施形態1によれば、カメラ200は、RAWバースト撮影により生成されたバンドルRAW画像ファイルから、プリ撮影「入」/「切」の状態に応じて基準フレームとなるRAW画像データを選択する。そして、基準フレームから所定枚数分のRAW画像データを切り取ったバンドルRAW画像ファイルの一部をサーバ300へ送信する。このように、プリ撮影「入」/「切」の状態に応じて基準フレームを変更することにより、切り取ったRAW画像データ中にベストショットが含まれる可能性が高くなる。これにより、バンドルRAW画像ファイルに含まれる全てのRAW画像データをサーバ300に送信するよりも、通信時のデータ量を削減し、サーバ300でのRAW画像データの処理時間を短縮することができる。
【0083】
[実施形態2]次に、実施形態2について説明する。
【0084】
実施形態1では、バンドルRAW画像ファイルからベストショットがあると考えられるRAW画像データを切り取って、サーバ300へ送信する例を説明した。これに対して、実施形態2では、ベストショットがある可能性が高いRAW画像データから優先して送信する処理を説明する。
【0085】
実施形態1では、撮影シーンや撮影方法によっては切り取ったRAW画像データにベストショットが含まれていない可能性もあるため、実施形態2ではベストショットがある可能性が高いRAW画像データから順番に送信する。
【0086】
図9は、実施形態2におけるカメラの処理を示すフローチャートである。
【0087】
ステップS901からS904は実施形態1のステップS701からS704と同様である。
【0088】
ステップS905では、制御部201は、基準フレーム801、811から送信する順番を決定し、処理をステップS906に進める。送信する順番は、プリ撮影「入」の場合は、基準フレーム811から撮影時刻が早くなる方向に先頭フレームまで送信し、その後、基準フレーム811から撮影時刻が遅くなる方向に最終フレームまで送信するものとする。また、プリ撮影「切」の場合は、基準フレーム801から撮影時刻が早くなる方向に先頭フレームまで送信するものとする。これにより、ベストショットである可能性が高いRAW画像データのフレームから優先的に送信することが可能になる。
【0089】
ステップS906では、制御部201は、ステップS905において決定した順番に従ってRAW画像データをサーバ300へ送信し処理を終了する。
【0090】
以上説明したように、実施形態2によれば、カメラ200は、バンドルRAW画像ファイルからプリ撮影「入」/「切」の状態に応じて基準フレームとなるRAW画像データを選択する。そして、基準フレームから送信する順番を決定し、決定された順番に従ってバンドルRAW画像ファイルに含まれる全てのRAW画像データを送信する。これにより、ベストショットとなる可能性が高いRAW画像データから優先的にサーバ300に送信することが可能となり、サーバ300でのRAW画像データの処理を効率よく行うことができる。
【0091】
[実施形態3]次に、実施形態3について説明する。
【0092】
実施形態2では、ベストショットである可能性が高いRAW画像データから優先的に送信する例を説明した。これに対して、実施形態3では、ベストショットである可能性が高いRAW画像データから優先的に送信中に、サーバ300からベストショットの判定完了通知を受信した場合はRAW画像データの送信を停止する処理を説明する。
【0093】
図10は、実施形態3におけるカメラの処理を示すフローチャートである。
【0094】
ステップS1001からS1005は実施形態2のステップS901からS905と同様である。
【0095】
ステップS1006では、制御部201は、サーバ300から送信停止指示を受信したか否かを判定し、送信停止指示を受信した場合は送信を停止し処理を終了し、送信停止処理を受信していない場合は処理をステップS1007に進める。送信停止指示は
図6(a)のサーバ300のベストショット抽出状態602の通知に対応し、ベストショット抽出状態602がベストショット抽出完了607に遷移した場合に送信停止指示があったと判定する。
【0096】
ステップS1007では、制御部201は、S1005で決定した順番に従ってRAW画像データを送信し、処理をステップS1006に戻す。
【0097】
以上説明したように、実施形態3によれば、カメラ200は、バンドルRAW画像ファイルからプリ撮影「入」/「切」の状態に応じて基準フレームとなるRAW画像データを選択する。そして、基準フレームから送信する順番を決定し、決定された順番に従ってバンドルRAW画像ファイルに含まれる全てのRAW画像データを送信する。また、RAW画像データの送信中にサーバ300から送信停止指示を受信した場合には、その後のRAW画像データの送信を停止する。これにより、通信時のデータ量を削減し、サーバ300でのRAW画像データの処理時間を短縮することができる。
【0098】
[他の実施形態]
本発明は、各実施形態の1以上の機能を実現するプログラムを、ネットワークや記憶媒体を介してシステムや装置に供給し、そのシステム又は装置のコンピュータの1つ以上のプロセッサがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0099】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0100】
100…通信ネットワーク、200…カメラ、201…制御部、204…撮像部、207…通信部、300…サーバ、301…制御部、304…画像処理部、305…通信部、307…画像判定部