Systems and methods for processing multimodal images
A neural network trained with domain-invariant features and homography nets addresses the challenge of aligning multimodal images like SAR and optical images, achieving precise alignment and improved readability by directly matching features across different imaging modalities.
Patent Information
- Application Number
- JP2025541146
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-11-03
- Filing Date
- 2023-08-04
- Publication Date
- 2025-10-31
- Estimated Expiration
- 2043-08-04
AI Technical Summary
Conventional image registration methods are impractical and computationally difficult for aligning images of different modalities, such as optical and radar images, due to the difficulty in defining feature vectors that capture common properties across these different imaging techniques, leading to noise and artifacts in transformation-based approaches.
A neural network architecture utilizing domain-invariant features and homography nets is trained to directly align multimodal images by minimizing a multi-objective loss function combining domain-invariant embedding loss and homography loss, allowing feature matching without transforming images to a common domain.
This approach enables accurate and efficient alignment of multimodal images, preserving geometric information and improving readability, particularly for SAR and optical images, without the need for complex dataset generation or noise introduction.
Smart Images

Figure 2025536154000001_ABST
Abstract
Description
[Technical Field]
[0001] This disclosure relates generally to image processing systems and methods, and more particularly to systems and methods for training neural networks for registration of multimodal images. This disclosure also relates to systems and methods for such registration of multimodal images. [Background technology]
[0002] Image registration geometrically aligns two images with different viewing geometries and / or different deformations to the same coordinate system so that corresponding pixels represent the same object and / or feature. Accurate image-to-image registration improves usability in many applications, including georeferencing, change detection and time series analysis, data fusion, image mosaic formation, digital elevation model (DEM) extraction, 3D modeling, video compression, and motion analysis. Several imaging techniques are available for imaging a scene. Because each imaging technique has its own strengths and weaknesses and may provide different types of information, it may be advantageous in practice to combine different imaging techniques to accurately depict scene features. To successfully integrate two or more imaging systems and / or combine information provided by separate systems, it is necessary to align image data, which may often be acquired in different modalities.
[0003] Conventional image registration methods are applicable to images from a common regime and type. For example, when the images do not belong to a common regime (e.g., when they are of different modalities), registration using conventional methods may be impractical and / or computationally difficult.
[0004] Conventional image registration methods typically align two images (e.g., a first image and a second image) by first defining a feature extraction method to extract a feature vector for each pixel in the images, and then defining, for each pixel in the first image, its corresponding pixel in the second image as the pixel whose feature vector is closest to that pixel's feature vector in the first image (measured by some distance, such as Euclidean distance) (this procedure is called feature matching). This registration method can be successful if the feature vectors have the property that the distance between the feature vectors of corresponding pixels is smaller than the distance between the feature vectors of non-corresponding pixels. Feature vectors with this property are easier to define for images formed by the same imaging technology. For example, for grayscale optical images, a histogram of image gradients at each pixel is a commonly used type of feature vector (e.g., SIFT features belong to this type). However, if the images to be aligned are formed by different imaging technologies, the pixel values in the two images represent different physical quantities, making it difficult to define a feature vector with the desired properties. For example, in an optical image, pixel values represent optical reflectance, and in a radar image, pixel values represent permittivity. Optical and radar images can be very different in appearance even when they are images of a common scene, and in such cases, a histogram of image gradients does not have the desired properties for feature matching.
[0005] Therefore, to meet the requirements of modern imaging applications, there is a need to develop universally applicable image registration systems and methods that are suitable for multimodal images of three-dimensional (3D) scenes. There is also a need to develop such systems and methods that avoid excessive processing burdens and instead utilize simplified pipelines for processing multimodal images. Summary of the Invention
[0006] Image registration is the process of converting different sets of data into a single coordinate system. The data can be multiple photographs, data from different sensors, time, depth, or perspective. It is used in computer vision, medical imaging, aerial photography, remote sensing (cartography update), and the compilation and analysis of satellite images and data. For example, images of a three-dimensional scene taken from different viewing angles with different illumination spectral bands can potentially capture a wealth of information about the scene, provided the images can be efficiently fused. Registering these images is a critical step for successful fusion and / or for comparing or integrating data obtained from these different measurements.
[0007] Applying image registration methods to accurately align multimodal images is a tedious task when the images originate from different domains and are of different modalities. Images of a scene may be of different modalities when acquired from different platforms and sensors and / or using different imaging techniques. The modality of an image is primarily governed by the measured spectrum of light in the image. For example, optical sensors typically operate within the visible light spectrum, whereas radar typically operates within the microwave spectrum. Thus, optical images display scene colors (e.g., red, green, and blue), while radar images display scene materials (e.g., water, metal, and soil). Such images are of different modalities, and conventional registration approaches cannot be directly applied to them. One example of such images of a modality different from optical images is synthetic aperture radar (SAR) imagery. Synthetic aperture radar (SAR) remote sensing imaging has significant advantages in all-day and all-weather conditions. SAR images generally contain a wealth of information, such as geometric structures and material properties, which are important and urgently needed in various applications, including mapping and military, etc. However, SAR images are not very readable and are context-dependent.
[0008] Some exemplary embodiments attempt to improve the readability of multimodal images, such as SAR and optical images. One work focuses on overlaying an optical image onto a SAR image by image registration of the two images. However, available registration techniques do not allow for direct image registration between images of different modalities, so to use these techniques, alignment methods must transform the SAR and optical images into a common space before image registration is performed. However, such transformation is difficult and can add noise and artifacts to the transformed images.
[0009] For example, some example embodiments recognize that generating a complete optical image (or artificial optical image) from non-optical images of different modalities requires a very large dataset for training a neural network and / or a complex architecture of the neural network. There are several neural network-based SAR-to-optical image conversion methods. However, the connection between the target optical image and the generated artificial optical image is not very strong. In addition, the intensity and spectral information of the target optical image are not comprehensively considered in such approaches. Furthermore, the generated artificial optical image may not reliably preserve the geometric information of the original SAR image. Therefore, an objective of some embodiments is to provide an alternative method for image registration that does not require image transformation to a common domain.
[0010] Some embodiments are based on the understanding that in certain applications, the underlying goal of image registration may simply be the alignment of images of different modalities. Some exemplary embodiments are also based on the recognition that in such applications, the generation of an artificial optical image from non-optical images of different modalities is not required, and indeed is unnecessary. Instead of generating an artificial optical image using network-generated features, such alignment can be performed based on features common to the different modalities. Such features are referred to herein as domain-invariant features. Once these domain-invariant features are extracted from images of different modalities, feature matching can be performed directly.
[0011] Some exemplary embodiments are based on the observation that the geometries of images to be aligned can be related by a two-dimensional (2D) homography. Therefore, when images of the same scene are of the same modality, various neural network structures based on the principle of homography can be used for feature registration. Such homography-based networks are referred to herein as homography nets. Examples of homography net neural network architectures include convolutional neural networks (CNNs), which utilize multilayer nonlinear information processing to perform feature extraction, transformation, pattern analysis, and classification. Another example of a homography net is a deep CNN (DCNN) feedforward network with two architectures: a regression network that directly estimates real-valued homography parameters, and a classification network that generates a distribution over quantized homographies.
[0012] Homographies and / or homography nets are not directly applicable to multimodal images. However, some embodiments recognize that the shortcomings of homography nets that create problems for multimodal image registration can be an advantage for extracting domain-invariant features, since the shortcomings of homography nets can be used as a test of the invariance of the extracted images. Indeed, if the extracted features are domain-invariant, then homography is possible; otherwise, they are domain-specific.
[0013] With this understanding, some embodiments use a homography net to train a feature extraction network for extracting domain-invariant features for multimodal images. To achieve this goal, some embodiments jointly train the feature extraction network with the homography net to minimize the homography loss of the extracted features in addition to, or instead of, minimizing the embedding loss.
[0014] In some exemplary embodiments, a neural network is utilized that includes a feature extraction subnet for extracting domain-invariant features and a homography net for estimating homographies between the extracted features of the input image. To support keypoint matching functionality, the neural network may be complemented with another feature extraction subnet for extracting domain-specific features. In this regard, domain-invariant features may be considered as features that can be directly compared between two images, while domain-specific features are features that cannot be directly compared.
[0015] More precisely, according to some example embodiments, for two images from two different modalities, a domain-invariant feature is a vector of the same dimension such that when calculating the distance between a feature vector of a pixel in the first image and a feature vector of a pixel in the second image, the distance is small if the two pixels correspond and large if the two pixels do not correspond. Thus, these feature vectors are invariant across different image modalities and can be directly compared for feature matching purposes.
[0016] On the other hand, domain-specific features are not designed to be directly compared because these feature vectors may contain information that is not shared between different modalities. The characteristics of domain-specific features depend on the embedding loss of these feature vectors used during training. For example, let p1 and p2 be feature vectors of a pixel pair in a first image, and let d1(p1,p2) be the feature distance of the pair in the first image. Similarly, let q1 and q2 be feature vectors of a pixel pair in a second image, and let d2(q1,q2) be the feature distance of the pair in the second image. In that case, the embedding loss can be given by y*D(d1(p1,p2),d2(q1,q2))+(1-y)*max(0,CD(d1(p1,p2),d2(q1,q2))), where y=1 if p1 corresponds to q1 and p2 corresponds to q2, and y=0 otherwise. where d1 is the distance defined in the feature space of the first image, d2 is the distance defined in the feature space of the second image, D is the distance defined on real numbers, and C is a constant. The neural network is trained to generate p1, p2, q1, and q2 such that if p1 corresponds to p2 and q1 corresponds to q2, then D(d1(p1,p2),d2(q1,q2)) is small, and otherwise D(d1(p1,p2),d2(q1,q2)) is larger. Therefore, using this embedding loss, D(d1(p1,p2),d2(q1,q2)) can be used as a similarity measure for feature matching.
[0017] Also, according to some example embodiments, the homography is a 3x3 matrix, and the homography loss can be any distance defined on the matrix, such as the Frobenius norm between the ground truth homography and the homography estimated by the neural network. The embedding loss for domain-invariant features can be defined as y*d(p,q)+(1-y)*max(0,Cd(p,q)), where d is a distance defined on vectors, such as Euclidean distance, and y=1 if p and q are corresponding points and y=0 otherwise. Because the network is trained to generate features p and q such that d(p,q) is small when p corresponds to q and large when p does not correspond to q, this embedding loss allows d(p,q) to be used as a similarity measure for feature matching.
[0018] Some example embodiments utilize a trained neural network to determine domain-invariant features from a set of multimodal images. According to some exemplary embodiments, the neural network is designed to generate both domain-invariant and domain-specific features suitable for use in a fused Gromov-Wasserstein (GW) distance to generate high-probability corresponding points.
[0019] Toward these ends, some exemplary embodiments provide a computer-implemented method for training a neural network to extract domain-invariant features suitable for image registration. In this regard, the method includes collecting a first set of multimodal images including at least a first image of a first modality and at least one corresponding second image of a second modality different from the first modality. The method further includes extracting a first feature from the at least one first image using a first feature extraction subnet of the neural network and extracting a second feature from the at least one second image using a second feature extraction subnet of the neural network. The method further includes comparing the first feature with the second feature to estimate a domain-invariant embedding loss for the extracted features of the first set of multimodal images, and submitting the first feature and the second feature to a homography net of the neural network to estimate a homography loss for the extracted features of the first set of multimodal images. The method further includes training the first feature extraction subnet, the second feature extraction subnet, and the homography net of the neural network to jointly minimize a multi-objective loss function including a domain-invariant embedding loss and a homography loss.
[0020] Some exemplary embodiments also provide a system for training a neural network to extract domain-invariant features suitable for image registration. The system includes a processor configured to execute instructions stored in a memory to cause the system to collect a first set of multimodal images including at least a first image of a first modality and at least one corresponding second image of a second modality. The system also extracts a first feature from the at least one first image using a first feature extraction subnet of the neural network and a second feature from the at least one second image using a second feature extraction subnet of the neural network. The first feature is compared with the second feature to estimate a domain-invariant embedding loss of the extracted feature for the first set of multimodal images, and the first feature and the second feature are submitted to a homography net module of the neural network to estimate a homography loss of the extracted feature for the first set of multimodal images. The system trains a neural network by training a first feature extraction subnet and a second feature extraction subnet and a homography net of the neural network to jointly minimize a multi-objective loss function that includes a domain-invariant embedding loss and a homography loss.
[0021] Some exemplary embodiments also provide a non-transitory computer-readable medium having stored thereon computer-executable instructions that, when executed by a computer, cause the computer to perform a method for training a neural network to extract domain-invariant features suitable for image registration. In this regard, the method includes collecting a set of multimodal images including at least a first image of a first modality and at least one corresponding second image of a second modality different from the first modality. The method further includes extracting a first feature from the at least one first image using a first feature extraction subnet of the neural network and extracting a second feature from the at least one second image using a second feature extraction subnet of the neural network. The method further includes comparing the first feature with the second feature to estimate a domain-invariant embedding loss for the extracted features of the set of multimodal images, and submitting the first feature and the second feature to a homography net of the neural network to estimate a homography loss for the extracted features of the second set of multimodal images. The method further includes training the first feature extraction subnet, the second feature extraction subnet, and the homography net of the neural network to jointly minimize a multi-objective loss function including a domain-invariant embedding loss and a homography loss.
[0022] The presently disclosed embodiments are further described below with reference to the following drawings, in which: The drawings shown are not necessarily to scale, emphasis instead generally being placed upon illustrating the principles of embodiments of the present disclosure. [Brief explanation of the drawings]
[0023] [Figure 1A] 1 illustrates an exemplary method for training a neural network to predict domain-invariant features of multimodal images, according to some exemplary embodiments. [Figure 1B]1 illustrates a process for computing a domain-invariant embedding loss between a pair of multimodal images, according to some example embodiments. [Figure 1C] 1 illustrates a process for estimating homography loss between a pair of multimodal images, according to some example embodiments. [Figure 1D] 1B illustrates an exemplary structure of a homography net for the neural network of FIG. 1A, according to some exemplary embodiments. [Figure 1E] 1 illustrates a process for creating a single training example for homography estimation, according to some example embodiments. [Figure 1F] 1D illustrates a parameterization of the homography estimated by the homography net of FIG. 1D, according to some example embodiments. [Figure 1G] 1B illustrates an example of a multi-objective loss function utilized to train the neural network of FIG. 1A, according to some exemplary embodiments. [Figure 2A] 1 illustrates a multimodal image registration method for aligning a set of multimodal images using a trained neural network, according to some example embodiments. [Figure 2B] 1 illustrates an exemplary method for estimating a homography using extracted features of a set of multimodal images, according to some exemplary embodiments. [Figure 2C] 1 illustrates a process for computing a domain-invariant embedding loss between a pair of multimodal images, according to some example embodiments. [Figure 3] FIG. 1 illustrates a workflow describing the operation of a neural network in a training pipeline and a prediction pipeline, according to some example embodiments. [Figure 4] FIG. 4 illustrates a workflow illustrating image alignment via optimal transport using the neural network of FIG. 3, in accordance with some exemplary embodiments. [Figure 5A]FIG. 1 is a block diagram illustrating the application of neural networks for control tasks, according to some illustrative embodiments. [Figure 5B] 2B is a schematic diagram illustrating a system for enhancing an image using the image registration method of FIG. 2A, according to some exemplary embodiments. [Figure 6] FIG. 5C is a flow diagram of the system of FIG. 5B for a cloud removal application, according to some exemplary embodiments. [Figure 7] FIG. 1 shows a block diagram of a system for training a neural network and a system for image registration and fusion that may be implemented using alternative computers or processors, according to some exemplary embodiments.
[0024] While the above-identified drawing figures set forth embodiments disclosed herein, other embodiments are contemplated, as noted in the discussion. The present disclosure presents exemplary embodiments by way of representation and not limitation. Those skilled in the art can devise numerous other modifications and embodiments that fall within the scope and spirit of the principles of the disclosed embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0025] The following description provides exemplary embodiments only and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the following description of exemplary embodiments provides those skilled in the art with an enabling description for implementing one or more exemplary embodiments. Contemplated are various changes that may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosed subject matter as set forth in the claims.
[0026] In the following description, specific details are given for a thorough understanding of the embodiments. However, it will be understood by those skilled in the art that the embodiments may be practiced without these specific details. For example, systems, processes, and other elements in the disclosed subject matter may be shown as components in block diagram form so as not to obscure the embodiments in unnecessary detail. In other instances, well-known processes, structures, and techniques may be shown without unnecessary detail to avoid obscuring the embodiments. Furthermore, like reference numbers and names in the various drawings indicate like elements.
[0027] Also, particular embodiments may be described as a process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. While a flowchart may describe operations as a sequential process, many of the operations can be performed in parallel or simultaneously. Additionally, the order of operations may be rearranged. A process may terminate when its operations are completed, but may have additional steps not discussed or included in the diagram. Moreover, not all operations in any specifically described process may occur in all embodiments. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, the termination of the function may correspond to a return of the function to the calling function or the main function.
[0028] Furthermore, embodiments of the disclosed subject matter may be implemented, at least in part, either manually or automatically. Manual or automatic implementations may be performed or at least assisted by machine, hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware, or microcode, the program code or code segments to perform the necessary tasks may be stored on a machine-readable medium. The necessary tasks may be performed by a processor.
[0029] Image registration is the process of converting different sets of data into a single coordinate system. The data can be multiple photographs, data from different sensors, time, depth, or perspective. It is used in computer vision, medical imaging, aerial photography, remote sensing (cartography update), and the compilation and analysis of satellite images and data. For example, images of a three-dimensional scene taken from different viewing angles with different illumination spectral bands can potentially capture a wealth of information about the scene, provided the images can be efficiently fused. Registering these images is a critical step for successful fusion and / or for comparing or integrating data obtained from these different measurements.
[0030] Applying image registration methods to align multimodal images, i.e., when the images are from different domains, is a tedious task. Images of a scene may be of different modalities when acquired from different platforms and sensors and / or using different imaging techniques. The modality of an image may be governed by the measured spectrum of light in that image. Generating a complete optical image (or an artificial optical image) from non-optical images of different modalities requires a very large dataset for training neural networks and / or complex architectures of neural networks. It is recognized that conventional image registration techniques cannot be directly applied to images of different modalities. Exemplary embodiments described herein provide an image registration technique that aligns multimodal images based on features common to different modalities. Such features may be referred to as domain-invariant features. Extracting these domain-invariant features from images of different modalities allows for direct feature matching. In this regard, exemplary embodiments provide a neural network that can provide such domain-invariant features suitable for image registration from multimodal images. Obtaining such a robust neural network that can provide domain-invariant features for image registration from multimodal images requires a robust design of the neural network's subnetwork and a novel method for training such a neural network.
[0031] FIG. 1A illustrates an exemplary method 10A for training a neural network 100A to predict domain-invariant features of a multimodal image, according to some exemplary embodiments. Method 10A may be performed by a system for training a neural network. In some exemplary embodiments, the system may include circuitry suitable for data acquisition, data processing, data transmission, and control of one or more components. The processing circuitry may be implemented by one or more processors 110 and memory 112. Memory 112 may store executable instructions that may be executed by the one or more processors 110. Additionally or optionally, in some exemplary embodiments, the system may also include a neural network, such as neural network 100A. Neural network 100A may include multiple subnets, each configured to perform some or a specific function of neural network 100A. For example, according to some exemplary embodiments, neural network 100A may include a first subnet 104A, a second subnet 106A, and a third subnet 108A. According to some example embodiments, the third subnet 108A may be a homography net. Fewer or more subnets may be selected according to the intended application and needs.
[0032] Method 10A includes step 3 of collecting a set of multimodal images. In this regard, system 100A may be coupled to multiple sensors providing images of a scene and / or one or more data storages storing image data of the scene obtained from the multiple sensors. Regardless of the source of the images, the collected set of multimodal images may include images of the scene in different modalities. According to some example embodiments, the images of the scene may be of different modalities when acquired from different platforms and sensors and / or using different imaging techniques. Some examples of images involving different modalities include optical color images, optical grayscale images, depth images, infrared images, and SAR images. The modality of an image is primarily governed by the measured spectrum of light in the image. For example, optical sensors typically operate within the visible light spectrum, while radar typically operates within the microwave spectrum. Thus, optical images display the colors of a scene (e.g., red, green, blue), while radar images display the materials of a scene (e.g., water, metal, soil).
[0033] According to some exemplary embodiments, the processor 110 can collect at least a first image and at least a second image as a set of multimodal images. The first image can be of a first modality, and the second image can be of a second modality different from the first modality. For example, without limitation, the first image can be an optical image, and the second image can be a SAR image. The processor 110 can obtain a first feature corresponding to the first image and a second feature corresponding to the second image. To this end, the processor 110 can invoke the first feature extraction subnetwork 104A to extract (5) the first feature from the first image and the second feature extraction subnetwork 106A to extract (7) the second feature from the second image. The first feature and the second feature can be common to the first modality and the second modality. In other words, the first feature and the second feature can be domain-invariant features for the first image and the second image, respectively.
[0034] Because the neural network 100A has not been previously trained, the extracted first and second features may not be completely domain-invariant for the first and second images. Therefore, the training phase must consider the amount of domain-invariant loss corresponding to the extracted first and second features. To this end, the method 10A includes comparing the first features with the second features to estimate a domain-invariant embedding loss for the extracted features of the set of multimodal images (9). Next, a detailed description of the calculation of the domain-invariant embedding loss for the extracted features is provided.
[0035] 1B shows a process 10B for computing a domain-invariant embedding loss between a pair of multimodal images according to some example embodiments. The embedding loss for domain-invariant features can be defined as y*d(p,q)+(1-y)*max(0,Cd(p,q)), where C is a manually adjusted constant, d is a distance defined for vectors, such as Euclidean distance, p represents the feature vector of a pixel in the first image, q represents the feature vector of a pixel in the second image, and y=1 if p and q are feature vectors of corresponding points and y=0 if p and q are feature vectors of non-corresponding points. Using this embedding loss, d(p,q) can be used as a similarity measure for feature matching, since the network is trained to generate features p and q such that d(p,q) is small if p corresponds to q and large if p does not correspond to q.
[0036] A pair of multimodal images 150A, 150B may be collected as image 1 and image 2 by a processor (such as processor 110 of FIG. 1A). The processor submits the pair of multimodal images 150A, 150B to a neural network (such as neural network 100A) to extract features common to both modalities (i.e., domain-invariant features) (152). The neural network provides feature vectors 154A, 154B corresponding to all pixels in the first image 150A and the second image 150B, respectively. The processor then samples corresponding and non-corresponding pixels between the first and second images based on ground truth data for the pixels (156). To this end, the processor may be coupled to a memory or database that stores ground truth data for the pixels. A domain-invariant embedding loss is then calculated for the two images based on the sampled pixels (158).
[0037] 1A , the processor invokes the homography net modules 108A of the neural network 10A in parallel to estimate the homography loss of the extracted features of the set of multimodal images (11). In this regard, the homography net 108A may obtain the extracted first and second features from the first and second subnets 104A and 106A of the neural network 10A. The estimation of the homography loss of the extracted features will now be described in more detail.
[0038] FIG. 1C illustrates a process 10C for estimating homography loss between a pair of multimodal images according to some exemplary embodiments. A pair of multimodal images 150A, 150B may be collected as image 1 and image 2 by a processor (such as processor 110 of FIG. 1A). The processor submits the pair of multimodal images 150A, 150B to a neural network (such as neural network 100A) to extract 152 features common to both modalities (i.e., domain-invariant features). The neural network provides feature vectors 154A, 154B corresponding to all pixels in the first image 150A and the second image 150B, respectively. Using the extracted feature vectors of the pair of multimodal images (150A, 150B), the processor estimates 160 a homography between the pair of multimodal images as a 3×3 real-valued matrix. Homography estimation is described below with reference to FIG. 1D. The processor also obtains ground truth homography data (162), e.g., from memory or a database, as a 3x3 real-valued matrix. The processor compares (164) the homography estimated in step 160 with the ground truth homography data obtained in step 162 to estimate (166) a homography loss for the extracted features.
[0039] FIG. 1D illustrates an exemplary structure of the homography net 108A of the neural network 100A of FIG. 1A, according to some exemplary embodiments. In some exemplary embodiments, the homography net is a deep convolutional neural network (CNN) that directly generates a homography relating two images. As shown, the homography net is a VGG-type network including eight convolutional layers (172A-172H). A max-pooling layer (174, 176, 178) may be used after every two convolutional layers. The convolutional layers may be followed by two fully connected layers (179A and 179B). The final layer 179B includes eight elements representing the eight parameters of the homography. The weights of the network may be trained using a squared Euclidean loss. The homography net 108A may be operated on a pair of images 170A and 170B.
[0040] The homography relating two images (e.g., images 170A and 170B) can be viewed as a projective transformation relating the two images, undergoing a rotation about the camera center. To be precise, the homography is a 3x3 matrix, and the homography loss can be any distance defined on the matrix; for example, it can be the Frobenius norm between the ground truth homography data 162 and the homography 160 estimated by the neural network. The entire homography estimation problem can be solved by a deep convolutional neural network, achieving faster turnaround and reducing computational complexity.
[0041] Training a deep convolutional network from scratch can require a large amount of data. To meet this requirement, a nearly unlimited number of labeled training examples may be generated by applying random projective transformations to a large dataset of natural images. FIG. 1E illustrates a process for creating a single training example, according to some example embodiments. An image sensor, such as a camera 180, may provide an image I (labeled 182A) (18A). To generate a single training example, a square patch 184 may first be cropped from image I (182A) at a position p (the boundaries may be avoided to prevent boundary artifacts later in the data generation pipeline). This random crop is then used to generate a square patch 184. p The four corners of patch 184 are then randomly perturbed (18B) by values in the range [-ρ,ρ], shown as perturbations 186A, 186B, 186C, and 186D in FIG. 1E. The four correspondences are then converted into a homography H AB Then, the inverse of this homography H BA =(H AB ) -1 is applied to image 182A to produce image I' (labeled 182B) at 18D. p (labeled 189) is cropped from I' (182B) at position p.
[0042] Then, two patches I p and I' p (184 and 189) are stacked channel by channel (18E) to create a two-channel image, which is fed directly into the homography net 108A (18F). ABA four-point parameterization of is used as the associated ground truth training label. In this way, the subnet may be trained according to the desired output using suitable input images. Control over the training pipeline provides flexibility regarding the type of visual effect desired, the type of features desired, and the granularity of the estimated homography from the neural network.
[0043] FIG. 1F illustrates a parameterization of a homography estimated by a homography net, according to some example embodiments. The homography H is a 3×3 matrix 19A that transfers points from one image to another, assuming that the two images are photographs of a common planar scene taken from different viewing angles. A 3D scene is said to be planar if objects within the scene are at the same depth. For each point in the 3D scene captured in both images, let (x, y) be the pixel location of this point in the first image and (x', y') be the pixel location of this point in the second image. Then, (x, y) and (x', y') are related by the homography H as (x', y', 1) = H(x, y, 1), where (x, y, 1) and (x', y', 1) are considered column vectors, and H(x, y, 1) is a standard matrix-vector multiplication. Note that a common homography, H, applies to all corresponding pixel pairs in the two images. For ease of representation, the homography matrix, H19A, is vectorized by concatenating the rows of H into the vector, H_vec19B. Since the last element of H_vec is a constant 1, the homography net only needs to learn the first eight elements of H_vec, which are H'_vec19C.
[0044] 1A , after obtaining the domain-invariant embedding loss in step 9 and the homography loss in step 11 for the extracted features, the processor trains the neural network 100A to jointly minimize (13) a multi-objective loss function including the domain-invariant embedding loss and the homography loss by training the first feature extraction subnet 104A, the second feature extraction subnet 106A, and the homography net 108A of the neural network 100A. In this regard, the processor formulates the multi-objective loss function as a function of the losses calculated for the extracted features. For example, in some exemplary embodiments, the processor may formulate the multi-objective loss function by assigning individual weights to each component loss.
[0045] 1G shows one such example of a multi-objective loss function 199 defined by N loss functions, each with an assigned weight. Each loss function (192A, 192B, ... 192N) has a corresponding assigned weight (194A, 194B, ... 194N). The weighted losses (196A, 196B, ... 196N) for each loss function (192A, 192B, ... 192N) are calculated and summed (198) to obtain the total loss or multi-objective loss function 199. Some examples of loss functions (192A, 192B, ... 192N) include a domain-invariant embedding loss of extracted features for a pair of multimodal images, a homography loss between pairs of multimodal images, a domain-specific embedding loss of extracted features for a pair of multimodal images, etc.
[0046] Referring back to FIG. 1A , the processor trains the subnets of the neural network 100A to jointly minimize the multi-objective loss function thus formulated. Minimizing a particular component loss of the multi-objective loss function includes comparing the corresponding loss or weighted loss with a corresponding threshold. A subnet may be considered trained when the amount of the corresponding loss or weighted loss is less than the respective threshold for that loss. In some other exemplary embodiments, a subnet may be considered trained when the amount of the corresponding loss or weighted loss is greater than the respective threshold for that loss. In yet some other exemplary embodiments, a subnet may be considered trained when the amount of the corresponding loss or weighted loss is equal to the respective threshold for that loss.
[0047] In this manner, exemplary embodiments provide systems and methods for training a neural network 100A to predict domain-invariant features for multimodal images. Such a trained neural network, capable of providing domain-invariant features of acceptable accuracy for multimodal images, can be utilized to perform image registration of the multimodal images. Some exemplary embodiments provide methods and systems for image registration using neural networks trained to provide such domain-invariant features from a set of multimodal images, as described next.
[0048] FIG. 2A illustrates a multimodal image registration method 20A for aligning a set of multimodal images using a trained neural network 100B, according to some exemplary embodiments. The neural network 100B has been trained according to the method 10A shown in FIG. 1A. The registration method 20A may be performed by suitable processing circuitry, such as a processor and memory storing instructions executable by the processor. The processor collects 22 a set of multimodal images of a scene. According to some exemplary embodiments, the set of images may include a first test image of a first modality and a second test image of a second modality. For example, in some exemplary embodiments, the first test image may be a SAR image of a scene, and the second test image may be an optical image of the same scene.
[0049] The processor then invokes trained neural network 100B for feature extraction 24. In this regard, the processor may invoke first feature extraction subnet 104B of trained neural network 100B to extract 25 first test features from the first test image. In some exemplary embodiments, trained first feature extraction subnet 104B provides domain-invariant features from the first test image. The processor may simultaneously or sequentially invoke second feature extraction subnet 106B of trained neural network 100B to extract 27 second test features from the second test image. In some exemplary embodiments, trained second feature extraction subnet 106B provides domain-invariant features from the second test image.
[0050] To support the keypoint matching function, trained neural network 100B may be supplemented with another set of feature extraction subnetworks to extract domain-specific features for each of the multimodal images as part of feature extraction 24. In this regard, the processor may invoke a third feature extraction subnetwork 110B of trained neural network 100B to extract 29 third test features from the first test image. In some exemplary embodiments, third feature extraction subnetwork 110B provides domain-specific features from the first test image. Additionally, the processor may invoke a fourth feature extraction subnetwork 112B of trained neural network 100B to extract 31 fourth test features from the second test image. In some exemplary embodiments, fourth feature extraction subnetwork 112B provides domain-specific features from the second test image.
[0051] Once the set of features from the test images is obtained in block 24, a homography relating the two test images may be estimated (32). To this end, in some exemplary embodiments, the extracted first test feature and the extracted second test feature may be sent to a trained homography net 108B to generate an estimated homography between the first test image and the second test image. Alternatively or additionally, according to some example embodiments, to obtain a potentially more reliable homography, the processor may utilize domain-specific features in addition to domain-invariant features to estimate a homography relating the two test images. FIG. 2B illustrates an exemplary method for estimating a homography using extracted features of a multimodal image. From among the extracted features 24 of the multimodal image, the processor compares the extracted first test feature with the extracted second test feature (33) and simultaneously compares the extracted third test feature with the extracted fourth test feature (35) to determine eight or more corresponding points for the two test images (37). These corresponding points are used to estimate a homography 39. Referring again to FIG. 2A, using the estimated homography from the homography net and / or the method of FIG. 2B, the processor aligns the first test image and the second test image based on the estimated homography 34.
[0052] As mentioned above, to support the keypoint matching function, the neural network may be supplemented with another set of feature extraction subnetworks to extract domain-specific features. The domain-specific features of each of the multimodal images may be utilized to calculate a domain-specific embedding loss for the multimodal images. FIG. 2C illustrates a process for calculating a domain-invariant embedding loss between a pair of multimodal images according to some exemplary embodiments. A pair of multimodal images 250A, 250B may be collected by a processor as image 1 and image 2. The processor submits the pair of multimodal images 250A, 250B to a neural network to extract features specific to each of the modalities (i.e., domain-specific features) (252). The neural network provides feature vectors 254A, 254B corresponding to all pixels in the first image 250A and the second image 250B, respectively.
[0053] The domain-specific features of two images are not designed to be directly compared because these feature vectors may contain information that is not shared between different modalities. The characteristics of the domain-specific features depend on the embedding loss of these feature vectors used during training. For example, let p1 and p2 be feature vectors of a pixel pair in the first image, and let d1(p1,p2) be the feature distance of the pair in the first image. Similarly, let q1 and q2 be feature vectors of a pixel pair in the second image, and let d2(q1,q2) be the feature distance of the pair in the second image. Then, the embedding loss can be given by y*D(d1(p1,p2),d2(q1,q2))+(1-y)*max(0,CD(d1(p1,p2),d2(q1,q2))), where y=1 if p1 corresponds to q1 and p2 corresponds to q2, and y=0 otherwise. where d1 is the distance defined in the feature space of the first image, d2 is the distance defined in the feature space of the second image, D is the distance defined on real numbers, and C is a constant. The neural network is trained to generate p1, p2, q1, and q2 such that if p1 corresponds to p2 and q1 corresponds to q2, then D(d1(p1,p2),d2(q1,q2)) is small, and otherwise D(d1(p1,p2),d2(q1,q2)) is larger. Therefore, using this embedding loss, D(d1(p1,p2),d2(q1,q2)) can be used as a similarity measure for feature matching.
[0054] 2C, a processor samples 256 corresponding and non-corresponding pixels between a first image 250A and a second image 250B based on pixel ground truth data. To this end, the processor may be coupled to a memory or database that stores the pixel ground truth data. A domain-specific embedding loss is then calculated for the two images based on the sampled pixels (258).
[0055] FIG. 3 illustrates a workflow describing the operation of a neural network in the training and prediction pipelines, according to some example embodiments. The input to the neural network is a multimodal image pair, e.g., SAR image 302A and optical image 302B. Two autoencoders, U-net 304 and U-net 306, are used to generate pixel-wise features for SAR image 302A. Pixel-wise features mean that a high-dimensional feature vector is generated for each pixel in the image. Similarly, U-net 310 and U-net 312 are used to generate pixel-wise features for optical image 302B. U-net 304 and U-net 310 have the same structure and share weights, i.e., they are identical and represent feature extraction functions that extract domain-specific features. A sampling module 322 samples corresponding and non-corresponding pixel pairs. Specifically, first, a pair of pixels in the SAR image is randomly selected, and then, according to the ground truth correspondence, two corresponding pixels are found in the optical image (when sampling corresponding pixels) or two non-corresponding pixels are randomly selected (when sampling non-corresponding pixels). The domain-specific feature vectors of these sampled pairs are then sent to module 324 to calculate the domain-specific embedding loss. Similarly, U-net 306 and U-net 312 are identical and represent feature extraction functions that extract domain-invariant features. Sampling module 328 samples corresponding and non-corresponding pixels. Specifically, first, a pixel in the SAR image is randomly selected, and then, according to the ground truth correspondence, two corresponding pixels are found in the optical image (when sampling corresponding pixels) or two non-corresponding pixels are randomly selected (when sampling non-corresponding pixels). The domain-invariant feature vectors of these sampled pixels are then sent to module 330 to calculate the domain-invariant embedding loss. Furthermore, the generated pixel-wise domain-invariant feature vectors are also sent to the homography net 308 to learn the homography.The output of the homography net 308 is the estimated homography. Together with the ground truth homography 332, the homography loss is computed in module 326. The total loss is obtained by summing (332) the domain-specific loss (output of 324), the domain-invariant loss (output of 330), and the homography loss (output of 326). The goal is to estimate the weights in the four U-nets 304, 310, 306, 312 and the weights in the homography net 308 by minimizing the total loss (output of the summation operation 332).
[0056] Figure 4 illustrates a workflow for image registration via optimal transport using the neural network of Figure 3, according to some example embodiments. After the network of Figure 3 is trained, the trained U-Nets 304, 310, 306, and 312 can be used to perform pixel-wise feature extraction 404 on the two images to be aligned. Pixels are selected using standard keypoint detection methods 402, such as Harris Corner, and the feature vectors of those pixels (including both domain-invariant and domain-specific) are used to compute two cost terms for the fused Gromov-Wasserstein distance with uniform marginal distribution, which serve as keypoint matching 406. Specifically, one cost term attempts to match pairs of keypoints in one image to pairs of keypoints in the other image such that the transport cost distance of the domain-specific features extracted from the pair in the first image is similar to the transport cost of the domain-specific features extracted from the pair in the second image for the corresponding pair, and the other cost term attempts to match keypoints in one image to keypoints in the other image such that the domain-invariant features extracted from the points in the first image are similar to the domain-invariant features extracted from the points in the second image for the corresponding points. For each transport cost, the similarity may be determined against a corresponding threshold. Furthermore, the corresponding threshold may be configurable as needed. Calculating the fused Gromov-Wasserstein distance involves finding an optimal combination, which gives the probability that each keypoint in one image corresponds to a keypoint in the other image and minimizes the combination of the two cost terms. A post-selection process 408 is performed to select corresponding points estimated with high probability according to the optimal combination. The number of points to be selected may be user-defined, and the threshold defining high probability may also be configurable. The selected corresponding points are then used to estimate a homography, for example, by a RANSAC algorithm, 410. Finally, the estimated homography is used to warp 412 one image to match the other image.
[0057] FIG. 5A shows a block diagram 500A depicting the application of a trained neural network for a control task, according to some exemplary embodiments. A set of multimodal images 502 may be acquired by a processor 504, which, in conjunction with a neural network 506, may perform image registration on the set of multimodal images 502 to generate aligned images 508. These aligned images 508 may be further processed (510) internally by the processor 504 or by one or more external processors to generate control commands for one or more control applications 512. Thus, the processor 504 helps align a set of multimodal images 502 that otherwise could not be properly processed for the control application 512 in block 510. The control application 512 may include, for example, controlling a robot in an assembly line where input images are captured with different modalities. In some exemplary embodiments, the control application 512 may include controlling one or more operations in a vehicle having multiple image sensors (CCD, LiDAR) to capture road data. The vehicle may be manually driven, fully autonomous, or semi-autonomous. In yet some other exemplary embodiments, the control application 512 may include enhancing some images of a first modality of a scene with some images of a second modality of the scene.
[0058] FIG. 5B is a schematic diagram illustrating a system 500B for enhancing an image using the image registration method of FIG. 2A , according to an embodiment. Sensors 522A, 522B, i.e., image sensors in a satellite, sequentially or non-sequentially capture a set of input images 524 of a scene 523. In some exemplary embodiments, it may be contemplated that the scene appearing in the input images 524 may be approximated as a plane. For example, the image sensors may not be close to the scene (as in the case of satellite / aircraft-based imagery), and / or the objects in the scene do not have significantly different heights as they appear in the input images 524, and / or the images are low-resolution. The cameras 522A, 522B may be in a moving aircraft, satellite, or some other sensor-carrying device that allows photographs of the scene 523 to be taken. Furthermore, the number of sensors 522A, 522B is not limited, and the number of sensors 522A, 522B may be based on the particular application.
[0059] The input images 524 may be acquired by a single moving sensor at time step t, or by multiple sensors 522A, 522B at different times, angles, and distances. Sequential acquisition reduces memory requirements for storing the images 524 because the input images 524 can be acquired by one or more sensors 522A, 522B and processed online as they are received by the processor 534. The processor 534 may be similar to the processor 504 of FIG. 5A and may be coupled with the neural network 506 of FIG. 5A, among other components. The input images 524 may be overlapped to facilitate registration of the images with one another. The input images 524 may be grayscale, color, or SAR images. The input images 524 may also be sequentially acquired multi-temporal, multi-modal, or multi-angle view images.
[0060] The one or more sensors 522A, 522B can be located in a mobile space or airborne platform (satellite, aircraft, or drone), and the scene 523 can be terrain or some other scene located on or above the Earth's surface. The scene 523 can include occlusions due to structures in the scene 523, such as buildings, and clouds between the scene 523 and the one or more sensors 522A, 522B. Among other things, at least one goal of this disclosure can be to generate an enhanced set of output images 525 without occlusions. As a by-product, the system also generates a set of sparse images 526 that include only occlusions, e.g., clouds.
[0061] 6 is a flow diagram of the system of FIG. 5B providing details of forming a matrix using vectorized, aligned, multi-angle view, multi-modal images and matrix completion, according to some example embodiments. As shown in FIG. 6, the system operates in a processor 614 that may be electrically or wirelessly coupled to the sensors 602A, 602B.
[0062] A set of input images 604 are acquired (610) directly or indirectly by a processor 614; for example, the images may be acquired by sensors 602A, 602B, i.e., cameras, video cameras, or by other means or from other sources, e.g., memory transfer, or wired or wireless communication. A user interface in communication with the processor and computer-readable memory may be capable of acquiring and storing in computer-readable memory a set of multi-angle view, multi-modal images upon receiving user input from the surface of the user interface. The images 604 may include, for example, multi-angle view images of a three-dimensional planar scene of an area captured with different modalities.
[0063] The multi-modal images 604 may be aligned to a target viewing angle of the scene based on the alignment process shown in Figures 2A and 5A. Such alignment of the multi-angle view images 604 may be performed to form a set of aligned multi-angle view multi-modal images that represent a target viewpoint of the scene. In an exemplary embodiment in which these images 604 correspond to aerial images of the scene, at least one aligned multi-angle view image of the multi-angle view multi-modal images may have missing pixels due to cloudy regions.
[0064] Cloud detection 620 may be performed based on the intensity and total variation of small patches, i.e., total variation thresholding. Specifically, by dividing an image into patches and calculating the average intensity and total variation of each patch, each patch can be labeled as a cloud or cloud shadow under certain conditions. Detected regions with small areas are likely to be other flat objects, such as building surfaces or building shadows, and can be removed from the cloud mask. Finally, the cloud mask can be dilated so that the boundaries of regions covered by thin clouds are also covered by the cloud mask. After acquiring a set of cloud-contaminated images as described above, the goal is to replace missing pixels in the contaminated regions with pixels representing those portions of the scene taken from other images in the set, where the corresponding portions are not contaminated. This requires alignment of the set of images, which in turn requires a homography to relate pairs of images.
[0065] In this regard, method 600 of FIG. 6 provides for collecting a set of multimodal images of a scene. For each portion of the scene, at least one of the images from the image set includes uncontaminated pixels for that portion of the scene. Any image from the image set can be selected as a target image, i.e., an image having a target viewing angle, and then all other images from the image set are aligned with this target image. Each time, a test image is selected to align with the target image. Using the trained neural network, a first test feature may be extracted from the target image (634), and a second test feature may be extracted from the test image (634). Additionally, using the neural network, a third test feature may be extracted from the target image (634C), and a fourth test feature may be extracted from the test image (634D). The method also includes comparing the first test feature to the second test feature and the third test feature to the fourth test feature (635) to find eight or more corresponding points for homography estimation (637). The target and test images are then aligned using the estimated homography, and this process is repeated until all images in the image set are aligned with the target image.
[0066] After image alignment, a collection of aligned images is available. The aligned images contain missing pixels due to cloud contamination or occlusion, such that image fusion can be achieved using matrix completion techniques, assuming that the matrix formed by concatenating the vectorized, well-aligned images has low rank 640. Low-rank matrix completion estimates missing entries in a matrix under the assumption that the matrix to be restored has low rank. Because direct rank minimization is computationally intractable, convex or non-convex, relaxations can usually be used to reformulate the problem. Thus, a cloud-free image is generated (650).
[0067] The above-described embodiments of the present disclosure may be implemented in any of numerous ways. For example, embodiments may be implemented using hardware, software, or a combination thereof. When implemented in software, the software code may be executed on any suitable processor or collection of processors, whether provided on a single computer or distributed among multiple computers. Such a processor may be implemented as an integrated circuit, with one or more processors in an integrated circuit component. However, a processor may be implemented using circuitry in any suitable format.
[0068] 7 shows a block diagram of a system for training a neural network and a system for image registration and fusion, which may be implemented using alternative computers or processors, according to some exemplary embodiments. Computer 711 includes processor 740, computer-readable memory 712, storage 758, and user interface 749 with display 752 and keyboard 751, which are connected via bus 756. For example, user interface 764, in communication with processor 740 and computer-readable memory 712, receives input from a user on the surface of user interface 757, keyboard 753, and acquires and stores image data in computer-readable memory 712.
[0069] Depending on the application, computer 711 may include a power supply 754, which may optionally be located external to computer 711. A user input interface 757 adapted to connect to a display device 748 may be linked via bus 756, which may include, among other things, a computer monitor, a camera, a television, a projector, or a mobile device. A printer interface 759 may also be connected via bus 756 and adapted to connect to a printing device 732, which may include, among other things, a liquid inkjet printer, a solid ink printer, a large-scale commercial printer, a thermal printer, a UV printer, or a dye-sublimation printer. A network interface controller (NIC) 734 is adapted to connect to a network 736 via bus 756, so that image data or other data can be rendered on, among other things, a third-party display device, a third-party imaging device, and / or a third-party printing device external to computer 711.
[0070] Still referring to FIG. 7 , image data or other data may be transmitted via a communication channel of the network 736 and / or stored in a storage system 758 for storage and / or further processing, among other things. Additionally, time-series data or other data may be received wirelessly or via a wired connection from a receiver 746 (or an external receiver 738) or transmitted wirelessly or via a wired connection via a transmitter 747 (or an external transmitter 739), both of which are connected via a bus 756. The computer 711 may be connected to an external sensing device 744 and an external input / output device 741 via an input interface 708. For example, the external sensing device 744 may include sensors that collect data before, during, or after the machine's collected time-series data. The computer 711 may be connected to another external computer 742. The output interface 709 may be used to output processed data from the processor 740. It should be noted that the user interface 749, in communication with the processor 740 and the non-transitory computer-readable storage medium 712, obtains and stores area data in the non-transitory computer-readable storage medium 712 upon receiving input from the surface 752 of the user interface 749 by a user.
[0071] Also, the various methods or processes outlined herein may be coded as software executable on one or more processors using any one of a variety of operating systems or platforms. Additionally, such software may be written using any of a number of suitable programming languages and / or programming or scripting tools, and may be compiled as executable machine language code or intermediate code that runs on a framework or virtual machine. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.
[0072] As such, exemplary embodiments of the present disclosure find application in many useful end use cases, since image alignment is a key component for such image processing-based applications. Achieving image alignment of images of different modalities in the manner shown and described herein results in faster computations and reduced computational complexity, thereby improving the overall turnaround time of the intended task. Thus, training neural networks to predict domain-invariant features is linked to several practical applications and also leads to several technical improvements. Image processing methods and systems incorporating the proposed training and execution of neural networks will benefit from new capabilities and performance incentives guided by novel training and registration approaches, thereby leading to improvements in underlying image processing technologies.
[0073] Also, embodiments of the present disclosure may be embodied as methods, for which some examples are provided. Acts performed as part of a method may be ordered in any suitable manner. Thus, embodiments may be constructed in which acts are performed in an order other than that illustrated, including simultaneously performing some acts shown in an exemplary embodiment as sequential acts. Furthermore, the use of ordinal language such as "first," "second," etc. to modify a claim element in a claim does not, by itself, imply a priority, precedence, or order of one claim element over another claim element, or a chronological order in which the actions of a method are performed, but is merely used as a label to distinguish one claim element having a certain name from another element having the same name (but using ordinal language).
[0074] Although the present disclosure has been described with reference to certain preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the present disclosure. It is, therefore, within the scope of the claims to cover all such variations and modifications that are within the true spirit and scope of the present disclosure.
Claims
1. 1. A computer-implemented method for training a neural network to extract domain-invariant features suitable for image registration, the method using a processor coupled to a memory storing instructions, the method comprising: acquiring a first set of multimodal images including at least a first image of a first modality and at least one corresponding second image of a second modality; extracting first features from the at least one first image using a first feature extraction subnet of the neural network; extracting second features from the at least one second image using a second feature extraction subnet of the neural network; and comparing the first features with the second features to estimate a domain-invariant embedding loss for the extracted features of the first set of multimodal images; submitting the first features and the second features to a homography net of the neural network to estimate a homography loss of the extracted features of the first set of multimodal images; training the neural network by training the first feature extraction subnet and the second feature extraction subnet of the neural network and the homography net to jointly minimize a multi-objective loss function including the domain-invariant embedding loss and the homography loss.
2. The method further comprises: extracting third features from the at least one first image using a third feature extraction subnet of the neural network; and extracting fourth features from the at least one second image using a fourth feature extraction subnet of the neural network; and and comparing the third feature to the fourth feature to estimate a domain-specific embedding loss for the first set of multimodal images.
3. The method of claim 2 , wherein the multi-objective loss function further comprises an estimated domain-specific embedding loss.
4. The method of claim 1 , wherein the first modality and the second modality are selected from the group consisting of an optical color image, an optical grayscale image, a depth image, an infrared image, and a SAR image.
5. 10. A multimodal image registration method for aligning a second set of multimodal images using the trained neural network of claim 1, comprising: acquiring a second set of the multimodal images of a scene, the second set including a first test image of the first modality and a second test image of the second modality; extracting first test features from the first test image using the first feature extraction subnet of the trained neural network; extracting second test features from the second test image using the second feature extraction subnet of the trained neural network; and aligning the first test image and the second test image by comparing the first test feature with the second test feature.
6. The method further comprises: extracting third test features from the first test image using a third feature extraction subnet of the trained neural network; and extracting fourth test features from the second test image using a fourth feature extraction subnet of the trained neural network; and matching one or more keypoints in the third test feature with one or more keypoints in the fourth test feature; and aligning the pair of test images based on the matching.
7. The method further comprises: calculating a first transportation cost distance of the third test feature extracted from the first test image; calculating a second transportation cost distance of the fourth test feature extracted from the second test image; determining a first transportation cost term based on the first transportation cost distance and the second transportation cost distance; calculating a third transportation cost distance of the first test feature extracted from the first test image; calculating a fourth transportation cost distance of the second test feature extracted from the second test image; determining a second transportation cost term based on the first transportation cost distance and the second transportation cost distance; and solving an optimal transportation (OT) problem to generate a registration map by optimizing a cost function that minimizes a combination of the first transportation cost term and the second transportation cost term.
8. estimating the domain-invariant embedding loss of the extracted features of the first set of multimodal images comprises: obtaining a first feature vector for every pixel of the at least one first image based on the extracted first features; obtaining a second feature vector for every pixel of the at least one second image based on the extracted second features; sampling corresponding and non-corresponding pixels between the at least one first image and the at least one second image based on ground truth data; and computing the domain-invariant embedding loss of the extracted features of the first set of the multimodal image based on the sampled corresponding and non-corresponding pixels.
9. Estimating the homography loss of the extracted features of the first set of multimodal images includes: estimating a homography between the at least one first image and the at least one second image based on the extracted first and second features; obtaining ground truth homography data for the at least one first image and the at least one second image; and calculating the homography loss of the extracted features based on the estimated homography and the ground truth homography data.
10. The method of claim 9 , wherein the estimated homography is a 3×3 real-valued matrix.
11. 1. A system for training a neural network to extract domain-invariant features suitable for image registration, comprising: a memory configured to store executable instructions; a processor, the processor executing the instructions to configured to acquire a first set of multimodal images including at least a first image of a first modality and at least one corresponding second image of a second modality; configured to extract first features from the at least one first image using a first feature extraction subnet of the neural network; configured to extract second features from the at least one second image using a second feature extraction subnet of the neural network; configured to compare the first features with the second features to estimate a domain-invariant embedding loss for the extracted features of the first set of multimodal images; configured to submit the first features and the second features to a homography net of the neural network to estimate a homography loss of the extracted features for the first set of multimodal images; a system configured to train the neural network by training the first feature extraction subnet and the second feature extraction subnet of the neural network and the homography net to jointly minimize a multi-objective loss function including the domain-invariant embedding loss and the homography loss.
12. The processor further comprises: configured to extract third features from the at least one first image using a third feature extraction subnet of the neural network; configured to extract fourth features from the at least one second image using a fourth feature extraction subnet of the neural network; The system of claim 11 , configured to compare the third feature to the fourth feature to estimate a domain-specific embedding loss for the first set of multimodal images.
13. The system of claim 12 , wherein the multi-objective loss function further comprises an estimated domain-specific embedding loss.
14. 12. The system of claim 11, wherein the first modality and the second modality are selected from the group consisting of an optical color image, an optical grayscale image, a depth image, an infrared image, and a SAR image.
15. 12. A multimodal image registration system for aligning the first set of multimodal images using the trained neural network of claim 11, comprising a circuit, the circuit comprising: configured to acquire a second set of multimodal images of the scene including a first test image of the first modality and a second test image of the second modality; configured to extract first test features from the first test image using the first feature extraction subnet of the trained neural network; configured to extract second test features from the second test image using the second feature extraction subnet of the trained neural network; A multimodal image registration system configured to align the first test image and the second test image by comparing the first test feature with the second test feature.
16. The circuit further comprises: configured to extract third test features from the first test image using a third feature extraction subnet of the trained neural network; configured to extract fourth test features from the second test image using a fourth feature extraction subnet of the trained neural network; configured to determine a plurality of corresponding points in the first test image and the second test image; configured to estimate a homography relating the first test image and the second test image based on the plurality of corresponding points; The multimodal image registration system of claim 15 configured to align the test image pair based on the estimated homography.
17. To estimate the domain-invariant embedding loss of the extracted features of the first set of multimodal images, the processor further configured to obtain a first feature vector for every pixel of the at least one first image based on the extracted first features; configured to obtain a second feature vector for every pixel of the at least one second image based on the extracted second features; configured to sample corresponding and non-corresponding pixels between the at least one first image and the at least one second image based on ground truth data; 12. The system of claim 11, configured to calculate the domain-invariant embedding loss of extracted features of the first set of multimodal images based on the sampled corresponding and non-corresponding pixels.
18. To estimate the homography loss of the extracted features of the first set of multimodal images, the processor further configured to estimate a homography between the at least one first image and the at least one second image based on the extracted first features and the second features; configured to obtain ground truth homography data for the at least one first image and the at least one second image; The system of claim 11 , configured to calculate the homography loss of the extracted features based on the estimated homography and the ground truth homography data.
19. The system of claim 18 , wherein the estimated homography is a 3×3 real-valued matrix.
20. 1. A non-transitory computer-readable medium having stored thereon computer-executable instructions that, when executed by a computer, cause the computer to perform a method for training a neural network to extract domain-invariant features suitable for image registration, the method comprising: acquiring a first set of multimodal images including at least a first image of a first modality and at least one corresponding second image of a second modality; extracting first features from the at least one first image using a first feature extraction subnet of the neural network; extracting second features from the at least one second image using a second feature extraction subnet of the neural network; and comparing the first features with the second features to estimate a domain-invariant embedding loss for the extracted features of the first set of multimodal images; submitting the first features and the second features to a homography net of the neural network to estimate a homography loss of the extracted features of the first set of multimodal images; training the neural network by training the first feature extraction subnet and the second feature extraction subnet of the neural network and the homography net to jointly minimize a multi-objective loss function including the domain-invariant embedding loss and the homography loss.
Citation Information
Patent Citations
Unsupervised multi-modal image registration method based on integrated attention enhancement
CN112330724A
Structure-preserving weak supervision multi-mode prostate image registration method
CN114897948A
An improved lesion detection method
WO2021214042A1
Device and method for alignment of multi-modal clinical images using joint synthesis, segmentation, and registration
WO2021238732A1