Imatestの合否判定操作とリファレンス
導入
Imatest は、産業用カメラのテストなど、合否判定 (P/F) が必要なアプリケーションに対して、合否判定結果を返すことができます。合否判定機能は主にImatest IT (産業用テスト、 DLLおよびEXE ) を対象としていますが、 Imatestの GUI ベース版 ( Studioを除く) でも動作し、合否判定モニターは、 Imatest ITの P/F しきい値設定の結果をプレビューするのに特に役立ちます。
合否判定の始め方
|
まとめ
- 合否判定設定(最小値、最大値、制限値)は、通常のiniファイル形式で、独自のiniファイル(標準のiniファイル(imatest-v2.iniなど)とは別)に保存されます。
[セクション]
パラメータ = 値
コメントはセミコロンで始まります。
[セクション]はモジュールに対応しており、サポートされているモジュールは以下に一覧表示されています。このファイルにはカメラの仕様値が含まれているため、「spec.ini」ファイルと呼ばれることがよくあります。必要な設定が一覧にない場合は、お問い合わせください。比較的簡単に追加できます。
- 合否判定用のINIファイルは、テキストエディタまたはImatest INIファイルエディタを使用して、顧客が管理および更新します。
- 合格/不合格のiniファイルへの完全なパス名は、メインiniファイルの[api]セクションに、次の形式のステートメントで入力されます。

