JP6862114B2 - 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体 - Google Patents

処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体 Download PDF

Info

Publication number
JP6862114B2
JP6862114B2 JP2016138302A JP2016138302A JP6862114B2 JP 6862114 B2 JP6862114 B2 JP 6862114B2 JP 2016138302 A JP2016138302 A JP 2016138302A JP 2016138302 A JP2016138302 A JP 2016138302A JP 6862114 B2 JP6862114 B2 JP 6862114B2
Authority
JP
Japan
Prior art keywords
light
amount
light source
emission amount
subject
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016138302A
Other languages
English (en)
Other versions
JP2018009858A (ja
Inventor
智暁 井上
智暁 井上
義明 井田
義明 井田
祐一 楠美
祐一 楠美
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2016138302A priority Critical patent/JP6862114B2/ja
Publication of JP2018009858A publication Critical patent/JP2018009858A/ja
Application granted granted Critical
Publication of JP6862114B2 publication Critical patent/JP6862114B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Studio Devices (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Stroboscope Apparatuses (AREA)

Description

本発明は、処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体に関する。
被写体に関するより多くの物理情報を取得しておくことで、撮像後の画像処理において、物理モデルに基づく画像生成を行うことができる。例えば、被写体の見えを変更した画像を生成することが可能となる。被写体の見えは、被写体の形状情報、被写体の反射率情報、または光源情報などの情報で決定される。光源から射出され被写体によって反射された反射光の物理的な振る舞いは局所的な面法線に依存するため、形状情報としては3次元形状ではなく面法線情報を用いることが特に有効である。
従来、被写体の面法線と光源方向に基づいた反射特性を仮定し、複数の光源位置での被写体の輝度情報と仮定した反射特性から面法線を決定する照度差ステレオ法が知られている(例えば、非特許文献1参照)。被写体の反射特性としてはランバートの余弦則に従うランバート反射モデルが用いられることが多い。
一般的に、物体の反射光は、鏡面反射光と拡散反射光の各成分を有する。鏡面反射光とは、物体表面での正反射であり、物体表面(界面)においてフレネルの式に従うフレネル反射を指す。拡散反射光とは、被写体の表面を透過した後に物体内部で散乱されて返ってくる光を指す。鏡面反射成分はランバートの余弦則では表せないため、撮像装置で観測される被写体からの反射光に鏡面反射成分が含まれていると、照度差ステレオ法を用いて面法線を正確に算出することができない。光源からの光が当たらない陰影部においても仮定した反射モデルからのずれが生じ、被写体の面法線情報を正確に取得することができない。例えば、特許文献1では、4つ以上の光源を使用して得られた複数の面法線候補から、真の面法線を求める方法が開示されている。
また、低照度の被写体を撮影する際の光量確保のために、閃光装置を光源として備える撮像装置が知られている。例えば、特許文献2では、反射光量の測光値と被写体までの距離情報に基づいて閃光装置の発光量を制御する撮像装置が開示されている。
特開2010−122158号公報 特許第3880148号公報
松下康之、"照度差ステレオ"、情報処理学会研究報告、Vol.2011−CVIM−177、No.29、pp.1−12、2011
デジタルカメラなどの撮像装置において照度差ステレオ法を用いて被写体の面法線を取得するためには、照射光源位置ごとの輝度情報の異なる複数の画像が必要となる。照度差ステレオ法では、複数の画像間での輝度の差異に基づいて面法線を算出する。光源の発光量が適切でない場合、画像内に含まれる面法線算出対象の被写体部分に白飛びや黒潰れといった現象が生じ、複数の画像間での輝度の差異が正確に算出できない。複数の画像間での輝度の差異が正確に算出できない部分では、算出された面法線は真の面法線から大きくずれてしまう。非特許文献1、特許文献1、および特許文献2では、照度差ステレオ法に使用する画像取得時の各光源の発光量の制御については開示されておらず、発光量が適切でない場合、面法線の算出精度が劣化してしまう。
このような課題に鑑みて、本発明は、照度差ステレオ法に適するように光源の発光量を制御可能であり、高精度に面法線を算出可能な処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体を提供することを目的とする。
本発明の一側面としての処理装置は、互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得させる処理装置であって、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の測光値に基づいて、前記3つ以上の画像を取得する際の各光源の発光量を制御する制御部を有し、前記制御部は、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させる際の適正発光量を各光源に対して取得し、前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように各光源の発光量を制御し、前記制御部は、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする。
また、本発明の他の側面としての処理システムは、互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得させる処理システムであって、前記3つ以上の光源を個別に予備発光させた際の前記被写体からの反射光の測光値を取得する測光部と、前記測光値に基づいて、前記3つ以上の画像を撮像する際の各光源の発光量を制御する制御部と、を有し、前記制御部は、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させる際の適正発光量を各光源に対して取得し、前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように各光源の発光量を制御し、前記制御部は、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする。
また、本発明の他の側面としての撮像装置は、互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得する撮像部と、前記3つ以上の光源を個別に予備発光させた際の前記被写体からの反射光の測光値を取得する測光部と、前記測光値に基づいて、前記3つ以上の画像を撮像する際の各光源の発光量を制御する制御部と、前記3つ以上の画像の輝度情報に基づいて、前記被写体の面法線情報を算出する法線算出部と、を有し、前記制御部は、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させる際の適正発光量を各光源に対して取得し、前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように各光源の発光量を制御し、前記制御部は、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする。
また、本発明の他の側面としての処理方法は、互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得させる処理方法であって、前記3つ以上の光源を個別に予備発光させた際の前記被写体からの反射光の測光値を取得するステップと、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させた際の適正発光量を各光源に対して取得するステップと、前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように前記3つ以上の画像を取得する際の各光源の発光量を制御するステップと、を有し、前記制御するステップは、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする。


本発明によれば、照度差ステレオ法に適するように光源の発光量を制御可能であり、高精度に面法線を算出可能な処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体を提供することができる。
本発明の実施形態に係る撮像装置の外観図である(実施例1、2)。 実施例1の撮像装置のブロック図である。 処理システムを示す図である(実施例1、2)。 実施例1の面法線情報の算出処理を示すフローチャートである。 撮像状態を示す図である。 実施例2の撮像装置のブロック図である。 実施例2の面法線情報の算出処理を示すフローチャートである。 Torrance−Sparrowモデルの説明図である。
以下、本発明の実施例について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
照度差ステレオ法は、被写体の面法線と被写体から光源への方向(光源方向)に基づく被写体の反射特性を仮定し、複数の光源位置での被写体の輝度情報と仮定した反射特性から面法線情報を算出する方法である。所定の面法線と光源の位置が与えられたときに反射率が一意に定まらない場合、反射特性はランバートの余弦則に従うランバート反射モデルで近似すればよい。鏡面反射成分は、図7に示されるように、光源ベクトルsと視線方向ベクトルvの2等分線と、面法線nのなす角αに依存する。したがって、反射特性は、視線方向に基づく特性としてもよい。また、輝度情報は、光源が点灯している場合と消灯している場合のそれぞれの被写体を撮像し、これらの差分をとることで環境光等の光源以外の光源による影響を除いてもよい。
以下、ランバート反射モデルで反射特性を仮定した場合について説明する。反射光の輝度値をi、物体のランバート拡散反射率をρd、入射光の強さをE、物体から光源への方向を示す単位ベクトル(光源方向ベクトル)をs、物体の単位面法線ベクトルをnとすると、輝度iはランバートの余弦則から以下の式(1)で表される。
Figure 0006862114
異なるM個(M≧3)の光源ベクトルの各成分をs、s、・・・、s、光源ベクトルの成分ごとの輝度値をi、i、・・・iとすると、式(1)は以下の式(2)で表される。
Figure 0006862114
式(2)の左辺はM行1列の輝度ベクトル、右辺の[s 、・・・s ]はM行3列の光源方向を示す入射光行列S、nは3行1列の単位面法線ベクトルである。M=3の場合は、入射光行列Sの逆行列S−1を用いて、Eρnは以下の式(3)で示される。
Figure 0006862114
式(3)の左辺のベクトルのノルムが入射光の強さEとランバート拡散反射率ρの積であり、正規化したベクトルが物体の面法線ベクトルとして算出される。すなわち、入射光の強さEとランバート拡散反射率ρは積の形でのみ条件式に現れるので、Eρを1つの変数とみなすと、式(3)は単位面法線ベクトルnの2自由度と合わせて未知の3変数を決定する連立方程式とみなせる。したがって、少なくとも3つの光源を用いて輝度情報を取得することで、各変数を決定することができる。なお、入射光行列Sが正則行列でない場合は逆行列が存在しないため、入射光行列Sが正則行列となるように入射光行列Sの各成分s〜sを選択する必要がある。すなわち、成分s3を成分s1,s2に対して線形独立に選択することが望ましい。
また、M>3の場合は求める未知変数より多い条件式が得られるので、任意に選択した3つの条件式からM=3の場合と同様の方法で単位面法線ベクトルnを算出すればよい。4つ以上の条件式を用いる場合は、入射光行列Sが正則行列ではなくなるため、例えば、Moore−Penrose疑似逆行列を使って近似解を算出してもよい。また、フィッティング手法や最適化手法によって単位面法線ベクトルnを算出してもよい。
被写体の反射特性をランバート反射モデルとは異なるモデルで仮定した場合は、条件式が単位面法線ベクトルnの各成分に対する線形方程式と異なる場合がある。その場合、未知変数以上の条件式が得られれば、フィッティング手法や最適化手法を用いることができる。
また、M>3の場合には3以上M−1以下の複数の条件式が得られるため、単位面法線ベクトルnの複数の解の候補を求めることができる。この場合、さらに別の条件を用いて複数の解の候補から解を選択すればよい。例えば、単位面法線ベクトルnの連続性を条件として用いることができる。単位面法線nを撮像装置の1画素ごとに算出する場合、画素(x、y)での面法線をn(x、y)として、n(x−1、y)が既知であれば以下の式(4)で示される評価関数が最小となる解を選択すればよい。
Figure 0006862114
また、n(x+1、y)やn(x、y±1)も既知であれば、以下の式(5)が最小となる解を選択すればよい。
Figure 0006862114
既知の面法線がなく、全画素位置で面法線の不定性があるとすれば、以下の式(6)で示される式(5)の全画素での総和が最小となるように解を選択してもよい。
Figure 0006862114
なお、最近傍以外の画素での面法線を用いてもよいし、注目する画素位置からの距離に応じて重みづけした評価関数を用いてもよい。
また、別の条件として、任意の光源位置での輝度情報を用いてもよい。ランバート反射モデルに代表される拡散反射モデルでは、単位面法線ベクトルと光源方向ベクトルが近いほど反射光の輝度が大きくなる。よって、複数の光源方向での輝度値のうち最も輝度値が大きくなる光源方向ベクトルに近い解を選択することで、単位面法線ベクトルを決定することができる。
また、鏡面反射モデルでは、光源ベクトルをs、物体からカメラへの方向の単位ベクトル(カメラの視線ベクトル)をvとすると、以下の式(7)が成り立つ。
Figure 0006862114
式(7)に示されるように、光源方向ベクトルsとカメラの視線ベクトルvが既知であれば単位面法線ベクトルnを算出することができる。表面に粗さがある場合、鏡面反射も出射角の広がりを持つが、平滑面として求めた解の付近に広がるため、複数の解の候補うち最も平滑面に対する解に近い候補を選択すればよい。また、複数の解の候補の平均によって真の解を決定してもよい。
照度差ステレオ法では、入射光の強さEは各光源方向の条件において一定であり、被写体からの反射光の輝度値が正確に検出されることを前提としている。また、閃光装置を備える撮像装置では、発光量が大き過ぎる場合、被写体部分の露光量が多くなりすぎる。そのため、被写体部分に白飛びと言われる階調性が失われる現象が生じ、正確な輝度値を取得できない。逆に、発光量が小さ過ぎる場合、被写体部分の露光量が少なくなりすぎる。そのため、被写体部分に黒潰れと言われる階調性が失われる現象が生じ、正確な輝度値が取得できない。すなわち、位置の異なる複数の光源の発光量(各光源方向の入射光の強さ)が適切でない場合、被写体部分に白飛びや黒潰れが発生し、正確な輝度値が取得できない。したがって、算出される面法線が真の面法線から大きくずれてしまう。
図1は本実施例の撮像装置1000Aの外観図であり、図2は本実施例の撮像装置1000Aのブロック図である。撮像装置1000Aは、被写体を撮像する撮像部100および光源部200を備える。撮像部100は、撮像光学系101および撮像素子102を備える。本実施例では、光源部200は、撮像光学系101の光軸を中心とする同心円状に等間隔で配置される8個の光源から構成される。なお、照度差ステレオ法を実施する際に必要な光源は少なくとも3個であるため、光源部200は3個以上の光源を備えていればよい。また、本実施例では光源部200は複数の光源を撮像光学系101の光軸を中心とした同心円状に等間隔で配置しているが、本発明はこれに限定されない。また、本実施例では、光源部200の各光源としてLED(Light Emitting Diode)を用いているが、キセノンランプ等の他の光源を用いてもよい。また、本実施例では、光源部200は、撮像装置1000Aに内蔵されているが、着脱可能に取り付けられる構成としてもよい。レリーズボタン300は、撮影やオートフォーカスを作動させるためのボタンである。
撮像光学系101は、絞り101aを備え、被写体から射出される光を撮像素子102上に結像させる。また、撮像光学系101は、各レンズ群を移動させるで、撮像倍率を変えることができる変倍光学系であってもよい。本実施例では、撮像光学系101は、撮像装置1000Aに内蔵されているが、一眼レフカメラのように撮像装置1000Aに着脱可能に取り付けられる構成であってもよい。撮像素子102は、CCDセンサやCMOSセンサ等の光電変換素子により構成され、被写体を撮像する。撮像素子102の光電変換によって生成されるアナログ電気信号は、A/Dコンバータ103でデジタル信号に変換されて画像処理部104に入力される。
画像処理部104は、デジタル信号に対して一般的に行われる画像処理と併せて、被写体の面法線情報を取得する。面法線情報とは、面法線の1自由度の候補を少なくとも1つ以上決定する情報、面法線の複数の解候補から真の解を選択するための情報、および求めた面法線の妥当性に関する情報である。画像処理部104は、被写体からの反射光を測光する測光部104a、および測光部104aの測光値に基づいて各光源の適正発光量を制御する発光量制御部104bを備える。また、画像処理部104は、面法線情報を算出する法線算出部104c、および面法線情報を算出する際の輝度情報を補正する輝度情報補正部104dを備える。画像処理部104で処理された出力画像は、半導体メモリや光ディスク等の画像記録部109に保存される。また、出力画像を表示部105に表示してもよい。本実施例では、測光部104a、発光量制御部104b、法線算出部104c、および輝度情報補正部104dは、撮像装置1000Aに内蔵されているが、後述するように撮像装置1000Aとは別に構成されてもよい。
情報入力部108は、ユーザーによって選択された撮像条件(絞り値、露出時間、ISO感度または撮影枚数など)をシステムコントローラ110に供給する。照射光源制御部106は、システムコントローラ110から出力される指示に応じて光源部200の発光状態を制御する。撮像制御部107は、システムコントローラ110から出力される情報に基づいて、ユーザーが選択した所望の撮影条件で画像を取得する。ROM111は、システムコントローラ110によって実行される各種のプログラムやそれに必要となるデータを格納している。発光量情報取得部112は、照射光源制御部106によって制御される各光源の発光量の情報を取得する。撮像条件情報取得部113は、撮像制御部107によって制御される撮像条件の情報を取得する。
本実施例の面法線情報の算出処理について、図3のフローチャートを参照して説明する。図3は、本実施例の面法線情報の算出処理を示すフローチャートである。本実施例の面法線情報の算出処理は、システムコントローラ110および画像処理部104により、コンピュータを処理装置として機能させるための処理プログラムにしたがって実行される。なお、処理プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録してもよい。
ステップS101では、システムコントローラ110は、情報入力部108からユーザーによって設定される第1撮像条件(絞り値、露出時間、ISO感度または撮影枚数など)を撮像条件として設定する。
ステップS102では、システムコントローラ110は、レリーズボタン300の半押し動作に連動し、光源が予備発光(プリ発光)していない状態で被写体からの反射光を撮像素子102で受光する。A/Dコンバータ103は、撮像素子102の光電変換によって生成されたアナログ電気信号をデジタル信号に変換し、画像処理部104に出力する。測光部104aは、画像処理部104に入力されたデジタル信号に基づいて第2測光値を取得する。第2測光値は、光源が予備発光していない状態の測光値、すなわち環境光のみが照射された被写体の反射光の測光値である。また、本実施例では測光部104aが撮像素子102によって得られた画像信号に基づいて測光値を取得しているが、別途設けられた測光用のセンサーが取得してもよい。
ステップS103では、システムコントローラ110は、照射光源制御部106に、本撮影に使用する光源をあらかじめ設定された光量で個別に予備発光させる。予備発光の光量は、白飛び発生による測光値の検出精度の劣化を低減させるため、本撮像時に対して低く設定することが好ましい。照度差ステレオ方式では位置の異なる複数の光源を個別に発光させて複数の画像を取得するため、本実施例では測光値検出のための予備発光を光源ごとに行う。
ステップS104では、システムコントローラ110は、ステップS103の予備発光に同期して、被写体からの反射光を撮像素子102で受光する。A/Dコンバータ103は、撮像素子102の光電変換によって生成されたアナログ電気信号をデジタル信号に変換し、画像処理部104に出力する。測光部104aは、画像処理部104に入力されたデジタル信号に基づいて第1測光値を取得する。第1測光値は、光源が予備発光している状態の測光値、すなわち環境光および光源の予備発光光が照射された被写体の反射光の測光値である。また、発光量制御部104bは、ステップS101で設定された第1撮像条件、ならびに第1および第2測光値に基づいて光源ごとの適正発光量を算出する。
ここで、図4を参照して、本実施例の適正発光量の算出時の動作について説明する。図4は、撮像装置1000Aが被写体2000の面法線情報を取得する場合の撮像状態を示す図である。まず、測光部104aは、光源を予備発光させずに環境光(太陽光)のみが照射された被写体の反射光を測光し、第2測光値を取得する。次に、撮像装置1000Aが光源200Aを予備発光させると、被写体2000に照射された光源200Aからの光Aは、被写体2000で反射された後、撮像部100に入射する。測光部104aは、被写体2000を撮像した画像信号の輝度値情報に基づいて第1測光値を取得する。発光量制御部104bは、第1撮像条件、ならびに第1および第2測光値に基づいて、光源200Aの適正発光量を算出する。撮像装置1000Aが光源200Bを予備発光させる場合も同様に、発光量制御部104bは光源200Bの適正発光量を算出する。
照度差ステレオ方式では、同一の被写体に位置の異なる光源からの光を照射し、その輝度変化によって面法線情報を算出するため、光源からの発光光のみに基づく輝度情報が重要であり、環境光(太陽光)に基づく輝度情報は面法線の算出時には不要である。そのため、環境光の強度が強い場合、光源からの発光光のみに基づく輝度情報の階調性を保つように発光量を調整することが重要となる。上述したように、第1測光値は環境光および光源の予備発光光が照射された被写体の反射光の測光値であり、第2測光値は環境光のみが照射された被写体の反射光の測光値である。本実施例では、発光量制御部104bは、第1および第2測光値との差分に基づいて、光源の発光光のみによる輝度情報の階調性を保つように最小発光量を算出する。このように、第1および第2測光値との差分に基づいて最小発光量を算出することで、特に光源からの発光光のみに基づく輝度情報の低輝度領域の階調性の低下(黒潰れ)を抑制することが可能となる。また、環境光および光源の発光光による被写体の反射光に基づく画像信号に白飛びが発生した場合も、光源からの発光光のみに基づく輝度情報の高輝度領域の階調性の低下が生じる。本実施例では、環境光および光源の予備発光光が照射された被写体の反射光の測光値である第1測光値に基づいて、光源の発光光のみに基づく輝度情報の階調性を保つように最大発光量を算出する。発光量制御部104bは、最小発光量と最大発光量の間で最も輝度情報の階調性を確保できる発光量を適正発光量として設定する。最大発光量が最小発光量より大きい場合、発光量制御部104bは最大発光量を適正発光量として設定することが好ましい。最大発光量を適正発光量として設定することで、白飛びを回避しつつ、輝度情報の階調性を高く保つことができる。また、本実施例では、環境光の強度が強い場合について説明したが、暗室撮影などの環境光の強度が弱い場合、ステップS102を省略してもよい。
ステップS105では、システムコントローラ110は、照度差ステレオ方式の撮像に使用する全光源の予備発光が完了したかどうかを判定する。全光源の予備発光が完了している場合はステップS106に進み、完了していない場合はステップS103に戻る。
ステップS106では、システムコントローラ110は、発光量制御部104bが照射光源制御部106を介して照度差ステレオ方式の撮像に使用する全光源をステップS104で算出された適正発光量で制御可能かどうかを判定する。制御できない光源が存在する場合はステップS107に進み、存在しない場合はステップS108に進む。
ステップS107では、システムコントローラ110は、撮像制御部107に、撮像部100の撮像条件を第1撮像条件から第2撮像条件に変更させる。具体的には、ステップS104で算出された適正発光量が制御可能な発光量より小さい場合、例えば、絞り101aの絞り値を大きく(暗く)設定したり、露出時間を短く設定したり、またはISO感度を低く設定したりすればよい。上記設定を組み合わせて、撮像条件を変更してもよい。また、ステップS104で算出された適正発光量が制御可能な発光量より大きい場合、例えば、絞り値を小さく(明るく)設定したり、露出時間を長く設定したり、またはISO感度を高く設定したりすればよい。上記設定を組み合わせて、撮像条件を変更してもよい。さらに、ステップS104で算出された最小発光量が最大発光量より大きい場合、撮像素子102のダイナミックレンジが不足していることとなるため、本撮影時にHDR(ハイダイナミックレンジ)撮影を行う設定を行う。HDR撮影としては、一般的に知られている露出条件を異ならせた複数枚の画像を取得して合成する手法を用いればよい。照度差ステレオ方式におけるHDR撮影では、1つの光源発光に対して露出条件を異ならせた複数枚の画像を取得すればよい。すなわち、1つの光源に対して何枚の画像を取得するかといった撮像枚数の設定を行う。また、発光量制御部104bは、変更された撮像条件に基づいて発光量を補正してもよい。また、撮像条件は、1つの光源発光に対応した撮像ごとに変更してもよいし、全ての撮像において同一条件としてもよい。
ステップS108では、システムコントローラ110は、発光量制御部104bに、照射光源制御部106を介して各光源の発光量を設定させる。
ステップS109では、システムコントローラ110は、レリーズボタン300の全押し動作に連動し、複数光源位置での被写体の撮像を行う。具体的には、システムコントローラ110は、照射光源制御部106を介して光源部200の互いに位置の異なる少なくとも3つ以上の光源からの光を被写体に順次照射させ、撮像制御部107を介して撮像部100に被写体を撮像させる。A/Dコンバータ103は、撮像素子102から出力されたアナログ信号をA/D変換することで撮影画像(輝度情報)を形成し、画像処理部104に出力する。なお、画像処理部104は、画像生成のために、通常の現像処理や各種の画像補正処理を実行してもよい。
ステップS110では、システムコントローラ110は、撮像条件情報取得部113に、撮像制御部107によって制御された撮像部100の最終的な撮像条件の情報を取得させる。また、発光量情報取得部112に、照射光源制御部106を介して発光量制御部104bによって制御された各光源の最終的な発光量の情報を取得させる。さらに、輝度情報補正部104dに、撮像条件および発光量の情報に基づいて、各光源位置での被写体の撮像によって得られた輝度情報を補正させる。照度差ステレオ法では、各光源の発光量は一定であることを前提としているため、位置の異なる複数の光源間で発光量に違いが生じた場合、算出された面法線は真の面法線から大きくずれてしまう。そこで、本ステップでは、撮像条件および発光量の情報に基づいて、各光源位置での被写体の撮像によって得られた輝度情報を各光源部の発光量と撮像条件が仮想的に等しくなるように補正する。
以下、8個の光源のうち第1の光源の発光量のみ異なる場合を例として、本ステップの補正について説明する。なお、第2から第8の光源は正常に発光し、発光量は等しく補正する必要はない。また、第1の光源の発光量は、他の光源の発光量の50%に設定されている。
システムコントローラ110は、上記結果を取得すると、ROM111に保存された輝度情報の補正値が記録されたテーブルに基づく補正信号を輝度情報補正部104dに出力する。ここでは、第1の光源の発光量が他の光源の発光量に比べて半分の量であるため、システムコントローラ110は、第1の光源の光を照射して取得された輝度情報の輝度値を2倍に補正することを指示する補正信号を輝度情報補正部104dに出力する。このような補正により、発光量が異なる第1の光源の光を照射して取得された輝度情報を、正常に発光している他の光源の発光量を照射して取得された輝度情報と仮想的に等しくすることができる。そのため、仮想的に全ての光源が同一の発光量である輝度情報を取得することができ、光源ごとに異なる発光量が設定された場合においても面法線の算出精度の低下を防ぐことができる。
上記例では、第1の光源の光を照射して取得される輝度値を他の光源の光を照射して取得される輝度値と同等となるように補正したが、他の光源の光を照射して取得される輝度値を第1の光源の光を照射して取得される輝度値と同等となるように補正してもよい。また、複数の光源間で発光量に違いがある場合、輝度情報補正部104dは、基準となる光源の光を照射して取得された輝度情報の輝度値に合わせて他の光源を照射して取得された輝度情報の輝度値を補正してもよい。例えば、基準となる輝度値は、最大発光量の光源の光を照射して取得された輝度値であってもよいし、最小発光量の光源の光を照射して取得された輝度値であってもよいし、中間の発光量の光源の光を照射して取得された輝度値であってもよい。
撮像条件についても、それぞれの撮像時の撮像条件が輝度値に関して仮想的に同一条件となるように輝度補正を行うことができる。例えば、第1の光源の光を照射して撮像する際の露出時間が他の光源と比べて半分になっている場合、第1の光源の光を照射して取得された輝度情報の輝度値を2倍にするように補正すればよい。
ステップS111では、システムコントローラ110は、法線算出部104cに、ステップS110で補正された輝度情報に基づいて面法線情報を算出させる。法線算出部104cは、上述した照度差ステレオ法を用いて面法線情報を算出する。画像記録部109が面法線情報や画像情報を保存し、フローは完了する。なお、画像記録部109は、発光量の情報や撮像条件の情報を画像情報に付加した情報を保存してもよい。発光量の情報や撮像条件の情報を画像情報に付加して保存することで、輝度情報の補正処理や面法線の算出処理を後から実行することが可能となる。
以上説明したように、本実施例では、各光源を個別に予備発光させ、その測光値に基づいて各光源の発光量を適正発光量に設定することで、輝度情報を高精度に取得できるため、面法線の算出精度を保つことが可能となる。
なお、本実施例では撮像装置1000A内で被写体の面法線情報を算出しているが、図2Bに示されるように、撮像装置1000Aとは異なる処理システム500を用いて被写体の面法線情報を算出してもよい。図2Bに示される処理システム500は、処理装置501、法線算出部502、撮像部503、光源部504、および測光部505を備える。処理装置501は、発光量制御部501a、および輝度情報補正部501bを備える。処理システム500を用いて面法線情報を算出する場合、まず、測光部505は処理装置501の指示により光源が予備発光していない状態で被写体からの反射光を測光する。次に、光源部504が処理装置501の指示により少なくとも3つ以上の光源を個別に予備発光させ、測光部505が被写体からの反射光を測光する。なお、光源位置は、光源部504が1つの光源から構成される場合、撮影ごとに光源部504を移動させればよいし、光源部504が少なくとも3つ以上の光源を備える場合、撮影ごとに光を照射する光源を変更すればよい。次に、発光量制御部501aが撮像条件、および測光部505の測光値に基づいて光源ごとの適正発光量を算出する。続いて、発光量制御部501aは被写体に少なくとも3つ以上の光源位置から適正発光量の光を照射させるように光源部504を制御し、撮像部503が各光源位置の画像を取得する。なお、発光量制御部501aは各光源の発光量を制御できればよく、光源部200の点灯等の他の処理は処理装置501の他の部分が実行してもよい。最後に、法線算出部502が輝度情報補正部501bにより補正された輝度情報に基づいて面法線情報を算出する。なお、処理システム500は、少なくとも処理装置501を備えていればよい。また、処理装置501は、少なくとも発光量制御部501aを備えていればよい。また、処理装置501は、法線算出部502を備えてもよい。また、撮像部503および光源部504はそれぞれ、個別の装置であってもよいし、光源部504が撮像部503に内蔵されていてもよい。
図5は、本実施例の撮像装置1000Bのブロック図である。撮像装置1000Bの外観構成は、実施例1の撮像装置1000Aの外観の構成と同様であるため詳細な説明は省略する。また、撮像装置1000Bの内部の構成は、輝度情報補正部104c、発光量情報取得部112、および撮像条件情報取得部113を備えていないことを除き、撮像装置1000Aの内部の構成と同様である。そのため、内部構成の詳細な説明は省略し、撮像装置1000Aと異なる部分についてのみ説明する。
本実施例の面法線情報算出処理について、図6のフローチャートを参照して説明する。図6は、本実施例の面法線情報の算出処理を示すフローチャートである。本実施例の面法線情報の算出処理は、システムコントローラ110および画像処理部104により、コンピュータを処理装置として機能させるための処理プログラムにしたがって実行される。なお、処理プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録してもよい。
ステップS201からステップS205までのステップはそれぞれ、実施例1のステップS101からステップS105までのステップと同様であるため、説明は省略する。
ステップS206では、システムコントローラ110は、発光量制御部104bが照射光源制御部106を介して照度差ステレオ方式の撮像に使用する全光源を算出されたステップS104で算出された適正発光量で制御可能かどうかを判定する。制御できない光源が存在する場合はステップS207に進み、存在しない場合はステップS208に進む。
ステップS207では、システムコントローラ110は、撮像制御部107に、撮像部100の撮像条件を第1撮像条件から第2撮像条件に変更させる。具体的には、ステップS204で算出された適正発光量が制御可能な発光量より小さい場合、例えば、絞り101aの絞り値を大きく(暗く)設定したり、露出時間を短く設定したり、またはISO感度を低く設定したりすればよい。上記設定を組み合わせて、撮像条件を変更してもよい。また、ステップS204で算出された適正発光量が制御可能な発光量より大きい場合、例えば、絞り値を小さく(明るく)設定したり、露出時間を長く設定したり、またはISO感度を高く設定したりすればよい。上記設定を組み合わせて、撮像条件を変更してもよい。さらに、ステップS204で算出された最小発光量が最大発光量より大きい場合、撮像素子102のダイナミックレンジが不足していることとなるため、本撮影時にHDR(ハイダイナミックレンジ)撮影を行う設定を行う。HDR撮影としては、一般的に知られている露出条件を異ならせた複数枚の画像を取得して合成する手法を用いればよい。照度差ステレオ方式におけるHDR撮影では、1つの光源発光に対して露出条件を異ならせた複数枚の画像を取得すればよい。すなわち、1つの光源に対して何枚の画像を取得するかといった撮像枚数の設定を行う。また、発光量制御部104bは、変更された撮像条件に基づいて発光量を補正してもよい。また、本実施例では、撮像条件は、全ての撮像において同一条件とする。そのため、撮像条件の違いによる輝度情報の補正処理を省略することが可能となり、法線算出時の処理負荷を低減することができる。
ステップS208では、システムコントローラ110は、発光量制御部104bに、照射光源制御部106を介して各光源の発光量が同等となるように設定させる。本実施例では、算出された各光源の適正発光量に基づいて、最も適正発光量が小さい光源を基準光源とし、全ての光源の発光量を基準光源と同一光量に設定する。最も適正発光量が小さい光源に発光量を揃えることで、各光源を発光させて取得された撮影画像(輝度情報)に白飛びが発生することを防ぐことができる。さらに、全ての撮像において同一発光量として設定することで、実施例1で必要であった発光量の違いによる輝度情報の補正処理を省略することが可能となり、法線算出時の処理負荷低減が可能となる。
ステップS209では、システムコントローラ110は、レリーズボタン300の全押し動作に連動し、複数光源位置での被写体の撮像を行う。具体的には、システムコントローラ110は、照射光源制御部106を介して光源部200の互いに位置の異なる少なくとも3つ以上の光源からの光を被写体に順次照射させ、撮像制御部107を介して撮像部100に被写体を撮像させる。A/Dコンバータ103は、撮像素子102から出力されたアナログ信号をA/D変換することで撮影画像(輝度情報)を形成し、画像処理部104に出力する。なお、画像処理部104は、画像生成のために、通常の現像処理や各種の画像補正処理を実行してもよい。
ステップS210では、システムコントローラ110は、法線算出部104cに、ステップS209で取得した輝度情報に基づいて面法線情報を算出させる。法線算出部104cは、上述した照度差ステレオ法を用いて面法線情報を算出する。画像記録部109が面法線情報や画像情報を保存し、フローは完了する。
以上説明したように、本実施例では、各光源を予備発光させ、その測光値に基づいて各光源の発光量を適正な同一発光量に設定することで、輝度情報の補正処理を実行せずに輝度情報を高精度に取得できるため、面法線の算出精度を保つことが可能となる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
104 画像処理部(処理装置)
104b 適正発光量算出部(制御部)

Claims (13)

  1. 互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得させる処理装置であって、
    前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の測光値に基づいて、前記3つ以上の画像を取得する際の各光源の発光量を制御する制御部を有し、
    前記制御部は、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させる際の適正発光量を各光源に対して取得し、前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように各光源の発光量を制御し、
    前記制御部は、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする処理装置。
  2. 前記3つ以上の画像の輝度情報に基づいて、前記被写体の面法線情報を算出する法線算出部を更に有することを特徴とする請求項1に記載の処理装置。
  3. 前記制御部が設定した各光源の発光量に基づいて、撮像条件を制御する撮像制御部を更に有することを特徴とする請求項1または2に記載の処理装置。
  4. 前記撮像制御部は、前記3つ以上の画像を取得する際の各撮像条件が同一となるように、前記撮像条件を制御することを特徴とする請求項に記載の処理装置。
  5. 前記撮像条件は、撮像部の露出時間、ISO感度、絞り値、または撮影枚数のうち少なくともいずれか1つであることを特徴とする請求項またはに記載の処理装置。
  6. 互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得させる処理システムであって、
    前記3つ以上の光源を個別に予備発光させた際の前記被写体からの反射光の測光値を取得する測光部と、
    前記測光値に基づいて、前記3つ以上の画像を撮像する際の各光源の発光量を制御する制御部と、を有し、
    前記制御部は、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させる際の適正発光量を各光源に対して取得し、前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように各光源の発光量を制御し、
    前記制御部は、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする処理システム。
  7. 前記3つ以上の画像の輝度情報に基づいて、前記被写体の面法線情報を算出する法線算出部を更に有することを特徴とする請求項に記載の処理システム。
  8. 互いに位置の異なる3つ以上の光源を備える光源部を更に有することを特徴とする請求項またはに記載の処理システム。
  9. 互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得する撮像部と、
    前記3つ以上の光源を個別に予備発光させた際の前記被写体からの反射光の測光値を取得する測光部と、
    前記測光値に基づいて、前記3つ以上の画像を撮像する際の各光源の発光量を制御する制御部と、
    前記3つ以上の画像の輝度情報に基づいて、前記被写体の面法線情報を算出する法線算出部と、
    を有し、
    前記制御部は、前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させる際の適正発光量を各光源に対して取得し、前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように各光源の発光量を制御し、
    前記制御部は、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする撮像装置。
  10. 互いに位置の異なる3つ以上の光源を備える光源部を更に有することを特徴とする請求項に記載の撮像装置。
  11. 互いに位置の異なる3つ以上の光源からの光を被写体に順次照射して3つ以上の画像を取得させる処理方法であって、
    前記3つ以上の光源を個別に予備発光させた際の前記被写体からの反射光の測光値を取得するステップと、
    前記3つ以上の光源を個別に予備発光させて取得される前記被写体からの反射光の第1測光値、および前記3つ以上の光源を予備発光させずに取得される前記被写体からの反射光の第2測光値に基づいて、前記3つ以上の光源のそれぞれを個別に発光させた際の適正発光量を各光源に対して取得するステップと、
    前記3つ以上の光源のうち前記適正発光量が最も小さい光源の適正発光量と同等となるように、前記3つ以上の画像を取得する際の各光源の発光量を制御するステップと、を有し、
    前記制御するステップは、前記3つ以上の光源のそれぞれについて、前記第1測光値と前記第2測光値の差分に基づいて最小発光量を取得し、前記第1測光値に基づいて最大発光量を決定し、前記最小発光量と前記最大発光量の間の範囲で前記適正発光量を決定することを特徴とする処理方法。
  12. コンピュータを請求項1からのいずれか1項に記載の処理装置として機能させるためのプログラム。
  13. 請求項12に記載のプログラムを記録したコンピュータが読み取り可能な記録媒体。
JP2016138302A 2016-07-13 2016-07-13 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体 Active JP6862114B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016138302A JP6862114B2 (ja) 2016-07-13 2016-07-13 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016138302A JP6862114B2 (ja) 2016-07-13 2016-07-13 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体

Publications (2)

Publication Number Publication Date
JP2018009858A JP2018009858A (ja) 2018-01-18
JP6862114B2 true JP6862114B2 (ja) 2021-04-21

Family

ID=60995322

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016138302A Active JP6862114B2 (ja) 2016-07-13 2016-07-13 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体

Country Status (1)

Country Link
JP (1) JP6862114B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10939090B2 (en) 2019-02-06 2021-03-02 Canon Kabushiki Kaisha Control apparatus, imaging apparatus, illumination apparatus, image processing apparatus, image processing method, and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3880148B2 (ja) * 1997-09-19 2007-02-14 キヤノン株式会社 撮像装置
JP2000315257A (ja) * 1999-04-30 2000-11-14 Shiseido Co Ltd 皮膚状態の三次元画像生成方法
JP2010122158A (ja) * 2008-11-21 2010-06-03 Juki Corp 物体表面法線ベクトルマップ作成方法
JP2013044996A (ja) * 2011-08-25 2013-03-04 Nikon Corp 撮像装置

Also Published As

Publication number Publication date
JP2018009858A (ja) 2018-01-18

Similar Documents

Publication Publication Date Title
KR20180019606A (ko) 비행시간 센서를 사용하여 노출 추정을 수행하기 위한 방법들 및 장치들
JP2004212385A (ja) 撮影装置とその撮影装置の撮影方法及び制御方法
CN101884011A (zh) 用于数字摄像机系统的闪光补偿系统
US10939090B2 (en) Control apparatus, imaging apparatus, illumination apparatus, image processing apparatus, image processing method, and storage medium
JP7179472B2 (ja) 処理装置、処理システム、撮像装置、処理方法、プログラム、および、記録媒体
JP2017102637A (ja) 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体
US11025829B2 (en) Imaging apparatus, accessory, processing apparatus, processing method, and storage medium
JP6425571B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6877936B2 (ja) 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体
US10986282B2 (en) Image pickup apparatus that performs flash shooting suitable for both main subject and background, control method therefor, and light emission control apparatus
JP7187192B2 (ja) 制御装置、アクセサリ、撮像装置および撮像システム
JP6671915B2 (ja) 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体
US10346959B2 (en) Processing apparatus, processing system, image pickup apparatus, processing method, and non-transitory computer-readable storage medium
JP6862114B2 (ja) 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体
JP6679289B2 (ja) 処理装置、処理システム、撮像装置、処理方法、処理プログラムおよび記録媒体
JP7118776B2 (ja) 撮像装置、画像処理方法、画像処理プログラムおよび記録媒体
JP6910763B2 (ja) 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体
JP2018054413A (ja) 処理装置、処理システム、撮像装置、処理方法、プログラム、および記録媒体
JP6883855B2 (ja) 撮像装置及び撮像装置の制御方法
JP2012085093A (ja) 撮像装置および取得方法
JP6272006B2 (ja) 撮像装置、画像処理方法及びプログラム
JP6429495B2 (ja) 撮像装置及びその制御方法、照明装置、並びにプログラム
JP7490457B2 (ja) 処理装置、処理システム、撮像装置、処理方法、およびプログラム
JP2020095454A (ja) 処理装置、撮像装置、処理システム、処理方法、プログラム、および、記憶媒体
JP2020127190A (ja) 制御装置、照明装置、撮像装置、画像処理装置、画像処理方法、プログラムおよび記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210112

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210302

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210331

R151 Written notification of patent or utility model registration

Ref document number: 6862114

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151