MASI: Modules for Aerial and Satellite Imagery
Version 6.0 Satellite Modules
Tutorial
|
|
VisionOnSky
Co., Ltd. |
|
www.visiononsky.com |
File
Version: v1.0
April
4, 2023
Special Notes:
(1) Before starting the tour of MASI
software, please be sure that the installation manual and tutorials are fully read and
understood. If users need to know and exploit the software deeply, please
further read user manual of the software.
(2) Users can receive software license through two
manners. One is to download license from internet. If this manner is used,
users should provide us an e-mail address. We send the password to the e-mail
address via the Sense Shield (SS) Licensing platform. If you have not found it,
please check your e-mail trash (spam) box. The e-mail text may be written by
Chinese, but the English string is actually the password. The account used to
log in the SS (Sense Shield) middleware is your e-mail address and the password
is the English string sent to your e-mail box. After you download the software
license and bind it on your machine, you can use the software even though you
disconnect the internet. If the internet connection is not very stable, we recommend
that you disconnect the internet, otherwise a timeout error may happen. Using
this manner, users can download software package, tutorials, user manuals,
installation manual, etc. from website: http://www.visiononsky.com. The other
manner is to use a physical dongle to get the software license which is stored
in this dongle. You don’t need to provide us an e-mail address and don’t need
to log in in the SS middleware, just need to plug the dongle on computer. But
you still need to install the SS middleware. Using this manner, users should
contact us to get the software package and the package downloaded from the
website is invalid for the physical dongle.
(3) The file
name and the path name to be used in English version of MASI software should be
English characters, and the file name and the path name can
not include blank space.
(4) The full
path of file can not be too long (e.g., more than 200
characters). If it is too long, please shorten the full path of file.
(5) Please make
sure that there is enough free space in the disk where the work directory is
located.
(6) If text
editing is needed, editors such as UltraEdit, NotePad++ are highly recommended.
(7) Because of
the update of software version, some GUI interfaces of programs illustrated in
this tutorial are not the newest, which are changed and adjusted. The latest
user manual of the software provides the newest one, please refer to that
document.
(8) Any
feedbacks, suggestions, and problems, please send to the e-mail address:
jhyang@vip.163.com
History
of Versions
Version 1.0: finishing the first
version of this document, tutorial of satellite modules. Time: Apr., 2023,
Author: VisionOnSky Co., Ltd.
1 The brief introduction of satellite modules of MASI
Version 6.0
The functions in MASI Version 6.0 for
satellite images can be packaged as some relatively independent modules. The
modules include the following functions: multiple orientation
methods (automatic relative orientation of stereo and triplet, automatic
extraction of control points by matching points between the image and existing ortho-image, accurate orientation for a single image
through control point, automatic point matching and bundle adjustment of stereo
block, bundle adjustment of a block consists of nadir satellite images, etc.), interactive
tools for points viewing and measurements, measurements of image points for
GCPs and the adjustment with the support of GCPs, automatic stereo matching and
generation of highly dense DSM (as well as point clouds), automatic 3D
modeling with true
color textures, automatic ortho-rectification, pan-sharpening,
automatically transforming DSM to DTM (the height difference between DSM and
DTM is the height of building / tree), automatic finding change of surface
height (used in the automatic finding of new buildings, the unplanned buildings
and the removed buildings, and estimating their corresponding accurate height),
automatic mosaic (mosaic of DSMs, mosaic of ortho-rectified
images, mosaic of histogram matched images), volume
calculation, extraction of building attributes (the center position of building,
height of building, number of layers, area of ground, and construction area of
building), generation of boundary polygon for satellite images, image
displaying, procedural
processing for DSM production, interactive editing of DSM/DEM, collecting
polygons, and
some commonly used tools. These modules for satellite images are
shown to users by a main interface (satMain.exe). After installing of MASI
software, users can launch the main interface by clicking the shortcut to satMain.exe
or directly double-clicking the program, satMain.exe, itself. Then, the
corresponding functions can be launched by clicking the icons in the interfaces.
Figure 1. The main interface (satMain.exe) of
satellite modules
The features of satellite modules in
MASI Version 6.0 are as follows:
(1) Supporting commonly used satellite sensors, such
as Worldiew-1/2/3/4, GeoEye, ZY3-01/02, SuperView-1/2,
Pleiades 1A/1B, Pleiades NEO, SPOT 6/7, GF-7, GFDM, TH series, Beijing series.
(2) GUI
operating manner and batch processing manner are
supported in MASI software. GUI-based operations for automatic stereo matching
and DSM generation, and ortho-rectification are easy.
Only one push of button is needed to carry out the procedure of DSM production.
User can also automatic generate or write batch files including commands to fulfill
the pipeline processing for a specific procedure. Distributed computing where
multiple tasks can be allocated to multiple machines is also supported.
(3) Modules
demanding large computation requirements, such as automatic stereo matching and DSM
generation, pan-sharpening, and mosaicking, have capability
of parallel computing. Thus, the computational resources can be fully
exploited.
(4) Supporting
different operating systems, either Windows OS or Linux OS. MASI can run on the
commonly used PC computer, and cluster computer usually located in data center
or supercomputer center. This tutorial is based on Windows OS. If you need the
document of usage of MASI on Linux OS, please contact us.
For more
details about functional features and technique traits, please refer to the
document of Product Descriptions and Typical Applied Cases.
2 The automatic
processing flowchart for satellite image
Figure 2. The automatic processing
flowchart for satellite image
In the flowchart, each step corresponds to a function
in satellite modules as follows:
(1) Orientation. According to the satellite
images, the attached RPC files, control points, etc., bundle
adjustment are fulfilled to obtain the accurate geometric relationships between
image space and object space. Clicking the icon showing “Orientation” in the main
interface,
The following
menu will pop up.
In MASI Version
6.0 there are the following functions for orientation and adjustment: automatic
relative orientation of stereo and triplet, accurate orientation for a single
image through control point, automatic point matching and bundle adjustment of
stereo block, interactive tools for points viewing and measurements, measurements
of image points for GCPs and the adjustment with the support of GCPs, automatic
extraction of control points by matching points between the image and existing ortho-image, etc. Meanwhile, the results of bundle
adjustment from mainstream software can be used in MASI software. Experimental
results show that the results of bundle adjustment from PCI
GXL, PixelGrid,
etc. can be used in MASI software.
If the
satellite images are stereo pair, relativeOri.exe or tripleOriForm.exe (under the menu, Orientation
-> Orientation of stereo with two/three views -> Points matching and
automatic orientation) is used to extract tie points and fulfill the bundle
adjustment. The results of the adjustment parameters based on image space for
the left and right images are determined. If the satellite images are triplet
stereo with three views (e.g. ZY3 triplet, Pleiades triplet, Pleiades NEO triplet),
tripleOri.exe or tripleOriForm.exe (under the menu, Orientation
-> Orientation of stereo with two/three views -> Points matching and
automatic orientation) is used to extract tie points and
fulfill the bundle adjustment for the three views. The results of the
adjustment parameters based on image space for the forward, nadir, backward images
of triplet stereo are determined. The above method for stereo/triplet
is similar to relative orientation where bundle
adjustment is fulfilled in stereo pair or triplet to obtain their accurate
relative positions. And the absolute positional accuracy of stereo pair or
triplet is determined by the accuracy of orbit of satellite.
In MASI
software, there are not only the functions of automatic points matching and orientation,
but also an interactive tool for stereo orientation of two views and an interactive
tool for triplet orientation of three views, which are tpViewer.exe (under the menu, Orientation
-> Orientation of stereo with two/three views -> Interactive tool for
stereo orientation) and tripletViewer.exe (under the menu, Orientation
-> Orientation of stereo with two/three views -> Interactive tool for
triplet orientation), respectively. The generated tie
points from relativeOri.exe
and tripleOri.exe can also be imported into
interactive tools tpViewer.exe and tripletViewer.exe, respectively, to check
the correctness of matched points, manually measure new image points and then
fulfill adjustment again. Furthermore, users can import GCPs into tpViewer.exe
and tripletViewer.exe, and measure their corresponding image points and then
carry out the adjustment with the support of GCPs, resulting in accurate
orientation results. The independent programs, tpBundleAdj.exe and triBundleAdj.exe
(under the
menu, Orientation -> Orientation of stereo
with two/three views -> Bundle adjustment),
can also use a point file including some control points to perform bundle
adjustment to obtain accurate orientation results.
A method for
accurate orientation of a single image is that the results of the adjustment
parameters are accurately determined through the coordinates of image and
object spaces of few ground control points. These ground control points along
with their corresponding image points can be measured in the interactive tool, pointsMeasure.exe
(under the
menu, Orientation -> Ori
by GCPs and points measurement), provided by MASI software. Or they can be
extracted by automatically matching points between the image and existing ortho-image (the programs, oriByOrtho.exe and
oriByOrthoForm.exe, have this function; under the menu, Orientation
-> Ori by matching with ortho
image).
In MASI
software there is also a function of bundle adjustment of stereo block
consisting of images with multiple strips and multiple views. First, the
results of the adjustment parameters based on image space are determined by
calculation of bundle adjustment after the feature interest points among all
images in a stereo block are detected and matched automatically under the
program, satOrient.exe and satOrientForm.exe (under the menu, Orientation
-> Automatic orientation of stereo block). Then, these automatically
extracted tie points can be imported into a general interactive tool for points
viewing and measurements, nViews.exe (under the menu, Orientation
-> nViews points viewer and measurement), to check
the correctness of matched points, manually measure new image points and then
fulfill adjustment again. Furthermore, users can import GCPs into nViews.exe
and measure their corresponding image points and then carry out the adjustment
(by calling the external program, multiAdjustment.exe, which can also be used alone
under the
menu, Orientation -> Bundle adjustment of
stereo block) with the support of GCPs, resulting in accurate orientation
results. Also, the report of the orientation accuracy can be generated with the
support of check points.
If bundle
adjustment of a block consists of nadir satellite images which we call planar
images (please see the meaning in the program usage of blockSettingForm.exe under the menu, Orientation
-> Generation of block-described file) is demanded, with the assistance of
external elevations source the programs, nadirBlock.exe and nadirBlockForm.exe (under the menu, Orientation
-> Orientation of block of nadir images), are used to attack the task.
The programs, rpcresolver.exe
and rpcresolverForm.exe (under the menu, Orientation
-> Fitting new RPC), can exploit the results of the adjustment parameters
based on image space (i.e., the gained .aff file) in
steps of orientation and the file of original RPC parameters to fit new RPC
parameters.
The results of
bundle adjustment from mainstream software can be used in the coming steps in
MASI software. If the results of bundle adjustment from third party software
are the newly generated RPC parameters, they can be used directly in MASI
software. If the results from third party software are also adjustment
parameters, in order to accord with the coming steps in MASI software, it
should be ensured that the adjustment model is a shift transform or affine
transform in image space when the third party is adopted. Please also check
whether the file format of the adjustment parameters is the same as the file format
provided in MASI software. If not, users need to change the format of these
parameters via text editor in order to accord with the format in MASI software.
Users can also contact us. We will write some software tools which can
automatically transform them for our clients.
(2) Automatic stereo matching and DSM generation. The
results of the adjustment parameters along with the original RPC parameters are
used to fulfill the automatic stereo matching for a stereo pair of satellite
images and dense 3D points (users can decide whether the text-formatted point
clouds files with extension .xyz are saved by setting the configuration option)
are generated. The program tries to extract a 3D point for each pixel
(pixel-wise matching). Then, these point clouds are transformed to DSMs and
these DSMs are mosaicked. At last, a mosaicked DSM covering the whole image is
generated (the DSM before interpolation). There
are two algorithms of stereo matching in MASI software: semi-global matching
(SGM) and NCC-based matching. Because the size of satellite image is large,
image is divided into big blocks to further process. If point clouds are set to
be saved, a text-formatted file of point clouds with extension .xyz is
generated for each block. In files of point clouds, each line is for one point,
and each line includes the x, y, z coordinates value. At the same time, a list
file including all filenames of point clouds extracted from stereo pairs of
image blocks is generated. Clicking the icon showing “DSM”
in the main interface,
The following
menu will pop up.
The command item, SGM, in the above menu is to call the
algorithm of semi-global
matching (SGM) and DSM generation; while the command item, satEpiMatching, in the above menu is to call the algorithm of NCC-based stereo matching and DSM
generation. A mosaicked DSM (the DSM before interpolation) covering the whole
image is yielded for a stereo pair in the two algorithms. SGM
(satSGMatching.exe)
algorithm can achieve good
results for not only plain area and the area with low difference of height but
also urban and the area with high difference of height, and it is relatively
slow and consumes more RAM memory; while NCC-based stereo matching (satEpiMatching.exe) algorithm is relatively fast and consumes less RAM memory, is only
suitable for plain area and the area with low difference of height.
If point clouds
are set to be saved, the files of point clouds (a file of point clouds for each
block) as well as the generated list file can be used as an input of the
program, generateDSM.exe and generateDSMForm.exe (under the menu, DSM
-> Generate DSM), resulting in DSM results with different parameters, such
as grid spacing (cell size), no-data value, and the method to select the height
value. In such a way that through one time of stereo matching (because stereo
matching is a step demanding large computation) the DSM results with different grid
spacing are achieved in the light of users’ requirements. For more details,
please refer to “Usage of the generateDSM.exe and generateDSMForm.exe programs”.
Transforming to DSM and mosaicking: called by the command
item, Generate DSM, in the above menu. A
list file is passed to the function. The point clouds whose
filenames are listed in the list file are transformed to DSMs, respectively. Then,
these DSMs are mosaicked, resulting in a mosaicked DSM covering the whole strip
(the DSM before interpolation). The list file can come from two cases. If point
clouds are set to be saved in the course of
stereo matching, a list file including all filenames of point clouds extracted
from stereo pairs of image blocks is generated. The list file can also be one
into which the multiple lists of cloud points respectively from multiple stereo
are incorporated by using the program mergeFilelist.exe or mergeThreelist.exe,
and mergeListForm.exe.
If there are multiple strips for an area, for each
strip (e.g., ZY3) three stereo pairs exist: forward-backward
stereo, forward-nadir stereo, backward-nadir stereo. Other case is that
multiple strips are acquired in different phases. In MASI software, two methods
are provided to generate highly accurate and highly dense DSM. One method is as
follow. Point clouds are set to be saved in the
course of stereo matching. All list files of cloud points respectively from
multiple stereo pairs are merged (Merge Lists under DSM menu) to generate a
list file including all filenames of point clouds extracted from all strips.
Then, the merged list file is passed to the function, transforming to DSM and
mosaicking (generateDSM.exe and generateDSMForm.exe, Generate
DSM under DSM menu). A highly accurate and highly dense DSM is
generated. The other method is to mosaic multiple DSMs from multiple strips to
produce a highly accurate and highly dense DSM by using the programs, mpimosaic.exe
and mpimosaicForm.exe (DSM Mosaic under DSM menu). For each strip, one DSM or
several DSMs (multiple stereo pairs are selected for a strip) can be yielded.
The former method is flexible and can produce DSM results with different
parameters, such as grid spacing (cell size), no-data value, and the method to
select the height value according to users’ needs. The latter method is more
efficient.
(3) Post
processing for DSM. The above mosaicked DSM has some areas which have not
height value (before interpolation these areas are filled by using no-data
values). In this step, these areas with no-data value are interpolated, and outliers
(or small spots of errors) in the resultant DSM after interpolation are
removed. The
output of this step is the product of dense DSM, which is generated by this
software. The DSM product can be used in different applications followed (e.g.,
volume calculation, finding change of surface height,
extraction of the height of building / tree).
The command item, Post Processing, in
the menu is
to call the function of post processing for
DSM. The GUI
program called from the command item is postDSMForm.exe. Also,
the GUI program can be launched by double-clicking the program directly. For more
details, please refer to “Usage of the postDSM.exe and postDSMForm.exe
programs”.
To simplify
user’s operations and have capability of procedural automatic processing in the course of DSM
production, a GUI program called satChainForm.exe is provided by MASI
software. In the GUI program, three sequential steps for satellite stereo or
triplet, i.e., relative orientation (Step 1), stereo matching and DSM
generation (Step 2), and DSM post-processing (Step 3), are connected
automatically, so that the interpolated DSM results can be generated by means
of one clicking. The program supports commonly used optical satellite sensors
with the capacity of stereo acquisition. After a specific sensor is selected,
the parameters for each step are set automatically. Users can launch the GUI
program via the icon showing “DSM” (the item of “Automatic pipeline” in the
pop-up menu), in the main interface (satMain.exe) of satellite modules. Also,
the GUI program can be launched by double-clicking the program directly. For
more details, please refer to “Usage of the satChainForm.exe program”.
(4) Automatic ortho-rectification.
The program uses the DSM source (the output of Step 3) to ortho-rectify
the satellite image to generate so-called true ortho-image.
An alternative way is that DTM as a height source, which can be from third
party or generated by MASI software, is used to ortho-rectify
images. This way is more common. Clicking the icon
showing “Ortho” in the main interface,
The following
menu will pop up.
The command item, Satellite
Ortho, in
the above menu is to call the function of ortho-rectification.
(5) Pan-sharpening. The higher resolution panchromatic
image and the lower resolution multispectral image after ortho-rectification,
respectively, are merged to generate a sharpened image which is a higher
resolution multispectral image. In some
cases, panchromatic image and multispectral image are acquired at the same
viewing angle. Users can merge panchromatic image and multispectral image with
same viewing angle at the beginning of a procedure. Then, the pan-sharpened
image (whose orientation parameters are the same as those of the panchromatic image)
can be used in the steps of ortho-rectification and
3D reconstruction. Thus, orientation
and ortho-rectification of the multispectral image
can be avoided. The optimized BR fusion algorithm is implemented in the
program, which can be executed either serially or parallelly.
BR pan-sharpening algorithm is proposed by the founder of VisionOnSky Co., Ltd., Dr. Jinghui
Yang on the basis of several years’ research. Compared to other algorithms, BR
can achieve a good fusion results. Also, the algorithm is optimized for the
pan-sharpening of very high resolution satellite image. Clicking the icon
showing “Pan Sharpening” in the main interface,
The operating
interface of the function will be launched.
(6) Comparing surface height and change finding. By
comparing DSMs of different phases (generated by MASI software), the program
can automatically find change of the surface height and calculate the value of
changed height. It can be used in the automatic finding of new buildings, the unplanned
buildings and the removed buildings, and estimating their corresponding
accurate height. The map of height difference produced in this step can be used
in the following extraction of building attributes
(the center position of building, height of building, number of layers, area of
ground, and construction area of building). Clicking the icon showing
“Surface
Change” in the main interface,
The operating
interface of the function will be launched.
(7) Automatic DSM2DTM. The program deletes the
non-grounded objects like buildings, trees in DSM and transforms DSM to DTM
where the pure ground height is saved. Clicking the icon showing
“DSM to DTM” in the main interface,
The operating
interface of the function will be launched.
(8) Height estimation of building / tree. The
height difference between DSM and DTM (nDSM) is the
height of building / tree. The height difference (raster form) produced in this step can
be used in the following extraction of building
attributes (the center position of building, height of building, number of
layers, area of ground, and construction area of building). DSM is generated by
the functions in MASI software (including post processing for DSM), and DTM can
be produced in the step 7 in this flowchart. Clicking the icon showing “Building
height” in the main interface,
The operating
interface of the function will be launched.
(9)
Applications. The generated dense DSM, map of height difference, nDSM
(i.e., height of building / tree) in above steps can be passed to the
application functions which fulfill volume calculation and extraction of
building attributes (the center position of building, height of building,
number of layers, area of ground, and construction area of building). Clicking
the icon showing “App” in the main interface,
The following
menu will pop up.
Currently two applications modules are included, i.e.,
volume calculation and automatic extraction of building
attributes in the light of buildings footprints. The command item, Calculate
Volume, in the above menu is to call the function of volume
calculation.
The GUI program called from the command item is calVolumeForm.exe. Also,
the GUI program can be launched by double-clicking the program directly. For more
details, please refer to “Usage of the calVolume.exe and calVolumeForm.exe
programs”. The command item, Extract Buildings’
Attributes, in
the above menu is to call the function of extraction of
building attributes. The GUI program called from the command item is extBldgAttributesForm.exe. Also,
the GUI program can be launched by double-clicking the program directly. For more
details, please refer to “Usage of the extBldgAttributes.exe and
extBldgAttributesForm.exe programs”. In the course of volume calculation and
automatic extraction of building attributes, the bounds in the form of polygon
are needed. Users can click the command item, Polygons Drawing Tool, in above
menu to launch the interactive tool, collectPolygons.exe, to collect polygons
and save them.
(10) 3D modeling
with true
color textures. Images and highly dense DSM
generated in previous steps are used to generate 3D TIN models with true
color textures. The 3D models are in a form of tiled mesh. The data type of the
images which are used for texture mapping is unsigned 8 bit integer. If it is
not, user should stretch the images to unsigned 8 bit using the autoStretch.exe
program provided by MASI software. Clicking the icon showing “Textured 3D Model”
in the main interface,
The following
menu will pop up.
The command item, textured 3D modeling, in the above
menu is to call the function of 3D modeling. The GUI program called
from the command item is scene3DForm.exe. Also, the GUI program can be launched
by double-clicking the program directly. For more details, please refer to
“Usage of the scene3D.exe and scene3DForm.exe programs”.
In addition, other functions are included: generation
of boundary polygon for satellite images, image displaying, interactively editing of
DSM/DEM, collecting polygons, automatic mosaic (mosaic of
DSMs, mosaic of ortho-rectified images, mosaic of histogram
matched images),
transforming RPC parameters with XML format used in airbus Pleiades,
Pleiades NEO, SPOT 6/7 to the commonly used RPC format (the form exploited by
IKONOS and GeoEye), transforming RGB image to grey
image, rotation of image, reflection of image, transforming point clouds to
surface in the form of raster, transforming DSM with raster form to point
clouds, image cropping, creating overviews for image, transforming between orthometric height and ellipsoidal height, projection /
re-projection for image based on WGS 84, generation of .aff
files in batch, and uncompressing image file with JPEG2000 format.
The method of format transform for point clouds
generated by MASI software: the file of point clouds generated by the software
is text format, which can be transformed to LAS format through the following
steps. In the course of transform, a third party software package OSGeo4W
(including the open source library, i.e., libLAS) is
exploited. The package can be downloaded from the official website of OSGeo4W.
The steps are as follows:
(1) Translation to LAS format: the command, namely
txt2las.exe (OSGeo4W package includes the program), in the open source library,
libLAS, can be used to translate the point clouds
with text format to the LAS file. The corresponding command is as follows:
>txt2las.exe -parse xyz -i filename.xyz
-o filename.las
(2) Assigning RGB values: the command, namely
las2las.exe (OSGeo4W package includes the program), in the open source library,
libLAS, can be used to assign the RGB values from
truly ortho-rectified image to the points in LAS
point clouds file. The colored point clouds are obtained. One example of the
command is as follows:
>las2las.exe
-i points.las --color-source ortho.tif
-o points_rgb.las --file-format 1.2 --point-format 3
--color-source-scale 256 --color-source-bands 1 2 3
3 The flowchart sample of satellite images
In the
following, the flowchart will be illustrated through a sample. First, the main
interface of the satellite modules is launched via the Windows Start menu,
i.e., calling the program, satMain.exe. The launched main interface is as
follows:
Clicking the icons in
the main interface is to call the corresponding functions. The main steps of
the flowchart sample are as follows:
Step 1: Orientation
Clicking the icon showing “Orientation” in the main
interface,
The following
menu will pop up.
In this
chapter, three-line-scanner ZY3-01 images are taken as an example. Thus, by clicking the command
item, Orientation -> Orientation of stereo
with two/three views -> Points matching and automatic orientation, the
GUI program is launched. The program will extract tie points and fulfill the
bundle adjustment for the three views. The results of the adjustment parameters
based on image space for the forward, nadir, backward images of triplet are
determined. The model based on image space with the support of RPC parameters
is adopted in bundle adjustment. The adjustable model based on image space
supports shift and affine transforms of image coordinate. The operating
interface is as follows:
First, all
files required in the course of automatic orientation for a triplet of satellite
images, such as forward, nadir, and
backward images of the triplet and their corresponding RPC files,
are copied to a directory, e.g., F:\ZY3_tests, and set it as work directory.
When MASI graphical interface is used, all required files should be put in the
same directory and the directory is set as work directory.
In the section
of input setting, the forward, nadir, and backward images of the triplet and
their corresponding RPC files are selected.
The first four configuration options
are some parameters used in the detection of interest point. In most cases,
they can be set as default values. For more details, please refer to user
manual of MASI software.
Format of
intermediate files: the intermediate files are the generated images projected
on a plane for forward, nadir, and backward images, respectively. The file
format can be configured. The formats, such as GTiff
and ERDAS IMAGINE (.img), can be used. In this
sample, the format of intermediate files is set as ERDAS IMAGINE (.img). The format is recommended.
Form of RPC:
the form of RPC parameters. Currently two mainstream types are supported. One
is the form exploited by IKONOS (GeoEye) image,
usually the RPC filename ends with _rpc.txt, which is selected by setting “General”
in this option and the other is the form exploited by
Worldview (QuickBird) image, usually the RPC filename
ends with .rpb, which is selected by setting “WV”
in this option. If for the XML form of RPC parameters adopted by airbus Pleiades
1A/1B, Pleiades NEO, and SPOT 6/7, the function provided in tools in the main
interface of the modules can transform the RPC parameters with XML format to
the commonly used RPC format (the form exploited by
IKONOS and GeoEye). In
this sample, the type of “General” is used.
Attention:
There are two types of RPC format used for ZY3 images. They are provided by
SASMAC and CRESDA, respectively. SASMAC uses the form exploited by IKONOS (GeoEye) image, whose filename usually ends with _rpc.txt.
However, CRESDA uses the form exploited by Worldview (QuickBird)
image, whose filename usually ends with .rpb. Thus,
for the image provided by SASMAC, the type of RPC format is selected by setting
“General” in the option. It is selected by setting “WV” in the option for the
image provided by CRESDA.
Block size: the
block size which is used to divide the image when detecting the interest points.
In each block, the most reliable point is detected, which ensures the even
distribution of interest points in the whole image. The size of border to be
deleted: the size of border where the matched points is not reliable and need
to be deleted. Extended size: being the extended size to two ends of the
predicted search range. Threshold of the difference: the threshold of the
difference between the highest NCC value and the second highest NCC value in
the course of matching. The point whose difference value is less than the
threshold is deleted. Number of candidates: the number of selected points which
are nearest to the center of every block. These points are the candidates for
the following processing. Number of used threads: setting the number of used
threads (CPU cores or the virtual CPU cores by using hyper-threading
technology). For the cases where CPU cores are enough, we suggest that number
of 4, 6 or 8 is set here.
The above six
configuration options are to enhance the reliability, correctness, and
efficiency in the matching of interest points. In most cases, they can be set
as default values.
After the above
options in the interface are set, users can click “Save configuration” to save
these options. These configuration options will be saved in a configuration
file, relative.conf, and next time the options can be
loaded from the configuration file by clicking “Load configuration”. The
configuration file, relative.conf, is also stored in
the work directory. If the button of “Execute” is clicked, the configuration
file will also be generated in the same way.
In the section
of output setting, users should set the filename of tie points matched among
forward, nadir, and backward images (XML format is adopted in the file of tie
points. The file format is illustrated in the Appendix IV in user manual.), the
resolution (in this sample, 3.5 m) set to project the image on a plane, which can not be better than the lowest one in the triplet (for
ZY3-01, the resolution of forward and backward images is 3.5 m, while the resolution
of nadir image is 2.1 m), and the NCC threshold. Only if the NCC value of the
matched tie point is above the threshold, the point is a valid point. The value
range of the threshold is 0 ~ 1. The default value set in the interface is appropriate
for most cases. Also a choice, which can be shift or affine, should be selected
in image-space based adjustment model. In this sample, shift is selected.
After finishing
the setting of configuration options, input and output setting, users can click
the button of “Execute”. The program starts to run and the required time to
finish the whole procedure is different according to the image size and the
height difference of the covered terrain. In the course of computation, the
buttons of “Execute” and “Cancel” on the bottom of the form is invalid. The two
buttons can not be clicked in case they are clicked
many times in the course of running. Users can learn the progress and the
running status via the re-directed output printing (sometime printing may
delay) on the right side. User can also check the information of resources
(CPU, memory and Disks) possessed by the program from Task Manager and Resource
Monitor of Windows OS. Once the execution of tripleOri.exe is finished, a
message box will pop up showing that the processing is closed successfully or
terminated (aborted). After clicking OK button on the message box, the GUI
program returns to the available status. Users can either click the button of “Cancel”
on the bottom or click the closing icon on the up-right corner of the interface
to close this GUI program. Or users can select and set new input and output to fulfill
a new task.
User can click
the button of “Terminate” on the bottom if they need to abort the processing
(not the closing of GUI form). The GUI program, tripleOriForm.exe, will kill
the process of tripleOri.exe which is being called. Killing the process of
tripleOri.exe may delay (less than one second or several seconds). Once the process
is killed, a message box will pop up showing that the processing is terminated
(aborted) or closed successfully. After clicking OK button on the message box,
the GUI program returns to the available status. Users can either click the
button of “Cancel” on the bottom or click the closing icon on the up-right
corner of the interface to close this GUI program. Or users can select and set
new input and output to fulfill a new task.
Attention: the
button of “Cancel” on the bottom is only for closing the GUI program. If the
called logical program (i.e., tripleOri.exe) is running, users should first
click the button of “Terminate” to abort the processing task or wait until the
processing task is finished, and then close the GUI program. Users can not click
the button of “Cancel” or click the closing icon on the up-right corner of the
interface to close this GUI program when the called logical program is running.
The blank area
of the right side will display the information printed by the command program,
and the printed information will also be saved in a log file named as tripleOri_ddMMMyyyyHHmmss_log.txt.
In the filename, dd are two digital numbers
indicating a date, MMM are three English characters indicating an abbreviation
of a month, yyyy are four digital numbers indicating
a year, and HHmmss are digital numbers indicating
hour, minute and second in the form of 24 hours. The log file is also stored in
the work directory. All configuration options are saved in the configuration
file, relative.conf, through a certain type of form
in the course of running of program. The configuration file can be used in the
action of loading configuration.
The files with
the extension .aff including the results of the
adjustment parameters based on image space are determined for the forward,
nadir and backward images, respectively, after bundle adjustment. The contents
of these files:
For more details about the format of .aff file, the meaning of items in the file, the intermediate
files generated, the format of the tie point file and auxiliary files
generated, please refer to user manual of the software. The
.aff files gained in this step will used in the
coming stereo matching and DSM generation, orhto-rectification
and texture mapping of 3D models. Users can also use the gained .aff file and the file of original RPC parameters to fit new
RPC parameters. Please refer to the program usage of rpcresolver.exe.
Meanwhile, the
generated tie points can also be imported into interactive tool, tripletViewer.exe,
to check the correctness of matched points, manually measure new image points
and then fulfill adjustment again. Furthermore, users can import GCPs into tripletViewer.exe
and measure their corresponding image points and then carry out the adjustment with
the support of GCPs, resulting in accurate orientation results. MASI software
includes an interactive tool for stereo orientation of two views and an interactive
tool for triplet orientation of three views, which are tpViewer.exe and tripletViewer.exe,
respectively. The two interactive tools can be launched via the icon showing
Orientation (the item of “Orientation of stereo with two/three views -> Interactive
tool for stereo orientation / Interactive tool for triplet orientation” in the
pop-up menu), in the main interface (satMain.exe) of satellite modules.
If the
adjustment results are determined by bundle adjustment of stereo block in this
software or by using bundle adjustment provided by third party software, the
step can be discarded. If the results of bundle adjustment from third party
software are the newly generated RPC parameters, they can be used directly in
MASI software. If the results from third party software are also adjustment
parameters, in order to accord with the coming steps in MASI software, it
should be ensured that the adjustment model is a shift transform or affine
transform in image space when the third party is adopted. Please also check
whether the file format of the adjustment parameters is the same as the file
format provided in MASI software. If not, users need to change the format of
these parameters via text editor in order to accord with the format in MASI
software. Users can also contact us. We will write some software tools which
can automatically transform them for our clients.
The results of
the adjustment parameters can also be determined through the coordinates of
image and object spaces of few control points. These ground control points
along with their corresponding image points can be measured in the interactive
tool, pointsMeasure.exe (under the menu, Orientation
-> Ori by GCPs and points measurement), provided
by MASI software. Or they can be extracted by automatically matching points
between the image and existing ortho-image (the
programs, oriByOrtho.exe and oriByOrthoForm.exe, have this function; under the menu, Orientation
-> Ori by matching with ortho
image). If automatic orientation for a stereo pair of satellite images is
needed, the GUI program is the same, but the called logical program is
different. It is the program, relativeOri.exe. For more details, please refer to user
manual of MASI software.
Step 2: Automatic stereo matching and DSM generation
Clicking the icon showing “DSM”
in the main interface,
The following
menu will pop up.
There are two algorithms of stereo matching in MASI software: semi-global
matching (SGM) and NCC-based matching. The command item, SGM, in the above menu is to call the
algorithm of semi-global
matching (SGM) and DSM generation; while the command item, satEpiMatching, in the above menu is to call the algorithm of NCC-based stereo matching and DSM
generation. In this sample, SGM algorithm is adopted. The
operating interface is as follows:
The concept of work directory is the
same as that in the previous step. All files required in the course of stereo
matching and DSM generation
should be put in the work directory. Therefore, the directory, i.e., F:\ZY3_tests,
is still set as the work directory in this step. In the course of stereo
matching and DSM generation,
the generated files with .aff
extension in the step of orientation (the file name is the same as the file of
RPC parameters. The only difference is the file extension which is changed to .aff) are required, which is also in the work
directory.
Attention: even
though the re-generated RPC parameters after adjustment (namely the newly
generated RPCs without the accompanied adjustment parameters) are used, the .aff files still need to be provided for the sake of keeping
the consistency with other cases. However, the contents of the .aff file are fixed:
1 0 0
0 1 0
It has the same
effect as the situation where there are not adjustment parameters. MASI
software has a tool to automatically generate the .aff
files with above contents.
The program of
stereo matching and DSM generation each time can only deal with a stereo pair
with two images. For three-line-scanner ZY3 images, three times of two-view
stereo can be fulfilled, namely forward-backward stereo, forward-nadir stereo,
backward-nadir stereo. The results from all stereo pairs are mosaicked and
blended. Then, a DSM product with high quality is generated.
The above interface of stereo matching and
DSM generation is for the case of forward-nadir
stereo. The other two cases are similar, except the input images. In
the section of input setting, the left and right images of the stereo pair and
their corresponding RPC files are selected.
The meaning of
each configuration option is as follows:
Format of
intermediate files: the intermediate files are image of block data, epipolar and disparity images whose file format can be
configured. The formats, such as GTiff and ERDAS
IMAGINE (.img), can be used. In this sample, the
format of intermediate files is set as GTiff (.tif).
Form of RPC:
the form of RPC parameters. Currently two mainstream types are supported. One
is the form exploited by IKONOS (GeoEye) image,
usually the RPC filename ends with _rpc.txt, which is selected by setting “General”
in this option and the other is the form exploited by
Worldview (QuickBird) image, usually the RPC filename
ends with .rpb, which is selected by setting “WV”
in this option. If for the XML form of RPC parameters adopted by airbus Pleiades
1A/1B, Pleiades NEO, and SPOT 6/7, the function provided in tools in the main
interface of the modules can transform the RPC parameters with XML format to
the commonly used RPC format (the form exploited by
IKONOS and GeoEye). In
this sample, the type of “General” is used.
The size of big
block: the size of big block which is used to divide the image. Because the
size of satellite image is large, image is divided into big blocks to process.
The size of block can not be too small or too big,
usually it is bigger than 4096. The size of block is determined in the light of
the memory size of computer, the number of used processors (if parallel
computing of multi-processors is used) and the terrain covered in the image.
The larger the memory, the bigger the block; on the contrary, the higher the
height difference of terrain, the smaller the block. The options can be 4096,
6144, 8192, 10240. If the RAM is small, e.g., 8 GB, the recommended size is
2048. If the RAM is 32 GB, 4096, 6144, 8192 can be tested.
Overlapped size
between blocks: the size of overlap between the adjacent big-blocks. The
overlap area is set to avoid the errors in the border of blocks. The size of
overlapping area can not be too small. Usually
appropriate overlapping size is 5% ~ 10% of the block size.
Delete intermediate
files or not: whether the intermediate files (epipolar
and disparity images) are deleted.
Method to
select height value: the method how to select the height value when there are
multiple 3D points in a grid. The software supports three methods: max, min,
average, which select maximum, minimum, average height value, respectively. The
recommended method is max.
Resolution in
stereo matching: the resolution adopted in stereo matching (Unit: m), i.e., the
grid spacing (cell size) of the intersected 3D point (because of pixel-wise
matching). In this sample, it is 3.5 m. Generally, it can
not be better than the lower resolution in the stereo pair.
Save point
clouds or not: users can determine whether point clouds generated from each
stereo pair of image blocks are saved as a text-formatted file with extension
.xyz. In order to enhance efficiency, point clouds are not saved in this
sample. If point clouds are set to be saved, the files of point clouds as well
as the generated list file from multiple stereo pairs can be used in merging of
DSM. All list files of cloud points respectively from multiple stereo pairs are
merged (Merge Lists under DSM menu) to generate a list file including all
filenames of point clouds extracted from all stereo pairs. Then, the merged list
file is passed to the function, transforming to DSM and mosaicking (generateDSM.exe and
generateDSMForm.exe, Generate DSM under DSM
menu). A highly
accurate and highly dense DSM is generated. For more details, please refer to the
second chapter in this document and user manual of MASI software.
Height limit:
it has two choices, which are from internal files (i.e., file of RPC
parameters) and third party elevation file (The coordinate system of elevation
file must be WGS 84 and the form is geographic latitude/longitude),
respectively.
Projection of
the output: the projected coordinate system adopted in resultant DSM as well as
point clouds. Currently three types, i.e., GEOG (geographic
latitude/longitude), UTM and GK (Gauss-Kruger, in some countries it is also
called TM) are supported, which are selected by setting GEOG, UTM and GK,
respectively. The underlying reference ellipsoid for the three types of
projection must all be WGS 84.
Zone size
(degree): zone width for projection, it can be 6 or 3 degree. If GK is selected
for projection, it can be 6 or 3 degree; while UTM is selected for projection,
it can only be 6 degree. When GEOG is selected for projection, the option is
invalid.
Number of used
threads per processor: setting the number of used threads (CPU cores or the
virtual CPU cores by using hyper-threading technology) per processor. For the
cases where CPU cores are enough, we suggest that number of 4, 6 or 8 is set here.
Bounding
polygon: users can determine whether a bounding polygon is used to limit the
region of stereo matching. After checking the checkbox, a shape format file
which includes a polygon for bounding should be selected. Compared to the
region bounded by the used polygon, the resultant region after the utilization
of bounding polygon in stereo matching may be extended a little bit. The
bounding polygon file can include only one polygon and its coordinate system
must be the same as that of output DSM and point clouds. For default setting, bounding
polygon is not used. The button of “Selecting File” in the right side is
invalid.
After the above
options in the interface are set, users can click “Save configuration” to save
these options. These configuration options will be saved in a configuration
file, satmatching.conf, and next time the options can
be loaded from the configuration file by clicking “Load configuration”. The
configuration file, satmatching.conf, is also stored
in the work directory. If the button of “Execute” is clicked, the configuration
file will also be generated in the same way.
In the output
setting, users should set the filename of the mosaicked DSM (the DSM before
interpolation), the grid spacing (cell size) of the raster file used to store
height value (the value of grid spacing is different from the resolution
adopted in stereo matching and can not be better than
the resolution adopted in stereo matching; in this sample it is set as 5.0 m), the
no-data value used to fill in the area without height value in the raster DSM
file (no-data value).
A text-formatted
file of point clouds with extension .xyz is generated for each stereo pair of
image blocks, if point clouds are set to be saved. Because the image is divided
into blocks in the course of processing, _points_RXCX
is annexed to the end of the filename of DSM for each block. R means row, C
means column and X means number. For instance, R0C0 means the first row and
first column. In files of point clouds, each line is for one point, and each
line includes the x, y, z coordinates value after projection. The coordinate
system of projection, which can be set, is the same as that of resultant DSM.
But the underlying reference ellipsoid is WGS 84. If point clouds are set to be
saved, a list file named “%s_points_List.txt” is generated at the same time.
The %s in the filename is replaced by the filename of resultant DSM set by
users. If point clouds are set to be saved in this sample, the generated list
file is favp_navp_dsm_points_List.txt.
Because in this sample point clouds are not saved, the above files of point
clouds and list file are not generated.
Serial or
parallel processing can be selected. If parallel processing is selected, number
of processors should be inputted as well as the current user name using the
Windows OS and password of the user. Next time users can load the information
by clicking the load button, and do not need input the information again. In
terms of determination of the number of processors, please refer to user manual
of this software. Users who want to use parallel computing in the software
should be trained for a period of time, and know the software and the principle
behind the software more. At the beginning, ordinary users are not expected to
use parallel computing. In the course of using parallel computing, if there are
any problems encountered, please contact us as soon as possible.
After finishing
the setting of configuration options, input and output setting, users can click
the button of “Execute”. The program starts to run and the required time to
finish the whole procedure is different according to the image size, the number
of used processors (if parallel computing of multi-processors is used) and the
height difference of the covered terrain. In the course of computation, the
buttons of “Execute” and “Cancel” on the bottom of the form is invalid. The two
buttons can not be clicked in case they are clicked
many times in the course of running. Users can learn the progress and the
running status via the re-directed output printing (sometime printing may
delay) on the right side. User can also check the information of resources
(CPU, memory and Disks) possessed by the program from Task Manager and Resource
Monitor of Windows OS. Once the execution of satSGMatching.exe is finished, a
message box will pop up showing that the processing is closed successfully or
terminated (aborted). After clicking OK button on the message box, the GUI
program returns to the available status. Users can either click the button of “Cancel”
on the bottom or click the closing icon on the up-right corner of the interface
to close this GUI program. Or users can select and set new input and output to fulfill
a new task.
User can click
the button of “Terminate” on the bottom if they need to abort the processing
(not the closing of GUI form). The GUI program, satSGMatchingForm.exe, will
kill the process of satSGMatching.exe which is being called. Killing the
process of satSGMatching.exe may delay (less than one second or several
seconds). Once the process is killed, a message box will pop up showing that
the processing is terminated (aborted) or closed successfully. After clicking
OK button on the message box, the GUI program returns to the available status.
Users can either click the button of “Cancel” on the bottom or click the
closing icon on the up-right corner of the interface to close this GUI program.
Or users can select and set new input and output to fulfill a new task.
Attention: the
button of “Cancel” on the bottom is only for closing the GUI program. If the
called logical program (i.e., satSGMatching.exe) is running, users should first
click the button of “Terminate” to abort the processing task or wait until the
processing task is finished, and then close the GUI program. Users can not click
the button of “Cancel” or click the closing icon on the up-right corner of the
interface to close this GUI program when the called logical program is running.
The blank area
of the right side will display the information printed by the command program,
and the printed information will also be saved in a log file named as satSGMatching_ddMMMyyyyHHmmss_log.txt.
In the filename, dd are two digital numbers
indicating a date, MMM are three English characters indicating an abbreviation
of a month, yyyy are four digital numbers indicating
a year, and HHmmss are digital numbers indicating
hour, minute and second in the form of 24 hours. The log file is also stored in
the work directory. All configuration options are saved in the configuration
file, satmatching.conf, through a certain type of
form in the course of running of program. The configuration file can be used in
the action of loading configuration.
In the course
of running the program, the intermediate files, i.e., epipolar
and disparity images are generated. The program will decide whether the intermediate
files (epipolar and disparity images) are deleted,
according to the value of the corresponding configuration option. For more details
about the naming rules of epipolar and disparity
images, please refer to user manual of the software.
A useful method
to decide if arguments, parameters setting and command operations in this step
are correct is to check if the objects in the generated epipolar
pair are aligned strictly in horizontal direction. Because the epipolar generated for satellite image is quasi-epipolar, sometimes there are vertical parallaxes about one
pixel in epipolar pair, which is a normal case. The
vertical swipe function in the module of image viewer, imgViewer.exe, provided
by MASI software can be used to view horizontal alignment. For more details,
please refer to the program usage of imgViewer.exe.
Similar operations are carried out for
the forward-backward stereo, backward-nadir
stereo. Hereto, the step of stereo matching and DSM generation for three stereo
pairs are finished, respectively, and the next processing is to mosaic the
three DSMs from the three stereo pairs resulting in highly accurate and highly
dense DSM.
In this sample, SGM algorithm is adopted.
If satEpiMatching stereo matching is exploited, the
operation and procedure is almost the same.
Mosaicking of
multiple DSMs. Multiple DSM files generated from multiple stereo pairs are
mosaicked to produce a highly accurate and highly dense DSM by using the
programs, mpimosaic.exe and mpimosaicForm.exe (DSM Mosaic under DSM menu). The
method is more efficient. If there is only one stereo pair, not multiple stereo
pairs constructed from multiple views, the DSM generated from the single stereo
pair is the needed result and the following mosaicking is not needed.
By clicking the command item, DSM
Mosaic, in
the above menu, the GUI program is launched. The
graphical interface of the program is as follows:
The work directory is the place where
the generated DSM files are stored and is the same as that in the step of automatic
stereo matching and DSM generation. In the input
files, there are two choices for setting of input Images/DSMs files. One is to
select a list file by checking the radio button of “List of Images/DSMs”. The
other is to select multiple Images/DSMs files by checking the radio button of “Images/DSMs”.
Users can select one from the two choices in the light of their conditions. For
more details, please refer to user manual of MASI software. In this sample,
three DSMs files generated in the step of automatic stereo matching and DSM
generation are selected directly: bavp_navp_dsm.img, favp_bavp_dsm.img, favp_navp_dsm.img.
Two mosaic
methods are provided, which are indicated as method 0 and method 1. The two
methods correspond to the arguments of the command program, i.e., the indicator
of methods. When method 0 is selected, no-data can be any value; while method 1
is selected, it can only be either 0.0 or -9999.0. For more details, please
refer to user manual of MASI software. In this sample, Method
1 is selected. When multiple DSMs are mosaicked, if Method 1 is used, the
contents of the overlaying areas are blended from all participants of the
mosaic for the areas. The blending operation occurs in the overlaying areas to
increase the accuracy of the final DSM. Meanwhile, no-data value is set as
-9999.0, which is the same as that in the step of automatic stereo matching
and DSM generation.
Serial or
parallel processing can be selected. For more details, please refer to user
manual of MASI software. The blank area of the
right side will display the information printed by the command program.
The DSM result
obtained in this step is the DSM before interpolation, which needs to pass to
the next step (i.e., post processing for DSM) to yield the final highly
dense DSM. Before post processing for DSM,
if the un-interpolated DSM has big areas of mismatching (e.g., water body,
cloud and snow covered area, area with repeated textures) which can be found by
the manner of visual checking, the interactive tool for editing DSM/DEM (i.e., collectPolygons.exe) can
be used to edit the DSM with big areas of mismatching. For more details, please
refer to “Usage of the collectPolygons.exe program”.
Step
3: Post processing for DSM
In this step, these areas with no-data value in the
above mosaicked DSM are interpolated, and outliers
(or small spots of errors) in the resultant DSM after interpolation are
removed. The
output of this step is the product of dense DSM, which is generated by this
software. The DSM product can be used in different applications followed.
By clicking the command item, Post Processing, in the
above menu, the GUI program is launched. The
graphical interface of the program is as follows:
In the section
of “The DSM source”, the DSM before interpolation from the previous step is
selected, and in the section of “The DSM result”, the filename of resultant
DSM, which will be the outcome of this step of post processing, is set.
After the
interface is launched, the default values for these parameters are given. In
most cases, the default values can be used. The blank area of the right side
will display the information printed by the command program. The meaning of
parameters is as follows:
The maximum
size of the errors to remove: the size of the area of maximum errors to remove.
The number, 5, indicates that outliers up to the size of 5 x 5 can be removed.
The parameter is integer.
The threshold
of height difference: The point (or small areas) where height difference beyond
the surroundings is above the threshold is deemed as outliers. The parameter is
float and unit is meter.
The size of big
block: the size of big block which is used to divide the image. The DSM is so
large that block division is required. The parameter is integer.
The size of
overlap between big-blocks: the size of overlap between the adjacent big-blocks. The
parameter is integer.
According to
the features of the terrain of covered area, a filtering method for
post-processing is selected among no filtering (suitable for vegetation area),
median filtering (suitable for dense urban area), and mean filtering (suitable
for smooth terrain). In this sample, mean filtering is selected.
Again, still by
the manner of visual checking, if on the interpolated DSM after post processing
small areas of errors is still found, the interactive tool for editing DSM/DEM
(i.e., collectPolygons.exe)
is continually used for editing. After editing, users can determine if post
processing for DSM is required again in the light of their needs. For more
details, please refer to “Usage of the collectPolygons.exe program”.
Step
4: Automatic ortho-rectification
Clicking the
icon showing “Ortho” in the main interface,
The following
menu will pop up.
By clicking the command item, Satellite Ortho, in the above menu, the
GUI program is launched. The graphical interface of the program is as follows:
The concept of work directory is the
same as those in the previous steps. All files required in the step should be
put in the work directory. Therefore, the directory, i.e., F:\ZY3_tests, is
still set as the work directory in this step. In the course of ortho-rectification, the
generated files with .aff extension in the step of
orientation (the file name is the same as the file of RPC parameters. The only
difference is the file extension which is changed to .aff)
are
required, which is also in the work directory.
Attention: even
though the re-generated RPC parameters after adjustment (namely the newly
generated RPCs without the accompanied adjustment parameters) are used, the .aff files still need to be provided for the sake of keeping
the consistency with other cases. However, the contents of the .aff file are fixed:
1 0 0
0 1 0
It has the same
effect as the situation where there are not adjustment parameters. MASI
software has a tool to automatically generate the .aff
files with above contents.
In the input
setting, the original image to be ortho-rectified and
its corresponding RPC file are selected. In this sample, the nadir image in the
three-line-scanner ZY3 images is selected for ortho-rectification.
The meaning of
each configuration option is as follows:
Form of RPC:
the form of RPC parameters. Currently two mainstream types are supported. One
is the form exploited by IKONOS (GeoEye) image,
usually the RPC filename ends with _rpc.txt, which is selected by setting “General”
in this option and the other is the form exploited by
Worldview (QuickBird) image, usually the RPC filename
ends with .rpb, which is selected by setting “WV”
in this option. If for the XML form of RPC parameters adopted by airbus Pleiades
1A/1B, Pleiades NEO, and SPOT 6/7, the function provided in tools in the main
interface of the modules can transform the RPC parameters with XML format to
the commonly used RPC format (the form exploited by
IKONOS and GeoEye). In
this sample, the type of “General” is used.
Elevation
source: it has two choices. One is the average height determined from RPC
parameters and the other is external elevation file. In this sample, the DSM
generated in the previous step (Step 3) is selected as external elevation file.
The underlying reference ellipsoid of elevation file must be the same as that
adopted in RPC parameters. It is WGS 84. The projection method of elevation
file must be the same as the one set by users for the option, projection of the
ortho-rectified image. The boundary of elevation
source covers the region of the image. If third party elevation source is used,
please make sure the sameness of coordinate system. It can also be the case
where no external elevation source is used and the average height determined
from RPC parameters is used for common correction, which is suitable for plain
area or the case without elevation source. Strict speaking, the common
correction is not ortho-rectification.
Projection of
the ortho-rectified image: currently two types, i.e.,
UTM and GK (Gauss-Kruger, in some countries it is also called TM), are
supported, which are selected by setting UTM and GK, respectively. The
underlying reference ellipsoid for the two types of projection must all be WGS
84.
Zone size
(degree): zone width for projection, it can be 6 or 3 degree. If GK is selected
for projection, it can be 6 or 3 degree; while UTM is selected for projection,
it can only be 6 degree.
Image type: the
type of image to be ortho-rectified (optical image or
SAR image). If the complex data type of SAR image is the form that SAR
image has two bands with signed 16 bit integer for each band (e.g., Radarsat-2
image format), the program will transform the SAR image of the two bands
complex to an image with magnitude and phase bands. If the complex SAR image is
saved as one band with Complex Int16 data type, the ortho-rectified
image is still saved as the form with the same complex data type (Complex Int16
data type) and the program do not transform the image to magnitude and phase
images.
Number of used
threads: setting the number of used threads (CPU cores or the virtual CPU cores
by using hyper-threading technology). For the cases where CPU cores are enough,
we suggest that number of 4, 6 or 8 is set here.
After the above
options in the interface are set, users can click “Save configuration” to save
these options. These configuration options will be saved in a configuration
file, satOrtho.conf, and next time the options can be
loaded from the configuration file by clicking “Load configuration”. The
configuration file, satOrtho.conf, is also stored in
the work directory. If the button of “Execute” is clicked, the configuration
file will also be generated in the same way.
In the output
setting, users should set the filename of resultant ortho-rectified
image, and the image resolution (Unit: m) of the ortho-rectified
image. The resolution of ortho-rectified image can not be better than the actual GSD (ground spacing
distance). The data type of the ortho-rectified
images, as well as the number of bands, is the same as that of original images.
After finishing
the setting of configuration options, input and output setting, users can click
the button of “Execute”. The called program, satOrtho.exe, starts to run and
the required time to finish the whole procedure is different according to the
image size. In the course of computation, the buttons of “Execute” and “Cancel”
on the bottom of the form is invalid. The two buttons can
not be clicked in case they are clicked many times in the course of
running. Users can learn the progress and the running status via the
re-directed output printing (sometime printing may delay) on the right side.
User can also check the information of resources (CPU, memory and Disks)
possessed by the program from Task Manager and Resource Monitor of Windows OS.
Once the execution of satOrtho.exe is finished, a message box will pop up
showing that the processing is closed successfully or terminated (aborted).
After clicking OK button on the message box, the GUI program returns to the
available status. Users can either click the button of “Cancel” on the bottom
or click the closing icon on the up-right corner of the interface to close this
GUI program. Or users can select and set new input and output to fulfill a new
task.
User can click
the button of “Terminate” on the bottom if they need to abort the processing
(not the closing of GUI form). The GUI program, satOrthoForm.exe, will kill the
process of satOrtho.exe which is being called. Killing the process of
satOrtho.exe may delay (less than one second or several seconds). Once the process
is killed, a message box will pop up showing that the processing is terminated (aborted)
or closed successfully. After clicking OK button on the message box, the GUI
program returns to the available status. Users can either click the button of
“Cancel” on the bottom or click the closing icon on the up-right corner of the
interface to close this GUI program. Or users can select and set new input and
output to fulfill a new task.
Attention: the
button of “Cancel” on the bottom is only for closing the GUI program. If the
called logical program (i.e., satOrtho.exe) is running, users should first
click the button of “Terminate” to abort the processing task or wait until the
processing task is finished, and then close the GUI program. Users can not click
the button of “Cancel” or click the closing icon on the up-right corner of the
interface to close this GUI program when the called logical program is running.
The blank area
of the right side will display the information printed by the command program,
and the printed information will also be saved in a log file named as satOrtho_ddMMMyyyyHHmmss_log.txt.
In the filename, dd are two digital numbers
indicating a date, MMM are three English characters indicating an abbreviation
of a month, yyyy are four digital numbers indicating
a year, and HHmmss are digital numbers indicating
hour, minute and second in the form of 24 hours. The log file is also stored in
the work directory.
All configuration
options are saved in the configuration file, satOrtho.conf,
through a certain type of form in the course of running of program. The configuration
file can be used in the action of loading configuration.
Hereto, the ortho-rectification of a single satellite
image is finished. In the following, pan-sharpening and mosaicking can be
carried out in the light of requirements.
Step 5: Pan-sharpening
If panchromatic image
and multispectral
image are ortho-rectified,
respectively, the two images are already overlapped in the same coordinates
system (equal to fine registration). Then, pan-sharpening can be conducted,
which will result in a higher resolution multispectral image. In some cases, panchromatic image and multispectral image are acquired
at the same viewing angle. Users can merge panchromatic image and multispectral
image with same viewing angle at the beginning of a procedure. Then, the
pan-sharpened image (whose orientation parameters are the same as those of the panchromatic
image) can be used in the steps of ortho-rectification
and 3D reconstruction. Thus,
orientation and ortho-rectification of the multispectral
image can be avoided. Clicking the icon
showing “Pan Sharpening” in the main interface,
The launched operating
interface is as follows:
Attention: the
datasets in this step are different with those in the previous four steps. The
purpose of this step is to demonstrate how to operate.
After selecting
the files of panchromatic
image and multispectral image and setting the
filename of sharpened image, users can select serial or parallel processing for
the pan-sharpening computation. If parallel processing is selected,
number of processors (the used number of CPU cores) should be inputted as well
as the current user name using the Windows OS and password of the user. The
user name and password used in the parallel processing are saved in the file
named as pwd.txt (If parallel processing is not used, there is not such file). The
file, pwd.txt, is stored in the user’s document (i.e., Users\User name\Documents).
The file can be used to load user name and the password used in parallel
processing. Next time users can load the information by clicking the button of “Load”,
and do not need input the information again.
There are two points for selecting the
number of processors. One is that the number can not
exceed the number of CPU cores. The other is that requirements of disk reading
and writing brought by multiprocessor processing can not
exceed the disk capability in the machine. User can get the information of busy
intensity of disk reading and writing from Resource Monitor of Windows OS. If
the CPU core is enough, 6-8 processors is more appropriate for ordinary hard
disk, while 10 - 12 processors is a good choice for a SSD disk or a RAID volume
consisting of 5 or more hard disks.
The blank area of the right side will
display the information printed by the command program.
Step 6: Comparing surface height
and change finding
By comparing
DSMs of two different phases, the program can automatically find change of the
surface height and calculate the value of changed height. Clicking
the icon showing “Surface Change” in the main interface,
The operating
interface of change of surface height is launched.
Attention: the
datasets in the interface may probably be not the results from satellite
images. The purpose of this step is to demonstrate how to operate.
The
corresponding DSM files are selected in the sections of the previous DSM and
the next DSM, respectively. After processing, the file of height difference is
obtained. Users can set two parameters, the height threshold and no-data value.
The height threshold:
If the height difference is less than the threshold, the difference is not
interesting and it will be assigned as no-data value in the resultant file. For
the case where the height difference is more than the threshold, the real
difference will saved in the resultant file.
No-data: no-data
is the value used to fill in the area without change of surface height (or
invalid area) in the resultant file. No-data can be determined either from
input DSM or from the right side list box.
Step 7: Automatic DSM2DTM
Clicking the icon showing “DSM
to DTM” in the main interface,
The operating
interface of automatic DSM2DTM is launched.
Attention: the
datasets in the interface may probably be not the results from satellite
images. The purpose of this step is to demonstrate how to operate.
The program
adopts an algorithm with multilevel triangle-based ground filtering. It deletes
the non-grounded objects like buildings, trees in DSM and transforms the DSM to
DTM where the pure ground height is saved. The input file is DSM source and the
output file is resultant DTM.
The meaning of
parameters is as follows:
The predefined size: the defined size in which the lowest point is
selected as a ground point; unit: the same as the grid spacing (cell size),
e.g., 40.0. It means that the lowest point in a grid, whose sizes of width and
height are both 40 meters (assuming the unit of grid spacing is meter), is
taken as a ground point. The higher is the predefined size, the more levels in
the pyramids are generated. Level number of pyramids decrease, then the built triangles
is to be dense. This parameter is usually decided by the size of the biggest
non-ground object in the terrain area. If the predefined size is less than the
size of non-ground object, these objects will not be filtered out. On the
contrary, if the predefined size is too large to maintain some terrain details.
Thus, users need find a balance between filtering out big non-ground objects
and maintaining the terrain details in the light of the requirements of
applications.
Level, to which level the DSM is filtered. The higher is the level set,
the less ground points are generated, the less terrain details remain, and the
more efficient is the processing. The lower is the level set, the more ground
points are generated, the more terrain details remain, and the less efficient
is the processing. Usually the triangulation of mass points and searching a
specific triangle in a huge triangulation is inefficient. The level set can not be higher than (the highest level - 1), level is
0-based, e.g., 3.
The threshold
of distance: the threshold of distance from
a point to the corresponding triangle. In the course of filtering, a point
whose distance to its corresponding triangle is more than the threshold is
deemed as a non-ground point, vice versa, e.g., 1.0 meter. If the value of
threshold is low, there are less ground points which will survive in the
filtering processing and there are also some risks that the true ground point may
be filtered out by taking them as non-ground points.
The size of
block: for processing large raster, block division is needed. Filtering is
fulfilled, block by block, and its size must bigger than two times of
overlapping size, e.g., 6144. Usually the default value is used. The reason
that block division is used is that a large DSM will result in huge ground
points which require huge computation for the filtering processing. The block
division is a way which promotes computational efficiency and saves memory
consumption.
The size of
overlap between blocks: the size of overlap between the adjacent blocks, e.g.
128. The overlay ensures the rightness of border of each block. Usually the
default value is used.
No-data:
no-data is the value used to fill in the area without height value. Because
each grid in raster file must be assigned a value, for some cases where there
are no real height values in some areas, the concept of no-data is introduced.
No-data can be determined either from input DSM or from the right side list box
in this interface.
If there are
some non-ground objects which are not
filtered out, such as buildings and vegetation areas, or small areas of errors
in the resultant DTM in this step, the interactive tool for editing DSM/DEM
(i.e., collectPolygons.exe)
can be used for editing. For more details, please refer to “Usage of the
collectPolygons.exe program”.
Step 8: Height estimation of
building / tree
Clicking the icon showing “Building
height” in the main interface,
The operating interface
of height estimation of building / tree is launched.
Attention: the
datasets in the interface may probably be not the results from satellite
images. The purpose of this step is to demonstrate how to operate.
The
corresponding files are selected in the sections of the ground height (DTM) and
the surface height (DSM), respectively. After processing, the file of building
/ tree height is obtained. Users can set two parameters, the height threshold
and no-data value.
The height
threshold: the height being less than the threshold is the value which is not
interesting or the possible existing errors. The value will be replaced by
no-data in the file of building / tree height. The height being more than the
threshold is an interesting and reliable value, which as a true value will be
saved in the file of building / tree height.
No-data:
no-data is the value used to fill in the area without building / tree (or
invalid area) in the resultant file. No-data can be determined either from
input DSM or from the right side list box.
Step 9: Applications
Clicking the icon showing “App”
in the main interface,
The following
menu will pop up.
Currently two applications modules are included, i.e.,
volume calculation and automatic extraction of building
attributes in the light of buildings footprints.
Volume
calculation: a polygon in the vector form in which volume is calculated and
highly dense DSM are given, the module estimates the volume of objects (e.g.,
sands, small stones, coal, mineral particles and garbage) occupying the area.
For more details, please refer to “Usage of the calVolume.exe and
calVolumeForm.exe programs”. Users can click the command item, Polygons Drawing
Tool, in above menu to launch the interactive tool, collectPolygons.exe, to
collect the polygon and save it.
Automatic
extraction of building attributes: a vector file with ERSI shape format, which
including multiple polygons of building footprint, and the corresponding nDSM dataset are given, the module automatically extracts
the center position (x, y coordinates) of building, area of ground, height of
building, number of layers, and construction area of building for each
building. Moreover, these extracted values are set as new attributes for these
polygons. nDSM can either be
obtained by subtracting DTM from DSM in the module of buildingHeightForm.exe,
or be obtained by calculating difference between two DSMs in the module of
surfaceChangeForm.exe. The former can be used to extract building height from
the bottom to top, number of layers, etc., while the latter can be used to
automatically find new, illegal, added, demolished, or height-exceeded
buildings and extract their attributes, such as position, height, layers, ground
area, and construction area of these found buildings. For more details, please
refer to “Usage of the extBldgAttributes.exe and extBldgAttributesForm.exe
programs”. Users can click the command item, Polygons Drawing Tool, in above
menu to launch the interactive tool, collectPolygons.exe, to collect polygons
on nDSM and save them to a vector file. Polygons of building
footprint in vector file can also be from third party source. For both cases,
it is required that building footprints are accurately aligned with the actual
boundaries of buildings. And, the vector file including polygons and the nDSM file should be geo-coded and the underlying coordinate
system is the same.
Step 10: 3D modeling with true color textures
Clicking the icon showing “Textured 3D Model”
in the main interface,
The following
menu will pop up.
By clicking the command item, textured 3D modeling, the
GUI program is launched. All files required in the course of generation of 3D models
should be put in the same directory and the directory is set as work directory.
The required files are DSM file, images files used
for texture mapping, their corresponding RPC files, and the generated files
with .aff extension in the step of orientation (the
file name is the same as the file of RPC parameters. The only difference is the
file extension which is changed to .aff). Users
should copy all these files to a directory in advance and set it as work
directory.
The data type of the images which are used for texture
mapping is unsigned 8 bit integer. If it is not, user should stretch the images
to unsigned 8 bit using the autoStretch.exe program provided by MASI software
(the command item, automatically stretch image to 8 bit, in the above menu to
call the function).
In this sample, the data type of the images is unsigned
16 bit. Thus, the images should be stretched to unsigned 8 bit. The
graphical interface of stretching and the graphical
interface of 3D
modeling are as follows:
In the input
files, users should select the DSM file (which should has projected coordinate
system) and satellite images (or a list file which includes filenames of these
satellite images) used for texture mapping. Then, users can set configuration
options and other setting. For the meaning of configuration options and
operating method, please refer to “Usage of the scene3D.exe and scene3DForm.exe programs”.
Hereto, the
whole flowchart for satellite images is finished, including orientation, automatic stereo matching
and generation of highly dense DSM, automatic ortho-rectification,
pan-sharpening, automatic finding change of surface height, automatically
transforming DSM to DTM, height estimation of
building / tree, volume calculation, extraction of building attributes, etc. If
the functions, such as generation of boundary polygon for satellite images,
image displaying, interactive editing of DSM/DEM, collecting
polygons, automatic
mosaic (mosaic of DSMs, mosaic of ortho-rectified
images, mosaic of histogram matched images), transforming
RPC parameters with XML format used in airbus Pleiades, Pleiades NEO, SPOT 6/7
to the commonly used RPC format (the form exploited by IKONOS and GeoEye), transforming RGB image to grey image, rotation of
image, reflection of image, transforming point clouds to surface in the form of
raster, transforming DSM with raster form to point clouds, image cropping,
creating overviews for image, transforming between orthometric
height and ellipsoidal height, projection / re-projection for image based on
WGS 84, generation of .aff files in batch, and
uncompressing image file with JPEG2000 format, are needed, please refer to user
manual of the software.