統計画像生成
[画像統計量]


関数

INT FVALGAPI fnFIE_stats_img_average (FHANDLE *himgs, INT num_imgs, FHANDLE *himg_average, enum f_imgtype dst_img_type)
 平均値画像作成
INT FVALGAPI fnFIE_stats_img_median (FHANDLE *himgs, INT num_imgs, FHANDLE *himg_median)
 中央値画像作成
INT FVALGAPI fnFIE_stats_img_median_absdev (FHANDLE *himgs, INT num_imgs, FHANDLE *himg_median_absdev, enum f_imgtype dst_img_type)
 絶対偏差の中央値画像作成
INT FVALGAPI fnFIE_stats_img_stddev (FHANDLE *himgs, INT num_imgs, FHANDLE *himg_stddev, enum f_imgtype dst_img_type)
 標準偏差画像作成
INT FVALGAPI fnFIE_stats_img_rank (FHANDLE *himgs, INT num_imgs, FHANDLE *himg_rank, INT rank)
 ランク画像作成

関数

INT FVALGAPI fnFIE_stats_img_average ( FHANDLE *  himgs,
INT  num_imgs,
FHANDLE *  himg_average,
enum f_imgtype  dst_img_type 
)

平均値画像作成

複数の入力画像から各画素位置毎の平均値を計算し、内部で生成した出力画像オブジェクトに格納します。
出力画像$ himg\_average$の、位置$(x,y)$の値 $ himg\_average_{(x,y)} $ は次の式で求めます。

\[ himg\_average_{(x,y)} = \frac{1}{N}\sum_{i=0}^{N-1}{himgs[i]_{(x,y)}}\ \ \ (N=num\_imgs)\]

ただし

  • $ himgs[i] $は、入力画像格納配列$ himgs $$ i $番目に格納された画像
  • $ himgs[i]_{(x,y)} $ は、画像 $ himgs[i] $ の任意の画素位置$(x,y)$の値

とします。

引数:
[in] himgs 複数の画像オブジェクト格納配列(type: uc8, s16, us16, double )
himgs に格納される画像は全て同じサイズ、同じ画像タイプで、さらにチャネル数が1でなければなりません。
[in] num_imgs himg に格納された画像オブジェクトの数(2≦num_imgs≦65535)
[out] himg_average 生成した結果画像オブジェクト。*himg_average は必ず NULLで初期化しなければなりません。
[in] dst_img_type 出力画像タイプの指定
  • 入力画像オブジェクトと同じ画像タイプ、もしくは F_IMG_DOUBLE のみの対応です。
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_IMAGE 画像オブジェクトエラー
F_ERR_NOMEMORY メモリ不足エラー
F_ERR_INVALID_PARAM パラメータ異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
処理結果例:
fie_stats_srcs.png

入力画像(num_imgs=5, 結果を分かりやすくするために、位置をずらした画像を用いています)

fie_stats_dst_ave.png

出力画像(平均値画像)

注意:
  • 生成される平均画像の小数点以下の値は四捨五入処理を行います。(出力画像type:uc8, s16, us16 の場合)
  • 本関数で生成した結果画像オブジェクトは、不要になったら fnFIE_free_object() にて解放してください。
参照:
fnFIE_stats_img_median()

INT FVALGAPI fnFIE_stats_img_median ( FHANDLE *  himgs,
INT  num_imgs,
FHANDLE *  himg_median 
)

中央値画像作成

複数の入力画像から各画素位置毎の中央値を求め、内部で生成した出力画像オブジェクトに格納します。
出力画像$ himg\_median$の、位置$(x,y)$の値 $ himg\_median_{(x,y)} $ は次の式で求めます。

\[ himg\_median_{(x,y)} = MEDIAN( himgs[i]_{(x,y)} )\ \ (i=0, \ldots ,num\_imgs-1)\]

ただし

  • MEDIAN は入力値を並べ替えた際の中央値を選択する処理
  • $ himgs[i] $は、入力画像格納配列$ himgs $$ i $番目に格納された画像
  • $ himgs[i]_{(x,y)} $ は、画像 $ himgs[i] $ の任意の画素位置$(x,y)$の値

とします。

