From 03812b3400686052cd75a5f6d47f6d6f1a59fcf0 Mon Sep 17 00:00:00 2001 From: Piero Toffanin Date: Thu, 13 Aug 2026 18:24:30 +0000 Subject: [PATCH 1/2] Remove build-overviews in favor of cog --- opendm/config.py | 12 ++++-------- opendm/orthophoto.py | 15 --------------- 2 files changed, 4 insertions(+), 23 deletions(-) diff --git a/opendm/config.py b/opendm/config.py index 739a8fae..5fd7d7a9 100755 --- a/opendm/config.py +++ b/opendm/config.py @@ -21,7 +21,6 @@ 'auto_boundary_distance': 'odm_filterpoints', 'bg_removal': 'dataset', 'boundary': 'odm_filterpoints', - 'build_overviews': 'odm_orthophoto', 'camera_lens': 'dataset', 'cameras': 'dataset', 'cog': 'odm_dem', @@ -753,12 +752,6 @@ def config(argv=None, parser=None): 'Note that not all cameras are present in the database. Set to 0 to use the database value. ' 'Default: %(default)s') - parser.add_argument('--build-overviews', - action=StoreTrue, - nargs=0, - default=False, - help='Build orthophoto overviews for faster display in programs such as QGIS. Default: %(default)s') - parser.add_argument('--cog', action=StoreTrue, nargs=0, @@ -903,7 +896,7 @@ def config(argv=None, parser=None): 'Default: %(default)s')) args, unknown = parser.parse_known_args(argv) - DEPRECATED = ["--verbose", "--debug", "--time", "--resize-to", "--depthmap-resolution", "--pc-geometric", "--texturing-data-term", "--texturing-outlier-removal-type", "--texturing-tone-mapping", "--texturing-skip-local-seam-leveling"] + DEPRECATED = ["--verbose", "--debug", "--time", "--resize-to", "--depthmap-resolution", "--pc-geometric", "--texturing-data-term", "--texturing-outlier-removal-type", "--texturing-tone-mapping", "--texturing-skip-local-seam-leveling", "--build-overviews"] unknown_e = [p for p in unknown if p not in DEPRECATED] if len(unknown_e) > 0: raise parser.error("unrecognized arguments: %s" % " ".join(unknown_e)) @@ -911,6 +904,9 @@ def config(argv=None, parser=None): for p in unknown: if p in DEPRECATED: log.WARNING("%s is no longer a valid argument and will be ignored!" % p) + if p == "--build-overviews" and not args.cog: + log.WARNING("Turning on --cog to build overviews") + # check that the project path setting has been set properly if not args.project_path: diff --git a/opendm/orthophoto.py b/opendm/orthophoto.py index f5025996..d5b14a37 100644 --- a/opendm/orthophoto.py +++ b/opendm/orthophoto.py @@ -30,18 +30,6 @@ def get_orthophoto_vars(args): 'NUM_THREADS': args.max_concurrency } -def build_overviews(orthophoto_file): - log.INFO("Building Overviews") - kwargs = {'orthophoto': orthophoto_file} - - # Run gdaladdo - system.run('gdaladdo -r average ' - '--config BIGTIFF_OVERVIEW IF_SAFER ' - '--config COMPRESS_OVERVIEW JPEG ' - '--config INTERLEAVE_OVERVIEW PIXEL ' - '--config PHOTOMETRIC_OVERVIEW YCBCR' - '{orthophoto} 2 4 8 16'.format(**kwargs)) - def generate_png(orthophoto_file, output_file=None, outsize=None): if output_file is None: base, ext = os.path.splitext(orthophoto_file) @@ -174,9 +162,6 @@ def post_orthophoto_steps(args, bounds_file_path, orthophoto_file, orthophoto_ti if args.crop > 0 or args.boundary: Cropper.crop(bounds_file_path, orthophoto_file, get_orthophoto_vars(args), keep_original=not args.optimize_disk_space, warp_options=['-dstalpha']) - if args.build_overviews and not args.cog: - build_overviews(orthophoto_file) - if args.orthophoto_png: generate_png(orthophoto_file) From 525d38abac94c2a9caa346d2812823380c7ac01f Mon Sep 17 00:00:00 2001 From: Piero Toffanin Date: Thu, 13 Aug 2026 14:32:17 -0400 Subject: [PATCH 2/2] Actually turn on cog --- opendm/config.py | 1 + 1 file changed, 1 insertion(+) diff --git a/opendm/config.py b/opendm/config.py index 5fd7d7a9..8a4f981c 100755 --- a/opendm/config.py +++ b/opendm/config.py @@ -906,6 +906,7 @@ def config(argv=None, parser=None): log.WARNING("%s is no longer a valid argument and will be ignored!" % p) if p == "--build-overviews" and not args.cog: log.WARNING("Turning on --cog to build overviews") + args.cog = True # check that the project path setting has been set properly