以下、図面を参照して、本発明の実施例を詳細に説明する。なお、以下に説明する実施例はあくまでも一例であって、本発明は、以下に示す実施例の形態に限定されない。例えば、撮像装置としてデジタル一眼カメラを例示しているが、スマートフォンまたは携帯電話に内蔵されるデジタルカメラも、本発明に係る撮像装置の一例たりうる。
図1は、本発明に係る撮像装置及び遠隔制御装置からなる撮像システムの一実施例の構成図を示し、図2は、これらの概略構成ブロック図を示す。本実施例では、PC100は、撮像装置150における付加情報(ここではメタデータ)の記録の要否を、メタデータの登録/削除の操作に連動して制御できる。
遠隔制御装置であるPC(パーソナルコンピュータ)100は、接続ケーブル140を介して撮像装置150に接続し、撮像装置150を制御できる。接続ケーブル140は、例えば、IEEE1394規格に準拠した接続ケーブル、または、USB(Universal Serial Bus)接続ケーブルである。ここでは、接続ケーブル140は、双方向でデータを伝送するデータライン、ストローブ信号を転送するストローブ信号ライン及び電源ライン等を有する。接続ケーブル140でPC100と撮像装置150を接続すると、撮像装置150からPC100へのデータ転送と、PC100による撮像装置150の制御が可能になる。もちろん、PC100と撮像装置150には、IEEE1394またはUSBに対応する通信プロトコルをサポートする機能が実装されている。ストローブ信号ラインは、データ送信側がデータ受信側に、データの送信を通知する信号であるストローブ信号を伝送するラインである。また、データ転送は、ストローブ信号の立ち上がりと立ち下がりの両方で行う。データ受信側は、データラインとストローブ信号ラインによって、データ送信側から送信されたデータを受信する。電源ラインは、PC100から撮像装置150に必要に応じて電力を供給するラインである。
図2を参照して、PC100の構成と基本動作を説明する。PC100は、図2に示すように、CPU102、メモリ104、通信部106、表示部108及び操作部110を有する。
CPU(Central Processing Unit)101は、メモリ104に記憶されているコンピュータプログラムに従って、PC100の動作を制御する。また、CPU102は不図示のタイマを有し、各部が実行する処理の経過時間等を計測する。
メモリ104は、CPU102のメインメモリとして使用され、通信部106から受信した撮像装置150からのデータを格納する。メモリ104には、PC100の状態をユーザに通知するための複数のアイコン、及びPC100の動作を制御するコンピュータプログラム等が記憶されている。メモリ104には、表示部108に表示するメニュー画面も記憶されている。メモリ104のコンピュータプログラムは、CPU102を、撮像装置150との間で制御コマンド、確認信号、状態信号及びデータを送受信するコマンド通信手段、及び撮影画像に付加すべきメタデータを作成するメタデータ作成手段として機能させる。
通信部106は、接続ケーブル140が接続する接続端子を有する。通信部106は、接続ケーブル140を介して撮像装置150から送信された画像データ、音声データ及び補助データを受信し、CPU102に出力する。CPU102は、撮像装置150から送信された画像データをメモリ104に格納するとともに表示部108に表示し、撮像装置150から送信された音声データの音声を不図示のスピーカ部から出力する。
表示部108は、液晶ディスプレイ等の表示器により構成される。表示部108は、CPU102の制御下で、メモリ104に格納される画像データ及び通信部106が受信した画像データの画像を表示できる。表示部108はまた、CPU102の制御下で、メモリ104に記憶されているグラフィカルユーザインターフェースであるメニュー画面を表示する。メニュー画面は、PC100を制御するためのPC制御画面、PC100の設定を変更するためのPC設定画面、及び、撮像装置150を遠隔制御するためのカメラ制御画面を含む。これらのメニュー画面が表示部108に表示されているとき、CPU102は、マウスカーソル矢印の形状のアイコンをメニュー画面に重畳して表示する。また、表示部108は、CPU102から供給されたカメラ制御画面の所定の領域に、通信部106から供給された画像データの画像を表示する。
操作部110は、PC100を操作するためのユーザインターフェースである。操作部110は、PC100を操作するための操作手段として、マウス110a、タブレットまたはトラックボール等のポインティングデバイス、及びキーボード110bを有する。このポインティングデバイスを使って、ユーザは、メニュー画面に重畳されたマウスカーソルをメニュー画面上で操作できる。例えば、CPU152は、メニュー画面上においてポインティングデバイスの位置情報に応じてマウスカーソルがメニュー画面上を移動し、ポインティングデバイスが押下されると、マウスカーソルが存在する位置に応じて処理を実行する。
図3は、カメラ制御画面の一例を示す。図3に示すカメラ制御画面300は、PC100のOS(オペレーティングシステム)で標準的に採用されているウィンドウシステム上に構成される。
カメラ制御画面300は、画像を表示するビュー領域302、制御システムの状態を文字情報で表示するステータス領域304、シャッタボタン306、撮像装置150のパラメータを表示するパラメータ領域308を有する。ビュー領域302は、撮像装置150から通信部106で連続的に受信したライブビュー映像または撮影動作により受信した静止画像を表示する領域である。ステータス領域304は、制御状態を示す領域である。制御状態としては、図3に示す「撮影可能」の他に、「撮影準備中」及び「撮影処理中」がある。
シャッタボタン306は、撮像装置150のシャッタボタンの半押し状態と全押し状態の2つの状態に対応する撮影処理の指示を受け付けることができる。マウスカーソル312がシャッタボタン306上に移動すると、PC100は撮像装置150に半押し状態に対応する処理(撮影準備処理)の開始を指示する。マウスカーソル312がシャッタボタン306上にある状態でユーザがクリック操作をすると、PC100は、撮像装置150に全押し状態に対応する処理(一連の撮影処理)の動作開始を指示する。
パラメータ領域308には、撮影モード、シャッタスピード及び絞り値等が表示されている。これらの値は、撮像装置150から受信する補助データに含まれている。パラメータ領域308は、これ以外の補助データを表示するものであっても良い。操作によりパラメータ領域308上の値が変更された場合、CPU102は補助データ設定コマンドを生成し、通信部106から撮像装置150に送信する。これにより、撮像装置150のパラメータが変更される。
メタデータ設定ボタン310は、撮影画像と共に記録されるメタデータ登録画面に遷移するためのボタンである。メタデータ(属性情報)には、IPTC(International Press Telecommunications Council)情報などがある。IPTC情報には、写真の内容を表す情報が入っており、写真データを企業間でやり取りするときに理解できるメタデータとして定義されている。IPTC情報には、IPTC連絡先、IPTCイメージ、IPTCコンテンツ及びIPTCステータスがある。IPTC連絡先は、作成者、作成者の役職、住所、市区町村名、都道府県名、郵便番号、国名、電話番号、電子メール及びWebサイトの各情報からなる。IPTCイメージは、作成日、ジャンル、IPTCシーン、撮影場所、市区町村、都道府県名、国名及びISO国コードの各情報からなる。IPTCコンテンツは、ヘッドライン、説明、キーワード、IPTC件名コード及び説明記入者の各情報からなる。IPTCステータスは、タイトル、ジョブID、インストラクション、提供元、所有者または著作権保有者、著作権情報、及び仕様件に関する規約等の各情報からなる。
図4は、カメラ制御画面300のメタデータ登録画面の一例を示す。パラメータ領域400には、ヘッドライン、説明、キーワード、IPTC件名コード及び説明記入者等が表示されている。これらの値は、撮像装置150に後からメタデータとして登録する補助データとなる。ただし、撮像装置150とPC100を接続すると、PC100は撮像装置150から補助データを受信する。この段階でカメラ制御画面を開くと、CPU102は、撮像装置150から直前に受信した補助データの対応する値を、パラメータ領域400に表示する。なお、パラメータ領域400は、図4に例示する項目以外の補助データを表示するものであっても良い。
パラメータ表示タブ402は、パラメータ領域400に表示される情報を各々のカテゴリ毎に切り替えるための操作部材である。マウスカーソル312がパラメータ表示タブ402のいずれかにある状態でクリックすることで、パラメータ領域400に表示される情報を切り替えることが出来る。
メタデータ登録ボタン404は、パラメータ領域400で入力されたメタデータの撮像装置150への登録を指示するボタンである。メタデータ登録ボタン404の操作に応じて、CPU102は、補助データ設定コマンドを生成し、通信部106から撮像装置150に送信する。これにより、撮像装置150は、補助データの各パラメータ値を変更する。
メタデータ削除ボタン406は、撮像装置150に登録されているメタデータの削除を指示するボタンである。メタデータ削除ボタン406の操作に応じて、CPU102は、補助データ設定コマンドを生成し、通信部106から撮像装置150に送信する。これにより、撮像装置150は、補助データの各パラメータ値を削除する。
撮影画面ボタン408は、撮影画面への遷移を指示するボタンである。
CPU102は、撮像装置150から送信され通信部106で受信した各データを、ビュー領域302、ステータス領域304及びパラメータ領域308の対応する領域に表示するように制御する。
撮像装置150の構成と基本動作を説明する。撮像装置150は、図2に示すように、CPU152、メモリ154、記録部166、通信部156、画像処理部164、表示部158、操作部160及び撮像部162を有する。
撮像装置150は、撮影モード及び再生モード等の動作モードを有する。撮影モードでは、撮像装置150は、被写体の撮影が可能になり、撮影画像(動画または静止画)を記録媒体に記録できる。再生モードでは、ユーザによって選択された画像(動画または静止画)を記録媒体から再生できる。
CPU152は、メモリ154に記憶されているコンピュータプログラムに従って、撮像装置150の動作を制御する。CPU152のワークエリアは、メモリ154に限られるものではなく、ハードディスク装置等の外部記憶装置であってもよい。
メモリ154は、CPU152のワークエリアとして機能するメモリであり、CPU152で使用される様々な値、データ及び情報を記憶するメモリでもある。CPU152は、接続ケーブル140を介してPC100に関する情報をPC100から取得し、メモリ154に記憶する。メモリ154には他に、撮像装置150を制御するコンピュータプログラム、及び表示部158に表示される所定の画像データやアイコン等が格納される。メモリ154のコンピュータプログラムにより、CPU152は、PC100からのカメラコマンドを受け付けるカメラコマンド検知手段、並びに、撮影画像及びメタデータを記録媒体に記録する記録手段として機能する。また、CPU152は、PC100から送られたメタデータなどをメモリ154に格納する書き込み手段、及びメタデータを撮影画像に付与して記録するかどうかを設定するメタデータ記録設定手段として機能する。さらには、CPU152は、メタデータ記録の内容が妥当かどうかを判定する判定手段、及びPC100に確認コマンドを送る送信手段として機能する。
撮影モードの基本的な動作を説明する。撮像部162は、被写体を撮影し、当該被写体の光学像から画像(画像データ)を生成する。撮像部162によって生成された画像は、通信部156、画像処理部164及び表示部158に供給される。不図示のマイクロフォン部が生成した音声データも、記録部166及び通信部156に供給される。また、記録部166は、画像処理部164でさまざまな画像処理が行なわれた画像を、画像ファイル(静止画ファイルまたは動画ファイル)として記録媒体に記録する。また、不図示のマイクロフォン部が生成した音声データも記録媒体に記録される。例えば、動画ファイルの音声として記録され、ボイスメモとして独立した音声ファイル形式で記録される。
再生モードの基本的な動作を説明する。記録部166は、ユーザによって選択された画像データ(画像ファイル)及び音声データを記録媒体から再生する。記録媒体から再生された画像データは、表示部158及び通信部156に供給され、記録媒体から再生された音声データは、通信部156及び不図示のスピーカ部に供給される。
記録部166で用いられる記録媒体は、撮像装置150に内蔵されたものであっても、撮像装置150から取り外し可能なものであってもよい。取り外し可能な記録媒体の場合、記録媒体を格納するスロットを閉めるメディア蓋と、メディア蓋の開閉を検知する開閉検知手段が用意される。
通信部156は、接続ケーブル140が接続する接続端子を有する。撮影モードでは、通信部156は、画像処理部164で生成した画像と、不図示のマイクロフォン部が生成した音声データと、CPU102で生成された補助データとを、接続ケーブル140を介してPC100に送信する。再生モードでは、通信部156は、記録部166が記録媒体から再生した画像データ及び音声データと、CPU102で生成された補助データとを、接続ケーブル140を介してPC100に送信する。また、通信部156は、PC100から接続ケーブル140を介して送信されてくるコマンドを受信し、受信したコマンドをCPU102に転送する。
表示部158は、液晶ディスプレイ等により構成される。撮影モードでは、表示部158は、撮像部162が生成した画像データの画像を表示する。再生モードでは、表示部158は、記録部166が記録媒体から再生した画像データの画像を表示する。
画像処理部164は、撮像部162から出力された画像データ及び記録部166から出力された再生画像データに画素補間処理及び色変換処理等の画像処理を行う。また、画像処理部164は、撮像部162から出力される画像データに所定の演算処理を行い、その結果をCPU152に供給する。CPU152は、画像処理部164の演算結果に基づき、TTL(スルー・ザ・レンズ)方式で撮像部162の露出及び小雨点距離を自動制御する。
操作部160は、撮像装置150を操作するためのユーザインターフェースであり、複数の操作ボタンを有する。ユーザからの指示は、操作部160を介してCPU152に入力される。操作部160の各操作ボタンは例えば、スイッチまたはタッチパネル等により構成される。操作部160は、具体的には、シャッタボタン、電源ボタン、スタート/ストップボタン、モード変更ボタン、メニューボタン、十字ボタン及びSETボタン等を有する。シャッタボタンは、半押し状態と全押し状態の2つの状態を持つ。CPU152は、シャッタボタンの半押し状態で撮影準備処理を開始し、全押し状態で撮影処理を開始する。
電源ボタンは、撮像装置150を電源オン状態又は電源オフ状態に変更することをCPU152に指示するボタンである。電源オン状態は、不図示の電源バッテリまたはAC電源等から撮像装置150の全部に必要な電力を供給することができる状態である。電源オフ状態は、不図示の電源バッテリまたはAC電源等から撮像装置150の一部又は全部への電力の供給を停止した状態である。記録媒体のメディア蓋の開閉検知手段を有する場合、CPU152、その開閉検知に応じて、撮像装置150を電源オン状態又は電源オフ状態に変更する。
スタート/ストップボタンは、撮像部162によって生成された画像等の記録媒体への記録の開始と一時停止をCPU152に指示するボタンである。モード変更ボタンは、撮像装置150の適用すべき動作モードをCPU152に指示するボタンである。動作モードには、撮影モード、再生モード、連続撮影モード、バルブ撮影モード及びミラーアップ撮影モード等がある。
メニューボタンは、撮像装置150のメニュー画面の表示及び非表示をCPU152に指示するボタンである。メニュー画面は、撮像装置150を制御するためのメニュー画面と、撮像装置150の設定を変更するためのメニュー画面を含む。これらのメニュー画面は、メモリ154に記憶されている。メニュー項目として、メタデータを画像に記録する設定となるメタデータ記録設定、日付を設定する日付設定、及び接続先となるPC100を設定する接続先設定などがある。
操作部160は、再生ボタン、停止ボタン、一時停止ボタン、早送りボタン及び巻き戻しボタン等を有する。これらのボタンはそれぞれ、記録媒体に記録された画像の再生(play)、停止(stop)、一時停止(pause)、早送り(fast forward)及び巻き戻し(rewind)の実行をCPU152に指示するボタンである。
撮像部162は、測距制御部、露光制御部、A/D変換部、撮像素子、圧縮伸長回路及び光学系を備えている。光学系は撮影レンズ群であり、撮影の倍率を挙げるバリエータレンズ、焦点を調整するフォーカシングレンズ及び撮影光量を調節する絞り等を含む。撮像素子は、光学系を透過した光学像を電気信号に変換する素子であり、例えば、CCDイメージセンサまたはCMOSイメージセンサからなる。A/D変換部は、撮像素子から出力されるアナログ画像信号をデジタルデータに変換し、画像処理部164に出力する。測距制御部は、画像処理部164の演算結果に基づいて、光学系のフォーカシング用レンズを制御する。露光制御部は、絞り値とシャッタ速度により露出を決定する。先に説明したように、CPU152は、画像処理部164の演算結果に基づき、露光制御部及び測距制御部を制御する。すなわち、露出と焦点距離が、TTL方式で制御される。
圧縮伸長回路は、メモリ154を使って、適応離散コサイン変換(ADCT)等により画像データを圧縮伸長する回路である。圧縮伸長回路は、メモリ154の画像データを圧縮し、圧縮画像データをメモリ154に書き戻する。圧縮伸長回路はまた、メモリ154の圧縮画像データを伸長し、復元された画像データをメモリ154に書き戻す。
撮影準備処理の動作を説明する。撮影準備処理には主として、自動合焦(AF:Auto Focus)処理、自動露出(AE:Automatic Exposure)処理、及び、オートホワイトバランス(AWB:Auto White Balance)処理がある。フラッシュがある場合には、フラッシュプリ発光(EF:Electronic Flash)処理が含まれる。レンズまたは撮像装置150に防振機能が装備されている場合には、防振処理も含まれる。
AF処理は、撮像装置150の撮像レンズの合焦位置を検出し、光学系を合焦位置に制御する、撮像部162が行う処理である。この処理は、撮像素子によって生成された画像信号から出力される高周波成分が最も多くなる光学系のフォーカスレンズ群の位置を求めることにより行われる。CPU152は、測距制御部によりフォーカスレンズ群の位置制御を行いながら、フォーカスレンズ群を無限遠に相当する位置から各撮影モードにおいて設定される至近距離に相当する位置まで移動させる。この間に、撮像部162は合焦位置を検出する。AF処理の結果、合焦位置を検出したならば、CPU102は、測定データ及び/或いは設定パラメータをメモリ154に記憶する。これにより、AF処理が終了する。
AE処理は、光学系を通過して撮像素子に入射する光量を制御する、撮像部162が行う処理である。画像処理部164での演算結果を用いて自動露出が適正と判断されるまで、露光制御部を用いて自動露出処理を行う。撮像素子の入射光量が適正と判断されると、CPU102は、測定データ及び/或いは設定パラメータをメモリ154に記憶する。撮像素子から出力されるアナログ画像信号はA/D変換部によりデジタルデータに変換されて露光制御部に入力される。露光制御部は、1画面を複数のエリア、例えば16×16のエリアに分割し、各分割エリアでRGB信号を積算し、その積算値をCPU152に提供する。CPU152は、露光制御部から得た各エリアの積算値に基づいて被写体の明るさ、則ち被写体輝度を検出し、撮影に適した露出値を算出する。CPU152は、求めた露出値に応じて絞り値とシャッタスピードを決定し、その絞り値とシャッタスピードに撮像素子及び光学系を制御する。
EF処理は、CPU152が自動露出処理で決定した絞り値及びシャッタスピードによりフラッシュが必要と判断した場合に行う処理である。CPU152は、フラッシュが必要と判断されると、フラッシュ・フラグをセットし、フラッシュを充電する。また、AF補助光の投光、フラッシュ調光またはこれらの両方を併用してもよい。
AWB処理は、記録された画像から外光の色温度及び外光とフラッシュ光との光量の割合を求めることによって、フラッシュ撮影画像の適切な色バランスを得る処理である。露光制御部は、分割エリアごとにRGB信号の色別の平均積算値を算出し、その算出結果をCPU152に提供する。CPU152は、Rの積算値、Bの積算値及びGの積算値を得て、分割エリア毎にR/G比及びB/G比を求め、これらR/G比及びB/G比のR/G軸及びB/G軸の色空間における分布等に基づいて光源種を判別する。そして、CPU152は、判別された光源種に応じてR信号、G信号及びB信号に対するホワイトバランスの補正値を制御し、各色成分の強度を補正する。
撮影準備処理として、上述した処理以外に、撮影処理の前に実行されるのが好ましい処理を撮影準備処理として実行しても良い。また、AWB処理は、撮影準備処理と撮影処理の間に行っても良い。
撮影処理では、撮像素子から出力されるアナロ画像信号がA/D変換部でデジタルデータに変換された後、画像処理部164で圧縮され、記録部166により記録媒体に記録される。
図5は、PC100の動作フローチャートを示す。図5を参照して、PC100が撮像装置150を遠隔制御する動作を説明する。図5に示す処理に対応するコンピュータプログラムがメモリ104に記憶されている。CPU102は、メモリ104に記憶されるコンピュータプログラムを実行することによって、図5に示す処理を実現する。図5に示す処理は、PC100と撮像装置150とが接続ケーブル140を介して接続され、PC100及び撮像装置150が電源オン状態であるときに実行される。
S501で、CPU102は、図3及び図4に示すカメラ制御画面300において、撮像装置150から確認コマンドを受信したか否かを判定する。確認コマンドを受信した場合、CPU102は、S509に進む。確認コマンドを受信しない場合、CPU102は、S502,S504,S506において、マウスカーソル312によるメタデータ登録ボタン404、メタデータ削除ボタン406またはシャッタボタン306のクリックの有無を判定する。
S502でメタデータ登録ボタン404がクリックされた場合、S503で、CPU102は、メタデータ登録コマンドを生成する。S504でメタデータ削除ボタン406がクリックされた場合、S505で、CPU102は、メタデータ削除コマンドを生成する。S506でシャッタボタン306がクリックされた場合、S507で、CPU102は、撮影コマンドを生成する。S506でシャッタボタン306がクリックされない場合、CPU102は、S501に戻る。
S508で、CPU102は、S503,S505,S506で生成したコマンドを通信部106を介して撮像装置150に送信する。
S501で撮像装置150から確認コマンドを受信すると、S509で、CPU102は、S501で受信した確認コマンドがメタデータ登録の確認コマンドかどうかを判定する。メタデータ登録の確認コマンドの場合、CPU102は、S510に進み、そうでない場合、S511に進む。S510で、CPU102は、メタデータ記録(メタデータを記録する)を指示するメニュー設定コマンドを生成し、S515に進む。
S511で、CPU102は、S501で受信した確認コマンドがメタデータ削除の確認コマンドかどうかを判定する。メタデータ削除の確認コマンドの場合、CPU102は、S512に進み、そうでない場合、S513に進む。S512で、CPU102は、メタデータ非記録(メタデータを記録しない)を指示するメニュー設定コマンドを生成し、S515に進む。
S513で、CPU102は、S501で受信した確認コマンドが撮影状態を示す撮影ステータス信号かどうかを判定する。撮影ステータス信号の場合、CPU102は、S514に進み、そうでない場合、S516に進む。S514で、CPU102は、撮像装置150からの画像データの画像を表示部108に表示する。
S515で、CPU102は、S510,S512で生成したコマンドを通信部106を介して撮像装置150に送信し、S516に進む。
S516では、CPU102は、通信の切断や電源オフなどの終了イベントが発生したか否かを判定する。終了イベントが発生した場合は図5に示すフローを終了し、そうでない場合はS501に戻って処理を繰り返す。
このように、PC100は、撮像装置150から送られる確認コマンドに応じた内容のカメラコマンドを生成して撮像装置150に送信し、撮像装置150からの画像を表示できる。
図6A及び図6Bは、撮像装置150の動作フローチャートを示す。図6を参照して、PC100による制御の下での撮像装置150の動作を説明する。図6A及び図6Bに示す処理に対応するコンピュータプログラムがメモリ154に記憶されている。CPU152は、メモリ154に記憶されるコンピュータプログラムを実行することによって、図6A及び図6Bに示す処理を実現する。図6A及び図6Bに示す処理は、PC100と撮像装置150とが接続ケーブル140を介して接続され、PC100及び撮像装置150が電源オン状態であるときに実行される。
S601で、CPU152は、PC100からカメラコマンドを受信したか否かを判定する。カメラコマンドを受信した場合、CPU152は、S602に進む。カメラコマンドを受信しない場合、CPU152は、S613(図6B)に進む。
S602で、CPU152は、S601で受信したカメラコマンドがメタデータ登録コマンドかどうかを判定する。メタデータ登録コマンドの場合、CPU152は、S603に進み、そうでない場合、S604に進む。S603で、CPU152は、メタデータ登録コマンドに含まれるメタデータをメモリ154に格納し、S612に進む。
S604で、CPU152は、S601で受信したカメラコマンドがメタデータ削除コマンドかどうかを判定する。メタデータ削除コマンドの場合、CPU152は、S605に進み、そうでない場合、S606に進む。S605で、CPU152は、メモリ154に格納されるメタデータを削除し、S612に進む。
S606で、CPU152は、S601で受信したカメラコマンドがメタデータ記録のメニュー設定コマンドかどうかを判定する。メタデータ記録のメニュー設定コマンドの場合、CPU152は、S607に進み、そうでない場合、S608に進む。S607で、CPU152は、メタデータ記録設定を「記録」に変更し、S612に進む。
S608で、CPU152は、S601で受信したカメラコマンドがメタデータ非記録のメニュー設定コマンドかどうかを判定する。メタデータ非記録のメニュー設定コマンドの場合、CPU152は、S609に進み、そうでない場合、S610に進む。S609で、CPU152は、メタデータ記録設定を「非記録」に変更し、S612に進む。
S610で、CPU152は、S601で受信したカメラコマンドが撮影コマンドかどうかを判定する。撮影コマンドの場合、CPU152は、S611に進み、そうでない場合、S601に戻る。S611で、CPU152は、撮影処理を実行し、S612に進む。撮影処理の詳細は図7を用いて後述する。
S612で、CPU152は、S601で受信したカメラコマンドに対する処理結果の応答として、通信部156を介して確認コマンドをPC100に返信する。CPU152は、撮影処理(S611)の撮影画像を、確認コマンドと共にPC100に送信する。
S630では、CPU152は、通信の切断や電源オフなどの終了イベントが発生したか否かを判定する。終了イベントが発生した場合は図6A及び図6Bに示す処理を終了し、そうでない場合はS601に戻って処理を繰り返す。
S613で、CPU152は、シャッタボタンが半押しされたかどうかを判定する。半押しされたとき、CPU152は、S614に進み、そうでない場合、S617に進む。S614で、CPU152は、撮影準備処理により測距と測距を行う。S615で、CPU152は、シャッタボタンが全押しされたかどうかを判定する。全押しされた場合、CPU152は、S616に進み、全押しでない場合、S613に戻る。S616で、CPU152は、撮影処理により撮影を行い、S613に戻る。
S617で、CPU152は、操作部160によるメニュー設定への操作を判定する。その操作がメタデータ記録設定を「非記録」に変更するものである場合、
CPU152は、S618に進み、メタデータ記録設定を「記録」に変更するものである場合、S619に進む。S618では、CPU152は、メタデータ記録設定を「非記録」に変更して、S601(図6A)に戻る。
S619で、CPU152は、メモリ154にメタデータが格納されているかどうかを確認する。メモリ154にメタデータがある場合、CPU152は、S620に進み、メタデータが無い場合、S621に進む。S620で、CPU152は、メタデータ記録設定を「記録」に変更する。これにより、メモリ154に格納されるメタデータが撮影画像に関連続けて記録媒体に記録される。S620の後、CPU152は、S601(図6A)に戻る。
S621で、CPU152は、撮影画像に関連付けて記録すべきメタデータがメモリ154に格納されていないことを示す警告メッセージを表示部158に表示し、S622に進む。S621の警告により、ユーザはメタデータの未登録を認識でき、ユーザにPC100からのメタデータの登録を促す。S622で、CPU152は、メニュー設定のメタデータ記録設定の変更操作をキャンセルしてメタデータ記録設定を「非記録」のままとし、S601(図6A)に戻る。
図7は、撮影(S611,S616)の詳細なフローチャートを示す。図7に示す処理に対応するコンピュータプログラムがメモリ154に記憶されている。CPU152は、メモリ154に記憶されるコンピュータプログラムを実行することによって、図7に示す処理を実現する。
S701で、CPU152は、撮像部162に撮影処理を実行するように制御する。すなわち、露光を行い、撮像素子から出力されるアナロ画像信号をA/D変換部でデジタルデータに変換した後、画像処理部164で圧縮し、記録部166により記録媒体に記録するように制御する。
S702で、CPU152は、メモリ154に記憶されるメニュー設定の一項目であるメタデータ記録設定が「記録」か「非記録」かを判定する。メタデータ記録設定が「記録」の場合、CPU152は、S703に進み、「非記録」の場合、S705に進む。
S703で、CPU152は、メモリ154に記憶されるメタデータを使って、画像ファイルに関連付けて記録すべきメタデータ(記録用メタデータ)を生成する。
S704で、CPU152は、メモリ154に記憶されているメタデータを削除せずに保持する。同様に、CPU152は、メモリ154に記憶されるメタデータ記録設定も保持する。これにより、メモリ154に記憶されるメタデータを以降の複数回の撮影画像に関連付けて記録することができる。
S705で、CPU152は、S701で得られた撮影画像を記録部166に指示して画像ファイルとして記録媒体に記録させる。メタデータ記録設定が「記録」である場合、記録部166は、S703で生成した記録用メタデータを属性情報として撮影画像に関連付けて記録媒体に記録する。
このように、PC100からメタデータ登録/削除のカメラコマンドを撮像装置150に送信すると、撮像装置150はメタデータの登録/削除を行い、メタデータ登録/削除の結果を確認コマンドとしてPC100に送信する。PC100が、受信した確認コマンドの内容を表示又は出力することにより、PC100のユーザは撮像装置150におけるメタデータ登録/削除の処理結果を確認できる。すなわち、遠隔制御装置であるPC100から撮像装置のメタデータ記録設定を変更することができる。
図6Aに示す処理では、メタデータの登録/削除の処理(S603,S605)とは別に、メタデータ記録設定の変更処理(S607,S609)を設けているが、メタデータの登録/削除の処理にメタデータ記録設定の変更処理を連動させても良い。則ち、メタデータ登録のカメラコマンドに対して、メタデータをメモリ154に格納するとともに、メタデータ記録設定を「記録」に変更する。また、メタデータ削除のカメラコマンドに対して、メタデータをメモリ154から削除するともに、メタデータ記録設定を「非記録」に変更する。このとき、図6Bに示すフローでは、S510,S512の処理を省略できる。
撮像装置150においてメタデータのファイル記録が妥当かどうかを判定し、一定の場合に警告を表示しメタデータの再登録を促す変更動作を説明する。図8は、撮像装置150の変更部分であって、図6Aに対応する部分の動作フローチャートを示す。図8に示す処理に対応するコンピュータプログラムがメモリ154に記憶されている。CPU152は、メモリ154に記憶されるコンピュータプログラムを実行することによって、図8に示す処理を実現する。
S801〜S810,S812、S813の処理は、それぞれ、S601〜S610,S612、S630の処理に対応するので、詳細な説明を省略する。
S803に続くS821で、CPU152は、メモリ154にメタデータ記録管理情報が格納されているかどうかを判定する。メタデータ記録管理情報がメモリ154にある場合、CPU152は、S612に進み、無い場合、S822に進む。S822で、CPU152は、メモリ154にメタデータ記録管理情報を格納する。
メタデータ記録管理情報は、メタデータとして記録すべきデータの種別またはリストである。例えば、メディア交換フラグ、電源OFFフラグ、メタデータ作成日時、最終撮影日時、撮影総回数、撮影総時間、日付設定変更フラグ、接続先、接続先変更回数及びGPS測位位置などがある。
メディア交換フラグは、メディア蓋の開閉を管理する情報である。CPU152は、メディア蓋の開閉を検知すると、メディア交換フラグを立てる。
電源OFFフラグは、電源ボタンが押されて電源OFFを行ったかどうかを管理する情報である。CPU152は、ユーザによる電源ボタンの押下操作を検知すると、電源OFFフラグを立てる。
メタデータ作成日時は、メタデータ記録管理情報を新規作成したときの作成日時を示す。
最終撮影日時は、撮影処理を行った最終日時を表す情報である。CPU152は、撮像部162での撮影処理を指示すると、最終撮影日時を保持している現在時刻で更新する。
撮影総回数は、メタデータ記録管理情報を新規作成してから撮影した回数を表す情報である。CPU152は、撮像部162での撮影処理を指示すると、撮影総回数を1だけカウントアップする。
撮影総時間は、メタデータ記録管理情報を新規作成してから撮影した時間を表す情報である。撮影間隔が一定時間以内である場合は撮影行為を継続していると見なし、継続した時間を撮影時間として扱う。CPU152は、撮像部162での各撮影処理の時間間隔を計測し、一定時間を超えた場合にその撮影時間をそれまでの継続時間に追加する。
日付設定変更フラグは、メニューボタン操作により日付設定が行われたか否かを管理する情報である。CPU152は、日付設定の実行を検知すると、日付設定変更フラグを立てる。
接続先は、接続先設定における接続先表す情報である。接続先は、PC100のホスト名、IPアドレスまたはネットワークアドレスのようなものであっても良い。CPU152は、接続先設定に従いメモリ154の接続先の情報を更新する。
接続先変更回数は、接続先設定を変更した回数を表す情報である。CPU152は、メモリ154に記録されている接続先変更回数が変更されると、接続先変更回数を1だけカウントアップする。
GPS測位位置は、GPS機器から取得される測位位置を表す情報である。CPU152は、通信部156を通してGPS機器の測位位置を取得可能な場合、通信部156を介してGPS機器の測位情報を定期的に受け取り、GPS測位位置を更新する。
S805に続くS823では、CPU152は、メモリ154に記憶されるメタデータ記録管理情報をメモリ154から削除する。
このように、図8に示すフローでは、CPU152は、PC100からのメタデータ登録指示に従い、メモリ154にPC100からのメタデータを格納し、メタデータ記録管理情報を登録する。また、CPU152は、PC100からのメタデータ削除指示に従い、メモリ154からメタデータとメタデータ記録管理情報を削除する。
撮影処理(S811)は、S611の撮影処理とは若干異なるが、その詳細は、図9を参照して説明する。
S811に続くS824で、CPU152は、メモリ154のメタデータ記録管理情報を参照してメタデータ記録が有効かどうかを判定する。メタデータ記録が有効な場合、CPU152はS812に進み、無効の場合、S825に進む。S825で、CPU152は、表示部158にメモリ154に格納されているメタデータが無効である旨を示す警告を表示する。この警告表示により、ユーザは、メタデータが無効であることを認識できる。すなわち、ユーザにPC100からのメタデータの再登録を促すことが可能になる。
図9は、撮影処理(S811)の詳細なフローチャートを示す。図9に示す処理に対応するコンピュータプログラムがメモリ154に記憶されている。CPU152は、メモリ154に記憶されるコンピュータプログラムを実行することによって、図9に示す処理を実現する。
S901で、CPU152は、S701と同様に、撮像部162に撮影処理を実行するように制御する。すなわち、露光を行い、撮像素子から出力されるアナロ画像信号をA/D変換部でデジタルデータに変換した後、画像処理部164で圧縮し、記録部166により記録媒体に記録するように制御する。S902で、CPU152は、S702と同様に、メモリ154に記憶されるメニュー設定の一項目であるメタデータ記録設定が「記録」か「非記録」かを判定する。メタデータ記録設定が「記録」の場合、CPU152は、S903に進み、「非記録」の場合、S907に進む。
S903で、CPU152は、メタデータ記録管理情報が有効か無効かを判定する。この判定処理は、メタデータ記録管理情報の各項目について撮像装置150が一定の変化を示すかどうかを判定する処理であり、その詳細は、図10を参照して、後述する。S903の判定結果として、メタデータ記録管理情報が有効な場合、CPU152は、S905に進み、無効な場合、S907に進む。
S905で、CPU152は、S703と同様に、メモリ154に記憶されるメタデータを使って、画像ファイルに関連付けて記録すべきメタデータ(記録用メタデータ)を生成する。
S906で、CPU152は、S704と同様に、メモリ154に記憶されているメタデータを削除せずに保持する。同様に、CPU152は、メモリ154に記憶されるメタデータ記録設定も保持する。これにより、メモリ154に記憶されるメタデータを以降の複数回の撮影画像に関連付けて記録することができる。
S907で、CPU152は、S901で得られた撮影画像を記録部166に指示して画像ファイルとして記録媒体に記録させる。メタデータ記録設定が「記録」である場合で(S902)、メタデータ記録管理情報が有効であるとき(S904)、記録部166は、S905で生成した記録用メタデータを撮影画像に関連付けて記録媒体に記録する。
このように図9に示す処理によれば、メタデータ記録管理情報が有効な場合に、メタデータが撮影画像に関連付けて記録媒体に記録される。メタデータ記録設定が「記録」であっても、メタデータ記録管理情報が無効な場合には、メタデータは記録されない。
図10は、メタデータ記録管理情報判定(S903)の詳細なフローチャートを示す。図10に示す処理に対応するコンピュータプログラムがメモリ154に記憶されている。CPU152は、メモリ154に記憶されるコンピュータプログラムを実行することによって、図10に示す処理を実現する。図10では、CPU152は、メタデータ記録管理情報の各項目(カメラ設定)について変化を検知する変化検知手段として機能し、各項目の変化が所定閾値を越えるものかどうかを判定する。
S1001で、CPU152は、メモリ154に記録されているメタデータ記録管理情報のメディア交換フラグが立っているか否かを判定する。先に説明したように、メディア蓋が開閉されると、CPU152は、メディア交換フラグを立てる。メディア交換フラグが立っている場合、CPU152は、S1012に進み、メディア交換フラグが立っていない場合、S1002に進む。メディア蓋の開閉の有無に応じて、メタ情報記録の有効と無効を切替えることが出来る。
S1002で、CPU152はメモリ154に記録されているメタデータ記録管理情報の電源OFFフラグが立っているか否かを判定する。電源OFFフラグが立っている場合、CPU152は、S1012に進み、電源OFFフラグが立っていない場合、S1003に進む。これにより、電源OFFの有無に応じて、メタデータ記録の有効と無効を切替えることが出来る。
S1003で、CPU152は、メモリ154に記憶されているメタデータ記録管理情報の最終撮影日時とCPU152が保持している現在時刻との時間差を判定する。時間差が一定値未満の場合、CPU152は、S1004に進み、時間差が一定値以上の場合、S1012に進む。これにより、最後に撮影した時刻から一定時間経過しているかどうかで、メタデータ記録の有効と無効を切替えることができる。なお、最終撮影時間からの時間差で判定したが、メタデータ記録管理情報の作成時刻からの時間差で判定しても良い。
S1004で、CPU152は、メモリ154に記憶されているメタデータ記録管理情報の撮影総回数が上限の一定値以上かどうかを判定する。撮影総回数が一定値未満の場合、CPU152は、S1005に進み、撮影総回数が一定値以上の場合、S1012に進む。これにより、撮影総回数が一定回数を超えているかどうかで、メタデータ記録の有効と無効を切替えることが出来る。
S1005で、CPU152は、メモリ154に記憶されているメタデータ記録管理情報の撮影総時間が一定値以上かどうかを判定する。撮影総時間が一定値未満の場合、CPU152は、S1006に進み、撮影総時間が一定値以上の場合、S1012に進む。これにより、撮影総時間が一定時間を超えているかどうかで、メタデータ記録の有効と無効を切替えることができる。
S1006で、CPU152は、メモリ154に記憶されているメタデータ記録管理情報の日付設定変更フラグが立っているか否かを判定する。日付設定変更フラグが立っていない場合、CPU152は、S1007に進み、日付設定変更フラグが立っている場合、S1012に進む。これにより、時刻設定が変更されたかどうかで、メタデータ記録の有効と無効を切替えることができる。
S1007で、CPU152は、メモリ154に記憶されているメタデータ記録管理情報の接続先を判定する。接続先となるPC100の情報が一致する場合、CPU152は、S1008に進み、一致しない場合、S1012に進む。これにより、接続先が正しいかどうかで、メタデータ記録の有効と無効を切替えることが出来る。
S1008で、CPU152は、メモリ154に記憶されているメタデータ記録管理情報の接続先変更回数が一定値以上かどうかを判定する。接続先変更回数が一定値未満の場合、CPU152は、S1008に進み、接続先変更回数が一定値以上の場合、S1012に進む。これにより、接続先の変更回数が一定回数以上かどうかで、メタデータ記録の有効と無効を切替えることができる。
S1009で、CPU152は、通信部156によりGPS機器の測位位置を取得できるかどうかを判定する。GPS機器の測位位置を取得できない場合、CPU152は、S1012に進み、取得できる場合、S1010に進む。これにより、GPS機器の測位位置が取得できるかどうかで、メタデータ記録の有効と無効を切替えることが出来る。
S1010で、CPU152は、メモリ154に記録されているメタデータ記録管理情報のGPS測位位置と通信部156を通してGPS機器から得られる測位位置との間の距離(移動距離)を判定する。この移動距離が一定値未満の場合、CPU152は、S1011に進み、一定値以上の場合、S1012に進む。これにより、最後に撮影した位置から一定距離離れているかどうかで、メタデータ記録の有効と無効を切替えることが出来る。
S1011で、CPU152は、メタデータ記録管理情報の判定結果の戻り値に有効判定をセットする。S1013で、CPU152は、メモリ154に記録されているメタデータ記録管理情報を更新する。最終撮影日時を現在時刻で更新し、撮影総回数を1カウントアップし、撮影総時間を加算する。
S1012で、CPU152は、メタデータ記録管理情報の判定結果の戻り値に無効判定をセットする。
図10に示す処理により、撮像装置150(CPU152)は、メタデータ記録管理情報を判定することで、ファイル記録に妥当なメタデータを記録できる。
また、CPU152は、メモリ154に記憶されているメタデータ記録管理情報の判定結果が無効判定の場合に、メモリ154に記憶されているメタデータが無効である旨の警告を表示部158に表示する。これにより、無意味な情報の記録を防止できる。また、メタデータのファイル記録が妥当でない場合の警告表示により、メタデータの再登録をユーザに促すことができる。
図10に示すフローでは、メディア交換フラグ、電源OFFフラグ、メタデータ作成日時、最終撮影日時、撮影総回数、撮影総時間、日付設定変更フラグ、接続先、接続先変更回数、GPS測位位置の全ての値を評価して有効・無効を判定している。しかし、これらの値のいずれかに対する評価により、有効・無効を判定するようにしてもよい。
メタデータ記録管理情報の内容が妥当でない場合、メタデータ自体を削除し、メタデータ記録設定を「非記録」に変更しても良い。すなわち、S904で「無効」の場合、CPU152は、メモリ154からメタデータを削除し、メタデータ記録設定を「非記録」に変更する。
撮影画像に関連付けて記録されるメタデータには、撮像装置識別情報、撮影条件及び撮影位置などのように必須またはデフォルトの要素と、ユーザコメントのように任意またはオプションとなる要素がある。本発明は、メタデータ記録設定が「記録」の場合において、後者の任意の要素の記録/非記録を選択できるケースにも適用可能である。すなわち、任意要素の記録設定が「非記録」になっている場合でも、任意要素に内容があるときには、任意要素の記録設定を「記録」に変更し、当該任意要素を記録するようにする。
CPU102,201による上述の各種制御は、それぞれ1つのハードウエアで実行しても、複数のハードウエアが協調して分担処理しても良い。
本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。さらに、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
また、上述した実施形態においては、本発明を単体の撮像装置に適用した場合を例にして説明したが、これはこの例に限定されず、同様の撮像装置を組み込まれた装置における当該撮像装置を制御する場合にも適用可能である。例えば、カメラ付きのスマートフォン、カメラ付きのパーソナルコンピュータ、カメラ付きの携帯ゲーム機、カメラ付きのメディア再生装置及びカメラ付きのデータ処理装置等がそのような対象たりうる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。