Fix detectTofAndAtt and main log time

This commit is contained in:
kradchen
2023-06-05 14:55:53 +08:00
parent 90fd2afe7c
commit 15cfc29e6f
3 changed files with 114 additions and 24 deletions

View File

@@ -63,22 +63,23 @@ TEST_F(Detection_Test, detectTofAndAttMex) {
MatlabReader m3("/home/krad/TestData/sosResult.mat");
auto sosvalue = m3.read("sosValue");
auto tof = m3.read("tofRel");
ASSERT_EQ(sosvalue.getDataSize(), result.tof.getDataSize());
ASSERT_EQ(sosvalue.getDataSize(), result.sosValue.getDataSize());
ASSERT_EQ(sosvalue.getDataSize(), result.att.getDataSize());
#pragma omp parallel for
for (size_t i = 0; i < result.tof.getDataSize(); i++)
{
EXPECT_DOUBLE_AE(0,result.tof[i])<<",index:"<<i;
EXPECT_DOUBLE_AE(tof[i],result.tof[i])<<",index:"<<i;
EXPECT_DOUBLE_AE(sosvalue[i],result.sosValue[i])<<",index:"<<i;
EXPECT_TRUE(result.att[i]==0)<<",index:"<<i;
// EXPECT_TRUE(result.att[i]==0)<<",index:"<<i;
}
}
TEST_F(Detection_Test, detectTofAndAtt) {
MatlabReader m("/home/krad/TestData/getBlockOfTransmissionData.mat");
MatlabReader m("/home/sun/testData/transmissionDetection.mat");
auto AscanBlock = m.read("AscanBlock");
auto AscanRefBlock = m.read("AscanRefBlock");
@@ -86,7 +87,8 @@ TEST_F(Detection_Test, detectTofAndAtt) {
auto distBlockRef = m.read("distRefBlock");
auto sosWaterBlock = Recon::temperatureToSoundSpeed(m.read("waterTempBlock"), "marczak");
auto sosWaterRefBlock = Recon::temperatureToSoundSpeed(m.read("waterTempRefBlock"), "marczak");
double expectedSOSWater = 1.511948131508464e+03;
double expectedSOSWater = 1.512677498767504e+03;
auto result = Recon::detectTofAndAtt(
AscanBlock, AscanRefBlock, distBlock, distBlockRef, sosWaterBlock,
@@ -94,22 +96,36 @@ TEST_F(Detection_Test, detectTofAndAtt) {
Recon::transParams::nThreads, expectedSOSWater,
Recon::transParams::useTimeWindowing,
Recon::transParams::aScanReconstructionFrequency,
Recon::transParams::offsetElectronic,Recon::transParams::detectionWindowATT,
Recon::transParams::detectionWindowATT,Recon::transParams::offsetElectronic,
Recon::transParams::detectionWindowSOS,
Recon::transParams::minSpeedOfSound,
Recon::transParams::maxSpeedOfSound, Recon::transParams::gaussWindow);
MatlabReader m2("/home/krad/TestData/sosResult.mat");
auto sosvalue = m2.read("sosValue");
auto tof = m2.read("tofRel");
auto att = m2.read("att");
// auto result1 = Recon::detectTofAndAttMex(
// AscanBlock, AscanRefBlock, distBlock, distBlockRef, sosWaterBlock,
// sosWaterRefBlock, Recon::transParams::resampleFactor,
// Recon::transParams::nThreads, expectedSOSWater,
// Recon::transParams::useTimeWindowing,
// Recon::transParams::aScanReconstructionFrequency,
// Recon::transParams::detectionWindowATT,Recon::transParams::offsetElectronic,
// Recon::transParams::detectionWindowSOS,
// Recon::transParams::minSpeedOfSound,
// Recon::transParams::maxSpeedOfSound, Recon::transParams::gaussWindow);
ASSERT_EQ(sosvalue.getDataSize(), result.tof.getDataSize());
ASSERT_EQ(sosvalue.getDataSize(), result.sosValue.getDataSize());
ASSERT_EQ(sosvalue.getDataSize(), result.att.getDataSize());
#pragma omp parallel for
for (size_t i = 0; i < result.tof.getDataSize(); i++)
{
EXPECT_DOUBLE_AE(0,result.tof[i])<<",index:"<<i;
EXPECT_DOUBLE_AE(tof[i],result.tof[i])<<",index:"<<i;
EXPECT_DOUBLE_AE(sosvalue[i],result.sosValue[i])<<",index:"<<i;
EXPECT_TRUE(std::isnan(result.att[i]))<<",index:"<<i;
// EXPECT_DOUBLE_AE(result1.att[i],result.att[i])<<",index:"<<i;
// EXPECT_TRUE((std::abs(att[i]-result.att[i])<0.001))<<",att["<<i<<"]"<<att[i]<<", res att["<<i<<"]"<<result.att[1];
}
}