関数 | |
FHANDLE FVALGAPI | fnFIE_colorcheck_open_table (INT size) |
色票テーブルの生成 | |
INT FVALGAPI | fnFIE_colorcheck_set_right_color_chart (FHANDLE htbl, INT id, const F_COLOR_CHART *chart) |
正解色票の登録 | |
INT FVALGAPI | fnFIE_colorcheck_clear_right_color_chart (FHANDLE htbl) |
すべての色票を削除 | |
INT FVALGAPI | fnFIE_colorcheck_erase_right_color_chart (FHANDLE htbl, INT id) |
正解色票の削除 | |
INT FVALGAPI | fnFIE_colorcheck_get_table_size (FHANDLE htbl, INT *size) |
テーブルサイズの取得 | |
INT FVALGAPI | fnFIE_colorcheck_get_num_color_chart (FHANDLE htbl, INT *num) |
登録済正解色票数の取得 | |
INT FVALGAPI | fnFIE_colorcheck_get_right_color_chart (FHANDLE htbl, INT id, F_COLOR_CHART *chart) |
正解色票の取得 | |
INT FVALGAPI | fnFIE_colorcheck_execute (FHANDLE htbl, const F_COLOR_CHART *target, enum f_colorcheck_norm_type norm_type, const DOUBLE *weight, DOUBLE threshold, F_COLOR_CHART *right, INT *id, DOUBLE *norm) |
色判定の実行 | |
INT FVALGAPI | fnFIE_colorcheck_get_detail_result (FHANDLE htbl, INT id, F_COLOR_CHART *chart, DOUBLE *norm) |
色判定の詳細情報を取得 |
FHANDLE FVALGAPI fnFIE_colorcheck_open_table | ( | INT | size | ) |
色票テーブルの生成
色票テーブルのメモリを確保します。 色票テーブルは、複数の色票を正解色票として保持します。
[in] | size | テーブルのサイズ(最大色票数) |
INT FVALGAPI fnFIE_colorcheck_set_right_color_chart | ( | FHANDLE | htbl, | |
INT | id, | |||
const F_COLOR_CHART * | chart | |||
) |
正解色票の登録
指定したIDに対応した色票を追加(登録)します。
[in,out] | htbl | 色票テーブルのハンドル |
[in] | id | 正解色票に対応したID |
[in] | chart | 正解色票 |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された | |
F_ERR_CC_INVALID_ID | 不正なIDが渡された | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_colorcheck_clear_right_color_chart | ( | FHANDLE | htbl | ) |
すべての色票を削除
色票テーブルに登録されているすべての色票を削除します。
[in,out] | htbl | 色票テーブルのハンドル |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_colorcheck_erase_right_color_chart | ( | FHANDLE | htbl, | |
INT | id | |||
) |
正解色票の削除
指定したIDに対応した登録されている正解色票を削除します。 指定したIDに対応した正解色票が登録されていない場合は、 F_ERR_CC_INVALID_ID を返します。 IDは 0≦ id <テーブルの最大色票数 の範囲で指定します。
[in,out] | htbl | 色票テーブルのハンドル |
[in] | id | 色票のID |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_CC_INVALID_ID | 不正なIDが渡された | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_colorcheck_get_table_size | ( | FHANDLE | htbl, | |
INT * | size | |||
) |
テーブルサイズの取得
色票テーブルに登録可能な最大色票数を取得します。
[in] | htbl | 色票テーブルのハンドル |
[out] | size | 色票の最大保持可能数 |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_colorcheck_get_num_color_chart | ( | FHANDLE | htbl, | |
INT * | num | |||
) |
登録済正解色票数の取得
色票テーブルに登録されている正解色票数を取得します。
[in] | htbl | 色票テーブルのハンドル |
[out] | num | 登録されている色票数 |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_colorcheck_get_right_color_chart | ( | FHANDLE | htbl, | |
INT | id, | |||
F_COLOR_CHART * | chart | |||
) |
正解色票の取得
色票テーブルに登録されている指定したIDに対応した正解色票を取得します。 指定したIDに対応した正解色票が登録されていない場合は、 F_ERR_CC_INVALID_ID を返します。 IDは 0≦ id <テーブルの最大色票数 の範囲で指定します。
[in] | htbl | ノルムテーブルのハンドル |
[in] | id | 色票のID |
[out] | chart | 正解色票 |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_colorcheck_execute | ( | FHANDLE | htbl, | |
const F_COLOR_CHART * | target, | |||
enum f_colorcheck_norm_type | norm_type, | |||
const DOUBLE * | weight, | |||
DOUBLE | threshold, | |||
F_COLOR_CHART * | right, | |||
INT * | id, | |||
DOUBLE * | norm | |||
) |
色判定の実行
下図に示すように、指定した処理対象色票に最も近い正解色票を色票テーブルより取得します。 取得可能な結果は、正解色票、対応したID、処理対象色票とのノルムとなります。 最も近い正解色票が複数存在する場合は、先に登録された色票が取得されます。
// エラー処理は省略しているので注意して下さい。 #include "fie.h" VOID color_check() { F_COLOR_CHART right, target; FHANDLE hsrc = NULL; FHANDLE hchild = NULL; FHANDLE htable = NULL; DOUBLE color[3], norm; INT id; // 色票テーブルを生成する htable = fnFIE_colorcheck_open_table( 10 ); // 画像ファイルを読み込む fnFIE_load_png( "fie_colorcheck1.png", &hsrc, F_COLOR_IMG_TYPE_UC8 ); // 正解色票を色票テーブルに登録する hchild = fnFIE_img_child_alloc( hsrc, 165, 350, 25, 25 ); fnFIE_colorchart_calc_image( hchild, NULL, &right ); fnFIE_free_object( hchild ); hchild = NULL; // ID1を登録する fnFIE_colorcheck_set_right_color_chart( htable, 1, &right ); hchild = fnFIE_img_child_alloc( hsrc, 320, 215, 25, 25 ); fnFIE_colorchart_calc_image( hchild, NULL, &right ); fnFIE_free_object( hchild ); hchild = NULL; // ID5を登録する fnFIE_colorcheck_set_right_color_chart( htable, 5, &right ); // 処理対象色票を設定する color[0] = 64.0; color[1] = 128.0; color[2] = 192.0; fnFIE_colorchart_set_color( color, &target ); // ユークリッドノルム基準で色彩検査を実行する // 閾値は指定をしない fnFIE_colorcheck_execute( htable, &target, F_CC_EUCLIDEAN, NULL, -1.0, &right, &id, &norm ); // 実行後のID1の正解色票の情報を取得する fnFIE_colorcheck_get_detail_result( htable, 1, &right, &norm ); // 実行後のID5の正解色票の情報を取得する fnFIE_colorcheck_get_detail_result( htable, 5, &right, &norm ); fnFIE_free_object( hsrc ); fnFIE_free_object( hchild ); fnFIE_free_object( htable ); return; } INT main() { // FIEライブラリの使用前に必ずコールする必要があります。 fnFIE_setup(); color_check(); // 終了処理 fnFIE_teardown(); return 0; }
[in] | htbl | ノルムテーブルのハンドル |
[in] | target | 対象色票 |
[in] | norm_type | ノルムタイプ
|
[in] | weight | 重み付きユークリッドノルムの重み係数 |
[in] | threshold | 閾値(ノルム) |
[out] | right | 正解色票 |
[out] | id | 正解色票のID |
[out] | norm | ノルム |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された | |
F_ERR_NOMEMORY | メモリ不足 | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
INT FVALGAPI fnFIE_colorcheck_get_detail_result | ( | FHANDLE | htbl, | |
INT | id, | |||
F_COLOR_CHART * | chart, | |||
DOUBLE * | norm | |||
) |
色判定の詳細情報を取得
指定したIDに対応した色判定の結果を取得します。 fnFIE_colorcheck_execute() では、処理対象色票に対して最も近い色票情報しか取得できません。 本関数により、すべての情報を取得します。 指定したIDに対応した正解色票が登録されていない場合は、 F_ERR_CC_INVALID_ID を返します。 IDは 0≦ id <テーブルの最大色票数 の範囲で指定します。
[in] | htbl | 色票テーブルのハンドル |
[in] | id | 色票のID |
[out] | chart | 正解色票 |
[out] | norm | ノルム |
F_ERR_NONE | 正常終了 | |
F_ERR_INVALID_OBJECT | 不正なオブジェクトが渡された | |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された | |
F_ERR_CC_INVALID_ID | 不正なIDが渡された | |
F_ERR_CC_INVALID_TABLE | 不正な色票テーブルが渡された | |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |