MB-System Unix Manual Page

mbnavadjustmerge

Section: MB-System 5.0 (1)
Updated: 15 November 2022
Index
 

NAME

mbnavadjustmerge - Tool to modify MBnavadjust projects, including merging projects, adding global ties, setting tie modes, exporting or importing crossing ties, and pre-generating the triangular meshes .

 

VERSION

Version 5.0

 

SYNOPSIS

mbnavadjustmerge --input=project-base
[--input=project_path
--output=project_path
--set-global-tie=file:section[:snav]/xoffset/yoffset/zoffset[/xsigma/ysigma/zsigma]
--set-global-tie-xyz=file:section[:snav]
--set-global-tie-xyonly=file:section[:snav]
--set-global-tie-zonly=file:section[:snav]
--set-all-global-ties-xyz
--set-all-global-ties-xyonly
--set-all-global-ties-zonly
--unset-global-tie=file:section
--unset-all-global-ties
--add-crossing=file1:section1/file2:section2
--set-tie=file1[:section1]/file2[:section2]/xoffset/yoffset/zoffset[/xsigma/ysigma/zsigma]
--set-tie=file1[:section1]/file2[:section2]///zoffset
--set-tie-xyz=file1:section1/file2:section2
--set-tie-xyonly=file1:section1/file2:section2
--set-tie-zonly=file1:section1/file2:section2
--set-ties-xyz-all
--set-ties-xyonly-all
--set-ties-zonly-all
--set-ties-xyz-with-file=file
--set-ties-xyonly-with-file=file
--set-ties-zonly-with-file=file
--set-ties-xyz-by-survey=survey
--set-ties-xyonly-by-survey=survey
--set-ties-zonly-by-survey=survey
--set-ties-xyz-by-block=survey1/survey2
--set-ties-xyonly-by-block=survey1/survey2
--set-ties-zonly-by-block=survey1/survey2
--set-ties-zoffset-by-block=survey1/survey2/zoffset
--set-ties-xyonly-by-time=timethreshold
--unset-tie=file1:section1/file2:section2
--unset-ties-with-file=file
--unset-ties-with-survey=survey
--unset-ties-by-survey=survey
--unset-ties-by-block=survey1/survey2
--unset-ties-all
--skip-unset-crossings
--unset-skipped-crossings-by-block=survey1/survey2
--unset-skipped-crossings-between-surveys
--insert-discontinuity=file:section
--reimport-file=file
--reimport-all-files
--import-tie-list=file
--export-tie-list=file
--triangulate
--triangulate-all
--triangulate-scale=scale
--triangulate-section=file:section
--unset-short-section-ties=min_length
--skip-short-section-crossings=min_length
--verbose
--help]

 

DESCRIPTION

MBnavadjustmerge is a command line program that merges two existing MBnavadjust projects or modifies a single MBnavadjust project.

MBnavadjust is an interactive graphical program used to adjust swath data navigation by matching bathymetric features in overlapping and crossing swaths. The primary purpose of mbnavadjust is to eliminate relative navigational errors in swath data obtained from poorly navigated sonars.

With respect to the merging function, if the MBnavadjustmerge user specifies two input projects and no output project, then the second project is added to the first. If an output project is specified, then the two projects are merged and the new combined project is output.

In order to make use of the project modification commands, a single input project must be specified, along with one or more of the modification commands. These can include adding crossings, setting tie z-offset values, setting tie offsets (even if no corresponding crossing already exists), setting tie modes (xy only, z only, xyz), and deleting ties.

 

MB-SYSTEM AUTHORSHIP

David W. Caress

 Monterey Bay Aquarium Research Institute
Dale N. Chayes

 Center for Coastal and Ocean Mapping

 University of New Hampshire
Christian do Santos Ferreira

 MARUM - Center for Marine Environmental Sciences

 University of Bremen

 

OPTIONS

