diff --git a/engine/SaveDebugImageEngine/SaveDebugImageEngine.cpp b/engine/SaveDebugImageEngine/SaveDebugImageEngine.cpp index 95d8729..742bd05 100644 --- a/engine/SaveDebugImageEngine/SaveDebugImageEngine.cpp +++ b/engine/SaveDebugImageEngine/SaveDebugImageEngine.cpp @@ -43,6 +43,12 @@ APP_ERROR SaveDebugImageEngine::Process() } std::shared_ptr pVStep2OutputData = std::static_pointer_cast(pvoidd); + + if (pVStep2OutputData->cvImage.empty()) + { + LogWarn << " 帧:" << pVStep2OutputData->iFrameId << " 数据源:" << pVStep2OutputData->iDataSource << " debug图像为空"; + continue; + } cv::Mat image = pVStep2OutputData->cvImage.clone(); std::string strDataDir = this->baseConfig_.strDebugResultPath + "/" diff --git a/engine/SaveMoveImageEngine/SaveMoveImageEngine.cpp b/engine/SaveMoveImageEngine/SaveMoveImageEngine.cpp index 7a8c65b..8e286f7 100644 --- a/engine/SaveMoveImageEngine/SaveMoveImageEngine.cpp +++ b/engine/SaveMoveImageEngine/SaveMoveImageEngine.cpp @@ -43,6 +43,14 @@ APP_ERROR SaveMoveImageEngine::Process() std::shared_ptr pSaveImgData = std::static_pointer_cast(pvoidd); + if (pSaveImgData->cvImage.empty()) + { + LogWarn << "图片异常,跳过"; + continue; + } + + cv::Mat image = pSaveImgData->cvImage.clone(); + //图片绝对路径 if (pSaveImgData->strFilePath.back() != '/') { @@ -56,15 +64,12 @@ APP_ERROR SaveMoveImageEngine::Process() continue; } - if (!pSaveImgData->cvImage.empty()) + if (cv::imwrite(strImgFilePath, image, this->vecCompressionParams_)) { - if (cv::imwrite(strImgFilePath, pSaveImgData->cvImage, this->vecCompressionParams_)) - { - } - else - { - LogError << "图片存储失败:" << strImgFilePath; - } + } + else + { + LogError << "图片存储失败:" << strImgFilePath; } } return APP_ERR_OK;