RadialIntegrationTest: Add test for corrections
This commit is contained in:
@@ -190,6 +190,30 @@ TEST_CASE("RadialIntegrationGPU_Process","[RadialIntegration]") {
|
||||
REQUIRE(image_analysis.GetRadialIntegrationSum()[1] == 6+2);
|
||||
}
|
||||
|
||||
TEST_CASE("RadialIntegrationGPU_Process_Corr","[RadialIntegration]") {
|
||||
std::vector<uint16_t> pixel_to_bin = {0,1,2,4,3,1,2,3};
|
||||
std::vector<int16_t> test_image = {7,6,5,4,3,2,1,0};
|
||||
std::vector<uint8_t> one_byte_mask = {1,1,1,1,1,1,1,1};
|
||||
|
||||
std::vector<float> corr = {0.5f, 0.3f, 0.5f, 0.2f, 0.8f, 0.9f, 1.0f, 0.5f};
|
||||
GPUImageAnalysis image_analysis(8, 1, one_byte_mask, pixel_to_bin, 4);
|
||||
image_analysis.SetInputBuffer(test_image.data());
|
||||
image_analysis.LoadRadialIntegrationCorr(corr);
|
||||
image_analysis.LoadDataToGPU();
|
||||
image_analysis.RunRadialIntegration();
|
||||
|
||||
REQUIRE(image_analysis.GetRadialIntegrationCount().size() == 4);
|
||||
REQUIRE(image_analysis.GetRadialIntegrationSum().size() == 4);
|
||||
|
||||
REQUIRE(image_analysis.GetRadialIntegrationCount()[0] == 1);
|
||||
REQUIRE(image_analysis.GetRadialIntegrationCount()[1] == 2);
|
||||
|
||||
REQUIRE(image_analysis.GetRadialIntegrationSum()[0] == Approx(7 * 0.5f));
|
||||
REQUIRE(image_analysis.GetRadialIntegrationSum()[1] == Approx(6*0.3f + 2*0.9f));
|
||||
REQUIRE(image_analysis.GetRadialIntegrationSum()[2] == Approx(5*0.5f + 1*1.0f));
|
||||
REQUIRE(image_analysis.GetRadialIntegrationSum()[3] == Approx(3*0.8f));
|
||||
}
|
||||
|
||||
TEST_CASE("RadialIntegrationGPU_Process_Mask","[RadialIntegration]") {
|
||||
std::vector<uint16_t> pixel_to_bin = {0,1,2,4,3,1,2,3};
|
||||
std::vector<int16_t> test_image = {7,6,5,4,3,2,1,0};
|
||||
|
||||
Reference in New Issue
Block a user