--input=project-base
--input=project-add The --input option defines an existing, input MBnavadjust project. A project may be defined by a relative or absolute path to the project *.nvh file or the project *.dir directory. This option can be used twice to specify two input projects. The first use of --input defines the base input project, and the second defines the add input project. In the case where the --output option is used to define an output project, the two input projects will both be copied to the new output project (project-base first followed by project-add). If the output option is not specified, then the project-base project is used as the output, and the project-add project is added on to the project-base project. If only the base input project is specified, then that project will be modified according to one or more of the "add", "delete", "skip", or "set" commands.
--output=project-output
This option defines the new MBnavadjust output project. The two input projects will both be copied to the new output project (project-base first followed by project-add). If the output option is not specified, then the project-base project is used as the output, and the project-add project is added on to the project-base project.
--set-global-tie=file:section[:snav]/xoffset/yoffset/zoffset[/xsigma/ysigma/zsigma]
This options sets a global tie for a navigation point in the project. Global ties are ties to the global reference frame, which generally means GPS positions (e.g. WGS84). The file and section id's must be specified, along with the x (east-west), y (north-south), and z (vertical positive up) offset values in meters. If the snav id (navigation point id) is not specified, it is assumed to be 0, the first navigation point in the specified section. If the uncertainties in the global tie (xsigma, ysigma, zsigma) are not specified, then xsigma = ysigma = 10 m and zsigma = 0.5 m are assumed.
--set-global-tie-xyz=file:section[:snav]
This option sets the mode of the existing specified global tie in the MBnavadjust project to be "XYZ". This means all three coordinates of the tie will be used as constraints in the inversion for an optimal navigation model.
--set-global-tie-xyonly=file:section[:snav]
This option sets the mode of the existing specified global tie in the MBnavadjust project to be "XY". This means only the horizontal coordinates of the tie will be used as constraints in the inversion for an optimal navigation model.
--set-global-tie-zonly=file:section[:snav]
This option sets the mode of the existing specified global tie in the MBnavadjust project to be "Z". This means only the vertical coordinate of the tie will be used as a constraint in the inversion for an optimal navigation model.
--set-all-global-ties-xyz
This option sets the mode of all global ties in the MBnavadjust project to be "XYZ". This means all three coordinates of the tie will be used as constraints in the inversion for an optimal navigation model.
--set-all-global-ties-xyonly
This option sets the mode of all global ties in the MBnavadjust project to be "XY". This means only the horizontal coordinates of the tie will be used as constraints in the inversion for an optimal navigation model.
--set-all-global-ties-zonly
This option sets the mode of all global ties in the MBnavadjust project to be "Z". This means only the vertical coordinate of the tie will be used as a constraint in the inversion for an optimal navigation model.
--unset-global-tie=file:section
This option unsets (deletes) the specified global tie in the MBnavadjust project.
--add-crossing=file1:section1/file2:section2
This option adds the specified crossing to the MBnavadjust project.
--set-tie=file1[:section1]/file2[:section2]/[xoffset]/[yoffset]/zoffset[/xsigma/ysigma/zsigma]
This option adds the specified tie to the MBnavadjust project. If the corresponding crossing does not already exist, it will be created. If a section is not specified, then it is assumed to be the first value, i.e. 0. If the tie offsets are specified but the uncertainties (xsigma, ysigma, zsigma) are not specified, then xsigma = ysigma = 10 m and zsigma = 0.5 m are assumed.
--set-tie=file1[:section1]/file2[:section2]///zoffset
This option modifies the z offset value of the specified tie in the MBnavadjust project. If a section is not specified, then it is assumed to be the first value, i.e. 0. The specified tie must already exist, and this command changes the z offset value while leaving the x and y offsets and the uncertainties unchanged.
--set-tie-xyz=file1:section1/file2:section2
This option sets the mode of the existing specified tie in the MBnavadjust project to be "XYZ". This means all three coordinates of the tie will be used as constraints in the inversion for an optimal navigation model.
--set-tie-xyonly=file1:section1/file2:section2
This option sets the mode of the existing specified tie in the MBnavadjust project to be "XY". This means only the horizontal coordinates of the tie will be used as constraints in the inversion for an optimal navigation model.
--set-tie-zonly=file1:section1/file2:section2
This option sets the mode of the existing specified tie in the MBnavadjust project to be "Z". This means only the vertical coordinate of the tie will be used as a constraint in the inversion for an optimal navigation model.
--unset-tie=file1:section1/file2:section2
This option unsets (deletes) the specified tie in the MBnavadjust project.
--set-ties-xyz-all
This option sets the mode of all ties in the MBnavadjust project to be "XYZ". This means all three coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyonly-all
This option sets the mode of all ties in the MBnavadjust project to be "XY". This means only the horizontal coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-zonly-all
This option sets the mode of all ties in the MBnavadjust project to be "Z". This means only the vertical coordinate of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyz-with-file=file
This option sets the mode of all ties involved with the specified file in the MBnavadjust project to be "XYZ". This means all three coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyonly-with-file=file
This option sets the mode of all ties involved with the specified file in the MBnavadjust project to be "XY". This means only the horizontal coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-zonly-with-file=file
This option sets the mode of all ties involved with the specified file in the MBnavadjust project to be "Z". This means only the vertical coordinate of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyz-with-survey=survey
This option sets the mode of all ties involved with the specified survey in the MBnavadjust project to be "XYZ". This means all three coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyonly-with-survey=survey
This option sets the mode of all ties involved with the specified survey in the MBnavadjust project to be "XY". This means only the horizontal coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-zonly-with-survey=survey
This option sets the mode of all ties involved with the specified survey in the MBnavadjust project to be "Z". This means only the vertical coordinate of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyz-by-survey=survey
This option sets the mode of all ties between two sections in the specified survey in the MBnavadjust project to be "XYZ". This means all three coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyonly-by-survey=survey
This option sets the mode of all ties between two sections in the specified survey in the MBnavadjust project to be "XY". This means only the horizontal coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-zonly-by-survey=survey
This option sets the mode of all ties between two sections in the specified survey in the MBnavadjust project to be "Z". This means only the vertical coordinate of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyz-by-block=survey1/survey2
This option sets the mode of all ties between sections of the specified two surveys in the MBnavadjust project to be "XYZ". This means all three coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-xyonly-by-block=survey1/survey2
This option sets the mode of all ties between sections in the specified two surveys in the MBnavadjust project to be "XY". This means only the horizontal coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-zonly-by-block=survey1/survey2
This option sets the mode of all ties between sections in the specified two surveys in the MBnavadjust project to be "Z". This means only the vertical coordinate of these ties will be used as constraints in the inversion for an optimal navigation model.
--set-ties-zoffset-by-block=survey1/survey2/zoffset
This option resets the zoffset value of all ties between sections in the specified two surveys.
--set-ties-xyonly-by-time=dt
This option sets the mode of all ties with nav points separated in time by dt or larger in the MBnavadjust project to be "XY". This means only the horizontal coordinates of these ties will be used as constraints in the inversion for an optimal navigation model.
--unset-ties-with-file=file
This option unsets (deletes) all ties involved with the specified file in the MBnavadjust project.
--unset-ties-with-survey=survey
This option unsets (deletes) all ties involved with the specified survey in the MBnavadjust project.
--unset-ties-by-survey=survey
This option unsets (deletes) all ties between two sections in the specified survey in the MBnavadjust project.
--unset-ties-by-block=survey1/survey2
This option unsets (deletes) all ties between sections of the specified two surveys in the MBnavadjust project.
--unset-ties-all
This option unsets (deletes) all ties in the MBnavadjust project. The command --unset-all-ties is also accepted.
--skip-unset-crossings
This option sets all unset crossings in the input projects to be skipped. This does not apply to any new crossings between the two merged projects.
--unset-skipped-crossings-by-block=survey1/survey2
This option sets all skipped crossings in the specified two surveys to be unset.
--unset-skipped-crossings-between-surveys
This option sets all skipped crossings between different surveys in the input projects to be unset. This does not apply to any new crossings between the two merged projects.
--insert-discontinuity=file:section
This option inserts a navigation discontinuity immediately after the specified file and section.
--import-tie-list=filename
Import a listing of navigation ties that has been exported from a different mbnavadjust project using the --export-tie-list command.
--export-tie-list=filename
Output the current navigation ties as a text file that can be imported into a different mbnavadjust project using the --import-tie-list command. The ties that are output reflect all modifications specified by other commands.
--triangulate
This command causes mbnavadjustmerge to pre-generate triangular meshes used by mbnavadjust for contouring each section as part of the graphical analysis of crossings. These meshes are stored within the project directory as a *.tri file in parallel with each *.mb71 section file. Any section triangle mesh files that already exist are not recreated. The region including each section is divided into a grid with a cell size determined by the scale value set by the --triangulate-scale option; the triangle vertices are selected as the least deep (shoalest) soundings within each grid cell.
--triangulate-all
This command causes mbnavadjustmerge to pre-generate triangular meshes used by mbnavadjust for contouring each section as part of the graphical analysis of crossings. All section triangle mesh files are created; any pre-existing triangle files are overwritten.
--triangulate-scale=scale
This option sets the scale (size) of the triangles generated by the --triangulate or --triangulate-all commands. By default, the scale is calculated as 1/100 of the width or height (whichever is longer) of the region covered by the section.
--triangulate-section=file:section
This command causes mbnavadjustmerge to pre-generate the triangular mesh for the specified section.
--unset-short-section-ties=min_length
This option unsets (deletes) all ties for which one or both data sections have a navigation track length less than min_length.
--skip-short-section-crossings=min_length
This option sets all crossings for which one or both data sections have a navigation track length less than min_length to "skipped" mode. Any ties associated with these crossings are deleted.
--remake-mb166-files
This option causes mbnavadjustmerge to remake the navigation files inside the project, fixing problems caused by a since-fixed bug.
--fix-sensordepth
This option causes mbnavadjustmerge to recalculate the sensordepth values in the project file from the imported swath data, fixing problems caused by a since-fixed bug.
--verbose
This option increases the verbosity of MBnavadjustmerge, which means that more information than by default is output to the stderr stream of the shell.
--help
This option causes MBnavadjustmergeP to output a list of the possible command line options, and then exit.

 

