diff --git a/scripts/run.jl b/scripts/run.jl index a1341333b3dbc8841e6cff03b2316f869258dccc..cc850edbc0071faf7619c1d9b944a39c86a042d7 100644 --- a/scripts/run.jl +++ b/scripts/run.jl @@ -19,29 +19,27 @@ ctx(experiment_convergence_rate, "fem/convergence/rate") # pd est, L1-TV, bad -# applications +# misc experiments -# denoising -ctx(experiment_denoise, "fem/denoise") -# inpainting +# inpainting (OLD) ctx(experiment_inpaint, "fem/inpaint") # adaptive optical flow ctx(experiment_optflow_middlebury_all, "fem/optflow/middlebury") -# additional experiments for paper - -# combined inpainting + denoising with mixed noise -ctx(experiment_inpaint_denoise, "fem/optflow/inpaint_denoise") - -# comparison: warping and adaptivity -ctx(experiment_optflow_middlebury_warping_comparison, "fem/optflow/middlebury_warping_comparison") - function paper1(ctx) # newton vs other algs ctx(experiment_convergence_rate, "fem/convergence/rate") # denoising ctx(experiment_denoise, "fem/denoise") # combined inpainting + denoising with mixed noise - ctx(experiment_inpaint_denoise, "fem/optflow/inpaint_denoise") + ctx(experiment_inpaint_denoise, "fem/inpaint_denoise") + + # comparison: warping and adaptivity + ctx(experiment_optflow_middlebury_warping_comparison, "fem/opticalflow/middlebury_warping_comparison") +end +function paper2(ctx) + # comparison: warping and adaptivity + # TODO: adaptivity parameter? + ctx(experiment_optflow_middlebury_warping_comparison, "fem/opticalflow/middlebury_warping_comparison") end diff --git a/scripts/run_experiments.jl b/scripts/run_experiments.jl index 2117e468c91711b02894d9e6cca22b85e01eca38..979cf0d490fd07f811631b1829892e868e67bb00 100644 --- a/scripts/run_experiments.jl +++ b/scripts/run_experiments.jl @@ -1501,7 +1501,12 @@ function optflow(ctx) size(ctx.params.imgf0) == size(ctx.params.imgf1) || throw(ArgumentError("non-matching image sizes")) - project_image! = project_l2_lagrange! + #project_image! = project_l2_lagrange! + project_image!(f, img) = + ctx.params.n_refine == 0 ? + interpolate!(f, x -> evaluate_bilinear(img, x)) : # fine mesh + project_l2_lagrange! # coarse adaptive mesh + eps_newton = 1e-3 # cauchy criterion for inner newton loop eps_warp = 0.05 @@ -1678,6 +1683,13 @@ function experiment_optflow_middlebury_warping_comparison(ctx) warp = false, refine = false, n_refine = 0) ctx(experiment_optflow_middlebury_all_benchmarks, "warping"; warp = true, refine = false, n_refine = 0) +end + +function experiment_optflow_middlebury_warping_comparison_adaptive(ctx) + ctx(experiment_optflow_middlebury_all_benchmarks, "vanilla"; + warp = false, refine = false, n_refine = 0) + ctx(experiment_optflow_middlebury_all_benchmarks, "warping"; + warp = true, refine = false, n_refine = 0) ctx(experiment_optflow_middlebury_all_benchmarks, "adaptive-warping"; warp = true, refine = true, n_refine = 6) end