feat 添加AI检测存图

dev_lsy
liusiyang 2 weeks ago
parent 640f121f05
commit a979c07179

@ -1802,6 +1802,17 @@ int ImgCheckAnalysisy::AI_Detect_Thread(const cv::Mat &img, cv::Mat &ResultImg)
temAIresult->AI_inImg = result->input; temAIresult->AI_inImg = result->input;
temAIresult->AI_mask = outimg; temAIresult->AI_mask = outimg;
m_pImageAllResult->AI_Qx_MaskList.push_back(temAIresult); m_pImageAllResult->AI_Qx_MaskList.push_back(temAIresult);
// AI检测残点图存图
if (m_pbaseCheckFunction->saveImg.bSaveAIDetImg)
{
std::string roi_ext = "[" + std::to_string(result->roi.x) + "," + std::to_string(result->roi.y) + "]";
std::string strSaveDir = "/home/aidlux/BOE/FOG/AI_Detect/" + DetImgInfo_shareP->strImgProductID + "/";
CheckUtil::CreateDir(strSaveDir);
std::string strSavePath_in = strSaveDir + m_strCurDetChannel +"_"+ roi_ext + "_"+ "in" + ".png";
std::string strSavePath_out = strSaveDir + m_strCurDetChannel +"_"+ roi_ext + "_"+ "out" + ".png";
cv::imwrite(strSavePath_in, result->input);
cv::imwrite(strSavePath_out, outimg);
}
} }
completed++; completed++;
} }
@ -1853,7 +1864,7 @@ int ImgCheckAnalysisy::Traditional_Detect_Thread(const cv::Mat &img, cv::Mat &Re
cp.nCountFilter = traditionParam.nCountFilter; cp.nCountFilter = traditionParam.nCountFilter;
cp.productId = DetImgInfo_shareP->strImgProductID; cp.productId = DetImgInfo_shareP->strImgProductID;
cp.productChannel = m_strCurDetChannel; cp.productChannel = m_strCurDetChannel;
cp.bDebugsaveImg = DetImgInfo_shareP->bsaveProcessImg; cp.bDebugsaveImg = m_pbaseCheckFunction->saveImg.bSaveAIDetImg;
m_tcsCheck.SetChecConfig(&cp); m_tcsCheck.SetChecConfig(&cp);
} }

@ -1751,6 +1751,7 @@ struct Base_Function_SaveImg
bool bSaveMarkImg; // mark 存图 bool bSaveMarkImg; // mark 存图
bool bSaveClsImg; // 分类 存图 bool bSaveClsImg; // 分类 存图
bool bSaveAlginImg; // 分类 存图 bool bSaveAlginImg; // 分类 存图
bool bSaveAIDetImg; // AI 检测 存图
Base_Function_SaveImg() Base_Function_SaveImg()
{ {
@ -1762,6 +1763,7 @@ struct Base_Function_SaveImg
bSaveMarkImg = false; bSaveMarkImg = false;
bSaveClsImg = false; bSaveClsImg = false;
bSaveAlginImg = false; bSaveAlginImg = false;
bSaveAIDetImg = false;
} }
void copy(Base_Function_SaveImg tem) void copy(Base_Function_SaveImg tem)
@ -1771,17 +1773,18 @@ struct Base_Function_SaveImg
this->bSaveMarkImg = tem.bSaveMarkImg; this->bSaveMarkImg = tem.bSaveMarkImg;
this->bSaveClsImg = tem.bSaveClsImg; this->bSaveClsImg = tem.bSaveClsImg;
this->bSaveAlginImg = tem.bSaveAlginImg; this->bSaveAlginImg = tem.bSaveAlginImg;
this->bSaveAIDetImg = tem.bSaveAIDetImg;
} }
void print(std::string str) void print(std::string str)
{ {
printf("%s>>bOpen %d bSaveMarkImg %d bSaveClsImg %d bSaveAlginImg %d \n", str.c_str(), printf("%s>>bOpen %d bSaveMarkImg %d bSaveClsImg %d bSaveAlginImg %d bSaveAIDetImg %d\n", str.c_str(),
bOpen, bSaveMarkImg, bSaveClsImg, bSaveAlginImg); bOpen, bSaveMarkImg, bSaveClsImg, bSaveAlginImg, bSaveAIDetImg);
} }
std::string GetInfo(std::string str) std::string GetInfo(std::string str)
{ {
char buffer[256]; char buffer[256];
sprintf(buffer, "%s>>bOpen %d bSaveMarkImg %d bSaveClsImg %d bSaveAlginImg %d \n", str.c_str(), sprintf(buffer, "%s>>bOpen %d bSaveMarkImg %d bSaveClsImg %d bSaveAlginImg %d bSaveAIDetImg %d\n", str.c_str(),
bOpen, bSaveMarkImg, bSaveClsImg, bSaveAlginImg); bOpen, bSaveMarkImg, bSaveClsImg, bSaveAlginImg, bSaveAIDetImg);
std::string str123 = buffer; std::string str123 = buffer;
return str123; return str123;
} }

@ -1315,6 +1315,10 @@ int BaseFuntonConfigJson::GetFunction(Json::Value value)
{ {
_config.saveImg.bSaveAlginImg = value_f["form"]["SaveImg_Config"]["Align_Big_Save"].asBool(); _config.saveImg.bSaveAlginImg = value_f["form"]["SaveImg_Config"]["Align_Big_Save"].asBool();
} }
if (value_f["form"]["SaveImg_Config"]["Det_Save"])
{
_config.saveImg.bSaveAlginImg = value_f["form"]["SaveImg_Config"]["Det_Save"].asBool();
}
} }
else else
{ {

Loading…
Cancel
Save