WO2007094765A2 - Method and apparatus for performing wide area terrain mapping - Google Patents

Method and apparatus for performing wide area terrain mapping Download PDF

Info

Publication number
WO2007094765A2
WO2007094765A2 PCT/US2006/004831 US2006004831W WO2007094765A2 WO 2007094765 A2 WO2007094765 A2 WO 2007094765A2 US 2006004831 W US2006004831 W US 2006004831W WO 2007094765 A2 WO2007094765 A2 WO 2007094765A2
Authority
WO
WIPO (PCT)
Prior art keywords
images
lidar
camera
frames
metadata
Prior art date
Application number
PCT/US2006/004831
Other languages
French (fr)
Other versions
WO2007094765A3 (en
Inventor
Barbara Hanna
Bing-Bing Chai
Stephen Hsu
Original Assignee
Sarnoff Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sarnoff Corporation filed Critical Sarnoff Corporation
Publication of WO2007094765A2 publication Critical patent/WO2007094765A2/en
Publication of WO2007094765A3 publication Critical patent/WO2007094765A3/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C11/00Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
    • G01C11/02Picture taking arrangements specially adapted for photogrammetry or photographic surveying, e.g. controlling overlapping of pictures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging

Definitions

  • Embodiments of the present invention generally relate to an imaging system and, more particularly, the present invention relates to wide area terrain mapping.
  • the present invention is a method and apparatus for performing wide area terrain mapping.
  • the system comprises a digital elevation map (DEM) and mosaic generation engine that processes images that are simultaneously captured by an electro-optical camera (RGB camera) and a LIDAR sensor.
  • the LIDAR sensor and camera are generally mounted on a scanner within an aerial platform.
  • the image data collected by both the camera and the LIDAR sensor are processed to create a geometrically accurate three-dimensional view of objects viewed from the aerial platform.
  • Figure 1 depicts one embodiment of an aerial platform for carrying a sensor suite in accordance with the invention
  • Figure 2 depicts a scan pattern used by the present invention
  • Figure 3 depicts a block diagram of a sensor suite that is mounted to the aerial platform in accordance with the present invention
  • Figure 4 depicts a functional block diagram of software used for processing the information collected by the sensor suite;
  • Figure 5 depicts a flow diagram of the processing used by the present invention.
  • Figures 6A-6D depict a graphical representations of a process used to process image data in the present invention.
  • Figure 7 depicts a block diagram of a computer system that is used to implement the invention.
  • the present invention is a method and apparatus for performing wide area terrain mapping using a combination of LIDAR and video technology within a single platform.
  • Figure 1 depicts an aerial platform 100 that carries a sensor suite 102 that performs aerial imaging of objects on the ground.
  • the platform 100 may be a manned airplane or helicopter, or the platform 100 may be an unmanned aerial vehicle (UAV).
  • UAV unmanned aerial vehicle
  • the suite 100 is used to collect range data, video imagery, and metadata comprising the location of the platform (e.g., Universal Transverse Mercator (UTM) coordinates) and the orientation of the sensor suite 102 (e.g., a scan angle).
  • UTM Universal Transverse Mercator
  • This information is stored within the sensor suite 102 for subsequent processing.
  • the information could also be transmitted to a ground station (not shown) for processing.
  • Figure 2 depicts a flight path 200 that is flown by the aerial platform while the sensor suite 102 is performing a scan pattern 202 that zigzags about the flight path 200.
  • a swath of terrain is imaged from the air with each pass of the platform.
  • the aerial platform can image a large area of terrain.
  • FIG. 3 depicts a block diagram of a sensor suite 102 that is carried by the platform 100 of Figure 1.
  • the sensor suite 102 comprises a sensor assembly 300 coupled to a computer 306.
  • the sensor assembly 300 comprises an electro- optic sensor (e.g., a video camera 302) and a LIDAR sensor 304 that are coupled to one another by a scanner 322.
  • the camera 302 and sensor 304 are physically aligned to have a common bore sight.
  • the video camera 302 is, in one embodiment of the invention, an RGB camera. However, other camera may be used such as an infrared camera.
  • the LIDAR sensor 304 is a flash LIDAR focal plane array.
  • the output from sensor assembly 300 is coupled to the computer 306 for storing the information from the assembly 300. Also included on the platform 100 is a GPS/INS unit 308 for providing position and orientation information for each of the images captured by the sensor assembly 300.
  • the computer 306 comprises a CPU 310, a support circuits 312 and memory 314.
  • the CPU 310 may be any one of many commercially available processors or microcontrollers.
  • the support circuits 312 include various well known circuitry for supporting the operation of the CPU 310.
  • the support circuits 312 may include clock circuits, cache, power supplies, input/output interfaces, and the like.
  • the memory 314 may include random access memory, read only memory, disk drive memory, removable storage, and the like.
  • the memory 314 stores the image data 316 created by the sensor assembly as well as metadata 318 created by the GPS/INS unit 308 and the scanner, e.g., the metadata comprises platform location, heading, and scanner direction (scan angle).
  • Control software 320 is also stored in memory for controlling the scanner 322.
  • the image data 316 and metadata 318 is generally stored on a removable PCMCIA flash card that can be easily removed from the platform and inserted into a processing system on the ground. Alternatively, the image data 316 and metadata 318 can be transmitted to a ground station while the platform is airborne.
  • the sensor suite 102 provides the mapping data capability.
  • the LIDAR sensor 304 is capable of acquiring, for example, 128x128 intensity and range images with a resolution of 1m per pixel at a capture rate of up to 20Hz.
  • the camera 302 captures, for example, 480x480 pixel frames at the same frame rate as the LIDAR sensor 304.
  • the entire sensor suite 102 occupies a small volume, approximately 1 cubic foot, for a payload weight of 26kg. This is a significant improvement over the existing airborne scanning laser systems that can occupy a volume as large as 7.7 cubic feet with a payload weight of 76.6kg for the laser system alone.
  • FIG. 7 depicts a computer system 700 comprising a computer 702 and disk drive 704.
  • the computer 702 comprises at least one central processing unit (CPU) 704, support circuits 706 and memory 708.
  • the computer 702 is a dual processor personal computer to achieve a processing rate equivalent to the data acquisition rate. In other words, the application will process one hour of data in the same amount of time that was required to collect the data.
  • the CPU 704 may comprise one or more commercially available microprocessors or microcontrollers.
  • the support circuits 706 are well- known support circuits that support the operation of the CPU 704.
  • the support circuits 706 may include one or more of clock circuits, power supplies, cache, input/output circuits, network connection circuits and the like.
  • the memory 708 comprises software to implement the present invention.
  • the software applications include a user interface 410, a data import module 418 and a DEM and mosaic generation engine 430; each of which are discussed in detail below.
  • the collected data coupled to the computer 702 via a PCMCIA memory connection, is processed by the various software applications that generate a wide area digital elevation model (DEM) and orthorectified image mosaics from the collected data.
  • the generated products e.g., DEM or mosaics
  • the application software is backed by the relational database server "postgreSQL" in order to preserve information across work sessions. It also seamlessly links to a three-dimensional point cloud visualization module.
  • Typical workflow of a ground analyst to generate mapping products comprises the following steps: one, import the collected data from the memory card into the software; two, visualize the footprints of the LIDAR frames on a map and the 3-D point cloud in the three-dimensional viewer; three, optionally select region of interest for processing; four, register, adjust and grid the LIDAR frames to generate a DEM and an intensity orthorectified mosaic; five, orthorectify and mosaic the RGB visible data; six, view on a map and/or export the generated products.
  • Figure 4 depicts a functional block diagram of the application components involved as an operator progresses through the workflow while the application is executing on the CPU 432.
  • data is imported from the memory flash card 314 into the application 408, through an intuitive wizard-based user interface 410.
  • the operator invokes the DEM generation and mosaicking engine 430, again through an intuitive wizard-based user interface 410.
  • the engine 430 relies on a control strategy module 420 that orchestrates the data processing and dispatches data to the various data processing servers 428, 426, 424 and 422.
  • results are saved to disk 404 and the appropriate database entries are inserted in the database 406.
  • the data import module 418 converts the LIDAR range data collected during the flight session to LIDAR height field frames in a plane-plus-parallax form that will lead to an efficient frame registration framework.
  • the height field frames represent the relative heights of LIDAR point samples with respect to a reference plane located at the mean elevation in the frame.
  • the conversion step maps LIDAR frame points (u,v,r) where r is the LIDAR range to plane-plus-parallax points (u,v,p), p being the parallax computed for pixel (u,v) with respect to a reference plane.
  • LIDAR range points to a projected space related to the chosen world coordinate system by a three-dimensional projective transformation (represented by a 4x4 matrix).
  • a three-dimensional projective transformation represented by a 4x4 matrix.
  • two LIDAR height field frames will be related by a three-dimensional projective transformation.
  • affine transformation is sufficient to relate two frames.
  • Such transformations can be estimated very efficiently using direct methods. Further detail on the registration process follows.
  • the data preprocessing expresses the input data with respect to a local vertical coordinate system (LVCS).
  • LVCS local vertical coordinate system
  • the coordinates of the LVCS origin are that of the centroid of the collected data, rounded to the nearest multiple of 5,000 meters.
  • the introduction of an LVCS serves two purposes: first, all the data processing is performed with respect to a Cartesian coordinate system; second, the local origin ensures that the numbers are kept small enough for accurate representation in a 32bit float.
  • LIDAR frames are grouped into segments, for efficient storage and access purposes.
  • the segment's boundaries preserve flight line boundaries, so that segments will not straddle two flight lines.
  • the following will be stored to disk: a sequence of height field frames, a sequence of intensity frames, a sequence of color visible frames and metadata records for each frame in the segment.
  • FIG. 5 is a flowchart depicting the registration process 500 as performed by the registration server 424 and the bundle adjustment server 424.
  • Flash LIDAR registration consists of two major processes 501 and 503: first, in process 501 , pairwise registration is performed on temporally adjacent frame pairs as well as other overlapping frame pairs that are selected by the topology inference process described below. Then, in process 503, all the pairwise registration motion parameters in a region are combined with metadata based constraints by least squares adjustment to achieve global consistency.
  • frames are supplied to the method 500.
  • the three- dimensional mapping between corresponding three-dimensional points in a pair of LIDAR height maps can be represented by a three-dimensional projective transformation.
  • the effect of parallax on the mapping can be disregarded, allowing motion to be approximated by a two-dimensional affine transformation in the x-y plane composed with a translation and a shear in the z dimension.
  • two test points are defined at the x,y center of one frame with minimum and maximum height values of that frame.
  • the test points are mapped using the metadata to the other frame in the pair, and the x,y distance between the two warped points forms an upper bound on the amount of parallax between the two frames.
  • the original LIDAR height fields can be prewarped at step 506 using metadata into a common orthorectified (nadir view) coordinate system, upon which the previous approximations hold for the warped frames.
  • the two-dimensional affine transformation between two frames of height fields is estimated by a multiresolution direct alignment technique.
  • a shifted and tilted plane model is fit by linear regression to the residual height between the affine registered frames.
  • the final estimated three-dimensional mapping for this pair is then the composition of the x, y and z transforms (if prewarping was performed, the mapping is additionally composed with the prewarp transformations).
  • estimated pairwise motion information is output from the process 501.
  • the terrain model is created one tile at a time using the estimated motion information 512, metadata constraints 516 and reference motion information 520.
  • a least square adjustment is formed to estimate the optimum placement of each frame (three-dimensional rotation and translation) in the current tile.
  • Each three-dimensional mapping is represented as a set of four virtual three-dimensional tie point correspondences. Due to noise, the constraints cannot all be exactly satisfied simultaneously, so the placement parameters are jointly estimated to minimize a robust total error criterion.
  • the result of process 503 is final motion information 518.
  • Each constraint is inversely weighted by its uncertainty so that three- dimensional mappings with high expected noise to not adversely affect the global solution.
  • the noise level of metadata is assumed to be constant over time and thus a fixed weight of one is assigned to all the constraints from metadata.
  • a weight of infinity is assigned to constraints on the frames in previously finished tiles, since their placements can no longer be allowed to change.
  • a weight between 0 and 10 is defined by the sharpness of the correlation peak.
  • the weight function favors high center correlation and penalizes high shifted correlations, which indicate uncertainty in the motion estimation.
  • a weight of 0 indicates that the pairwise registration failed.
  • the invention uses an approach that generates DEMs and mosaics on a tile by tile basis.
  • the size of all the tiles is the same, and user specified.
  • the origins of the tiles are defined along a fixed partition of the UTM coordinate system, so that the tiles generated from different overlapping flights are consistent. Also, overlap exists between contiguous tiles, to maintain continuity across tiles, and so that the edge artifacts that occur during gridding and orthorectification can be trimmed off.
  • the control strategy module orchestrates the processing of data on a tile by tile basis. For each tile, the control strategy module finds the segments that fall into or overlaps with that tile and proceeds to pull together all the frames of those segments for processing. In order to generate the constraints for the bundle adjustment as described above, frames that overlap must be identified for registration. For a given frame, there will be several types of overlapping frames that are candidate for registration: temporally adjacent frames, and spatially adjacent frames. The second category will include frames that belong to the same flight line as the given frame, and frames that belong to a different flight line. This process of discovering the relative placement of frames, or framed topology, is referred to as a topology inference. While for a given frame, there may be several overlapping frames that fit for registration performing all possible registrations would counter the objective of the data processing rate equivalent to the data acquisition rate. As such, only a subset of registration will actually be performed based on inference modules selection.
  • the topology inference module (located within the control strategy module) operates by building an undirected weighted graph 600 for each tile, where each node (dot) is a frame relevant to that tile, and edges (lines) are weighted by the overlap between the two frames they link.
  • the mapping from a frame to the LVCS as derived from the metadata is made available during the inference process.
  • the topology inference module computes the overlap between two frames as the distance between their centers expressed in the coordinate system of one of the frames.
  • the graph 600 of Figure 6A is first initialized with all the frames relevant to a tile. Edges are inserted between frames that are temporally adjacent, without duplication.
  • each node is visited and all frames overlapping with corresponding frames are identified, whether they are from the same flight line or not. Overlapping frames are visited (dashed arrowed lines of Figure 6B) by descending order of overlap, to preferentially insert edges with the most overlapping frames first.
  • Fi is referred to as the frame represented by the currently visited node Ni, and F 2 as one of the frames overlapping Fi.
  • the node representing F2 is referred to node N 2 . If F 2 is temporally adjacent to frame Fi, no edge is inserted since it already exists following initialization (e.g., nodes Ni and N 3 ).
  • an insertion cost is computed to determine whether an edge should be inserted. Intuitively, this cost weighs the shortest path 602 between node Ni and node N 2 before insertion, against the shortest path 604, effectively the overlap between frame Fi and frame F2, that would result from the edge insertion. Practically, it is computed as the ratio of the Dijkstra shortest path between node Ni and node N2, to the overlap between frame Fi and frame F 2 . If the computed ratio exceeds a certain threshold, an edge 606 is inserted. This insertion strategy heuristically insures that edges are inserted sparsely along the graph 600.
  • the edge 606 has been inserted into the graph 600 and the process continues to the next node N3. The process repeats until all the nodes (frames) are processed. Once the graph is complete, the list of frames to register and include in the bundle adjustment is given by the graph's edges. The control strategy module can then invoke the registration and bundle adjustment servers to perform the frame alignment.
  • the frames pulled for a tile are inserted in a spatial index maintained in memory to speed up the identification of overlapping frames.
  • the spatial index is maintained for the processing of an entire data collection.
  • the LIDAR data is resampled using the regridding server 426 along a uniformed grid, a process also referred to as "gridding", to generate a DEM.
  • the gridding approach performs a simple averaging: pixels from the LIDAR height field frames are warped to points in the UTM coordinate system, then each point is stored in the proper bin. If there are multiple points in a bin, they are added together and divided by the bin count.
  • an orthorectified mosaic can be generated from the intensity data the same time as the DEM. Once a DEM is available, the color visible frames can be orthorectified and mosaicked.
  • the mosaicking server 428 uses a backward warping strategy for mosaicking both the intensity and color frames.
  • the process first computes the bounding box of a given height field frame in the UTM coordinate system. Each DEM pixel (x, y, z) in the bounding box is warped back to a pixel (u, v, p) in the height field frame.
  • the process compares the parallax value P, computed from warping, to the parallax value P at position (u, v), interpolated from the height field frame: if P' differs significantly from P, then the DEM pixel is occluded from the view of the height field frame and should be skipped. Otherwise, the intensity or RGB value at position (u, v) is interpolated and inserted in the mosaic.
  • the insertion position is related to the position (x, y, z) by an offset and scaling factor.
  • the invention is useful in rapidly creating a wide area terrain map using both LIDAR and visible sensor information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Multimedia (AREA)
  • Image Processing (AREA)

Abstract

A method and apparatus for performing wide area terrain mapping. The system comprises a digital elevation map (DEM) and mosaic generation engine (430) that processes images that are simultaneously captured by an electro-optical camera (RGB camera) (302) and a LIDAR sensor (304). The image data collected by both the camera and the LIDAR sensor are processed to create a geometrically accurate three-dimensional view of objects viewed from an aerial platform (100).

Description

...t. i πuu «πw «rr«rχ«ι υo FOR PERFORMING WIDE AREA TERRAIN
MAPPING
GOVERNMENT RIGHTS IN THIS INVENTION
[0001] This invention was made with U.S. government support under contract number GS-10F-0197L-84658. The U.S. government has certain rights in this invention.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims benefit of United States provisional patent application serial number 60/651 ,685, filed February 10, 2005, which is incorporated by reference.
BACKGROUND OF THE INVENTION Field of the Invention
[0003] Embodiments of the present invention generally relate to an imaging system and, more particularly, the present invention relates to wide area terrain mapping.
Description of the Related Art
[0004] The geographic system industry has begun to exploit scanning LIDAR (Light Detection and Ranging) techniques to directly collect three-dimensional topography. Typically, a single laser beam is moved over the ground using aircraft motion and scanning mirrors. Using a measure of the time of flight for each pulse of a laser, range from the laser to the ground (or objects thereon) is estimated. Range samples are transformed to three-dimensional points in ground coordinates using high accuracy, onboard GPS/INS data and scan angles (collectively, "metadata"). The points are then connected into a three-dimensional mesh surface or re-gridded to a uniformly sampled digital elevation map (DEM) for display to a user. However, commercial scanning LIDAR instruments are relatively expensive and bulky such that aerial imagery (video imagery) must be acquired separately and then "draped" over the three-dimensional terrain that has been produced by the LIDAR technique. Such a process is costly, labor intensive, and time consuming. [0005] Therefore, there is a need in the art for a comprehensive wide area terrain mapping system that combines both LIDAR information and electro-optic information, e.g., video images, in a single platform.
SUMMARY OF THE INVENTION
[0006] The present invention is a method and apparatus for performing wide area terrain mapping. The system comprises a digital elevation map (DEM) and mosaic generation engine that processes images that are simultaneously captured by an electro-optical camera (RGB camera) and a LIDAR sensor. The LIDAR sensor and camera are generally mounted on a scanner within an aerial platform. The image data collected by both the camera and the LIDAR sensor are processed to create a geometrically accurate three-dimensional view of objects viewed from the aerial platform.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
[0008] Figure 1 depicts one embodiment of an aerial platform for carrying a sensor suite in accordance with the invention;
[0009] Figure 2 depicts a scan pattern used by the present invention;
[0010] Figure 3 depicts a block diagram of a sensor suite that is mounted to the aerial platform in accordance with the present invention;
[0011] Figure 4 depicts a functional block diagram of software used for processing the information collected by the sensor suite; [0012] Figure 5 depicts a flow diagram of the processing used by the present invention;
[0013] Figures 6A-6D depict a graphical representations of a process used to process image data in the present invention; and
[0014] Figure 7 depicts a block diagram of a computer system that is used to implement the invention.
DETAILED DESCRIPTION
[0015] The present invention is a method and apparatus for performing wide area terrain mapping using a combination of LIDAR and video technology within a single platform.
[0016] Figure 1 depicts an aerial platform 100 that carries a sensor suite 102 that performs aerial imaging of objects on the ground. The platform 100 may be a manned airplane or helicopter, or the platform 100 may be an unmanned aerial vehicle (UAV). Whatever form the platform takes, the suite 100 is used to collect range data, video imagery, and metadata comprising the location of the platform (e.g., Universal Transverse Mercator (UTM) coordinates) and the orientation of the sensor suite 102 (e.g., a scan angle). This information is stored within the sensor suite 102 for subsequent processing. Of course, the information could also be transmitted to a ground station (not shown) for processing.
[0017] Figure 2 depicts a flight path 200 that is flown by the aerial platform while the sensor suite 102 is performing a scan pattern 202 that zigzags about the flight path 200. As such, a swath of terrain is imaged from the air with each pass of the platform. By flying in a serpentine path, the aerial platform can image a large area of terrain.
[0018] Figure 3 depicts a block diagram of a sensor suite 102 that is carried by the platform 100 of Figure 1. The sensor suite 102 comprises a sensor assembly 300 coupled to a computer 306. The sensor assembly 300 comprises an electro- optic sensor (e.g., a video camera 302) and a LIDAR sensor 304 that are coupled to one another by a scanner 322. The camera 302 and sensor 304 are physically aligned to have a common bore sight. The video camera 302 is, in one embodiment of the invention, an RGB camera. However, other camera may be used such as an infrared camera. In one embodiment of the invention, the LIDAR sensor 304 is a flash LIDAR focal plane array. By mounting the LIDAR sensor 304 and video camera 302 upon the same scanning platform (scanner 322), the video camera 302 and the LIDAR sensor 304 image objects on the ground at the same time.
[0019] The output from sensor assembly 300 is coupled to the computer 306 for storing the information from the assembly 300. Also included on the platform 100 is a GPS/INS unit 308 for providing position and orientation information for each of the images captured by the sensor assembly 300. The computer 306 comprises a CPU 310, a support circuits 312 and memory 314. The CPU 310 may be any one of many commercially available processors or microcontrollers. The support circuits 312 include various well known circuitry for supporting the operation of the CPU 310. The support circuits 312 may include clock circuits, cache, power supplies, input/output interfaces, and the like. The memory 314 may include random access memory, read only memory, disk drive memory, removable storage, and the like. The memory 314 stores the image data 316 created by the sensor assembly as well as metadata 318 created by the GPS/INS unit 308 and the scanner, e.g., the metadata comprises platform location, heading, and scanner direction (scan angle). Control software 320 is also stored in memory for controlling the scanner 322. The image data 316 and metadata 318 is generally stored on a removable PCMCIA flash card that can be easily removed from the platform and inserted into a processing system on the ground. Alternatively, the image data 316 and metadata 318 can be transmitted to a ground station while the platform is airborne.
[0020] More specifically, the sensor suite 102 provides the mapping data capability. The LIDAR sensor 304 is capable of acquiring, for example, 128x128 intensity and range images with a resolution of 1m per pixel at a capture rate of up to 20Hz. The camera 302 captures, for example, 480x480 pixel frames at the same frame rate as the LIDAR sensor 304. [0021] The entire sensor suite 102 occupies a small volume, approximately 1 cubic foot, for a payload weight of 26kg. This is a significant improvement over the existing airborne scanning laser systems that can occupy a volume as large as 7.7 cubic feet with a payload weight of 76.6kg for the laser system alone.
[0022] During a typical flight, the aircraft flies several long parallel passes over the area of interest, while a scanning mirror oscillates the sensor across track. This pattern is shown in Figure 2. The resulting data follows a two-dimensional zigzagged topology. With this acquisition pattern, temporally successive frames overlap by around 30%, and frames in successive rows of the zigzagged topology overlap by around 50%. During a typical 1 hour flight plan, approximately 7 GB of data are collected.
[0023] FIG. 7 depicts a computer system 700 comprising a computer 702 and disk drive 704. The computer 702 comprises at least one central processing unit (CPU) 704, support circuits 706 and memory 708. In one embodiment of the invention, the computer 702 is a dual processor personal computer to achieve a processing rate equivalent to the data acquisition rate. In other words, the application will process one hour of data in the same amount of time that was required to collect the data. The CPU 704 may comprise one or more commercially available microprocessors or microcontrollers. The support circuits 706 are well- known support circuits that support the operation of the CPU 704. The support circuits 706 may include one or more of clock circuits, power supplies, cache, input/output circuits, network connection circuits and the like. The memory 708 comprises software to implement the present invention. The software applications include a user interface 410, a data import module 418 and a DEM and mosaic generation engine 430; each of which are discussed in detail below. The collected data, coupled to the computer 702 via a PCMCIA memory connection, is processed by the various software applications that generate a wide area digital elevation model (DEM) and orthorectified image mosaics from the collected data. The generated products (e.g., DEM or mosaics) are expressed with respective to UTM coordinates. The application software is backed by the relational database server "postgreSQL" in order to preserve information across work sessions. It also seamlessly links to a three-dimensional point cloud visualization module.
[0024] Typical workflow of a ground analyst to generate mapping products comprises the following steps: one, import the collected data from the memory card into the software; two, visualize the footprints of the LIDAR frames on a map and the 3-D point cloud in the three-dimensional viewer; three, optionally select region of interest for processing; four, register, adjust and grid the LIDAR frames to generate a DEM and an intensity orthorectified mosaic; five, orthorectify and mosaic the RGB visible data; six, view on a map and/or export the generated products.
[0025] Figure 4 depicts a functional block diagram of the application components involved as an operator progresses through the workflow while the application is executing on the CPU 432. First, data is imported from the memory flash card 314 into the application 408, through an intuitive wizard-based user interface 410. Then, after visualization on a map or in the three-dimensional viewer 402, the operator invokes the DEM generation and mosaicking engine 430, again through an intuitive wizard-based user interface 410. The engine 430 relies on a control strategy module 420 that orchestrates the data processing and dispatches data to the various data processing servers 428, 426, 424 and 422. As data is manipulated, whether through import or product generation, results are saved to disk 404 and the appropriate database entries are inserted in the database 406.
[0026] The data import module 418 converts the LIDAR range data collected during the flight session to LIDAR height field frames in a plane-plus-parallax form that will lead to an efficient frame registration framework. Essentially, the height field frames represent the relative heights of LIDAR point samples with respect to a reference plane located at the mean elevation in the frame. To be precise, the conversion step maps LIDAR frame points (u,v,r) where r is the LIDAR range to plane-plus-parallax points (u,v,p), p being the parallax computed for pixel (u,v) with respect to a reference plane. The benefit of this conversion is to map LIDAR range points to a projected space related to the chosen world coordinate system by a three-dimensional projective transformation (represented by a 4x4 matrix). Thus, two LIDAR height field frames will be related by a three-dimensional projective transformation. In fact, for frames within a row of the sensor scanning pattern, and affine transformation is sufficient to relate two frames. Such transformations can be estimated very efficiently using direct methods. Further detail on the registration process follows.
[0027] Although the final products are generated with respect to UTM coordinates, the data preprocessing expresses the input data with respect to a local vertical coordinate system (LVCS). The coordinates of the LVCS origin are that of the centroid of the collected data, rounded to the nearest multiple of 5,000 meters. The introduction of an LVCS serves two purposes: first, all the data processing is performed with respect to a Cartesian coordinate system; second, the local origin ensures that the numbers are kept small enough for accurate representation in a 32bit float.
[0028] During import, successive LIDAR frames are grouped into segments, for efficient storage and access purposes. The segment's boundaries preserve flight line boundaries, so that segments will not straddle two flight lines. For a given segment, the following will be stored to disk: a sequence of height field frames, a sequence of intensity frames, a sequence of color visible frames and metadata records for each frame in the segment. Description information about the segments, including where to access the data sequences on disk and bounding rectangles, is saved in the database.
[0029] Figure 5 is a flowchart depicting the registration process 500 as performed by the registration server 424 and the bundle adjustment server 424. Flash LIDAR registration consists of two major processes 501 and 503: first, in process 501 , pairwise registration is performed on temporally adjacent frame pairs as well as other overlapping frame pairs that are selected by the topology inference process described below. Then, in process 503, all the pairwise registration motion parameters in a region are combined with metadata based constraints by least squares adjustment to achieve global consistency. [0030] At step 502, frames are supplied to the method 500. The three- dimensional mapping between corresponding three-dimensional points in a pair of LIDAR height maps can be represented by a three-dimensional projective transformation. For frames taken from nearly the same aerial viewpoint, the effect of parallax on the mapping can be disregarded, allowing motion to be approximated by a two-dimensional affine transformation in the x-y plane composed with a translation and a shear in the z dimension. To check if parallax is negligible, at step 504, two test points are defined at the x,y center of one frame with minimum and maximum height values of that frame. The test points are mapped using the metadata to the other frame in the pair, and the x,y distance between the two warped points forms an upper bound on the amount of parallax between the two frames. If not negligible, then the original LIDAR height fields can be prewarped at step 506 using metadata into a common orthorectified (nadir view) coordinate system, upon which the previous approximations hold for the warped frames.
[0031] At steps 508 and 510, the two-dimensional affine transformation between two frames of height fields is estimated by a multiresolution direct alignment technique. A shifted and tilted plane model is fit by linear regression to the residual height between the affine registered frames. The final estimated three-dimensional mapping for this pair is then the composition of the x, y and z transforms (if prewarping was performed, the mapping is additionally composed with the prewarp transformations). At step 512, estimated pairwise motion information is output from the process 501.
[0032] At step 514, the terrain model is created one tile at a time using the estimated motion information 512, metadata constraints 516 and reference motion information 520. Given all the three dimensional mappings estimated for the selected frame pairs, the metadata for all the frames in a tile, and the placements of the adjoining frames in previously finished tiles, a least square adjustment is formed to estimate the optimum placement of each frame (three-dimensional rotation and translation) in the current tile. Each three-dimensional mapping is represented as a set of four virtual three-dimensional tie point correspondences. Due to noise, the constraints cannot all be exactly satisfied simultaneously, so the placement parameters are jointly estimated to minimize a robust total error criterion. The result of process 503 is final motion information 518.
[0033] Each constraint is inversely weighted by its uncertainty so that three- dimensional mappings with high expected noise to not adversely affect the global solution. The noise level of metadata is assumed to be constant over time and thus a fixed weight of one is assigned to all the constraints from metadata. A weight of infinity is assigned to constraints on the frames in previously finished tiles, since their placements can no longer be allowed to change. For estimated pair wise motions, a weight between 0 and 10 is defined by the sharpness of the correlation peak. Specifically the normalized correlation between two height fields registered by two-dimensional affine is computed and then also computed as the registration is perturbed by 4 pixels in 8 compass directions. The weight function favors high center correlation and penalizes high shifted correlations, which indicate uncertainty in the motion estimation. A weight of 0 indicates that the pairwise registration failed.
[0034] Given the sheer amount of data to be processed for a single flight, the invention uses an approach that generates DEMs and mosaics on a tile by tile basis. The size of all the tiles is the same, and user specified. The origins of the tiles are defined along a fixed partition of the UTM coordinate system, so that the tiles generated from different overlapping flights are consistent. Also, overlap exists between contiguous tiles, to maintain continuity across tiles, and so that the edge artifacts that occur during gridding and orthorectification can be trimmed off.
[0035] The control strategy module orchestrates the processing of data on a tile by tile basis. For each tile, the control strategy module finds the segments that fall into or overlaps with that tile and proceeds to pull together all the frames of those segments for processing. In order to generate the constraints for the bundle adjustment as described above, frames that overlap must be identified for registration. For a given frame, there will be several types of overlapping frames that are candidate for registration: temporally adjacent frames, and spatially adjacent frames. The second category will include frames that belong to the same flight line as the given frame, and frames that belong to a different flight line. This process of discovering the relative placement of frames, or framed topology, is referred to as a topology inference. While for a given frame, there may be several overlapping frames that fit for registration performing all possible registrations would counter the objective of the data processing rate equivalent to the data acquisition rate. As such, only a subset of registration will actually be performed based on inference modules selection.
[0036] As depicted in Figures 6A-6D, the topology inference module (located within the control strategy module) operates by building an undirected weighted graph 600 for each tile, where each node (dot) is a frame relevant to that tile, and edges (lines) are weighted by the overlap between the two frames they link. The mapping from a frame to the LVCS as derived from the metadata is made available during the inference process. By cascading the initial mappings of two frames F1 and F2, the topology inference module computes the overlap between two frames as the distance between their centers expressed in the coordinate system of one of the frames. The graph 600 of Figure 6A is first initialized with all the frames relevant to a tile. Edges are inserted between frames that are temporally adjacent, without duplication.
[0037] From this initial configuration, each node is visited and all frames overlapping with corresponding frames are identified, whether they are from the same flight line or not. Overlapping frames are visited (dashed arrowed lines of Figure 6B) by descending order of overlap, to preferentially insert edges with the most overlapping frames first. To simplify, the subsequent explanation, Fi is referred to as the frame represented by the currently visited node Ni, and F2 as one of the frames overlapping Fi. The node representing F2 is referred to node N2. If F2 is temporally adjacent to frame Fi, no edge is inserted since it already exists following initialization (e.g., nodes Ni and N3). However, if it isn't, as shown in Figure 6C, an insertion cost is computed to determine whether an edge should be inserted. Intuitively, this cost weighs the shortest path 602 between node Ni and node N2 before insertion, against the shortest path 604, effectively the overlap between frame Fi and frame F2, that would result from the edge insertion. Practically, it is computed as the ratio of the Dijkstra shortest path between node Ni and node N2, to the overlap between frame Fi and frame F2. If the computed ratio exceeds a certain threshold, an edge 606 is inserted. This insertion strategy heuristically insures that edges are inserted sparsely along the graph 600. At Figure 6D, the edge 606 has been inserted into the graph 600 and the process continues to the next node N3. The process repeats until all the nodes (frames) are processed. Once the graph is complete, the list of frames to register and include in the bundle adjustment is given by the graph's edges. The control strategy module can then invoke the registration and bundle adjustment servers to perform the frame alignment.
[0038] Given that the database does not store geographic bounds for individual frames but whole segments, the frames pulled for a tile are inserted in a spatial index maintained in memory to speed up the identification of overlapping frames. The spatial index is maintained for the processing of an entire data collection.
[0039] After bundle adjustment, the LIDAR data is resampled using the regridding server 426 along a uniformed grid, a process also referred to as "gridding", to generate a DEM. The gridding approach performs a simple averaging: pixels from the LIDAR height field frames are warped to points in the UTM coordinate system, then each point is stored in the proper bin. If there are multiple points in a bin, they are added together and divided by the bin count. Optionally, an orthorectified mosaic can be generated from the intensity data the same time as the DEM. Once a DEM is available, the color visible frames can be orthorectified and mosaicked.
[0040] The mosaicking server 428 uses a backward warping strategy for mosaicking both the intensity and color frames. The process first computes the bounding box of a given height field frame in the UTM coordinate system. Each DEM pixel (x, y, z) in the bounding box is warped back to a pixel (u, v, p) in the height field frame. The process then compares the parallax value P, computed from warping, to the parallax value P at position (u, v), interpolated from the height field frame: if P' differs significantly from P, then the DEM pixel is occluded from the view of the height field frame and should be skipped. Otherwise, the intensity or RGB value at position (u, v) is interpolated and inserted in the mosaic. For the color mosaic, the insertion position is related to the position (x, y, z) by an offset and scaling factor.
[0041] The invention is useful in rapidly creating a wide area terrain map using both LIDAR and visible sensor information.
[0042] While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.

Claims

Claims:
1. A method of generating a wide area terrain map, comprising: accessing simultaneously captured images from a camera and images from a Light Detection and Ranging (LIDAR) sensor; and processing the camera and LIDAR images to produce digital elevation map (DEM) and three-dimensional mosaics of a scene having the camera images combined with the LIDAR images.
2. The method of claim 1 further comprising: operating a sensor suite to simultaneously capture the camera and LIDAR images; and storing the camera images, LIDAR images and metadata regarding the location and orientation of the sensor suite.
3. The method of claim 1 wherein the processing step further comprises: importing the camera and LIDAR images; visualizing a footprint of the LIDAR images on a map; adjusting and gridding the LIDAR images to generate a DEM and an intensity orthorectified mosaic; orthorectifying and mosaicking the camera images with respect to the DEM and intensity orthorectified mosaic; and view a mosaic of the camera images.
4. The method of claim 3 wherein the importing step further comprises: converting the second images into height field frames using a plane-plus- parallax form.
5. The method of claim 3 wherein the importing step further comprises: storing the height field frames with intensity frames, first images, and metadata for each frame and image.
6. The method of claim 5 wherein the metadata comprises: a location, heading and scan angle of the camera and sensor.
7. The method of claim 1 wherein the processing step comprises: flash registering the LIDAR images.
8. The method of claim 7 wherein the flash registering step comprises: pairwise registering temporally adjacent images to create pairwise motion parameters; and combining the pairwise motion parameters in a region with metadata to achieve global consistency of the registered images.
9. Apparatus for generating a wide area terrain map comprising: a user interface; a data import module, coupled to the user interface, for importing camera images, Light Detection and Ranging (LIDAR) images, and metadata from a memory device; a digital elevation map (DEM) and mosaic generation engine, coupled to the user interface, for processing the camera images, LIDAR images and metadata to produce a mosaic of the camera images, where the mosaic is a wide area terrain map.
10. The apparatus of claim 9 wherein the DEM and mosaic generation engine comprises: a control strategy module coupled to the user interface; a registration server coupled to the control strategy module; mosaicking server coupled to the control strategy module; a gridding server coupled to the control strategy module; and a bundle adjustment server coupled to the control strategy module.
PCT/US2006/004831 2005-02-10 2006-02-10 Method and apparatus for performing wide area terrain mapping WO2007094765A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US65168505P 2005-02-10 2005-02-10
US60/651,685 2005-02-10

Publications (2)

Publication Number Publication Date
WO2007094765A2 true WO2007094765A2 (en) 2007-08-23
WO2007094765A3 WO2007094765A3 (en) 2008-02-07

Family

ID=38371924

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/004831 WO2007094765A2 (en) 2005-02-10 2006-02-10 Method and apparatus for performing wide area terrain mapping

Country Status (1)

Country Link
WO (1) WO2007094765A2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8237791B2 (en) 2008-03-19 2012-08-07 Microsoft Corporation Visualizing camera feeds on a map
JP2015522458A (en) * 2012-04-24 2015-08-06 エクセリス インコーポレイテッド Point cloud visualization of allowable helicopter landing points based on 4DLIDAR
WO2017053031A1 (en) * 2015-09-25 2017-03-30 Vivint, Inc. Uav network design
US9864927B2 (en) 2013-01-24 2018-01-09 Isis Innovation Limited Method of detecting structural parts of a scene
US10109104B2 (en) 2013-02-21 2018-10-23 Oxford University Innovation Limited Generation of 3D models of an environment
US10163194B2 (en) 2016-09-23 2018-12-25 Purdue Research Foundation Method of processing an image
EP3460518A1 (en) * 2017-09-22 2019-03-27 Leica Geosystems AG Hybrid lidar-imaging device for aerial surveying
US10255680B2 (en) 2014-05-30 2019-04-09 Oxford University Innovation Limited Vehicle localization
FR3076898A1 (en) * 2018-01-16 2019-07-19 Balyo CARTOGRAPHY METHOD AND DEVICE FOR AUTOMATIC VEHICLE

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963664A (en) * 1995-06-22 1999-10-05 Sarnoff Corporation Method and system for image combination using a parallax-based technique
US6664529B2 (en) * 2000-07-19 2003-12-16 Utah State University 3D multispectral lidar
US6757445B1 (en) * 2000-10-04 2004-06-29 Pixxures, Inc. Method and apparatus for producing digital orthophotos using sparse stereo configurations and external models
US20050052714A1 (en) * 2003-07-24 2005-03-10 Zebra Imaging, Inc. Enhanced environment visualization using holographic stereograms
US7187809B2 (en) * 2004-06-10 2007-03-06 Sarnoff Corporation Method and apparatus for aligning video to three-dimensional point clouds

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963664A (en) * 1995-06-22 1999-10-05 Sarnoff Corporation Method and system for image combination using a parallax-based technique
US6664529B2 (en) * 2000-07-19 2003-12-16 Utah State University 3D multispectral lidar
US6757445B1 (en) * 2000-10-04 2004-06-29 Pixxures, Inc. Method and apparatus for producing digital orthophotos using sparse stereo configurations and external models
US20050052714A1 (en) * 2003-07-24 2005-03-10 Zebra Imaging, Inc. Enhanced environment visualization using holographic stereograms
US7190496B2 (en) * 2003-07-24 2007-03-13 Zebra Imaging, Inc. Enhanced environment visualization using holographic stereograms
US7187809B2 (en) * 2004-06-10 2007-03-06 Sarnoff Corporation Method and apparatus for aligning video to three-dimensional point clouds

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8237791B2 (en) 2008-03-19 2012-08-07 Microsoft Corporation Visualizing camera feeds on a map
JP2015522458A (en) * 2012-04-24 2015-08-06 エクセリス インコーポレイテッド Point cloud visualization of allowable helicopter landing points based on 4DLIDAR
US9864927B2 (en) 2013-01-24 2018-01-09 Isis Innovation Limited Method of detecting structural parts of a scene
US10109104B2 (en) 2013-02-21 2018-10-23 Oxford University Innovation Limited Generation of 3D models of an environment
US10255680B2 (en) 2014-05-30 2019-04-09 Oxford University Innovation Limited Vehicle localization
US9973939B2 (en) 2015-09-25 2018-05-15 Vivint, Inc. UAV network design
WO2017053031A1 (en) * 2015-09-25 2017-03-30 Vivint, Inc. Uav network design
US10375583B2 (en) 2015-09-25 2019-08-06 Vivint, Inc. UAV network design
US10163194B2 (en) 2016-09-23 2018-12-25 Purdue Research Foundation Method of processing an image
EP3460518A1 (en) * 2017-09-22 2019-03-27 Leica Geosystems AG Hybrid lidar-imaging device for aerial surveying
CN109541629A (en) * 2017-09-22 2019-03-29 莱卡地球系统公开股份有限公司 Mixing LiDAR imaging device for aerial survey
US11619712B2 (en) 2017-09-22 2023-04-04 Leica Geosystems Ag Hybrid LiDAR-imaging device for aerial surveying
CN109541629B (en) * 2017-09-22 2023-10-13 莱卡地球系统公开股份有限公司 Mixed LiDAR imaging device for aviation measurement
FR3076898A1 (en) * 2018-01-16 2019-07-19 Balyo CARTOGRAPHY METHOD AND DEVICE FOR AUTOMATIC VEHICLE
WO2019141929A1 (en) * 2018-01-16 2019-07-25 Balyo Mapping method and device for an automatic vehicle

Also Published As

Publication number Publication date
WO2007094765A3 (en) 2008-02-07

Similar Documents

Publication Publication Date Title
US7363157B1 (en) Method and apparatus for performing wide area terrain mapping
US10303966B2 (en) Method and system of image-based change detection
US9798928B2 (en) System for collecting and processing aerial imagery with enhanced 3D and NIR imaging capability
Xiang et al. Mini-unmanned aerial vehicle-based remote sensing: Techniques, applications, and prospects
US10182212B2 (en) Wide area intermittent video using non-orthorectified feature matching in long period aerial image capture with pixel-based georeferencing
WO2007094765A2 (en) Method and apparatus for performing wide area terrain mapping
Kumar et al. Aerial video surveillance and exploitation
US8315477B2 (en) Method and apparatus of taking aerial surveys
Zhang et al. Photogrammetric processing of low‐altitude images acquired by unpiloted aerial vehicles
EP2111530B1 (en) Automatic stereo measurement of a point of interest in a scene
EP2791868B1 (en) System and method for processing multi-camera array images
US10740608B2 (en) Wide area intermittent video using non-orthorectified feature matching in long period aerial image capture with pixel-based georeferencing
GB2561329A (en) Method and system for creating images
Verykokou et al. Oblique aerial images: a review focusing on georeferencing procedures
KR20120105452A (en) Multi-resolution digital large format camera with multiple detector arrays
WO2013191583A2 (en) Method for producing an image of the surface of the earth from a moving carrier and a device for implementing same
Moussa et al. A fast approach for stitching of aerial images
CN112632415B (en) Web map real-time generation method and image processing server
US20220276046A1 (en) System and method for providing improved geocoded reference data to a 3d map representation
Hanna et al. Wide-area terrain mapping by registration of flash LIDAR imagery
Hsu Geocoded terrestrial mosaics using pose sensors and video registration
Gabara et al. Kortowo test field for testing photogrammetric products accuracy–design and first evaluation
AU2013260677B2 (en) Method and apparatus of taking aerial surveys
Trask et al. Automated model-based image registration for tactical image exploitation
Cavegn Integrated georeferencing for precise depth map generation exploiting multi-camera image sequences from mobile mapping

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06849706

Country of ref document: EP

Kind code of ref document: A2