diff --git a/plugins/meteor_support/meteor/module_meteor_instruments.cpp b/plugins/meteor_support/meteor/module_meteor_instruments.cpp index 14dd92e24..d005ad792 100644 --- a/plugins/meteor_support/meteor/module_meteor_instruments.cpp +++ b/plugins/meteor_support/meteor/module_meteor_instruments.cpp @@ -140,7 +140,34 @@ namespace meteor msumr_products.has_timestamps = true; msumr_products.timestamp_type = satdump::ImageProducts::TIMESTAMP_LINE; msumr_products.set_tle(satdump::general_tle_registry.get_from_norad(norad)); - msumr_products.set_timestamps(msumr_timestamps); + + std::vector filter_timestamps = msumr_timestamps; + double avg = avg_overflowless(filter_timestamps); + double last = 0; + for (double &v : filter_timestamps) + { + if (abs(avg - v) > 10000) + { + last = v; + v = -1; + continue; + } + + if (last >= v || abs(last - v) > 1.0) + { + last = v; + v = -1; + continue; + } + last = v; + + // logger->info(v); + } + + for (double &v : filter_timestamps) + logger->info(v); + + msumr_products.set_timestamps(filter_timestamps); msumr_products.set_proj_cfg(loadJsonFile(resources::getResourcePath("projections_settings/meteor_m2-2_msumr.json"))); for (int i = 0; i < 6; i++) diff --git a/resources/projections_settings/meteor_m2-2_msumr.json b/resources/projections_settings/meteor_m2-2_msumr.json index d6d0caffd..7f3c907e0 100644 --- a/resources/projections_settings/meteor_m2-2_msumr.json +++ b/resources/projections_settings/meteor_m2-2_msumr.json @@ -1,10 +1,10 @@ { "type": "normal_single_line", "scan_angle": 110.6, - "roll_offset": -0.35, + "roll_offset": 0, //-0.35, "pitch_offset": 0, - "yaw_offset": -2.8, - "time_offset": -0.2, + "yaw_offset": 0.8, //.8, + "timestamp_offset": -1.8, "image_width": 1572, "gcp_spacing_x": 100, "gcp_spacing_y": 100 diff --git a/resources/projections_settings/metop_abc_avhrr.json b/resources/projections_settings/metop_abc_avhrr.json index 5c515a3ee..c4dd8bcd9 100644 --- a/resources/projections_settings/metop_abc_avhrr.json +++ b/resources/projections_settings/metop_abc_avhrr.json @@ -2,7 +2,7 @@ "type": "normal_single_line", "scan_angle": 110.6, "roll_offset": -0.13, - "time_offset": -0.1, + "timestamp_offset": -0.1, "image_width": 2048, "gcp_spacing_x": 100, "gcp_spacing_y": 100 diff --git a/resources/projections_settings/metop_abc_mhs.json b/resources/projections_settings/metop_abc_mhs.json index b12f11f76..336f74322 100644 --- a/resources/projections_settings/metop_abc_mhs.json +++ b/resources/projections_settings/metop_abc_mhs.json @@ -2,7 +2,7 @@ "type": "normal_single_line", "scan_angle": 100, "roll_offset": -1.1, - "time_offset": -2, + "timestamp_offset": -2, "image_width": 90, "gcp_spacing_x": 5, "gcp_spacing_y": 5 diff --git a/src-testing/main.cpp b/src-testing/main.cpp index 5ca83ac59..0bcbfbd57 100644 --- a/src-testing/main.cpp +++ b/src-testing/main.cpp @@ -66,8 +66,8 @@ int main(int argc, char *argv[]) std::vector gcps = satdump::gcp_compute::compute_gcps(img_pro.get_proj_cfg(), img_pro.get_tle(), img_pro.get_timestamps()); satdump::ImageCompositeCfg rgb_cfg; - rgb_cfg.equation = "(ch3 * 0.4 + ch2 * 0.6) * 2.2 - 0.15, ch2 * 2.2 - 0.15, ch1 * 2.2 - 0.15"; - rgb_cfg.equalize = false; + rgb_cfg.equation = "ch3,ch2,ch1"; //"(ch3 * 0.4 + ch2 * 0.6) * 2.2 - 0.15, ch2 * 2.2 - 0.15, ch1 * 2.2 - 0.15"; + rgb_cfg.equalize = true; satdump::warp::WarpOperation operation; operation.ground_control_points = gcps;