ISIS Application Documentation
cnetcombinept | Standard View | TOC | Home |
Combine one to many control networks with common control points.
Description
Categories
Groups
History
This program will create a control network by combining control points from one or more control networks into single points that satisfy image distance criteria. It employs a more robust/direct technique than cnetmerge. This technique evaluates each control point in all input networks by finding all candidate merger control points who have a measure within IMAGETOL. Then, for each candidate point, the average distance of the measures in the candidate to a measure in the source point is computed. If the average distance to any measure in the source point is less than IMAGETOL, then the candidate point and source point are merged. The candidate control point is disabled so that it will never be considered for another merger and the now augmented control point is added back to the search pool for further merger considerations, which can occur when other common measures are considered.
When all control points have been searched and all mergers have taken place, a new single combined control network is created.
Note that this application can be ran more than once and directly on the output of any past run (in other words, you need only provide a single network, if desired).
Name | Description |
---|---|
CNETBASE | Master control network file to match |
CNETFROM | Merger control network file |
CNETLIST | List of merger control network files |
Name | Description |
---|---|
ONET | Merged Control Network |
TOSN | Write a list of all serial numbers contained in the network |
NETWORKID | The NetworkId keyword value for the merged ControlNet |
DESCRIPTION | The Description keyword value for the merged ControlNet |
LOGFILE | File that logs which points were merged together |
Name | Description |
---|---|
IMAGETOL | Pixel distance tolerance to determine merge of point |
KDNODES | Specify the leaf size of the kd-tree |
SETAPRIORIBEST | Reset the apriori surface point to best available |
CLEANNET | Remove all invalid or ignored control points/measures |
CLEANMEASURES | Remove all invalid or ignored control measures |
MINMEASURES | Select minimim number of valid measures/point |
The base control network file to which others will be matched.
Type | filename |
---|---|
File Mode | input |
Internal Default | None |
Filter | *.net *.cnet *.ctl |
A control network that will be matched to the base (i.e. master) network.
Type | filename |
---|---|
File Mode | input |
Internal Default | None |
Filter | *.net *.cnet *.ctl |
A list of control network file names that will be matched to the base (i.e. master) network.
Type | filename |
---|---|
File Mode | input |
Internal Default | None |
Filter | *.lis *.txt |
The output Control Network, which is the combined result of the input networks.
Type | filename |
---|---|
File Mode | output |
Internal Default | None |
Filter | *.net *.cnet *.ctl |
Provided with a filename in this option, all the cube serial numbers that are contained in the network are written to this file as soon as it is determined in the processing.
Type | filename |
---|---|
File Mode | output |
Internal Default | None |
Filter | *.lis |
The NetworkId keyword for the newly merged ControlNet will be set to this given value. The Networkid is a single word identifier or name assigned to a Control Network.
Type | string |
---|---|
Internal Default | None |
The Description keyword for the newly merged ControlNet will be set to this given value. This should be a brief description of the purpose of the merged control network.
Type | string |
---|---|
Internal Default | None |
A four column CSV file that contains which input control points were merged into output control points. The first column contains the ID of each output control point that had at least one input control point merged into it. The second column contains the number of measures in the input control point. The third column contains the number of measures in the output control point. The fourth column contains a space separated list of the IDs of input control points that were merged into the output control point.
Type | filename |
---|---|
Internal Default | None |
The acceptable distance, in pixels, for merging points.
Type | double |
---|---|
Default | 1.0 |
Number of leaves in the kd-tree structure.
Type | integer |
---|---|
Default | 10 |
When TRUE, all points apriori latitude/longitude surface point is updated to use the best one available. This is often the resulting coordinate after jigsaw has adjusted the surface point.
Type | boolean |
---|---|
Default | false |
When true, all invalid or ignored control points and measures are removed from the output control network as one of the main objectives of this application is to remove redundancies and mimimize the size of networks. However, for evaluation purposes, you can set this to false, which will preserve all control points.
When specifying the minimum number of measures/control point using the MINMEASURES parameter, any control point that does not meet this criteria will also be removed from the netwrk when CLEANNET=true, otherwise these points will be set to ignored.
Type | boolean |
---|---|
Default | true |
When true, all invalid or ignored control points and measures are removed from the output control network as one of the main objectives of this application is to remove redundancies and mimimize the size of networks. However, for evaluation purposes, you can set this to false, which will preserve all control points.
When specifying the minimum number of measures/control point using the MINMEASURES parameter, any control point that does not meet this criteria will also be removed from the netwrk when CLEANNET=true, otherwise these points will be set to ignored.
Type | boolean |
---|---|
Default | true |
This allows users to disable points that have less than MINMEASURES control measures/control point. For example, if you want to flag all points as ignored with 2 measures or less, set MINMEASURES=3. Points that don't meet this critieria are set to ignore and are subject to the CLEANNET action requested by the user (i.e., all ignored points are removed from the network if CLEANNET=true).
Type | integer |
---|---|
Default | 0 |
Kris Becker | 2015-10-11 | Original Version |
Kris Becker | 2015-10-22 | Corrected the count when SAVEMINS=TRUE. |
Kris Becker | 2015-11-13 | Uses modified ControlNet class which provides the ability to take ownership of all points in the control net efficiently. This is needed in order to ensure only a single copies of control points are utlized to minimize memory overhead. |
Jeannie Backer | 2016-03-11 | Added program to ISIS package. |
Jeannie Backer | 2016-04-22 | Modified to set the new control net's target and radii by using the input control net's values. References #3892 |
Kris Becker | 2016-12-05 | Modified merging algorithm and parameters. Fixes #4558. |
Jesse Mapel | 2016-12-06 | Created new tests and updated documentation. References #4558. |
Tyler Wilson | 2017-06-29 | Modified ControlPointMerger::merge function to properly hand combining control points that contain the same control measures in each point. Fixes #4869. |
Tyler Wilson | 2017-06-29 | Modified ControlPointMerger::merge function so that merged control measure types are set to candidate (except when they have the same reference measure). Fixes #4870. |
Tyler Wilson | 2017-06-29 | cnetcombinept now properly sets apriori lat/lon values to adjusted values. Fixes #4772. |
Jesse Mapel | 2018-07-06 | Removed calls to set control net target radii because they are no longer needed by the control network. Fixes #5457. |
Jesse Mapel | 2020-06-09 | Added a the LOGFILE argmuent that generates a log of which control points were merged together. |