引数:
[in] himgs 複数の画像オブジェクト格納配列(type: uc8, s16, us16, double )
himgs に格納される画像は全て同じサイズ、同じ画像タイプで、さらにチャネル数が1でなければなりません。
[in] num_imgs himg に格納された画像オブジェクトの数(2≦num_imgs≦65535)
[out] himg_median 生成した結果画像オブジェクト。*himg_median は必ず NULLで初期化しなければなりません。
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_IMAGE 画像オブジェクトエラー
F_ERR_NOMEMORY メモリ不足エラー
F_ERR_INVALID_PARAM パラメータ異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
処理結果例:
fie_stats_srcs.png

入力画像(num_imgs=5, 結果を分かりやすくするために、位置をずらした画像を用いています)

fie_stats_dst_med.png

出力画像(中央値画像)

注意:
  • 出力画像は入力画像と同じ画像タイプで生成されます。
  • num_imgs に偶数が指定された場合には、中央値が1つに特定できません。その場合、中央に存在する2つの値のうち、昇順で並べた際に先に来る(小さい)値が適用されます。
  • 本関数で生成した結果画像オブジェクトは、不要になったら fnFIE_free_object() にて解放してください。
参照:
fnFIE_stats_img_average()

INT FVALGAPI fnFIE_stats_img_median_absdev ( FHANDLE *  himgs,
INT  num_imgs,
FHANDLE *  himg_median_absdev,
enum f_imgtype  dst_img_type 
)

絶対偏差の中央値画像作成

複数の入力画像から各画素位置毎の絶対偏差の中央値を求め、内部で生成した出力画像オブジェクトに格納します。
出力画像$ himg\_median\_absdev$の、位置$(x,y)$の値 $ himg\_median\_absdev_{(x,y)} $ は次の式で求めます。

\[ himg\_median\_absdev_{(x,y)} = MEDIAN( | himgs[i]_{(x,y)} - himg\_average_{(x,y)} | )\ \ (i=0,\ldots,num\_imgs-1)\]

ただし

  • MEDIAN は入力値を並べ替えた際の中央値を選択する処理
  • $ himgs[i] $は、入力画像格納配列$ himgs $$ i $番目に格納された画像
  • $ himgs[i]_{(x,y)} $ は、画像 $ himgs[i] $ の任意の画素位置$(x,y)$の値
  • $ himg\_average $ は、画像 $ himgs $ 配列内に格納された画像の平均値画像
  • $ himg\_average_{(x,y)} $ は、$ himg\_average $ の任意の画素位置$(x,y)$の値で、その値は次の式で求める

    \[ himg\_average_{(x,y)} = \frac{1}{N}\sum_{i=0}^{N-1}{himgs[i]_{(x,y)}}\ \ \ (N=num\_imgs)\]

とします。

引数:
[in] himgs 複数の画像オブジェクト格納配列(type: uc8, s16, us16, double )
himgs に格納される画像は全て同じサイズ、同じ画像タイプで、さらにチャネル数が1でなければなりません。
[in] num_imgs himgs に格納された画像オブジェクトの数(2≦num_imgs≦65535)
[out] himg_median_absdev 生成した結果画像オブジェクト。*himg_median_avsdev は必ず NULLで初期化しなければなりません。
[in] dst_img_type 出力画像タイプの指定
  • 入力画像オブジェクトと同じ画像タイプ、もしくは F_IMG_DOUBLE のみの対応です。
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_IMAGE 画像オブジェクトエラー
F_ERR_NOMEMORY メモリ不足エラー
F_ERR_INVALID_PARAM パラメータ異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
処理結果例:
fie_stats_srcs.png

入力画像(num_imgs=5, 結果を分かりやすくするために、位置をずらした画像を用いています)

fie_stats_dst_medabsdev.png

出力画像(絶対偏差の中央値画像)

注意:
  • 生成される平均画像の小数点以下の値は四捨五入処理を行います。(出力画像type:uc8, s16, us16 の場合)
  • num_imgs に偶数が指定された場合には、中央値が1つに特定できません。その場合、中央に存在する2つの値のうち、昇順で並べた際に先に来る(小さい)値が適用されます。
  • 本関数で生成した結果画像オブジェクトは、不要になったら fnFIE_free_object() にて解放してください。
参照:
fnFIE_stats_img_stddev()

INT FVALGAPI fnFIE_stats_img_stddev ( FHANDLE *  himgs,
INT  num_imgs,
FHANDLE *  himg_stddev,
enum f_imgtype  dst_img_type 
)

標準偏差画像作成