合否判定モニター
[api]
passFail = fullPathName 。
これは、設定、ITおよび合否設定を開き、適切なボックスに完全なパス名を入力することで実行できます。
- テスト対象ユニット(UUT)に関する情報は、イメージ配列プロパティをImatest DLLモジュールに渡す際に使用するのと同じJSONオブジェクト(文字列)でImatestに渡す必要があります。
- UUTの部品番号、シリアル番号、合否判定設定、結果値、および合否判定結果(1または0)は、JSONオブジェクトとして呼び出し元のプログラムに返されます。
- 合否モニター(右側に表示)を使用すると、 ImatestのGUIバージョンで、合否結果と(選択した場合)履歴を、結果が計算された直後にリアルタイムで表示できます。
| セクション | 説明 |
| [カラーチェック] | カラーチェック用 |
| [ねじれ] | 歪みについて |
| [複数] | カラー/トーンインタラクティブとカラー/トーンオートは、カラー/グレースケールモジュールです。[colorcheck]と[stepchart]にも同様の項目があります。 |
| [sfr] | [sfr]の測定値はSFRplusのサブセットです |
| [sfrplus] | [sfr]の測定値を含みます。 |
| [鋭さ] | ランダム/枯葉(こぼれたコイン)とスターの場合、固定分析または解像度分析のいずれか |
| [ステップチャート] | ステップチャート用 |
| [フラットフィールド] | 均一な平面における欠陥や不均一性の測定。 |
合格/不合格設定ファイル
合否判定設定(個々の測定値の最小値、最大値、または制限値)は、メインのini設定ファイルとは別のiniファイルに保存されます。これにより、必要に応じて改ざんから保護することができます。このファイルは、書き込みに管理者権限が必要な保護されたフォルダに保存することも可能です。
合否判定設定ファイルには、二次読み出し設定と周波数単位(該当する場合)を記述したコメント行(セミコロンで始まる行)を含めることを強くお勧めします。テスト対象デバイスの説明を含めると、さらに役立ちます。
標準的なiniファイル形式で、Imatestモジュールに対応するセクションがあり、合格/不合格ファイルの概要に記載されています。ほとんどのエントリには、次の3つの接尾辞のいずれかが付いています。
| _分 | (最低値の場合) |
| _max | (最大価値を得るため) |
| _制限 | (最小値と最大値の2つの値について) |
異なるフォーマットの設定がいくつか存在しますが、これらは下位互換性のために残されています。
以下に例を示します。パラメータは、下記の合否判定基準表に記載されています。
[sfrplus]
MTF50P_ratio_min = 0.5
MTF50P_CP_weighted_mean_min = 0.13
回転角度の最大値 = 1
FOV_degrees_diagonal_min = 62
収束角の最大値 = 5
Secondary_readout_1_center_mean_min = .2
Secondary_readout_1_outer_mean_min = .2
Secondary_readout_2_center_mean_min = .2
Secondary_readout_2_outer_mean_min = .2
[フラットフィールド]
Dead_pixels_max = 10
Hot_pixels_max = 10
光学中心オフセット最大値 = 50
相対照度最悪コーナー最小値 = 40
Uniformity_RoverG_corners_pct_max = 10
Uniformity_BoverG_corners_pct_max = 10
シミのサイズ(ピクセル)= 20 50
傷の最大数 = 2 1
例えば、MTF50P_ratio_min = .5 は、(最小 MTF50P)/(最大 MTF50P)(選択されたすべての領域で取得)の許容最小値を 0.5 に設定します。
お客様はご自身のニーズに合わせてこのファイルを更新する必要があります。ご要望に応じて追加の寸法も追加いたします。
合否判定基準
お客様のご要望に応じて、追加の寸法を計測することも可能です。
| 斜めエッジモジュール[sfrplus]、[esfriso]、[sfrreg]、[checkerboard]、および [sfr] | ||
[sfrreg]、[checkerboard]、および[sfr]はSFRplusのサブセットです。 | ||
| 典型的なパラメータを持つ変数 | 説明 | |
| Chart_mean_pixel_level_bounds = 100 200 | チャートの中央3分の1(面積では9分の1)で測定した、チャートの平均ピクセルレベルの最小値と最大値。露出過多(または露出不足)によるエッジの飽和(鋭角化)を防ぎ、MTFの向上を図るために設定されます。 | |
| Chart_radial_pixel_shift_max = 0 | (+eC) | チャート中心からの画像中心までのオフセット(ピクセル単位)。 |
| ダイナミックレンジ_ISO_15739_濃度_2分 | (e) | ISO 15739 ダイナミックレンジは、濃度が2.0に最も近いグレースケールパッチから導出されます(eSFR ISOのみ)。 |
| 低ピクセル飽和率の最大値 | ゼロレベルから2%以内の最大ピクセル割合 | |
| 傾斜エッジからのガンマ平均値の最小値 | ガンマ(コントラスト)を測定できるすべての傾斜エッジから測定した、平均ガンマの最小値(チャートのコントラスト比を入力する必要があります)。値が低い場合は、フォギングを示します。明暗領域が小さすぎる場合は計算されません。これは、エッジ角度が大きいSFRregで問題となる可能性があります。ROI幅を「通常」ではなく「より広い」または「最も広い」に設定することをお勧めします。 | |
| 傾斜エッジからのガンマ_最小値_最小値 | 最小ガンマ(コントラスト)の最小値。すべての傾斜エッジから測定します(チャートのコントラスト比を入力する必要があります)。値が低い場合は、フォギングを示します。 | |
| ステップチャートのガンマ制限 | (e) | eSFR ISOグレースケールパターンからのガンマ(最小値と最大値) |
| 高ピクセル飽和率の最大値 | 最大レベルの1%以内のピクセルの最大割合(通常255) | |
| MTF50_max_max | 選択されたすべてのエッジのMTF50の最大値(選択された単位) | |
| MTF50_mean_min | 選択されたすべてのエッジにおけるMTF50の平均値の最小値(選択された単位)。 | |
| MTF50分_分 | 選択されたすべてのエッジにおけるMTF50の最小値(選択された単位)。 | |
| MTF50P_max_max | 選択されたすべてのエッジにおけるMTF50Pの最大値(選択された単位)。 | |
| MTF50P_mean_min | 選択されたすべてのエッジにおけるMTF50Pの平均値の最小値(選択された単位)。 | |
| MTF50P_分_分 | 選択されたすべてのエッジにおけるMTF50Pの最小値(選択された単位)。 | |
| MTF50P_ratio_min = 0.5 | 最小MTF50P値と最大MTF50P値(コントラストがピーク値の半分に低下する空間周波数)の比率の最小値。値が低い場合は、レンズの品質が低いか、レンズの傾きが大きい可能性を示唆します。 | |
| MTF50P_CP_weighted_mean_min = 0.13 | サイクル/ピクセル単位の加重平均MTF50P。 | |
| ROIからの相対照明_最小値 | 傾斜エッジROIの平均ピクセルレベルからの最小相対照度(最小/最大)。 | |
| 回転角度の最大値 = 1 | (+eC) | 画像の回転角度(度数)。上下の歪みバーを基準に測定します。合否判定には絶対値を使用します。なお、チャートが上下逆(垂直反転または180度回転)の場合、回転角度に180度が加算されるため、この測定では通常不合格となります。 |
| FOV_degrees_diagonal_min = 62 | (+eC) | 対角視野(度) |
| 収束角の最大値 = 5 | (+eC) | 許容される最大収束角(水平方向と垂直方向の両方を測定)。台形歪みの指標。 |
| Secondary_readout_1_all_min_min | 画像内の任意の場所におけるセカンダリ読み出し1の平均値の最小許容値。セカンダリ読み出しについては、こちらで説明しています。セカンダリ読み出しのiniファイル設定は、 Imatest INIファイルリファレンスに記載されています。 | |
| Secondary_readout_1_center_mean_min = .2 | 中心領域における二次読み出し1の平均値の最小許容値(中心から角までの距離の30%未満)。 | |
| Secondary_readout_1_outer_mean_min = .2 | 外側領域(中心から角までの距離の30%以上。中間領域(30~75%)と角領域(75%超)を含む)における二次読み出し1の平均値の最小許容値。( eSFR ISOの場合、中間領域は30~68%、角領域は68%超です。) | |
| Secondary_readout_2_all_min_min | 画像内の任意の場所における二次読み出し2の平均値の最小許容値。 | |
| Secondary_readout_2_center_mean_min = .2 | 中心領域における二次読み出し2の平均値の最小許容値(中心から角までの距離の30%まで)。 | |
| Secondary_readout_2_outer_mean_min = .2 | 外側領域(中心から角までの距離の30%以上。中間領域と角領域を含む)における二次読み出し2の平均値の最小許容値 | |
| Secondary_readout_1_outer_min_min = .2 | 外側領域(中心から角までの距離の30%以上)における二次読み出し1の最小許容値 | |
| Secondary_readout_2_outer_min_min = .2 | 外側領域における二次読み出し2の最小値の許容最小値 | |
| Secondary_readout_1_partway_mean_min = .2 | 中間領域(中心から角までの距離の30~75%)における二次読み出し1の平均値の最小許容値 | |
| Secondary_readout_2_partway_mean_min = .2 | 中間領域における二次読み出し2の平均値の最小許容値 | |
| SMIA_TV_歪み制限 | (+eC) | SMIAテレビ歪みの許容最小値と最大値。 |
| snr_bw_min | (e) | SNR帯域幅の最小値: www.imatest.com/docs/noise/#snr_bwを参照してください。この測定値はシーン参照型であり、つまり、画像のコントラストが変化してもほとんど変化しません。 |
| Y_SNR_dB_mean_except_ends_min | (e) | グレースケールステップチャートから得られるSNR(dB)の最小値。ただし、最も明るい部分と最も暗い部分の2つは除外する。カラー画像の場合はY(輝度)チャンネル。画像のコントラストに比例する。 |
| Horizontal_bars_OK_min = 1 (+) | (+) | 上下のバーが正しく検出されているか(大きな隙間なく表示されているか)をテストします。 |
| All_Edge_IDs_detected = 1 (+) | エッジIDファイルで指定されているすべてのEdge_IDが検出されていることを確認します。 | |
| ミラーチャート = 1 | (+e) | 入力された画像が左右反転または上下反転しているかどうかをテストします(反転画像の場合は失敗します)。チャートには中央の正方形の下にグレースケールのステップチャートが含まれており、メインのiniファイルの[sfrplus]セクションでstepchart = 1になっている場合にテストします。 |
| Bayer_decode = 1 | (+e) | メインのiniファイルの[sfrplus]セクションでcolorchart = 1が設定されており、チャートに中央の正方形の上にカラーパッチが含まれている場合、 Bayerパターンのデコードが正しいかどうかをテストします(間違っている場合は失敗します)。 |
| 検出された色の期待値 = 1 | (+e) | メインのiniファイルの[sfrplus]セクションでcolorchart = 1が設定されている場合、チャートの中心より上にカラーパターンが表示されるはずです。カラーパターンが表示されない場合、このテストは失敗します。これは、チャートの位置が適切でないか、単にテスト対象のチャートにカラーパターンが存在しないことを示しています。 |
| DeltaE_00_mean_max = 10 | (+e) | ΔE 2000 色精度。最適な結果を得るには、マルチチャートから生成されたカラーリファレンスファイルを使用してください。 |
| Stepchart_expected_detected = 1 | (+e) | メインのiniファイルの[sfrplus]セクションでstepchart = 1に設定されている場合、チャートの中心の下にグレースケールのステップチャートが表示されるはずです。ステップチャートが存在しない場合、このテストは失敗します。これは、チャートの配置が間違っているか、テストチャートにグレースケールのステップチャートが存在しないことを示しています(ほとんどの標準チャートには含まれているため、これはまれなケースです。ただし、ガラスにクロムメッキされたチャートは例外です)。 |
| 逆さま = 1 | (+e) | 設定されている場合、上下逆さまの状態が検出されたら画像を失敗とします。 |
| passfail_ini_file_date = (手動で入力された日付) | 合格/不合格の日付を示すオプションのインジケーター。出力には、ファイルの最終更新日時とサイズ(バイト単位)を含む「passfail_ini_time_size」という別の結果も表示されます。 | |
| [シャープネス]ランダムモジュールとスターモジュール用(固定またはリチャート) 関連文書:ランダム/枯葉(こぼれたコイン) |星図 | ||
| MTF50_min = 0.25 | ||
| 過剰シャープニング率制限 -20 25 | ||
| 二次読み出し1分 | ||
| 二次読み出し2分 | ||
| 二次読み出し1の制限 | ||
| 二次読み出し2の制限 | ||
| 過剰シャープニング率の最大値 = 25 | 最大オーバーシャープニング(サポートされているモジュールではオーバーシュートは定義されていません。) | |
| 最小鋭度 = 80 | CPIQ 鋭度最小値 | |
均一な光場の解析のための[フラットフィールド] | ||
| Dead_pixels_max = 10 | 許容されるデッドピクセルの最大数。デッドピクセル検出のしきい値(パーセントまたは絶対値)は、iniファイルの[flatfield]セクションで設定します。 | |
| Dead_pixel_clusters_max = 0 | 許容されるデッドピクセルクラスタの最大数。クラスタは、2つ以上の隣接するデッドピクセルとして定義されます。標準のiniファイルにあるcalcluster設定を上書きします。calcluster(2)を入力すると、値は1に設定されます。 | |
| 欠陥ピクセルの最大数 = 10 | ホットピクセルとデッドピクセルの最大合計 | |
| Hot_pixels_max = 10 | 許容されるホットピクセルの最大数。ホットピクセル検出のしきい値(パーセントまたは絶対値)は、iniファイルの[flatfield]セクションで設定されます。 | |
| Hot_pixel_clusters_max = 0 | 許容されるホットピクセルクラスタの最大数。クラスタは、2つ以上の隣接するホットピクセルとして定義されます。標準のiniファイルにあるcalcluster設定を上書きします。calcluster(1)を入力すると、値は1に設定されます。 | |
| 光学中心オフセット最大値 = 50 光学中心オフセットX最大値 = 50 光学中心オフセットY_max = 50 | 画像中心からの光学中心(最高輝度の位置)の最大オフセット(ピクセル単位)。ノイズの影響を最小限に抑えるため、X軸とY軸の光学中心は、平滑化された値が最大値の95%を下回る点間の曲線の重心を用いて定義されます。(実際の最大値は非常に広いため、ノイズの影響を受けやすい。) | |
| 相対照度最悪コーナー最小値 = 40 | 最小コーナー領域の輝度を、平滑化画像の最大輝度で割った値。 | |
| Uniformity_RoverG_corners_pct_max = 10 | 最大R/Gコーナー不均一性 = 100%( RG max - RG min )/ RG max 、ここでRG max = 4つのコーナーにおける最大R/G比、 RG min = 4つのコーナーにおける最小R/G比。 | |
| Uniformity_BoverG_corners_pct_max = 10 | 最大B/Gコーナー不均一性 = 100%( BG max - BG min )/ BG max 、ここで、 BG max = 4つのコーナーにおける最大B/G比、 BG min = 4つのコーナーにおける最小B/G比。 | |
| R_div_G_ctr_corner_diff_pct_max | [v4.3+ Bayer RAW] 最大R/G 中央およびコーナーの差 % = 100%( RG max - RG min )/ RG max 、ここでRG max = 中央およびコーナーの最大 R/G 比、 RG min = 中央およびコーナーの最小 R/G 比。 | |
| R_div_G_ctr_corner_diff_pct_mean_max | [v4.3+ Bayer RAW] 最大R/G 中央およびコーナーの差 % = 100%( RG max - RG mean )/ RG max 、ここでRG max = 中央およびコーナーの最大 R/G 比、 RG mean = コーナーの平均 R/G 比。 | |
| B_div_G_ctr_corner_diff_pct_max | [v4.3+ Bayer RAW] 最大 B /G 中央およびコーナーの差 % = 100%(B G max - B G min )/B RG max 、ここで B G max = 中央およびコーナーの最大 B/G 比、B G min = 中央およびコーナーの最小 B/G 比。 | |
| B_div_G_ctr_corner_diff_pct_mean_max | [v4.3+ Bayer RAW] 最大 B /G 中央およびコーナーの差 % = 100%(B G max - B G mean )/B G max 、ここで B G max = 中央およびコーナーの最大 B/G 比、B G mean = コーナーの平均 B/G 比。 | |
| R_div_B_ctr_corner_diff_pct_max | [v4.3+ Bayer RAW] 最大 R/B 中央およびコーナーの差 % = 100%( RB max - RB min )/ RB max 、ここでRB max = 中央およびコーナーの最大 R/B 比、 RB min = 中央およびコーナーの最小 R/B 比。 | |
| R_div_B_ctr_corner_diff_pct_mean_max | [v4.3+ Bayer RAW] 最大 R/B 中央およびコーナーの差 % = 100%( RB max - RB mean )/ RB max 、ここでRB max = 中央およびコーナーの最大 R/B 比、 RB mean = コーナーの平均 R/B 比。 | |
| センターGb_Gr_変動率最大値 | [v4.3+ Bayer RAW] 最大センターパッチ Gb - Gr 差 % = 100% Abs(Gb平均-Gr平均)/Average(Gb平均, Gr平均) | |
| Corner_Gb_Gr_variation_pct_max | [v4.3+ Bayer RAW] コーナーパッチの最大 Gb - Gr 差 % = 100% Abs(Gb平均-Gr平均)/Average(Gb平均, Gr平均) | |
| Center_R_div_G_unnorml_limits | 中心R/G比の許容値の範囲[最小値、最大値]。値は正規化されていません。 | |
| Center_B_div_G_unnorml_limits | 中心B/G比の許容値の範囲[最小値、最大値]。値は正規化されていません。 | |
| Center_R_mean_max | [v4.3+ Bayer RAW] 中央パッチ 赤色チャンネル平均ピクセルレベル最大値 | |
| Center_R_mean_min | [v4.3+ Bayer RAW] 中央パッチ 赤色チャンネル平均ピクセルレベル最小値 | |
| センター_GB_平均_最大 | [v4.3+ Bayer RAW] センターパッチ グリーン(ブルー)チャンネル平均ピクセルレベル最大値 | |
| センター_Gb_平均_最小値 | [v4.3+ Bayer RAW] 中央パッチ グリーン(ブルー)チャンネル平均ピクセルレベル最小値 | |
| Center_Gr_mean_max | [v4.3+ Bayer RAW] 中央パッチ 緑(赤)チャンネル平均ピクセルレベル最大値 | |
| Center_Gr_mean_min | [v4.3+ Bayer RAW] 中央パッチ 緑(赤)チャンネル平均ピクセルレベル最小値 | |
| Center_B_mean_max | [v4.3+ Bayer RAW] 中央パッチ 青チャンネル平均ピクセルレベル最大値 | |
| Center_B_mean_min | [v4.3+ Bayer RAW] 中央パッチ 青チャンネル平均ピクセルレベル最大値 | |
| センターR_std_max | [v4.3+ Bayer RAW] 中央パッチ 赤色チャンネル標準偏差最大値 | |
| センター_Gb_std_max | [v4.3+ Bayer RAW] センターパッチ グリーン(ブルー)チャンネル 標準偏差最大値 | |
| センターグループ標準最大 | [v4.3+ Bayer RAW] センターパッチ グリーン(レッド)チャンネル標準偏差最大値 | |
| センターB_std_max | [v4.3+ Bayer RAW] 中央パッチ 赤色チャンネル標準偏差最大値 | |
| R_ctr_corner_diff_pct_max | [v4.3+ Bayer RAW] 最大赤色中心とコーナーの差 % = 100%( R max - R min )/ R max 、ここでR max = 中心の平均赤色、 R min = コーナーの最小平均 R 値。 | |
| R_ctr_corner_diff_pct_mean_max | [v4.3+ Bayer RAW] 最大赤中心と平均コーナー差 % = 100%( R max - R mean )/ R max 、ここでR max = 中心の平均赤、 R mean = コーナーの平均 R 値。 | |
| Gr_ctr_corner_diff_pct_max | [v4.3+ Bayer RAW] 最大グリーン(レッド) 中央とコーナーの差 % = 100%(G r max - Gr min )/ Gr max 、ここでGr max = 中央の平均グリーン(レッド)、Gr min = コーナーの最小平均 Gr 値。 | |
| Gr_ctr_corner_diff_pct_mean_max | [v4.3+ Bayer RAW] 最大グリーン(レッド)中央と平均コーナー差 % = 100%(Gr max - Gr mean )/Gr max 、ここで Gr max = 中央の平均グリーン(レッド)、Gr mean = コーナーの平均 Gr 値。 | |
| Gb_ctr_corner_diff_pct_max | [v4.3+ Bayer RAW] 最大グリーン(ブルー)中央とコーナーの差 % = 100%(G r max - Gb min )/ Gb max 、ここでGb max = 中央の平均グリーン(ブルー)、Gb min = コーナーの最小平均 Gb 値。 | |
| Gb_ctr_corner_diff_pct_mean_max | [v4.3+ Bayer RAW] 最大グリーン(ブルー)中央と平均コーナーの差 % = 100%(Gb max - Gb mean )/Gb max 、ここで Gb max = 中央の平均グリーン(ブルー)、Gb mean = コーナーの平均 Gb 値。 | |
| B_ctr_corner_diff_pct_max | [v4.3+ Bayer RAW] 最大青色中心とコーナーの差 % = 100%(B max - B min )/B max 、ここで B max = 中心の平均青色、B min = コーナーの最小平均 B 値。 | |
| B_ctr_corner_diff_pct_mean_max | [v4.3+ Bayer RAW] 最大青色中心と平均コーナー差 % = 100%(B max - B mean )/ B max 、ここで B max = 中心の平均青色、B mean = コーナーの平均 B 値。 | |
| シミのサイズ(ピクセル)= 10 80(シミのみ) | Blemish_maximum_count のピクセル単位のシミのサイズは以下のとおりです。 | |
| シミの最大数 = 3 1 (シミのみ) | Blemish_size_pixelsで指定された最大サイズを持つピクセルにおける、最大欠陥数 | |
| [colorcheck]カラーチェックに使用します。これらのエントリは、カラー/トーンインタラクティブおよびカラー/トーンオートで使用される[multi]と同じです。 [colorcheck] に含まれていない [multi] の追加項目は、入手可能になり次第、以下に追加されます。 関連文書: Colorcheckの使用方法 | ||
| gamma_limits = .4 .7 | ガンマの最小値と最大値。 | |
| exposure_error_f_stop_limits = -1 1 | 露出誤差の限界値(F値) | |
| Delta_E_2000_mean_max | max(Delta-E 2000 平均値) | |
| Delta-C_2000_mean_max | max(Delta-C 2000 平均値) | |
| Delta-E_2000_max_max | max(デルタE 2000 max) | |
| Delta-C_2000_max_max | max(Delta-C 2000 max) | |
| Delta-E_mean_max | max(Delta-E平均) | |
| Delta-C_mean_max | max(Delta-C 平均) | |
| Delta-E_max_max | max(Delta-E max) | |
| Delta-C_max_max | max(Delta-C max) | |
| [歪み]歪み用 | ||
| SMIA_TV_Distortion_limits = -2 3 | SMIAテレビ歪み制限 | |
| [multi]カラー/トーンインタラクティブおよびカラー/トーンオートのカラー/グレースケールモジュールで使用します。上記で説明したカラーチェックの設定はすべて利用可能です。追加設定は、プログラムされ次第、以下に追記します。 P/Fパラメータを追加で設定する必要がある場合は、Color/Tone Interactive/AutoのJSON出力で利用可能な変数を確認することをお勧めします。 関連資料:カラー/トーンインタラクティブの使用方法|カラー/トーンオートの使用方法 | ||
| gamma_limits = .4 .7 | ガンマ値の最小値と最大値。(0.4と0.7はカラースペース画像の場合です。) | |
| ステップチャートの場合は[stepchart]を使用します。[multi] と同様のエントリもあります。 | ||
| gamma_limits = .4 .7 | ガンマの最小値と最大値。 | |
メインのiniファイルで合格/不合格ファイルを参照する
メインのini設定ファイルには、合格/不合格設定ファイルの場所を含む[api]セクションが含まれている必要があります。
[api]
nomsg = 1
savedel = 1
sfrrefine = 1
passFail = C:\Imatest\Data\passfailtest_1.txt
UUT(被試験ユニット)情報をImatest IT部門に送信する(オプション)
各テストには、UUT(テスト対象ユニット)を識別するための部品番号とシリアル番号(いずれも文字列)が含まれる場合があります。
部品番号とシリアル番号は、画像ファイルと画像サイズを定義するデータとともにImatest ITに渡されます。これは、以下の例に示すように、 Matlabで記述されたJSONオブジェクト内に含まれています。C、C++などのサンプルは、 Imatest ITのビルドに付属します。
% まず、画像をバイナリファイルとして読み込みます。
rdfname = 'C:\Imatest\projects\sfrplus\SFRplus_5.rw3';
inifile = 'C:\Imatest\projects\sfrplus\SFRplus_5_rw3.ini';
endian_str = 'ieee-le';精度 = 'uint16=>uint16';
jstr.width = 1280; jstr.height = 720; jstr.ncolors = 1; % 生ファイルには使用されません。
jstr.extension = 'rw3';
jstr.fileroot = rdfname;
jstr.serial_number = '46-062';
jstr.part_number = 'X-1 ロケット飛行機';
jsonObj = savejson('',jstr,[]); % 構造を JSON オブジェクトに変換します。
fd = fopen(rdfname, 'r', endian_str) ; % 画像ファイルを読み取り用に開きます。
[ im_orig count ] = fread(fd, inf, precision) ; % inf はビットをスキップすることを可能にします。
disp(char({'';'';'直接読み込み: 単一イメージ'}));
output = sfrplus_shell('', 'C:\Imatest\projects\sfrplus', inputKeys, opMode, ...
'C:\Imatest\projects\sfrplus\SFRplus_5_rw3.ini',im_orig,jsonObj);
% 'C:\Imatest\matlab\trunk\API\it_samples\sfr\sfr_gf1_1file.ini',im_orig,jsonObj);
disp(出力)
注: jstr.extension = 'rw3' はファイル拡張子を指し、そのデコードパラメータはGeneralized Read Raw 設定で設定されます。
jstr.width = 1280; jstr.height = 720; jstr.ncolors = 1; は、 Generalized Read Rawでデコードされる生ファイルには使用されません。これらは、標準フォーマットで処理された画像をデコードするために使用されます。
メインのiniファイルで設定された値を上書きします。
実行時にメインのiniファイル(上記の例ではC:\Imatest\projects\sfrplus\SFRplus_5_rw3.ini)の設定を上書きしたい場合があります。たとえば、複数の異なる画像を順番に解析する場合などです。これは、呼び出しシーケンス内のステートメントで行うことができます。以下にバーガンディで示されている3つの変数が現在サポートされています。(crop_borders、lens_to_chart_diatance_cmなどのフィールド)は、示されているとおりに正確に入力する必要があります(プログラムにハードコードされています)。ご要望に応じて、さらに多くの変数を追加できます。
...
jstr.serial_number = '46-062';
jstr.part_number = 'X-1 ロケット飛行機';
jstr.crop_borders = [5 5 5 5]; % 作物の境界線 ( [LRTB] )
jstr.lens_to_chart_distance_cm = 33.3;
jstr.chart_height_cm = 39.99;
jsonObj = savejson('',jstr,[]); % 構造を JSON オブジェクトに変換します。
出力
出力形式は順次拡張されており、最終的にはJSONオブジェクトとXMLオブジェクトの両方が含まれる予定です。
JSON出力
合格/不合格の結果は JSON オブジェクトの末尾に追加されます。傷については、
{
「blemishResults」:{
"dateRun": "2012年4月10日 17:59:58",
...
"N_blemish_count": [1],
"blemishSizePxls": [1651]、
"blemishCenter_X": [781.5]、
"blemishCenter_Y": [644.2]、
「合格失敗」:{
"started_at": "2012-04-10 17:59:58",
"part_number": "X-1 ロケットプレーン",
"serial_number": "46-062",
"終了日時": "2012-04-10 18:00:00",
「ランタイム」: [1.848969517]、
「Dead_pixels_max」:[10]、
「デッドピクセル」:[0]、
「Dead_pixels_pf」:[1]、
「デッドピクセルステータス」: 「合格」
「Hot_pixels_max」:[10]、
「ホットピクセル」:[0]、
「Hot_pixels_pf」:[1]、
「Hot_pixels_status」: 「合格」
「Optical_center_offset_max」:[50]、
「光学中心オフセット」:[-30,14]、
「Optical_center_offset_pf」:[1]、
「光学中心オフセットステータス」:「合格」
}
}
}
解釈: デッドピクセルの最大許容数は 10 です (..._max で指定)。0 個が検出されました。「..._pf」: [1] は、画像が基準を満たしたことを意味します。「..._status」: 「合格」も、画像が合格したことを意味します。これらの 3 行は、合格/不合格モニターで読みやすくするために解析され、不合格の結果が最初に表示されます。例:

SFRplusの場合、
{
"sfrplusResults": {
"dateRun": "2012年4月10日 20:22:27",
...
"k1_3rd_order_dist_coeff": [0.0117]、
"h1_5th_order_dist_coeff": [-0.036]、
"h2_5th_order_dist_coeff": [0.0443]、
「合格失敗」:{
"started_at": "2012-04-15 16:05:10",
"part_number": "X-1 ロケットプレーン",
"serial_number": "46-062",
"終了日時": "2012-04-15 16:05:15",
「ランタイム」: [4.52085684]、
"all_tests_passed": [0],
"MTF50P_ratio_min": [0.5],
「MTF50P_ratio」:[0.7628270592]、
"MTF50P_ratio_passed": [1]、
"MTF50P_CP_weighted_mean_min": [0.13],
「MTF50P_CP_weighted_mean」:[0.132948091]、
「MTF50P_CP_weighted_mean_passed」: [1]、
「Rotation_degrees_max」:[1]、
"Horizontal_bars_OK_min": [1],
「水平バーOK」:[1]、
「Horizontal_bars_OK_passed」:[1]、
「All_Edge_IDs_detected」: [1]、
「すべてのエッジIDが検出されました」:[1]、
「All_Edge_IDs_detected_passed」:[1]、
「ミラーチャート」:[1]、
"Mirrored_chart_OK": [1]、
「Mirrored_chart_passed」: [1]、
「Bayer_decode」:[1]、
「Bayer_decode_OK」:[1]、
「Bayer_decode_passed」: [1]、
"Color_expected_detected": [1],
"Color_expected_OK": [0]、
"Color_expected_passed": [0],
「Stepchart_expected_detected」:[1]、
「Stepchart_expected_OK」:[1]、
「Stepchart_expected_passed」:[1]、
「回転角度」:[-0.6021933244]、
「Rotation_degrees_passed」:[1]、
"FOV_degrees_diagonal_min": [62],
"FOV_degrees_diagonal": [103.8954245],
"FOV_passed": [1]、
「収束角の最大値」:[5]、
"Convergence_angle_degrees_horz": [-1.816256865],
「収束角度_垂直」:[-4.310448164]、
「収束角通過」:[1]、
"Secondary_readout_1_center_mean_min": [0.2],
"Secondary_readout_1_center_name": "MTF @ .25 LP/mm",
"Secondary_readout_1_center_mean": [0.1525933797],
"Secondary_readout_1_center_mean_passed": [0],
"Secondary_readout_1_outer_mean_min": [0.2],
"Secondary_readout_1_outer_name": "MTF @ .25 LP/mm",
"Secondary_readout_1_outer_mean": [0.1827151453],
"Secondary_readout_1_outer_mean_passed": [0],
"Secondary_readout_2_center_mean_min": [0.2],
"Secondary_readout_2_center_name": "MTF @ .125 LP/mm",
"Secondary_readout_2_center_mean": [0.5577878056],
「Secondary_readout_2_center_mean_passed」: [1]、
"Secondary_readout_2_outer_mean_min": [0.2],
"Secondary_readout_2_outer_name": "MTF @ .125 LP/mm",
"Secondary_readout_2_outer_mean": [0.5271610521],
「Secondary_readout_2_outer_mean_passed」:[1]
}
}
}