Performs tie point refinement via grey, edge, or phase correlation
Performs registration refinement based on the maximum value of the gray-level (normalized cross) correlation function or the maximum value of the binary edge correlation function computed over a set of relative offsets between a search subimage and a reference subimage or based on the filtered phase correlation function.
- OUTTL
- Output tie point location file. The output tie point location file containing correlation results.
- IN("","")
- Input image(s). The reference image name followed by the search image name. Both image names are optional. If the reference image name is not given, it is assumed reference subimage chips are being supplied. If the search image is not given, it is assumed prerotated and/or scaled search subimage chips are being used. Refer to the User Notes section for more information on processing with subimage chips. Windowing is ignored.
- INMT(--)
- Input merged tie point file. If defaulted, the user will be prompted for tie point data.
- INTL(--)
- Input tie point location file. If an input tie point location file is given, the contents of the file are copied to the output tie point location file before correlation begins.
- MINCORR(6.0)
- Minimum correlation. The minimum acceptable correlation strength.
- MAXDIFF(-2.0)
- Maximum difference. The maximum acceptable difference between the nominal tie point location and that given by correlation.
- FITMETH(PARAB)
- Fitting method. The correlation peak fitting method.
= PARAB: Elliptic paraboloid = GAUSS: Elliptic Gaussian = RECIP: Elliptic paraboloid fit to reciprocals of correlation values, after subtract- ing average background = INTEGER: No surface fit; nearest neighbor
- CONFLG(NO)
- Confirmation flag.
= YES: Confirm. Full details of correlation are provided for each tie point and the user is given an opportunity not to include the tie point in the tie point location file. = NO: Do not confirm. Reports whether acceptable correlation results were obtained and the active flag field in tie point location file is set accordingly.
- OUTTL
- Output tie point location file. The output tie point location file containing correlation results.
- IN("","")
- Input image(s). The reference image name followed by the search image name. Both image names are optional. If the reference image name is not given, it is assumed reference subimage chips are being supplied. If the search image is not given, it is assumed prerotated and/or scaled search subimage chips are being used. Refer to the User Notes section for more information on processing with subimage chips. Windowing is ignored.
- INMT(--)
- Input merged tie point file. If defaulted, the user will be prompted for tie point data.
- INTL(--)
- Input tie point location file. If an input tie point location file is given, the contents of the file are copied to the output tie point location file before correlation begins.
- EDGEVAL(0.15)
- Edge value. The fraction of pixels to be classified as edges. Values outside the range 0.05 to 0.30 are unlikely to give good results.
- MINCORR(6.0)
- Minimum correlation. The minimum acceptable correlation strength.
- MAXDIFF(-2.0)
- Maximum difference. The maximum acceptable difference between the nominal tie point location and that given by correlation.
- THRVAL(255.0)
- Threshold value. The threshold pixel value for screening out cloud image data. Any pixel value above THRVAL will not be used by the algorithm. This threshold value will be compared to both the reference and search images. See User Note 6.
- FITMETH(PARAB)
- Fitting method. The correlation peak fitting method.
= PARAB: Elliptic paraboloid = GAUSS: Elliptic Gaussian = RECIP: Elliptic paraboloid fit to reciprocals of correlation values, after subtract- ing average background = INTEGER: No surface fit; nearest neighbor
- CONFLG(NO)
- Confirmation flag.
= YES: Confirm. Full details of correlation are provided for each tie point and the user is given an opportunity not to include the tie point in the tie point location file. = NO: Do not confirm. Reports whether acceptable correlation results were obtained and the active flag field in tie point location file is set accordingly.
- OUTTL
- Output tie point location file. The output tie point location file containing correlation results.
- IN("","")
- Input image(s). The reference image name followed by the search image name. Both image names are optional. If the reference image name is not given, it is assumed reference subimage chips are being supplied. If the search image is not given, it is assumed prerotated and/or scaled search subimage chips are being used. Refer to the User Notes section for more information on processing with subimage chips. Windowing is ignored.
- INMT(--)
- Input merged tie point file. If defaulted, the user will be prompted for tie point data.
- INTL(--)
- Input tie point location file. If an input tie point location file is given, the contents of the file are copied to the output tie point location file before correlation begins.
- MINCORR(180.0)
- Minimum correlation. The minimum acceptable correlation strength.
- MAXDIFF(64.0)
- Maximum difference. The maximum acceptable difference between the nominal tie point location and that given by correlation.
- SIZE(128)
- Search subimage size. The size of the subimage window.
- STEP(12)
- Stepping increment. The increment by which the 32 X 32 window is moved across the subimage.
- EXPVAL(0.0)
- Exponent value. The power to which correlation magnitude is raised. A value of 0.0 gives a phase correlation; a value of 1.0 gives a cross correlation; a value between 0.0 and 1.0 gives a filtered phase correlation.
- CONFLG(NO)
- Confirmation flag.
= YES: Confirm. Full details of correlation are provided for each tie point and the user is given an opportunity not to include the tie point in the tie point location file. = NO: Do not confirm. Reports whether acceptable correlation results were obtained and the active flag field in tie point location file is set accordingly.
CORRELATE obtains tie point information from the merged tie point file NOMINAL and places its output in the tie point location file REFINED. For each tie point in NOMINAL, CORRELATE locates a correlation peak for the gray levels from the respective neighborhoods of the tie point in the images SRCH and REF. An elliptic paraboloid surface is fit to the correlation values in the vicinity of the peak. For each tie point, the strength of the correlation is compared against the default limits MINCORR=6 and MAXDIFF=-2.0, and the tie point active flag is set accordingly.
CORRELATE obtains tie point information from the merged tie point file NOMINAL and places its output in the tie point location file REFINED. For each tie point in NOMINAL, CORRELATE first performs a gradient operation to enhanced edges. Next, the subimage is histogramed. Next, a thresholding operation is used (this creates a binary edge image). It then locates a correlation peak between the binary edge subimages. An elliptic paraboloid surface is fit to the correlation values in the vicinity of the peak. For each tie point, the strength of the correlation is compared against the default limits MINCORR=6 and MAXDIFF=-2.0, and the tie point active flag is set accordingly.
CORRELATE extracts tie point neighborhood subimages from an image that is to be geometrically rectified and uses gray-level (normalized) cross correlation, or binary edge-image cross correlation or Filtered phase correlation to refine tie point locations. Subimages are extracted from a single reference image or from multiple reference chip images. CORRELATE accomplishes tie point refinement using the following steps.The first step determines the search and reference images used, the tie point location file to be created, and additional correlation parameters. If an input tie point location file is not used, correlation parameters are obtained from the user via TAE parameters. If an input tie point location file from a previous correlation process is given, most of the parameters are obtained from the header of the input tie point location file.
The next step extracts the tie point neighborhood subimage from the search image and the corresponding reference subimage from the reference image as each tie point is processed. Tie point specific parameters define the tie point neighborhoods and subimage sizes. The tie point parameters may be entered interactively before each tie point is correlated, or the parameters may be read from a merged tie point file as generated by TIEMERGE-PRECORR.
The third step is performed only with the EDGE subcommand. In this step, an edge extraction filter converts each grey-level subimage into a binary edge image. First a gradient filter is used to enhance image edges. Then a histogram of edge values is compiled, and an edge threshold is chosen so that the fraction of all pixels that are classified as edges can be as close to the EDGEVAL parameter as possible. An array of edge density values for each alignment of the reference subimage, relative to the input subimage, is also compiled.
The fourth step performs the actual correlation and determines the exact translational alignment of the reference subimage relative to the search subimage. This step also yields estimates of the strength of the correlation and the probable root mean square errors in the final alignment values. For the PHASE subcommand, a 32 x 32 reference images window is passed over the search subimage. The correlation is calculated at that point, then the window is moved forward by STEP pixels, and the correlation is recalculated. This continues until the entire subimage has been covered.
Each search and reference subimage is subjected to a complex valued Discrete Fourier Transform (DFT) via the Fast Fourier Transform (FFT) algorithm. Each element in the transformed search subimage is multiplied by the corresponding element in the conjugated reference subimage. With the PHASE subcommand, a product is divided by the absolute value of its multiplicands to give phase correlation. Next, an inverse FFT is applied to these results.
For the GREY and EDGE subcommands, the unnormalized sums of the pixel-by-pixel products (GREY) or the edge-pixel coincidences (EDGE) for every possible alignment within the specified search offsets are computed. These results are used to compute the normalized cross-correlation values.
Next, the alignment at which the correlation value is maximum is found. The overall strength is computed by first finding the mean and standard deviation of the correlation values for all alignments outside a 9 x 9 array centered on the main correlation peak. The difference between the main peak (maximum correlation value) and background (mean correlation value) and the difference between the main peak and the subsidiary peak (largest correlation value outside a 7 x 7 array centered on the main peak) are determined. These differences are then converted to units of standard deviations by dividing them by the standard deviation as previously computed. The overall correlation strength is then defined as the sum of these two heights plus 0.2 times the number of alignments in the neighborhood of the main peak whose correlation values exceed the value for the strongest subsidiary peak.
Finally, a quadratic surface is fit to the correlation values in the neighborhood of the main peak, and the fractional pixel coordinates of the peak and estimates of the root mean square errors in these coordinates are computed.
After converting to coordinates relative to the full search and reference images, the final step records the results of the correlation in the output tie point location file, one tie point at a time.
The error message displayed immediately preceding this
message is the specific error encountered. Processing
is terminated.
One or more values in the header of the input tie point location file are invalid. Specify a new tie point location file, or edit the header of the existing tie point location file and rerun.
An error occurred allocating memory. Rerun the function, and if the error reoccurs, notify the system manager.
a. Given a reference image, REF.IMG, and a search image, SRCH.IMG, taken at the same location but at a different time (image-to-image registration), run the TIEPTS module to select a set of tie points. The output will consist of two tie point selection files, for example REF.TSEL for the reference image and SRCH.TSEL for the search image.
b. Run TIEMERGE-PRECORR, using REF.TSEL and SRCH.TSEL as inputs, to create a merged tie point file named TIE.MERGED.
c. Run CORRELATE with
IN=(REF.IMG,SRCH.IMG) INMT=TIE.MERGED OUTTL=TIE.LOC
to generate the new tie point location file, TIE.LOC.
d. Run POLYFIT (or EDITCORR, AUTOFIT) with TIE.LOC as input to generate a geometric mapping grid file, GEOMPRM.GRD.
e. Run RESAMPLE with SRCH.IMG as the input image and GEOMPRM.GRD as the geometric mapping grid file to produce an image that is registered to the original image (REF.IMG).
To process with reference chips, enter a null ("") reference image name. To process with search chips, enter a null search image name. Each tie point record in the input merged tie point file must have the name of the chip image file or that tie point will not be processed. Tie point coordinates in the merged tie point file are relative to the subimage chip, not the full image. Each type of chip has a different way to reference coordinates back to the full image.
Reference chips for image-to-image registration must have a valid master line and master sample field in the chip image's DDR to compute full image coordinates of the tie point. Reference chips for geographic registration must have valid projection and location information in the chip image's DDR. Furthermore, this information must match the projection and location information contained in the header of the merged tie point file. Geographic or projection coordinates of the tie point are given in the geo_coord field of the merged tie point file. This coordinate is converted to reference image coordinate space (the reference image might not exist) using the projection and location information. Preprocessed search chips are used when it is not feasible to process an entire search (input) image or when the search and reference images differ greatly in scale or distortions. Search chip images must have valid projection and location information in the DDR file. The "projection" is a userdefined space relating the subimage chip back to the full search image.