This commit is contained in:
nuknal
2024-09-30 15:03:58 +08:00
parent 5fd9b06dca
commit 8266db9be0
2 changed files with 21 additions and 7 deletions

View File

@@ -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")
}

View File

@@ -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
}