IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7550805撮像装置、及びそれらの制御方法、プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-05
(45)【発行日】2024-09-13
(54)【発明の名称】撮像装置、及びそれらの制御方法、プログラム
(51)【国際特許分類】
   H04N 23/60 20230101AFI20240906BHJP
   H04N 21/235 20110101ALI20240906BHJP
   H04N 21/435 20110101ALI20240906BHJP
   H04N 5/77 20060101ALI20240906BHJP
   H04N 5/92 20060101ALI20240906BHJP
【FI】
H04N23/60 300
H04N21/235
H04N21/435
H04N5/77 200
H04N5/92 010
【請求項の数】 8
(21)【出願番号】P 2022012030
(22)【出願日】2022-01-28
(65)【公開番号】P2023110527
(43)【公開日】2023-08-09
【審査請求日】2023-06-05
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】簑島 俊雄
(72)【発明者】
【氏名】上村 英孝
(72)【発明者】
【氏名】熊谷 興一
(72)【発明者】
【氏名】横関 誠
【審査官】櫃本 研太郎
(56)【参考文献】
【文献】特開2019-062369(JP,A)
【文献】国際公開第2021/261106(WO,A1)
【文献】特開2017-219591(JP,A)
【文献】特開2020-160300(JP,A)
【文献】特開2019-114914(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/222-5/257、5/76-5/956
H04N 7/10-7/56
H04N 23/00、23/40-23/76、23/90-23/959
(57)【特許請求の範囲】
【請求項1】
映像を撮像する撮像手段と、
前記撮像手段の撮像に関するメタデータを、前記映像の映像フレームごとに生成する生成手段と、
前記生成手段により生成されたメタデータが付与された映像フレームを出力する出力手段と、
ユーザーの操作に応じて映像の遅延を許容するモードを設定する設定手段と、
前記モードが設定されている場合に、前記生成されたメタデータが、当該メタデータが対応している映像フレームに付与されるように、前記出力手段により出力される映像フレームを遅延させる遅延手段と、を備え、
前記生成手段は、前記生成されたメタデータが対応している映像フレームと、前記出力手段において前記生成されたメタデータが付与されて出力される映像フレームとのズレに基づく遅延量を示す情報を、前記生成されたメタデータに含ませる、ことを特徴とする撮像装置。
【請求項2】
前記遅延量は、前記ズレを表すフレーム数、または、前記ズレを表す時間であることを特徴とする請求項1に記載の撮像装置。
【請求項3】
前記生成手段が生成するメタデータのうち、後段の処理に使用されるメタデータのセットを選択する選択手段をさらに備え、
前記遅延手段は、前記モードが設定されている場合に、前記メタデータのセットに含まれるメタデータのうち前記遅延量が最も大きいメタデータが対応する映像フレームに付与されるまで出力される映像フレームを遅延させることを特徴とする請求項に記載の撮像装置。
【請求項4】
前記生成手段は、前記選択手段により選択されたメタデータのセットに含まれないメタデータであって、遅延を生じるメタデータに無効を示す情報を付加することを特徴とする請求項に記載の撮像装置。
【請求項5】
前記メタデータは、装着された交換レンズから取得される情報と、前記映像の映像フレームを画像処理して取得される情報とを含むことを特徴とする請求項1乃至のいずれか1項に記載の撮像装置。
【請求項6】
前記出力手段は、前記生成手段により生成されたメタデータに遅延時間が設定されている場合、前記メタデータの生成の完了から前記遅延時間が経過した後に、前記メタデータを映像フレームに付与することを特徴とする請求項1乃至のいずれか1項に記載の撮像装置。
【請求項7】
映像を撮像する撮像手段を有する撮像装置の制御方法であって、
前記撮像手段の撮像に関するメタデータを、前記映像の映像フレームごとに生成する生成工程と、
前記生成工程により生成されたメタデータが付与された映像フレームを出力する出力工程と、
ユーザーの操作に応じて映像の遅延を許容するモードを設定する設定工程と、
前記モードが設定されている場合に、前記生成されたメタデータが、当該メタデータが対応している映像フレームに付与されるように、前記出力工程で出力される映像フレームを遅延させる遅延工程と、を備え、
前記生成工程は、前記生成されたメタデータが対応している映像フレームと、前記出力工程において前記生成されたメタデータが付与されて出力される映像フレームとの差に基づく遅延量を示す情報を、前記生成されたメタデータに含ませる、ことを特徴とする撮像装置の制御方法。
【請求項8】
請求項に記載の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像装置、画像処理装置及びそれらの制御方法、プログラムに関する。
【背景技術】
【0002】
近年、映像制作の分野において、Visual Effects(以下、VFX)という技術が注目されている。VFXは、Computer Graphics(以下、CG)と実写映像を合成することにより、非現実的な画面効果(視覚効果)を実現するものである。通常、CGと実写映像の合成は、撮影後のポストプロダクション段階において行われる。しかし、近年では、CGを先に作成しておき、CGと実写映像が合成された映像をリアルタイムで確認しながら撮影を行うというニーズが高まってきている。CGと実写映像を合成する際には、実写映像のフレーム毎に重畳された撮影パラメータ(以下、メタデータ)が利用される。
【0003】
しかしながら、画像信号処理のシステム的な制約や、交換レンズ式の撮像装置においては装着されているレンズ毎に異なるレンズ通信特性などにより、メタデータと映像との間で同期が取れなくなる場合がある。メタデータと映像との間の同期がとれない場合、リアルタイムでCGを合成する際に正しくメタデータを参照することができなくなってしまう。特許文献1には、映像信号/音声信号と、それに付随する補助情報とのそれぞれにメモリ手段を設けることにより、映像信号/音声信号と補助情報との関連性を確保する構成が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2004-265459号公報
【文献】特開2017-219591号公報(実施形態で参照される)
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載された技術では、撮像装置内で映像を遅延させる必要が生じる。そのため、遅延する映像を記憶するための専用の大容量メモリを搭載する必要がある。昨今では、RAW映像記録機能を搭載した製品や、RAW映像をSDI(Serial Digital Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)といった外部出力端子から出力する製品も多く発売されている。この種の映像信号を遅延させる場合には、さらに大容量のメモリが必要となるため、撮像装置の生産コストの増加を抑えることが難しくなる。また、撮像装置内で映像が遅延されると、合成画像について所望のリアルタイム性が得られなくなる可能性もある。
【0006】
本発明は、メタデータが付与された映像出力の遅延を低減する技術を提供する。
【課題を解決するための手段】
【0007】
本発明の一態様による撮像装置は以下の構成を備える。すなわち、
映像を撮像する撮像手段と、
前記撮像手段の撮像に関するメタデータを、前記映像の映像フレームごとに生成する生成手段と、
前記生成手段により生成されたメタデータが付与された映像フレームを出力する出力手段と、
ユーザーの操作に応じて映像の遅延を許容するモードを設定する設定手段と、
前記モードが設定されている場合に、前記生成されたメタデータが、当該メタデータが対応している映像フレームに付与されるように、前記出力手段により出力される映像フレームを遅延させる遅延手段と、を備え、
前記生成手段は、前記生成されたメタデータが対応している映像フレームと、前記出力手段において前記生成されたメタデータが付与されて出力される映像フレームとのズレに基づく遅延量を示す情報を、前記生成されたメタデータに含ませる。
【発明の効果】
【0008】
本発明によれば、撮像装置から出力される、メタデータが付与された映像出力の遅延が低減される。
【図面の簡単な説明】
【0009】
図1】第一実施形態における撮像装置の構成例を示すブロック図。
図2】第一実施形態における映像ファイルのフォーマット例を示す図。
図3】撮像装置内の映像信号処理の流れとその課題を説明するための図。
図4】第一実施形態におけるメタデータの例を示した図。
図5】第一実施形態の撮像装置による映像出力の処理を示すフローチャート。
図6】第一実施形態による画像処理装置の構成例を示すブロック図。
図7】第一実施形態による画像処理装置の処理を示すフローチャート。
図8】撮像装置による映像信号の処理の流れとその課題を説明するための図。
図9】第二実施形態におけるメタデータの例を示した図。
図10】第二実施形態の撮像装置による映像出力の処理を示すフローチャート。
図11】メタデータの遅延を設定するためのGUIの例を示した図。
図12】第二実施形態による撮像装置内の映像信号処理の流れを説明する図。
図13】第三実施形態によるレンズデータの記録処理を説明するフローチャート。
図14】定期通信の周期決定処理/周期更新処理を示すフローチャート。
図15】調歩同期式シリアル方式による通信を説明する図。
図16】クロック同期式シリアル方式による通信を説明する図。
図17A】第三実施形態による映像信号とレンズデータの関連付けを示す図。
図17B】第三実施形態による映像信号とレンズデータの関連付けを示す図。
図17C】第三実施形態による映像信号とレンズデータの関連付けを示す図。
図17D】第三実施形態による映像信号とレンズデータの関連付けを示す図。
図18A】第四実施形態による映像信号とレンズデータの関連付けを示す図。
図18B】第四実施形態による映像信号とレンズデータの関連付けを示す図。
図18C】第四実施形態による映像信号とレンズデータの関連付けを示す図。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0011】
[第一実施形態]
以下の実施形態では、撮像装置100による動画の記録再生制御に関して、特に、VFXにおけるリアルタイム合成処理に用いるためのメタデータの制御方法に関して説明する。図1は、撮像装置100の構成例を示すブロック図である。撮像装置100は、カメラ本体121と、カメラ本体121に着脱が可能な交換レンズ120とを含む。
【0012】
レンズ101は、レンズ駆動部102によってズーム、フォーカス等を実行するために駆動制御される。レンズ101を通った被写体像は、絞り104にて適切な光量に調整され、撮像部106が有する撮像素子の撮像面に結像される。絞り104は、絞り駆動部105によって駆動制御される。撮像素子は、撮像面に結合した被写体像を光電変換する。撮像部106は、撮像素子から光電変換された被写体像を読み出し、ゲイン調整した後、アナログ信号からデジタル信号への変換を行うA/D変換によりデジタル信号に変換する。こうして得られた被写体像のデジタル信号(例えば、R、Gr、Gb、Bの信号)は、撮像部106から画像信号処理回路107に送られる。画像信号処理回路107は、現像処理、ノイズを軽減するローパスフィルタ処理、シェーディング処理、ホワイトバランス(WB)処理、巡回NR処理などの各種の画像信号処理を行う。画像信号処理回路107は、更に各種の補正、画像データの圧縮等を行う。
【0013】
システム制御部109は、1つまたは複数のプロセッサーを含み、撮像装置100全体の制御と各種演算を行う。また、システム制御部109は、電気接点ユニット118を介してレンズ制御部117に対して種々の命令を送信する。また、システム制御部109は、交換レンズ120(レンズ制御部117)に、レンズ情報(光学情報等)を送信するように要求を行う。さらに、システム制御部109は、メカニカルシャッタ103を駆動制御する。第1メモリ部108は、画像データを一時的に記憶する。記録媒体制御I/F部110は、記録媒体112に対して画像データの記録又は読み出しを行うためのインタフェースである。表示部111は、例えば、液晶ディスプレイを有し、画像データの表示を行う。記録媒体112は、半導体メモリ等の着脱可能な記録媒体であり、画像データを記録する。外部I/F部113は、外部コンピュータ等と通信を行うためのインタフェースである。第2メモリ部114は、システム制御部109のプロセッサーが実行する各種プログラム、システム制御部109での演算結果等を記憶する。
【0014】
操作部115はユーザーによる各種操作を受け付ける。操作部115を介してユーザーが設定した撮像装置100の駆動条件に関する情報は、システム制御部109に送られる。システム制御部109はこれらの情報に基づいて撮像装置100全体の制御を行う。メタデータ処理部116は、画像データに紐づく撮影パラメータなどを所定の記憶領域(例えば、第2メモリ部114)に格納する。
【0015】
電気接点ユニット118は、交換レンズ120及びカメラ本体121のそれぞれに設けられた、2本の通信ラインに対応する電気接点(カメラ端子/レンズ端子)で構成される。レンズ制御部117は、電気接点ユニット118を介してカメラ本体と通信を行う。また、レンズ制御部117は、レンズ操作部119からの操作情報に応じてレンズ駆動部102及び絞り駆動部105の駆動を制御する。また、レンズ制御部117は、電気接点ユニット118を介してカメラ本体121と通信を行い、システム制御部109からの命令を受信したり、受信した命令に基づいてレンズ情報(光学情報等)を送信したりする。レンズ操作部119には、ズーム操作リングやフォーカス操作リング、絞り駆動リングなどの操作部材が設けられている。各操作部材がユーザーにより操作されると、操作信号がレンズ制御部117に出力される。レンズ制御部117は、この操作信号に従って、該当操作に応じた制御を行う。
【0016】
図2は、本実施形態の映像ファイルのフォーマット例を示す図である。ftypボックス200は、ファイル形式の互換を示す情報を格納する。moovボックス201は、再生に必要な管理情報やサムネイル画像を格納する。XMPボックス202は、XMPを格納する。XMPボックス202には任意のメタデータを設定することが可能である。なお、XMPは、Extensibile Metadata Platformを表す。uuidボックス203は、追加的な任意の情報を格納する。uuidボックス203により任意の情報を追加することができる。例えば、RAW映像の場合、uuidボックス203にはプレビュー用の画像220が格納され得る。mdatボックス204は、符号化された映像データと、音声データと、タイムコードデータと、映像フレーム単位のメタデータと、を格納する。なお、以下では、映像フレームを単にフレームともいう。
【0017】
つづいて、moovボックス201の構成について説明する。uuidボックス213は、追加的な任意の情報を格納する。図示の例では、uuidボックス213は、再生時に表示するサムネイル画像218と再生時に使用する管理情報219を格納している。trackボックス205~208は、映像データ、音声データ、タイムコードデータ、およびフレーム単位のメタデータに関わる管理情報を格納する。trackボックス205~208は、それぞれ、stszボックス209~212とstcoボックス214~217を有する。stszボックス209~212は、映像データ、音声データ、タイムコードデータおよびフレーム単位のメタデータの符号化単位ごとのデータサイズを格納する。stcoボックス214~217は、それぞれ映像データ、音声データ、タイムコードデータ、およびフレーム単位のメタデータの、mdatボックス204における格納位置を示す情報を格納する。映像データ、音声データ、タイムコードデータおよびメタデータの各データは、1つ以上の符号化単位で構成されるチャンクと呼ばれる単位でmdatボックス204に格納される。
【0018】
mdatボックス204には、映像データ230,234、…、音声データ231、235、…、タイムコードデータ232、236、…およびフレーム単位のメタデータ233、237、…が格納される。mdatボックス204内の各データは、stcoボックスに記載されている値によりチャンク単位でアクセスされ得る。たとえば、映像データ230(CV1)は、stcoボックス214の格納位置情報250から辿ることが可能である。
【0019】
次に、以上のような構成を備える本実施形態の撮像装置100の動作を説明する。以下では、まず、RAW映像をSDI、HDMI(登録商標)といった外部出力端子から出力する際に発生する、映像信号とメタデータの同期に関する課題について説明する。続いて、そのような課題を解決する第一実施形態の構成を説明する。第一実施形態では、大容量のメモリを利用して映像を遅延させる構成を用いずに、映像信号とメタデータの同期をとることを可能とする。
【0020】
図3は映像信号処理の流れと、本実施形態が解決しようとしている課題を説明するための図である。映像フレームNの映像信号処理では、はじめにステップ301で、撮像部106の撮像素子(CMOSセンサ)による露光が行われる。次に、ステップ302において、露光した映像を撮像素子から読み出し、ゲイン調整とA/D変換等を施すことによりRAW画像が取得される。取得されたRAW画像は、現像処理を経て出力される第一経路(ステップ303~ステップ305)とそのまま外部へ出力される第二経路(ステップ306)に提供される。第一経路では、ステップ303においてRAW画像に現像処理が施され、ステップ304において現像後の画像に後処理が施されて現像画像が生成される。そして、ステップ305で現像画像が外部I/F部113から外部出力される。第二経路では、ステップ306でRAW画像が外部I/F部113から出力される。一般に第一経路においては、取得されたRAW画像から、露出や色の情報を検出したり、被写体検出を行ったり、ブレ補正に利用するための動きベクトル量を検出したり、といった様々な画像処理が行われる。これに対して、ステップ306でRAW画像が外部へ出力される場合、それら画像処理の結果が得られる前にRAW画像が出力されることとなる。従って、RAW画像の出力では、画像処理結果をフレーム同期のメタデータとして映像に重畳することができないという課題が生じる。従来技術では、大容量のメモリを設けて、ステップ306におけるRAW画像の外部出力を、例えばステップ305の現像画像の外部出力のタイミングまで遅延させることで、画像処理結果をメタデータとして重畳できるようにしていた。
【0021】
対して、第一実施形態では、新たなメタデータを追加することにより、RAW画像の外部出力を遅延させることを不要としながら、後段の画像処理装置側で映像とメタデータの同期をとることを可能にする。
【0022】
図4は、第一実施形態によるフレーム単位のメタデータの例を示す図である。メタデータは、例えば、mdatボックス204に格納される。メタデータ400は、管理情報401、露出情報402、レンズ情報403、顔検出情報404、電子防振情報405など、様々なメタデータを含む。例えば、管理情報401は、TimeCodeのような基本的な情報を含む。露出情報402は、例えば、シャッタ、ゲイン、絞りなどの情報を含む。レンズ情報403は、例えば、フォーカスレンズ位置、ズーム位置の情報を含む。顔検出情報404は、例えば、顔検出位置や個数の情報を含む。電子防振情報405は、例えば、光学中心位置、電子拡大倍率の情報を含む。図3により上述した通り、RAW画像を画像処理して得られるようなデータはRAW画像を外部出力(ステップ306)するタイミングよりも遅く生成される。そこで、本実施形態では、各メタデータに対してフレーム遅延量を表すデータ(フレーム遅延量411a~411d)を追加することにより、後段の外部の画像処理装置においてフレームとメタデータを整合できるようにする。遅延量は、生成されたメタデータが対応している映像フレームと、生成されたメタデータが付与されて出力される映像フレームとのズレを示す。例えば、顔検出情報404が1フレーム遅延したフレームに付されているのであれば、フレーム遅延量411cに1を入れておく。後段の画像処理装置では、その遅延量を加味して現像処理を行うことで映像とメタデータの同期をとる。なお、フレーム遅延量411としてフレーム数を用いたが、これに限られるものではない。例えば、フレーム遅延量411は、TimeCode情報などの時間情報で表されてもよい。この場合、後段の画像処理装置では、映像のTimeCodeと各メタデータのTimeCodeの差を加味することで、映像とメタデータの同期をとることが可能となる。
【0023】
図5は、第一実施形態による撮像装置100の映像出力の処理を示すフローチャートである。なお、図5に示される処理では、図4で説明したフレーム遅延量のメタデータを用いて映像出力を行う第1のモードの処理と、従来方式により映像遅延させて映像出力を行う第2のモードの処理のいずれかを、ユーザーが選択可能としている。ユーザーは、撮像装置100に第1のモード(メタデータにフレーム遅延量を設定する処理)と第2のモード(撮像装置100内で映像を遅延させる処理)の何れのモードによる処理を行わせるかを、操作部115を介して選択することができる。さらに本実施形態では、後段の画像処理装置が行う画像処理において用いられるメタデータをユーザーが選択可能としている。
【0024】
ステップS501において、システム制御部109は、撮像装置100内で映像遅延させるモード(第2のモード)が、ユーザーの操作により設定されているかを判断する。第2のモードが設定されていると、撮像装置100内で映像遅延させることが許容され、映像は必要に応じて遅延されてから出力される。システム制御部109は、映像遅延させるモードが設定されていると判断した場合(ステップS501でYES)、処理をステップS502に進める。ステップS502において、システム制御部109は、後段の画像処理において用いられるメタデータとしてユーザー選択されているメタデータの中に遅延が発生するメタデータが存在するか否かを判断する。遅延が発生するメタデータとは、RAW画像の外部出力(ステップ306)のタイミングよりも遅く生成されるメタデータである。システム制御部109は、遅延が発生するメタデータが存在すると判断した場合(ステップS502でYES)、処理をステップS503に進める。ステップS503において、システム制御部109は、フレームメモリを用いて映像を遅延させ、映像フレームに対応するメタデータが生成された後、当該映像フレームとこれに対応するメタデータを出力する。こうして、映像とメタデータが同期した映像出力が行われる。なお、フレームメモリには第2メモリ部114を用いることができる。
【0025】
一方、ステップS502において、システム制御部109は、遅延が発生するメタデータが存在しないと判断した場合(ステップS502でNO)、処理をステップS504に進める。ステップS504において、システム制御部109は、遅延の発生するメタデータに無効データを付与し、ステップS503の様な遅延を行うことなく、RAW画像を出力する。これにより、遅延のない映像出力が行われる。また、ユーザーにより選択されたメタデータ、すなわち後段の画像処理で使用されるメタデータは、映像と同期して出力される。また、ステップS501において、システム制御部109は、映像遅延させる第2のモードが設定されていないと判断した場合(ステップS501でNO)、処理をステップS505に進める。ステップS505において、システム制御部109は、遅延が発生するメタデータに遅延量を示すデータを付与して、映像(RAW画像)を遅延させずに即座に出力する。例えば、システム制御部109は、顔検出情報404のフレーム遅延量411cに遅延量としてのフレーム数(または、TimeCode)を設定する。なお、遅延の発生しないメタデータに関しては、フレーム遅延量が0に設定されるものとするが、これに限られるものではなく、例えば、遅延の発生しないメタデータはフレーム遅延量のデータを含まないようにしてもよい。
【0026】
以上のように、映像遅延させない第1のモードが選択されている場合には、システム制御部109は、各メタデータのフレーム遅延量を示すデータを付与することで、映像を遅延させることなく撮像装置100から映像およびメタデータを出力する。また、映像遅延させる第2のモードが選択された場合であっても、後段(例えば、外部の画像処理装置)で利用されるメタデータをユーザーに選択させることで、後段の処理に不必要なメタデータによって発生する映像遅延が回避され得る。
【0027】
図6は、撮像装置100外部I/F部113を介して接続される外部装置の一例である、画像処理装置600の構成例を示すブロック図である。図6において、入力I/F部601は、外部装置(例えば、撮像装置100の外部I/F113)から映像を受け取るためのインタフェースである。メモリ部602は、入力I/F部601で受け取った映像(画像データ)を一時的に記録する。画像処理部603は、入力された映像に対してCGの合成等の画像信号処理を行う。画像処理部603は、更に、CGを合成した画像に対して各種の補正、データの圧縮等を行う。出力I/F部604は、外部装置(例えば、撮像装置100、不図示の表示装置)にCGを合成した映像を出力するためのインタフェースである。制御部605は、例えば、1つ以上のプロセッサーとプログラムを格納したメモリを含み、1つ以上のプロセッサーがメモリに格納されたプログラムを実行することにより、画像処理装置600の全体の制御、各種演算を行う。なお、プログラムを格納するメモリとしてメモリ部602が用いられてもよい。メタデータ処理部606は、入力された映像データに紐づくメタデータ(撮影パラメータなど)を解析する。なお、画像処理部603は、制御部605の機能の一部として実現されてもよい。
【0028】
図7は、画像処理装置600の画像処理時の動作を示すフローチャートである。ステップS701において、制御部605は、入力された映像フレームNに付与されているメタデータnを解析し、画像処理部603が利用するメタデータnのフレーム遅延量DNが0よりも大きいかどうかを判断する。制御部605は、フレーム遅延量DNが0よりも大きいと判断した場合(ステップS701でYES)、処理をステップS702に進める。ステップS702において、制御部605は、入力された映像フレームNをメモリ部602に退避する。そして、制御部605は、フレーム遅延量DNだけ後の映像フレームに付与されているメタデータを用いて、メモリ部602に退避させた映像フレームNを画像処理するよう、画像処理部603を制御する。他方、ステップS701において、制御部605は、メタデータnのフレーム遅延量DNが0以下であると判断した場合(ステップS701でNO)、処理をステップS703に進める。ステップS703において、制御部605は、入力された映像フレームNの画像処理を当該フレームとともに入力されたメタデータnを用いて実行するよう画像処理部603を制御する。
【0029】
なお、図7では、説明を単純にするために1つのメタデータについて説明したが、実際には画像処理に利用されるメタデータ全てに対して判断が行われ、最も遅延量の大きいメタデータが入力されるまで映像フレームをメモリ部602に退避し続けることとなる。そして、制御部605は、それぞれのメタデータをフレーム遅延量により特定される映像フレームから取得し、画像処理を行う。また、全ての利用対象のメタデータの遅延量が0以下であった場合に、ステップS701での判定がNOとなり、ステップS703が実行される。なお、遅延量を0以下としたのは、映像よりも早く生成可能なメタデータが存在した場合に負の値をとるようにしても良いからである。
【0030】
以上のように、第一実施形態によれば、映像とメタデータの同期がずれていても、各メタデータに付与されているフレーム遅延量に基づいて画像処理装置600が映像フレームとメタデータの同期をとることが可能となる。従って、撮像装置100は、メタデータが取得されるまで映像を遅延させることなく映像を出力することができる。このため、撮像装置100における遅延が低減され、映像を遅延させるためのメモリ量も低減される。また、撮像装置100の画像処理速度よりも画像処理装置600の画像処理速度の方が早い場合、システム全体の映像遅延が短縮されるという効果が得られる。また、画像処理装置600でRAW現像が行われ、現像中に次の映像フレームが入力されてそれに付与されているメタデータを用いてポスト処理が行われる、というシステムであれば、映像遅延をさらに低減して画像処理を行うことができる。また、上記実施形態によれば、撮像装置100内で映像を遅延する設定(第2のモード)であっても、後段の画像処理に利用されるメタデータをユーザーが選択することで、後段の画像処理に不必要なメタデータによって発生する映像遅延が回避され得る。例えば、外部I/F部113から出力されたRAW映像を外部の画像処理装置600で現像処理する場合に、現像処理に必要としないメタデータのために撮像装置100からの映像出力が遅延されてしまうという事態が防止される。これにより、システム全体の映像遅延を低減することができる。
【0031】
[第二実施形態]
第一実施形態では、メタデータにメタデータ遅延量を設定することにより、撮像装置100からRAW映像を受信する外部装置(画像処理装置600)において、RAW映像と同期したメタデータを得るようにした。一方、撮像装置100においてメタデータの生成が完了するタイミングが変化すると、撮像装置100からRAW映像とともに出力されるメタデータの同期状態、遅延状態が変化してしまう。遅延状態が変化すると、メタデータの実際の遅延量とメタデータに設定された遅延量との間にずれが生じてしまい、画像処理装置600が正しく映像フレームとメタデータを対応させることが困難になる。第二実施形態ではこのような課題を解消する。
【0032】
第二実施形態による撮像装置100および画像処理装置600の構成は第一実施形態(図1図6)と同様である。操作部115を介してユーザーが設定した撮像装置100に対する駆動条件に関する情報やメタデータに関する遅延情報は、システム制御部109に送られる。システム制御部109はこれらの情報に基づいて撮像装置100の全体の制御を行う。第二実施形態のシステム制御部109は、映像フレームに紐づく撮影パラメータなどを所定の領域に格納することに加えて、所定のメタデータに関して、映像フレームへ付加するタイミングを遅延することができる。
【0033】
図8は、撮像装置による映像信号処理の流れとその課題を説明する図である。映像フレームN(RAW画像N)の映像信号処理において、ステップ801~ステップ806は、図3に示されるステップ301~ステップ306と同様である。映像フレームN+1、映像フレームN+2に対してもステップ801~ステップ806と同様の処理が行われる。ステップ811において、レンズから取得された情報からレンズ情報403のメタデータ(以下、レンズメタデータ)が生成される。ステップ812において、ステップ811で生成された、映像フレームNに対応するレンズメタデータNは、ステップ806で外部装置へ出力されるRAW画像(フレームN)に同期して出力される。また、ステップ813において、ステップS811で生成された、映像フレームNに対応するレンズメタデータNは、映像フレームNの現像画像の出力(ステップ805)に同期して出力される。
【0034】
しかし、ステップ814に示されるようにレンズメタデータN+1の生成に時間がかかると、映像フレームN+1のRAW画像の出力タイミングにレンズメタデータN+1の生成が間に合わない。そのため、ステップ815では、映像フレームN+1に対してレンズメタデータNが設定される。そして、ステップ814で生成された映像フレームN+1に対応するレンズメタデータN+1は、ステップ816において、映像フレームN+2のRAW画像に対して設定される。結果、外部に出力されるRAW画像の映像フレームには、レンズメタデータと同期が取れているものと取れていないものとが混じってしまう。
【0035】
図9は、第二実施形態によるメタデータの遅延調整の可否を示す図である。メタデータ900は、第一実施形態(図4)と同様に、管理情報401、露出情報402、レンズ情報403、顔検出情報404、電子防振情報405を含む。列911は、メタデータを映像フレームに付加する際の遅延時間の調整が可能か否かを示す。列911に○印が付されているメタデータは遅延時間を調整可能なメタデータであり、×印が付されているメタデータは遅延時間の調整ができないメタデータである。遅延時間を調整可能なメタデータに対しては、ユーザーのメニュー操作(図11の参照により後述する)により、遅延時間を設定することができる。例えば、レンズ情報403のメタデータ(レンズメタデータ)を、常に同じ量だけずれた映像フレームに付加されるように遅延時間を調整することができる。この調整により、レンズメタデータと映像フレームのずれ量が一定になり、図8で説明したようなレンズメタデータのタイミングに関する変動が低減もしくは解消される。なお、図9では、フォーカス位置、ズーム位置などの個々のメタデータに遅延時間の調整可否が設定されるが、露出情報402、レンズ情報403などを単位として遅延時間の調整可否が設定されていてもよい。
【0036】
本実施形態のメタデータ900は、外部に出力されるRAW映像に対して設定が間に合わなくなる可能性があるメタデータについて遅延時時間の調整が可能となっている。例えば、上述したレンズメタデータ(レンズ情報403)のようにRAW映像の映像フレームの外部出力に間に合う場合と間に合わない場合があるメタデータに対し、遅延時間を設定することができる。遅延時間が設定されることにより、当該メタデータは、安定して所定数のフレームだけずれた映像フレームとともに出力されるようなる。例えば、レンズメタデータが映像フレームに対して同期する状態と同期しない状態が発生しないようにユーザーが遅延時間を設定することで、映像フレームに対するメタデータのずれ量を一定にすることが可能となる。
【0037】
図10は、第二実施形態の撮像装置100による映像出力の処理を示すフローチャートである。第二実施形態の撮像装置100では、ユーザーがメニュー操作によりメタデータの遅延時間を選択することが可能である。ステップS1001において、システム制御部109は、ユーザーのメニュー操作によりメタデータの遅延時間が設定されているかどうかを判断する。システム制御部109は、メタデータの遅延時間が設定されていると判断した場合(ステップS1001でYES)、処理をステップS1002に進める。ステップS1002において、システム制御部109は、当該メタデータに関してメニュー操作により設定された遅延時間を取得する。ステップS1003において、システム制御部109は、ステップS1002で取得した遅延時間を元に、映像フレームへのメタデータの付与を遅延させる。より具体的には、例えば、メタデータの生成が完了してから設定された遅延時間が経過するまでは、そのメタデータを未完成である(生成が完了していない)として扱う。こうして、システム制御部109は、実際に生成が完了してから遅延時間だけ遅延させたタイミング以降において、メタデータを映像フレームと一緒に出力する。他方、ステップS1001で、システム制御部109は、メタデータに遅延時間が設定されていないと判断した場合は(ステップS1001でNO)、処理をステップS1004へ進める。ステップS1004において、システム制御部109は、そのメタデータについて上述の様な遅延をせずに、そのメタデータを生成が完了し次第、映像フレームと一緒に出力する。以上のステップS1001~S1003の処理は、全てのメタデータについて行われる。
【0038】
以上のように、第二実施形態によれば、所定のメタデータに対して遅延時間を設定できるため、映像フレームに対するメタデータのずれ量を一定にすることが可能となる。したがって、第一実施形態で説明したフレーム遅延量を用いた構成において、より確実に映像フレームとメタデータを対応付けることができる。
【0039】
図11は、ユーザーがメニュー操作により所定のメタデータの遅延時間を選択する場合のメニュー構成(GUI:Graphical User Interface)を示す図である。ユーザーは、表示部111に表示されたメニュー画面1100において、「System Setup」、「Metadata Delay」を順に選択することで、リスト1101からメタデータの遅延時間を設定することが可能である。なお、図11のメニュー画面1100では、図9で遅延量調整可能に設定されているメタデータに対してリスト1101から指定された同じ遅延時間が設定されるが、これに限られるものではない。遅延時間の調整が可能なメタデータに対して、個別に遅延時間を設定できるようにしてもよい。また、遅延時間は、タイムコードのような時間情報で設定されてもよい。
【0040】
図12は、本実施形態における映像処理の流れを説明する図である。図12では、図11に示したように、ユーザーのメニュー操作によりメタデータに対して遅延時間が設定された場合の動作が示されている。図8ではRAW画像Nに対しては同期したレンズメタデータNが設定されていたが、RAW画像N+1に対してもレンズメタデータNが設定されてしまっていた。対して、図12では、ユーザーからメタデータの遅延時間が設定されているため、ステップ1201で出力されるRAW画像N+1に対して、ステップ1202においてレンズメタデータNが設定される。すなわち、映像に対して1フレーム遅延したレンズメタデータが設定される。このようにレンズメタデータを遅延させることにより、ステップ1201のRAW画像N+1やステップ1203の現像画像出力N+1番目の同じ映像に対して一律に1フレーム遅延したレンズメタデータが設定できるようになる。但し、図12に示される現像画像の外部出力として、図8で示したように同期したレンズメタデータが設定されてもよい(現像画像NにレンズメタデータNが付与されようにしてもよい)。また、RAW画像のフレームよって、レンズメタデータとの同期が取れている場合と取れていない場合とが生じるようなことも、低減もしくは解消される。
【0041】
以上のように第二実施形態によれば、メタデータに対してユーザーがメニューからメタデータの遅延時間を設定することにより、映像に対して一定のずれ量でメタデータを同期させることが可能となる。これにより、例えば、第一実施形態で説明した画像処理装置600において、映像を編集したりCG合成したりする際にメタデータを正しく対応づけることができる。
【0042】
[第三実施形態]
図1に示した構成において、カメラ本体121は、電気接点ユニット118を介して交換レンズ120と定期的な通信(以下、定期通信)を行い、交換レンズ120からフレーム単位でデータを取得する。しかし、カメラ本体121が撮像する映像のフレームレートが高くなると、交換レンズ120とカメラ本体121との間の定期通信が間に合わなくなり、全てのフレームについて交換レンズ120のデータを取得することができなくなる場合がある。このような場合、一定の周期で交換レンズ120のデータを取得することを優先するために、交換レンズ120とカメラ本体121との間の通信周期をフレーム周期より遅くすることになる。特許文献2には、レンズ交換可能な撮像装置において、装着されたレンズの通信処理能力を判定し、その判定結果と動作周期に基づいて、レンズデータの取得周期を決定することでレンズの通信処理能力に応じた適切な頻度で通信を行う技術が開示されている。なお、装着された交換レンズ120の通信処理能力は、交換レンズ120から送信されるデータ通信時間を計測することで取得され得る。
【0043】
撮像制御の高度化や高フレームレート化により単位時間あたりに通信処理が占有する時間の占有率が増加する傾向にある。そのため、受信したレンズデータの保存や配信などのカメラ本体121の内部処理時間を考慮することが求められる。特許文献2では、レンズから送信されるデータ通信時間を計測することが記載されている。しかしながら、そのようなデータ通信時間を計測しただけでは、データの取得に要する時間を正確に把握することができず、交換レンズ120とカメラ本体121の間の通信頻度を適切に設定できない可能性がある。以下の第3及び第4の実施形態では、レンズ処理能力とカメラ処理能力を考慮して、データの取得に要する時間を正確に把握することで、適切な頻度でレンズと通信可能にする構成を説明する。
【0044】
第三実施形態において用いられ得る交換レンズ120とカメラ本体121との間の通信方式の例について図15(a)、及び図16(a)を用いて説明する。
【0045】
<通信方式>
交換レンズ120とカメラ本体121の間の通信方式として、調歩同期式とクロック同期式のシリアル通信がある。本実施形態ではいずれの方式が用いられても良い。なお、前述の2つの通信方式以外の通信方式を用いても良いが、本実施形態では代表的な2つの通信方式について説明する。
【0046】
図15(a)は、カメラ本体121と交換レンズ120の間の調歩同期式のシリアル通信を説明する図である。図示されているように、同期用のクロック信号線は設けられない。調歩同期式のシリアル通信では、1ワードの情報を送信する際に、送信するワードの前にスタートビット、後にストップビットと呼ばれる同期用の信号が付加される。これらスタートビットとストップビットにより、送信側装置と受信側装置において通信の同期がとられる。DCLは、カメラ本体121から交換レンズ120へコマンド或いはデータを送信する通信ラインである。DLCは、カメラ本体121が交換レンズ120からデータを受信する通信ラインである。
【0047】
次に、図16(a)を用いてクロック同期式のシリアル通信について説明する。図16(a)は、カメラ本体121と交換レンズ120の間の、クロック同期式のシリアル通信における信号を示している。図示されているように、クロック同期式のシリアル通信では、3本の通信ラインが用いられる。LCLKは、カメラ本体121から出力される同期クロック信号(以下、単にクロック信号)を交換レンズ120に伝達する通信ラインである。DCLは、クロック信号に同期してカメラ本体121から交換レンズ120へコマンド或いはデータを送信する通信ラインである。DLCは、クロック信号に同期してカメラ本体121が交換レンズ120からのデータを受信する通信ラインである。LCLK、DCL、DLCの3本の通信ラインにそれぞれ対応する電気接点(カメラ端子/レンズ端子)が、カメラ本体121および交換レンズ120それぞれにおいて電気接点ユニット118に設けられている。
【0048】
クロック同期式のシリアル通信において、クロック信号はカメラ本体121から出力されるので、通信を行うタイミングを決定するのはカメラ本体121である。しかしながら、交換レンズ120では、カメラ本体121からデータを受信した後、受信したコマンドの解析や、それに伴って発生する処理等の通信処理を行っている間は次の通信を行うことができない。そのため、交換レンズ120は、カメラ本体121へ通信処理中であることを知らせる必要がある。そこで、交換レンズ120は、通信処理中はLCLKを強制的にLowへ引き下げ、その間は通信ができないようにしている。すなわち、交換レンズ120は、LCLK端子の設定を入力から出力に切り換えてLCLKにLowを出力する(図16(a)中のBUSY信号)ことで、通信ができない期間におけるシリアル通信を禁止する。そして、通信処理終了後に交換レンズ120はLCLKをHighに戻し、LCLK端子の設定を出力から入力へ切り換えてシリアル通信を許可する。
【0049】
<レンズデータ記録>
次に、本実施形態におけるレンズデータの記録について、図13のフローチャートを用いて説明する。図13に示されるフローチャートの処理は、メモリ(例えば第2メモリ部114)に記憶されているコンピュータプログラム(ソフトウェア)を、システム制御部109のプロセッサーが実行することにより実現される。カメラ本体121に電源が投入され、カメラ本体121が起動した後に、主にシステム制御部109により図13の処理が実行される。すなわち、交換レンズ120が接続された状態でカメラ本体121が起動された直後、もしくはカメラ本体121が起動した状態で交換レンズ120が接続された後、図13の処理が開始する。
【0050】
ステップS1301にて交換レンズ120へ電源が供給されると、ステップS1302にて、システム制御部109が初期通信を実施する。初期通信では、交換レンズ120とカメラ本体121の間で、例えば、性能情報及び識別情報がり取りされる。性能情報の一例としては、交換レンズが対応する通信速度情報やズームレンズやフォーカスレンズのアクチュエーターが駆動可能な速度及び駆動分解能情報が挙げられる。また、識別情報の一例としては、レンズ固有のID情報や、エクステンダーなどのアクセサリの装着情報が挙げられる。ステップS1303において、システム制御部109は、操作部115を介して設定された情報に基づいて撮像部106の撮像周期(映像のフレームレート)を決定する。
【0051】
ステップS1304において、システム制御部109は、交換レンズ120との間で行われる定期通信の周期を決定する(定期通信の周期決定処理)。定期通信は、決定された周期で、カメラ本体121と交換レンズ120の間で、電気接点ユニット118を介して実施される。定期通信により、例えば、AF、AE、画像処理などのカメラ本体121の機能(以下、カメラ機能ともいう)が使用する、交換レンズ120のレンズ情報及び内部ステータス情報が定期的に取得される。本実施形態において、カメラ機能が使用するレンズ情報の一例としては、フォーカスレンズ位置や駆動速度、焦点距離、開放F値、被写体距離、防振レンズの駆動量や位置、各種画像補正で用いる情報がある。また、交換レンズ120の内部ステータス情報の一例としては、レンズ制御部117が制御しているフォーカスレンズ及びズームレンズ、防振レンズを含むレンズ101、絞り104の動作状態などの情報がある。以下、レンズ情報と内部ステータス情報をレンズデータと総称する。定期通信の周期は、例えば、レンズデータが映像のフレームレートに連動して更新されるように決定される。定期通信で交換レンズ120より得られた情報は、システム制御部109によって画像データに紐づく撮影パラメータとして所定の領域に格納される。ステップS1304における周期決定処理の詳細は、図14(a)の参照により後述する。
【0052】
上述したステップS1302の初期通信により得られた情報に基づいてステップS1304で定期通信の周期が決定される。但し、ステップS1304の周期決定処理で決定される定期通信の周期は初期値であり、後述のステップS1310(周期更新処理)において必要に応じて更新される。システム制御部109は、ステップS1305~ステップS1309において、交換レンズ120との定期通信によりレンズデータを得る。システム制御部109は、ステップS1305~ステップS1309の定期通信により得たレンズデータを、映像フレームに紐づく撮影パラメータとして、画像信号処理回路107からの映像信号とともにメモリの所定の領域に格納する。そのようなメモリとして、例えば、第2メモリ部114が用いられ得る。
【0053】
ステップS1305~ステップS1309の定期通信について説明する。定期通信が開始されると、ステップS1305において、システム制御部109は、カメラ本体121から交換レンズ120へデータを要求するためのコマンドを送信する。ステップS1306において、システム制御部109は、交換レンズ120からレンズデータを受信したときに割り当てるフレームナンバーとて現在のフレームナンバーを関連付ける。ステップS1307において、システム制御部109は、交換レンズ120がコマンドに応じて送信したレンズデータを受信する。そして、ステップS1308において、システム制御部109は、ステップS1307で受信したレンズデータをメタデータとして、ステップS1306で関連付けたフレームナンバーを割り当ててメモリ(例えば、第2メモリ部114)に一時的に記録する。ステップS1309において、システム制御部109は、ステップS1306で関連付けたフレームナンバーに基づいて、映像信号とレンズデータを含むメタデータとを関連付けて記録媒体112に記録したり、外部出力したりする。
【0054】
ステップS1310において、システム制御部109は、定期通信の周期更新処理を実施する。ステップS1304における定期通信の周期決定処理では、カメラ本体121の起動直後もしくは交換レンズ120の接続後において定期通信を開始する際の初期値が設定される。対して、ステップS1310の周期更新処理は、設定されている定期通信の周期で実施され、必要に応じて定期通信の周期を更新する。このように定期通信の周期更新処理を定期的に実施する理由は以下のとおりである。交換レンズ120のオートフォーカスや絞り、防振などのアクチュエーター制御に伴いレンズ処理負荷が大きくなると応答時間が長くなる可能性がある。また、カメラ本体121と交換レンズ120の接合部分の経年劣化や個体差に伴う接触抵抗の増加に伴う通信不良によりデータの欠損が発生し、レンズデータを含むメタデータと映像信号を紐づけることができなくなるという問題が引き起こされる可能性がある。周期決定処理を定期的に実施して動的に通信周期の変更を行うことで、メタデータと映像信号の紐づけをより確実に行うことができる。ステップS1310における定期通信の周期更新処理の詳細は、図14(b)の参照により後述する。
【0055】
<定期通信の周期決定処理/周期更新処理>
図13のステップS1304で実行される周期決定処理を、図14(a)を用いて説明する。また、ステップS1310で実行される周期更新処理を、図14(b)を用いて説明する。
【0056】
カメラ本体121は、初期通信(ステップS1302)にて交換レンズ120の通信速度を取得し、その通信速度を用いて交換レンズ120と通信する。しかしながら、実際に通信に要する時間(実通信時間)は、交換レンズ120の通信速度のみでは判断できない。例えば、交換レンズ120がコマンドを受信してからデータを送信するまでの時間(応答待ち時間)は、交換レンズ120の処理能力によって異なる。また、交換レンズ120から受信されたレンズデータを一時的に記録するのに必要な時間(記録処理時間)は、カメラ本体121の処理能力によって異なる。定期通信の通信周期を決定する際には、これら応答待ち時間や記録処理時間を考慮する必要がある。そのため、本実施形態における定期通信の周期決定処理および周期更新処理では、カメラ本体121が、予め決められた通信を所定のタイミングで実際に行い、交換レンズ120とカメラ本体121の間の通信能力を計測する。
【0057】
本実施形態では、主たるカメラ機能としてVFXに必要なレンズデータを取得することを想定し、一例として、以下の情報の通信を周期決定処理/周期更新処理における計測対象A、計測対象Bとする。
計測対象A(レンズデータAともいう): 交換レンズ120の内部状態を示す内部ステータス情報(画角や被写体距離等)。
計測対象B(レンズデータBともいう): 歪曲補正、周辺光量補正など撮影レンズに依存した画像処理に用いるレンズ情報。
【0058】
初期通信後に行われる定期通信の周期決定処理(図13のステップS1304)について、図14(a)のフローチャートを用いて説明する。ステップS1401~ステップS1402において、システム制御部109は、計測対象Aに要する処理時間を計測する。ステップS1401において、システム制御部109は、時間計測を開始した後、交換レンズ120に対して計測対象Aの情報を要求するコマンドを送信し、交換レンズ120からの応答を待つ。システム制御部109は、交換レンズ120からの応答により計測対象Aの情報を受信すると、時間計測を終了する。システム制御部109は、こうして計測した時間を計測対象Aの実通信時間CAとして記録する。次に、ステップS1402において、システム制御部109は、時間計測を開始した後、交換レンズ120から受信した計測対象Aの情報を所定の記録領域に一時的に記録し、時間計測を終了する。システム制御部109は、こうして計測した時間を、計測対象Aの記録処理時間DAとして記録する。
【0059】
次に、ステップS1403~ステップS1404において、システム制御部109は、計測対象Bに要する処理時間を計測する。ステップS1403において、システム制御部109は、時間計測を開始した後、交換レンズ120に対して計測対象Bの情報を要求するコマンドを送信し、交換レンズ120からの応答を待つ。システム制御部109は、交換レンズ120からの応答により計測対象Bの情報を受信し、時間計測を終了する。システム制御部109は、こうして計測した時間を計測対象Bの実通信時間CBとして記録する。ステップS1404において、システム制御部109は、時間計測を開始した後、交換レンズ120から受信した計測対象Bの情報を所定の記録領域に一時的に記録し、時間計測を終了する。システム制御部109は、こうして計測した時間を計測対象Bの記録処理時間DBとして記録し、処理をステップS1405に進める。
【0060】
ステップS1405にて、システム制御部109は、ステップS1401~ステップS1404にて計測した時間CA、DA、CB、DBを合計し、合計通信時間として算出する。システム制御部109は、ステップS1303にて決定したフレームレートのフレーム周期(撮像時間)と合計通信時間とを比較し、合計通信時間がフレーム周期よりも短い場合は、定期通信の通信周期をフレーム周期に設定する。一方、合計通信時間がフレーム周期よりも長い場合は、定期通信の通信周期を、フレーム周期の整数倍の時間のうち、合計通信時間よりも長い最小の時間に設定する。
【0061】
なお、定期通信のための通信周期の設定方法は上記の時間に限定されるものではなく、計測された合計通信時間よりも長い周期に設定されていれば良い。また、図14(a)のフローチャートは計測対象となる情報が2つであることを前提としているが、もちろんこれに限られるものではない。計測対象が3つ以上の場合も同様であり、全ての計測対象について実通信時間と記録処理時間を計測し、それらを合計した時間を上記「合計通信時間」として用いればよい。
【0062】
次に図13のステップS1310による定期通信の周期更新処理について、図14(b)のフローチャートを用いて説明する。ステップS1401~ステップS1404の処理は図14(a)で説明した処理と同様である。但し、ステップS1401~ステップS1404で計測される通信処理時間と記録処理時間は、ステップS1307~ステップS1308で実行される通信処理と記録処理の時間を計測したものである。
【0063】
ステップS1411において、システム制御部109は、ステップS1401~ステップS1404による計測が所定期間にわたって行われたか否かを判断する。システム制御部109は、所定期間にわたる計測が行われたと判断した場合(ステップS1411でYES)、処理をステップS1412に進める。他方、システム制御部109は、まだ所定期間にわたって計測されていないと判断した場合(ステップS1411でNO)、ステップS1412をスキップして処理を終了する。所定期間にわたる計測がなされたかどうかを判断する理由は、安定した計測結果を得るためである。
【0064】
ステップS1411の確認が行われない場合、システム制御部109は、ステップS1412にてフレーム周期ごとに定期通信の周期を決定、更新することになる。したがって、突発的に異常な計測値が検出された場合でも、異常な計測値に定期通信の周期を合わせる処理が行われる。そのため、定期通信の周期が安定せず、映像信号とレンズデータの紐づけが複雑になる可能性がある。所定期間が経過して計測結果が安定していることを確認することで、突発的に異常な計測値が検出されてもむやみに反応せずに、安定して更新周期を決定することができる。具体的には、ステップS1411にて、システム制御部109は、予め決められた時間または回数だけ通信処理時間が計測されたかどうかを判断する。ステップS1412において、システム制御部109は、予め決められた時間または回数の計測結果に基づいて(例えば、複数回計測された合計通信時間を統計的に処理することにより)、通信が安定しているときの定期通信の通信周期を決定する。例えば、システム制御部109は、複数回の計測結果から取得される複数の合計通信時間の中央値を用いて定期通信の通信周期を決定する。或いは、システム制御部109は、例えば、複数回の計測結果から所定数の最大の計測値、最小の計測値を除外し、残りの計測値を平均した値を用いて定期通信の通信周期を決定するようにしてもよい。このような処理により、レンズのAFや絞り制御などによる処理負荷の増加によって実通信時間が長くなる場合や、初期通信時とのコマンド違いによって実通信時間に違いがでる場合でも、適切な更新周期を決定することが可能になる。
【0065】
次に、図14(a)、(b)のステップS1401~ステップS1404で実施される実通信時間CA及びCB(及びCC)と記録処理時間DA及びDB(及びDC)の計測内容の詳細について図15(b)、図16(b)を用いて説明する。
【0066】
図15(b)、図16(b)では、交換レンズ120から継続対象A、B、Cのレンズデータを得る通信処理を示している。図15(b)、図16(b)に示されるように、システム制御部109は、複数のバイト列より構成される通信コマンドを用いて、交換レンズ120より計測対象A~Cの個々の情報を取得する。計測対象A、B、Cの情報を取得するために要する通信処理時間は、それぞれ通信コマンドの実通信時間CA、CB、CCと、記録処理時間DA、DB、DCの合計である。例えば図15(b)は調歩同期式の場合の通信時間の計測を示している。図15(b)では、計測対象Aの情報を取得するための通信コマンドが4バイトのデータで、計測対象Bの情報を取得するための通信コマンドが5バイトのデータで、計測対象Cの情報を取得するための通信コマンドは2バイトのデータで構成されている。カメラ本体121から送信された計測対象Aの情報を要求するコマンド(1バイト)が交換レンズ120で受信されると、送信するレンズデータを準備するために応答待ち時間が生じる。計測対象Aの情報を要求するためのコマンドの送信から計測対象Aの情報(3バイト)の受信を完了するまでの実通信時間CAと、受信された情報が一時的に記録されるまでに要する記録処理時間DAを計測することで、計測対象Aの通信処理時間が計測される。他の計測対象B、Cも同様である。そして、計測対象A、B、Cの取得に要した通信処理時間を合計することで、定期通信の通信周期を決定または更新するために用いられる合計通信時間が得られる。
【0067】
また、図16(b)はクロック同期式の場合の通信処理時間の計測を示している。但し、図16(b)では、計測対象Aの情報を取得するための通信コマンドが3バイトのデータで、計測対象Bの情報を取得するための通信コマンドが4バイトのデータで構成された様子を示している。交換レンズ120からは、1バイトごとにBUSY信号が出力される。計測対象Aの情報を取得するための最初のコマンドの送信から最終コマンドのBUSY信号が解除されるまでの実通信時間CAと、受信されたレンズデータの一時的な記録に要する記録処理時間DAとを計測することで、計測対象Aの通信処理時間が得られる。他の計測対象B、Cも同様である。上述したように、それぞれの計測対象の通信処理時間は実通信時間と記録処理時間で構成されており、各計測対象の情報を取得する通信が開始されてから次の通信が可能になるまでの時間を意味している。システム制御部109は、上記の手順で計測された通信処理時間を合計することにより得られる合計通信時間に基づいて、定期通信の通信周期を決定する。
【0068】
カメラ本体121や交換レンズ120の処理能力が低い場合や高フレームレートの場合では、計測対象の合計通信時間(実通信時間と記録処理時間の合計)がフレームレートよりも長くなる場合ある。このような交換レンズ120が接続されている場合、通信に要する時間が次の垂直同期信号をまたぐことになり、フレーム毎の映像信号との関連付けが崩れてしまう。この結果、フレームに同期したレンズデータを用いたCG合成ができなくなり、実写映像とずれたCG合成となってしまう。そのため、合計通信時間がフレームレートよりも長くなる場合には、定期通信の周期を遅くすることで、安定した一定の周期でレンズデータが取得される。
【0069】
次に、図17A図17Dを用いて、以下のCASE1~4について説明する。
CASE1:合計通信時間がフレーム周期よりも短い場合
CASE2:合計通信時間がフレーム周期よりも長い場合の基本処理
CASE3:CASE2で、レンズデータの精度を向上する場合
CASE4:CASE3で、フレーム周期の2倍以上の通信時間がかかる場合
【0070】
まず、図17AによりCASE1について説明する。図中の垂直同期信号の行に記載されている[1]~[7]はフレームの番号を表しており、以降の行に記載されている[1]~[7]の番号が付されているデータは、同じ番号のフレームに関するデータであることを表している。Body to Lens及びLens to Bodyの行に記載されているA及びBのデータは、前述した計測対象A及びBの情報(レンズデータA、B)を要求及び受信するための通信コマンドを送受信している期間である。A、Bを囲む点線の枠は、レンズデータA、Bのセットが、1つのフレームに関して交換レンズ120から取得される情報であることを示している。
【0071】
一時記録:映像信号の行に記載されている[1]~[6]は、システム制御部109が第1メモリ部108にフレーム[1]~[6]の映像信号をメモリに一時的に記録する処理である。一時記録:レンズデータの行に記載されている[1]~[7]は、システム制御部109が第2メモリ部114にフレーム[1]~[7]に対応するレンズデータをメモリに一時的に記録する処理である。実通信時間CA、CBはステップS1401及びステップS1403にて計測される時間である。また、レンズデータAの記録処理時間DA、レンズデータBの記録処理時間DBはステップS1402及びステップS1404にて計測される時間である。CASE1においては、合計通信時間(全レンズデータの実通信時間と記録処理時間の合計時間)が1フレーム内に収まっており、映像信号と同期したレンズデータを次のフレームのタイミングで記録することができる。記録/外部出力:映像信号、及び記録/外部出力:レンズデータの行に記載されている[1]~[6]は、フレーム[1]~[6]に対応した映像信号とレンズデータを記録する処理である。フレーム[1]~[6]の映像信号とレンズデータが同じタイミングで記録、外部出力される。すなわち、CASE1では、各フレームの映像信号とレンズデータが同期して記録/外部出力されている。
【0072】
以上のように、CASE1では、レンズデータA,B(計測対象AとBの情報)を取得する通信が1フレーム周期ごとに行われ、映像信号に関連付けられる。従って、映像信号の読み出しに対して最小の遅延量で映像信号とレンズデータの同期がとれた映像記録及び出力が可能である。
【0073】
図17Bに示されるCASE2は、合計通信時間(全レンズデータの実通信時間と記録処理時間の合計時間)が1フレーム内に収まっていない場合の例である。合計通信時間が映像の1フレーム内に収まらず、フレーム[1]のレンズデータを一時的に記録する処理が、フレーム[2]の映像信号を取得している間に終了する。そのため、レンズデータを記録/外部出力できるタイミングが図17Bに示したタイミングとなる。すなわち、フレーム[1]に対応するレンズデータ[1]が記録/外部出力できるタイミングまで映像信号の記録/外部出力を遅延させることにより、映像信号とレンズデータとが同期して記録/出力される。また、フレーム[1]のレンズデータの取得完了が垂直同期信号をまたいており、フレーム[2]における定期通信が行えない。そのため、次に定期通信を行うタイミングで取得されるレンズデータは、フレーム[3]に対応するレンズデータとなり、システム制御部109はフレーム[2]についてのレンズデータを交換レンズ120から取得することができない。そこで、システム制御部109は、フレーム[2]の映像信号と同期させて記録/外部出力するレンズデータとして、フレーム[1]に対応するレンズデータ[1]のコピーを用いる。すなわち、システム制御部109は、定期通信が実行されない映像フレームに対応するレンズデータとして、当該映像フレームよりも前の映像フレームにおいて定期通信により取得されているレンズデータのうちの最新のレンズデータを流用する。こうして、CG合成に使用するレンズデータの抜けが防止される。なお、CASE2では、映像信号及びレンズデータを記録するタイミングは、CASE1のタイミングよりも1フレーム遅延する。なお、図17Bでは、レンズデータを取得できない映像フレームのレンズデータとして、取得済みとなっているレンズデータのうちの最新のレンズデータをコピーして用いたがこれに限られるものではない。例えば、レンズデータを取得できない映像フレームのレンズデータを、取得済みとなっているレンズデータのうちの最新の所定数のレンズデータを用いて、例えば外挿により予測するようにしてもよい。外挿による予測としては、例えば、単純な線形予測、レンズ特徴に基づく2次以上の次数での近似が用いられ得る。また、定期通信の周期が2フレーム以上であっても、上記と同様の処理を適用することができる。
【0074】
図17Cに示されるCASE3では、CASE2と同様に、合計通信時間(全レンズデータの実通信時間と記録処理時間の合計時間)が1フレーム内に収まらない場合の例である。CASE2では、レンズデータを取得できないフレームにおいては、前のフレームで取得したレンズデータをコピーしていた。しかし、このような処理では、実写映像は更新されているにもかかわらずレンズデータが前のものであるため、実写映像とこれに合成されるCG映像との間にズレが発生する可能性がある。このような課題を解決するために、CASE3では、レンズデータを取得できないフレームに対応するレンズデータを、前後のフレームのレンズデータで補間する。
【0075】
一例として、レンズデータのうちの焦点距離情報が、フレーム[1]で50mm、フレーム[3]で60mmであったとする。この場合、レンズデータを取得できないフレーム[2]のレンズデータとして、その前後のフレーム[1]とフレーム[3]について得られたレンズデータの中間値である55mmを記録することで実写映像に合成するCG映像のズレが軽減される。但し、フレーム[2]におけるレンズデータを補間により得るために、フレーム[3]に対応するレンズデータが必要となる。そのため、フレーム[3]のレンズデータが取得できるまでフレーム[2]における映像信号の記録/外部出力を遅延させる必要がある。したがって、CASE3では、映像信号及びレンズデータを記録するタイミングは、CASE1のタイミングに対して2フレーム遅延する。
【0076】
なお、上記の例では単純な線形補間を用いたがこれに限られるものではない。例えば、レンズの特徴に基づく2次近似またはそれ以上の次数での近似を用いた補間や、フレーム[1]よりも前のレンズデータも使用した補間などが用いられ得る。また、言うまでもないが、補間する対象となるレンズデータは焦点距離に限られるものではない。例えば、フォーカス位置、デフォーカス量から算出される被写体距離情報、歪曲量、周辺光量落ちなどに関するパラメータ(レンズデータ)についても補間が行われ得る。
【0077】
図17Dに示されるCASE4は、定期通信により交換レンズ120から取得する情報として、レンズデータA、BにレンズデータCが追加されている。CASE4では、定期通信によるレンズデータの取得が2フレーム内にも収まらず、3フレーム内で収まる場合の例である。CASE3では前後のフレームのレンズデータで1つのレンズデータを補間していたが、CASE4では、補間するべきレンズデータが2つ以上存在することになる。
【0078】
CASE4では、フレーム[2]とフレーム[3]のレンズデータは、フレーム[1]とフレーム[4]のレンズデータを用いて補間することにより得られる。そのため、フレーム[4]のレンズデータが取得できるまでフレーム[2]の映像信号を記録するタイミングを遅延させる必要がある。また、フレーム[2]とフレーム[3]のレンズデータを補間する場合、フレーム[1]とフレーム[4]のレンズデータに異なる重みを付けて補間する必要がある。具体的には、フレーム[2]のレンズデータを補間する場合は、フレーム[1]のレンズデータの重みをフレーム[4]のレンズデータの重みよりも重くし、フレーム[3]のレンズデータを補間する場合は、その逆の重みをかけるなどの方法が考えられる。また、上述のようにフレーム[4]のレンズデータが取得できるまでフレーム[2]の映像信号の記録/外部出力を遅延させる必要があるため、映像信号及びレンズデータを記録するタイミングは、CASE1のタイミングに対して4フレーム遅延する。なお、CASE4におけるレンズデータの補間の仕方はCASE3と同様に線形補間に限らず他の方法が用いられてもよい。また、レンズの特性を用いて決定される重み付けが行われてもよい。また、フレーム[1]よりも前のフレームのレンズデータを用いた予測によりレンズデータの補間が行われてもよい。
【0079】
以上説明した処理により、レンズのアクチュエーター制御に伴うレンズ処理負荷の増大により応答時間が長くなっても、適切な周期でレンズデータを取得することができる。また、カメラ本体121と交換レンズ120の接合部分の経年劣化や個体差に伴う接触抵抗の増加に伴い通信不良によるデータ欠損が生じても、レンズデータを安定的に取得することが可能となる。
【0080】
[第四実施形態]
第三実施形態では、図17C(CASE3)、図17D(CASE4)について説明したように、レンズデータを取得できないフレームにおけるレンズデータを前後のフレームのレンズデータで補間する方法を説明した。CASE3では、映像とレンズデータの紐づけを行うために、CASE1のタイミングに対して2フレーム遅延して映像信号が記録/外部出力される。さらに、CASE4では、レンズデータを取得できないタイミングが2フレーム連続するような場合、CASE1のタイミングに対して4フレーム遅延して映像信号が記録/外部出力される。レンズデータが取得できないタイミングのフレームの数がさらに延びるような状況となると、映像信号が記録/外部出力されるタイミングがさらに遅れることは明白である。
【0081】
VFX撮影では、撮影者が合成された映像をリアルタイムに確認しながらカメラワークを行うことが想定される。そのような場合、映像遅延があると、パンニングやチルティング、ズーミングによる画角合わせ、フォーカス調整などの操作を行う際に操作しにくくなり、作業に支障が出る可能性がある。第四実施形態ではこのような課題が解決され得る。以下、図18A図18Cを参照して、第四実施形態による映像出力処理を説明する。第四実施形態では、以下のCASE5~CASE7について説明する。なお、以下の説明における図中の記号等の意味は第三実施形態の図17A図17Dにて説明したCASE1~CASE4と同じであり、違いがある部分のみ説明する。
CASE5:通信時間がフレームレートよりも長い場合の基本処理
CASE6:外部出力データを最新のレンズデータのコピーで補う場合
CASE7:外部出力データをレンズデータの予測で補う場合。
【0082】
CASE5~CASE7では、第三実施形態における映像信号の記録/外部出力とレンズデータの記録/外部出力の処理を、映像信号の記録、映像信号の外部出力、レンズデータの記録、レンズデータの外部出力に分割している。これにより、記録映像と外部出力映像のフレームタイミングを異ならせることができ、記録用、外部出力用のそれぞれに適した処理が行えるようになる。
【0083】
図18Aに示されるCASE5では、合計通信時間(全レンズデータの実通信時間と記録処理時間の合計時間)が1フレーム内に収まらない場合の処理例が示されている。CASE5では、レンズデータを取得できないフレームのレンズデータを、レンズデータを取得できる前後のフレームのレンズデータで補間する。CASE5は、通信時間が2フレーム内に収まっている例である。CASE5では、フレーム[1]のレンズデータ[1]はフレーム[2]の映像信号を取得している間に終了するため、レンズデータ[1]を記録できるタイミングはフレーム[3]の処理が開始した以降のタイミングとなる。記録される映像信号とレンズデータは、ポストプロダクションにおいて、実写映像に対してCGを合成する処理を行うことが前提となる。そのため、同じタイミングのフレームとレンズデータが紐づいて記録されていることが望ましい。したがって、第三実施形態のCASE3(図17C)と同様に、フレーム[1]のレンズデータが記録できるタイミングまで映像信号の記録を遅延させ、映像信号とレンズデータとを同期して記録する。
【0084】
一方で、外部出力用の映像信号は、画角合わせやピント合わせなどのカメラワークに利用されることが多く、映像の遅延が作業を阻害する要因となる。したがって、本実施形態では、外部出力に出力する映像データは遅延なく出力させる。具体的には、フレーム[1]の処理が完了しているフレーム[2]の処理中に、フレーム[1]の映像信号を外部I/F部113に送信することで、接続されている外部モニター等に遅延の少ない表示をさせる。また、フレーム[1]に同期させるレンズデータには、フレーム[2]の処理時点で取得できている最新のレンズデータ(フレーム[1]よりも前のフレームのレンズデータ)が使用される。
【0085】
上記の処理により、記録される映像情報及びレンズデータはフレーム同期したデータとなっており、ポストプロダクションに適したデータとなっている。一方で、出力されるデータは遅延の少ない映像となっているため、画角合わせや、フォーカス調整などの操作への影響を抑えつつ、リアルタイムのCG合成も可能となる。
【0086】
図18Bに示されるCASE6は、レンズデータの取得が2フレーム内にも収まらない場合の例である。CASE6では、レンズデータの取得が3フレーム内に収まっており、CASE4(図17D)と同様に、フレーム[2]及びフレーム[3]に関連して記録されるレンズデータは、フレーム[1]とフレーム[4]のレンズデータを用いて補間される。そのため、フレーム[4]のレンズデータが取得できるまでフレーム[2]の映像信号を記録するタイミングを遅延させることにより、映像信号とレンズデータとが同期して記録される。一方、外部出力では、例えばフレーム[3]の外部出力は、フレーム[3]の処理が完了しているフレーム[4]の処理中に実行される。すなわち、フレーム[3]の映像信号は、フレーム[4]の処理中に外部I/F部113に送信され、接続されている外部モニター等に表示される。また、フレーム[3]に同期させるレンズデータには、フレーム[3]の処理時点で取得される最新のレンズデータであるフレーム[1]のレンズデータが使用される。次に、フレーム[4]の処理が完了してフレーム[5]の処理中に、フレーム[4]の映像信号が外部I/F部113に送信される。また、フレーム[4]の映像信号に同期させるレンズデータとして、フレーム[4]を処理している時点で取得できている最新のレンズデータであるフレーム[2]のレンズデータのコピーが使用される。
【0087】
上記の処理により、レンズデータの取得が遅れるような状況においても、記録される映像情報とレンズデータではフレーム同期がとれており、レンズデータを補間していることによる、より正確なレンズデータとなっている映像が記録される。一方で、外部出力の対象となる映像フレームとともに出力されるメタデータは、当該メタデータの生成時において前記定期通信により受信済みとなっているレンズデータに基づいて(受信済みとなっているレンズデータの流用により)生成される。このため、外部出力される映像は遅延の少ない映像とすることができ、画角合わせや、フォーカス調整などの操作への影響を抑えつつ、リアルタイムのCG合成も可能となる。
【0088】
図18Cに示されるCASE7は、CASE6と同様に2フレーム内にも収まっていない場合の例であり、外部出力される映像に紐づけられているレンズデータの正確性をさらに向上させる方法を示している。CASE5、6においては、外部出力に紐づけるレンズデータには、その時点で取得できている最新のレンズデータのコピーが用いられている。レンズデータのコピーが用いられる場合、映像のフレームの内容は更新されるがメタデータは更新されない。このため、外部出力でリアルタイムに合成しているCGがある場合には、実写映像とのズレが発生し違和感のある映像になる可能性がある。CASE7ではこのような課題を解決する動作例が示される。
【0089】
CASE7において、映像信号とレンズデータを同期させて記録する処理についてはCASE6と同様である。一方、例えばフレーム[3]の処理が完了しているフレーム[4]の処理中に、フレーム[3]の映像信号を外部I/F部113に送信することで、フレーム[3]の映像信号が外部出力される。外部出力された映像信号は接続されている外部モニター等に表示させることができる。システム制御部109は、フレーム[3]に同期して外部出力するレンズデータを、フレーム[3]の処理中に取得できている最新のレンズデータ(フレーム[1]のレンズデータ)とそれ以前に取得できているレンズデータから外挿することにより予測する。外挿の方法としては、単純な線形予測が用いられても良いし、レンズの特徴からの2次以上の次数での近似が用いられてもよい。また、予測に用いられるフレーム数は、いくつであってもよい。さらに、カルマンフィルタなどを用いて撮影者のレンズ操作を予測することによって、レンズデータを求めてもよい。
【0090】
上記の処理により、レンズデータの取得が遅れるような状況においても、記録される映像とレンズデータのフレーム同期がとれており、レンズデータを補間していることによるより正確なレンズ情報となっている映像が記録される。さらに、外部出力の対象となる映像フレームとともに出力されるメタデータは、当該メタデータの生成時において前記定期通信により受信済みとなっているレンズデータに基づく予測、補間により生成される。結果、外部出力される映像は遅延の少ない映像となっていることに加え、レンズデータも予測された情報となるため、画角合わせや、フォーカス調整などの操作への影響を抑えつつ、リアルタイムのCG合成のマッチング精度も向上する。
【0091】
また第3、第4の実施形態によれば、レンズ交換可能な撮像装置において、レンズの通信処理能力と撮像装置処理能力に応じた適切な頻度でレンズと通信可能になる。
【0092】
なお、上述した各実施形態においては、本発明をデジタルカメラに適用した場合を例にして説明したが、これはこの例に限定されない。すなわち、本発明は、撮像素子が付随したあらゆるデバイスに適用してもよい。すなわち携帯電話端末や携帯型の画像ビューワ、カメラを備えるテレビ、デジタルフォトフレーム、音楽プレーヤー、ゲーム機、電子ブックリーダーなど、画像を撮像可能な装置であれば、本発明は適用可能である。また、上述した各実施形態において動画を再生する構成に関する発明については、画像を撮像する機能を持たない画像処理装置に対しても適用可能である。
【0093】
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0094】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0095】
100:撮像装置、120:交換レンズ、121:カメラ本体、109:システム制御部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17A
図17B
図17C
図17D
図18A
図18B
図18C