(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024180460
(43)【公開日】2024-12-26
(54)【発明の名称】画像処理装置、画像処理方法、及びコンピュータプログラム
(51)【国際特許分類】
H04N 23/60 20230101AFI20241219BHJP
H04N 23/54 20230101ALI20241219BHJP
【FI】
H04N23/60 300
H04N23/54
【審査請求】未請求
【請求項の数】23
【出願形態】OL
(21)【出願番号】P 2024177018
(22)【出願日】2024-10-09
(62)【分割の表示】P 2022001906の分割
【原出願日】2022-01-07
(71)【出願人】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100114775
【弁理士】
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【弁理士】
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100208580
【弁理士】
【氏名又は名称】三好 玲奈
(72)【発明者】
【氏名】北村 和也
(72)【発明者】
【氏名】西田 徳朗
(72)【発明者】
【氏名】中村 廣輝
(72)【発明者】
【氏名】長谷川 啓行
(72)【発明者】
【氏名】竹内 健悟
(57)【要約】
【課題】画像合成などに利用可能な距離情報等を外部に出力するのに適した画像処理装置を提供する
【解決手段】画像処理装置において、レンズユニットを介して被写体を含む画像を取得する画像取得手段と、前記被写体までの距離を示す距離情報を取得する距離情報取得手段と、前記距離情報に関する補助データを生成する補助データ生成手段と、前記画像と前記距離情報と前記補助データとを重畳したデータストリームを生成するデータストリーム生成手段と、前記データストリームを外部に出力する出力手段と、を有する。
【選択図】
図10
【特許請求の範囲】
【請求項1】
レンズユニットを介して被写体を含む画像を取得する画像取得手段と、
前記被写体までの距離を示す距離情報を取得する距離情報取得手段と、
前記距離情報に関する補助データを生成する補助データ生成手段と、
前記画像と前記距離情報と前記補助データとを重畳したデータストリームを生成するデータストリーム生成手段と、
前記データストリームを外部に出力する出力手段と、
を有することを特徴とする画像処理装置。
【請求項2】
前記画像取得手段は、前記レンズユニットの異なる瞳領域を通過する光束をそれぞれ受光する複数の光電変換部が画素毎に配置された撮像素子を含み、
前記複数の光電変換部の出力の位相差に基づき前記距離情報を取得可能であることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記複数の光電変換部の出力を加算することによって前記画像を取得することを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記データストリーム生成手段は、前記距離情報を複数のデータストリームに分割重畳することを特徴とする請求項1~3のいずれか1項に記載の画像処理装置。
【請求項5】
前記データストリーム生成手段は、前記距離情報を輝度のデータストリームに重畳することを特徴とする請求項1~3のいずれか1項に記載の画像処理装置。
【請求項6】
前記データストリーム生成手段は、前記距離情報を色のデータストリームに重畳することを特徴とする請求項1~3のいずれか1項に記載の画像処理装置。
【請求項7】
前記データストリーム生成手段は、前記距離情報をアルファチャネルのデータストリームに重畳することを特徴とする請求項1に記載の画像処理装置。
【請求項8】
前記距離情報を複数のデータストリームに分割重畳するか、1つのデータストリームに重畳するかを選択可能な選択手段を有することを特徴とする請求項1~3のいずれか1項に記載の画像処理装置。
【請求項9】
前記選択手段は、前記距離情報を輝度のデータストリームに重畳するか、前記距離情報を色のデータストリームに重畳するかを選択可能であることを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記選択手段は、前記距離情報をアルファチャネルのデータストリームに重畳するか否かを選択可能であることを特徴とする請求項8又は9に記載の画像処理装置。
【請求項11】
前記距離情報の有効ビット数を選択可能な有効ビット数選択手段を有することを特徴とする請求項1~10のいずれか1項に記載の画像処理装置。
【請求項12】
前記データストリーム生成手段は、有効ビット数の前記距離情報の上位ビットを重畳し、下位ビットには0を重畳することを特徴とする請求項1~11のいずれか1項に記載の画像処理装置。
【請求項13】
前記補助データは、画像処理装置の設定データ又は状態に関するデータを含むことを特徴とする請求項1~12のいずれか1項に記載の画像処理装置。
【請求項14】
前記補助データは、前記レンズユニットに関するレンズ情報を含むことを特徴とする請求項1~13のいずれか1項に記載の画像処理装置。
【請求項15】
前記レンズ情報は、焦点距離、合焦位置、絞り情報の少なくとも一つを含むことを特徴とする請求項14に記載の画像処理装置。
【請求項16】
前記補助データは、前記画像と前記距離情報との同期をとるためのデータを含むことを特徴とする請求項1~15のいずれか1項に記載の画像処理装置。
【請求項17】
前記補助データは、前記距離情報の属性を示すデータを含むことを特徴とする請求項1~16のいずれか1項に記載の画像処理装置。
【請求項18】
前記補助データは、前記データストリームのデータ構造に関する情報を含むことを特徴とする請求項1~17のいずれか1項に記載の画像処理装置。
【請求項19】
前記出力手段は、SDIを用いて出力を行うことを特徴とする請求項1~18のいずれか1項に記載の画像処理装置。
【請求項20】
前記データストリームは静止画データを含むことを特徴とする請求項1~19のいずれか1項に記載の画像処理装置。
【請求項21】
前記データストリーム生成手段は、前記重畳を多重化又は混合によって行うことを特徴とする請求項1~20のいずれか1項に記載の画像処理装置。
【請求項22】
レンズユニットを介して被写体を含む画像を取得する画像取得ステップと、
前記被写体までの距離を示す距離情報を取得する距離情報取得ステップと、
前記距離情報に関する補助データを生成する補助データ生成ステップと、
前記画像と前記距離情報と前記補助データとを重畳したデータストリームを生成するデータストリーム生成ステップと、
前記データストリームを外部に出力する出力ステップと、を有することを特徴とした画像処理方法。
【請求項23】
請求項1~21のいずれか1項に記載の画像処理装置の各手段をコンピュータにより制御するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法、及びコンピュータプログラム等に関する。
【背景技術】
【0002】
現在、映画やテレビで一般的に用いられている画像合成技術として、画像の特定の色の部分を透明にし、そこに異なる画像を合成するクロマキー合成という方法がある。クロマキー合成用の画像を撮影する際には、グリーンバックやブルーバックといった特定色の背景を用意する必要があり、その背景に色むらができないように皺を伸ばし、照明を調整するといった作業も必要となる。又、グリーンバックからの反射光が被写体に映り込むと背景分離が上手くできなくなる場合がある。従って、撮影後の後処理で反射光の映り込みを消すなどの作業が必要となる場合もある。
【0003】
一方、近年用いられている画像合成技術として、被写体までの距離情報を使用することで被写体と背景との分離を行い、被写体を別の画像と合成する方法がある。この方法を用いると、グリーンバックなどの背景を準備する必要がなくなり、前述したクロマキー合成のための煩雑な作業も不要となる。
【0004】
被写体までの距離情報を作成するための方法としては、例えば、画像撮影用の撮像装置とは別に、距離センサを備えた装置を用いて被写体までの距離を測定する方法がある。その場合、夫々の装置で画角や解像度が異なるため、後処理で画像合成を行うために、撮影前にキャリブレーション作業を行う必要が生じる。
【0005】
一方、特許文献1に記載されているように、撮像面位相差方式の測距機能を有した撮像素子を用いることで、撮像装置から被写体までの距離を示す距離情報を生成する技術が開示されている。この技術を用いると、1つの撮像素子で画像撮影と距離情報の生成を同時に行うことができるため、上述したキャリブレーション作業は不要となる。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら特許文献1では、後処理で画像合成などを行うために、距離情報をどのように出力するべきかについては考慮されていない。
【0008】
本発明はこのような状況を鑑みてなされたものであり、画像合成などに利用可能な距離情報等を外部に出力するのに適した画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本発明の画像処理装置は、
レンズユニットを介して被写体を含む画像を取得する画像取得手段と、
前記被写体までの距離を示す距離情報を取得する距離情報取得手段と、
前記距離情報に関する補助データを生成する補助データ生成手段と、
前記画像と前記距離情報と前記補助データとを重畳したデータストリームを生成するデータストリーム生成手段と、
前記データストリームを外部に出力する出力手段と、
を有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、画像合成などに利用可能な距離情報等を外部に出力するのに適した画像処理装置を実現することが可能となる。
【図面の簡単な説明】
【0011】
【
図1】実施例1に係る画像処理装置のブロック図である。
【
図2】(A)は、撮像素子の受光面に配置されたカラーフィルタ例を示す図、((B)は、
図2(A)のカラーフィルタの配列に対応させて、各画素に光電変換部(フォトダイオード)を2つ配置した例を示す図である。
【
図3】実施例1に係る距離情報の生成処理を説明するためのフローチャートである。
【
図4】ノイズが存在しない理想的な状態において、一対の画像信号列の相関が高い場合の式(1)の演算結果を示す図である。
【
図5】ノイズが存在する微小ブロックに式(1)を適用した場合の演算結果を示す図である。
【
図6】実施例1におけるSDIのデータ構造を説明する図である。
【
図7】実施例1における距離情報の重畳例を示す図である。
【
図8】実施例1においてブランキング領域に重畳されるアンシラリデータのパケット構造を示す図である。
【
図9】実施例1におけるストリーム生成処理のフローチャートである。
【
図10】実施例2における、ディスプレイで視認しやすいように距離情報を出力する処理例を示すフローチャートである。
【
図11】実施例2における距離情報の重畳例を示す図である。
【
図12】実施例2における距離情報の表示例を示す図である。
【
図13】実施例2における距離情報の他の重畳例を示す図である。
【
図14】実施例3におけるSDIのデータ構造を説明する図である。
【
図15】実施例3におけるストリーム生成処理のフローチャートである。
【
図16】実施例3における距離情報の重畳例を示す図である。
【
図17】実施例4における距離情報の出力モード選択処理の例を示すフローチャートである。
【
図18】実施例5における距離情報の出力モード選択処理の例を示すフローチャートである。
【
図19】実施例5における高精度距離情報出力モードでの距離情報の重畳例を示す図である。
【
図20】実施例5におけるグレースケール出力モードでの距離情報の重畳例を示す図である。
【
図21】実施例5における距離情報の表示例を示す図である。
【
図22】実施例5におけるヒートマップ出力モードでの距離情報の重畳例を示す図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して本発明の実施形態を実施例を用いて説明する。ただし、本発明は以下の実施形態や実施例に限定されるものではない。なお、各図において、同一の部材又は要素については同一の参照番号を付し、重複する説明は省略又は簡略化する。
【0013】
又、実施例においては、画像処理装置としてデジタルカメラに適用した例について説明する。しかし、画像処理装置はネットワークカメラ、カメラ付きのスマートフォン、カメラ付きのタブレットコンピュータ、車載カメラ、ドローンカメラ、ロボットに搭載されたカメラなどの撮像機能を有する電子機器等を含む。
尚、実施例における画像は静止画だけでなく、動画等の映像を含む。
【0014】
<実施例1>
図1は、実施例1に係る画像処理装置のブロック図である。同図において、画像処理装置100は、画像の入力から出力、更に記録まで可能な装置であり、例えばデジタルカメラとして構成されている。
【0015】
図1において、内部バス101に対してコンピュータとしてのCPU102、ROM103、RAM104、画像処理部105、レンズユニット106、撮像部107、ネットワークモジュール108、画像出力部109が接続されている。又、内部バス101に対して記録媒体I/F(インターフェース)110、物体検出部115等が接続されている。内部バス101に接続される各ブロックは、内部バス101を介して互いにデータのやりとりを行うことができるように構成されている。
【0016】
尚、
図1に示されるブロックの一部は、画像処理装置に含まれるコンピュータとしてのCPUに、記憶媒体としてのROMなどのメモリに記憶されたコンピュータプログラムを実行させることによって実現されている。しかし、それらの一部又は全部をハードウェアで実現するようにしても構わない。ハードウェアとしては、専用回路(ASIC)やプロセッサ(リコンフィギュラブルプロセッサ、DSP)などを用いることができる。又、
図1に示される夫々のブロックは、同じ筐体に内蔵されていなくても良く、互いに信号路を介して接続された別々の装置により構成しても良い。
【0017】
レンズユニット106は、ズームレンズ、フォーカスレンズを含むレンズ群や絞り機構及び駆動モータ等から成るユニットである。レンズユニット106を通過した光学像は、撮像部107の受光面に形成される。撮像部107は被写体を含む画像を取得する画像取得手段として機能しており、CCDイメージセンサやCMOSイメージセンサなどの撮像素子を含む。撮像素子の受光面に形成された光学像は撮像信号に変換され、更にデジタル信号に変換されて出力される。尚、本実施例の撮像素子は像面位相差検出機能を有するセンサでありその詳細については後述する。
【0018】
コンピュータとしてのCPU102は、ROM103に格納されるコンピュータプログラムに従い、RAM104をワークメモリとして用いて、画像処理装置100の各部を制御する。又、ROM103に格納されるコンピュータプログラムに従い、後述の
図3、
図9、
図10、
図15、
図17、
図18のフローチャートの処理を実行する。ROM103は、不揮発性の半導体メモリであり、CPU102を動作させるためのコンピュータプログラムや各種調整パラメータなどが記録されている。
【0019】
RAM104は、揮発性の半導体メモリであり、一般的に、フレームメモリ111に比べて、低速、低容量のものが使用される。フレームメモリ111は、画像信号を一時的に溜めておき、必要な時に読み出すことが可能な半導体メモリである。画像信号は膨大なデータ量であるため、高帯域かつ大容量のものが求められる。ここではDDR4-SDRAM(Dual Data Rate4-Synchronous Dynamic RAM)などを用いる。このフレームメモリ111を使用することで、例えば、時間的に異なる画像を合成したり、必要な領域だけを切り出すなどの処理を行うことが可能となる。
【0020】
画像処理部105は、CPU102の制御に基づいて、撮像部107からのデータ、又はフレームメモリ111や記録媒体112に格納された画像データに対して各種画像処理を施す。画像処理部105が行う画像処理には、画像データの画素補間、符号化処理、圧縮処理、デコード処理、拡大/縮小処理(リサイズ)、ノイズ低減処理、色変換処理などが含まれる。
【0021】
又、画像処理部105は、撮像部107の画素の特性のばらつきを補正したり、欠陥画素の補正、ホワイトバランスの補正、輝度の補正、レンズの特性により発生する歪みや周辺光量落ちの補正などの補正処理を行う。又、画像処理部105は、距離マップを生成するが、その詳細については後述する。尚、画像処理部105は、特定の画像処理を施すための専用の回路ブロックで構成しても良い。又、画像処理の種別によっては画像処理部105を用いずにCPU102がプログラムに従って画像処理を施すことも可能である。
【0022】
画像処理部105における画像処理結果に基づいて、CPU102はレンズユニット106の制御を行い、光学的に画像の拡大や焦点距離、光量を調整する絞りなどの調整を行う。又、レンズ群の一部を、光軸に直交する平面内で移動させることにより、手ブレ補正を行うようにしても良い。113は、機器外部とのインターフェースとして、ユーザの操作を受け付ける操作部であり、操作部113は、メカニカルなボタンやスイッチなどの素子で構成され、電源スイッチ、モード切替スイッチなどを含む。
【0023】
114は、画像を表示するための表示部であり、例えば、画像処理部105で処理された画像や設定メニューや画像処理装置100の動作状況を確認することができる。表示部114は、表示デバイスとしてLCD(Liquid Crystal Display)や有機EL(Electro Luminescence)などの、小型で低消費電力のデバイスを用いる。更に、抵抗膜方式や静電容量方式の薄膜素子などを用いたタッチパネル構造とし、操作部113の一部として利用しても良い。
【0024】
CPU102は、画像処理装置100の設定状態などをユーザに知らせるための文字列や、画像処理装置100の設定をするためのメニューを生成し、画像処理部105で処理された画像に重畳して、表示部114に表示させる。文字情報の他にも、ヒストグラム、ベクトルスコープ、波形モニタ、ゼブラ、ピーキング、フォルスカラーなどのような撮影アシスト表示も重畳することが可能である。
【0025】
109は画像出力部であり、インターフェースとして、SDI(Serial Digital Interface)やHDMI(登録商標)(High Definition Multimedia Interface)などである。或いはDisplay Port(登録商標)などのインターフェースを用いても良い。画像出力部109を介して外部の表示装置(ディスプレイ)などにリアルタイム画像を表示することが可能である。
【0026】
又、画像だけでなくコントロール信号も伝送可能な、ネットワークモジュール108も備えている。ネットワークモジュール108は、画像信号や音声信号の入出力を行うためのインターフェースである。ネットワークモジュール108は、インターネットなどを介して外部装置と通信し、ファイルやコマンドなどの各種データの送受信を行うこともできる。ネットワークモジュール108は無線でも良いし有線でも良い。
【0027】
画像処理装置100は、画像を外部に出力するだけでなく、本体内に記録する機能も備えている。記録媒体112は、画像データや種々の設定データを記録することが可能でな、例えば、HDD(Hard Disc Drive)やSSD(Solid State Drive)などの大容量記憶素子であり、記録媒体I/F110に装着可能となっている。
【0028】
物体検出部115は、物体を検出するためのブロックであり、例えば、ニューラルネットワークを用いたディープラーニングに代表される人工知能を用いて物体検出を行う。ディープラーニングによる物体検出をする場合、CPU102は、ROM103に格納された処理のためのプログラムやSSDやYOLOなどのネットワーク構造や重みパラメータなどを物体検出部115に送信する。
【0029】
尚、SSDはSingle Shot Multibox Detectorの略であり、YOLOはYou Only Look Onceの略である。物体検出部115は、CPU102から得られる各種パラメータに基づいて、画像信号から物体を検出するための処理を行い、処理結果をRAM104に展開する。
【0030】
図2(A)は、撮像素子の受光面に配置されたカラーフィルタ例を示す図である。
図2(A)では、赤(R)、青(B)、緑(Gb、Gr)のベイヤ配列例を示しており、撮像素子は複数の画素が2次元状に配置されており、各画素の前面には
図2(A)のように、R、B、Gb、Grのいずれかのカラーフィルタが配置されている。
図2(A)では2行分のカラーフィルタ配列だけが示されているが、このカラーフィルタ配列が垂直走査方向に2行ずつ繰り返し配置される。
【0031】
又、撮像素子の各画素の前面に配置されたカラーフィルタの前面にはマイクロレンズが配置されると共に、各画素は、水平走査方向に並べて配置された2つの光電変換部(フォトダイオードA、フォトダイオードB)を有する。
【0032】
図2(B)は、
図2(A)のカラーフィルタの配列に対応させて、各画素に光電変換部(フォトダイオード)を2つ配置した例を示す図である。
図2(B)においては、各画素はフォトダイオードAとフォトダイオードBの対により構成され、対である2つのフォトダイオードに対して同じ色のカラーフィルタが配置されている。尚、フォトダイオードA、フォトダイオードBはマイクロレンズを介して、光学系の異なる射出瞳からの光束を夫々受光する。
【0033】
本実施例の撮像素子においては、行方向に並んだ画素の複数のフォトダイオードAからA像信号を取得することができる。同様に、行方向に並んだ画素の複数のフォトダイオードBからB像信号を取得することができる。これらのA像信号とB像信号は位相差検出用の信号として処理される。
【0034】
即ち、例えばCPU102や画像処理部105においてA像信号とB像信号の相関演算を行い、A像信号とB像信号の位相差を検出し、位相差に基づき被写体距離を算出する。即ち、CPU102や画像処理部105は、被写体までの距離を示す距離情報を取得するための距離情報取得手段として機能している。
【0035】
尚、各画素の2つのフォトダイオードA、Bの信号を加算することによって画像用の信号(A像信号+B像信号)も取得でき、この加算した画像用の信号は、
図2(A)に示されるベイヤ配列に応じたカラーの画像信号として画像処理部105で処理される。
【0036】
撮像部107においては、画素毎に位相差検出用信号(A像信号、B像信号)を出力することも可能であるが、近接する複数画素のA像信号を加算平均すると共に、近接する複数画素のB像信号を加算平均した値を出力する事も可能である。加算平均した値を出力することで、撮像部107から信号を読み出す時間の短縮や、内部バス101の帯域削減ができる。
【0037】
このような撮像素子を有する撮像部107からの出力信号を使って、CPU102や画像処理部105が2つの像信号の相関演算を行い、2つの像信号の位相差に基づきデフォーカス量や視差情報、各種信頼性などの情報を算出する。受光面でのデフォーカス量は、A像信号、B像信号のズレ(位相差)に基づき算出される。デフォーカス量は正負の値を持っており、デフォーカス量が正の値であるか負の値であるかによって、前ピンか後ピンかがわかる。
【0038】
又、デフォーカス量の絶対値によって、合焦までの度合いが分かり、デフォーカス量が0であれば合焦である。即ち、CPU102は、デフォーカス量の正負を元に前ピンか後ピンかの情報を算出し、デフォーカス量の絶対値に基づいて、合焦の度合い(ピントズレ量)である合焦度合い情報を算出する。前ピンか後ピンかの情報は、デフォーカス量が所定値を超える場合に出力し、デフォーカス量の絶対値が所定値以内である場合には、合焦であるという情報を出力する。
【0039】
CPU102は、デフォーカス量に応じてレンズユニット106を制御してフォーカス調整を行う。
又、CPU102は、前記位相差情報とレンズユニット106のレンズ情報から三角測量の原理を用いて被写体までの距離を算出する。
【0040】
図2では、1つのマイクロレンズに対して光電変換手段としてのフォトダイオードを2つ配置した画素をアレイ状に並べた例について説明した。しかし、各画素は、1つのマイクロレンズに対して光電変換手段としてのフォトダイオードを3つ以上配置した構成としても良い。又、全ての画素が上記のような構成でなくても良く、例えば2次元状に配置された画像検出用の複数の画素の中に、距離検出用の画素を離散的に配置しても良い。
【0041】
その場合、距離検出用の画素は上記のような2つのフォトダイオードを有する構造としても良いし、或いは距離検出用の各画素はフォトダイオードA、フォトダイオードBの一方だけを有する構造としても良い。フォトダイオードA、フォトダイオードBの一方だけを有する場合には、フォトダイオードA、フォトダイオードBはレンズユニットの異なる瞳領域(射出瞳)の像が入射するように配置する。或いは一方の光束を遮光する。このように、本実施例の撮像部107は、A像信号とB像信号などの位相差検出可能な2つの像信号が得られる構成になっていれば良く、上記のような画素構造に限定されない。又、撮像部107は視差を有する2つの撮像素子からなる所謂ステレオカメラであっても良い。
【0042】
次に
図3~
図5を用いて距離情報の生成処理を説明する。
図3は、実施例1に係る距離情報の生成処理を説明するためのフローチャートである。
尚、コンピュータとしてのCPU102が記憶媒体としてのROM103などに記憶されたコンピュータプログラムを実行することによって
図3のフローチャートの各ステップの動作が行われる。
【0043】
図3のフローチャートにおいて、先ず、ステップS300で、撮像部107から、撮像用の(A像信号+B像信号)と位相差検出用のA像信号の2つの信号を夫々読出すことで取得する。
次いでステップS301で、画像処理部105は、(A像信号+B像信号)とA像信号の差を求めることで位相差検出用のB像信号を算出する。
【0044】
尚、上記のステップS300とステップS301では(A像信号+B像信号)とA像信号を読出して差を演算することによりB信号を算出する例を説明した。しかし、A像信号とB像信号を夫々撮像部107から読出すようにしても良い。又、ステレオカメラのようにイメージセンサを2つ具備している場合においては夫々のイメージセンサから出力される画像信号をA像信号及びB像信号としても処理すれば良い。
【0045】
ステップS302では、位相差検出用のA像信号と位相差検出用のB像信号の夫々について光学的なシェーディングの補正を行う。
ステップS303では、位相差検出用のA像信号と位相差検出用のB像信号の夫々にフィルタ処理を行う。例えば、FIRで構成されたハイパスフィルタで低域をカットする。尚、フィルタ係数を変えたバンドパスフィルタやローパスフィルタを夫々通しても良い。
【0046】
次に、ステップS304で、ステップS303でフィルタ処理を行った位相差検出用のA像信号と位相差検出用のB像信号に対して微小ブロックに分割し相関演算を行う。尚、微小ブロックのサイズ又は形状についての制限はなく、近接するブロック同士で領域が重なっても良い。
【0047】
以下、一対の画像であるA像信号、B像信号の相関演算について説明する。着目画素位置におけるA像信号の信号列をE(1)~E(m)と表記し、着目画素位置におけるB像信号の信号列をF(1)~F(m)と表記する。A像信号の信号列E(1)~E(m)に対して、B像信号の信号列F(1)~F(m)を相対的にずらしながら、式(1)を用いて2つの信号列間のずれ量kにおける相関量C(k)が演算される。
【0048】
【数1】
式(1)において、Σ演算はnについて総和を算出する演算を意味する。Σ演算において、n、n+kの取る範囲は、1からmの範囲に限定される。ずれ量kは整数値であり、一対のデータの検出ピッチを単位とした相対的シフト量である。
【0049】
図4は、ノイズが存在しない理想的な状態において、一対の画像信号列の相関が高い場合の式(1)の演算結果を示す図である。
図4に示すように、一対の画像信号列の相関が高いずれ量(k=kj=0)において、差分である相関量C(k)は最小になる。以下、離散的な相関量C(k)が最小となるときのkを、kjと表記する。式(2)から(4)に示す3点内挿処理によって、連続的な相関量に対する最小値C(x)を与えるシフト量xが算出される。尚、シフト量xは実数値であり、単位をpixelとする。
【0050】
【0051】
式(4)のSLOPは、最小かつ極小となる相関量と、その隣接する相関量における変化の傾きを表す。
図4において、具体例として、
C(kj)=C(0)=1000
C(kj-1)=C(-1)=1700
C(kj+1)=C(1)=1830
とする。
【0052】
この例では、kj=0である。式(2)から(4)より、
SLOP=830
x=-0.078pixel
となる。
尚、合焦状態の場合、A像の信号列とB像の信号列に対するシフト量xは0.00が理想値である。
【0053】
一方、
図5は、ノイズが存在する微小ブロックに式(1)を適用した場合の演算結果を示す図である。
図5に示すように、ランダムに分布しているノイズの影響により、A像の信号列とB像の信号列との相関が低下する。相関量C(k)の最小値は、
図4に示す最小値に比べて大きくなり、相関量の曲線は全体的に平坦な形状(最大値と最小値との差分絶対値が小さい形状)となる。
【0054】
図5において、具体例として、
C(kj)=C(0)=1300
C(kj-1)=C(-1)=1480
C(kj+1)=C(1)=1800
とする。
【0055】
この例では、kj=0である。式(2)から式(4)より、
SLOP=500
x=-0.32pixel
となる。
即ち、
図4に示すノイズが存在しない状態での演算結果と比べて、シフト量xが理想値から離れている。
【0056】
一対の画像信号系列間の相関が低い場合、相関量C(k)の変化量が小さくなり、相関量の曲線は全体的に平坦な形状となるため、SLOPの値が小さくなる。又、被写体像が低コントラストである場合にも、同様に一対の画像信号系列間の相関が低くなり、相関量の曲線が平坦な形状となる。この性質に基づき、算出されたシフト量xの信頼性をSLOPの値で判断することができる。即ち、SLOPの値が大きい場合には、一対の画像信号系列間の相関が高く、又、SLOPの値が小さい場合には、一対の画像信号系列間に有意な相関が得られなかったと判断することができる。
【0057】
尚、本実施例では、相関演算に式(1)を用いたため、一対の画像信号系列の相関が最も高いずれ量において相関量C(k)が最小かつ極小となる。しかし、一対の画像信号系列の相関が最も高いずれ量において相関量C(k)が最大かつ極大となる相関演算法を用いても良い。
【0058】
次にステップS305では信頼度を算出する。前述したようにステップS304で算出したSLOPの値を信頼度と定義する。
次にステップS306で補間処理を行う。ステップS304で相関演算を行えたがステップS305で算出した信頼性が低いためにシフト量として採用できない場合がある。
【0059】
その場合には、周囲の画素で算出されたシフト量から補間する。補間方法としてはメディアンフィルタを掛けても良いし、シフト量のデータを縮小した後に再度拡大する演算をしても良い。又、撮像用の(A像信号+B像信号)から色データを抽出し、色データを用いてシフト量を補間しても良い。
【0060】
次にステップS307で、ステップS304で算出されたシフト量xを参照してデフォーカス量を計算する。具体的には、デフォーカス量(DEFと記す)を下記式(5)で求めることができる。
【数5】
式(5)において、Pは検出ピッチ(画素配置ピッチ)と一対の視差画像における左右2つの視点の投影中心の距離とによって決まる変換係数であり、単位はmm/pixelである。
【0061】
次に、ステップS308で、ステップS307で算出したデフォーカス量から距離を算出する。被写体までの距離をDa、焦点位置をDb、焦点距離をFとしたときに近似的に以下の式(6)が成り立つ。
【0062】
【数6】
従って、被写体までの距離Daは式(7)となる。
【数7】
【0063】
従って、DEF=0のときのDbをDb0とすると式(7)は以下の式(8)
【数8】
となり被写体までの絶対距離を求めることができる。
【0064】
一方、相対距離はDa-Da’となるので式(7)と式(8)より以下の式(9)で求めることができる。
【数9】
【0065】
以上のように、
図3のフローチャートに従って相関演算を行えば、位相差検出用のA像信号と位相差検出用のB像信号からシフト量、デフォーカス量、距離データ等の距離情報を算出することができる。即ち、複数の光電変換部の出力の位相差に基づき距離情報を取得可能である。尚、本実施例における距離情報は、距離データ自体であっても良いし、シフト量やデフォーカス量であっても良く、距離情報はそれらを含むものである。
【0066】
本実施例では、上記のようにして算出した距離情報と、距離情報に関する補助データ等を重畳してデータストリームを生成し、出力手段としての画像出力部109を介して外部に出力している。それによって、高精度なCG(コンピュータグラフィクス)画像の合成等を外部装置で精度良く、効率的に行うことができる。尚、補助データの詳細については後述する。
以下、本実施例では、上記の距離情報と、距離情報に関する補助データを、SDIの伝送規格を利用して外部に出力するための方法の例について説明する。尚、SDIの伝送規格には禁止コードが存在するため、本実施例では、禁止コードにならないように距離情報の一部を変換してから重畳している。
【0067】
先ず、
図6を用いて、フレームレートが29.97fps、水平解像度が1920、垂直解像度が1080の場合のHD-SDIのデータストリームの構造を説明する。尚、HD-SDIのデータストリームはSMPTEST292-1で規定されている。
【0068】
図6は、実施例1におけるSDIのデータ構造を説明する図であり、1ライン分のデータストリームを、1ワードが10ビットの2つのデータストリームに分けて示している。1フレームでは、このデータストリームが1125ラインある。Y(輝度)ストリーム及びC(色)ストリームは、1ワードが10ビットで2200ワードで構成される。
【0069】
データは1920ワード目から画像信号の区切り位置を認識するための識別子EAV(End of Active Video)が重畳され、続いて、LN(Line Number)及び伝送エラーチェック用のデータであるCRCC(Cycle Redundancy Check Code)が重畳される。
【0070】
そして、アンシラリデータ(補助データ)を重畳して良いデータ領域(以下、ブランキング領域と記す)が268ワード続き、その後、EAVと同様に画像信号の区切り位置を認識するための識別子SAV(Start of Active Video)が重畳される。そして、Yデータ(輝度データ)及びCデータ(色データ)が1920ワード分重畳されて伝送される。フレームレートが変わると1ラインのワード数が変わるため、ブランキング領域のワード数が変わる。
【0071】
次に、
図7を用いて、本実施例における距離情報の重畳処理について説明する。
図7は、実施例1における距離情報の重畳例を示す図であり、
図6におけるYデータ及びCデータの重畳位置において、各ワード毎にどのように距離情報を重畳するかを示している。
【0072】
図7は、
図3のステップS308において、Yデータに重畳する距離情報としてD[17]~D[9]、Cデータに重畳する距離情報としてD[8]~D[0]までの合計18ビットの高精度距離情報が各画素毎に算出されている場合の例を示している。又、距離情報を複数のデータストリームに分割重畳している。
【0073】
SDIの伝送規格においては、0、1、2、3及び1020、1021、1022、1023が禁止コードとなっている。そこで、
図7のように、Y[9]の位置にD[17]を反転した値“D[17]を重畳し、Y[8]からY[0]の位置にD[17]からD[9]の値を重畳する。又、C[9]の位置にD[8]を反転した値”D[8]を重畳し、C[8]からC[0]の位置にD[8]からD[0]の値を重畳することで、禁止コードにならないように距離情報を変換して重畳している。
【0074】
ここでは距離情報が18ビットである高精度距離情報の場合の例を示したが、距離情報のビット深度は18ビット以下でもよい。その場合も同様に、Y[9]の位置に重畳する値としてY[8]の位置に重畳する値を反転した値を用い、C[9]の位置に重畳する値としてC[8]の位置に重畳する値を反転した値を用いる。それにより、禁止コードにならないように距離情報を重畳することができる。
【0075】
尚、前述のように、本実施例では距離情報に各種の補助データをメタデータとして付帯させて出力している。例えば、外部装置においてCG画像合成などの後処理をする際に、距離情報を精度良く利用するには、補助データ(アンシラリデータ)として、例えば画像処理装置の各種設定データや状態に関するデータを取得できることが望ましい。ここで、画像処理装置の各種設定データは例えば露出設定情報などを含み、画像処理装置の状態に関するデータは画像処理装置の例えば傾き等のデータを含む。
【0076】
更に又、補助データには、レンズユニット106に関するレンズ情報(例えばレンズユニット106の焦点距離、合焦位置、絞り情報の少なくとも一つ)を含めることが望ましい。
更に又、補助データには、撮像画像と距離情報との同期をとるためのデータ(例えばタイムコード)、距離情報の算出を行う前に行っている各種補正処理の有無を示す情報を含めることが望ましい。
【0077】
又、距離情報の属性を示すデータも含めることが望ましい。ここで距離情報の属性とは、例えば距離情報が距離データ自体なのか、デフォーカス情報なのか、シフト量データなのかを示す情報も含む。尚、距離情報としてデフォーカス情報を出力する場合は、デフォーカス量から被写体距離を算出するためにレンズユニットの焦点距離の情報が補助データとして必要となる。又、距離情報としてシフト量を出力する場合にはずれ量kの情報も補助データとして必要となる。
【0078】
又、距離情報の属性は、距離情報の有効ビット数(ビット深度)や距離情報の単位、距離情報が絶対距離か相対距離かを示す情報、距離情報が小数点を含む場合は何ビット以下が小数点以下なのかなどの情報を含む。
又、距離情報の属性は、その距離情報が相対距離の場合にその距離情報が符号付きか否かを示す情報、距離情報の1LSBが何cmかを示す情報、相対距離で符号付き表現でない場合に合焦位置の距離を示す情報を含む。
【0079】
又、補助データは、最近距離(最も近い被写体までの距離)と最遠距離(最も遠い被写体までの距離)の値、測距可能な分解能などの情報を含むことが望ましい。
更に又、補助データとしては、上記のような画像、距離情報、補助データを重畳して画像処理装置100から出力する場合に、重畳されたデータストリームのデータ構造(データフォーマット)に関する情報を含めることが必要である。
【0080】
尚、本実施例における重畳とは多重化(例えば、ブランキング期間等の隙間に挿入)するものでも良いし、データを互いに混合して符号化するものであってもよく、本実施例の重畳はどちらの方法も含む。又、本実施例におけるデータストリームは複数フレームからなる動画データなどのデータストリームに限定されず、たとえば1フレーム分だけの静止画データも含む。
【0081】
そのため、本実施例では、前述のように、距離情報を出力する際に、距離情報以外にも上述した各種情報(以下、補助データ又はアンシラリデータと記す)をメタデータとして付帯して出力する。それにより画像合成などの後処理の精度や効率を向上させることができる。
尚、本実施例では、各種補助データをパケット化し、ブランキング領域に重畳して距離情報と共に出力しているので伝送効率が良い。
【0082】
図8は、実施例1においてブランキング領域に重畳されるアンシラリデータのパケット構造を示す図であり、SMPTE ST 291で規定されている補助データ(アンシラリデータ)を格納するためのパケット構造を示している。
補助データ(アンシラリデータ)は、
図8で示すType2のアンシラリデータパケット(ANC Data packet)の中の、各10ビットで構成されるユーザデータワード(User Data Words)領域に格納する。格納するデータ形式は、情報が値として取得できるものであれば、どのような形式であっても良い。
【0083】
上述した補助データは、このユーザデータワードに格納される。又、アンシラリデータパケットの種類を識別するためのヘッダ領域であるDID(Data ID)とSDID(Secondary Data ID)には、各パケット毎に、伝送しているデータに関する情報であることを示す所定の値を設定する。尚、1つのアンシラリデータパケットには最大255ワードのユーザデータワードを格納することができるが、255ワードまで格納せず、上述した補助データを複数のアンシラリデータパケットに分割して重畳し出力する構成としても良い。
【0084】
次に、
図9は、実施例1におけるストリーム生成処理のフローチャートであり、
図9を用いて、実施例1におけるストリーム生成処理を説明する。尚、コンピュータとしてのCPU102が記憶媒体としてのROM103などに記憶されたコンピュータプログラムをRAM104に展開して実行することによって
図9のフローチャートの各ステップの動作が行われる。
図9において、ステップS901では、CPU102は、SMPTE ST 292-1に従いEAV、LN、CRCCを生成し、重畳する。
【0085】
ステップS902では、CPU102は、上述した各補助データ(アンシラリデータ)を格納したアンシラリデータパケットをブランキング領域に重畳するか判断する。
アンシラリデータパケット毎に重畳位置は異なるため、所定のライン、所定のサンプルタイミングになった場合に、ステップS903において所定のアンシラリデータパケットを重畳する。ここでステップS903は、距離情報に関する補助データを生成する補助データ生成ステップ(補助データ生成手段)として機能している。
【0086】
ステップS904では、アンシラリデータパケットを重畳していないブランキング領域に、画像信号の黒レベルを示すデータを重畳する。黒レベルを示すデータは、例えばYデータが64、Cデータが512のデータである。
ステップS905では、CPU102は、SMPTE ST 292-1に従いSAVを生成し、重畳する。
【0087】
ステップS906では、CPU102は、有効画素データ重畳ラインかどうかを判断する。例えば、プログレッシブの画像であれば42ライン目が有効画素データ重畳ラインの開始ラインであり、有効画素データ重畳ラインは1121ライン目まで続く。インタレースの画像であれば第1フィールドの有効画素データ重畳ラインは21ライン目から560ライン目までであり、第2フィールドの有効画素データは584ライン目から1123ライン目までである。有効画素データ重畳ラインだと判断された場合、ステップS907に進む。一方、有効画素データ重畳ラインでない場合は、CPU102は、ステップS908に進む。
【0088】
ステップS907では、
図7を用いて説明したように距離情報等を重畳する。又、ステップS908では、ステップS904と同様に黒データの重畳を行う。
上述した処理をライン毎に行い、更にSMPTE ST 292-1に規定されているようにデータをシリアライズ(順次化)し出力する出力ステップを実行する。
【0089】
それによって、画像処理装置100は、画像と距離情報と補助データを重畳して画像出力部109を介して外部に出力することができる。ここで、ステップS1301~S1308は、画像と距離情報と補助データとを重畳したデータストリームを生成するデータストリーム生成ステップ(データストリーム生成手段)として機能している。
【0090】
尚、本実施例においては距離情報そのものを出力する例について説明した。しかし、距離情報そのものではなく例えばシフト量を出力すると共に、出力している情報が距離情報ではなくシフト量であることを示す情報と、そのシフト量から距離情報を算出するのに必要な情報とを補助データとして出力しても良い。そうすることで、後処理で距離情報を算出することができる。
【0091】
<実施例2>
実施例1では、画像合成などに必要な距離情報及び補助データを外部に出力することで後処理で画像合成をすることができるが、その出力を外部ディスプレイに接続しても人が距離情報を認識しやすい画像としては表示されない。そこで実施例2では、外部ディスプレイに接続して距離情報の取得状況をユーザが確認しやすいように距離情報を出力する例について説明する。
【0092】
図10は、実施例2における、ディスプレイで視認しやすいように距離情報を出力する処理例を示すフローチャートである。このフローチャートにおける各処理は、CPU102がROM103に格納されたプログラムをRAM104に展開して実行することにより実現される。尚、本実施例において、実施例1と同一又は同様の構成及びステップについては同一の符号を付し、重複した説明は省略する。
【0093】
ステップS1001において、CPU102は、
図3のステップS308において算出された距離情報の上位10ビットにリミット処理を行い禁止コードにならないように変換する。具体的には、距離情報の上位10ビットが0、1、2、3の場合は4にし、1023、1022、1021、1020の場合は1019にする。
【0094】
そしてステップS1002では、
図6におけるYデータの重畳位置において、CPU102が各ワード毎にリミット処理した距離情報の上位10ビット(D’[9]~D’[0])を
図11のように重畳する。
図11は、実施例2における距離情報の重畳例を示す図である。
一方、Cデータの重畳位置においては、例えば最上位ビットであるC[9]の位置に1、それ以外のC[8]からC[0]の位置に0というような固定値を重畳する。
【0095】
以上の処理を行い、SMPTE ST 292-1の規定に従って画像出力部109を介して画像処理装置100が距離情報を出力することで、HD-SDIを受信可能なディスプレイにおいて距離情報を
図12のようにグレースケール表示することができる。
図12は、実施例2における距離情報の表示例を示す図である。
図12に示す例では、距離が近い被写体ほど輝度が高く、距離が遠い被写体ほど輝度が低く表示されている。このように距離情報が輝度の濃淡で表現されるため、ユーザが容易に距離情報の取得状況を視認することができる。
【0096】
尚、本実施例においては、距離情報をYデータの位置に重畳する例について説明したが、ステップS1002において、
図13のように距離情報をCデータの位置に重畳し、固定値をYデータの位置に重畳する構成としてもよい。
図13は、実施例2における距離情報の他の重畳例を示す図である。
図13のように、Cデータの位置に重畳する場合は外部ディスプレイにおいてヒートマップのように色の濃淡で距離情報を表示することができる。
【0097】
ここで、伝送する画像フォーマットがYCbCr422である場合、Cデータに対して1ワード毎にCbとCrを交互に重畳するフォーマットになっている。従って、例えばCbには固定値を重畳し、Crにのみ距離情報を重畳することで、距離情報の水平分解能は半減するが、距離情報が赤色系のグラデーションで外部ディスプレイに表示されるような構成にしても良い。また逆に、Crには固定値を重畳し、Cbにのみ距離情報を重畳することで、距離情報が青色系のグラデーションで外部ディスプレイに表示されるような構成にしても良い。
【0098】
或いは、所定の閾値を設け、距離情報がその閾値を上回る場合にはCbに距離情報、Crに固定値を重畳し、下回る場合にはCrに距離情報、Cbに固定値を重畳するような構成にしても良い。また逆に、距離情報が閾値を上回る場合にはCrに距離情報、Cbに固定値を重畳し、下回る場合にはCbに距離情報、Crに固定値を重畳するような構成にしても良い。
或いは、Yデータ及びCデータの両方の位置に距離情報を重畳する構成としてもよく、その場合、距離情報の値に応じて輝度及び色の両方が変化するように外部ディスプレイに表示される。
【0099】
<実施例3>
実施例1及び実施例2では、従来画像信号を重畳する位置に距離情報を重畳して伝送する方法について説明したが、その場合、距離情報を出力する端子とは別に出力端子を用意する必要がある。そこで実施例3では、1系統の出力端子で画像信号と距離情報及び補助データを出力する例について説明する。
【0100】
図14は、実施例3におけるSDIのデータ構造を説明する図であり、
図14を用いて、フレームレートが29.97fps、水平解像度が1920、垂直解像度が1080の場合の3G-SDIのデータストリームの構造を説明する。尚、3G-SDIのデータストリームはSMPTE ST 425-1で規定されている。
【0101】
図14では、1ライン分のデータストリームを、1ワードが10ビットの4つのデータストリームに分けて示している。1フレームでは、このデータストリームが1125ラインある。Rストリーム、Gストリーム、Bストリーム、Aストリームは、夫々1ワードが10ビットの2200ワードで構成される。Aストリームはアルファチャンネルのデータストリームに相当しており、本実施例では、距離情報をアルファチャンネルのデータストリームであるAストリームに重畳する。
【0102】
データは1920ワード目からEAVが重畳され、続いて、LN及びCRCCが重畳される。そして、ブランキング領域が268ワード続き、SAVが重畳される。そして、R(赤)データ、G(緑)データ、B(青)データ、A(距離情報)データが1920ワード重畳されて伝送される。フレームレートが変わると1ラインのワード数が変わるため、ブランキング領域のワード数が変わる。
【0103】
次に、
図15は、実施例3におけるストリーム生成処理のフローチャートであり、
図16は、実施例3における距離情報の重畳例を示す図である。
図15のフローチャートと
図16の重畳例を用いて、実施例3におけるストリーム生成処理を説明する。このフローチャートにおける各処理は、CPU102がROM103に格納されたプログラムをRAM104に展開して実行することにより実現される。本実施例において、実施例2と同一又は同様の構成及びステップについては同一の符号を付し、重複した説明は省略する。
【0104】
ステップS1501では、
図14におけるA(距離情報)データの重畳位置において、CPU102が各ワード毎にリミット処理した距離情報の上位10ビット(D’[9]~D’[0])を
図16のように重畳する。一方、RGBの各データの重畳位置においては、画像信号をRGBの形式でそのまま重畳する。
【0105】
以上説明した処理を行いSMPTE ST 425-1の規定に従って出力することで、1系統の出力端子で画像信号と距離情報及び補助データを出力することができる。
尚、本実施例においては、画像信号をRGBの形式で重畳する例について説明したが、RGBではなくYCbCrなどの形式で重畳し、Aデータとして
図16のように距離情報を重畳して出力する構成としても良い。
【0106】
<実施例4>
実施例1及び実施例2において、距離情報の出力方法の例について夫々説明したが、それらの方法をユーザが選択し、ユーザ自身の使途に適した出力ができるように画像処理装置100を構成しても良い。そこで実施例4では、各実施例における出力方法を切り替えて出力する例について説明する。
【0107】
図17は、実施例4における距離情報の出力モード選択処理の例を示すフローチャートである。このフローチャートにおける各処理は、CPU102がROM103に格納されたプログラムをRAM104に展開して実行することにより実現される。
【0108】
ユーザが操作部113を操作して不図示の電源部に電源が投入されると、ステップS1701において、CPU102は撮影待機処理を行う。撮影待機処理では、CPU102は、撮像部107で撮像し画像処理部105で画像処理を施した画像や、画像処理装置100の設定をするためのメニューを表示部114に表示する。
【0109】
ステップS1702では、ユーザが表示部114を見ながら、操作部113を操作し、各種設定を行う。CPU102は、上記操作に応じた設定を受け付け、対応する処理を画像処理装置100の各処理部において行う。ここで、ユーザは、選択手段としての操作部113を用いて距離情報の出力モードの設定をすることができる。
【0110】
即ち、ユーザは出力モードとして、例えば高精度距離情報出力モード等の設定を選択することができる。高精度距離情報出力モードは、実施例1で説明したように、距離情報を複数のデータストリームに分割重畳し出力するモードを指す。尚、距離情報をアルファチャンネルのデータストリーム(Aストリーム)に重畳するか否かをユーザが操作部113を用いて選択可能としても良い。
又、ユーザは高精度距離情報出力モード以外の出力モードとして、実施例2で説明したグレースケール表示をするためのグレースケール出力モードか、ヒートマップ表示をするためのヒートマップ出力モードにするかの設定を選択できるものとする。
【0111】
このように本実施例では、選択手段としての操作部113により、距離情報を複数のデータストリームに分割重畳するか、1つのデータストリームに重畳するかを選択可能である。更に又、1つのデータストリームに重畳する場合、距離情報を輝度のデータストリームに重畳するか、色のデータストリームに重畳するかを、操作部113により選択可能である。
【0112】
ステップS1703では、CPU102は、ステップS1702において選択されたモードが高精度距離情報出力モードかを判断する。距離情報を出力するモードが高精度距離情報出力モードの場合、ステップS1704に進み、高精度距離情報出力モードでない場合はステップS1705に進む。
【0113】
ステップS1704では、実施例1で説明した処理を行い、距離情報を出力するモードが高精度距離情報出力モードであることを示す情報と、出力されるデータ構造に関する補助データを、
図7で示したように距離情報に重畳し画像出力部109から出力する。即ち、ステップS1704では、距離情報をY(輝度)データとC(色)データとの複数のデータストリームに分割重畳する。
【0114】
一方、ステップS1705では、CPU102は、ステップS1702において選択されたモードがグレースケール出力モードかヒートマップ出力モードかを判断する。選択されたモードがグレースケール出力モードの場合ステップS1706に進み、ヒートマップ出力モードの場合ステップS1707に進む。
【0115】
ステップS1706では、実施例2で説明した処理を行い、選択されたモードがグレースケール出力モードであることを示す情報と、出力されるデータ構造に関する補助データを、
図11で示したように距離情報に重畳し、画像出力部109から出力する。即ち、ステップS1706では、距離情報を輝度のデータストリームに重畳している。
【0116】
またステップS1707では、実施例2で説明した処理を行い、選択されたモードがヒートマップ出力モードであることを示す情報と、出力されるデータ構造に関する補助データを
図13で示したように距離情報に重畳し、画像出力部109から出力する。即ち、ステップS1707では、距離情報を色のデータストリームに重畳している。
【0117】
以上説明した処理を行うことで、ユーザは、所望の形式で距離情報を出力することができる。尚、本実施例においては、実施例1と実施例2で説明した出力方式を選択して出力する例について説明したが、更に実施例3で説明した出力方式を選択して出力することができるようにしても良い。
【0118】
<実施例5>
実施例1~実施例4において、10ビットもしくは18ビットの距離情報を出力する例について説明した。しかし、例えば後処理の画像合成で行いたい処理が、撮影した複数の被写体間にCG画像を挿入するような処理である場合は、距離情報として10ビットより少ないビット深度の情報を出力した方が後処理を行いやすくなる場合がある。
【0119】
或いは、ビット深度を減らした方が外部ディスプレイに表示した際に視認しやすくなる場合がある。そこで実施例5では、ユーザが操作部113を用いてビット深度(有効ビット数)を変更できるようにし、設定したビット深度に応じた距離情報を出力する例について説明する。
【0120】
図18は、実施例5における距離情報の出力モード選択処理の例を示すフローチャートである。このフローチャートにおける各処理は、CPU102がROM103に格納されたプログラムをRAM104に展開して実行することにより実現される。尚、本実施例において、実施例4と同一又は同様の構成及びステップについては同一の符号を付し、重複した説明は省略する。
【0121】
ステップS1801では、ユーザが表示部114を見ながら、操作部113を操作して距離情報のビット深度(有効ビット数)等の変更をする。CPU102は、上記操作に応じた設定や処理を画像処理装置100の各処理部に対して行う。ここで、操作部113は、距離情報の有効ビット数を選択可能な有効ビット数選択手段として機能している。
【0122】
以下、距離情報の有効ビット数を3ビットに設定した場合の例を説明する。
ステップS1802では、実施例1と同様の処理を行い、距離情報を出力するモードが高精度距離情報出力モードであることを示す補助データと、距離情報の有効ビット数を示す補助データを、
図19で示すような距離情報と重畳する。そして画像出力部109から出力する。
【0123】
図19は、実施例5における高精度距離情報出力モードでの距離情報の重畳例を示す図であり、Y[9]の位置にY[8]の位置に重畳する値を反転した値、C[9]の位置に重畳する値としてC[8]の位置に重畳する値を反転した値を重畳する。そして、Y[8]からY[0]、C[8]からC[0]の位置に、ステップS1801で設定された有効ビット数の距離情報の上位ビットを重畳し、それ以外の下位ビットには0データを重畳する。
【0124】
ステップS1803では、実施例2で説明した処理を行い、選択されたモードがグレースケール出力モードであることを示す補助データと、距離情報の有効ビット数を示す補助データを、
図20で示すように距離情報と重畳し、画像出力部109から出力する。
【0125】
図20は、実施例5におけるグレースケール出力モードでの距離情報の重畳例を示す図である。
図20で示した距離情報D’’は、ステップS1801で設定された有効ビット数の分だけ距離情報の上位ビットを抽出し、それ以外の下位ビットは0データで埋めた上で、ステップS1001で行ったリミット処理と同様の処理を行った値である。
【0126】
図21は、実施例5における距離情報の表示例を示す図であり、ステップS1803で出力した距離情報を外部ディスプレイで受信し表示すると、
図21のように、所定の距離ごとに分けられた複数のレイヤーが、夫々異なる輝度で表現された表示となる。
【0127】
ステップS1804では、実施例2で説明した処理を行い、選択されたモードがヒートマップ出力モードであることを示す補助データと、距離情報の有効ビット数を示す補助データと共に、
図22で示したように距離情報を重畳する。そして、画像出力部109から出力する。
【0128】
ここで、
図22は、実施例5におけるヒートマップ出力モードでの距離情報の重畳例を示す図である。
図22で示した距離情報D’’は、ステップS1801で設定された有効ビット数の分だけ距離情報の上位ビットを抽出し、それ以外の下位ビットは0データで埋めた上で、ステップS1001で行ったリミット処理と同様の処理を行った値である。
【0129】
以上説明したように本実施例における処理を行うことで、ユーザはビット深度を選択して設定することが可能であり、設定されたビット深度に応じた距離情報を出力することができる。
【0130】
尚、以上の実施例では、SMPTE ST 292-1やSMPTE ST 425-1に規定されているフレームレートが29.97fps、水平解像度が1920、垂直解像度が1080の出力フォーマットに距離情報を重畳して出力する例を説明した。しかし、フレームレートや解像度は上記の例に限らず、又、他の出力フォーマットに距離情報を重畳して出力しても良い。
【0131】
又、上述した各実施例においては、伝送路が1本である場合を説明したが、これに限らず、伝送路を複数用意し、画像とは別の伝送路を用いて距離情報のデータを出力する構成を採用しても良い。又、伝送技術はSDIに限らず、HDMI(登録商標)、DisplayPort(登録商標)、USB、又はLANなどの画像伝送を行える伝送技術でもよく、これらを組み合わせて伝送路を複数用意しても良い。尚、本実施例における出力手段は、像と距離情報と補助データとを重畳したデータストリームをメモリを介して外部に出力(供給)するものを含む。
【0132】
又、例えば、実施例1~実施例5までを部分的に適宜組み合わせても良い。又、画像処理装置100の表示部114におけるメニュー表示で、ユーザにより実施例1~実施例5に記載される機能やそれらの組み合わせを適宜選択できるように構成しても良い。
【0133】
以上、本発明をその好適な実施例に基づいて詳述してきたが、本発明は上記実施例に限定されるものではなく、本発明の主旨に基づき種々の変形が可能であり、それらを本発明の範囲から除外するものではない。
【0134】
尚、本実施例における制御の一部又は全部を上述した実施例の機能を実現するコンピュータプログラムをネットワーク又は各種記憶媒体を介して画像処理装置等に供給するようにしてもよい。そしてその画像処理装置等におけるコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行するようにしてもよい。その場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することとなる。
【符号の説明】
【0135】
100:画像処理装置
101:内部バス
102:CPU
103:ROM
104:RAM
105:画像処理部
106:レンズユニット
107:撮像部
108:ネットワークモジュール
109:画像出力部
110:記録媒体I/F
111:フレームメモリ
112:記録媒体
113:操作部
114:表示部
115:物体検出部