diff --git a/othersoft/calibration_console/Source_Files/main.cpp b/othersoft/calibration_console/Source_Files/main.cpp index de43c24..f772b67 100644 --- a/othersoft/calibration_console/Source_Files/main.cpp +++ b/othersoft/calibration_console/Source_Files/main.cpp @@ -112,62 +112,62 @@ int main(int argc, char *argv[]) -// //自动曝光 -// logout("
AutoExpose!"); -// m_FiberSpectrometer->autoExpose(); -// -// int iExposureTime; -// m_FiberSpectrometer->getExposureTime(iExposureTime); -// -// message="
ExposureTime: " + QString::number(iExposureTime) + ""; -// logout(message); -// -// //程序sleep:等待关闭快门 -// message="
Please close the lamp in " + QString::number(query.sleepTimeinSecond) + "s!"; -// logout(message); -// QThread::sleep(query.sleepTimeinSecond); -// -// //采集暗帧 -// logout("
Record dark frame!"); -// m_FiberSpectrometer->recordDark(query.calFileOutputDirectory); -// -// -// //程序sleep:等待打开快门 -// message="
Please open the lamp in " + QString::number(query.sleepTimeinSecond) + "s!"; -// logout(message); -// QThread::sleep(query.sleepTimeinSecond); -// -// //采集积分球光谱 -// logout("
Record integrating sphere frame!"); -// m_FiberSpectrometer->recordTarget(query.averageTimes, query.calFileOutputDirectory); -// -// //准备定标文件数据 -// logout("
readAndResample_StandardLightFile!"); + //自动曝光 + logout("
AutoExpose!"); + m_FiberSpectrometer->autoExpose(); + + int iExposureTime; + m_FiberSpectrometer->getExposureTime(iExposureTime); + + message="
ExposureTime: " + QString::number(iExposureTime) + ""; + logout(message); + + //程序sleep:等待关闭快门 + message="
Please close the lamp in " + QString::number(query.sleepTimeinSecond) + "s!"; + logout(message); + QThread::sleep(query.sleepTimeinSecond); + + //采集暗帧 + logout("
Record dark frame!"); + m_FiberSpectrometer->recordDark(query.calFileOutputDirectory); + + + //程序sleep:等待打开快门 + message="
Please open the lamp in " + QString::number(query.sleepTimeinSecond) + "s!"; + logout(message); + QThread::sleep(query.sleepTimeinSecond); + + //采集积分球光谱 + logout("
Record integrating sphere frame!"); + m_FiberSpectrometer->recordTarget(query.averageTimes, query.calFileOutputDirectory); + + //准备定标文件数据 + logout("
readAndResample_StandardLightFile!"); DeviceAttribute deviceAttribute; DeviceInfo deviceInfo; m_FiberSpectrometer->getDeviceAttribute(deviceAttribute); m_FiberSpectrometer->getDeviceInfo(deviceInfo); -// -// CalibrationAlgorithm * m_CalibrationAlgorithm = new CalibrationAlgorithm(); -// m_CalibrationAlgorithm->readAndResample_StandardLightFile(query.standardLightFilePath,query.integratingSphereDetectorValue, deviceAttribute, deviceInfo); -// -// //生成辐射定标文件 -// if (query.calFileOutputName.isEmpty())//query->calFileOutputName=="" -// { -// QDateTime curDateTime = QDateTime::currentDateTime(); -// QString currentTime = curDateTime.toString("yyyy_MM_dd_hh_mm_ss"); -// QString calFileName = QDir::cleanPath(query.calFileOutputDirectory + QDir::separator() + currentTime + "_" + QString::fromStdString(deviceInfo.strSN) + ".dat"); -// -// query.calFileOutputName=calFileName; -// } -// logout("
Produce calibration file!"); -// m_CalibrationAlgorithm->produceCalfile(query.calFileOutputName, deviceAttribute, m_FiberSpectrometer->m_IntegratingSphereData, m_FiberSpectrometer->m_DarkData); -// -// //复制辐射定标文件 -// QDateTime curDateTime = QDateTime::currentDateTime(); -// QString currentTime = curDateTime.toString("yyyy_MM_dd_hh_mm_ss"); -// QString destName = QDir::cleanPath(query.calFileOutputDirectory + QDir::separator() + currentTime + "_" + QString::fromStdString(deviceInfo.strSN) + "_" +QString::number(query.position) + ".cal"); -// copyFileToPath(query.calFileOutputName,destName,true); + + CalibrationAlgorithm * m_CalibrationAlgorithm = new CalibrationAlgorithm(); + m_CalibrationAlgorithm->readAndResample_StandardLightFile(query.standardLightFilePath,query.integratingSphereDetectorValue, deviceAttribute, deviceInfo); + + //生成辐射定标文件 + if (query.calFileOutputName.isEmpty())//query->calFileOutputName=="" + { + QDateTime curDateTime = QDateTime::currentDateTime(); + QString currentTime = curDateTime.toString("yyyy_MM_dd_hh_mm_ss"); + QString calFileName = QDir::cleanPath(query.calFileOutputDirectory + QDir::separator() + currentTime + "_" + QString::fromStdString(deviceInfo.strSN) + ".dat"); + + query.calFileOutputName=calFileName; + } + logout("
Produce calibration file!"); + m_CalibrationAlgorithm->produceCalfile(query.calFileOutputName, deviceAttribute, m_FiberSpectrometer->m_IntegratingSphereData, m_FiberSpectrometer->m_DarkData); + + //复制辐射定标文件 + QDateTime curDateTime = QDateTime::currentDateTime(); + QString currentTime = curDateTime.toString("yyyy_MM_dd_hh_mm_ss"); + QString destName = QDir::cleanPath(query.calFileOutputDirectory + QDir::separator() + currentTime + "_" + QString::fromStdString(deviceInfo.strSN) + "_" +QString::number(query.position) + ".cal"); + copyFileToPath(query.calFileOutputName,destName,true); //判断仪器类型是否为海洋光学,将结果存储在变量isOcean中 auto * p_C = dynamic_cast(m_FiberSpectrometer); @@ -623,7 +623,7 @@ int getNonlinearityCoeffs1(double * coeffs) sbapi_shutdown(); return number; -} +}// //返回值是非线性校正系数的个数 int getNonlinearityCoeffs2(long deviceID, double * coeffs)