US6249616B1 - Combining digital images based on three-dimensional relationships between source image data sets - Google Patents

Combining digital images based on three-dimensional relationships between source image data sets Download PDF

Info

Publication number
US6249616B1
US6249616B1 US08865840 US86584097A US6249616B1 US 6249616 B1 US6249616 B1 US 6249616B1 US 08865840 US08865840 US 08865840 US 86584097 A US86584097 A US 86584097A US 6249616 B1 US6249616 B1 US 6249616B1
Authority
US
Grant status
Grant
Patent type
Prior art keywords
image
images
source
data
parameters
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US08865840
Inventor
Roy T. Hashimoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chartoleaux KG LLC
Original Assignee
Enroute Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Grant date

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/35Determination of transform parameters for the alignment of images, i.e. image registration using statistical methods

Abstract

A computer-implemented method combines related source images, each represented by a set of digital data, by determining three-dimensional relationships between data sets representing related source images and creating a data set representing an output image by combining the data sets representing the source images in accordance with the determined three-dimensional relationships.

Description

BACKGROUND

The present invention relates to combining digital images.

Digital images typically comprise two-dimensional arrays of picture elements (pixels) and may be, for example, digitized photographs or computer-generated images. Many applications exist for combining digital images, including applications for determining camera motion between video frames to stabilize video images, for relating or recognizing the content of different images, for aligning images for mosaicing, for high-resolution enhancement, and for building detailed models for virtual reality applications. Further discussion of various applications are found in articles such as S. Mann & R. W. Picard, Video Orbits of the Projective Group: A New Perspective on Image Mosaicing, M.I.T. Media Laboratory Perceptual Computing Section Technical Report No. 338 (1995) and Richard Szeliski, Image Mosaicing for Tele-Reality Applications, Cambridge Research Laboratory Technical Report Series (CRL 94/2) (1994), both of which are incorporated by reference.

Combining images typically requires “registering” pairs of images, which matches two or more images containing overlapping scenes and describes the correspondence of one to another. The correspondence enables the images to be combined by mapping the image data into a common image space using any of a variety of transforms, such as affine and projective transforms. As described in the Mann & Picard article, affine methods are simpler and are acceptable approximations when the correspondence between pictures is high or the images have a small field of view, or the content of the image is planar. Projective transform methods are more complex but can produce results that are mathematically more accurate for images acquired from a fixed camera location. Existing projective transform methods typically register a first image with a second by determining transform parameters corresponding to a two-dimensional projective transformation: [ w u w v w ] = [ u v 1 ] [ m 0 m 1 m 2 m 3 m 4 m 5 m 6 m 7 1 ] Equation 1

Figure US06249616-20010619-M00001

where (u,v) are the coordinates in an image space of a pixel of the first image and (u′, v′) are the coordinates of the pixel mapped into an image space of the second image. This transform has eight parameters, or degrees of freedom (m0, . . . ,m7). Solving for the eight degrees of freedom typically requires a non-linear approach, which can be computationally expensive and is not guaranteed to produce a correct result.

SUMMARY

In general, in one aspect, the invention features a computer-implemented method for combining related source images, each represented by a set of digital data, by determining three-dimensional relationships between data sets representing related source images and creating a data set representing an output image by combining the data sets representing the source images in accordance with the determined three-dimensional relationships.

Certain implementations of the invention include one or more of the following features. Each of the source images and the output image may have a corresponding image space. Determining three-dimensional relationships between source images further may include determining three-dimensional transformations between the source image spaces. The output image space may be the image space of a source image. Determining a three-dimensional transformation between one source image space and another image space further may include determining parameters describing the three-dimensional transformation. The parameters may describe a camera orientation, a distance between the camera and the source image, and a distance between the camera and the target image.

In general, in another aspect, the invention features a memory device storing computer readable instructions for aiding a computer to perform the above method.

In general, in another aspect, the invention features an apparatus to combine related source images, each represented by a set of digital data, comprising a storage medium to store related source images, each represented by a set of digital data, and a processor operatively coupled to the storage medium and configured to perform the above method.

Among the advantages of the invention are the following. The invention may be used to create composite images with wide fields of view, to create fully surrounding environments, and to enhance resolution. Further, source images may be merged without identification of specific corresponding features.

The invention determines projective transform parameters for a three-dimensional projective mapping, requiring solving for only five variables (degrees of freedom) rather than the eight required for two-dimensional projective mappings. The invention produces a solution that is always physically realizable, and because the dimensionality of the problem is reduced, a solution may be obtained more quickly. Further, because the parameters may be chosen to be directly related to how the images are acquired, solving for the parameters is readily simplified by further reducing the number of degrees of freedom if there are known constraints on the image acquisition, such as using a single focal length lens for multiple images or restricting motion (such as if the images are all acquired using a camera mounted on a tripod and allowing only panning).

Other advantages and features of the invention will become apparent from the following description and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a flow diagram for combining images.

FIG. 2 illustrates a computer system.

FIGS. 3 and 4 illustrate images to be combined.

FIG. 5 illustrates a flow diagram for determining transformation parameters.

FIGS. 6-8 illustrate flow diagrams for output rendering of source images.

FIG. 9 illustrates a block diagram of possible output spaces to which source images are reprojected.

DETAILED DESCRIPTION

Represented in three dimensions, a digital image has corresponding camera parameters that describe a position of a camera relative to a scene such that the scene is viewed from the camera as it appears in the image. Each image further has a local image space defining a coordinate space in which the points in the image scene may be identified. The relationship between two images containing overlapping scenes can be described by a three-dimensional transformation, which describes the required reorienting of the camera from a first orientation, from which the scene is viewed as shown in the first image, to a second orientation, from which the scene is viewed as shown in the second image. An alternative description of the transformation is that it maps a point in the first image space to a point in the second image space, where both the original and mapped points correspond to the same point in the scene.

1. Image Acquisition

Referring to FIG. 1, source images to be combined in an output image are accessed in a computer system (step 110). The source images are digital images, which may be, for example, digitized photographs or computer generated images.

The computer system may include special purpose hardware, a general purpose computer running application software, or a combination of both. Preferably, the invention is implemented in a computer program executing in a general purpose computer. FIG. 2 illustrates an appropriate computer system 200, including a CPU 210, a RAM 220, and an I/O controller 230, coupled by a CPU bus 240. The I/O controller 230 is also coupled by an I/O bus 250 to input devices such as a keyboard 260 and a mouse 270, and output devices such as a monitor 280.

A pixel of a digital image generally includes data describing its color. Pixel data from the source images are eventually combined to create pixel data for the output image. Pixel data of monochrome images are single channel, having a single value indicating a degree of intensity. Pixel data of color images typically have multiple channels, having a value for each channel with the pixel color indicated by the combination of the channel values. For example, in the RGB (red-green-blue) color system, color data for a pixel will include a value for each of the red channel, the green channel, and the blue channel. To simplify computations involving color data, multichannel color data may be converted to a single value. Various conversion methods may be used. For example, the single value may be based on the value of the green channel, the average of the values of the color channels, or another combination of the values of the color channels. For example, as explained in FOLEY ET AL., COMPUTER GRAPHICS: PRINCIPLES AND PRACTICE 589 (Addison-Wesley 2d ed. 1996), “luminance” is a color characteristic derived from a weighted sum of the color channels, 0.30*R+0.59*G+0.11*B.

To be combined, each of the source images must contain a scene that overlaps with the scene of at least one of the other source images. The amount of overlap needed may vary depending on factors such as the content of the images, temporal scene changes, temporal camera parameter changes (for example, different focus, exposure, or point of view), and camera fidelity (for example, distortion and compression artifacts). In general, the greater the overlap, the more accurate the output image will be. For example, while an output image can be created from source images having as little as 20% overlap, source images having closer to 50% overlap are likely to result in a more accurate output image.

The present invention further assumes that each of the source images to be combined is taken from approximately the same camera location, although factors such as rotation, focus, exposure and zoom may vary.

2. Finding Overlapping Areas in Source Images

Referring again to FIG. 1, the overlapping areas between pairs of source images are estimated (step 120). If the images received in step 110 have no available information about which images overlap, each pair of images is tested to determine overlapping areas. Alternatively, user-guided indication of overlap may be provided to simplify this process.

For example, the pairs containing overlapping areas may be reflected in the order in which they are entered. Thus, if the set of images can be arranged as a single unbranching chain or as a single loop as shown in FIG. 3, the invention can be implemented to require images to be input such that sequentially input images overlap. Overlap for source images having more complex overlap relationships, as shown in FIG. 4, can be specified by having the user manually enter overlap information. For example, a user interface may be provided to prompt the user to type the information or to display a graphical user interface allowing the user to graphically indicate overlapping images. Automatic and user-aided detection of overlap may be used in combination, and user input may be used to identify the overlapping area in an image pair, in addition to identifying the images that overlap.

One possible overlap estimation method is cross-correlation between the images. The cross-correlation function C ( i , j ) = m n I 0 ( i - m , j - n ) I 1 ( i , j ) Equation 2

Figure US06249616-20010619-M00002

where I0(i,j) and I1(i,j) are the image intensities, between two translated versions of the same image will tend to have a maximum at values for m and n indicating the best translation. This formulation shows computation of the cross-correlation in the spatial domain. The function may also be computed using the frequency domain:

C(i,j)=ℑ−1(ℑ(I 0(i,j))ℑ*(I 1(i,j)))  Equation 3

where ℑ is the discrete Fourier transform, ℑ* is the complex conjugate of the discrete Fourier transform, and ℑ311 is the inverse discrete Fourier transform. The advantage of using the frequency domain to compute the cross-correlation is that a fast Fourier transform algorithm can be used to perform the operation more efficiently.

