|
|
|
|
@ -66,7 +66,7 @@ bool ReadSystemConfig(const std::string &strPath, std::shared_ptr<SystemConfigPa
|
|
|
|
|
|
|
|
|
|
int main(int argc, char *argv[])
|
|
|
|
|
{
|
|
|
|
|
bool bsave = false;
|
|
|
|
|
bool bsave = false;
|
|
|
|
|
if (argc > 1 && string(argv[1]) != "-h")
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
@ -76,15 +76,15 @@ int main(int argc, char *argv[])
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
printf("test ImgMeasure Count >>>>>> start bsave %d\n",bsave);
|
|
|
|
|
printf("test ImgMeasure Count >>>>>> start bsave %d\n", bsave);
|
|
|
|
|
std::shared_ptr<SystemConfigParam> psystem_param;
|
|
|
|
|
DETECT_TYPE detect_type = DETECT_TYPE_QX; //检测类型
|
|
|
|
|
DETECT_TYPE detect_type = DETECT_TYPE_QX; // 检测类型
|
|
|
|
|
|
|
|
|
|
// ReadSystemConfig("../data/Top1_Det/System_Config.json", psystem_param);
|
|
|
|
|
// CAMERA_POSITION cam_position = CAMERA_TOP_1;//相机位置
|
|
|
|
|
|
|
|
|
|
ReadSystemConfig("../data/Top2_Det/System_Config.json", psystem_param);
|
|
|
|
|
CAMERA_POSITION cam_position = CAMERA_TOP_2;//相机位置
|
|
|
|
|
// ReadSystemConfig("../data/Top2_Det/System_Config.json", psystem_param);
|
|
|
|
|
// CAMERA_POSITION cam_position = CAMERA_TOP_2; // 相机位置
|
|
|
|
|
|
|
|
|
|
// ReadSystemConfig("../data/Side1_Det/System_Config.json", psystem_param);
|
|
|
|
|
// CAMERA_POSITION cam_position = CAMERA_SIDE_1;//相机位置
|
|
|
|
|
@ -96,15 +96,15 @@ int main(int argc, char *argv[])
|
|
|
|
|
// CAMERA_POSITION cam_position = CAMERA_DOWN_1;//相机位置
|
|
|
|
|
|
|
|
|
|
//测旋转
|
|
|
|
|
// ReadSystemConfig("../data/Down_Det/System_Config.json", psystem_param);
|
|
|
|
|
// CAMERA_POSITION cam_position = CAMERA_DOWN_1;//相机位置
|
|
|
|
|
// detect_type = DETECT_TYPE_ANGLE;
|
|
|
|
|
ReadSystemConfig("../data/Down_Det/System_Config.json", psystem_param);
|
|
|
|
|
CAMERA_POSITION cam_position = CAMERA_DOWN_1;//相机位置
|
|
|
|
|
detect_type = DETECT_TYPE_ANGLE;
|
|
|
|
|
|
|
|
|
|
std::shared_ptr<ImgCheckBase> pImgCount = ImgCheckBase::GetInstance();
|
|
|
|
|
printf("%s %s \n", pImgCount->GetVersion().c_str(), pImgCount->GetErrorInfo().c_str());
|
|
|
|
|
|
|
|
|
|
cv::Mat img = cv::imread(psystem_param->str_detImgPath);
|
|
|
|
|
printf("img path %s \n",psystem_param->str_detImgPath.c_str());
|
|
|
|
|
printf("img path %s \n", psystem_param->str_detImgPath.c_str());
|
|
|
|
|
if (img.empty())
|
|
|
|
|
{
|
|
|
|
|
printf(" det img is empty >> exit \n");
|
|
|
|
|
@ -142,43 +142,54 @@ int main(int argc, char *argv[])
|
|
|
|
|
cv::imwrite("resultImg.png", result->resultImg);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 文件夹测试
|
|
|
|
|
std::string strImgPath = psystem_param->str_ImagesPath;
|
|
|
|
|
if (strImgPath != "")
|
|
|
|
|
bool test_folder_flag = false; // dyy-add
|
|
|
|
|
if (argc > 1 && string(argv[1]) != "-h")
|
|
|
|
|
{
|
|
|
|
|
std::cout << strImgPath << std::endl;
|
|
|
|
|
std::vector<cv::String> img_paths;
|
|
|
|
|
bool bgo = true;
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
cv::glob(strImgPath, img_paths, true);
|
|
|
|
|
}
|
|
|
|
|
catch (const std::exception &e)
|
|
|
|
|
{
|
|
|
|
|
bgo = false;
|
|
|
|
|
std::cout << "Invalid or non-existent directory: " << strImgPath << std::endl;
|
|
|
|
|
}
|
|
|
|
|
if (bgo)
|
|
|
|
|
if (string(argv[1]) == "-f") // 测试文件夹
|
|
|
|
|
test_folder_flag = true;
|
|
|
|
|
}
|
|
|
|
|
if (test_folder_flag)
|
|
|
|
|
{
|
|
|
|
|
if (strImgPath != "")
|
|
|
|
|
{
|
|
|
|
|
SaveImageFile sv;
|
|
|
|
|
sv.SetSavePath(psystem_param->str_SaveImagesPath);
|
|
|
|
|
for (int i = 0; i < img_paths.size(); i++)
|
|
|
|
|
std::cout << strImgPath << std::endl;
|
|
|
|
|
std::vector<cv::String> img_paths;
|
|
|
|
|
bool bgo = true;
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
cv::glob(strImgPath, img_paths, true);
|
|
|
|
|
}
|
|
|
|
|
catch (const std::exception &e)
|
|
|
|
|
{
|
|
|
|
|
std::cout << img_paths[i] << std::endl;
|
|
|
|
|
std::string str = img_paths[i];
|
|
|
|
|
std::string strName = CheckUtil::splitFilePath(str);
|
|
|
|
|
cv::Mat img = cv::imread(str);
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
std::shared_ptr<shareImage> tem = std::make_shared<shareImage>();
|
|
|
|
|
tem->img = img;
|
|
|
|
|
std::shared_ptr<CheckResult> result;
|
|
|
|
|
re = pImgCount->CheckImg(tem, result);
|
|
|
|
|
printf("%d %d %s det time %f \n", img.cols, img.rows, strName.c_str(), result->UseTimeMS);
|
|
|
|
|
sv.saveImg(img, result->resultImg, strName, result->nresult);
|
|
|
|
|
bgo = false;
|
|
|
|
|
std::cout << "Invalid or non-existent directory: " << strImgPath << std::endl;
|
|
|
|
|
}
|
|
|
|
|
if (bgo)
|
|
|
|
|
{
|
|
|
|
|
SaveImageFile sv;
|
|
|
|
|
sv.SetSavePath(psystem_param->str_SaveImagesPath);
|
|
|
|
|
for (int i = 0; i < img_paths.size(); i++)
|
|
|
|
|
{
|
|
|
|
|
std::cout << img_paths[i] << std::endl;
|
|
|
|
|
std::string str = img_paths[i];
|
|
|
|
|
std::string strName = CheckUtil::splitFilePath(str);
|
|
|
|
|
cv::Mat img = cv::imread(str);
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
std::shared_ptr<shareImage> tem = std::make_shared<shareImage>();
|
|
|
|
|
tem->img = img.clone();
|
|
|
|
|
tem->cam_position = cam_position;
|
|
|
|
|
tem->detect_type = detect_type;
|
|
|
|
|
std::shared_ptr<CheckResult> result;
|
|
|
|
|
re = pImgCount->CheckImg(tem, result);
|
|
|
|
|
printf("%d %d %s det time %f \n", img.cols, img.rows, strName.c_str(), result->UseTimeMS);
|
|
|
|
|
sv.saveImg(img, result->resultImg, strName, result->nresult);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
printf("test ImgMeasure Count >>>>>> End \n");
|
|
|
|
|
return 0;
|
|
|
|
|
}
|