昇腾社区首页
中文
注册

reference

训练参数及范围

reference模型训练的参数名、类型、取值范围、默认值及说明如下表1所示。

表1 reference模型训练参数说明(wafer_mindspore/reference/reference_train.py)

参数名

类型

取值范围

默认值

说明

--rgb_dir

str

-

./xxx/

RGB图目录路径。

--batch_size

int

[1, 128]

16

训练batch大小。

--epochs

int

[1, 100]

50

训练次数。

--train_output_path

str

-

'./ckpt'

ckpt保存路径。

--chip_id

str

-

""

芯片ID。

--setupid

str

-

""

芯片层。

--klarf_file

str

-

"xxx"

klarf文件名,文件需放在“rgb_dir”目录下。

--gray_file

str

-

"xxx"

灰度图文件名,文件需放在“rgb_dir”目录下。

--device_num

int

1,2,4,8

1

使用的训练卡数量。

--device_id

int

[0, 7]

0

单卡训练时使用的训练卡ID。

--rank_table_file

str

-

None

多卡训练使用的“rank_table_file”路径。

必须放在“rgb_dir”目录下新建一个“new_image”文件夹,用于放置待配准图片。

输入参数中依赖的“klarf_file”必须是一个txt文件,描述了机台拍摄图片的相关信息,需遵循以下规则进行编写。

  • 一行对应一张图片。
  • 每行共有12个字段。
  • 字段之间用一个空格分隔。

字段信息参见表2,编写示例参考如下。

新建一个“data.txt”,里面的内容为如下三行字符串。

img_1.jpg 001 M1 11224.435 12925.229 0 wafer_id1 01-08-22-13:09:22; device_id1 L21510106 model1 20
img_2.jpg 001 M1 13817.899 17822.569 0 wafer_id2 12-29-21-08:17:05; device_id1 L21510104 model2 20
img_3.jpg 001 M1 970.857 24809.092 0 wafer_id3 12-21-21-06:02:08; device_id3 L21510206 model3 20
表2 配准依赖文本字段信息说明

索引值

类型

取值范围

说明

0

str

-

图片路径。

1

str

-

芯片ID。

2

str

-

芯片层。

3

float

[0, 100000]

图片对应的 x 坐标。

4

float

[0, 100000]

图片对应的 y 坐标。

5

int

0或2

图片标签。

6

str

-

晶圆ID。

7

str

-

时间戳。

8

str

-

机台ID。

9

str

-

批次编号。

10

str

-

机台型号。

11

int

[1, 1000]

放大倍率。

训练命令参考

reference模型训练的命令参考如下:

python3 reference_train.py --rgb_dir=<rgb_dir>  --epochs=31 --chip_id=<chip_id>  --setupid=<setupid> --gray_file= <gray_file>  --klarf_file=<klarf_file>
  • <rgb_dir>为RGB待检图的目录路径。
  • <chip_id>为芯片id,表示训练那类型芯片数据集。
  • <setupid>为芯片层,表示某层具体芯片图,与<chip_id>共同指定训练数据集。
  • <gray_file>为灰度图名称。
  • <klarf_file>为klarf文件名称。

模型训练过程存在随机性,且不同芯片层的精度不同。最终以评估精度为准。训练精度结果参考如下:

图1 训练精度结果

训练结束后会在“--train_output_path”参数指定的输出目录中生成.ckpt模型文件。

评估参数及范围

reference模型评估的参数名、类型、取值范围、默认值及说明如下表3所示。

表3 reference模型评估参数说明(wafer_mindspore/reference/eval.py)

参数名

类型

取值范围

默认值

说明

--root_path

str

-

"./xxx/yyy/zzz"

评估生成文件保存路径。

--gray_image_path

str

-

""

灰度参考图路径。

--mask_image_path

str

-

""

掩码图路径。

--overlap

float

[1,2]

1.2

两张图片重叠率。

--chip_id

str

-

""

芯片ID。

--setupid

str

-

""

芯片层。

--model

str

-

""

ckpt模型路径。

--gray_ref_scale

int

[1, 1000]

248

在灰度参考图上进行抠图的尺寸。

--rgb_ref_scale

int

[1, 1000]

366

在RGB参考图上进行抠图的尺寸。

--device_target

str

"Ascend"或“GPU”

"Ascend"

评估平台。

评估命令参考

reference模型评估的命令参考如下:

python3 eval.py --root_path=<root_path> --gray_image_path <gray_image_path> --mask_image_path <mask_image_path>  --chip_id <chip_id> --setupid=<setupid>  --model <model_path>
  • <root_path>为评估生成文件保存路径。
  • <gray_image_path>为灰度参考图路径。
  • <mask_image_path>为掩码图路径。
  • <chip_id>为芯片列表,表示训练那类型芯片数据集。
  • <setupid>为芯片层,表示某层具体芯片图,与<chip_id>共同指定训练数据集。
  • <model_path>为上一步训练生成的ckpt文件。

采用训练输出的ckpt,来评估模型的精度值,参考如下。

图2 训练输出ckpt并用于评估模型的精度值

“--root_path”参数指定目录生成RGB等图片:“gray_ref”为灰度图路径,“mask_ref”为掩码图,“rgb_ref”为彩色图。

图3 指定目录生成RGB图片