When the frequency domain is used, a variant of regular correlation called phase correlation can be performed instead. In this variant, the Fourier transform of each image is normalized so that each complex value in the transform has unit magnitude (this is also equivalent to normalizing after multiplying the transform and the transform conjugate). The advantage of phase correlation over regular correlation is that the windowing effects, which occur because the images are of finite size, are reduced. Further detail on phase correlation may be found in the 1996 article by Xin Tong and Krishna Nayak, Image Registration Using Phase Correlation (available at URL http://www-leland.stanford.edu/˜xin/ee262/report/report.html).

The phase correlation procedure takes the discrete Fourier transform of both images using an FFT (fast Fourier transform), multiplies the transforms element by element (taking the conjugate of the second before multiplication), computes the pure phase by normalizing each complex value to a magnitude of one, and takes the inverse Fourier transform. The estimate of the best translation to use for overlap is then determined by scanning the result for the location of the maximum magnitude value.

An alternative to using an input image directly in correlation is to use a level from an image pyramid, such as a Laplacian pyramid described in articles such as Burt & Adelson, The Laplacian Pyramid as a Compact Image Code, IEEE Transactions on Communications 31:532-40 (1983). Briefly, known algorithms may be used to construct Laplacian pyramids from source images, where levels of varying resolution encode the source image content at varying spatial frequencies. Typically, a sample of the lowest resolution level is based on the average of the image data of the region in the source image corresponding to that sample. A sample of the next resolution level is based on the difference between the data of the corresponding sample of the lower resolution level and the average of the data of the corresponding region in the source image.

One method of creating a Laplacian pyramid is to increase the number of levels incrementally. A pyramid is initialized by making the image itself a level. This is a valid single-level pyramid. The number of levels is incremented by convolving the current lowest resolution level with an averaging filter to form a moving-average image, replacing the current lowest resolution level with the current lowest resolution level minus the moving-average (pixel by pixel), and creating the new lowest resolution level by subsampling the moving-average. This process is repeated to create as many levels as desired in the pyramid.

Correlation (including phase correlation) to find an estimate of image overlap can be based on corresponding Laplacian pyramid levels of the input images instead of being based directly on the input images themselves. One advantage of using the pyramid data is that performing correlation over the lower resolution pyramid data is faster than over the full resolution image data. Another advantage is that the original image data generally gives more weight (importance) to the brighter areas than to the darker areas, which is not desirable. In contrast, because the Laplacian levels other than the lowest resolution level are signed images with approximately zero mean values, the bright areas in the original input images are not given more weight than darker areas, thus avoiding the need for normalization that would otherwise be required. A discussion of using Laplacian pyramids for image correlation may be found in Hansen et al., Real-time Scene Stabilization and Mosaic Construction, 1994 IMAGE UNDERSTANDING WORKSHOP (1994).

3. Source Image Correction

Referring again to FIG. 1, the source images are prepared for combination by correcting the images so that the overlapping portions of source images are more closely matched (step 130), which in turn can produce a more accurate output image. The specific correction operations may vary for different applications, and if desired, some may be performed prior to determining the overlapping areas of the images (step 120), which may remove distortions that will allow the overlapping areas to be more easily identified. On the other hand, if the overlapping portions are determined first (step 120), the minimizing operations (step 130) may be restricted to the overlapping portions rather than being performed on entire images to reduce the amount of required computation.

An example of a correction operation corrects nonuniform magnification produced in an image by the lens. The resulting image distortion is typically radial lens distortion, which changes the magnification in the image based on the distance from the center of projection. (The center of projection is the point in the image that matches where the optical axis of the lens intersects the image plane.) Magnification that decreases with distance is called barrel distortion; magnification that increases with distance is called pincushion distortion. Radial distortion can be modeled with a simple polynomial, as described in articles such as R. Y. Tsai, An Efficient and Accurate Camera Calibration Technique, PROCEEDINGS IEEE COMPUTER VISION AND PATTERN RECOGNITION 364-74 (1986), and can be removed by resampling based on the polynomial model.

Another example of a correction operation corrects nonuniform scaling caused by perspective projections, causing objects near the edges of the image to appear larger than the same objects would appear near the center. This effect is increased as the field of view widens. In these cases, it may be helpful to reproject one or both images before doing correlation, normalizing the scaling in an area of proposed overlap.

Reprojection can be time-consuming, but it can be performed automatically without user interaction. If performed prior to correlation (step 120), the overlapping areas may be easier to identify. However, correlation (step 120) generally works acceptably well without reprojection, which is an optional operation.

A special case of this technique is to reproject into cylindrical coordinates, which normalizes the scaling across the entire images if the cylindrical axis is vertical and the motion is purely pan, or if the cylindrical axis is horizontal and the motion is purely tilt. This is appropriate when the camera orientation is known to have those restrictions.

Another correction operation normalizes the brightness in the source images to be combined. Source images may differ in brightness level. This may result, for example, if images are captured with autoexposure camera settings. One simple approach to normalize the brightness determines the average color data for pixels of the overlapping region in a source image and normalizes the color data values Aij for each pixel (I, j) in that region to the calculated average, A ij * = A ij A _ .

Figure US06249616-20010619-M00003

A more sophisticated procedure may use a model that accounts for nonlinearities in mapping brightness to data values, and for differences resulting from different device types (for example, CCD and film) used in acquiring the source images, as well as differences among devices of the same type.

Another correction operation addresses varying focus of source images. If the overlapping portion is in focus in one image and out of focus in the other, blurring tends to bring them closer to matching. One way to minimize the variation in focus in source images to be combined is by blurring the source images slightly with a filter to reduce high-frequency noise, producing the effect of putting all source images slightly out of focus.

Yet another possible correction operation may correct for vignetting, an effect describing the variation in the amount of light gathered as the incident direction moves off the optical axis. This effect, explained in articles such as Just what is a Good Lens Anyway?, which is found at http://web.ait.ac.nz/homepages/staff/rvink/optics.html, is a darkening of the corners and edges of the image relative to the center. Correction involves modeling the vignetting function and multiplying by its reciprocal across the image.

4. Determining Transformation Parameters

Referring to FIG. 1, transformation parameters are determined from each source image to a target image (step 140). For example, if images A and B contain overlapping scenes, image B may be the target image where the transformation parameters map pixels of image A into the image space of image B.

The Mann & Picard article discusses derivation of two-dimensional transformation parameters. Alternatively, three-dimensional transformation parameters may be derived. As described above, an image has corresponding three-dimensional camera parameters defining a camera position from which a scene appears as shown in the image. An ideal camera projects the scene before it onto a plane. Defining the camera in a local coordinate system such that it points along the z-axis, the projection onto the plane z=z0 is: [ wu wv wz 0 w ] = [ x y z * 1 ] [ 1 0 0 0 0 1 0 0 0 0 1 1 z 0 0 0 0 0 ] Equation 4

Figure US06249616-20010619-M00004

where (u, v) are coordinates defined in the plane defined by z=z0, (x, y, z*) are corresponding coordinates defined in 3-space, and w is the homogeneous variable. We can express the points in 3-space in terms of their image space coordinates (u,v): [ wu wv wz 0 w ] = [ u z v z z 0 z 1 ] [ 1 0 0 0 0 1 0 0 0 0 1 1 z 0 0 0 0 0 ] where z = z 0 z * Equation 5

Figure US06249616-20010619-M00005

Equations 4 and 5 assume that the images are captured from approximately the same camera location, and hold for both source and target images in their own local image spaces. The difference between the local image spaces can be expressed as a rotation: [ w t u t w t v t w t z t w t ] = [ u s z v s z z s z 1 ] R [ 1 0 0 0 0 1 0 0 0 0 1 1 z t 0 0 0 0 ] Equation 6

Figure US06249616-20010619-M00006

where (ut, vt) are the remapped image coordinates in the target image space, (us, vs) are the image coordinates in the source image space, and z is the unknown depth of the point in the scene that is imaged at (us, vs). This depth can be arbitrarily set to 1 because the results are invariant with respect to z. R is a rotation matrix that relates the local image spaces of the source and target images, and reprojects pixels of the source image into the image space of the target image.

The projection depth parameters zs and zt are related to the field of view of the imaging systems used to capture the source and destination images, respectively: α = 2 arctan v max - v min 2 z

Figure US06249616-20010619-M00007

where α is the vertical field of view, vmax−Vmin is the vertical image extent, and z is the projection depth. The horizontal field of view may be calculated by replacing the vertical image extent with the horizontal image extent. The projection depth may be calculated from a known field of view with: z = 1 2 v max - v min tan α 2

Figure US06249616-20010619-M00008

Another interpretation of the projection depth is the lens focal length expressed in the same units as the image extent. Thus if the image extent is the physical size of the active area of the camera image plane, the projection depth is simply the focal length of the lens. If the image extent has been normalized, e.g. from −1 to 1, the corresponding projection depth can be derived from the lens focal length using the ratio of the normalized image extent to the size of the camera image plane active area.

The three-dimensional mapping may have as many as five degrees of freedom: up to three for rotation, one for zs (the depth of the source projection plane), and one for zt (the depth of the target projection plane). The rotation matrix R can be parameterized in a number of different ways. For example, using Euler angles, the matrix R may be factored into z (roll) (θ), x (tilt) (ψ), and y (pan) (φ) rotations: R ( θ , ψ , ϕ ) [ cos θ sin θ 0 0 - sin θ cos θ 0 0 0 0 1 0 0 0 0 1 ] [ 1 0 0 0 0 cos ψ sin ψ 0 0 - sin ψ cos ψ 0 0 0 0 1 ] [ cos ϕ 0 - sin ϕ 0 0 1 0 0 sin ϕ 0 cos ϕ 0 0 0 0 1 ] Equation 7

Figure US06249616-20010619-M00009

This parameterization reflects the ways camera motion is commonly constrained in creating images, such as pan only, pan and tilt only, or tilt only. Thus, for source images known to result from cameras having such constrained motions, corresponding camera parameters are readily determined and the degrees of freedom are decreased, simplifying the task of determining the three-dimensional transformation.

Referring to FIG. 5, a Gaussian pyramid is created for each of the pair of images (step 500). A Gaussian pyramid, like a Laplacian pyramid, is a multiresolution data set, and if desired, may be created only for the estimated overlapping areas of each image for a pair of images. Each level of a Gaussian pyramid is a smoothed and subsampled version of the next higher resolution layer.

The best parameters mapping the source image into the target image space such that the overlapping portions overlap are determined sequentially for increasing resolution levels of the Gaussian pyramids, using the parameters of the previous level as the initial estimate for the parameter values on the current level (step 510). If the source and target images are overlapping source images evaluated in step 120, an initial estimation of the three-dimensional transformation parameters between the lowest resolution levels of the images may be determined by converting the translation parameters found in the overlap estimation (step 120) into rotational parameters where: ϕ 0 = arctan u trans z 0 ψ 0 = - arctan v trans z 0 Equation 8

Figure US06249616-20010619-M00010

where (utrans,vtrans ) is the best image translation between the pair of images determined in step 120 and z0 is the initial estimate for projection distance.

In general, a solution may be found at each level by optimizing an error function that is minimized when the overlapping portions of the source and the target images are aligned when the source image is remapped by the transformation parameters (step 520). One possible error function explained in the Szeliski article is the least squared difference between the intensity data of pixels of the overlapping portions in the remapped source image and the target image: χ 2 = u s , v s [ A t ( u t , v t ) - A s ( u s , v s ) ] 2 σ 2 Equation 9

Figure US06249616-20010619-M00011

where x2 is the error function, As and At are the source and target image intensity functions (interpolating between samples), (us,vs) are the source image coordinates, and (ut,vt) are the resulting target image coordinates obtained by remapping the source image coordinates (us, vs) using the estimated transformation parameters. (σ2 is a weighting that may be set to 1, and will be omitted in subsequent equations.)

This optimization problem may be solved by methods such as gradient descent, inverting the Hessian matrix, or a combination method like Levenberg-Marquardt, which are discussed in greater detail in references such as PRESS ET AL., NUMERICAL RECIPES IN C 540-47 (Cambridge University Press, 1988). These solution methods require partial derivatives of the error metric with respect to the transformation parameters. For some parameter p, the partial is: p χ 2 = 2 [ A t - A s ] [ A t u t u t p + A t v t v t p ] Equation 10

Figure US06249616-20010619-M00012
A t u t and A t v t
Figure US06249616-20010619-M00013

are the spatial derivatives of the pixel values of the target image at positions defined by pixels remapped from the source image. However, estimated transformation parameters will typically not map a source image pixel exactly to a pixel location in the target image, so interpolation may be required both to determine the value at a target pixel and to compute the derivatives. Because interpolation in the target image is done a large number of times (at every mapped source image pixel for each iteration over each pyramid level), the least squared difference determination can be expensive.

An alternative to minimizing the square of the pixel value differences is optical flow, described in references such as HORN & SCHUNK, DETERMINING OPTICAL FLOW: ARTIFICIAL INTELLIGENCE (1981). Optical flow treats the source and target images as images of the same scene separated in time and assumes that although the scene moves with respect to the camera between the time of capturing the source image and the target image, the brightness values remain constant. Thus, expanding the equation

A(u, v, t)=A(u+Δu, v+Δv, t+Δt)

as a Taylor series, canceling the zeroth order term A(u, v, t) from both sides, and omitting terms higher than linear yields the optical flow equation: A u Δ u + A v Δ v + A t Δ t = 0 Equation 11

Figure US06249616-20010619-M00014

Treating the source image as reflecting the brightness at time t and the target image as reflecting the brightness at time t+1, the best transformation parameters are found when the following equation is minimized: χ 2 = u s , v s [ A s u s ( u t - u s ) + A s v s ( v t - v s ) + ( A t - A s ) ] 2 σ 2 Equation 12

Figure US06249616-20010619-M00015

In this formulation, (ut′,vt′) is (ut,vt) projected back into the source image space using the inverse of the current approximation of the transform. While this approach contains the difference in position values of pixels (At−As) as a subterm and thus is more complex than the least squared difference, in practice this term generally can be approximated with a constant without affecting convergence. Thus, performance is improved because spatial derivatives are required only in the source image, where interpolation is not needed.

This formulation takes the partial derivatives of the error metric with respect to the transformation parameters. The major component of these partials is u t p and v t p ,

Figure US06249616-20010619-M00016

where p is a transformation parameter. One way to compute these values is to precompute derivative matrices before looping over the pixels of the source image to calculate the error metric. The transformation is:

[w t u t w t v t w t z t w t ]=[u s v s 0 1]T(z s)R(θ,ψ,φ)P(z t)  Equation 13

where the source projection plane has been moved into a translation matrix T, R is the rotation, and P is the target projection. (This equation corresponds to Equation 6 above, where z=1, zs is reflected in matrix T, and matrix P represents the projection matrix.)

Taking a partial derivative of this function is a straight-forward calculation. For example, the derivative with respect to θ is: [ θ w t u t θ w t v t θ w t z t w t θ ] = [ u s v s 0 1 ] T ( z s ) R ( θ , ψ , ϕ ) θ P ( z t ) Equation 14

Figure US06249616-20010619-M00017

Thus, the derivative matrix with respect to θ is T ( z s ) R ( θ , ψ , ϕ ) θ P ( z t ) .

Figure US06249616-20010619-M00018

This can be computed and saved, along with the derivative matrices for the other parameters at the beginning of each iteration. Then, the product of each source image pixel (us,vs) and the derivative matrix is calculated. To compute θ u t from θ w t v t and w t θ ,

Figure US06249616-20010619-M00019

and similarly compute θ v t from θ w t v t and w t θ ,

Figure US06249616-20010619-M00020

we use the rules for the derivative of a quotient: θ u t = θ ( w t u t w t ) = w t ( w t u t ) θ - w t u t w t θ w t 2 θ v t = θ ( w t v t w t ) = w t ( w t v t ) θ - w t v t w t θ w t 2 Equation 15

Figure US06249616-20010619-M00021

Computing the derivative matrix with respect to any of the five parameters independently is similar. There is a useful special case when zs and zt are allowed to vary but are constrained to be equal. This occurs when both source and target images are known to be based on photographs taken with the same camera position and lens settings. The derivative matrix for this combined parameter is (using the product rule): T ( z ) z R ( θ , ψ , ϕ ) P ( z ) + T ( z ) R ( θ , ψ , ϕ ) P ( z ) z Equation 16

Figure US06249616-20010619-M00022

At each pyramid level, the transformation parameters are determined using an iterative optimization method such as those described in Press' NUMERICAL RECIPES IN C, which conclude when a termination condition is met. For example, a termination condition may be met if little or no progress is being made in decreasing x2 in subsequent iterations, or if a predetermined limit of time or number of iterations is exceeded. The solution at each layer is used as the initial estimate for the solution at the next higher resolution layer until the solution is found for the highest resolution layer of the pyramids. The value of x2 between the images is tracked as the method proceeds, and the covariance matrix of the parameters is available from the singular value decomposition.

5. Output Rendering

Referring to FIG. 1, once transformation parameters are determined for the pairs of overlapping source images, the image data from the source images can be reprojected onto an output plane to form the output image (step 150). Referring also to FIG. 6, a prerequisite to the rendering of the output image is to transform all input images (which have, to this point, been related only to one other by a set of pairwise transformations) into a single, common output space (step 600). A image may be arbitrarily chosen as a “transform reference image”, whose coordinate system is chosen as the output space for this part of the process (step 610). Each other image will be positioned relative to this image, that is, each other image is transformed to the space of the transform reference image (step 620). Once the other images are transformed, the output image is rendered based on the physically realizable solution of the transformation (step 630).

Referring to FIG. 7, choosing a relative transform for each image to the transform reference image is a process of finding a path via the pairwise relations from the image to the transform reference image (step 700). Local transforms from the pairwise relations are accumulated (with matrix multiplication) along the path to produce the complete transform to the space of the transform reference image (step 710). A given image can frequently be transformed into the space of the transform reference image through several pathways.

Referring to FIG. 4, each of images A, B, and C overlap, so there are pairwise relations between A and B, A and C, and B and C. If A is chosen to be the transform reference image, the transform of B into the output space may be determined using either the single path B to A, or with the composite path B to C then C to A.

If the all the pairwise transforms contain no error, then different paths between two images should yield the same output space transformation (step 720). In the presence of error, however, some paths may be better than others. Rather than selecting between multiple paths arbitrarily (step 730), it is helpful to try to determine which path is likely to be the most accurate (step 740).

Referring to FIG. 8, a simple way to do this is to constrain the input images to have some easily analyzed topology (block 800). For example, if all the images overlap sequentially in the order of input, the pairwise relations between adjacent images can be used.

Another technique that does not depend on prior knowledge of the topology is based on the generation of a minimum spanning tree from the graph of images, where the cost of each link is the negative of some confidence metric of that link (block 810). A minimum spanning tree is defined on a connected graph where each edge has a specified cost, and is the acyclic connected subset graph that has the lower cost sum. A discussion and algorithm for generating the minimum spanning tree is in SEDGEWICK, ALGORITHMS, pp. 452-61 (2d ed. 1988). The process removes pairwise relations so that there is exactly one path between any two images. Furthermore, the sum of the confidence metrics of the remaining pairwise relations is at least as high as any other spanning tree.

One confidence metric used is the number of pixels of overlap between each pair of images. Other confidence metrics can be employed including those based on the result of the projective fit.

If all overlap relations are specified, running the minimum spanning tree algorithm eliminates paths that have less aggregate overlap and are thus less likely to generate an accurate result.

Referring to FIG. 9, image data reprojection onto an output space 900 is not limited to reprojection onto output planes 910, which are theoretically limited to containing less than a 180 degree field of view and are practically limited to about 120 degrees to avoid objectionable perspective effects. Other projections, such as into cylindrical 920 or azimuthal 930 coordinates, introduce distortion but can effectively display fields of view approaching or exceeding 180 degrees. The entire gamut of map projections, which are normally used to display the outer surface of a sphere 940, can be used. Map projections are described in greater detail in articles such as Peter H. Dana's article, Map Projection Overview, available at http://www.utexas.edu/depts/grg/gcraft/notes/mapproj/mapproj.html.

One possible reprojection is to project the output image onto the interior faces of a cube 950. An interactive panoramic viewer with no view direction constraints can be created by rendering a cube using those projections as texture maps. This viewing mechanism can be directly accelerated by using hardware designed for three-dimensional applications.

If the overlapping portions of image data in the source images match exactly (for example, in content, brightness, and color), any blending technique may be used to create image data for the output image in the overlapping portions. In general, however, the images will differ noticeably (even when camera and lens settings are identical), which suggests using a blending technique that increases the consistency between pixels of overlapping portions of the images, as well as in the surrounding portions. One such technique uses a weighted average of pixel data from source images as the pixel data for the output image, where the weight accorded to data from a pixel of a particular image is proportional to the distance of that pixel to the edge (in both dimensions) in that image.

Output rendering may be inverse or forward. Inverse rendering evaluates each source image to determine data for a pixel in the output image, determining which source images contribute to a specific output pixel, summing weighted pixel data from appropriate source images, normalizing to a unit weight, and storing the result, then moving to the next output pixel. Forward rendering evaluates each source image just once to determine data for the pixels of the output image by transforming data for each source image pixel and accumulating weighted data and the weights into buffers for the output image. After evaluating all source images, the weighted sums for the output image data are normalized to a unit weight.

If desired, the invention may interface with hardware or software capable of rendering textured polygons to accelerate the rendering process. Each image can be converted into a texture map, and a rectangle enclosing the image extent and transformed with the transformation parameters can be passed to the renderer.

6. Making Transformations Globally Consistent

As noted above, a potential problem in creating final renderings results from the fact that the above transformations are determined only on a pairwise basis. For example, the transformations between overlapping source images A, B, and C are supposed to be invertible (MAB=MBA −1) and transitive (MABMBC=MAC) However, because the transformation parameters are typically not perfectly estimated, the invertible and transitive properties may not be satisfied. Often the relationship between two images can be determined through more than one path. For example, if image A overlaps image B, image B overlaps image C, and image A overlaps image C, as shown in FIG. 4, possible paths from A to C include MAC and MABMBC. Selecting just one path can cause poor results when the relationship is not the most direct one. This is particularly evident when the image sequence forms a large loop, as it does when constructing fully circular views. The mapping error builds up between the successive combinations of images in the loop, often with the result that a visible mismatch exists between the last image and the first image.

It is possible to satisfy the invertible and transitive constraints by estimating all mappings simultaneously, but this is very expensive computationally. This would require constructing a composite error function of all pairwise relations, and solving over a large dimensional space (the number of degrees of freedom times the number of pairwise relations).

An alternative is to treat the transformation parameters computed on a local basis as being estimates for the global parameters. When a data set is fit to an analytic model using a chi-squared minimization, the Hessian matrix at the parameter values found by the fit is the inverse of the covariance matrix for the fitted parameters. (See PRESS ET AL., NUMERICAL METHODS IN C pp. 540-47.) The covariance matrix is a characterization of the distribution of the parameter estimate, and thus may be used directly to determine the likelihood that the actual parameter values are within some specified epsilon of the estimated values, assuming a multivariate normal distribution. Expressed slightly differently, the covariance matrix can be used as a measure of the relative confidence in the estimate of each parameter value.

The global parameters are derived by adjusting the estimates to satisfy the global constraints in a way that changes high confidence estimates less than low confidence estimates. Assuming that the distribution is the multivariate normal distribution, the probability distribution is proportional to: P ( p i ) - 1 2 i ( p i - p i ) ( C i - 1 ( p i - p i ) ) T

Figure US06249616-20010619-M00023

(See PRESS ET AL., NUMERICAL METHODS IN C p. 554.) The global constraints may be satisfied by maximizing this probability, or equivalently (because the negative exponential is monotonically decreasing), by minimizing the term: D ( p i ) = i ( p i - p i ) ( C i - 1 ( p i - p i ) ) T

Figure US06249616-20010619-M00024

where the sum is over the image pairs, Pi is the unknown vector of mapping parameters for pair I, Pi′ is the locally computed estimate for the mapping parameters for pair I, and Ci −1 is the inverse covariance matrix of the parameters for pair I. This second formulation may also be interpreted as minimizing the squared distance from the estimate measured in “units” of standard deviation. While this approach still results in a large dimensional space, it does not require the composite error function of all pairwise relations.

For a single loop of n images, we can compactly express the global constraint as the identity transform:

M 1,2 M 2,3 . . . M n−1,n M n−1 =I  Equation 17

Additional constraint terms can be added for additional loops that exist in the source images.

Constrained optimization problems of this type can be solved using Lagrangian multipliers, setting the partial derivatives with respect to each parameter and λ of the following expression to zero, and solving the resulting system of equations. i ( p i - p i ) C i - 1 ( p i - p i ) + λ M 1 , 2 M 2 , 3 M n - 1 , n M n , 1 - I 2 Equation 18

Figure US06249616-20010619-M00025

Finding and rendering the images with those parameters distributes the error across all the image pairs.

Other embodiments are within the scope of the following claims.

Claims (23)

What is claimed is:
1. A computer-implemented method for combining two-dimensional source images that have overlapping portions and are taken from a substantially common camera location, each source image represented by a corresponding digital data set of three-dimensional camera parameters that define a position of the camera relative to the source image that is viewed from the camera, the method comprising:
for each pair of overlapping source images to be combined:
determining three-dimensional transformation parameters defining a mapping between a first image space corresponding to one of the source images' digital data set and a second image space corresponding to the other of the source images' digital data set, the mapping describing a reorienting of the camera from one of the source images to the other of the source images; and
creating an output data set representing a two-dimensional output image by combining the digital data sets representing the pair of source images in accordance with the determined three-dimensional transformation parameters and by transforming the source images into a common output space by finding a path from a source image space to an output image space based on the determined three-dimensional transformation parameters;
in which finding a path includes choosing a path that is more accurate than other paths.
2. The method of claim 1, wherein the source images overlap by at least around 20%.
3. The method of claim 1, wherein the three-dimensional transformation parameters describe a camera orientation, distances between the camera and the source images, and a distance between the camera and the output image.
4. The method of claim 1 further comprising projecting the created data set into an output image space.
5. The method of claim 4 in which the output image space corresponds to one of the source image spaces.
6. The method of claim 4 in which the output image space corresponds to a space different from the source image spaces.
7. The method of claim 1 further comprising correcting one or more of the source images to improve matching of overlapping portions of the source images.
8. The method of claim 7 in which image correction comprises correcting for nonuniform magnification.
9. The method of claim 7 in which image correction comprises correcting for nonuniform scaling.
10. The method of claim 7 in which image correction comprises normalizing brightness.
11. The method of claim 7 in which image correction comprises varying a focus.
12. The method of claim 7 in which image correction comprises correcting for vignetting.
13. The method of claim 1 in which determining three-dimensional transformation parameters comprises creating a Gaussian pyramid for each pair of source images.
14. The method of claim 1 in which determining three-dimensional transformation parameters comprises performing non-linear optimization corresponding to an alignment of source images.
15. The method of claim 14 in which non-linear optimization comprises minimizing an error function.
16. The method of claim 1 in which the common output space comprises any of a planar, cylindrical, azimuthal, cubical, or spherical space.
17. The method of claim 1 in which transforming the source images into a common output space comprises selecting, from among a plurality of paths, a path from a source image space to an output image space based on the determined three-dimensional transformation parameters.
18. The method of claim 1 in which a determined three-dimensional transformation between first and second source image spaces and an output space comprises no more than five degrees of freedom.
19. The method of claim 1 in which the created output data set is constrained to be physically realizable.
20. A memory device storing computer readable instructions for aiding a computer to combine two-dimensional source images that have overlapping portions and are taken from a substantially common camera location, each source image represented by a corresponding set of digital data of three-dimensional camera parameters that define a position of the camera relative to the source image that is viewed from the camera, the memory device comprising instructions to perform the following operations:
for each pair of overlapping source images to be combined:
determine three-dimensional transformation parameters defining a mapping between a first image space corresponding to one of the source images' digital data set and a second image space corresponding to the other of the source images' digital data set, the mapping describing a reorienting of the camera from one of the source images to the other of the source images; and
create an output data set representing a two-dimensional output image by combining the digital data sets representing the pair of source images in accordance with the determined three-dimensional transformation parameters and by transforming the source images into a common output space by finding a path from a source image space to an output image space based on the determined three-dimensional transformation parameters;
in which finding a path includes choosing a path that is more accurate than other paths.
21. An apparatus to combine two-dimensional source images that have overlapping portions and are taken from a substantially common camera location, the apparatus comprising:
a storage medium to store overlapping source images, each source image represented by a corresponding set of digital data of three-dimensional camera parameters that define a position of the camera relative to the source image that is viewed from the camera; and
a processor operatively coupled to the storage medium and configured to perform the following operations:
for each pair of overlapping source images to be combined:
determine three-dimensional transformation parameters defining a mapping between a first image space corresponding to one of the source images' digital data set and a second image space corresponding to the other of the source images' digital data set, the mapping describing a reorienting of the camera from one of the source images to the other of the source images; and
create an output data set representing a two-dimensional output image by combining the digital data sets representing the pair of source images in accordance with the determined three-dimensional transformation parameters and by transforming the source images into a common output space by finding a path from a source image space to an output image space based on the determined three-dimensional transformation parameters;
in which finding a path includes choosing a path that is more accurate than other paths.
22. A computer-implemented method for combining two-dimensional source images that have overlapping portions and are taken from a substantially common camera location, each source image represented by a corresponding digital data set of three-dimensional camera parameters that define a position of the camera relative to the source image that is viewed from the camera, the method comprising:
for each pair of overlapping source images to be combined:
determining three-dimensional transformation parameters defining a mapping between a first image space corresponding to one of the source images' digital data set and a second image space corresponding to the other of the source images' digital data set, the mapping describing a reorienting of the camera from one of the source images to the other of the source images; and
creating an output data set representing a two-dimensional output image by combining the digital data sets representing the pair of source images in accordance with the determined three-dimensional transformation parameters and by transforming the source images into a common output space by finding a path from a source image space to an output image space based on the determined three-dimensional transformation parameters;
in which finding the path comprises constraining parameters of the source images.
23. A computer-implemented method for combining two-dimensional source images that have overlapping portions and are taken from a substantially common camera location, each source image represented by a corresponding digital data set of three-dimensional camera parameters that define a position of the camera relative to the source image that is viewed from the camera, the method comprising:
for each pair of overlapping source images to be combined:
determining three-dimensional transformation parameters defining a mapping between a first image space corresponding to one of the source images' digital data set and a second image space corresponding to the other of the source images' digital data set, the mapping describing a reorienting of the camera from one of the source images to the other of the source images; and
creating an output data set representing a two-dimensional output image by combining the digital data sets representing the pair of source images in accordance with the determined three-dimensional transformation parameters and by transforming the source images into a common output space by finding a path from a source image space to an output image space based on the determined three-dimensional transformation parameters;
in which finding the path comprises generating a minimum spanning tree.
US08865840 1997-05-30 1997-05-30 Combining digital images based on three-dimensional relationships between source image data sets Expired - Lifetime US6249616B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US08865840 US6249616B1 (en) 1997-05-30 1997-05-30 Combining digital images based on three-dimensional relationships between source image data sets

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08865840 US6249616B1 (en) 1997-05-30 1997-05-30 Combining digital images based on three-dimensional relationships between source image data sets
JP50099199A JP2000512419A (en) 1997-05-30 1998-05-29 Digital image compositing
EP19980923862 EP0983574A1 (en) 1997-05-30 1998-05-29 Combining digital images
PCT/US1998/011042 WO1998054674A1 (en) 1997-05-30 1998-05-29 Combining digital images

Publications (1)

Publication Number Publication Date
US6249616B1 true US6249616B1 (en) 2001-06-19

Family

ID=25346351

Family Applications (1)

Application Number Title Priority Date Filing Date
US08865840 Expired - Lifetime US6249616B1 (en) 1997-05-30 1997-05-30 Combining digital images based on three-dimensional relationships between source image data sets

Country Status (4)

Country Link
US (1) US6249616B1 (en)
EP (1) EP0983574A1 (en)
JP (1) JP2000512419A (en)
WO (1) WO1998054674A1 (en)

Cited By (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010013895A1 (en) * 2000-02-04 2001-08-16 Kiyoharu Aizawa Arbitrarily focused image synthesizing apparatus and multi-image simultaneous capturing camera for use therein
US20020018062A1 (en) * 2000-08-11 2002-02-14 Minolta Co., Ltd. Method and apparatus for generating three-dimensional data
US6438507B1 (en) * 1999-05-31 2002-08-20 Minolta Co., Ltd. Data processing method and processing device
US20020126129A1 (en) * 2001-01-16 2002-09-12 Snyder John M. Sampling-efficient mapping of images
US20020141655A1 (en) * 2001-02-02 2002-10-03 Sami Niemi Image-based digital representation of a scenery
US6480631B2 (en) * 1997-11-25 2002-11-12 Fuji Xerox Co., Ltd. Geometrical image processing apparatus and method of transforming parts of a divided image
US20020172425A1 (en) * 2001-04-24 2002-11-21 Ramarathnam Venkatesan Recognizer of text-based work
US6507665B1 (en) * 1999-08-25 2003-01-14 Eastman Kodak Company Method for creating environment map containing information extracted from stereo image pairs
US6571023B1 (en) * 1998-04-15 2003-05-27 The University Of Tokyo Image processing method using multiple images
US20030112339A1 (en) * 2001-12-17 2003-06-19 Eastman Kodak Company Method and system for compositing images with compensation for light falloff
US20030174885A1 (en) * 2002-03-13 2003-09-18 Avraham Levy Variational models for spatially dependent gamut mapping
US6628283B1 (en) * 2000-04-12 2003-09-30 Codehorse, Inc. Dynamic montage viewer
US20030184778A1 (en) * 2002-03-28 2003-10-02 Sanyo Electric Co., Ltd. Image processing method, image processing apparatus, computer program product and computer memory product
US20040025025A1 (en) * 1999-10-19 2004-02-05 Ramarathnam Venkatesan System and method for hashing digital images
US6690837B1 (en) * 1998-11-03 2004-02-10 Agfa-Gevaert Screening method for overlapping sub-images
US6697107B1 (en) * 1998-07-09 2004-02-24 Eastman Kodak Company Smoothing a digital color image using luminance values
US20040042685A1 (en) * 2002-08-28 2004-03-04 Lingxiang Zhou Image warping correction in forming 360 degree panoramic images
US6717614B1 (en) * 1998-11-10 2004-04-06 Minolta Co., Ltd. Image synthesizing apparatus, image synthesizing method, and computer-readable recording medium in which an image synthesize processing program is recorded
US6717608B1 (en) * 1999-12-31 2004-04-06 Stmicroelectronics, Inc. Motion estimation for panoramic digital camera
US20040151369A1 (en) * 2003-01-31 2004-08-05 Sirona Dental Systems Gmbh Method and system for imaging an object
US20040189674A1 (en) * 2003-03-31 2004-09-30 Zhengyou Zhang System and method for whiteboard scanning to obtain a high resolution image
US6813391B1 (en) * 2000-07-07 2004-11-02 Microsoft Corp. System and method for exposure compensation
US20040227766A1 (en) * 2003-05-16 2004-11-18 Hong-Long Chou Multilevel texture processing method for mapping multiple images onto 3D models
US6856843B1 (en) * 1998-09-09 2005-02-15 Gerber Technology, Inc. Method and apparatus for displaying an image of a sheet material and cutting parts from the sheet material
US20050063608A1 (en) * 2003-09-24 2005-03-24 Ian Clarke System and method for creating a panorama image from a plurality of source images
US20050071377A1 (en) * 2001-04-24 2005-03-31 Microsoft Corporation Digital signal watermarker
US20050105733A1 (en) * 2001-04-24 2005-05-19 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US20050149727A1 (en) * 2004-01-06 2005-07-07 Kozat S. S. Digital goods representation based upon matrix invariances
US20050165690A1 (en) * 2004-01-23 2005-07-28 Microsoft Corporation Watermarking via quantization of rational statistics of regions
US20050200706A1 (en) * 2003-10-14 2005-09-15 Makoto Ouchi Generation of static image data from multiple image data
US20050210415A1 (en) * 2004-03-12 2005-09-22 Bree Ken V System for organizing and displaying registered images
US20050228270A1 (en) * 2004-04-02 2005-10-13 Lloyd Charles F Method and system for geometric distortion free tracking of 3-dimensional objects from 2-dimensional measurements
US20050237581A1 (en) * 2004-04-21 2005-10-27 Knighton Mark S Hand held portable three dimensional scanner
US20050273617A1 (en) * 2001-04-24 2005-12-08 Microsoft Corporation Robust recognizer of perceptually similar content
US6975434B1 (en) 1999-10-05 2005-12-13 Hewlett-Packard Development Company, L.P. Method and apparatus for scanning oversized documents
US20060002612A1 (en) * 2004-07-01 2006-01-05 Jean-Ronan Vigouroux Device and process for video compression
US6985638B1 (en) * 1999-06-01 2006-01-10 Shin Aoki Efficient perspective transformation of partial images in composing a single image
US7006707B2 (en) 2001-05-03 2006-02-28 Adobe Systems Incorporated Projecting images onto a surface
US20060110071A1 (en) * 2004-10-13 2006-05-25 Ong Sim H Method and system of entropy-based image registration
US20060115182A1 (en) * 2004-11-30 2006-06-01 Yining Deng System and method of intensity correction
US7095905B1 (en) * 2000-09-08 2006-08-22 Adobe Systems Incorporated Merging images to form a panoramic image
US7103236B2 (en) 2001-08-28 2006-09-05 Adobe Systems Incorporated Methods and apparatus for shifting perspective in a composite image
US20060239579A1 (en) * 2005-04-22 2006-10-26 Ritter Bradford A Non Uniform Blending of Exposure and/or Focus Bracketed Photographic Images
US20060257051A1 (en) * 2005-05-13 2006-11-16 Semiconductor Insights Inc. Method of registering and aligning multiple images
US20070008312A1 (en) * 2005-07-08 2007-01-11 Hui Zhou Method for determining camera position from two-dimensional images that form a panorama
US20080143745A1 (en) * 2006-12-13 2008-06-19 Hailin Jin Selecting a reference image for images to be joined
US20080192053A1 (en) * 2007-02-08 2008-08-14 Microsoft Corporation Transforming Offline Maps into Interactive Online Maps
US7428019B2 (en) * 2001-12-26 2008-09-23 Yeda Research And Development Co. Ltd. System and method for increasing space or time resolution in video
US20080247667A1 (en) * 2007-04-05 2008-10-09 Hailin Jin Laying Out Multiple Images
US20080253685A1 (en) * 2007-02-23 2008-10-16 Intellivision Technologies Corporation Image and video stitching and viewing method and system
US7515771B2 (en) 2005-08-19 2009-04-07 Seiko Epson Corporation Method and apparatus for reducing brightness variations in a panorama
US20090092285A1 (en) * 2007-10-03 2009-04-09 Semiconductor Insights, Inc. Method of local tracing of connectivity and schematic representations produced therefrom
US20090135272A1 (en) * 2004-03-25 2009-05-28 Ozluturk Fatih M Method and apparatus to correct digital image blur due to motion of subject or imaging device
US20090153586A1 (en) * 2007-11-07 2009-06-18 Gehua Yang Method and apparatus for viewing panoramic images
US20090175492A1 (en) * 2008-01-08 2009-07-09 Yong-Sheng Chen Image synthesis system for a vehicle and the manufacturing method thereof
US20090185720A1 (en) * 2008-01-21 2009-07-23 Denso International America, Inc. Weighted average image blending based on relative pixel position
US20090190001A1 (en) * 2008-01-25 2009-07-30 Cheimets Peter N Photon counting imaging system
US7653264B2 (en) 2005-03-04 2010-01-26 The Regents Of The University Of Michigan Method of determining alignment of images in high dimensional feature space
US7659995B2 (en) 2000-09-13 2010-02-09 NextPat, Ltd. Digitizer using plural capture methods to image features of 3-D objects
US7660464B1 (en) 2005-12-22 2010-02-09 Adobe Systems Incorporated User interface for high dynamic range merge image selection
US7770014B2 (en) 2004-04-30 2010-08-03 Microsoft Corporation Randomized signal transforms and their applications
US20100283778A1 (en) * 2005-09-12 2010-11-11 Carlos Cortes Tapang Frame by frame, pixel by pixel matching of model-generated graphics images to camera frames for computer vision
US20110075946A1 (en) * 2005-08-01 2011-03-31 Buckland Eric L Methods, Systems and Computer Program Products for Analyzing Three Dimensional Data Sets Obtained from a Sample
US20110169823A1 (en) * 2008-09-25 2011-07-14 Koninklijke Philips Electronics N.V. Three dimensional image data processing
US7995834B1 (en) 2006-01-20 2011-08-09 Nextengine, Inc. Multiple laser scanner
WO2011106798A1 (en) 2010-02-28 2011-09-01 Osterhout Group, Inc. Local advertising content on an interactive head-mounted eyepiece
US20110247829A1 (en) * 2008-10-24 2011-10-13 Dobin Mark W Tracking geologic object and detecting geologic anomalies in exploration seismic data volume
US20120027268A1 (en) * 2009-05-13 2012-02-02 John Kwan Reference Objects and/or Facial/Body Recognition
WO2012037290A2 (en) 2010-09-14 2012-03-22 Osterhout Group, Inc. Eyepiece with uniformly illuminated reflective display
US20120113311A1 (en) * 2010-11-08 2012-05-10 Hon Hai Precision Industry Co., Ltd. Image capture device and method for adjusting focal point of lens of image capture device
US8321422B1 (en) * 2009-04-23 2012-11-27 Google Inc. Fast covariance matrix generation
US8385687B1 (en) * 2006-12-06 2013-02-26 Matrox Electronic Systems, Ltd. Methods for determining a transformation between images
US8385662B1 (en) 2009-04-30 2013-02-26 Google Inc. Principal component analysis based seed generation for clustering analysis
US8391634B1 (en) 2009-04-28 2013-03-05 Google Inc. Illumination estimation for images
US8396325B1 (en) * 2009-04-27 2013-03-12 Google Inc. Image enhancement through discrete patch optimization
US20130063566A1 (en) * 2011-09-14 2013-03-14 Canon Kabushiki Kaisha Determining a depth map from images of a scene
WO2013109742A1 (en) * 2012-01-18 2013-07-25 Logos Technologies, Inc. Method, device, and system for computing a spherical projection image based on two-dimensional images
US8515137B2 (en) 2010-05-03 2013-08-20 Microsoft Corporation Generating a combined image from multiple images
US8611695B1 (en) * 2009-04-27 2013-12-17 Google Inc. Large scale patch search
US8645870B2 (en) 2005-03-31 2014-02-04 Adobe Systems Incorporated Preview cursor for image editing
US20140042310A1 (en) * 2011-04-25 2014-02-13 Eduard BATKILIN System and method for correction of vignetting effect in multi-camera flat panel x-ray detectors
US20140104380A1 (en) * 2012-10-17 2014-04-17 Disney Enterprises, Inc. Efficient ewa video rendering
US20140146131A1 (en) * 2010-09-20 2014-05-29 Mobile Imaging In Sweden Ab Method for forming images
US20140152699A1 (en) * 2004-11-12 2014-06-05 Everyscape, Inc. Method for Inter-Scene Transitions
US8798393B2 (en) 2010-12-01 2014-08-05 Google Inc. Removing illumination variation from images
US8938119B1 (en) 2012-05-01 2015-01-20 Google Inc. Facade illumination removal
US9036044B1 (en) * 2013-07-22 2015-05-19 Google Inc. Adjusting camera parameters associated with a plurality of images
US9091628B2 (en) 2012-12-21 2015-07-28 L-3 Communications Security And Detection Systems, Inc. 3D mapping with two orthogonal imaging views
US20150287203A1 (en) * 2014-04-08 2015-10-08 I2O3D Holdings Limited Method Of Estimating Imaging Device Parameters
US20160050369A1 (en) * 2013-08-28 2016-02-18 Hirokazu Takenaka Image processing apparatus, image processing method, and image system
US9360671B1 (en) * 2014-06-09 2016-06-07 Google Inc. Systems and methods for image zoom
US20160217611A1 (en) * 2015-01-26 2016-07-28 Uber Technologies, Inc. Map-like summary visualization of street-level distance data and panorama data
WO2017040691A1 (en) * 2015-08-31 2017-03-09 Cape Analytics, Inc. Systems and methods for analyzing remote sensing imagery
US20170251194A1 (en) * 2016-02-26 2017-08-31 Infineon Technologies Ag Apparatus for generating a three-dimensional color image and a method for producing a three-dimensional color image
US9785818B2 (en) 2014-08-11 2017-10-10 Synaptics Incorporated Systems and methods for image alignment
US9785819B1 (en) 2016-06-30 2017-10-10 Synaptics Incorporated Systems and methods for biometric image alignment
US9792012B2 (en) 2009-10-01 2017-10-17 Mobile Imaging In Sweden Ab Method relating to digital images
US9792485B2 (en) 2015-06-30 2017-10-17 Synaptics Incorporated Systems and methods for coarse-to-fine ridge-based biometric image alignment
US9826159B2 (en) 2004-03-25 2017-11-21 Clear Imaging Research, Llc Method and apparatus for implementing a digital graduated filter for an imaging apparatus
US9901320B2 (en) 2010-12-14 2018-02-27 Hologic, Inc. System and method for fusing three dimensional image data from a plurality of different imaging systems for use in diagnostic imaging

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60028877D1 (en) * 1999-02-18 2006-08-03 Koninkl Philips Electronics Nv The image processing method, system and apparatus for forming an entire image of an elongated scene
DE10123147A1 (en) * 2000-05-31 2002-10-31 Waehl Marco Method and apparatus for the production and reproduction of spherical panoramas
US8988466B2 (en) 2006-12-13 2015-03-24 Adobe Systems Incorporated Panoramic image straightening

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4598369A (en) * 1983-05-02 1986-07-01 Picker International, Inc. Tomography apparatus and method
US4673988A (en) 1985-04-22 1987-06-16 E.I. Du Pont De Nemours And Company Electronic mosaic imaging process
US4797942A (en) 1987-03-02 1989-01-10 General Electric Pyramid processor for building large-area, high-resolution image by parts
US5187754A (en) 1991-04-30 1993-02-16 General Electric Company Forming, with the aid of an overview image, a composite image from a mosaic of images
EP0563737A1 (en) * 1992-03-23 1993-10-06 Canon Kabushiki Kaisha Multilens imaging apparatus with correction of misregistration
US5444478A (en) 1992-12-29 1995-08-22 U.S. Philips Corporation Image processing method and device for constructing an image from adjacent images
US5531520A (en) * 1994-09-01 1996-07-02 Massachusetts Institute Of Technology System and method of registration of three-dimensional data sets including anatomical body data
US5586231A (en) 1993-12-29 1996-12-17 U.S. Philips Corporation Method and device for processing an image in order to construct from a source image a target image with charge of perspective
US5611000A (en) * 1994-02-22 1997-03-11 Digital Equipment Corporation Spline-based image registration
US5613013A (en) * 1994-05-13 1997-03-18 Reticula Corporation Glass patterns in image alignment and analysis
US5629988A (en) 1993-06-04 1997-05-13 David Sarnoff Research Center, Inc. System and method for electronic image stabilization
US5649032A (en) 1994-11-14 1997-07-15 David Sarnoff Research Center, Inc. System for automatically aligning images to form a mosaic image
US5650814A (en) 1993-10-20 1997-07-22 U.S. Philips Corporation Image processing system comprising fixed cameras and a system simulating a mobile camera
US5684890A (en) * 1994-02-28 1997-11-04 Nec Corporation Three-dimensional reference image segmenting method and apparatus
US5699444A (en) * 1995-03-31 1997-12-16 Synthonics Incorporated Methods and apparatus for using image data to determine camera location and orientation
US5706416A (en) * 1995-11-13 1998-01-06 Massachusetts Institute Of Technology Method and apparatus for relating and combining multiple images of the same scene or object(s)
WO1998012504A1 (en) 1996-09-18 1998-03-26 National Research Council Of Canada Mobile system for indoor 3-d mapping and creating virtual environments
US5757321A (en) * 1992-10-02 1998-05-26 Canon Kabushiki Kaisha Apparatus and method for clipping primitives using information from a previous bounding box process
US5825369A (en) * 1996-01-16 1998-10-20 International Business Machines Corporation Compression of simple geometric models using spanning trees
US5881163A (en) * 1993-03-30 1999-03-09 U.S. Philips Corporation X-ray examination apparatus with an imaging arrangement having a plurality of image sensors

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4598369A (en) * 1983-05-02 1986-07-01 Picker International, Inc. Tomography apparatus and method
US4673988A (en) 1985-04-22 1987-06-16 E.I. Du Pont De Nemours And Company Electronic mosaic imaging process
US4797942A (en) 1987-03-02 1989-01-10 General Electric Pyramid processor for building large-area, high-resolution image by parts
US5187754A (en) 1991-04-30 1993-02-16 General Electric Company Forming, with the aid of an overview image, a composite image from a mosaic of images
EP0563737A1 (en) * 1992-03-23 1993-10-06 Canon Kabushiki Kaisha Multilens imaging apparatus with correction of misregistration
US5757321A (en) * 1992-10-02 1998-05-26 Canon Kabushiki Kaisha Apparatus and method for clipping primitives using information from a previous bounding box process
US5444478A (en) 1992-12-29 1995-08-22 U.S. Philips Corporation Image processing method and device for constructing an image from adjacent images
US5881163A (en) * 1993-03-30 1999-03-09 U.S. Philips Corporation X-ray examination apparatus with an imaging arrangement having a plurality of image sensors
US5629988A (en) 1993-06-04 1997-05-13 David Sarnoff Research Center, Inc. System and method for electronic image stabilization
US5650814A (en) 1993-10-20 1997-07-22 U.S. Philips Corporation Image processing system comprising fixed cameras and a system simulating a mobile camera
US5586231A (en) 1993-12-29 1996-12-17 U.S. Philips Corporation Method and device for processing an image in order to construct from a source image a target image with charge of perspective
US5611000A (en) * 1994-02-22 1997-03-11 Digital Equipment Corporation Spline-based image registration
US5684890A (en) * 1994-02-28 1997-11-04 Nec Corporation Three-dimensional reference image segmenting method and apparatus
US5613013A (en) * 1994-05-13 1997-03-18 Reticula Corporation Glass patterns in image alignment and analysis
US5531520A (en) * 1994-09-01 1996-07-02 Massachusetts Institute Of Technology System and method of registration of three-dimensional data sets including anatomical body data
US5649032A (en) 1994-11-14 1997-07-15 David Sarnoff Research Center, Inc. System for automatically aligning images to form a mosaic image
US5699444A (en) * 1995-03-31 1997-12-16 Synthonics Incorporated Methods and apparatus for using image data to determine camera location and orientation
US5706416A (en) * 1995-11-13 1998-01-06 Massachusetts Institute Of Technology Method and apparatus for relating and combining multiple images of the same scene or object(s)
US5825369A (en) * 1996-01-16 1998-10-20 International Business Machines Corporation Compression of simple geometric models using spanning trees
WO1998012504A1 (en) 1996-09-18 1998-03-26 National Research Council Of Canada Mobile system for indoor 3-d mapping and creating virtual environments

Non-Patent Citations (26)

* Cited by examiner, † Cited by third party
Title
Bergen et al., Hierarchical Model-Based Motion Estimation, ECCV '92, 2nd European Conference on Computer Vision (May 1992).
Brown, A Survey of Image Registration Techniques, ACM Computing Surveys (1992).
Chen, QuickTime VR-An Image-Based Approach to Virtual Environment Navigation, Computer Graphics Proceedings, Annual Conference Series (1995).
Chen, QuickTime VR—An Image-Based Approach to Virtual Environment Navigation, Computer Graphics Proceedings, Annual Conference Series (1995).
D.J. Burr, A Dynamic Model for Image Registration, Computer Graphics and Image Processing (1981).
Dana, Peter H. "Map Projection Overview", pp. 1-8, (http://www.utexas.edu/depts/grg/gcraft/notes/mapproj/mapproj.html).
F. Bartolini et al., A Noise Resistant Optical Flow Algorithm, Proceedings of 7th Intl. Conference on Image Analysis & Processing (Sep. 20-22, 1993).
Green and Heckbert, Creating Raster Omnimax Images from Multiple Perspective Views Using the Elliptical Weighted Average Filter, New York Institute of Technology (1986).
Haeberli, Paul and Eyal Ofek, "Automatic Panoramic Image Merging", 2 pages, (http://www.sgi.com/grafica/merge/index.html).
Irani and Peleg, Improving Resolution by Image Registration, CVGIP: Graphical Models and Image Processing (1991).
L. Teodosio and W. Bender, Salient Video Stills: Content and Context Preserved, ACM Multimedia Conference Proceedings, Anaheim (Aug. 1993).
Lipari et al., Geometric Modeling and Recognition of elongated Regions in Arial Images, IEEE vol. 19 No. 6, pp. 1600-1612, Dec. 1989.*
Mann and Picard, Video Orbits of the Projective Group: A New Perspective on Image Mosaicing, MIT Media Lab Tech Report No. 338 (1995).
Mann and Picard, Virtual Bellows: Constructing High Quality Stills from Video, MIT Media Laboratory Tech Report No. 259 (Nov. 1994).
Mann, Compositing Multiple Pictures of the Same Scene: Generalized Large-Displacement 8-Parameter Motion, Proceedings of the 46th Annual IS&T Conference, Cambridge, Massachusetts (May 9-14, 1993).
Mann, S. and R.W. Picard, "Video Orbits of the Projective Group: A New Perspective on Image Mosaicing", MIT Media Laboratory Perceptual Computing Section Technical Report No. 338, pp. 1-17.
P. Haeberli and E. Ofek, "align.c" source code (1993).
P. Haeberli and E. Ofek, Automatic Panoramic Image Merging, http://www.sgi.com/grafica/mergeindex.html (1997).
P.J. Burt and E.H. Adelson, A Multiresolution Spline with Application to Image Mosaics, ACM Transactions on Graphics, pp. 217-36 (Oct. 1983).
R. I. Hartley, "Projective Reconstruction and Invarants from Multiple Images", IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 16, No. 10, Oct. 1, 1994, pp. 1036-1041.
R. Szeliski, Image Mosaicing for Tele-Reality Applications, Digital Equipment Corporation, Cambridge Research Lab (May 1994).
R. Szeliski, Spline-Based Image Registration, Digital Equipment Corporation, Cambridge Research Lab (Apr. 1994).
R.M. Hord, Digital Image Processing of Remotely Sensed Data, Academic Press (May 1982).
Szeliski, Richard, "Image Mosaicing for Tele-Reality Applications", Cambridge Research Laboratory Technical Report Series, May 1994, pp. 1-30.
Tong, Xin and Krishna Nayak, "Image Registration Using Phase Correlation", EE 262 Project Report, 3 pages, (http://www-LeLand.stanford.edu/~xin/ee262/report/report.html).
Tong, Xin and Krishna Nayak, "Image Registration Using Phase Correlation", EE 262 Project Report, 3 pages, (http://www-LeLand.stanford.edu/˜xin/ee262/report/report.html).

Cited By (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6480631B2 (en) * 1997-11-25 2002-11-12 Fuji Xerox Co., Ltd. Geometrical image processing apparatus and method of transforming parts of a divided image
US6571023B1 (en) * 1998-04-15 2003-05-27 The University Of Tokyo Image processing method using multiple images
US6697107B1 (en) * 1998-07-09 2004-02-24 Eastman Kodak Company Smoothing a digital color image using luminance values
US6856843B1 (en) * 1998-09-09 2005-02-15 Gerber Technology, Inc. Method and apparatus for displaying an image of a sheet material and cutting parts from the sheet material
US20040028291A1 (en) * 1998-11-03 2004-02-12 Dirk Broddin Screening method for overlapping sub-images
US6690837B1 (en) * 1998-11-03 2004-02-10 Agfa-Gevaert Screening method for overlapping sub-images
US6717614B1 (en) * 1998-11-10 2004-04-06 Minolta Co., Ltd. Image synthesizing apparatus, image synthesizing method, and computer-readable recording medium in which an image synthesize processing program is recorded
US6438507B1 (en) * 1999-05-31 2002-08-20 Minolta Co., Ltd. Data processing method and processing device
US6985638B1 (en) * 1999-06-01 2006-01-10 Shin Aoki Efficient perspective transformation of partial images in composing a single image
US6507665B1 (en) * 1999-08-25 2003-01-14 Eastman Kodak Company Method for creating environment map containing information extracted from stereo image pairs
US6975434B1 (en) 1999-10-05 2005-12-13 Hewlett-Packard Development Company, L.P. Method and apparatus for scanning oversized documents
US7421128B2 (en) 1999-10-19 2008-09-02 Microsoft Corporation System and method for hashing digital images
US20040025025A1 (en) * 1999-10-19 2004-02-05 Ramarathnam Venkatesan System and method for hashing digital images
US6717608B1 (en) * 1999-12-31 2004-04-06 Stmicroelectronics, Inc. Motion estimation for panoramic digital camera
US20010013895A1 (en) * 2000-02-04 2001-08-16 Kiyoharu Aizawa Arbitrarily focused image synthesizing apparatus and multi-image simultaneous capturing camera for use therein
US6628283B1 (en) * 2000-04-12 2003-09-30 Codehorse, Inc. Dynamic montage viewer
US6813391B1 (en) * 2000-07-07 2004-11-02 Microsoft Corp. System and method for exposure compensation
US6996266B2 (en) * 2000-08-11 2006-02-07 Minolta Co., Ltd. Method and apparatus for generating three-dimensional data of an object by selecting the method for detecting corresponding points that is suitable to the object
US20020018062A1 (en) * 2000-08-11 2002-02-14 Minolta Co., Ltd. Method and apparatus for generating three-dimensional data
US20060291747A1 (en) * 2000-09-08 2006-12-28 Adobe Systems Incorporated, A Delaware Corporation Merging images to form a panoramic image
US7095905B1 (en) * 2000-09-08 2006-08-22 Adobe Systems Incorporated Merging images to form a panoramic image
US7646932B1 (en) 2000-09-08 2010-01-12 Adobe Systems Incorporated Merging images to form a panoramic image
US7386188B2 (en) 2000-09-08 2008-06-10 Adobe Systems Incorporated Merging images to form a panoramic image
US7659995B2 (en) 2000-09-13 2010-02-09 NextPat, Ltd. Digitizer using plural capture methods to image features of 3-D objects
US20100141960A1 (en) * 2000-09-13 2010-06-10 NextPat, Ltd. Digitizer using plural capture methods to image features of 3-d objects
US8253754B2 (en) * 2001-01-16 2012-08-28 Microsoft Corporation Sampling-efficient mapping of images
US20020126129A1 (en) * 2001-01-16 2002-09-12 Snyder John M. Sampling-efficient mapping of images
US20020141655A1 (en) * 2001-02-02 2002-10-03 Sami Niemi Image-based digital representation of a scenery
US7634660B2 (en) 2001-04-24 2009-12-15 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US20050105733A1 (en) * 2001-04-24 2005-05-19 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US7568103B2 (en) 2001-04-24 2009-07-28 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US20050108545A1 (en) * 2001-04-24 2005-05-19 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US20050125671A1 (en) * 2001-04-24 2005-06-09 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US20050084103A1 (en) * 2001-04-24 2005-04-21 Microsoft Corporation Recognizer of content of digital signals
US20050273617A1 (en) * 2001-04-24 2005-12-08 Microsoft Corporation Robust recognizer of perceptually similar content
US7406195B2 (en) 2001-04-24 2008-07-29 Microsoft Corporation Robust recognizer of perceptually similar content
US7636849B2 (en) 2001-04-24 2009-12-22 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US7657752B2 (en) 2001-04-24 2010-02-02 Microsoft Corporation Digital signal watermaker
US7318157B2 (en) 2001-04-24 2008-01-08 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US20060069919A1 (en) * 2001-04-24 2006-03-30 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US7707425B2 (en) 2001-04-24 2010-04-27 Microsoft Corporation Recognizer of content of digital signals
US20020172425A1 (en) * 2001-04-24 2002-11-21 Ramarathnam Venkatesan Recognizer of text-based work
US20050071377A1 (en) * 2001-04-24 2005-03-31 Microsoft Corporation Digital signal watermarker
US7617398B2 (en) 2001-04-24 2009-11-10 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US20060059354A1 (en) * 2001-04-24 2006-03-16 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US7318158B2 (en) 2001-04-24 2008-01-08 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US7006707B2 (en) 2001-05-03 2006-02-28 Adobe Systems Incorporated Projecting images onto a surface
US20060274972A1 (en) * 2001-08-28 2006-12-07 Adobe Systems Incorporated Methods and apparatus for shifting perspective in a composition image
US7103236B2 (en) 2001-08-28 2006-09-05 Adobe Systems Incorporated Methods and apparatus for shifting perspective in a composite image
US7471849B2 (en) 2001-08-28 2008-12-30 Adobe Systems Incorporated Methods and apparatus for shifting perspective in a composite image
US20030112339A1 (en) * 2001-12-17 2003-06-19 Eastman Kodak Company Method and system for compositing images with compensation for light falloff
US7428019B2 (en) * 2001-12-26 2008-09-23 Yeda Research And Development Co. Ltd. System and method for increasing space or time resolution in video
US20030174885A1 (en) * 2002-03-13 2003-09-18 Avraham Levy Variational models for spatially dependent gamut mapping
US6873439B2 (en) * 2002-03-13 2005-03-29 Hewlett-Packard Development Company, L.P. Variational models for spatially dependent gamut mapping
US20030184778A1 (en) * 2002-03-28 2003-10-02 Sanyo Electric Co., Ltd. Image processing method, image processing apparatus, computer program product and computer memory product
US7317558B2 (en) * 2002-03-28 2008-01-08 Sanyo Electric Co., Ltd. System and method for image processing of multiple images
US7400782B2 (en) * 2002-08-28 2008-07-15 Arcsoft, Inc. Image warping correction in forming 360 degree panoramic images
US20040042685A1 (en) * 2002-08-28 2004-03-04 Lingxiang Zhou Image warping correction in forming 360 degree panoramic images
US7522764B2 (en) * 2003-01-31 2009-04-21 Sirona Dental Systems Gmbh Method and system for imaging an object
US20040151369A1 (en) * 2003-01-31 2004-08-05 Sirona Dental Systems Gmbh Method and system for imaging an object
US20040189674A1 (en) * 2003-03-31 2004-09-30 Zhengyou Zhang System and method for whiteboard scanning to obtain a high resolution image
US7119816B2 (en) * 2003-03-31 2006-10-10 Microsoft Corp. System and method for whiteboard scanning to obtain a high resolution image
US20050104902A1 (en) * 2003-03-31 2005-05-19 Microsoft Corporation System and method for whiteboard scanning to obtain a high resolution image
US7301548B2 (en) * 2003-03-31 2007-11-27 Microsoft Corp. System and method for whiteboard scanning to obtain a high resolution image
US20040227766A1 (en) * 2003-05-16 2004-11-18 Hong-Long Chou Multilevel texture processing method for mapping multiple images onto 3D models
US7557812B2 (en) 2003-05-16 2009-07-07 Industrial Technology Research Institute Multilevel texture processing method for mapping multiple images onto 3D models
US20070188511A1 (en) * 2003-05-16 2007-08-16 Industrial Technology Research Institute Multilevel texture processing method for mapping multiple images onto 3D models
US7265761B2 (en) * 2003-05-16 2007-09-04 Industrial Technology Research Institute Multilevel texture processing method for mapping multiple images onto 3D models
US20050063608A1 (en) * 2003-09-24 2005-03-24 Ian Clarke System and method for creating a panorama image from a plurality of source images
US7535497B2 (en) * 2003-10-14 2009-05-19 Seiko Epson Corporation Generation of static image data from multiple image data
US20050200706A1 (en) * 2003-10-14 2005-09-15 Makoto Ouchi Generation of static image data from multiple image data
US20050149727A1 (en) * 2004-01-06 2005-07-07 Kozat S. S. Digital goods representation based upon matrix invariances
US7831832B2 (en) * 2004-01-06 2010-11-09 Microsoft Corporation Digital goods representation based upon matrix invariances
US20050165690A1 (en) * 2004-01-23 2005-07-28 Microsoft Corporation Watermarking via quantization of rational statistics of regions
US20050210415A1 (en) * 2004-03-12 2005-09-22 Bree Ken V System for organizing and displaying registered images
US7966563B2 (en) * 2004-03-12 2011-06-21 Vanbree Ken System for organizing and displaying registered images
US9800787B2 (en) 2004-03-25 2017-10-24 Clear Imaging Research, Llc Method and apparatus to correct digital video to counteract effect of camera shake
US9294674B2 (en) 2004-03-25 2016-03-22 Fatih M. Ozluturk Method and apparatus to correct digital image blur due to motion of subject or imaging device
US9167162B2 (en) 2004-03-25 2015-10-20 Fatih M. Ozluturk Method and apparatus to correct digital image blur due to motion of subject or imaging device by adjusting image sensor
US20090135272A1 (en) * 2004-03-25 2009-05-28 Ozluturk Fatih M Method and apparatus to correct digital image blur due to motion of subject or imaging device
US8922663B2 (en) 2004-03-25 2014-12-30 Fatih M. Ozluturk Method and apparatus to correct digital image blur due to motion of subject or imaging device
US9001221B2 (en) 2004-03-25 2015-04-07 Fatih M. Ozluturk Method and apparatus for using motion information and image data to correct blurred images
US8630484B2 (en) * 2004-03-25 2014-01-14 Fatih M. Ozluturk Method and apparatus to correct digital image blur due to motion of subject or imaging device
US9392175B2 (en) 2004-03-25 2016-07-12 Fatih M. Ozluturk Method and apparatus for using motion information and image data to correct blurred images
US9826159B2 (en) 2004-03-25 2017-11-21 Clear Imaging Research, Llc Method and apparatus for implementing a digital graduated filter for an imaging apparatus
US9154699B2 (en) 2004-03-25 2015-10-06 Fatih M. Ozluturk Method and apparatus to correct blur in all or part of a digital image by combining plurality of images
US9013587B2 (en) 2004-03-25 2015-04-21 Fatih M. Ozluturk Method and apparatus to correct digital image blur by combining multiple images
US9800788B2 (en) 2004-03-25 2017-10-24 Clear Imaging Research, Llc Method and apparatus for using motion information and image data to correct blurred images
US9774785B2 (en) 2004-03-25 2017-09-26 Clear Imaging Research, Llc Method and apparatus to correct blur in all or part of a digital image by combining plurality of images
US9860450B2 (en) 2004-03-25 2018-01-02 Clear Imaging Research, Llc Method and apparatus to correct digital video to counteract effect of camera shake
US9338356B2 (en) 2004-03-25 2016-05-10 Fatih M. Ozluturk Method and apparatus to correct digital video to counteract effect of camera shake
US20050228270A1 (en) * 2004-04-02 2005-10-13 Lloyd Charles F Method and system for geometric distortion free tracking of 3-dimensional objects from 2-dimensional measurements
US9549168B2 (en) 2004-04-21 2017-01-17 Nextpat Limited Hand held portable three dimensional scanner
US20050237581A1 (en) * 2004-04-21 2005-10-27 Knighton Mark S Hand held portable three dimensional scanner
US20100215252A1 (en) * 2004-04-21 2010-08-26 Nextpat Limited Hand held portable three dimensional scanner
WO2005107232A3 (en) * 2004-04-21 2008-01-24 Nextengine Inc Hand held portable three dimensional scanner
US8116559B2 (en) 2004-04-21 2012-02-14 Nextengine, Inc. Hand held portable three dimensional scanner
US7711179B2 (en) 2004-04-21 2010-05-04 Nextengine, Inc. Hand held portable three dimensional scanner
US8699829B2 (en) 2004-04-21 2014-04-15 Nextpat Limited Hand held portable three dimensional scanner
US8595276B2 (en) 2004-04-30 2013-11-26 Microsoft Corporation Randomized signal transforms and their applications
US20100228809A1 (en) * 2004-04-30 2010-09-09 Microsoft Corporation Randomized Signal Transforms and Their Applications
US7770014B2 (en) 2004-04-30 2010-08-03 Microsoft Corporation Randomized signal transforms and their applications
KR101163774B1 (en) 2004-07-01 2012-07-06 톰슨 라이센싱 Device and process for video compression
US8340176B2 (en) * 2004-07-01 2012-12-25 Thomson Licensing Device and method for grouping of images and spanning tree for video compression
US20060002612A1 (en) * 2004-07-01 2006-01-05 Jean-Ronan Vigouroux Device and process for video compression
US20060110071A1 (en) * 2004-10-13 2006-05-25 Ong Sim H Method and system of entropy-based image registration
US20140152699A1 (en) * 2004-11-12 2014-06-05 Everyscape, Inc. Method for Inter-Scene Transitions
US20060115182A1 (en) * 2004-11-30 2006-06-01 Yining Deng System and method of intensity correction
US7653264B2 (en) 2005-03-04 2010-01-26 The Regents Of The University Of Michigan Method of determining alignment of images in high dimensional feature space
US8645870B2 (en) 2005-03-31 2014-02-04 Adobe Systems Incorporated Preview cursor for image editing
US20060239579A1 (en) * 2005-04-22 2006-10-26 Ritter Bradford A Non Uniform Blending of Exposure and/or Focus Bracketed Photographic Images
US7693348B2 (en) 2005-05-13 2010-04-06 Semiconductor Insights Inc. Method of registering and aligning multiple images
US20080123996A1 (en) * 2005-05-13 2008-05-29 Semiconductor Insights, Inc. Method of registering and aligning multiple images
US20060257051A1 (en) * 2005-05-13 2006-11-16 Semiconductor Insights Inc. Method of registering and aligning multiple images
US7565029B2 (en) 2005-07-08 2009-07-21 Seiko Epson Corporation Method for determining camera position from two-dimensional images that form a panorama
US20070008312A1 (en) * 2005-07-08 2007-01-11 Hui Zhou Method for determining camera position from two-dimensional images that form a panorama
US20110075946A1 (en) * 2005-08-01 2011-03-31 Buckland Eric L Methods, Systems and Computer Program Products for Analyzing Three Dimensional Data Sets Obtained from a Sample
US8442356B2 (en) * 2005-08-01 2013-05-14 Bioptgien, Inc. Methods, systems and computer program products for analyzing three dimensional data sets obtained from a sample
US7515771B2 (en) 2005-08-19 2009-04-07 Seiko Epson Corporation Method and apparatus for reducing brightness variations in a panorama
US8102390B2 (en) * 2005-09-12 2012-01-24 Carlos Tapang Frame by frame, pixel by pixel matching of model-generated graphics images to camera frames for computer vision
US20100283778A1 (en) * 2005-09-12 2010-11-11 Carlos Cortes Tapang Frame by frame, pixel by pixel matching of model-generated graphics images to camera frames for computer vision
US7660464B1 (en) 2005-12-22 2010-02-09 Adobe Systems Incorporated User interface for high dynamic range merge image selection
US8027538B1 (en) 2005-12-22 2011-09-27 Adobe Systems Incorporated User interface for high dynamic range merge image selection
US7995834B1 (en) 2006-01-20 2011-08-09 Nextengine, Inc. Multiple laser scanner
US8385687B1 (en) * 2006-12-06 2013-02-26 Matrox Electronic Systems, Ltd. Methods for determining a transformation between images
US7995861B2 (en) * 2006-12-13 2011-08-09 Adobe Systems Incorporated Selecting a reference image for images to be joined
US20080143745A1 (en) * 2006-12-13 2008-06-19 Hailin Jin Selecting a reference image for images to be joined
US8224119B2 (en) 2006-12-13 2012-07-17 Adobe Systems Incorporated Selecting a reference image for images to be joined
US8368695B2 (en) * 2007-02-08 2013-02-05 Microsoft Corporation Transforming offline maps into interactive online maps
US20080192053A1 (en) * 2007-02-08 2008-08-14 Microsoft Corporation Transforming Offline Maps into Interactive Online Maps
US20080253685A1 (en) * 2007-02-23 2008-10-16 Intellivision Technologies Corporation Image and video stitching and viewing method and system
US8200039B2 (en) * 2007-04-05 2012-06-12 Adobe Systems Incorporated Laying out multiple images
US20120243803A1 (en) * 2007-04-05 2012-09-27 Adobe Systems Incorporated Laying Out Multiple Images
US20080247667A1 (en) * 2007-04-05 2008-10-09 Hailin Jin Laying Out Multiple Images
US8509566B2 (en) * 2007-04-05 2013-08-13 Adobe Systems Incorporated Laying out multiple images
US8606041B2 (en) 2007-10-03 2013-12-10 Semiconductor Insights, Inc. Method of local tracing of connectivity and schematic representations produced therefrom
US20090092285A1 (en) * 2007-10-03 2009-04-09 Semiconductor Insights, Inc. Method of local tracing of connectivity and schematic representations produced therefrom
US20090153586A1 (en) * 2007-11-07 2009-06-18 Gehua Yang Method and apparatus for viewing panoramic images
US20090175492A1 (en) * 2008-01-08 2009-07-09 Yong-Sheng Chen Image synthesis system for a vehicle and the manufacturing method thereof
US8150210B2 (en) * 2008-01-18 2012-04-03 National Chiao Tung University Image synthesis system for a vehicle and the manufacturing method thereof
US20090185720A1 (en) * 2008-01-21 2009-07-23 Denso International America, Inc. Weighted average image blending based on relative pixel position
US8923648B2 (en) * 2008-01-21 2014-12-30 Denso International America, Inc. Weighted average image blending based on relative pixel position
US7961224B2 (en) 2008-01-25 2011-06-14 Peter N. Cheimets Photon counting imaging system
US20090190001A1 (en) * 2008-01-25 2009-07-30 Cheimets Peter N Photon counting imaging system
US8890868B2 (en) * 2008-09-25 2014-11-18 Koninklijke Philips N.V. Three dimensional image data processing
US20110169823A1 (en) * 2008-09-25 2011-07-14 Koninklijke Philips Electronics N.V. Three dimensional image data processing
US20110247829A1 (en) * 2008-10-24 2011-10-13 Dobin Mark W Tracking geologic object and detecting geologic anomalies in exploration seismic data volume
US9022129B2 (en) * 2008-10-24 2015-05-05 Exxonmobil Upstream Research Company Tracking geologic object and detecting geologic anomalies in exploration seismic data volume
US8321422B1 (en) * 2009-04-23 2012-11-27 Google Inc. Fast covariance matrix generation
US8583656B1 (en) 2009-04-23 2013-11-12 Google Inc. Fast covariance matrix generation
US8396325B1 (en) * 2009-04-27 2013-03-12 Google Inc. Image enhancement through discrete patch optimization
US8571349B1 (en) * 2009-04-27 2013-10-29 Google Inc Image enhancement through discrete patch optimization
US8611695B1 (en) * 2009-04-27 2013-12-17 Google Inc. Large scale patch search
US8391634B1 (en) 2009-04-28 2013-03-05 Google Inc. Illumination estimation for images
US8385662B1 (en) 2009-04-30 2013-02-26 Google Inc. Principal component analysis based seed generation for clustering analysis
US9229957B2 (en) * 2009-05-13 2016-01-05 Kwan Sofware Engineering, Inc. Reference objects and/or facial/body recognition
US20120027268A1 (en) * 2009-05-13 2012-02-02 John Kwan Reference Objects and/or Facial/Body Recognition
US9792012B2 (en) 2009-10-01 2017-10-17 Mobile Imaging In Sweden Ab Method relating to digital images
WO2011106798A1 (en) 2010-02-28 2011-09-01 Osterhout Group, Inc. Local advertising content on an interactive head-mounted eyepiece
US8837859B2 (en) 2010-05-03 2014-09-16 Microsoft Corporation Generating a combined image from multiple images
US8515137B2 (en) 2010-05-03 2013-08-20 Microsoft Corporation Generating a combined image from multiple images
WO2012037290A2 (en) 2010-09-14 2012-03-22 Osterhout Group, Inc. Eyepiece with uniformly illuminated reflective display
US20140146131A1 (en) * 2010-09-20 2014-05-29 Mobile Imaging In Sweden Ab Method for forming images
US9544498B2 (en) * 2010-09-20 2017-01-10 Mobile Imaging In Sweden Ab Method for forming images
US20120113311A1 (en) * 2010-11-08 2012-05-10 Hon Hai Precision Industry Co., Ltd. Image capture device and method for adjusting focal point of lens of image capture device
US8798393B2 (en) 2010-12-01 2014-08-05 Google Inc. Removing illumination variation from images
US9901320B2 (en) 2010-12-14 2018-02-27 Hologic, Inc. System and method for fusing three dimensional image data from a plurality of different imaging systems for use in diagnostic imaging
US9360571B2 (en) * 2011-04-25 2016-06-07 Generic Imaging Ltd. System and method for correction of vignetting effect in multi-camera flat panel x-ray detectors
US20140042310A1 (en) * 2011-04-25 2014-02-13 Eduard BATKILIN System and method for correction of vignetting effect in multi-camera flat panel x-ray detectors
US9836855B2 (en) * 2011-09-14 2017-12-05 Canon Kabushiki Kaisha Determining a depth map from images of a scene
US20130063566A1 (en) * 2011-09-14 2013-03-14 Canon Kabushiki Kaisha Determining a depth map from images of a scene
GB2512242A (en) * 2012-01-18 2014-09-24 Logos Technologies Llc Method, device, and system for computing a spherical projection image based on two-dimensional images
WO2013109742A1 (en) * 2012-01-18 2013-07-25 Logos Technologies, Inc. Method, device, and system for computing a spherical projection image based on two-dimensional images
US8938119B1 (en) 2012-05-01 2015-01-20 Google Inc. Facade illumination removal
US9215440B2 (en) * 2012-10-17 2015-12-15 Disney Enterprises, Inc. Efficient EWA video rendering
US20140104380A1 (en) * 2012-10-17 2014-04-17 Disney Enterprises, Inc. Efficient ewa video rendering
US9091628B2 (en) 2012-12-21 2015-07-28 L-3 Communications Security And Detection Systems, Inc. 3D mapping with two orthogonal imaging views
US9036044B1 (en) * 2013-07-22 2015-05-19 Google Inc. Adjusting camera parameters associated with a plurality of images
US20160050369A1 (en) * 2013-08-28 2016-02-18 Hirokazu Takenaka Image processing apparatus, image processing method, and image system
US9609212B2 (en) * 2013-08-28 2017-03-28 Ricoh Company, Ltd. Image processing apparatus, image processing method, and image system
US9697607B2 (en) * 2014-04-08 2017-07-04 I2O3D Holdings Limited Method of estimating imaging device parameters
US20160300355A1 (en) * 2014-04-08 2016-10-13 I2O3D Holdings Limited Method Of Estimating Imaging Device Parameters
US20150287203A1 (en) * 2014-04-08 2015-10-08 I2O3D Holdings Limited Method Of Estimating Imaging Device Parameters
US9396542B2 (en) * 2014-04-08 2016-07-19 I2O3D Holdings Limited Method of estimating imaging device parameters
US9360671B1 (en) * 2014-06-09 2016-06-07 Google Inc. Systems and methods for image zoom
US9785818B2 (en) 2014-08-11 2017-10-10 Synaptics Incorporated Systems and methods for image alignment
US20160217611A1 (en) * 2015-01-26 2016-07-28 Uber Technologies, Inc. Map-like summary visualization of street-level distance data and panorama data
US9792485B2 (en) 2015-06-30 2017-10-17 Synaptics Incorporated Systems and methods for coarse-to-fine ridge-based biometric image alignment
WO2017040691A1 (en) * 2015-08-31 2017-03-09 Cape Analytics, Inc. Systems and methods for analyzing remote sensing imagery
US20170251194A1 (en) * 2016-02-26 2017-08-31 Infineon Technologies Ag Apparatus for generating a three-dimensional color image and a method for producing a three-dimensional color image
US9785819B1 (en) 2016-06-30 2017-10-10 Synaptics Incorporated Systems and methods for biometric image alignment

Also Published As

Publication number Publication date Type
WO1998054674A1 (en) 1998-12-03 application
JP2000512419A (en) 2000-09-19 application
EP0983574A1 (en) 2000-03-08 application

Similar Documents

Publication Publication Date Title
Liu et al. Automatic estimation and removal of noise from a single image
Capel et al. Automated mosaicing with super-resolution zoom
McMillan An image-based approach to three-dimensional computer graphics
Mann et al. Video orbits of the projective group a simple approach to featureless estimation of parameters
Whyte et al. Non-uniform deblurring for shaken images
US5818959A (en) Method of producing a three-dimensional image from two-dimensional images
US6016152A (en) Apparatus and method for non-uniform image scaling
US6434265B1 (en) Aligning rectilinear images in 3D through projective registration and calibration
US6750873B1 (en) High quality texture reconstruction from multiple scans
US6359617B1 (en) Blending arbitrary overlaying images into panoramas
US20040170340A1 (en) Bayesian image super resolution
US6137491A (en) Method and apparatus for reconstructing geometry using geometrically constrained structure from motion with points on planes
US20030091227A1 (en) 3-D reconstruction engine
US20050018058A1 (en) Method and system for reconstructing 3D interactive walkthroughs of real-world environments
Capel et al. Super-resolution enhancement of text image sequences
Capel Image mosaicing
US6677957B2 (en) Hardware-accelerated visualization of surface light fields
US6011558A (en) Intelligent stitcher for panoramic image-based virtual worlds
US20020041717A1 (en) Image processing method and apparatus and computer-readable storage medium using improved distortion correction
US20060204040A1 (en) Occluding contour detection and storage for digital photography
Zokai et al. Image registration using log-polar mappings for recovery of large-scale similarity and projective transformations
US8643701B2 (en) System for executing 3D propagation for depth image-based rendering
US6219462B1 (en) Method and apparatus for performing global image alignment using any local match measure
Hansen et al. Real-time scene stabilization and mosaic construction
Mann et al. Virtual bellows: Constructing high quality stills from video

Legal Events

Date Code Title Description
AS Assignment

Owner name: ENROUTE, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HASHIMOTO, ROY T.;REEL/FRAME:008970/0910

Effective date: 19971107

SULP Surcharge for late payment
FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: BE HERE CORPORATION, CALIFORNIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNORS:BIRCHMERE VENTURES II, L.P.;DIETRICK, CHARLES;DRISCOLL, DAVID;AND OTHERS;REEL/FRAME:020125/0852;SIGNING DATES FROM 20071113 TO 20071116

AS Assignment

Owner name: B. H. IMAGE CO. LLC, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BE HERE CORPORATION;REEL/FRAME:020325/0452

Effective date: 20071117

FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: BE HERE CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ENROUTE, INC.;REEL/FRAME:021952/0170

Effective date: 20071024

FPAY Fee payment

Year of fee payment: 12

AS Assignment

Owner name: CHARTOLEAUX KG LIMITED LIABILITY COMPANY, DELAWARE

Free format text: MERGER;ASSIGNOR:B.H. IMAGE CO. LLC;REEL/FRAME:037096/0897

Effective date: 20150812