增加try catch捕获异常

屏蔽circle算法(该算法可能存在bug)
jizhi
bob.pan 4 years ago
parent 84dfb14055
commit d534ed13ee

@ -51,6 +51,7 @@ CAlgorithmFluorescence::~CAlgorithmFluorescence(void)
//检测算法入口函数 由corctl框架回调 //检测算法入口函数 由corctl框架回调
int CAlgorithmFluorescence::IImageAnalysis(class IImageObject* pImgObj, TP_ALGORITHM_OPTION* pOpt, class IDetectorEngine* pDE) int CAlgorithmFluorescence::IImageAnalysis(class IImageObject* pImgObj, TP_ALGORITHM_OPTION* pOpt, class IDetectorEngine* pDE)
{ {
try {
qDebug() << "start alg"; qDebug() << "start alg";
QMutexLocker locker(&mutex); QMutexLocker locker(&mutex);
CircleParam cParam; CircleParam cParam;
@ -188,6 +189,11 @@ int CAlgorithmFluorescence::IImageAnalysis(class IImageObject* pImgObj, TP_ALGOR
pImgObj->IVariantMapToUI(rltMap); pImgObj->IVariantMapToUI(rltMap);
qDebug() << "finish alg"; qDebug() << "finish alg";
return 1; return 1;
}
catch (...) {
qDebug() << "algo run Error " << __FUNCTION__;
return 1;
}
} }
//模板匹配流程 //模板匹配流程

@ -127,9 +127,12 @@ Q_SLOT void QAlgParamDlg::onChangeBG()
createfile->remove(DstPath); createfile->remove(DstPath);
//} //}
} }
if (!QFile::copy(sourcePath, DstPath)) { // if (!QFile::copy(sourcePath, DstPath)) {
//return false; // //return false;
} // }
QImage img;
img.load(sourcePath);
img.save(DstPath);
//emit sgChangeBG(DstPath); //emit sgChangeBG(DstPath);
QMessageBox infobox(QMessageBox::Information, tr("提示"), tr("背景图更新完成,请重启本软件."), QMessageBox::Yes, NULL); QMessageBox infobox(QMessageBox::Information, tr("提示"), tr("背景图更新完成,请重启本软件."), QMessageBox::Yes, NULL);
infobox.setWindowIcon(QIcon(":/image/leaper")); infobox.setWindowIcon(QIcon(":/image/leaper"));

@ -23,9 +23,9 @@
#include <QProcess> #include <QProcess>
#include "lpCryptokey.h" #include "lpCryptokey.h"
#define VERSION_HUB "3.0.1.7" #define VERSION_HUB "3.0.2.0"
#define VERSION_ALG "3.0.1.5" #define VERSION_ALG "3.0.1.5"
#define UPDATE_TIME "2021-10-09" #define UPDATE_TIME "2021-11-24"
#pragma execution_character_set("utf-8") #pragma execution_character_set("utf-8")
lpMainWin::lpMainWin(QWidget *parent) lpMainWin::lpMainWin(QWidget *parent)
@ -587,6 +587,9 @@ void lpMainWin::INewCameraImage(const QString& camKey, QImage img)
/*多线程发送算法结果*/ /*多线程发送算法结果*/
void lpMainWin::IVariantMapToUI(const QString& camKey, const QVariantMap& vMap) void lpMainWin::IVariantMapToUI(const QString& camKey, const QVariantMap& vMap)
{ {
try {
m_glbalRatio = 0; m_glbalRatio = 0;
emit(sgShowImgState(tr("显示识别结果"))); emit(sgShowImgState(tr("显示识别结果")));
Result2Ui *pResult = (Result2Ui*)vMap.value("result").toLongLong(); Result2Ui *pResult = (Result2Ui*)vMap.value("result").toLongLong();
@ -708,6 +711,11 @@ void lpMainWin::IVariantMapToUI(const QString& camKey, const QVariantMap& vMap)
m_pCtrl->saveResult(pResult); m_pCtrl->saveResult(pResult);
delete pResult; delete pResult;
}
catch(...)
{
qWarning() << "dump result " << __FUNCTION__;
}
} }
/*多线程获取算法参数*/ /*多线程获取算法参数*/

Loading…
Cancel
Save