From 8266db9be06e4f7dd1513a4acffe826140329700 Mon Sep 17 00:00:00 2001 From: nuknal Date: Mon, 30 Sep 2024 15:03:58 +0800 Subject: [PATCH] FUS L2 --- cmd/warp.go | 2 +- pkg/producer/warp.go | 26 ++++++++++++++++++++------ 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/cmd/warp.go b/cmd/warp.go index 76ac864..d6ff3bd 100644 --- a/cmd/warp.go +++ b/cmd/warp.go @@ -40,7 +40,7 @@ func init() { cmdWarp.Flags().StringVarP(&warpIn, "input", "i", "", "input image file") cmdWarp.Flags().StringVarP(&warpOut, "output", "o", "", "output image file") - cmdWarp.Flags().StringVarP(&warpMeta, "meta", "m", "", "rpc meta file") + cmdWarp.Flags().StringVarP(&warpMeta, "meta", "m", "", "meta file") cmdWarp.Flags().StringVarP(&warpRPC, "rpb", "r", "", "rpb file") cmdWarp.Flags().StringVarP(&warpDEM, "dem", "d", "", "dem file") } diff --git a/pkg/producer/warp.go b/pkg/producer/warp.go index a3eb397..61381c0 100644 --- a/pkg/producer/warp.go +++ b/pkg/producer/warp.go @@ -16,10 +16,21 @@ import ( // gdalwarp -rpc -to "RPC_DEM=/path/to/dem/gdlebm.tif" in.tif out.tif func L1AtoL2(in, out, meta, rpb, demtif string) error { - meta, _ = filepath.Abs(meta) - m, err := ParseProductMeta(meta) - if err != nil { - return err + var m *ProductMeta + var err error + + sensor := "MSS" + reverse := true + if meta == "" { + sensor = "FUS" + reverse = true + m = &ProductMeta{} + } else { + meta, _ = filepath.Abs(meta) + m, err = ParseProductMeta(meta) + if err != nil { + return err + } } in, _ = filepath.Abs(in) @@ -45,9 +56,12 @@ func L1AtoL2(in, out, meta, rpb, demtif string) error { return err } - sensor := "MSS" if strings.Contains(m.ProductID, "PAN") { sensor = "PAN" + reverse = false + } else if strings.Contains(m.ProductID, "FUS") { + sensor = "FUS" + reverse = false } corners, width, height, err := computeBound(out) @@ -65,7 +79,7 @@ func L1AtoL2(in, out, meta, rpb, demtif string) error { xmlfile := filepath.Join(dir, id+".meta.xml") writeProductMeta(m, xmlfile) - GTiffToJPG(out, strings.Replace(out, ".tiff", ".jpg", 1), sensor, false) + GTiffToJPG(out, strings.Replace(out, ".tiff", ".jpg", 1), sensor, reverse) return nil }