Do RRC by moment matching method

This commit is contained in:
nuknal
2024-06-17 17:28:15 +08:00
parent ce01f3b2ce
commit d1733d0828
5 changed files with 87 additions and 12 deletions

View File

@@ -13,10 +13,11 @@ import (
)
var (
params producer.Params
saveStrip bool
doRRC bool
lutDir string
params producer.Params
saveStrip bool
doRRC bool
doMomentMatching bool
lutDir string
)
var procCmd = &cobra.Command{
@@ -50,6 +51,10 @@ var procCmd = &cobra.Command{
reg.DoRRC(lutDir)
}
if doMomentMatching {
reg.DoMomentMatching()
}
if err := reg.DoPhaseCorrelation(); err != nil {
logrus.Fatal(err)
}
@@ -99,6 +104,7 @@ func init() {
procCmd.Flags().StringVarP(&paramsXML, "params", "x", "", "params xml file path")
procCmd.Flags().StringVarP(&lutDir, "lut", "l", "data/lut", "LUT directory")
procCmd.Flags().BoolVarP(&doRRC, "rrc", "", false, "do RRC")
procCmd.Flags().BoolVarP(&doMomentMatching, "mm", "", false, "do moment matching")
}
func initParams() producer.Params {

View File

@@ -6,8 +6,9 @@ import (
)
var (
panDS string
mssDS string
panDS string
mssDS string
lutOut string
)
var rrcCmd = &cobra.Command{
@@ -15,7 +16,7 @@ var rrcCmd = &cobra.Command{
Short: "Run RRC algorithm on an image",
Long: `Run RRC algorithm on an image`,
Run: func(cmd *cobra.Command, args []string) {
rrc := rrc.NewRRC()
rrc := rrc.NewRRC(lutOut)
rrc.StatisticalPAN(panDS)
rrc.StatisticalMSS(mssDS)
},
@@ -24,6 +25,7 @@ var rrcCmd = &cobra.Command{
func init() {
rrcCmd.Flags().StringVarP(&panDS, "pan-dataset", "p", "data/RAW/pan.txt", "path to pan dataset")
rrcCmd.Flags().StringVarP(&mssDS, "mss-dataset", "m", "data/RAW/mss-none.txt", "path to mss dataset")
rrcCmd.Flags().StringVarP(&lutOut, "lut-out-dir", "o", "data/rrc", "path to output lut file")
rootCmd.AddCommand(rrcCmd)
}