First update.

This commit is contained in:
sunwen
2023-10-09 09:29:21 +08:00
parent a434c105c0
commit 903ac2c087
56 changed files with 1044 additions and 1021 deletions

View File

@@ -17,8 +17,8 @@ namespace Recon
{
if(aJsonObj.is_array())
{
std::vector<double> vec = aJsonObj.get<std::vector<double>>();
double* data = vec.data();
std::vector<float> vec = aJsonObj.get<std::vector<float>>();
float* data = vec.data();
int size = vec.size();
if(aIsHorizontal)
{
@@ -29,8 +29,8 @@ namespace Recon
if(aJsonObj.is_number())
{
double value = aJsonObj.get<double>();
return Aurora::Matrix::fromRawData(new double[1]{value}, 1);
float value = aJsonObj.get<float>();
return Aurora::Matrix::fromRawData(new float[1]{value}, 1);
}
return Aurora::Matrix();
@@ -66,11 +66,11 @@ namespace Recon
}
if(ce.contains("offsetFilterEnabled"))
{
reconParams::offsetFilterEnabled = ce.at("offsetFilterEnabled").get<double>();
reconParams::offsetFilterEnabled = ce.at("offsetFilterEnabled").get<float>();
}
if(ce.contains("offsetFilterDisabled"))
{
reconParams::offsetFilterDisabled = ce.at("offsetFilterDisabled").get<double>();
reconParams::offsetFilterDisabled = ce.at("offsetFilterDisabled").get<float>();
}
}
@@ -195,11 +195,11 @@ namespace Recon
}
if(qualityCheck.contains("warningThreshold"))
{
reflectParams::warningThreshold = qualityCheck.at("warningThreshold").get<double>();
reflectParams::warningThreshold = qualityCheck.at("warningThreshold").get<float>();
}
if(qualityCheck.contains("errorThreshold"))
{
reflectParams::errorThreshold = qualityCheck.at("errorThreshold").get<double>();
reflectParams::errorThreshold = qualityCheck.at("errorThreshold").get<float>();
}
}
@@ -216,7 +216,7 @@ namespace Recon
}
if(dataPreparation.contains("offsetElectronic"))
{
reflectParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<double>();
reflectParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<float>();
}
if(dataPreparation.contains("removeDCOffset"))
{
@@ -229,11 +229,11 @@ namespace Recon
nlohmann::json imageInfos = params.at("imageInfos");
if(imageInfos.contains("pixelResolutionX"))
{
reflectParams::pixelResolutionX = imageInfos.at("pixelResolutionX").get<double>();
reflectParams::pixelResolutionX = imageInfos.at("pixelResolutionX").get<float>();
}
if(imageInfos.contains("pixelResolutionY"))
{
reflectParams::pixelResolutionY = imageInfos.at("pixelResolutionY").get<double>();
reflectParams::pixelResolutionY = imageInfos.at("pixelResolutionY").get<float>();
}
if(imageInfos.contains("imageStartpoint"))
{
@@ -319,7 +319,7 @@ namespace Recon
}
if(transmissionCorrection.contains("resolutionTransmMap"))
{
reflectParams::resolutionTransmMap = transmissionCorrection.at("resolutionTransmMap").get<double>();
reflectParams::resolutionTransmMap = transmissionCorrection.at("resolutionTransmMap").get<float>();
}
}
@@ -417,7 +417,7 @@ namespace Recon
}
if(dataSelection.contains("sensFilter"))
{
transParams::sensFilter = dataSelection.at("sensFilter").get<double>();
transParams::sensFilter = dataSelection.at("sensFilter").get<float>();
}
if(dataSelection.contains("angleLowerLimit"))
{
@@ -456,11 +456,11 @@ namespace Recon
}
if(qualityCheck.contains("warningThreshold"))
{
transParams::warningThreshold = qualityCheck.at("warningThreshold").get<double>();
transParams::warningThreshold = qualityCheck.at("warningThreshold").get<float>();
}
if(qualityCheck.contains("errorThreshold"))
{
transParams::errorThreshold = qualityCheck.at("errorThreshold").get<double>();
transParams::errorThreshold = qualityCheck.at("errorThreshold").get<float>();
}
}
@@ -490,7 +490,7 @@ namespace Recon
}
if(dataPreparation.contains("offsetElectronic"))
{
transParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<double>();
transParams::offsetElectronic = dataPreparation.at("offsetElectronic").get<float>();
}
if(dataPreparation.contains("aScanReconstructionFrequency"))
{
@@ -498,11 +498,11 @@ namespace Recon
}
if(dataPreparation.contains("minTemperature"))
{
transParams::minTemperature = dataPreparation.at("minTemperature").get<double>();
transParams::minTemperature = dataPreparation.at("minTemperature").get<float>();
}
if(dataPreparation.contains("maxTemperature"))
{
transParams::maxTemperature = dataPreparation.at("maxTemperature").get<double>();
transParams::maxTemperature = dataPreparation.at("maxTemperature").get<float>();
}
}
@@ -628,16 +628,16 @@ namespace Recon
reconParams::useTASTempComp = true;
reconParams::correctTASTemp = 1;
//reconParams.hardwareSelection
reconParams::gpuSelectionList = Aurora::Matrix::fromRawData(new double[8] {0,1,2,3,4,5,6,7},8);
reconParams::gpuSelectionList = Aurora::Matrix::fromRawData(new float[8] {0,1,2,3,4,5,6,7},8);
//reconParams.dataInfo
reconParams::expectedAScanDataLength = 4000;
//reflectParams.dataSelection
reflectParams::senderTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
reflectParams::senderElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
reflectParams::receiverTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
reflectParams::receiverElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
reflectParams::motorPos = Aurora::Matrix::fromRawData(new double[2] {1,2}, 2);
reflectParams::senderTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
reflectParams::senderElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
reflectParams::receiverTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
reflectParams::receiverElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
reflectParams::motorPos = Aurora::Matrix::fromRawData(new float[2] {1,2}, 2);
reflectParams::constrictReflectionAngles = 1;
reflectParams::angleLowerLimit = 45;
reflectParams::angleUpperLimit = 360;
@@ -661,8 +661,8 @@ namespace Recon
reflectParams::pixelResolutionX = 400;
reflectParams::pixelResolutionY = 400;
reflectParams::pixelResolutionZ = NAN;
reflectParams::imageStartpoint = Aurora::Matrix::fromRawData(new double[3] {-0.18,-0.18,-0.22}, 1, 3);
reflectParams::imageEndpoint = Aurora::Matrix::fromRawData(new double[3] {0.18,0.18,0.02}, 1, 3);
reflectParams::imageStartpoint = Aurora::Matrix::fromRawData(new float[3] {-0.18,-0.18,-0.22}, 1, 3);
reflectParams::imageEndpoint = Aurora::Matrix::fromRawData(new float[3] {0.18,0.18,0.02}, 1, 3);
reflectParams::imageResolution = NAN;
reflectParams::imageXYZ = Aurora::Matrix();
//reflectParams.signalProcessing
@@ -678,7 +678,7 @@ namespace Recon
reflectParams::matchedFilterCeAScan = true;
reflectParams::windowLength = 10;
reflectParams::numThreads = 30;
reflectParams::expectedUSSpeedRange = Aurora::Matrix::fromRawData(new double[2] {1420,1600}, 1, 2);
reflectParams::expectedUSSpeedRange = Aurora::Matrix::fromRawData(new float[2] {1420,1600}, 1, 2);
//reflectParams.transmissionCorrection
reflectParams::soundSpeedCorrection = 0;
reflectParams::attenuationCorrection = 0;
@@ -688,10 +688,10 @@ namespace Recon
reflectParams::debugMode = 0;
reflectParams::blockSizeReco = 60000;
reflectParams::medianWindowSize = 1;
reflectParams::saftVariant = Aurora::Matrix::fromRawData(new double[6]{1,1,1,1,0,0} , 1, 6);
reflectParams::saftVariant = Aurora::Matrix::fromRawData(new float[6]{1,1,1,1,0,0} , 1, 6);
reflectParams::useAscanIndex = 1;
reflectParams::attenuationCorrectionLimit = 20;
reflectParams::blockDimXYZ = Aurora::Matrix::fromRawData(new double[3]{16,16,1} , 1, 3);
reflectParams::blockDimXYZ = Aurora::Matrix::fromRawData(new float[3]{16,16,1} , 1, 3);
reflectParams::gpuSelectionList = reconParams::gpuSelectionList;;
//reflectParams
reflectParams::VERSION_MATLAB_MAJOR = 9;
@@ -704,19 +704,19 @@ namespace Recon
transParams::saveRecon = 1;
transParams::saveDebugInfomation = 1;
//transParams.dataSelection
transParams::senderTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
transParams::senderElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
transParams::receiverTasList = Aurora::Matrix::fromRawData(new double[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
transParams::receiverElementList = Aurora::Matrix::fromRawData(new double[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
transParams::motorPos = Aurora::Matrix::fromRawData(new double[2] {1,2}, 2);
transParams::senderTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
transParams::senderElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
transParams::receiverTasList = Aurora::Matrix::fromRawData(new float[128] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128},128); //1~128
transParams::receiverElementList = Aurora::Matrix::fromRawData(new float[18] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18},18); //1~18
transParams::motorPos = Aurora::Matrix::fromRawData(new float[2] {1,2}, 2);
transParams::filterSensitivity = 1;
transParams::sensFilter = 0.3;
transParams::angleLowerLimit = 120;
transParams::angleUpperLimit = 180;
transParams::applyCalib = true;
transParams::snrThreshold = 10;
transParams::calibReferenceTas = Aurora::Matrix::fromRawData(new double[1] {1},1);
transParams::calibReferenceMotorPosition = Aurora::Matrix::fromRawData(new double[1] {1},1);
transParams::calibReferenceTas = Aurora::Matrix::fromRawData(new float[1] {1},1);
transParams::calibReferenceMotorPosition = Aurora::Matrix::fromRawData(new float[1] {1},1);
//transParams.qualityCheck
transParams::qualityCheck = 1;
transParams::warningThreshold = 0.5;
@@ -755,8 +755,8 @@ namespace Recon
//transParams.solver
transParams::name = "TVAL3";
transParams::maxIter = 50;
transParams::muValues = Aurora::Matrix::fromRawData(new double[1] {100}, 1);
transParams::betaValues = Aurora::Matrix::fromRawData(new double[1] {1}, 1);
transParams::muValues = Aurora::Matrix::fromRawData(new float[1] {100}, 1);
transParams::betaValues = Aurora::Matrix::fromRawData(new float[1] {1}, 1);
transParams::runTransmissionReco = true;
transParams::nonNeg = false;

View File

@@ -16,8 +16,8 @@ namespace Recon
//reconParams.measurementInfo.ce
EXTERN_C bool useCEMeasured;
EXTERN_C bool removeOutliersFromCEMeasured;
EXTERN_C double offsetFilterEnabled;
EXTERN_C double offsetFilterDisabled;
EXTERN_C float offsetFilterEnabled;
EXTERN_C float offsetFilterDisabled;
//reconParams.measurementInfo.temp
EXTERN_C bool useTASTempComp;
EXTERN_C bool correctTASTemp;
@@ -46,21 +46,21 @@ namespace Recon
EXTERN_C int senderElementSize;
//reflectParams.qualityCheck
EXTERN_C bool qualityCheck;
EXTERN_C double warningThreshold;
EXTERN_C double errorThreshold;
EXTERN_C float warningThreshold;
EXTERN_C float errorThreshold;
//reflectParams.dataPreparation
EXTERN_C int version;
EXTERN_C int aScanReconstructionFrequency;
EXTERN_C double offsetElectronic;
EXTERN_C float offsetElectronic;
EXTERN_C bool removeDCOffset;
EXTERN_C int expectedAScanDataLength;
//reflectParams.imageInfos
EXTERN_C double pixelResolutionX;
EXTERN_C double pixelResolutionY;
EXTERN_C double pixelResolutionZ;
EXTERN_C float pixelResolutionX;
EXTERN_C float pixelResolutionY;
EXTERN_C float pixelResolutionZ;
EXTERN_C Aurora::Matrix imageStartpoint;
EXTERN_C Aurora::Matrix imageEndpoint;
EXTERN_C double imageResolution;
EXTERN_C float imageResolution;
EXTERN_C Aurora::Matrix imageXYZ;
//reflectParams.signalProcessing
EXTERN_C int useOptPulse;
@@ -80,7 +80,7 @@ namespace Recon
EXTERN_C int soundSpeedCorrection;
EXTERN_C int attenuationCorrection;
EXTERN_C int saveTransmInReflCoords;
EXTERN_C double resolutionTransmMap;
EXTERN_C float resolutionTransmMap;
//reflectParams.saft
EXTERN_C int debugMode;
EXTERN_C int blockSizeReco;
@@ -110,7 +110,7 @@ namespace Recon
EXTERN_C Aurora::Matrix receiverElementList;
EXTERN_C Aurora::Matrix motorPos;
EXTERN_C int filterSensitivity;
EXTERN_C double sensFilter;
EXTERN_C float sensFilter;
EXTERN_C int angleLowerLimit;
EXTERN_C int angleUpperLimit;
EXTERN_C bool applyCalib;
@@ -119,18 +119,18 @@ namespace Recon
EXTERN_C Aurora::Matrix calibReferenceMotorPosition;
//transParams.qualityCheck
EXTERN_C int qualityCheck;
EXTERN_C double warningThreshold;
EXTERN_C double errorThreshold;
EXTERN_C float warningThreshold;
EXTERN_C float errorThreshold;
//transParams.dataBlocking
EXTERN_C int mpSize;
EXTERN_C int senderTASSize;
EXTERN_C int senderElementSize;
//transParams.dataPreparation
EXTERN_C int numPixelXY;
EXTERN_C double offsetElectronic;
EXTERN_C float offsetElectronic;
EXTERN_C int aScanReconstructionFrequency;
EXTERN_C double minTemperature;
EXTERN_C double maxTemperature;
EXTERN_C float minTemperature;
EXTERN_C float maxTemperature;
//transParams.detection
EXTERN_C int forceRedetect;
EXTERN_C int saveDetection;
@@ -144,8 +144,8 @@ namespace Recon
EXTERN_C int maxSpeedOfSound;
EXTERN_C int detectionWindowSOS;
EXTERN_C int detectionWindowATT;
EXTERN_C double pulseLengthSamples;
EXTERN_C double pulseLengthRefSamples;
EXTERN_C float pulseLengthSamples;
EXTERN_C float pulseLengthRefSamples;
//transParams.rayTracing
EXTERN_C bool bentReconstruction;
EXTERN_C int bresenham;

File diff suppressed because it is too large Load Diff