Map-Enhanced UAV Image Sequence Registration and Synchronization of Multiple Image Sequences

Similar documents
Map-Enhanced UAV Image Sequence Registration

A NEW FEATURE BASED IMAGE REGISTRATION ALGORITHM INTRODUCTION

Motion Tracking and Event Understanding in Video Sequences

Estimation of Camera Pose with Respect to Terrestrial LiDAR Data

arxiv: v1 [cs.cv] 28 Sep 2018

Homographies and RANSAC

arxiv: v1 [cs.cv] 28 Sep 2018

Fast Outlier Rejection by Using Parallax-Based Rigidity Constraint for Epipolar Geometry Estimation

CSE 252B: Computer Vision II

Fast Image Registration via Joint Gradient Maximization: Application to Multi-Modal Data

Combining Appearance and Topology for Wide

Object Recognition with Invariant Features

Midterm Examination CS 534: Computational Photography

Exploitation of GPS-Control Points in low-contrast IR-imagery for homography estimation

Image correspondences and structure from motion

E27 Computer Vision - Final Project: Creating Panoramas David Nahmias, Dan Spagnolo, Vincent Stigliani Professor Zucker Due 5/10/13

Structured Light II. Thanks to Ronen Gvili, Szymon Rusinkiewicz and Maks Ovsjanikov

Feature Based Registration - Image Alignment

Instance-level recognition part 2

3D Computer Vision. Structured Light II. Prof. Didier Stricker. Kaiserlautern University.

Accurate Motion Estimation and High-Precision 3D Reconstruction by Sensor Fusion

Document Image Mosaicing with Mobile Phones

Specular 3D Object Tracking by View Generative Learning

Scale Invariant Feature Transform

Segmentation and Tracking of Partial Planar Templates

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014

Image stitching. Digital Visual Effects Yung-Yu Chuang. with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac

K-Means Based Matching Algorithm for Multi-Resolution Feature Descriptors

Video Georegistration: Key Challenges. Steve Blask Harris Corporation GCSD Melbourne, FL 32934

Feature Matching and RANSAC

A REAL-TIME TRACKING SYSTEM COMBINING TEMPLATE-BASED AND FEATURE-BASED APPROACHES

Today s lecture. Image Alignment and Stitching. Readings. Motion models

Augmenting Reality, Naturally:

Instance-level recognition II.

III. VERVIEW OF THE METHODS

STUDY OF AUTOMATIC IMAGE RECTIFICATION AND REGISTRATION OF SCANNED HISTORICAL AERIAL PHOTOGRAPHS

Accurate 3D Face and Body Modeling from a Single Fixed Kinect

Mosaics. Today s Readings

Scale Invariant Feature Transform

A Summary of Projective Geometry

A Method for Automatic Recognition of Small Mobile Targets in Aerial Images

Augmented Reality VU. Computer Vision 3D Registration (2) Prof. Vincent Lepetit

Stereo and Epipolar geometry

CS 231A Computer Vision (Winter 2014) Problem Set 3

From Orientation to Functional Modeling for Terrestrial and UAV Images

AUTOMATIC RECTIFICATION OF LONG IMAGE SEQUENCES. Kenji Okuma, James J. Little, David G. Lowe

Epipolar geometry-based ego-localization using an in-vehicle monocular camera

RELIABLE IMAGE MATCHING WITH RECURSIVE TILING

Image stitching. Announcements. Outline. Image stitching

Instance-level recognition

SIFT - scale-invariant feature transform Konrad Schindler

CHAPTER 1 INTRODUCTION

An Angle Estimation to Landmarks for Autonomous Satellite Navigation

SCALE INVARIANT FEATURE TRANSFORM (SIFT)

Instance-level recognition

Building a Panorama. Matching features. Matching with Features. How do we build a panorama? Computational Photography, 6.882

Multi-stable Perception. Necker Cube

Automatic Image Alignment (feature-based)

Visual Odometry. Features, Tracking, Essential Matrix, and RANSAC. Stephan Weiss Computer Vision Group NASA-JPL / CalTech

AN EFFICIENT BINARY CORNER DETECTOR. P. Saeedi, P. Lawrence and D. Lowe

