Type: Stand-alone Application (vrmosaic.exe)
See also: Tutorial Vr Mosaic
This application creates mosaic images from multiple ortho images. Ortho images may come from any source that outputs TIFF (.tif) images with TIFF world (.tfw) files, such as VrMapping's VrOrtho software.
This is a sample workflow to create mosaics from raw photos using VrMapping software.
1. Obtain raw photos in digital form.
2. Create a new project using VrOrtho. Define project settings and add raw photos to project.
3. Orient photos by using VrOrtho single photo resection or by importing orientation data.
4. Define ortho areas using VrOrtho (using default settings or ortho area editor) or the OrthoLayout application in VrOne.
5. Create ortho images using VrOrtho.
6. Create a new Project in VrMosaic. Add the ortho images to the project.
7. Use the VrMosaic application to define seam lines and create final output mosaic images.
VrMosaic will start by opening the Main Window and one Graphics window.
Starting an Application (Command)
Start commands by pulling down a menu and selecting an item. Alternatively, start commands with a key-in using the command name.
The Main Window
The Main Window in VrMosaic contains the command pull down menus, a key-in area, two information areas, a progress bar, and the coordinate display.
Command names may be entered into the key-in area at almost any time.
The active workspace is shown on the border of the Main Window. Workspaces are VrOne-compatible files used to store seam lines and sheet layouts.
“Mosaic” should be the first application used upon starting a new VrMosaic project. "Mosaic" can be started by pulldown menu selection, or by entering the key-in "MOS".
The Mosaic application displays several windows:
NOTE: The Mosaic Steps dialog and the MenuKeys dialog share common commands. Anything that can be selected from the Mosaic Steps dialog can also be selected using the MenuKeys dialog. While the Main Steps dialog only gives a few basic commands and provides the user with a broad overview of the mosaic creation process, the MenuKeys dialog provides all available options at any given time.
NOTE: The view in all graphics window can be changed using standard VrOne zoom commands such as Zoom All, Page Up, Page Down, etc. There is only one active window at a time, but the cursor (or cursors in layout view) track in all windows.
The following key-in commands are available while the Mosaic application is running.
Mosaic Application Windows
Main Steps Dialog
2. Place Seams
Select "Project Setup" from the main steps dialog or select “7. Enter Params" from the MenuKeys dialog to display the project settings dialog box.
Project Dialog General Tab
Specifies the general angle of flight direction for the project. This is entered in degrees and represents a counterclockwise rotation from N-S or E-W. If the flight was close to N-S or E-W, this can be left at 0. To calculate this value, first determine the cardinal direction closest to the flight angle (either N, S, E or W) then calculate an approximate delta rotation from that cardinal direction. Enter this delta rotation angle as a positive number if the angle from the orthogonal direction to the flight direction is counterclockwise. Enter it as a negative number if the rotation is clockwise.
Seam line file
Defines the file in which to store the seam lines. This is a standard VrOne vector database file. The file is created if it does not already exist. This file may contain any other data that should be available during seam line collection(such as sheet layout lines). However, the layer chosen for “Seam line layer”should not contain any other entities.
Seam line layer
Specifies the the layer for all seam lines. Any automatically generated seam lines go on this layer.
Specifies the mode to use when previewing mosaic images.
Strip – Photo separator character
Mosaic uses image filenames to determine the strip and photo number for each image. This information is important for determining how images relate to each other and for correctly displaying images in the layout window. Select the character that separates the strip number from the photo number in the image filenames.
Number of digits for strip number
If there is no separator character between the strip and photo number in the image filenames, then you must specify how many characters occupy the strip number in the filenames.
Number of digits for photo number
If there is no separator character between the strip and photo number in the image filenames, then you must specify how many characters occupy the photo number in the filenames.
Displays another dialog to define the images for the project.
"Add…" displays a standard image selection dialog where multiple images may be added to the project. "Remove" removes any highlighted images from the project.
Saves current parameters to an ASCII file. Displays a file save dialog box and prompts for an output file name. The default file extension is .omp.
Loads parameters from a previously saved ASCII file. Displays a file open dialog box showing files with the .omp extension.
Resets current parameters to default values.
Save As Default
Saves current project settings as the default settings for future projects. The specific images defined in the project are not included in the default settings.
Project Dialog Seam Editor Tab
Preview during seam editing
Specifies whether to enable image previewing during seam line editing. Uses the current Preview Mode. Enabling makes it possible to edit seam lines and instantly see how the images will fit together at the seam lines.
Show image edges during seam editing
Specifies whether to display image edges as solid lines during seam line editing.
Image edges pen number
Defines pen number to use when drawing image edges during seam line editing.
Seam hiliting pen number
Defines pen number to use when hiliting seam lines during seam line editing. Seam lines are hilited when the cursor moves near them during seam lines editing. Hiliting indicates which seam will be affected by the edit operation.
Seam hiliting mode
Controls how the hiliting is displayed ("Solid" or "Dashed") during seam line editing.
Project Dialog Layout Window Tab
Project Dialog Output Tab
Batch sheet line layer
Specifies layer for all sheet borders. When using the batch output mode, a sheet is determined by looking for closed lines on this layer.
Batch sheet name layer
Specifies layer for all sheet border file names. To assign file names incrementally based on the main output file name, set to 0. To control the file names used when outputting mosaic sheets in batch mode, place the file names (using VrOne text entities) inside each sheet border and set this layer to match the layer of the file name labels.
Batch sheet output path
Specifies path directory into which to place then the output files provided that a batch sheet name layer is defined.
Balance images during output
Determines whether balance adjustments should be applied while the images are written.
Hold image when matching
When creating output mosaics, images are color matched to each other using the image overlap areas. The matching process picks one image to remain unchanged then matches all surrounding images to the unchanged image. Images that actually overlap the hold image are matched first, then images that surround them will be matched. This cycle continues until all images are matched.
Determines whether feathering should be used along seam lines. If set to "No", feathering is not used.
Feather Width Mode
Specifies method to determine feather width. "Use specified value" uses the value entered in the "Feather Width" field. "Use non graphics pointer" uses the width of the seam line's non-graphic pointer.
NOTE: The width of individual segments can always be overridden.
Specifies width to use when feathering (in pixels) given that Feather Width Mode is set to "Use specified value". This value is overridden if individual segments are assigned different widths.
Feather adjoining seams only
Specifies whether only image data from adjoining seam lines should be used when feathering. If "No", all image data is used. Allowing all image data is faster but can cause problems with large overlaps.
Feather all pixel colors
Specifies whether to feather all pixel colors. If "No", pixels that are solid white or solid black are not used when feathering.
Output Image Type
Controls the color mode of the output image.
Create image pyramids
Specifies whether image pyramids should be created as the mosaic image is written. This results in slightly longer processing times but eliminates the need for VrOne to create image pyramids the first time the mosaic is opened. If set to "No", old image pyramid files are deleted, but new ones are not created until the mosaic image is opened.
Compress output image
Specifies whether output mosaic images should use JPEG compression. If set to "No", output images will not use compression. Output images will use this setting regardless of the file format of the input ortho images.
Output compression quality
Determines output image compression through a value from 0 to 100. Lower numbers result in greater compression but more loss of image quality. Higher numbers achieve greater image quality but larger file sizes. A good default value is 70, providing a compression ratio of ~8:1 for color images with a minimal loss of quality.
Output pyramid level
Allows output mosaic images to be written out at a different pixel size than the input ortho images. The output file sizes and image quality decrease by powers of 2 for each higher pyramid level. This is useful for creating composite mosaics of very large areas that would require too much space if written out at full quality (pyramid level 1). It also provides a quick way to create low-res “thumbnail” mosaic images of large areas. When selecting the output pyramid level, the resulting pixel size is displayed for informational purposes only. The pixel size computation is always based in the pixel size of the first opened ortho image in VrOne. The pixel size is read from the TIFF world file (.tfw).
Background pixel color
Specifies the color to apply to background pixels.
Prompt for info during manual output
Determines whether to display a dialog when manual window is selected for image output. This dialog allows default output filename and pyramid level to be overridden.
Output mosaic image file name
Defines the name of the output mosaic image file. This file is overwritten if it already exists. A .tif extension is added to the filename if it is not already specified. When using batch output mode, this name is used as the prefix for all output images.
Advanced Balance Params
This button is only displayed if you have purchased the VrBalance module. Sets advanced parameters that affect the global image balancing process.
Intensity Adjustment Type
Sets the computation method to use to adjust the image intensity.
Additive mode works best on the widest range of images, but there are some cases where multiplicative may give better results. Multiplicative mode tends to increase image contrast. Only try multiplicative if additive yields poor results.
Color Adjustment Type
Sets the computation method to use to adjust the image color.
Additive mode seems to work best on the widest range of images, but there are some cases where multiplicative may give better results. Multiplicative mode tends to increase image contrast. Only try multiplicative if additive yields poor results.
Sets the method to use to sample data.
Intensity computation level
Sets the computation level to use to compute the intensity adjustment. The medium setting does not fit the data as closely as full. In most cases, full is the best option. For an image with many lakes or other non-matching areas, medium may produce better results.
Color computation level
Sets the computation level to use to compute the color adjustment. The medium setting does not fit the data as closely as full. In most cases, full is the best option. For an image with many lakes or other non-matching areas, medium may produce better results.
Samples per image
Sets the number of samples to take from each image. The default value is 200. Increasing this value on very large images may produce better results because it will look at a larger percentage of the image. This has a direct relation with computation speed. A value less than 20 will likely yield unreliable results.
Sets the square size of the area looked at for each sample. The default value is 50 (a 50x50 pixel sample).
Sets how much of the outer image is ignored during processing. For images with areas around the edges with invalid image data (like fiducials), this setting can force those areas to be ignored. A value of 10 would result in the outer 10% of the image being ignored; a value of 0 would result in the full image being considered.
Std. Deviation Filter
Limits the pixels to those that fall around the mean of the sample. For example, the sample were normal and the filter set to 1.0, ~68% of the data (1 standard deviation about the mean in either direction) would be used for the computation. This can help filter out undesirable parts of an image.
0.0 = No filter.
1.0 std = 68% of a normal distribution,
2.0 std = 95% of a normal distribution
3.0 std = 99.7% of a normal distribution)
Pressing "Place Seams" displays the VrMosaic Place Seam Steps dialog and the Place Seams MenuKeys.
Two basic seam types can be used when defining seam lines: open and closed. Open seams place a common line between two images or two strips. Closed seams define polygonal regions that identify areas of image data to be taken from single images. The two methods may be combined on any image. The majority of seam line placement is accomplished using open seams. Closed seams are normally used only to patch image data in specific areas.
Placing Open Seams
There are three main steps to place open seam lines:
First, determine which mode to use to insert the seam line. Seams may be inserted between strips or images. Selecting “Toggle Seam Mode” in the Steps dialog or activating “3. Tog Seam Mode” from the MenuKeys toggles between strip mode and image mode. It is common practice to place the strip-to-strip seam lines before defining the image to image seam lines
NOTE: When in the strip mode, a single line should be placed for the entire length of the strip.
Next, identify the images or strips between which that the seam line is to be inserted. Use the mouse or digitizing device to point to images or strips in the Layout window.
If in Image mode, pressing the MenuKeys button 1 ("Select Image 1") while pointing to an image causes it to be highlighted and set as Image 1. The next image over on the same strip is automatically highlighted and set as Image 2. Pressing the MenuKeys button 2 ("Select Image 2") while pointing to an image allows Image 2 to be identified manually if the automatic identification was incorrect. Pressing MenuKeys button 2 while pointing to the an already-identified Image 1 removes the selection of Image 2. This is useful for inserting a seam line that defines the edge of a single image without another image beside it.
If in Strip mode, pressing the MenuKeys button 1 ("Select Strip 1") while pointing to an image in a strip will cause that strip to be highlighted and set as Strip 1. The next strip over is automatically be highlighted and set as Strip 2. Pressing the MenuKeys button 2 ("Select Strip 2") while pointing to an image in a strip allows Strip 2 to be identified manually if the automatic identification was incorrect. Pressing MenuKeys button 2 button while pointing to an image in the already-identified Strip 1 removes the selection of Strip 2. This is useful for inserting a seam line that defines the edge of a strip without another strip beside it.
The third step is to insert the seam line. Selecting “Place Seam” in the Steps dialog or pressing “4. Place Seam” in the MenuKeys starts the seam placement process.
At this point, the main graphics window (Window 1) should be used to digitize points along the seam line. The graphics window can be zoomed in as close as needed while the Overview window can be left at a higher zoom level to monitor where the seam line falls within the overlap area. The images will automatically update as the seam line is placed, showing exactly how the seam line affects the images.
NOTE: When strip-to-strip seam lines are being placed, at first not all of the images in the strip will be visible. The images will appear as needed as the seam line is placed along the strip to strip overlap area.
When the seam line is complete, use the “4. End” command to save the seam line. This saves the seam line in the current VrOne file and returns to the Define Seams MenuKeys dialog. VrMosaic automatically selects the next two image or strips and highlights them in the Layout window. If these are the next two images or strips that between which a seam line should be placed, repeat Step 3 and digitize a new seam line. If not, follow steps 1 and 2 as needed to identify the correct images and strips then place the next seam line.
Placing Closed (Polygon) Seams
Closed seam lines are only assigned to a single image. They are useful for taking individual features from one specific image for use in the mosaic output. There are three main steps to place closed seam lines:
Select “8. Polygon Mode” from the Define Seams MenuKeys dialog.
Next, identify the image to which to assign the seam line. A default image should already be highlighted in the Layout window. If this is not the correct image, use the mouse or digitizing device to select a different image in the Layout window. The image will be highlighted.
Insert the seam line. Select “4 Place Seam” from MenuKeys to start the seam placement process.
At this point, the main graphics window (Window 1) should be used to digitize points along the seam line. The graphics window can be zoomed in as close as needed, while the Overview window can be left at a higher zoom level to monitor where the seam line falls within the image.
When the seam line is complete, use the “4. End” command to save the seam line. This saves the seam line in the current VrOne file and returns to the Define Seams MenuKeys dialog. VrMosaic automatically selects the next image and highlights it in the Layout window. If this is the correct image on which to place a seam line, repeat Step 3 and digitize a new seam line. If not, follow step 2 to identify the correct image, then repeat Step 3 to place the next seam line.
Press “Create Mosaics” in the Main Steps dialog or select “5. Create Mosaics” from MenuKeys to start the Mosaic creation.
Choose option “1. Manual” to manually select a single output window.
Select the lower left hand corner of the output window.
As the cursor is moved, a box representing the output area will display in the graphics window. The VrMosaic main window displays the width, height, pyramid level, and approximate file size of the output image.
Select the upper right hand corner of the output window.
If manual prompt mode is disabled, then the following MenuKeys dialog will be displayed.
Choose the “1. Accept” option to create a single output image with the name defined in the “Output mosaic image file name” parameter. A “scanline” will be displayed in the graphics window representing the progress as the output image is created.
Choose “2. Reject” to return to the “Dig Lower Left” MenuKeys dialog.
If manual prompt mode is enabled, then the following dialog will be displayed:
At this point, default project settings for Output filename and Pyramid level can be overridden. Press "OK" to create the output image using the filename and pyramid level specified. A “scanline” will be displayed in the graphics window representing the progress as the output image is created.
Choose “2. Batch” to create multiple mosaic output images in batch mode. This requires an existing sheet layout in the current workspace. The sheet layout consists of closed lines containing text labels that represent the output image names. These sheets may be definee using VrOne or VrMosaic standard commands like Insert Line and Insert Text.
The following dialog will be displayed. This lets you know where the Mosaic application will look to find sheet lines and sheet labels. In this case, the parameters were defined such that sheet borders and sheet labels (image names) are both on layer 3.
Press "Yes" to find all output sheet borders and names. They are displayed in a dialog.
This dialog can be used to select any combination of sheets to output. Sheets that do not exist yet or that exist but have a different pixel size are automatically selected for output.
Pressing "Ok" begins the output process. VrMosaic balances the images, applies seam line cuts and feathering, and cuts out images into the provided sheet layout. Depending on the size and number images, this process can take anywhere from several minutes to several hours to run.
Miscellaneous Menu Keys Options
This section documents MenuKey options not included as part of the main Mosaic process documentation.
Main Menu Keys dialog box
Edit Seam Menu Keys dialog box
Adjust layout Menu Keys dialog box
More Options Menu Keys dialog box