関数 | |
INT FVALGAPI | fnFIE_ps_woodham_calc_light_from_pos (DPNT3_T *source, DPNT3_T *target, DOUBLE *slant, DOUBLE *tilt, INT n) |
照度差ステレオ光源ベクトルの情報補助関数(空間座標) | |
INT FVALGAPI | fnFIE_ps_woodham_calc_light_ring (DOUBLE height, DOUBLE radius, DOUBLE initial_angle, INT light_order, DOUBLE *slant, DOUBLE *tilt, INT n) |
照度差ステレオ光源ベクトルの情報補助関数(リング照明) |
INT FVALGAPI fnFIE_ps_woodham_calc_light_from_pos | ( | DPNT3_T * | source, | |
DPNT3_T * | target, | |||
DOUBLE * | slant, | |||
DOUBLE * | tilt, | |||
INT | n | |||
) |
照度差ステレオ光源ベクトルの情報補助関数(空間座標)
fnFIE_ps_woodham() で用いるslant, tilt 形式の光源ベクトルの情報を計算する補助関数です。
本関数での座標系は、説明:照度差ステレオモジュールで用いる座標系 に説明があります。
本関数は光源本体の座標と照射先の座標が既知である場合を想定しています。計算した角度は度(°)で出力されます。
n で光源の個数を入力します。n は1以上の整数を入力してください。
光源の位置の配列 source と光源の照射先の位置の配列 target, 出力する光源ベクトルの情報の配列 slant, tilt について、配列の要素数は光源の個数と同じn でなければいけません。
slant, tilt について、
slantとtiltの定義は slantとtilt を参照ください。
またsource[i]とtarget[i]の距離が非常に近い場合はパラメータエラーとなります。
[in] | source | 光源の始点の座標 |
[in] | target | 光源の終点の座標 |
[out] | slant | 出力光源ベクトルの情報であるslantの配列 |
[out] | tilt | 出力光源ベクトルの情報であるtiltの配列 |
[in] | n | 光源の数(1以上の整数) |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_PARAM | パラメータ異常 | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_ps_woodham_calc_light_ring | ( | DOUBLE | height, | |
DOUBLE | radius, | |||
DOUBLE | initial_angle, | |||
INT | light_order, | |||
DOUBLE * | slant, | |||
DOUBLE * | tilt, | |||
INT | n | |||
) |
照度差ステレオ光源ベクトルの情報補助関数(リング照明)
fnFIE_ps_woodham() で用いるslant, tilt 形式の光源ベクトルの情報を計算する補助関数です。
本関数での座標系は、説明:照度差ステレオモジュールで用いる座標系 に説明があります。
本関数はリング照明において等間隔で部分点灯した場合を想定しています。
撮像画像のx,yのスケールが同じと仮定します。 リング照明のなす平面がカメラ光軸と直交する場合のみ利用でき、 照明の光は、それぞれのリングの位置から、リングの中心からz軸負の方向にheight だけ移動した点にむかって照射されるとします。
リング照明の半径、光源の高さ、リングの点灯順序を入力しslant, tilt を計算します。計算した角度は度(°)で出力されます。
光源の半径、光源の高さは単位を揃える必要があります。例えばどちらもmmで入力して下さい。
光源の半径radius は0より大きい値を入力してください。
光源の高さheight は0より大きい値を入力して下さい。
![]() Fig.1 リング照明(ring lighting) | ![]() Fig.2 n=4,light_order=0(時計回り,clockwise) |
light_order では、リング照明の点灯順序を指定します。カメラの方向から見た場合の回転方向で時計回りか反時計回りを指定します。
光源の初期角度:tilt の初期角度です。単位は度(°)で入力し、0以上360未満の値を入力してください。
n で光源の個数を入力します。n は1以上の整数を入力してください。
slant, tilt はDOUBLE型の配列を光源の個数n 分確保して下さい。
Fig.2はn=4,light_order=0(時計回り)のリング照明をカメラの方向から見たイメージ図です。黄色は照明を表し、0→1→2→3 の順で点灯した場合です。
[in] | height | 光源の高さ(0<height) |
[in] | radius | 光源の半径(0<radius) |
[in] | initial_angle | 光源の初期角度(0≦initial_angle<360) |
[in] | light_order | 光源の点灯順序 |
[out] | slant | 出力光源ベクトルの情報であるslantの配列 |
[out] | tilt | 出力光源ベクトルの情報であるtiltの配列 |
[in] | n | 光源の個数(1以上の整数) |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_PARAM | パラメータ異常 | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |