CHKIMG関数リファレンス

UWSCで画像認識させる場合はCHKIMG関数を利用します。

CHKIMG関数は次のような引数を利用します。

戻値 = CHKIMG( [画像名, 透過色/色無視, x1, y1, x2, y2, 番号, 色幅] )

 

画像名

画像名は画像ファイル名を指定します。BMP形式のみ利用できることに注意してください。 ファイル名には.bmpという拡張子も含めて指定します。

ちなみに画像ファイル名を指定しなかった場合はクリップボードを参照します。

 

透過色/色無視

認識させる画像によっては透過色の指定をする必要があります。 指定しなくても問題ない場合もありますし、両方使うことがあるでしょう。

0を指定した場合、もしくは指定しなかった場合は透過色を指定しません。

1~4を指定した場合は番号に対応したピクセルの色を透過色とします。 番号と対応している場所は次の通りです。 1:左上 2:右上 3:左下 4:右下

-1を指定した場合は色を無視して形でチェックします。

 

サーチ範囲

x1,y1,x2,y2はサーチ範囲を指定します。 画像認識処理を高速化させたり余計な場所まで処理範囲に含めないために使用します。 特に指定しなくても大丈夫です。

 

番号

画像認識させる場合、意図するしないを問わず複数の位置が検出されることもあります。 この番号を指定することで、複数検出されたものから1つを指定することができます。

-1を指定した場合は戻り値に検出できた数が代入されます。 この場合、検出された画像の位置情報はALL_IMG_X[], ALL_IMG_Y[]に格納されます。 (G_IMG_X、G_IMG_Yには最後にヒットした位置が入ります)

 

色幅

画像認識では色も厳密にチェックされますが、場合によっては多少幅を持たせてチェックさせたいときもあります。 そのような場合にここで指定します。 演算をすることで色幅を細かく指定できます。

マニュアルから転載します。

 IMG_MSK_BGR1  // 各色(BGR)に対し 2/256の色幅を許す
 IMG_MSK_BGR2  // 各色(BGR)に対し 4/256の色幅を許す
 IMG_MSK_BGR3  // 各色(BGR)に対し 8/256の色幅を許す
 IMG_MSK_BGR4  // 各色(BGR)に対し 16/256の色幅を許す
 IMG_MSK_B1, 2, 3, 4  // 青に対し 2/256, 4/256, 8/256, 16/256の色幅を許す
 IMG_MSK_G1, 2, 3, 4  // 緑に対し 2/256, 4/256, 8/256, 16/256の色幅を許す
 IMG_MSK_R1, 2, 3, 4  // 赤に対し 2/256, 4/256, 8/256, 16/256の色幅を許す
 ※ 演算可 例:IMG_MSK_B1 or IMG_MSK_R3(青に対し 2/256の色幅を許す + 赤に対し 8/256の色幅を許す)

戻値

条件に従って画像認識した結果が代入されます。画像認識に成功すればTRUEが、失敗すればFALSEが代入されます。 TRUEの場合はG_IMG_X、G_IMG_Yに位置情報が格納されます。

番号で-1を指定した場合は検出に成功した数が代入され、位置情報はALL_IMG_X[],ALL_IMG_Y[]に格納されます。 配列は0番から始まることに注意しましょう。(1番目に検出された位置情報はALL_IMG_X[0],ALL_IMG_Y[0]に代入されます。)