複数の入力画像から各画素位置毎の標準偏差を計算し、内部で生成した出力画像オブジェクトに格納します。
出力画像$ himg\_stddev$の、位置$(x,y)$の値 $ himg\_stddev_{(x,y)} $ は次の式で求めます。

\[ himg\_stddev_{(x,y)} = \sqrt{\frac{1}{N}\sum_{i=0}^{N-1}{(himgs[i]_{(x,y)})^2} - ( himg\_average_{(x,y)})^2}\ \ \ \ (N=num\_imgs)\]

ただし

  • $ himgs[i] $は、入力画像格納配列$ himgs $$ i $番目に格納された画像
  • $ himgs[i]_{(x,y)} $ は、画像 $ himgs[i] $ の任意の画素位置$(x,y)$の値
  • $ himg\_average $ は、画像 $ himgs $ 配列内に格納された画像の平均値画像
  • $ himg\_average_{(x,y)} $ は、$ himg\_average $ の任意の画素位置$(x,y)$の値で、その値は次の式で求める

    \[ himg\_average_{(x,y)} = \frac{1}{N}\sum_{i=0}^{N-1}{himgs[i]_{(x,y)}}\ \ \ (N=num\_imgs)\]

とします。

引数:
[in] himgs 複数の画像オブジェクト格納配列(type: uc8, s16, us16, double )
himgs に格納される画像は全て同じサイズ、同じ画像タイプで、さらにチャネル数が1でなければなりません。
[in] num_imgs himgs に格納された画像オブジェクトの数(2≦num_imgs≦65535)
[out] himg_stddev 生成した結果画像オブジェクト。*himg_stddev は必ず NULLで初期化しなければなりません。
[in] dst_img_type 出力画像タイプの指定
  • 入力画像オブジェクトと同じ画像タイプ、もしくは F_IMG_DOUBLE のみの対応です。
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_IMAGE 画像オブジェクトの値エラー
F_ERR_NOMEMORY メモリ不足エラー
F_ERR_INVALID_PARAM パラメータ異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
処理結果例:
fie_stats_srcs.png

入力画像(num_imgs=5, 結果を分かりやすくするために、位置をずらした画像を用いています)

fie_stats_dst_stddev.png

出力画像(標準偏差画像)

注意:
  • 生成される平均画像の小数点以下の値は四捨五入処理を行います。(出力画像type:uc8, s16, us16 の場合)
  • 出力値がオーバーフローする場合には、サチュレーション処理を行って格納します。
  • 本関数で生成した結果画像オブジェクトは、不要になったら fnFIE_free_object() にて解放してください。
参照:
fnFIE_stats_img_median_absdev()

INT FVALGAPI fnFIE_stats_img_rank ( FHANDLE *  himgs,
INT  num_imgs,
FHANDLE *  himg_rank,
INT  rank 
)

ランク画像作成

各入力画像の座標(x,y)の画素値に対し、 それらを昇順に並べ替え、rank番目の画素値を 内部で生成した出力画像オブジェクトの座標(x,y)に設定します。

入力画像と出力画像は下記の条件を全て満たしていなければいけません。

  • 入力画像と出力画像の型、及びチャネル数が等しい
  • 入力画像の型はF_IMG_UC8, F_IMG_S16, F_IMG_US16, F_IMG_DOUBLEのいずれか
  • 入力画像と出力画像の幅、及び高さが等しい

引数:
[in] himgs 複数の画像オブジェクト格納配列(type: uc8, s16, us16, double )
himgs に格納される画像はすべて、サイズ及び画像型が等しく、さらにチャネル数が1でなければなりません。
[in] num_imgs himg に格納された画像オブジェクトの数(1≦ num_imgs ≦65535)
[out] himg_rank 生成した結果画像オブジェクト。 *himg_rank は必ず NULLで初期化しなければなりません。
[in] rank ランク(1≦ ranknum_imgs )
戻り値:
F_ERR_NONE 正常終了
F_ERR_INVALID_IMAGE 画像オブジェクトエラー
F_ERR_NOMEMORY メモリ不足エラー
F_ERR_INVALID_PARAM パラメータ異常
F_ERR_NO_LICENCE ライセンスエラー、または未初期化エラー
注意:
  • 本関数で生成した結果画像オブジェクトは、不要になったら fnFIE_free_object() にて解放してください。


Documentation copyright © 2009-2024 FAST Corporation.
Generated on Fri Aug 9 16:38:47 2024 for FIEライブラリ by doxygen 1.5.6-FASTSP-p2