EXAMPLES

Suppose you have two AUV survey missions, 20140515m1 and 10140515m2, that overlap slightly. If you have used MBnavadjust to adjust the navigation of the two missions separately, you can use MBnavadjustmerge to merge the two MBnavadjust projects into a single new project without losing any of the ties made between overlapping sections in the existing projects. If the two existing projects are named "Navadjust20140515m1" and "Navadjust20140515m2", respectively, then there exist project files with a ".nvh" suffix and project directories with a ".dir" suffix. To create a new MBnavadjust project combining the two existing projects, the following will suffice:

    mbnavadjustmerge --input=Navadjust20140515m1.nvh                       --input=Navadjust20140515m2.nvh                       --output=Navadjust20140515All.nvh

The new project Navadjust20140515All can be opened and analyzed further using MBnavadjust. When opening the new project, the user should first solve for a comprehensive navigation adjustment model by selecting the <Action->Invert Navigation> menu item, and then find the crossings between the two previously separate missions by selecting the <Action->Check For New Crossings> menu item.

If the --skip-unset-crossings option is added to the above command, then all unset crossings in the two input projects will be set to "skipped" mode in the output project.

 

SEE ALSO

mbsystem(1), mbio(1), mbprocess(1), mbnavadjust(1), mbset(1)

 

BUGS

It started out simple and bulletproof, but now it's too complicated to be bulletproof. It's probably nerfgunproof, though. Good luck.


 

Index

NAME
VERSION
SYNOPSIS
DESCRIPTION
MB-SYSTEM AUTHORSHIP
OPTIONS
EXAMPLES
SEE ALSO
BUGS


Last Updated: 15 November 2022


<< Manual page for the MB-System package | MB-System website >>