|
|
|
|
@ -849,87 +849,17 @@ int BaseFuntonConfigJson::GetFunction(Json::Value value)
|
|
|
|
|
_config.markLine.Init();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if ("Pin_QX_Detect" == strCode)
|
|
|
|
|
if ("Support_QX_Detect" == strCode)
|
|
|
|
|
{
|
|
|
|
|
auto value_f = value;
|
|
|
|
|
// std::cout << value_f << std::endl;
|
|
|
|
|
// getchar();
|
|
|
|
|
_config.edgeDet.bOpen = value_f["isOpen"].asBool();
|
|
|
|
|
if (_config.edgeDet.bOpen)
|
|
|
|
|
_config.supportDet.bOpen = value_f["isOpen"].asBool();
|
|
|
|
|
if (_config.supportDet.bOpen)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Search_Config"]["Search_threshold"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.Search_threshold = value_f["form"]["Search_Config"]["Search_threshold"].asInt();
|
|
|
|
|
}
|
|
|
|
|
if (value_f["form"]["Detect_Config"]["Det_threshold"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.Det_threshold = value_f["form"]["Detect_Config"]["Det_threshold"].asInt();
|
|
|
|
|
}
|
|
|
|
|
if (value_f["form"]["Detect_Config"]["Det_Range"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.Det_Range = value_f["form"]["Detect_Config"]["Det_Range"].asInt();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Detect_Config"]["QX_Widht_min"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.QX_Widht_min = value_f["form"]["Detect_Config"]["QX_Widht_min"].asInt();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Detect_Config"]["QX_Widht_max"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.QX_Widht_max = value_f["form"]["Detect_Config"]["QX_Widht_max"].asInt();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Detect_Config"]["QX_Height_min"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.QX_Height_min = value_f["form"]["Detect_Config"]["QX_Height_min"].asInt();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Detect_Config"]["QX_Height_max"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.QX_Height_max = value_f["form"]["Detect_Config"]["QX_Height_max"].asInt();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
///============================================
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Jiao_Config"]["LU_Jiao"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.queJiao_LU_Open = value_f["form"]["Jiao_Config"]["LU_Jiao"].asBool();
|
|
|
|
|
}
|
|
|
|
|
if (value_f["form"]["Jiao_Config"]["RU_Jiao"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.queJiao_RU_Open = value_f["form"]["Jiao_Config"]["RU_Jiao"].asBool();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Jiao_Config"]["LD_Jiao"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.queJiao_LD_Open = value_f["form"]["Jiao_Config"]["LD_Jiao"].asBool();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Jiao_Config"]["RD_Jiao"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.queJiao_RD_Open = value_f["form"]["Jiao_Config"]["RD_Jiao"].asBool();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Jiao_Config"]["Jiao_Width"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.queJiao_width = value_f["form"]["Jiao_Config"]["Jiao_Width"].asInt();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Jiao_Config"]["Jiao_Height"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.queJiao_height = value_f["form"]["Jiao_Config"]["Jiao_Height"].asInt();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (value_f["form"]["Draw_Config"]["Open"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.bDrawRoi = value_f["form"]["Draw_Config"]["Open"].asBool();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 2、读取区域点
|
|
|
|
|
{
|
|
|
|
|
auto value_region = value_f["form"]["Draw_Config"]["Edge_ROI"];
|
|
|
|
|
auto value_region = value_f["form"]["support_param"]["support_region"];
|
|
|
|
|
if (value_region.isArray())
|
|
|
|
|
{
|
|
|
|
|
for (int idx = 0; idx < value_region.size(); idx++)
|
|
|
|
|
@ -938,25 +868,31 @@ int BaseFuntonConfigJson::GetFunction(Json::Value value)
|
|
|
|
|
p.x = value_region[idx][0].asInt();
|
|
|
|
|
p.y = value_region[idx][1].asInt();
|
|
|
|
|
|
|
|
|
|
_config.edgeDet.region.emplace_back(p);
|
|
|
|
|
_config.supportDet.region.emplace_back(p);
|
|
|
|
|
}
|
|
|
|
|
if (_config.edgeDet.region.size() > 0)
|
|
|
|
|
if (_config.supportDet.region.size() > 0)
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.draw_ROI = boundingRect(_config.edgeDet.region);
|
|
|
|
|
_config.supportDet.supportRect = minAreaRect(_config.supportDet.region);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (value_f["form"]["otherConfig"]["bDrawResult"])
|
|
|
|
|
if (value_f["form"]["support_param"]["x_offset"])
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.bDrawResult = value_f["form"]["otherConfig"]["bDrawResult"].asBool();
|
|
|
|
|
_config.supportDet.x_offset = value_f["form"]["support_param"]["x_offset"].asFloat();
|
|
|
|
|
}
|
|
|
|
|
if (value_f["form"]["support_param"]["y_offset"])
|
|
|
|
|
{
|
|
|
|
|
_config.supportDet.y_offset = value_f["form"]["support_param"]["y_offset"].asFloat();
|
|
|
|
|
}
|
|
|
|
|
if (value_f["form"]["support_param"]["r_offset"])
|
|
|
|
|
{
|
|
|
|
|
_config.supportDet.r_offset = value_f["form"]["support_param"]["r_offset"].asFloat();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
_config.edgeDet.Init();
|
|
|
|
|
_config.supportDet.Init();
|
|
|
|
|
}
|
|
|
|
|
// _config.edgeDet.print("edgeDet");
|
|
|
|
|
// getchar();
|
|
|
|
|
}
|
|
|
|
|
if ("Det_Image_Save" == strCode)
|
|
|
|
|
{
|
|
|
|
|
|