|
|
|
@ -1610,35 +1610,31 @@ int ImgCheckAnalysisy::AI_QX_Class_Thread()
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
case 1:
|
|
|
|
case 1:
|
|
|
|
cls_num = AI_CLass_QX_NAME_PIN_QueShi;
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
case 2:
|
|
|
|
|
|
|
|
cls_num = AI_CLass_QX_NAME_BTB_DuanLie;
|
|
|
|
cls_num = AI_CLass_QX_NAME_BTB_DuanLie;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
case 3:
|
|
|
|
case 2:
|
|
|
|
cls_num = AI_CLass_QX_NAME_LianXi;
|
|
|
|
cls_num = AI_CLass_QX_NAME_LianXi;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
case 4:
|
|
|
|
case 3:
|
|
|
|
cls_num = AI_CLass_QX_NAME_QueXi;
|
|
|
|
cls_num = AI_CLass_QX_NAME_QueXi;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
case 5:
|
|
|
|
case 4:
|
|
|
|
cls_num = AI_CLass_QX_NAME_YiWu;
|
|
|
|
cls_num = AI_CLass_QX_NAME_YiWu;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
case 6:
|
|
|
|
case 5:
|
|
|
|
cls_num = AI_CLass_QX_NAME_C_BianXing;
|
|
|
|
cls_num = AI_CLass_QX_NAME_C_BianXing;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
case 7:
|
|
|
|
case 6:
|
|
|
|
cls_num = AI_CLass_QX_NAME_other;
|
|
|
|
cls_num = AI_CLass_QX_NAME_Panel;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
default:
|
|
|
|
default:
|
|
|
|
cls_num = AI_CLass_QX_NAME_other;
|
|
|
|
cls_num = AI_CLass_QX_NAME_Panel;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@ -1892,9 +1888,6 @@ int ImgCheckAnalysisy::AIClassTypeToConfigType(int nAIQXType)
|
|
|
|
case AI_CLass_QX_NAME_PIN_PoSun:
|
|
|
|
case AI_CLass_QX_NAME_PIN_PoSun:
|
|
|
|
resultError_type = CONFIG_QX_NAME_PIN_PoSun;
|
|
|
|
resultError_type = CONFIG_QX_NAME_PIN_PoSun;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case AI_CLass_QX_NAME_PIN_QueShi:
|
|
|
|
|
|
|
|
resultError_type = CONFIG_QX_NAME_PIN_QueShi;
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
case AI_CLass_QX_NAME_BTB_DuanLie:
|
|
|
|
case AI_CLass_QX_NAME_BTB_DuanLie:
|
|
|
|
resultError_type = CONFIG_QX_NAME_BTB_DuanLie;
|
|
|
|
resultError_type = CONFIG_QX_NAME_BTB_DuanLie;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
@ -1910,9 +1903,8 @@ int ImgCheckAnalysisy::AIClassTypeToConfigType(int nAIQXType)
|
|
|
|
case AI_CLass_QX_NAME_C_BianXing:
|
|
|
|
case AI_CLass_QX_NAME_C_BianXing:
|
|
|
|
resultError_type = CONFIG_QX_NAME_C_BianXing;
|
|
|
|
resultError_type = CONFIG_QX_NAME_C_BianXing;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case AI_CLass_QX_NAME_other:
|
|
|
|
case AI_CLass_QX_NAME_Panel:
|
|
|
|
// 缺陷列表已移除 other,AI 分类的“其他”类无对应配置缺陷类型
|
|
|
|
resultError_type = CONFIG_QX_NAME_Panel;
|
|
|
|
resultError_type = CONFIG_QX_NAME_count;
|
|
|
|
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
default:
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
@ -2195,7 +2187,7 @@ int ImgCheckAnalysisy::BLobToDetResult()
|
|
|
|
int config_qx_type = blobs.blobTab[i].AIclasstype;
|
|
|
|
int config_qx_type = blobs.blobTab[i].AIclasstype;
|
|
|
|
if (config_qx_type < 0 || config_qx_type >= CONFIG_QX_NAME_count)
|
|
|
|
if (config_qx_type < 0 || config_qx_type >= CONFIG_QX_NAME_count)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
// AI 分类为“其他”等无对应缺陷类型的情况,不参与缺陷结果分析
|
|
|
|
// AI 分类无对应缺陷类型(无效类别)时,不参与缺陷结果分析
|
|
|
|
m_pdetlog->AddCheckstr(PrintLevel_1, DET_LOG_LEVEL_3, "BLobToDetResult",
|
|
|
|
m_pdetlog->AddCheckstr(PrintLevel_1, DET_LOG_LEVEL_3, "BLobToDetResult",
|
|
|
|
"blob idx %d invalid AIclasstype %d skip", i, config_qx_type);
|
|
|
|
"blob idx %d invalid AIclasstype %d skip", i, config_qx_type);
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
|