Files
sjy01-image-proc/cmd/warp.go
2024-09-30 15:03:58 +08:00

47 lines
1.2 KiB
Go

package main
import (
"os"
"path/filepath"
"github.com/airbusgeo/godal"
"github.com/sirupsen/logrus"
"github.com/spf13/cobra"
"starwiz.cn/sjy01/image-proc/pkg/config"
"starwiz.cn/sjy01/image-proc/pkg/dem"
"starwiz.cn/sjy01/image-proc/pkg/producer"
)
var (
warpIn string
warpOut string
warpMeta string
warpRPC string
warpDEM string
)
var cmdWarp = &cobra.Command{
Use: "warp",
Short: "L1A to L2: transform the input image using rpc",
Run: func(cmd *cobra.Command, args []string) {
godal.RegisterAll()
dem.Dem1KmLT = dem.NewDem1Km(config.GCONFIG.Dem.Dem1Km)
warpDEM, _ = filepath.Abs(config.GCONFIG.Dem.Dem1Km)
err := producer.L1AtoL2(warpIn, warpOut, warpMeta, warpRPC, warpDEM)
if err != nil {
logrus.Error("Generate L2 product failed:", err)
os.Exit(1)
}
},
}
func init() {
rootCmd.AddCommand(cmdWarp)
cmdWarp.Flags().StringVarP(&warpIn, "input", "i", "", "input image file")
cmdWarp.Flags().StringVarP(&warpOut, "output", "o", "", "output image 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")
}