SCALE INVARIANT TEMPLATE MATCHING

ROBUST LINE-BASED CALIBRATION OF LENS DISTORTION FROM A SINGLE VIEW

SUMMARY: DISTINCTIVE IMAGE FEATURES FROM SCALE- INVARIANT KEYPOINTS

A Novel Real-Time Feature Matching Scheme

RANSAC and some HOUGH transform

Vision-based Mobile Robot Localization and Mapping using Scale-Invariant Features

Local features: detection and description. Local invariant features

252C: Camera Stabilization for the Masses

Stitching and Blending

PANORAMIC IMAGE MATCHING BY COMBINING HARRIS WITH SIFT DESCRIPTOR

Retinal Image Registration from 2D to 3D

An Algorithm for Seamless Image Stitching and Its Application

Viewpoint Invariant Features from Single Images Using 3D Geometry

Image Stitching. Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi

A Method of Annotation Extraction from Paper Documents Using Alignment Based on Local Arrangements of Feature Points

CSE 527: Introduction to Computer Vision

Local features and image matching. Prof. Xin Yang HUST

Automatic Panoramic Image Stitching. Dr. Matthew Brown, University of Bath

CS664 Lecture #19: Layers, RANSAC, panoramas, epipolar geometry

The SIFT (Scale Invariant Feature

Motion Estimation and Optical Flow Tracking

Features Points. Andrea Torsello DAIS Università Ca Foscari via Torino 155, Mestre (VE)

Computational Optical Imaging - Optique Numerique. -- Multiple View Geometry and Stereo --

Dynamic Pushbroom Stereo Mosaics for Moving Target Extraction

VEHICLE MAKE AND MODEL RECOGNITION BY KEYPOINT MATCHING OF PSEUDO FRONTAL VIEW

Image Stitching using Harris Feature Detection

Invariant Features from Interest Point Groups

SURF applied in Panorama Image Stitching

Image warping and stitching

Perceptual Grouping from Motion Cues Using Tensor Voting

An Ensemble Approach to Image Matching Using Contextual Features Brittany Morago, Giang Bui, and Ye Duan

Local features: detection and description May 12 th, 2015

CS4670: Computer Vision

Acquisition of high resolution geo objects Using image mosaicking techniques

Fundamental Matrices from Moving Objects Using Line Motion Barcodes

Feature Detection. Raul Queiroz Feitosa. 3/30/2017 Feature Detection 1

Camera Calibration for a Robust Omni-directional Photogrammetry System

CS229: Action Recognition in Tennis

Problems with template matching

Accurate Image Registration from Local Phase Information

Transcription:

Map-Enhanced UAV Image Sequence Registration and Synchronization of Multiple Image Sequences Yuping Lin and Gérard Medioni Computer Science Department, University of Southern California 941 W. 37th Place, Los Angeles, CA 90089 {yupingli, medioni}@usc.edu Abstract Registering consecutive images from an airborne sensor into a mosaic is an essential tool for image analysts. Strictly local methods tend to accumulate errors, resulting in distortion. We propose here to use a reference image (such as a high resolution map image) to overcome this limitation. In our approach, we register a frame in an image sequence to the map using both frame-to-frame registration and frameto-map registration iteratively. In frame-to-frame registration, a frame is registered to its previous frame. With its previous frame been registered to the map in the previous iteration, we can derive an estimated transformation from the frame to the map. In frame-to-map registration, we warp the frame to the map by this transformation to compensate for scale and rotation difference and then perform an area based matching using Mutual Information to find correspondences between this warped frame and the map. These correspondences together with the correspondences in previous frames could be regarded as correspondences between the partial local mosaic and the map. By registering the partial local mosaic to the map, we derive a transformation from the frame to the map. With this two-step registration, the errors between each consecutive frames are not accumulated. We then extend our approach to synchronize multiple image sequences by tracking moving objects in each image sequence, and aligning the frames based on the object s coordinates in the reference image. 1. Introduction Geo-registration is very useful process, which can be widely used in UAV (Unmannered Aerial Vehicle) to navigate, or to geo-locating a target, or even to refine a map. Feature-based [10, 5] registration has produced good progress in recent years. Based on the technology of image registration, mosaicing of image sequences can be done by computing the transformations between consecutive frames. To take into account the accumulated error, global registration method[8] or bundle adjustment[12] is usually employed as a global error minimizing approach. However, for long sequences with thousands of frames, bundle adjustment is not feasible in terms of computation. Moreover, offline bundle adjust is not appropriate for many tasks. To perform image mosaicing in a progressive manner, while still preserving accuracy, we propose to use an associated map image as a global reference. A two-step procedure is applied to register an UAV image sequence to the global map. In the first step, we register consecutive frames by estimating the best homography to align the feature points. By using the homography obtained from the first step, we roughly align the UAV image with the global map. The first step provides us an initialization which roughly compensates for the scale and rotation between the UAV image and the map. In the second step, we try to register the roughly aligned UAV image to the map. A similar scenario has been presented in [1]. In area based matching, MSE[6] or normalized correlation[3] are used to determine correspondences between the UAV image and the reference image. However, the UAV images are captured at different times and in different views with respect to the satellite image. The illumination, and the dynamic content (such as vehicles, trees, shadow and so on) could be very different. MSE or normalized correlation in such cases are not robust enough. We propose an approach that applies mutual information[13] to establish correspondences. Mutual information has been successfully applied in establishing correspondence in different modality images, especially in medical image processing. Our experiments show that mutual information does provide strong enough correspondence after roughly compensating for scale and rotation. Register a single frame to the map doesn t make the mosaic seamless enough[9]. We solve this problem by regarding the correspondences acquired in the current UAV frame together with those in several previous frames as correspondences in a partial local mosaic. From these correspon- 1-4244-1180-7/07/$25.00 2007 IEEE

dences, we can derive a homography that further registers the roughly aligned UAV image to the map. By linking this homography and the initialized homography from the first step, we can register the UAV images with the map without incremental accumulated registration errors. Once we can register a UAV stream to a map, we apply it to the synchronization of multiple UAV streams by tracking a common moving object (a vehicle) on the ground plane. By transforming UAV frames to the map, the same object in different UAV streams should produce identical paths, which provides the way to achieve synchronization. partial local mosaic, then register to the map in an iterative manner. 3. Approach 2. Problem formulation and Issues We are given a sequence of UAV images I 0,I 1,..., I n, and a map (usually a satellite image) M. Here, we assume the scene depth is small with respect to the distance from the UAV camera, so the transformation between two UAV images can be represented by a homography. The transformation between an UAV image and the map is also represented as a homography. Let H i,j denote the homography from I i to I j, H i,m denotes the homography from I i to M, namely: H i,j I i = I j (1) H i,m I i = M i (2) M i is the image where I i projects to in M. Note that H j,i = H 1 i,j. Our goal is to derive accurate estimates of H 0,M,..., H i,m so that I 1,..., I n are registered to M and form a mosaic without distortion (Figure 1). Figure 2. Flow chart of registering a UAV stream to a map Figure 1. For each I i,deriveh i,m so that they all register to the map M and form a seamless mosaic. However, the map and images are taken at different times, from different sensors, from different viewpoints, and may have different dynamic contents, such as vehicles or shadows. As a result, it is difficult to simply match each incoming image to the map. Instead, we need to build a Figure 2 illustrates the flow chart of our approach. Each frame I i in the UAV image sequence is first registered to the previous frame to derive H i,i 1. In the second step, we estimate H i,m as H i 1,M H i,i 1, denoted as H i,m. This estimated homography warps I i to an initial estimate region where I i should be registered on the map, denoted by M i. Combining with multiple previously registered frames region on the map M i 1,M i 2,..., their union M i M i 1 M i 2,... forms a partial local mosaic. In the third step, we register the partial local mosaic (the gray

region) to the map, and derive H ɛ, so that the actual homography H i,m that registers I i to M i on the map is derived as H i,m = H ɛ H i,m (3) In the following sections, we first describe the method we use to register I i to the previous image I ( i 1). Then we introduce our method to further fine-tune H i,m so that I i is registered to M more accurately. 3.1. Registration of consecutive UAV images To compute the H i,i 1, we extract feature points from both I i and I i 1 and match them to form correspondences. After trying many kinds of features, we selected SIFT[10] (Scale Invariant Feature Transform) features. SIFT features are invariant to image scale and rotation, and provide robust descriptions across changes in 3D viewpoint. In the feature matching step, we use nearest neighbor matching[2]. Then we use RANSAC[4] to filter outliers among the set of correspondences and derive H i,i 1.HavingH i,i 1 and H i,m, we can roughly register the UAV image to the map by estimating H i,m as: H i,m = H i 1,M H i,i 1 = H 0,M i H k,k 1 (4) k=1 This shows that if there exists a subtle transformation error in each H k,k 1, these errors are multiplied and result in a significant error. Thus, we need to find a way to establish correspondences between the UAV image and the map and refine the homography by using these correspondences. 3.2. UAV to Map Registration Registering an aerial image to a map is a challenging problem [11, 7]. Due to significant differences in lighting conditions, resolution, and 3D viewpoints between the UAV image and the map, the same point may yield quite different SIFT descriptors respectively. Therefore, poor feature matching and poor registration can be expected. Since it is difficult to register an UAV image to the map directly, we make use of H i,i 1 derived from UAV to UAV registration and estimate H i,m as H i,m = H i 1,M H i,i 1,andthen fine-tune it to a better one. Let M i denotes the warped image of I i by H i,m (Figure 2, Step2).Ourgoalistoderive a homography H ɛ that registers M i to the map at M i (Figure 2, Step 4), so that the image is accurately aligned to the map. The advantage of this approach is that with M i roughly aligned to the map, we can perform a local search for correspondence under the same scale and orientation. Therefore the ambiguity of matching and the computation time are far less than directly registering I i to the map. Figure 3. U i denotes the map image transformed back from the same region which M i spans using H ( M,i). P I and P U are points locate at the same coordinate in I i and U i respectively.,s PU are two image patches of the same size centered at point S P I P I and P U respectively, where P I is the corresponding point to P U. 3.2.1 Finding Correspondences between UAV Image and Map To derive H ɛ, we try to find correspondences between M i and the map. However, M i is usually a smaller region than I i ( the map has lower resolution), which means M i preserves less amount of information than I i. Hence we do it in a reverse way. Instead of finding correspondences between M i and the map, we warp the map to I i s coordinate and find correspondences there. As shown in figure 3, letu i be the map image transformed back from the same area which M i covers using H M,i,andP I and P U be points located at the same coordinates in I i and U i respectively. With a good H i,m, P U should have its correspondence P I in I i close to P I. Let S P denotes the image patch centered at point P.ThenP I is determined by having S P most similar to S PU. i To measure the similarity of two images, we use mutual information[4]. Mutual information of two random variables is a quantity that measures the dependence of the two variables. Taking two images (of the same size) as the random variables, it measures how much information two images share, or how much an image depends on the other. It is a more robust in the condition we have compared to measures such as cross-correlation or grey value differences. Let MI(S Pi,S Pj ) be the mutual information of S Pi and S Pj.WefindP I by doing a local search over the pixels P J in P I s neighborhood, and P I is the pixel which yields the maximal MI(S PU,S PJ ), namely: P I =argmax P J MI(S PU,S PJ ) (5)

Figure 4. The correspondences between an UAV image I i and U i. The red points are correspondences with D(P I,P I) over a threshold, which are excluded from the input for RANSAC. The green points and yellow points are the RANSAC inliers and outliers respectively. Figure 5. The upper figure is the registration result of registering only a single frame, while the lower figure is the result of registering a partial local mosaic in each iteration. 3.2.2 Extracting Reasonable Correspondences We can generate as many correspondences as we want by performing such an operation on different points in U i.in our experiments, the correspondences generated could be classified into three categories, which are outliers, correspondences not on a reference planar surface (usually the ground plane), and correspondences on the reference plane. For image patches that have no discriminative patterns, such as those contain only road or uniform areas, the similarity measurement is meaningless and tend to result in outliers. Even if the correspondence is correct, it may be not on the ground plane, such as a match on the roof, and should be discarded when deriving the homography. To derive an accurate H ɛ, we need to filter the first two types of correspondences, and use only the correct ones on the ground plane. To achieve this, we rely on the estimated homography H i,m. As mentioned before, with a good estimate of H i,m, P U should have its correspondence P I in I i close to P I.Let D(P i,p j ) denotes the distance between point P i and P j, we give a threshold to the distance between P I and P I,and consider only the correspondences that have D(P I,P I) under this threshold when deriving H ɛ. As shown in Figure 4, the red points illustrate the correspondences that have their D(P I,P I) over a certain threshold. They are most likely to appear on structures that cause parallax, or regions that are not discriminative enough. 3.2.3 Partial Local Mosaic { } Let C j = (p j 1,pM 1 ), (p j 2,pM 2 ),... denotes the set of accurate correspondences between I j and the map. By transforming all p j s to I i s coordinate, j = {i 1,i 2,..., i n}, we add more pairs of correspondences to derive H ɛ. Conceptually, we can regard them as the correspondences of a partial local mosaic in I i s coordinate. Then we perform RANSAC on the huge set of correspondences to derive H ɛ. Finally, H i,m is derived as H i,m = H ɛ H i,m. Note that the RANSAC inliers belongs to I i are then stored as C i,andc 0 is the set of manually labeled correspondences between I 0 and M. There are several advantages in registering a partial local mosaic instead of registering only a single frame to the map. First, it provides a great amount of correspondences as input to RANSAC, so the derived H ɛ is more robust. Second, since we use correspondences in multiple frames to derived H ɛ, the correspondences in I i only have marginal effect, which implies H i,m will not change abruptly. Most importantly, we can consider the correspondences in the previous frames as a prior knowledge to deriving H ɛ,soevenifthe correct correspondences in I i are not dominant after extracting good correspondences as described in the previous sec-

Figure 6. The upper row are frames synthesized under two distinctive views. The green rectangles are the synthesized moving objects. The lower row are the results by registering the frames in the upper row to the map, and the moving objects are transformed to the same coordinate. tion, they will still stand out after performing RANSAC. As shown in Figure 5, registering only a single frame results in significant discontinuities, while registering a partial local mosaic results in a smooth transition. 4. Synchronization of Multiple Video Streams Once we can register a UAV image sequence to a map, we can synchronize multiple UAV image sequences that have different views, different frame rates, but capture the same area and overlap in time. Any object moving on the ground plane and appearing in all UAV image sequences serves as a clock to synchronize these sequences. By registering these UAV image sequences to the map, the moving objects should generate a single path on the map. Using a sequence alignment algorithm, we can efficiently synchronizetwo or moreuavstreams. Figure6 illustrates the flow chart of our approach. We apply the proposed method on two synthetic sequences. As shown in Figure 7, the figures in the upper row are frames synthesized under two distinctive view points. By registering the frames to the map, the moving objects (green rectangles) are transformed to the same coordinates in the map, so that the two frames are aligned. Figure 7. The upper row are frames synthesized under two distinctive views. The green rectangles are the synthesized moving objects. The lower row are the results by registering the frames in the upper row to the map (the bottom color layer), and the moving objects are transformed to the same coordinate. 5. Experimental Results We show results on two data sets. The UAV image sequences are provided with latitude and longitude information. The satellite images are obtained from Google Earth. The size of the each UAV image is 720 480. We manually label several correspondences between the first frame of the UAV sequences and their corresponding satellite images. In each UAV to Map registration step, we generate 300 samples uniformly. For each sample, an image patch of size 80 80 is used to compute the mutual information. We found that it is a proper size for a discriminative local feature in our UAV image registration. The neighborhood region where we search for a best match is a window of size 40 40. Since mutual information computation is very costly, we only perform UAV to Map registration every 25 frames. Figure 8 shows two examples. In each subfigure, the bottom layer is the reference map image, while the top layer is the mosaic of the UAV image sequence. The results of example 1 with and without UAV to Map registration are shown in 8(a) and 8(b) respectively. The results of case 2 with and without UAV to Map registration are shown in 8(c) and 8(d)

Example 1 Example 2 NumberofFrames 1000 900 w. map w/o map w. map w/o map Total Registeration time in 112 83 100 75 minutes Avg. error per pixel in the last frame compared with ground truth pixels 1.35 12.04 3.17 109.98 Table 1. Experimental results on two examples respectively. To evaluate the accuracy of our approach, we manually labeled some correspondences in the last frame of the image sequence as ground truth, and computed the average absolute difference. Table 1 shows the comparison between registration with and without UAV to Map registration in the two examples. 6. Discussion and Future Work We have proposed a new method to improve the accuracy of mosaicing. An additional map image is provided as a global reference to prevent accumulated error in the mosaic. We use mutual information as a similarity measure between two images to generate correspondences between an image and the map. The main limitation of our approach is the assumption that the scene structure is planar compared with the height of the camera. When the UAV camera is low, parallax between the UAV image and the map is strong, and the similarity measured by mutual information may produce ambiguous affine registration. Another limitation is a failure to recover from several inaccurate registrations in previous frames. Since we rely on the correctness of the correspondences in the previous frames to form a partial local mosaic, if a large proportion of them are wrong, the registration of the current frame will be inaccurate, which in turn affects the registration of the future frames. Our future work aims at classifying features within the same plane. With correspondences of features on the same plane, our assumption is more valid and the UAV to Map registration should be more accurate. In addition, we are studying faster algorithms to speed up the mutual information computation in the UAV to Map registration step so that the overall mosaicing process can be done in reasonable time. References [1] L. G. Brown. A survey of image registration techniques. ACM Comput. Surv., 24(4):325 376, 1992. 1 [2] M. Brown and D. G. Lowe. Recognizing panoramas. In ICCV 03. Proceedings. Ninth IEEE International Conference on Computer Vision, 2003., pages 1218 1225, 2003. 3 [3] R. W. Cannata, M. Shah, S. G. Blask, and J. A. V. Workum. Autonomous video registration using sensor model parameter adjustments. In Applied Imagery Pattern Recognition Workshop, 2000. Proceedings. 29th, pages 215 222. 1 [4] M. A. Fischler and R. C. Bolles. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography. Commun. ACM, 24(6):381 395, 1981. 3 [5] C. Harris and M. Stephens. A combined corner and edge detector. In Proc. 4th Alvey Vision Conferences, pages 147 151, 1988. 1 [6] S. Hsu. Geocoded terrestrial mosaics using pose sensors and video registration. In CVPR 2001. Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, volume 1, pages 834 841. 1 [7] X. Huang, Y. Sun, D. Metaxas, F. Sauer, and C. Xu. Hybrid image registration based on configural matching of scaleinvariant salient region features. In CVPRW 04: Proceedings of the 2004 Conference on Computer Vision and Pattern Recognition Workshop (CVPRW 04) Volume 11, page 167. 3 [8] E.-Y. Kang, I. Cohen, and G. Medioni. A graph-based global registration for 2d mosaics. In ICPR 2000. Proceedings. 15th International Conference on Pattern Recognition, 2000.,volume 1, pages 257 260. 1 [9] Y. Lin, Q. Yu, and G. Medioni. Map-enhanced uav image sequence registration. In WACV 07. IEEE Workshop on Applications of Computer Vision, 2007., pages 15 15. 1 [10] D. G. Lowe. Distinctive image features from scale-invariant keypoints. Int. J. Comput. Vision, 60(2):91 110, 2004. 1, 3 [11] G. Medioni. Matching of a map with an aerial image. In Proceedings of the 6th International Conference on Pattern Recognition, pages 517 519, 1982. 3 [12] B. Triggs, P. F. McLauchlan, R. I. Hartley, and A. W. Fitzgibbon. Bundle adjustment - a modern synthesis. In ICCV 99: Proceedings of the International Workshop on Vision Algorithms, pages 298 372. 1 [13] P. Viola and I. William M. Wells. Alignment by maximization of mutual information. Int. J. Comput. Vision, 24(2):137 154, 1997. 1 Acknowledgments This work was supported by grants from Lockheed Martin. We thank Mark Pritt for providing the data.

(a) (b) (c) (d) Figure 8. (a,b)results of example 1 with and without registering to the map respectively. The sequence starts at the bottom of the map. (b,d)results of example 2 with and without registering to the map respectively. The sequence starts at the left of the image.