赞
踩
>
获取图片路径
C:\Users\Administrator\AppData\Roaming\MVTec\HALCON-23.11-Progress\examples\images
- 1
必须要有Good或者是OK文件夹做标注,剩下两个为逻辑异常和结构异常
点击检查选择good可以获取所有good图像的照片
点击创建应用和拆分
点击训练
> 点击创建训练点击保存更改
设置完成后点击开始训练
点击评估
通过阈值可以调整判定的区间
滑动热图可以看出误判结果
导出训练文件
已经用 DLT做好标注,训练,和评估,只需修改推理代码
* 获取文件图像路径包含合格和不合格图像 list_files ('C:/Users/Administrator/AppData/Roaming/MVTec/HALCON-23.11-Progress/examples/images/juice_bottle/logical_anomaly', ['files','follow_links'], ImageFiles) tuple_regexp_select (ImageFiles, ['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles) * 读取模型 read_dl_model (TrainedModel, DLModelHandle) * 设置硬件 query_available_dl_devices (['runtime', 'runtime', 'id'], ['gpu', 'cpu', 0], DLDeviceHandles) set_dl_model_param (DLModelHandle, 'device', DLDeviceHandles[0]) * 创建预处理参数 create_dl_preprocess_param_from_model (DLModelHandle, 'none', 'full_domain', [], [], [], DLPreprocessParam) * 获取模型参数 get_dl_model_param(DLModelHandle,'meta_data',MetaData) * 异常值分类阈值 ClassificationThreshold := number(MetaData.anomaly_classification_threshold) SegmentationThreshold := number(MetaData.anomaly_segmentation_threshold) * * Create a dictionary with dataset parameters used for display. DLDatasetInfo := dict{class_names: ['ok', 'nok'], class_ids: [0, 1]} * * Apply the model to test images. WindowDict := dict{} for IndexInference := 0 to |ImageFiles| - 1 by 1 * read_image (Image, ImageFiles[IndexInference]) gen_dl_samples_from_images (Image, DLSample) * 获取预处理参数 preprocess_dl_samples (DLSample, DLPreprocessParam) * 分类检测 apply_dl_model (DLModelHandle, DLSample, [], DLResult) * *阈值处理 threshold_dl_anomaly_results (SegmentationThreshold, ClassificationThreshold, DLResult) * 显示结果 dev_display_dl_data (DLSample, DLResult, DLDatasetInfo, ['anomaly_result', 'anomaly_image'], [], WindowDict) dev_disp_text ('Press F5 (continue)', 'window', 'bottom', 'center', 'black', [], []) stop () endfor dev_close_window_dict (WindowDict) return ()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。