EP1594322A2 - Position determination - Google Patents

Position determination Download PDF

Info

Publication number
EP1594322A2
EP1594322A2 EP05250821A EP05250821A EP1594322A2 EP 1594322 A2 EP1594322 A2 EP 1594322A2 EP 05250821 A EP05250821 A EP 05250821A EP 05250821 A EP05250821 A EP 05250821A EP 1594322 A2 EP1594322 A2 EP 1594322A2
Authority
EP
European Patent Office
Prior art keywords
camera
image
images
pose
estimate
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.)
Withdrawn
Application number
EP05250821A
Other languages
German (de)
French (fr)
Other versions
EP1594322A3 (en
Inventor
Graham Alexander Thomas
Jigna Chandaria
Oliver Grau
Hannah Margaret Fraser
Peter John Brightwell
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.)
British Broadcasting Corp
Original Assignee
British Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by British Broadcasting Corp filed Critical British Broadcasting Corp
Publication of EP1594322A2 publication Critical patent/EP1594322A2/en
Publication of EP1594322A3 publication Critical patent/EP1594322A3/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/2224Studio circuitry; Studio devices; Studio equipment related to virtual studio applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/147Details of sensors, e.g. sensor lenses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Definitions

  • the present invention relates to position determination, particularly but not exclusively for determination of the position of a camera.
  • position and orientation herein referred to as "pose” are determined.
  • One particular application of at least some aspects of the invention is the derivation of camera position in a scene to enable a virtual object to be overlaid on the camera image or the camera image processed to produce broadcast quality output in real time. It is important to appreciate that techniques developed for other purposes may be fundamentally unsuited to this task. In particular, certain types of error in position may be highly and unacceptably noticeable, as they can lead to visually highly perceptible effects. For example, a position determination method which provides a position with a relatively small but randomly fluctuating error may be perfectly usable for most purposes but may give rise to unacceptable jitter if used as the basis for a virtual image overlay.
  • Another important consideration is that at least some preferred applications of the present invention deal with deriving camera pose and often also camera lens parameters, particularly zoom, optionally also a measure of focus setting. Methods which are useful for determining a few degrees of freedom cannot in general be routinely adapted to determine more degrees of freedom as such methods normally rely at least implicitly on certain assumptions about the degrees of freedom which are not determined. A further consideration is the need to provide real-time motion information. Intensive processing techniques which may work well for deriving a static position may be inherently unsuited to practical use in real time and it is not normally realistic simply to apply brute force processing power to an inherently "static" technique.
  • Creating a 3D model of a scene is a conventional method of estimating the required information. Theoretically it is logical and easy to understand. In practice, however, we have found that the limitations of accuracy with which the model can be created and used in reality, as well as the manual and computational effort, make this problematic for the purpose of virtual production.
  • a series of reference images of the scene are captured and stored (106 of fig. '1) before the tracking system is used, covering a range of views that are representative of those that the camera will be expected to see during use. These images could either be captured with a camera (102 of fig. 1) similar or identical to the camera that is to be tracked, or could be captured with a high-resolution stills camera.
  • Such a camera fitted with a wide-angle lens provides a convenient way of rapidly acquiring a set of images that contain a high level of detail.
  • the total number of images required will depend on the range of movement that the camera to be tracked can undergo, and may vary from less than 10 for a panning camera in a fixed position, to many hundreds for a camera that can move freely in a large volume. It is important to note that a 3D model could be created from these images. However, in practical applications, inconsistencies between information from each image give rise to problems and the practical effects are much more noticeable than the theory might suggest.
  • information is derived and stored (106 of fig. 1) for each image that specifies the camera pose, together with the internal camera parameters (such as focal length, pixel dimensions and lens distortion).
  • the positions in 3D space of selected features or regions in each reference image are also derived and stored.
  • the selected features should be those that are easy to match and identify uniquely and are thus useful for the subsequent tracking process, and preferably include corners or edges, or patches of rich texture.
  • a measure of at least some parameters of camera pose associated with at least the reference images can be obtained from further source of pose information, optionally a further position determination system or camera sensor.
  • Any suitable off-line method may be used for deriving the positions in 3D space of features in a scene from multiple images, and for deriving the positions of the cameras that captured the images.
  • One example is described in "M. Pollefeys, M. Vergauwen, K. Cornelis, J. Tops, F. Verbiest, L. Van Gool. Structure and motion from image sequences Proc. Conference on Optical 3-D Measurement Techniques V, Grün, Kahmen (Eds.), Vienna, October, 2001, pp. 251-258". Manual methods such as the use of surveying tools such as theodolites may also be used.
  • the scene contains a known structure, such as the lines of a tennis court
  • its appearance and dimensions can be used to help the process.
  • Other position determination methods may be used to assist, for example our marker tracking method of GB-A-2325807 using a modified reference camera.
  • the precise method by which the data is gathered is not critical and it is important to note that this process is not time-critical, so prior art methods which are computationally intensive may be used in this step.
  • At least some measures of three-dimensional position of reference features are preferably calculated from comparison of a number of reference images. Calculated positions or storing positions for reference features may be modified based on user input.
  • each reference image it is highly convenient for the 3D feature locations in each reference image to be represented as a depth image from the point of view of the camera capturing the corresponding image, since by knowing the distance of a point or a region in the scene from the camera, and the pose and internal parameters of the camera, the 3D position of the point or region can be determined. In particular, this provides an efficient means of storing the 3D shape of patches of texture.
  • the overall effect, using the inventive process, of errors or uncertainty in the 3D position of points or features may be reduced. For example, an error in assigning the correct depth to a low-texture area in one reference image is unlikely to have a major effect on camera pose calculations for positions around those of the reference image, as the erroneous value is still likely to give a good match to the observed scene. For positions further away, different reference images will be used so the error will have no effect.
  • Those areas of each reference image which are unsuitable for use as features to track can be flagged, manually or automatically, or by a combination. Such areas might include those that were devoid of texture or other features, or those having features very similar to those appearing elsewhere in the image (which might give rise to false matches).
  • Other features that are unsuitable for use for tracking include those areas that are likely to move in the scene (such as a door which may open), or those likely to be obscured (such as seats in a football stadium); such features may have to be manually identified during the image capture phase. It may also be useful to distinguish between features that are known to be rigid (such as a wall) and those that may potentially move over time (such as scenery in a studio), as this can help with re-calibration as explained later.
  • the flagging may have a dynamic or conditional component, indicating that some areas may be reliable at some point or under certain lighting or other conditions but not others (e.g. if a part of a set is expected to move or is particularly prone to reflection).
  • the classification information could be stored as a separate image component, allowing each pixel to be labelled individually. It may be convenient to flag some categories of image area, such as those which are totally unsuited for tracking, by using particular 'reserved values' in the image or depth map itself.
  • Each reference image may therefore comprise a plurality of pixels and include a measure of depth and a measure of suitability as a reference feature for each pixel.
  • a variable measure of the suitability of a portion of each reference image to provide a reference feature can be stored. Designating or modifying designation of reference features, and/or designating non-reference features, can be based on user input and/or comparison of reference images.
  • a first image is captured by the camera (202 of fig. 2).
  • the set of reference images (204 of fig. 2) are then compared (206 of fig. 2) with the captured image in order to determine which reference image gives the closest match.
  • An estimate of the initial pose and internal parameters of the camera is then taken to be the set of stored camera parameters associated with the matching image.
  • a first set of correlations can be carried out using lower resolution versions of the captured and reference images in order to quickly eliminate a large number of poor matches.
  • a mixture of techniques including for example colour descriptors, could be used in this initial stage.
  • the current image can be compared to all of the reference images in at least an initialisation or validation step or in an initial comparison step.
  • the remaining reference images can then be correlated at a higher resolution, and the process may be repeated several times until full-resolution images are used.
  • Other fast matching methods could be used, such as using two one-dimensional correlations instead of a two-dimensional correlation.
  • the images to be correlated are each summed along their rows, to produce a single column of pixels consisting of the sum (or average) of the rows.
  • a similar process is applied to columns of pixels.
  • the averaged row of the captured image is then matched against the averaged rows of the reference images, and similarly for the columns.
  • This approach can be combined with other approaches, such as multi-resolution.
  • the comparison may include direct comparing of images, and a plurality of comparison stages of progressively increasing accuracy and/or computational cost can be performed.
  • the matching process should be chosen to be relatively immune to parts of the scene not being visible in any reference image, or to the presence of objects or people in the current image that are not present in any reference image. This kind of immunity can be improved using well-known techniques such as dividing the image into quadrants or other regions, performing the correlation or other matching process separately for each region, and ignoring regions that give a poor match. It may also be advantageous to ignore areas of each reference image that were identified as being unsuitable for tracking.
  • the comparison process may also provide an estimate of the offset between this image and the first captured image.
  • This offset may include, for example, the relative horizontal and vertical shifts between the captured and matching reference image that give the best correlation, the relative rotation of the images, or the relative scale.
  • the camera parameters corresponding to the reference image may then be modified to take account of this offset before using them as an estimate for the current camera. For example, a horizontal shift between the two images could be interpreted as a difference in the camera pan angles, and the estimated pan angle of the first captured image could be set equal to the pan angle of the matching reference image plus this pan offset.
  • an estimate of the camera pose may be formed by combining the estimates obtained from these reference images.
  • the relative weight assigned to each estimated pose could be varied depending on the degree of correlation with each image, to provide a soft switch between reference images.
  • pre-compute and store additional representations of the reference images could include colour descriptors, horizontally and vertically-averaged one-dimensional representations, phase angles suitable for use with phase correlation, or images with edges or other features accentuated, or other features (such as low-frequencies) attenuated. Copies of each image (or derived representations) at a range of resolutions could also be stored.
  • Prior knowledge could include the last known camera position, or position estimates from other tracking systems based on technology such as GPS or inertial navigation.
  • the additional information of the depth or 3D position of the features (208 of fig. 2) within the nearest or best-matching reference image(s) can be used to calculate the current camera pose to a higher accuracy (210 of fig. 2).
  • Known feature-matching techniques such as normalised cross-correlation of image patches, comer-finding or line matching may be used to find the position in the current camera image of features corresponding to those in the nearest reference images.
  • Techniques to improve correlation-based matching may also be applied.
  • One example is the transformation of local image areas in the reference image in accordance with local surface normals and the current direction of view, as described by Vacchetti et al.
  • each local area of each reference image could be 'warped' in accordance with the pixel-wise depth map in order to approximate its appearance from the estimated camera viewpoint.
  • Such a warping can be achieved by constructing planar mesh corresponding to the depth map, projecting the image onto this mesh, and rendering a view of the mesh to correspond to the estimated camera pose.
  • the current camera pose can be estimated using knowledge of the 3D positions of the features, for example by iteratively adjusting the estimated camera pose in order to minimise a measure of the error between where the features appear in the current image and where they would be expected to appear, based on the 3D feature positions in the stored images.
  • the 3D positions of features which appear in two or more reference images may not agree exactly.
  • a satisfactory estimate of the current camera pose will generally be obtained by retaining information from each appearance of a feature in a reference image. Indeed, the result will be similar to that which would have been obtained if the position of the feature in each image was adjusted to make these particular images self-consistent.
  • RANSAC RANSAC
  • Some features may give false matches, for example where a new object or person has come into the scene and is not present in the corresponding reference image.
  • Well-known techniques such as RANSAC, may be used to reduce or eliminate such problems.
  • An example of the application of the RANSAC method to camera tracking may be found in "Simon, G. , Fitzgibbon, A. and Zisserman, A. Markerless Tracking using Planar Structures in the Scene. Proc. International Symposium on Augmented Reality (2000), pp. 120-128".
  • this pose can be used to predict the pose in the following frame, without the need to search through the stored images.
  • the references image(s) used for matching will need to change, as other images give better matches to the camera pose.
  • the most appropriate image(s) to use can be identified by comparing the current estimated camera pose to the poses of the views in the reference image set, for example by identifying images having closely-matching poses and focal lengths. In general, several reference images should be used when computing the camera pose for each frame.
  • the system can also be operated in a mode whereby the image database is refined, corrected or added to whilst the system is tracking the camera position. For example, when a feature is seen that is visible in two or more reference images, the 3D position of the feature in each reference view could be adjusted slightly to improve the self-consistency of the views.
  • additional reference images could be captured, with the 3D positions of features being automatically computed. This may be particularly useful in areas with a lower density of existing reference images.
  • the system could 'bootstrap' itself by filling in the gaps between existing reference images.
  • images may be synthesised or interpolated initially to populate sparse reference data and then discarded as real data becomes available.
  • the initialisation process can be implemented sufficiently quickly, then it may be advantageous to perform this initialisation every frame, regardless of whether the tracking process has succeeded. This avoids the need to explicitly determine whether the tracking process was successful. However, in order to avoid the system suddenly jumping to a different position due to a false match, a strong bias towards the last assumed position should be included in the initialisation phase. If the initialisation process is too slow to run at the full video frame rate, then it could be run in parallel to the main tracking process at a lower frame rate, with each result being compared to that from the frame-to-frame tracking process for the same input frame.
  • the basic problem we have formulated is to obtain initial estimate position, orientation (and optionally zoom) of camera given a database of images with known camera parameters.
  • a solution is to extract useful image features to allow a fast search through database (colour, texture, ...) and/or using 2D correlation (Fourier-Mellin) on selected images for identifying offset. Then, we combine estimates from several neighbouring images to improve accuracy / reduce noise. It is possible to use this directly for applications with constrained camera movement (pan/tilt/zoom only).
  • a basic problem is to determine position and orientation (and optionally zoom) accurately (ideally 0.01 degrees & 1mm) from image database which includes 3D information (e.g. as depth maps), given estimate of initial parameters.
  • 3D information e.g. as depth maps
  • One basic approach is texture-based matching, using gradient-based disparity & local depth estimate to refine estimate of 3D position. This can make use of known feature extraction and offline scene modelling techniques.
  • the basic tracking system was described above in the context of the images from a single camera being used to track its own movement. However, it can be used in a system with additional cameras or other sensors to provide improved performance.
  • the method may further comprise processing the image or images, preferably by applying an effect, preferably based on adding or interacting with a virtual object, the processing preferably being based on the measure of camera pose.
  • the estimated pose of an object coupled to the camera can also be determined.
  • two or more cameras with different fields-of-view may be mounted rigidly together with a known relative pose, and their images processed using the above tracking algorithm.
  • Both the initialisation and frame-to-frame tracking may be carried out either independently for each camera, with the computed poses being averaged after conversion into a common reference frame, or the pose of the camera system as a whole may be estimated in one process by optimising the matching process across all images simultaneously.
  • three cameras would be used, mounted at right angles to each other.
  • One of these cameras might be a camera that is being used to capture images onto which virtual 3D elements are to be overlaid, or alternatively the cameras used for pose estimation may be completely separate (for example, being mounted on the side or rear of the main camera, looking backwards, to the right, and up at the ceiling).
  • the depth information for the reference images may be obtained by processing multiple images, for example using stereogrammetric techniques on images from a single camera or from two or more linked cameras and/or may be supplied by a user or by another depth sensitive technique, e.g. using structured light or time of flight.
  • Additional sensors may be used both to help in the initialisation phase, and to help in the frame-to-frame tracking, particularly to predict the current position if the feature-based tracker fails.
  • data from a ceiling-target-based tracking system could be used; such a combined system should be able to operate with a significantly reduced number of targets compared to using a target-based system alone.
  • position data from a GPS system could be used to give an approximate camera position in applications such as sports outside broadcasts.
  • the addition of an inertial sensor can also help, particularly to recognise rapid rotations.
  • the initialisation method may be used on its own as a convenient way of estimating the pose of a camera, in particular where the position of the camera is known but its orientation or focal length may have changed.
  • the pose of the camera can later be determined by measuring the relative translation, scale change or rotation between the current image and the closest reference image(s). This finds particular application when re-calibrating a notionally fixed camera, when its orientation or zoom have been accidentally changed.
  • the initialisation stage can be used on its own to provide an estimate of the camera pose. Since no additional information is gained by the use of depth information, the frame-to-frame tracking stage can either be omitted completely, or significantly simplified.
  • a gradient based approach may be used to enhance results.
  • One application of a gradient approach is to look at the local spatial luminance gradient in the current and/or reference image at pixels that roughly correspond, based on the estimated relative camera pose, and the difference in brightness levels between these pixels. By using this information in conjunction with the depth (from the associated depth map), an estimate can be formed of how to update the camera pose in order to minimise the luminance difference.
  • This differs from conventional gradient-based motion estimation primarily in that instead of solving for the 2D shift of one image relative to the other needed to minimise the luminance mismatch, we solve for the 3D camera position. Given the depth at each pixel, the movement of the camera in 3D can be related to the corresponding 2D shift.
  • the conventional alternative would be to first work out the relative shifts in 2D for various points in the image, then solve for the 3D camera position that best fits these shifts - but if a 2D shift for one image portion is inaccuarate (e.g. because the image contains little detail, or the only detail there is lies along an edge so that motion parallel to the edge cannot realiably be determined), a poor result may be obtained.
  • our approach works directly with the gradients so areas with stronger gradients contribute more to the result, so that plain areas will not contribute incorrect information (they simply have no influence), and an edge will only constrain the camera movement in ways that affect image motion at right angles to the edge.
  • a potential down-side is that gradient methods are very sensitive to illumination changes, but this can be mitigated, according to a further independent aspect, by various techniques such as using the second-order spatial derivative of image brightness, which should be (roughly) invariant to image brightness.
  • Second order derivatives are not easily directly usable (as one cannot readily simply approximate the brightness of the image without using the first derivative), but we have proposed developments such as forming an "image" from the second-order derivative, normalising it as desired, for example by clipping, thresholding, optionally rectifying the result to make everything 0 or +1, then optionally low-pass filtering this "edge signal" image so that a gradient-based system can operate on a nice soft brightness-invariant image.

Abstract

A method for determining the position and orientation of a camera which does not rely on the use of special markers.
A set of reference images are stored, together with camera pose and feature information for each image. A first estimate of camera position is determined by comparing the current camera image with the set of reference images. A refined estimate can be obtained using features from the current image matched in a subset of similar reference images, and in particular, the 3D positions of those features. A consistent 3D model of all stored feature information need not be provided.

Description

  • The present invention relates to position determination, particularly but not exclusively for determination of the position of a camera. In preferred aspects, position and orientation, herein referred to as "pose" are determined.
  • In applications such as TV production it is often necessary to render virtual objects so that they appear to be a part of a real scene. When the camera capturing the real scene is moving, it is necessary to estimate for each captured frame its pose (pan, tilt, roll, and x, y, z position), as well as its focal length, so that the virtual objects in the scene can be rendered to match. There are normally six degrees of freedom (although camera constraints, e.g. fixed cameras or cameras mounted on a track may have fewer), which are conveniently those mentioned (polar for orientation, Cartesian for position), but other co-ordinate systems (e.g. polar for position) may be used. The term "pose" is not intended to be limited to any particular co-ordinate system.
  • For applications in post-production, where the camera movement does not have to be computed in real-time, there are known methods which work by tracking natural features in the scene, such as corners and edges. One example of such a method is given in "Fitzgibbon, A. W. and Zisserman, A. Automatic Camera Recovery for Closed or Open Image Sequences. Proceedings of the European Conference on Computer Vision (1998), pp. 311-326". However, for real-time applications, it is generally necessary to have special markers whose position is known, such as in the system described in our patent EP-B-1,015,909, or to use mechanical mountings incorporating motion sensing devices.
  • Although there have been proposed some methods that do not rely on the use of special markers, none have yet shown themselves to be sufficiently robust or accurate for practical use. One example of such a method is given in "Vacchetti, L., Lepetit, V., Fua, P. Fusing Online and Offline Information for Stable 3D tracking in Real-Time, Proc. CVPR, Vol. 2 pp. 241-8, 2003", which requires a 3D model of the scene, or an object in it, to be generated in advance, and images of the scene or object to be captured from known positions. Other known methods build up a model of the scene during the tracking process itself. However, this approach tends to lead to a drift in the measured position of the camera, which is unacceptable in many applications.
  • In general, a practical real-time tracking algorithm normally needs to incorporate a method to estimate the initial pose of the camera. Most of the prior art tracking systems which do not employ fixed markers assume that this estimate is provide manually, although some workers have attempted initialising the angles of a camera from a reference image database, given the 3D position of the camera. An example of such initialisation is given in "Stricker, Didier, Tracking with Reference Images: A Real-Time and Markerless Tracking Solution for Out-Door Augmented Reality Applications In: International Symposium on Virtual Reality, Archaeology and Cultural Heritage (VAST), Glyfada, Greece, 2001, pp. 91-96"
  • One particular application of at least some aspects of the invention is the derivation of camera position in a scene to enable a virtual object to be overlaid on the camera image or the camera image processed to produce broadcast quality output in real time. It is important to appreciate that techniques developed for other purposes may be fundamentally unsuited to this task. In particular, certain types of error in position may be highly and unacceptably noticeable, as they can lead to visually highly perceptible effects. For example, a position determination method which provides a position with a relatively small but randomly fluctuating error may be perfectly usable for most purposes but may give rise to unacceptable jitter if used as the basis for a virtual image overlay.
  • Another important consideration is that at least some preferred applications of the present invention deal with deriving camera pose and often also camera lens parameters, particularly zoom, optionally also a measure of focus setting. Methods which are useful for determining a few degrees of freedom cannot in general be routinely adapted to determine more degrees of freedom as such methods normally rely at least implicitly on certain assumptions about the degrees of freedom which are not determined. A further consideration is the need to provide real-time motion information. Intensive processing techniques which may work well for deriving a static position may be inherently unsuited to practical use in real time and it is not normally realistic simply to apply brute force processing power to an inherently "static" technique. Thus, whilst extensive reference is made to certain prior art processing techniques as useful background to the invention, these references being made with the benefit of knowledge of the invention, this should not be taken to imply that the techniques were considered suitable for the application to which they or derivatives thereof have been put as components of embodiments of the present invention.
  • It is an object of at least preferred embodiments of this invention to provide a means of measuring the motion of a camera in real-time without the need for incorporating special markers in the scene, and without having to create an explicit 3D model of the scene. Another important object of at least preferred embodiments of the present invention is to provide a method to initialise rapidly such a tracking system.
  • Aspects of the invention are set out in the independent claims and preferred features are set out in the dependent claims. Further aspects and preferred features are set out below in the detailed description and any features disclosed herein may be provided independently unless otherwise stated. In the following, for conciseness, inventive features are described in the context of methods of determining position and processing data. However, as will be appreciated, the invention may be implemented using a computer program and/or appropriate processing apparatus and the invention extends to apparatus and computer programs or computer program products (such as computer readable means) for performing all method aspects.
  • An embodiment will now be described, by way of example, with reference to the accompanying drawings in which:-
  • Figure 1 illustrates a process for capturing and processing reference images.
  • Figure 2 is block diagram showing key components of an implementation of the proposed marker-free camera tracking system using reference images and associated depth maps or 3D feature information.
  • Creating a 3D model of a scene is a conventional method of estimating the required information. Theoretically it is logical and easy to understand. In practice, however, we have found that the limitations of accuracy with which the model can be created and used in reality, as well as the manual and computational effort, make this problematic for the purpose of virtual production. Rather than create a 3D model of the scene, we propose that a series of reference images of the scene are captured and stored (106 of fig. '1) before the tracking system is used, covering a range of views that are representative of those that the camera will be expected to see during use. These images could either be captured with a camera (102 of fig. 1) similar or identical to the camera that is to be tracked, or could be captured with a high-resolution stills camera. Such a camera fitted with a wide-angle lens provides a convenient way of rapidly acquiring a set of images that contain a high level of detail. The total number of images required will depend on the range of movement that the camera to be tracked can undergo, and may vary from less than 10 for a panning camera in a fixed position, to many hundreds for a camera that can move freely in a large volume. It is important to note that a 3D model could be created from these images. However, in practical applications, inconsistencies between information from each image give rise to problems and the practical effects are much more noticeable than the theory might suggest.
  • During an off-line pre-processing phase, information is derived and stored (106 of fig. 1) for each image that specifies the camera pose, together with the internal camera parameters (such as focal length, pixel dimensions and lens distortion). The positions in 3D space of selected features or regions in each reference image are also derived and stored. The selected features should be those that are easy to match and identify uniquely and are thus useful for the subsequent tracking process, and preferably include corners or edges, or patches of rich texture.
  • A measure of at least some parameters of camera pose associated with at least the reference images can be obtained from further source of pose information, optionally a further position determination system or camera sensor.
  • Any suitable off-line method (104 of fig. 1) may be used for deriving the positions in 3D space of features in a scene from multiple images, and for deriving the positions of the cameras that captured the images. One example is described in "M. Pollefeys, M. Vergauwen, K. Cornelis, J. Tops, F. Verbiest, L. Van Gool. Structure and motion from image sequences Proc. Conference on Optical 3-D Measurement Techniques V, Grün, Kahmen (Eds.), Vienna, October, 2001, pp. 251-258". Manual methods such as the use of surveying tools such as theodolites may also be used. Where the scene contains a known structure, such as the lines of a tennis court, its appearance and dimensions can be used to help the process. Other position determination methods may be used to assist, for example our marker tracking method of GB-A-2325807 using a modified reference camera. The precise method by which the data is gathered is not critical and it is important to note that this process is not time-critical, so prior art methods which are computationally intensive may be used in this step. ,
  • At least some measures of three-dimensional position of reference features are preferably calculated from comparison of a number of reference images. Calculated positions or storing positions for reference features may be modified based on user input.
  • It is highly convenient for the 3D feature locations in each reference image to be represented as a depth image from the point of view of the camera capturing the corresponding image, since by knowing the distance of a point or a region in the scene from the camera, and the pose and internal parameters of the camera, the 3D position of the point or region can be determined. In particular, this provides an efficient means of storing the 3D shape of patches of texture.
  • By keeping the views separate, rather than combining them into one large model, it is possible to maintain view-dependent features such as specular reflections. Views having the same camera pose, but with different focal lengths, may also be stored, so that detail may be captured at several different resolutions. This is particularly useful if the camera being used for tracking has a zoom lens, as some features that are useful to track when the camera is zoomed in will not be clearly visible when the lens is set to a wide-angle view.
  • It is important to note here that the stored information will not necessarily provide a self-consistent 3D model and it is not attempted to refine the data to provide one.
  • Furthermore, by deliberately not integrating all 3D points into a common model, the overall effect, using the inventive process, of errors or uncertainty in the 3D position of points or features may be reduced. For example, an error in assigning the correct depth to a low-texture area in one reference image is unlikely to have a major effect on camera pose calculations for positions around those of the reference image, as the erroneous value is still likely to give a good match to the observed scene. For positions further away, different reference images will be used so the error will have no effect. However, such an error could result in errors in a complete 3D model of the scene generated from all views, and although the averaging to produce a consistent model may reduce the individual errors, the residual errors would in turn would have a significant effect on camera pose measurements when attempting to measure the camera pose from the model at positions significantly displaced from that of the reference image that gave rise to the errors.
  • Those areas of each reference image which are unsuitable for use as features to track can be flagged, manually or automatically, or by a combination. Such areas might include those that were devoid of texture or other features, or those having features very similar to those appearing elsewhere in the image (which might give rise to false matches). Other features that are unsuitable for use for tracking include those areas that are likely to move in the scene (such as a door which may open), or those likely to be obscured (such as seats in a football stadium); such features may have to be manually identified during the image capture phase. It may also be useful to distinguish between features that are known to be rigid (such as a wall) and those that may potentially move over time (such as scenery in a studio), as this can help with re-calibration as explained later. The flagging may have a dynamic or conditional component, indicating that some areas may be reliable at some point or under certain lighting or other conditions but not others (e.g. if a part of a set is expected to move or is particularly prone to reflection). The classification information could be stored as a separate image component, allowing each pixel to be labelled individually. It may be convenient to flag some categories of image area, such as those which are totally unsuited for tracking, by using particular 'reserved values' in the image or depth map itself.
  • Each reference image may therefore comprise a plurality of pixels and include a measure of depth and a measure of suitability as a reference feature for each pixel. A variable measure of the suitability of a portion of each reference image to provide a reference feature can be stored. Designating or modifying designation of reference features, and/or designating non-reference features, can be based on user input and/or comparison of reference images.
  • Initialisation
  • In order to initialise the tracking system when it is first switched on, or when it loses track of its position, a first image is captured by the camera (202 of fig. 2). The set of reference images (204 of fig. 2) are then compared (206 of fig. 2) with the captured image in order to determine which reference image gives the closest match. An estimate of the initial pose and internal parameters of the camera is then taken to be the set of stored camera parameters associated with the matching image. By matching with references images in their entirety, the matching process is more robust and faster than would be possible than by matching individually stored features. Information relating to the depth of features in each reference image may be ignored during this phase, as the aim is to get only a rough estimate of the camera position.
  • There are many matching methods known in the literature that could be used, such as cross-correlation, phase correlation, matching of features such as texture, shape, colour, edges or corners. For example, a discussion of colour descriptors can be found in "B. S. Manjunath, Jens-Rainer Ohm, Vinod V. Vasudevan, and Akio Yamada. Color and Texture Descriptors. IEEE Transactions On Circuits And Systems for Video Technology, Vol. 11, No. 6, June 200 1 ". A matching method based on phase correlation is described in by Stricker reference quoted above.
  • In order to search efficiently a large set of reference images, well-known methods such as multi-resolution approaches could be used. For example, a first set of correlations can be carried out using lower resolution versions of the captured and reference images in order to quickly eliminate a large number of poor matches. A mixture of techniques, including for example colour descriptors, could be used in this initial stage. Thus the current image can be compared to all of the reference images in at least an initialisation or validation step or in an initial comparison step. The remaining reference images can then be correlated at a higher resolution, and the process may be repeated several times until full-resolution images are used. Other fast matching methods could be used, such as using two one-dimensional correlations instead of a two-dimensional correlation. In this approach, the images to be correlated are each summed along their rows, to produce a single column of pixels consisting of the sum (or average) of the rows. A similar process is applied to columns of pixels. The averaged row of the captured image is then matched against the averaged rows of the reference images, and similarly for the columns. This approach can be combined with other approaches, such as multi-resolution.
  • The comparison may include direct comparing of images, and a plurality of comparison stages of progressively increasing accuracy and/or computational cost can be performed.
  • The matching process should be chosen to be relatively immune to parts of the scene not being visible in any reference image, or to the presence of objects or people in the current image that are not present in any reference image. This kind of immunity can be improved using well-known techniques such as dividing the image into quadrants or other regions, performing the correlation or other matching process separately for each region, and ignoring regions that give a poor match. It may also be advantageous to ignore areas of each reference image that were identified as being unsuitable for tracking.
  • In addition to identifying the image that matches best, the comparison process may also provide an estimate of the offset between this image and the first captured image. This offset may include, for example, the relative horizontal and vertical shifts between the captured and matching reference image that give the best correlation, the relative rotation of the images, or the relative scale. The camera parameters corresponding to the reference image may then be modified to take account of this offset before using them as an estimate for the current camera. For example, a horizontal shift between the two images could be interpreted as a difference in the camera pan angles, and the estimated pan angle of the first captured image could be set equal to the pan angle of the matching reference image plus this pan offset.
  • If several reference images having similar camera poses all show a reasonable degree of correlation, then an estimate of the camera pose may be formed by combining the estimates obtained from these reference images. The relative weight assigned to each estimated pose could be varied depending on the degree of correlation with each image, to provide a soft switch between reference images.
  • In order to facilitate the rapid implementation of this matching or correlation process, it may be convenient to pre-compute and store additional representations of the reference images. Such pre-computed representations could include colour descriptors, horizontally and vertically-averaged one-dimensional representations, phase angles suitable for use with phase correlation, or images with edges or other features accentuated, or other features (such as low-frequencies) attenuated. Copies of each image (or derived representations) at a range of resolutions could also be stored.
  • If there exists some prior knowledge of the likely position or orientation of the camera, this may be used to optimise the search through the reference image set, for example by starting the search with images corresponding to the expected pose, or by giving more weight to these images when assessing the correlation. Prior knowledge could include the last known camera position, or position estimates from other tracking systems based on technology such as GPS or inertial navigation.
  • Other efficient search techniques, such as a decision tree, or tools from the well-known A* toolbox, can also be used to improve the efficiency of the search. Approaches that could be used include using costs determined on lower-resolution images to determine which images are searched at higher resolutions, or by testing a sub-set of pixels or descriptor values in the first stage of the search. By starting the search with images corresponding to the likely camera position, and rejecting other images during the search process as soon as their matching cost exceeds the best cost seen so far, a significant increase in speed can be obtained.
  • Frame-to-frame tracking
  • Once the initial camera pose has been estimated, the additional information of the depth or 3D position of the features (208 of fig. 2) within the nearest or best-matching reference image(s) can be used to calculate the current camera pose to a higher accuracy (210 of fig. 2). Known feature-matching techniques such as normalised cross-correlation of image patches, comer-finding or line matching may be used to find the position in the current camera image of features corresponding to those in the nearest reference images. Techniques to improve correlation-based matching may also be applied. One example is the transformation of local image areas in the reference image in accordance with local surface normals and the current direction of view, as described by Vacchetti et al. Alternatively, each local area of each reference image could be 'warped' in accordance with the pixel-wise depth map in order to approximate its appearance from the estimated camera viewpoint. Such a warping can be achieved by constructing planar mesh corresponding to the depth map, projecting the image onto this mesh, and rendering a view of the mesh to correspond to the estimated camera pose.
  • Once a number of features in the current image have been matched with corresponding features in one or more reference images, the current camera pose can be estimated using knowledge of the 3D positions of the features, for example by iteratively adjusting the estimated camera pose in order to minimise a measure of the error between where the features appear in the current image and where they would be expected to appear, based on the 3D feature positions in the stored images.
  • Due to errors and approximations in the generation of the reference image set and associated data, the 3D positions of features which appear in two or more reference images may not agree exactly. However, a satisfactory estimate of the current camera pose will generally be obtained by retaining information from each appearance of a feature in a reference image. Indeed, the result will be similar to that which would have been obtained if the position of the feature in each image was adjusted to make these particular images self-consistent. It may be advantageous to change the relative weight applied to features in each image based on an estimate of how close the current camera pose is to that of each reference image. This helps to ensure a smooth transition between reference images, and ensures that the pose computed when the camera position matches that of a reference image will be equal to that which was pre-computed for this reference image.
  • As features move into and out of the field of view of the camera being tracked, there is a likelihood of there being a small jump in the computed camera pose, due to errors in the assumed 3D feature positions. This can be significantly reduced by applying the technique described in our European patent application 02004163.8.
  • Some features may give false matches, for example where a new object or person has come into the scene and is not present in the corresponding reference image. Well-known techniques, such as RANSAC, may be used to reduce or eliminate such problems. An example of the application of the RANSAC method to camera tracking may be found in "Simon, G. , Fitzgibbon, A. and Zisserman, A. Markerless Tracking using Planar Structures in the Scene. Proc. International Symposium on Augmented Reality (2000), pp. 120-128".
  • Assuming that the current camera pose has been successfully computed, this pose can be used to predict the pose in the following frame, without the need to search through the stored images. However, as the camera moves, the references image(s) used for matching will need to change, as other images give better matches to the camera pose. The most appropriate image(s) to use can be identified by comparing the current estimated camera pose to the poses of the views in the reference image set, for example by identifying images having closely-matching poses and focal lengths. In general, several reference images should be used when computing the camera pose for each frame.
  • Re-calibration of the reference images
  • Although one useful mode of operation of this system is with a fixed reference image database, the system can also be operated in a mode whereby the image database is refined, corrected or added to whilst the system is tracking the camera position. For example, when a feature is seen that is visible in two or more reference images, the 3D position of the feature in each reference view could be adjusted slightly to improve the self-consistency of the views.
  • Also, additional reference images could be captured, with the 3D positions of features being automatically computed. This may be particularly useful in areas with a lower density of existing reference images. Using such an approach, the system could 'bootstrap' itself by filling in the gaps between existing reference images. In some cases, images may be synthesised or interpolated initially to populate sparse reference data and then discarded as real data becomes available.
  • Before performing such a re-calibration, it may be useful to label some features in the reference images as being permanently fixed, and others as being adjustable. This would be particularly useful in situations where it is known that some features are liable to move (such as scenery in a studio) whilst others will remain rigidly fixed (such as marks on a wall). This labelling process can be conveniently carried out during the initial capture of the reference images.
  • Detection and recovery from failure
  • There will be occasions when a new camera pose cannot be successfully computed. This might be indicated, for example, by high residual errors in the optimisation process that attempts to match observed features to those in the reference images, highly inconsistent results from each reference image being used, or an inability to find sufficient matching features in a reference image. In this situation, the initialisation process should be started again.
  • If the initialisation process can be implemented sufficiently quickly, then it may be advantageous to perform this initialisation every frame, regardless of whether the tracking process has succeeded. This avoids the need to explicitly determine whether the tracking process was successful. However, in order to avoid the system suddenly jumping to a different position due to a false match, a strong bias towards the last assumed position should be included in the initialisation phase. If the initialisation process is too slow to run at the full video frame rate, then it could be run in parallel to the main tracking process at a lower frame rate, with each result being compared to that from the frame-to-frame tracking process for the same input frame. If the results disagreed significantly, for example if the 'full search' initialisation process gave a lower overall match error than the frame-to-frame process, then the result from the initialisation process could be used instead, and the frame-to-frame tracking restarted from the corrected position.
  • Thus to summarise, for initial pose estimation, the basic problem we have formulated is to obtain initial estimate position, orientation (and optionally zoom) of camera given a database of images with known camera parameters. A solution is to extract useful image features to allow a fast search through database (colour, texture, ...) and/or using 2D correlation (Fourier-Mellin) on selected images for identifying offset. Then, we combine estimates from several neighbouring images to improve accuracy / reduce noise. It is possible to use this directly for applications with constrained camera movement (pan/tilt/zoom only).
  • For Predictive tracking, a basic problem is to determine position and orientation (and optionally zoom) accurately (ideally 0.01 degrees & 1mm) from image database which includes 3D information (e.g. as depth maps), given estimate of initial parameters. One basic approach is texture-based matching, using gradient-based disparity & local depth estimate to refine estimate of 3D position. This can make use of known feature extraction and offline scene modelling techniques.
  • The operation of the system can be explained with reference to the following flowchart:-
  • 1. Grab a camera image
  • 2. Search image database to locate one or more nearest matching image(s) and optionally their relative offsets (one or more of horizontal shift, vertical shift, rotation, scale change)
  • 3. Compute an estimate of the current camera pose from the camera pose(s) from the matching reference image(s) and their relative offsets
  • 4. Identify a selection of features in the current image that match those in one or more reference image(s) appropriate for the current estimated camera pose
  • 5. Refine the estimate of the current camera pose by considering the 3D positions of the matched features
  • 6. If the refined pose is not sufficiently consistent with the reference image(s), or insufficient matched features could be found, go to 2
  • 7. Output the refined camera pose
  • 8. Set the estimated camera pose for the next frame equal to the pose just computed
  • 9. Grab a new image from the camera
  • 10. Go to 4
  • The basic tracking system was described above in the context of the images from a single camera being used to track its own movement. However, it can be used in a system with additional cameras or other sensors to provide improved performance. The method may further comprise processing the image or images, preferably by applying an effect, preferably based on adding or interacting with a virtual object, the processing preferably being based on the measure of camera pose. The estimated pose of an object coupled to the camera can also be determined.
  • For example, two or more cameras with different fields-of-view may be mounted rigidly together with a known relative pose, and their images processed using the above tracking algorithm. Both the initialisation and frame-to-frame tracking may be carried out either independently for each camera, with the computed poses being averaged after conversion into a common reference frame, or the pose of the camera system as a whole may be estimated in one process by optimising the matching process across all images simultaneously. Ideally, three cameras would be used, mounted at right angles to each other. One of these cameras might be a camera that is being used to capture images onto which virtual 3D elements are to be overlaid, or alternatively the cameras used for pose estimation may be completely separate (for example, being mounted on the side or rear of the main camera, looking backwards, to the right, and up at the ceiling).
  • For initial capture of reference images, there may be merit in using a 'reasonably' wide angle lens, say 35 mm rather than fish eye. The sensitivity of ccd detectors is such that one could stop down [in most situations] and obtain a better depth of field than might be possible with a video camera - assuming of course that this might be helpful in the reference images. If one considers a Golf course situation, then most of the reference points will be effectively at infinity anyway [trees, camera platforms] save for images taken on greens. If one uses stills, there may be advantage in having two cameras linked together for stereo pictures so as to facilitate depth mapping.
  • The depth information for the reference images may be obtained by processing multiple images, for example using stereogrammetric techniques on images from a single camera or from two or more linked cameras and/or may be supplied by a user or by another depth sensitive technique, e.g. using structured light or time of flight.
  • Where the image from the main camera is not being used for tracking, it will be necessary to use additional sensors to determine the focal length, for example by using rotary encoders to measure the settings of the zoom and focus rings. Even where the image from the main camera is used for tracking, there will be an advantage in using such sensors to determine the focal length, as this reduces the number of unknowns that need to be determined.
  • Other additional sensors may be used both to help in the initialisation phase, and to help in the frame-to-frame tracking, particularly to predict the current position if the feature-based tracker fails. For example, for indoor use, data from a ceiling-target-based tracking system could be used; such a combined system should be able to operate with a significantly reduced number of targets compared to using a target-based system alone. For outdoor use, position data from a GPS system could be used to give an approximate camera position in applications such as sports outside broadcasts. The addition of an inertial sensor can also help, particularly to recognise rapid rotations.
  • In addition to applications requiring tracking of a camera in an image sequence, the initialisation method may be used on its own as a convenient way of estimating the pose of a camera, in particular where the position of the camera is known but its orientation or focal length may have changed. By using one or more reference images captured by the camera when in known poses, the pose of the camera can later be determined by measuring the relative translation, scale change or rotation between the current image and the closest reference image(s). This finds particular application when re-calibrating a notionally fixed camera, when its orientation or zoom have been accidentally changed.
  • In the case of a camera whose position remains almost fixed, but is free to rotate (such as a camera on a fixed pan-and-tilt head), the initialisation stage can be used on its own to provide an estimate of the camera pose. Since no additional information is gained by the use of depth information, the frame-to-frame tracking stage can either be omitted completely, or significantly simplified.
  • A gradient based approach may be used to enhance results. One application of a gradient approach is to look at the local spatial luminance gradient in the current and/or reference image at pixels that roughly correspond, based on the estimated relative camera pose, and the difference in brightness levels between these pixels. By using this information in conjunction with the depth (from the associated depth map), an estimate can be formed of how to update the camera pose in order to minimise the luminance difference. This differs from conventional gradient-based motion estimation primarily in that instead of solving for the 2D shift of one image relative to the other needed to minimise the luminance mismatch, we solve for the 3D camera position. Given the depth at each pixel, the movement of the camera in 3D can be related to the corresponding 2D shift. The conventional alternative would be to first work out the relative shifts in 2D for various points in the image, then solve for the 3D camera position that best fits these shifts - but if a 2D shift for one image portion is inaccuarate (e.g. because the image contains little detail, or the only detail there is lies along an edge so that motion parallel to the edge cannot realiably be determined), a poor result may be obtained. However, our approach works directly with the gradients so areas with stronger gradients contribute more to the result, so that plain areas will not contribute incorrect information (they simply have no influence), and an edge will only constrain the camera movement in ways that affect image motion at right angles to the edge.
  • A potential down-side is that gradient methods are very sensitive to illumination changes, but this can be mitigated, according to a further independent aspect, by various techniques such as using the second-order spatial derivative of image brightness, which should be (roughly) invariant to image brightness. Second order derivatives are not easily directly usable (as one cannot readily simply approximate the brightness of the image without using the first derivative), but we have proposed developments such as forming an "image" from the second-order derivative, normalising it as desired, for example by clipping, thresholding, optionally rectifying the result to make everything 0 or +1, then optionally low-pass filtering this "edge signal" image so that a gradient-based system can operate on a nice soft brightness-invariant image.
  • The use of gradient information in conjunction with 3D reference information stored as a depth map provides a further independent aspect.
  • All features disclosed herein may be independently provided. Further aspects include.
    • Initialisation of a 3D tracking system by estimation of the 3D position and orientation of a camera by comparing a captured image to images in a database captured at known positions and orientations - specifically the idea of searching in order to estimate both the camera position and orientation (the Stricker reference uses an image database for pan/tilt and zoom (or forward/backward position) only, and not as an initialisation stage for a subsequent six-degree-of-freedom tracking process). ,
    • Use of an image search strategy, preferably a multi-stage search, preferably based on preceding search results (e.g. colour descriptors, use of A* search) to provide at least 3D position determination, preferably pose determination, preferably in real time, preferably at least 20 frames per second, by searching at least 50 images, more preferably at least 100 images, preferably at least 1000 images, preferably including several, preferably at least 3, preferably at least 10, typically at least about 50 images (giving an all-round view) from each of a plurality, preferably at least 10, preferably at least 100 different 3D locations.
    • Incorporation of 3D information in the image database in a form that is local to each image (rather than referring to a global scene model), preferably storing the 3D information about the scene in the form of a depth map associated with each image.
    • Use of the depth map for each image to 'warp' regions of the image containing features of interest in order to improve correlation-based matching.
    • Indicating which 3D features in the image database should be allowed to be moved in a recalibration process.
    • Failure detection by running the initialisation process 'in the background', to provide a check every few seconds that the frame-to-frame tracking has not gone astray.
    • A method of determining a real-time estimate of the position of a camera comprising tracking the motion of the camera to obtain a dynamic position estimate, wherein the dynamic position estimate is validated based on determining the absolute position of the camera periodically based on the camera image information.
    • A method of matching a camera image to a reference image comprising adjusting the reference image based on depth information and matching the adjusted image to the camera image.
    • A method of determining a measure of camera pose comprising searching a plurality of reference images each associated with known camera poses to determine an initial pose based on matching a camera image to the reference images.
    • A machine readable data store comprising a plurality of two-dimensional camera images associated with depth information and a measure of reference feature utility for each pixel and a measure of camera pose for each image.

Claims (31)

  1. A method of determining an estimate of the pose of a camera comprising:
    storing a plurality of reference images corresponding to a respective plurality of camera poses, the images including a plurality of reference features;
    storing a measure of three dimensional position information for the plurality of reference features;
    obtaining a current camera image from the camera;
    selecting one of the plurality of reference images as a current reference image based on the current camera image;
    providing an initial estimate of the pose of the camera based on the camera pose corresponding to the current reference image.
  2. A method according to Claim 1, wherein the measure of three-dimensional position information is stored as a depth map for each reference image.
  3. A method according to any preceding claim wherein the estimate of the pose has six degrees of freedom.
  4. A method according to Claim 3, wherein the estimate of pose comprises a three-dimensional estimate of position and an estimate of orientation including pan and tilt.
  5. A method according to any preceding claim wherein the current reference image is selected by comparing the current image to at least some of the plurality of reference images.
  6. A method according to Claim 5 wherein the current image is compared to only a subset of the plurality of reference images in at least one comparison step.
  7. A method according to Claim 6 wherein the subset is selected based on at least one of:-
    a previous estimate of pose or position;
    a further input of a measure of pose or position or motion, optionally from a position or motion sensor (e.g. GPS or inertial);
    the results of an initial comparison step.
  8. A method according to any of Claims 5 to 7 wherein the comparison includes comparing derivative measures of image content (for example colour measures, or lower resolution images).
  9. A method according to any preceding claim further comprising refining the initial estimate of pose based on the position of reference features.
  10. A method according to Claim 9 wherein a confidence measure is stored for each of the features.
  11. A method according to any preceding claim wherein first portions of the reference images are identified as being suited to providing reference features.
  12. A method according to any preceding claim wherein second portions of the reference images are identified as being unsuited to providing reference features.
  13. A method according to any preceding claim wherein each reference images comprises a plurality of pixels in a plurality of regions and includes a measure of depth and a measure of suitability as a reference feature for each region.
  14. A method according to any preceding claim including processing a plurality of images obtained to provide said reference images and to store the measures of three-dimensional position prior to using the reference images to determine pose for a current image.
  15. A method according to any preceding claim further comprising updating or adding to the store of reference images and/or the reference features based on the current image.
  16. A method according to any preceding claim of providing a real-time output of current camera pose wherein a current position estimate is updated when a new camera image replaces the current camera image.
  17. A method according to Claim 16 wherein a current position estimate is updated at least 20 times per second, preferably for every camera frame.
  18. A method according to Claim 16 or 17 wherein an initial estimate of camera pose is obtained in an initialisation process and wherein movement is tracked from frame to frame, wherein movement tracking is performed using fewer comparison operations than the initialisation process.
  19. A method according to Claim 18 wherein a validation process is performed in which more comparisons are performed than in the movement tracking process and wherein the results of the validation process are compared to the results of the tracking process.
  20. A method according to any preceding claim wherein at least one reference feature includes an edge.
  21. A method according to any preceding claim wherein a measure of gradient is associated with at least some reference features.
  22. A method according to any preceding claim wherein a measure of at least one further camera parameter is obtained, preferably at least zoom, optionally a measure of focus.
  23. A method according to any preceding claim wherein the reference images comprise a plurality of images at different resolutions.
  24. A method according to any preceding claim wherein images are obtained from a plurality of cameras coupled together at known relative orientations, preferably fixed, optionally three cameras, preferably mutually orthogonal.
  25. A method according to Claim 24 wherein one camera is designated as a studio image camera and the other camera(s) are provided to enhance pose estimation for the studio camera.
  26. A method according to any preceding claim wherein the camera is a studio camera, the method further comprising processing the camera image to derive an output image, preferably a broadcast quality image.
  27. A method of determining an estimate of the pose of a camera comprising
    storing a plurality of reference images containing reference features and associated depth information, the images being associated with reference pose information;
    obtaining a current camera image;
    deriving an estimate of the pose of the camera by comparing the current camera image to the reference images, wherein the estimated pose is based on the reference pose information and reference features for a plurality of reference images and associated depth information without resolving the reference images into a consistent three-dimensional model.
  28. A method of compiling a database of reference images for use in determining camera pose, the method comprising:
    storing a plurality of images from mutually different poses;
    storing camera pose information for each image;
    identifying reference features within the images;
    storing identifiers of the reference features and a measure of three dimensional position of the features, preferably as a depth map.
  29. A database of images and associated positional information compiled by the method of Claim 28.
  30. Apparatus or a computer program or a computer program product comprising means or instructions arranged to perform a method according to any preceding claim.
  31. Use of a database containing plurality of reference images of a scene with associated depth information and camera pose information to determine a measure of camera pose from a trial image by matching the trial image in the database without constructing a three-dimensional model of the scene from the reference images.
EP05250821A 2004-02-11 2005-02-11 Position determination Withdrawn EP1594322A3 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0403051A GB2411532B (en) 2004-02-11 2004-02-11 Position determination
GB0403051 2004-02-11

Publications (2)

Publication Number Publication Date
EP1594322A2 true EP1594322A2 (en) 2005-11-09
EP1594322A3 EP1594322A3 (en) 2006-02-22

Family

ID=32011740

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05250821A Withdrawn EP1594322A3 (en) 2004-02-11 2005-02-11 Position determination

Country Status (3)

Country Link
US (1) US20050190972A1 (en)
EP (1) EP1594322A3 (en)
GB (1) GB2411532B (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005005242A1 (en) * 2005-02-01 2006-08-10 Volkswagen Ag Camera offset determining method for motor vehicle`s augmented reality system, involves determining offset of camera position and orientation of camera marker in framework from camera table-position and orientation in framework
DE102006004731A1 (en) * 2006-02-02 2007-08-09 Bayerische Motoren Werke Ag Camera position and/or orientation determining method for virtual or augmented reality system, involves detecting real-image object, and determining camera position and/or orientation based on reference image objects and real-image object
FR2911707A1 (en) * 2007-01-22 2008-07-25 Total Immersion Sa Marker less planar textured geometric object monitoring method for e.g. virtual visit of museum, involves receiving image of video flow, and evaluating position and orientation of object to be monitored in image from key frame
FR2911708A1 (en) * 2007-01-22 2008-07-25 Total Immersion Sa Intraframe i.e. key frame, creating method, involves acquiring image representing object in determined initial position, and creating intraframe from acquired image and relative installation of object in its environment
WO2009112057A1 (en) * 2008-03-14 2009-09-17 Metaio Gmbh Method and system for displaying an image generated by at least one camera
FR2951565A1 (en) * 2009-10-20 2011-04-22 Total Immersion METHOD, COMPUTER PROGRAM AND REAL-TIME OBJECT REPRESENTATION HYBRID TRACKING DEVICE IN IMAGE SEQUENCE
WO2013081917A1 (en) * 2011-11-29 2013-06-06 Qualcomm Incorporated Tracking three-dimensional objects
WO2013130208A1 (en) * 2012-03-02 2013-09-06 Qualcomm Incorporated Scene structure-based self-pose estimation
CN103377488A (en) * 2012-04-18 2013-10-30 三星电子株式会社 Method for displaying augmented reality image and electronic device thereof
DE102012107153A1 (en) 2012-08-03 2014-02-27 Hendrik Fehlis Device and method for determining the self-position of an image-receiving camera
WO2014159789A1 (en) * 2013-03-13 2014-10-02 Qualcomm Incorporated Motion blur aware visual pose tracking
US9317133B2 (en) 2010-10-08 2016-04-19 Nokia Technologies Oy Method and apparatus for generating augmented reality content
US9646384B2 (en) 2013-09-11 2017-05-09 Google Technology Holdings LLC 3D feature descriptors with camera pose information
WO2019067583A1 (en) * 2017-09-29 2019-04-04 Sensormatic Electronics, LLC Security camera system with multi-directional mount and method of operation
US11288937B2 (en) 2017-06-30 2022-03-29 Johnson Controls Tyco IP Holdings LLP Security camera system with multi-directional mount and method of operation
US11361640B2 (en) 2017-06-30 2022-06-14 Johnson Controls Tyco IP Holdings LLP Security camera system with multi-directional mount and method of operation

Families Citing this family (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8989431B1 (en) 2007-07-11 2015-03-24 Ricoh Co., Ltd. Ad hoc paper-based networking with mixed media reality
US8332401B2 (en) * 2004-10-01 2012-12-11 Ricoh Co., Ltd Method and system for position-based image matching in a mixed media environment
US7702673B2 (en) 2004-10-01 2010-04-20 Ricoh Co., Ltd. System and methods for creation and use of a mixed media environment
US7920759B2 (en) 2005-08-23 2011-04-05 Ricoh Co. Ltd. Triggering applications for distributed action execution and use of mixed media recognition as a control input
US8600989B2 (en) 2004-10-01 2013-12-03 Ricoh Co., Ltd. Method and system for image matching in a mixed media environment
US7812986B2 (en) * 2005-08-23 2010-10-12 Ricoh Co. Ltd. System and methods for use of voice mail and email in a mixed media environment
US8838591B2 (en) 2005-08-23 2014-09-16 Ricoh Co., Ltd. Embedding hot spots in electronic documents
US9373029B2 (en) 2007-07-11 2016-06-21 Ricoh Co., Ltd. Invisible junction feature recognition for document security or annotation
US8335789B2 (en) * 2004-10-01 2012-12-18 Ricoh Co., Ltd. Method and system for document fingerprint matching in a mixed media environment
US8510283B2 (en) 2006-07-31 2013-08-13 Ricoh Co., Ltd. Automatic adaption of an image recognition system to image capture devices
US8156427B2 (en) 2005-08-23 2012-04-10 Ricoh Co. Ltd. User interface for mixed media reality
US8176054B2 (en) * 2007-07-12 2012-05-08 Ricoh Co. Ltd Retrieving electronic documents by converting them to synthetic text
US7991778B2 (en) * 2005-08-23 2011-08-02 Ricoh Co., Ltd. Triggering actions with captured input in a mixed media environment
US8385589B2 (en) 2008-05-15 2013-02-26 Berna Erol Web-based content detection in images, extraction and recognition
US8086038B2 (en) 2007-07-11 2011-12-27 Ricoh Co., Ltd. Invisible junction features for patch recognition
US8856108B2 (en) 2006-07-31 2014-10-07 Ricoh Co., Ltd. Combining results of image retrieval processes
US7885955B2 (en) 2005-08-23 2011-02-08 Ricoh Co. Ltd. Shared document annotation
US8276088B2 (en) 2007-07-11 2012-09-25 Ricoh Co., Ltd. User interface for three-dimensional navigation
US7970171B2 (en) 2007-01-18 2011-06-28 Ricoh Co., Ltd. Synthetic image and video generation from ground truth data
US8144921B2 (en) 2007-07-11 2012-03-27 Ricoh Co., Ltd. Information retrieval using invisible junctions and geometric constraints
US8825682B2 (en) 2006-07-31 2014-09-02 Ricoh Co., Ltd. Architecture for mixed media reality retrieval of locations and registration of images
US8184155B2 (en) 2007-07-11 2012-05-22 Ricoh Co. Ltd. Recognition and tracking using invisible junctions
US8195659B2 (en) 2005-08-23 2012-06-05 Ricoh Co. Ltd. Integration and use of mixed media documents
US8369655B2 (en) 2006-07-31 2013-02-05 Ricoh Co., Ltd. Mixed media reality recognition using multiple specialized indexes
US8005831B2 (en) 2005-08-23 2011-08-23 Ricoh Co., Ltd. System and methods for creation and use of a mixed media environment with geographic location information
US8156116B2 (en) 2006-07-31 2012-04-10 Ricoh Co., Ltd Dynamic presentation of targeted information in a mixed media reality recognition system
US8521737B2 (en) 2004-10-01 2013-08-27 Ricoh Co., Ltd. Method and system for multi-tier image matching in a mixed media environment
US8868555B2 (en) * 2006-07-31 2014-10-21 Ricoh Co., Ltd. Computation of a recongnizability score (quality predictor) for image retrieval
US9530050B1 (en) 2007-07-11 2016-12-27 Ricoh Co., Ltd. Document annotation sharing
US7561721B2 (en) * 2005-02-02 2009-07-14 Visteon Global Technologies, Inc. System and method for range measurement of a preceding vehicle
US7706603B2 (en) * 2005-04-19 2010-04-27 Siemens Corporation Fast object detection for augmented reality systems
JP5907645B2 (en) * 2005-05-02 2016-04-26 オキュラス イノヴェイティヴ サイエンシズ、インコーポレイテッド Usage of redox potential aqueous solution in dental applications
US7889905B2 (en) * 2005-05-23 2011-02-15 The Penn State Research Foundation Fast 3D-2D image registration method with application to continuously guided endoscopy
US20070031008A1 (en) * 2005-08-02 2007-02-08 Visteon Global Technologies, Inc. System and method for range measurement of a preceding vehicle
ATE531007T1 (en) * 2005-09-12 2011-11-15 Carlos Tapang SINGLE-IMAGE AND PIXEL-WISE COMPARISON OF MODEL-GENERATED GRAPHIC IMAGES WITH INDIVIDUAL CAMERA IMAGES
US7623681B2 (en) * 2005-12-07 2009-11-24 Visteon Global Technologies, Inc. System and method for range measurement of a preceding vehicle
US8229166B2 (en) * 2009-07-07 2012-07-24 Trimble Navigation, Ltd Image-based tracking
US8201076B2 (en) 2006-07-31 2012-06-12 Ricoh Co., Ltd. Capturing symbolic information from documents upon printing
US9020966B2 (en) 2006-07-31 2015-04-28 Ricoh Co., Ltd. Client device for interacting with a mixed media reality recognition system
US8676810B2 (en) 2006-07-31 2014-03-18 Ricoh Co., Ltd. Multiple index mixed media reality recognition using unequal priority indexes
US8073263B2 (en) 2006-07-31 2011-12-06 Ricoh Co., Ltd. Multi-classifier selection and monitoring for MMR-based image recognition
US9176984B2 (en) 2006-07-31 2015-11-03 Ricoh Co., Ltd Mixed media reality retrieval of differentially-weighted links
US8489987B2 (en) 2006-07-31 2013-07-16 Ricoh Co., Ltd. Monitoring and analyzing creation and usage of visual content using image and hotspot interaction
US9063952B2 (en) 2006-07-31 2015-06-23 Ricoh Co., Ltd. Mixed media reality recognition with image tracking
WO2008031369A1 (en) * 2006-09-15 2008-03-20 Siemens Aktiengesellschaft System and method for determining the position and the orientation of a user
US7839431B2 (en) 2006-10-19 2010-11-23 Robert Bosch Gmbh Image processing system and method for improving repeatability
US20090005948A1 (en) * 2007-06-28 2009-01-01 Faroog Abdel-Kareem Ibrahim Low speed follow operation and control strategy
JP4948294B2 (en) * 2007-07-05 2012-06-06 キヤノン株式会社 Imaging apparatus, imaging apparatus control method, and program
US8933876B2 (en) 2010-12-13 2015-01-13 Apple Inc. Three dimensional user interface session control
US9035876B2 (en) 2008-01-14 2015-05-19 Apple Inc. Three-dimensional user interface session control
US8401276B1 (en) * 2008-05-20 2013-03-19 University Of Southern California 3-D reconstruction and registration
KR20100000671A (en) * 2008-06-25 2010-01-06 삼성전자주식회사 Method for image processing
FR2933218B1 (en) * 2008-06-30 2011-02-11 Total Immersion METHOD AND APPARATUS FOR REAL-TIME DETECTION OF INTERACTIONS BETWEEN A USER AND AN INCREASED REALITY SCENE
WO2010103482A2 (en) * 2009-03-13 2010-09-16 Primesense Ltd. Enhanced 3d interfacing for remote devices
JP4770960B2 (en) * 2009-03-30 2011-09-14 カシオ計算機株式会社 Image search system and image search method
US20100245545A1 (en) * 2009-03-30 2010-09-30 Melanie Ilich-Toay Flagging of Z-Space for a Multi-Camera 3D Event
US9024972B1 (en) 2009-04-01 2015-05-05 Microsoft Technology Licensing, Llc Augmented reality computing with inertial sensors
US8503720B2 (en) 2009-05-01 2013-08-06 Microsoft Corporation Human body pose estimation
FR2946444B1 (en) * 2009-06-08 2012-03-30 Total Immersion METHOD AND APPARATUS FOR CALIBRATING AN IMAGE SENSOR USING A REAL TIME SYSTEM FOR TRACKING OBJECTS IN AN IMAGE SEQUENCE
US8385660B2 (en) 2009-06-24 2013-02-26 Ricoh Co., Ltd. Mixed media reality indexing and retrieval for repeated content
US20110039573A1 (en) * 2009-08-13 2011-02-17 Qualcomm Incorporated Accessing positional information for a mobile station using a data code label
US20110150271A1 (en) 2009-12-18 2011-06-23 Microsoft Corporation Motion detection using depth images
US20110164032A1 (en) * 2010-01-07 2011-07-07 Prime Sense Ltd. Three-Dimensional User Interface
US8855929B2 (en) * 2010-01-18 2014-10-07 Qualcomm Incorporated Using object to align and calibrate inertial navigation system
US8954132B2 (en) * 2010-02-12 2015-02-10 Jean P. HUBSCHMAN Methods and systems for guiding an emission to a target
US8509488B1 (en) * 2010-02-24 2013-08-13 Qualcomm Incorporated Image-aided positioning and navigation system
GB2479537B8 (en) * 2010-04-12 2017-06-14 Vitec Group Plc Camera pose correction
US9635251B2 (en) 2010-05-21 2017-04-25 Qualcomm Incorporated Visual tracking using panoramas on mobile devices
US8933986B2 (en) 2010-05-28 2015-01-13 Qualcomm Incorporated North centered orientation tracking in uninformed environments
US9229089B2 (en) 2010-06-10 2016-01-05 Qualcomm Incorporated Acquisition of navigation assistance information for a mobile station
US8945140B2 (en) 2010-06-18 2015-02-03 Vantage Surgical Systems, Inc. Surgical procedures using instrument to boundary spacing information extracted from real-time diagnostic scan data
US9201501B2 (en) 2010-07-20 2015-12-01 Apple Inc. Adaptive projector
WO2012011044A1 (en) 2010-07-20 2012-01-26 Primesense Ltd. Interactive reality augmentation for natural interaction
US8959013B2 (en) 2010-09-27 2015-02-17 Apple Inc. Virtual keyboard for a non-tactile three dimensional user interface
US8872762B2 (en) 2010-12-08 2014-10-28 Primesense Ltd. Three dimensional user interface cursor control
TWI426775B (en) * 2010-12-17 2014-02-11 Ind Tech Res Inst Camera recalibration system and the method thereof
EP3527121B1 (en) 2011-02-09 2023-08-23 Apple Inc. Gesture detection in a 3d mapping environment
US8848970B2 (en) 2011-04-26 2014-09-30 Digimarc Corporation Salient point-based arrangements
US9459758B2 (en) 2011-07-05 2016-10-04 Apple Inc. Gesture-based interface with enhanced features
US9377865B2 (en) 2011-07-05 2016-06-28 Apple Inc. Zoom-based gesture user interface
US8881051B2 (en) 2011-07-05 2014-11-04 Primesense Ltd Zoom-based gesture user interface
US9058331B2 (en) 2011-07-27 2015-06-16 Ricoh Co., Ltd. Generating a conversation in a social network based on visual search results
US9030498B2 (en) 2011-08-15 2015-05-12 Apple Inc. Combining explicit select gestures and timeclick in a non-tactile three dimensional user interface
US9218063B2 (en) 2011-08-24 2015-12-22 Apple Inc. Sessionless pointing user interface
US9122311B2 (en) 2011-08-24 2015-09-01 Apple Inc. Visual feedback for tactile and non-tactile user interfaces
EP2602588A1 (en) * 2011-12-06 2013-06-12 Hexagon Technology Center GmbH Position and Orientation Determination in 6-DOF
US9324151B2 (en) 2011-12-08 2016-04-26 Cornell University System and methods for world-scale camera pose estimation
FR2984057B1 (en) 2011-12-13 2014-01-03 Solidanim VIDEO FILM TURNING SYSTEM
KR101926563B1 (en) * 2012-01-18 2018-12-07 삼성전자주식회사 Method and apparatus for camera tracking
US9229534B2 (en) 2012-02-28 2016-01-05 Apple Inc. Asymmetric mapping for tactile and non-tactile user interfaces
AU2013239179B2 (en) 2012-03-26 2015-08-20 Apple Inc. Enhanced virtual touchpad and touchscreen
US9646200B2 (en) 2012-06-08 2017-05-09 Qualcomm Incorporated Fast pose detector
US20130342568A1 (en) * 2012-06-20 2013-12-26 Tony Ambrus Low light scene augmentation
US9256983B2 (en) 2012-06-28 2016-02-09 Here Global B.V. On demand image overlay
US9256961B2 (en) 2012-06-28 2016-02-09 Here Global B.V. Alternate viewpoint image enhancement
CN103673990B (en) * 2012-09-13 2016-04-06 北京同步科技有限公司 Obtain the devices and methods therefor of video camera attitude data
EP3502621B1 (en) 2012-09-21 2023-06-07 NavVis GmbH Visual localisation
US20150185992A1 (en) * 2012-09-27 2015-07-02 Google Inc. Providing geolocated imagery related to a user-selected image
GB2506411B (en) 2012-09-28 2020-03-11 2D3 Ltd Determination of position from images and associated camera positions
US9237340B2 (en) * 2012-10-10 2016-01-12 Texas Instruments Incorporated Camera pose estimation
US9857470B2 (en) 2012-12-28 2018-01-02 Microsoft Technology Licensing, Llc Using photometric stereo for 3D environment modeling
GB201301281D0 (en) 2013-01-24 2013-03-06 Isis Innovation A Method of detecting structural parts of a scene
GB201303076D0 (en) 2013-02-21 2013-04-10 Isis Innovation Generation of 3D models of an environment
US9940553B2 (en) 2013-02-22 2018-04-10 Microsoft Technology Licensing, Llc Camera/object pose from predicted coordinates
US10733798B2 (en) 2013-03-14 2020-08-04 Qualcomm Incorporated In situ creation of planar natural feature targets
WO2014147542A1 (en) * 2013-03-21 2014-09-25 Koninklijke Philips N.V. View classification-based model initialization
EP2979226A4 (en) * 2013-03-26 2016-10-12 Nokia Technologies Oy A method and apparatus for estimating a pose of an imaging device
US10037469B2 (en) * 2013-12-10 2018-07-31 Google Llc Image location through large object detection
US10612939B2 (en) 2014-01-02 2020-04-07 Microsoft Technology Licensing, Llc Ground truth estimation for autonomous navigation
US9311639B2 (en) 2014-02-11 2016-04-12 Digimarc Corporation Methods, apparatus and arrangements for device to device communication
KR101574876B1 (en) * 2014-02-13 2015-12-04 영남대학교 산학협력단 Distance measuring method using vision sensor database
US9727776B2 (en) * 2014-05-27 2017-08-08 Microsoft Technology Licensing, Llc Object orientation estimation
GB201409625D0 (en) * 2014-05-30 2014-07-16 Isis Innovation Vehicle localisation
EP3176757A4 (en) * 2014-08-01 2018-02-28 Sony Corporation Information processing device, information processing method, and program
JP2017531976A (en) * 2014-09-29 2017-10-26 フォトネイション ケイマン リミテッド System and method for dynamically calibrating an array camera
US9851299B2 (en) 2014-10-25 2017-12-26 Isle Management Co. Method of analyzing air quality
WO2016118499A1 (en) * 2015-01-19 2016-07-28 The Regents Of The University Of Michigan Visual localization within lidar maps
GB2535190A (en) 2015-02-12 2016-08-17 Nokia Technologies Oy A method, a system, an apparatus and a computer program product for image-based retrieval
DE102015215613A1 (en) * 2015-08-17 2017-03-09 Volkswagen Aktiengesellschaft Method for operating an augmented reality system
US9865032B2 (en) * 2015-09-04 2018-01-09 Adobe Systems Incorporated Focal length warping
US9858669B2 (en) * 2015-10-23 2018-01-02 The Boeing Company Optimized camera pose estimation system
JP2017099616A (en) * 2015-12-01 2017-06-08 ソニー株式会社 Surgical control device, surgical control method and program, and surgical system
US10845188B2 (en) 2016-01-05 2020-11-24 Microsoft Technology Licensing, Llc Motion capture from a mobile self-tracking device
WO2017215899A2 (en) * 2016-05-27 2017-12-21 Holobuilder Inc, Augmented and virtual reality
EP3252714A1 (en) * 2016-06-03 2017-12-06 Univrses AB Camera selection in positional tracking
US20170359561A1 (en) * 2016-06-08 2017-12-14 Uber Technologies, Inc. Disparity mapping for an autonomous vehicle
US10146335B2 (en) 2016-06-09 2018-12-04 Microsoft Technology Licensing, Llc Modular extension of inertial controller for six DOF mixed reality input
US10146334B2 (en) 2016-06-09 2018-12-04 Microsoft Technology Licensing, Llc Passive optical and inertial tracking in slim form-factor
WO2018078986A1 (en) * 2016-10-24 2018-05-03 ソニー株式会社 Information processing device, information processing method, and program
US10282861B2 (en) * 2016-12-12 2019-05-07 Here Global B.V. Pose error estimation and localization using static features
US11263777B2 (en) * 2017-05-09 2022-03-01 Sony Corporation Information processing apparatus and information processing method
US10282860B2 (en) 2017-05-22 2019-05-07 Honda Motor Co., Ltd. Monocular localization in urban environments using road markings
US10579067B2 (en) * 2017-07-20 2020-03-03 Huawei Technologies Co., Ltd. Method and system for vehicle localization
US10967862B2 (en) 2017-11-07 2021-04-06 Uatc, Llc Road anomaly detection for autonomous vehicle
US11262903B2 (en) * 2018-03-30 2022-03-01 Data Alliance Co., Ltd. IoT device control system and method using virtual reality and augmented reality
KR20200013453A (en) * 2018-07-30 2020-02-07 삼성전자주식회사 3-dimensional image display device and image processing method
US10955857B2 (en) 2018-10-02 2021-03-23 Ford Global Technologies, Llc Stationary camera localization
KR102619271B1 (en) * 2018-11-01 2023-12-28 한화비전 주식회사 Video capturing device including plurality of cameras and video capturing system including the same
EP3671658A1 (en) * 2018-12-21 2020-06-24 XRSpace CO., LTD. Positioning method and reality presenting device
CN111354087A (en) * 2018-12-24 2020-06-30 未来市股份有限公司 Positioning method and reality presentation device
US20200226787A1 (en) * 2019-01-14 2020-07-16 Sony Corporation Information processing apparatus, information processing method, and program
CN110232706B (en) * 2019-06-12 2022-07-29 睿魔智能科技(深圳)有限公司 Multi-person follow shooting method, device, equipment and storage medium
US11210551B2 (en) * 2019-07-29 2021-12-28 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Iterative multi-directional image search supporting large template matching
US11436742B2 (en) * 2020-07-22 2022-09-06 Microsoft Technology Licensing, Llc Systems and methods for reducing a search area for identifying correspondences between images
KR102225093B1 (en) * 2020-09-01 2021-03-09 주식회사 맥스트 Apparatus and method for estimating camera pose

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850469A (en) * 1996-07-09 1998-12-15 General Electric Company Real time tracking of camera pose
WO2001069535A2 (en) 2000-03-10 2001-09-20 Sarnoff Corporation Method and apparatus for performing geo-spatial registration of imagery

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07220026A (en) * 1994-01-31 1995-08-18 Omron Corp Method and device for picture processing
US6151009A (en) * 1996-08-21 2000-11-21 Carnegie Mellon University Method and apparatus for merging real and synthetic images
US5878151A (en) * 1996-10-31 1999-03-02 Combustion Engineering, Inc. Moving object tracking
EP1297691A2 (en) * 2000-03-07 2003-04-02 Sarnoff Corporation Camera pose estimation
JP3823799B2 (en) * 2001-10-02 2006-09-20 株式会社デンソーウェーブ Position and orientation control method by visual servo
DE10297343T5 (en) * 2001-10-22 2005-01-27 University Of Southern California, Los Angeles Expandable tracking by line auto-calibration
WO2005038716A1 (en) * 2003-10-21 2005-04-28 Nec Corporation Image collation system and image collation method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850469A (en) * 1996-07-09 1998-12-15 General Electric Company Real time tracking of camera pose
WO2001069535A2 (en) 2000-03-10 2001-09-20 Sarnoff Corporation Method and apparatus for performing geo-spatial registration of imagery

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
STRICKER, DIDIER: "Tracking with Reference Images: A Real-Time and Markerless Tracking Solution for Out- Door Augmented Reality Applications", INTERNATIONAL SYMPOSIUM ON VIRTUAL REALITY, ARCHAEOLOGY AND CULTURAL HERITAGE (VAST), GLYFADA, GREECE, 2001, pages 91 - 96

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005005242A1 (en) * 2005-02-01 2006-08-10 Volkswagen Ag Camera offset determining method for motor vehicle`s augmented reality system, involves determining offset of camera position and orientation of camera marker in framework from camera table-position and orientation in framework
DE102006004731B4 (en) * 2006-02-02 2019-05-09 Bayerische Motoren Werke Aktiengesellschaft Method and device for determining the position and / or orientation of a camera with respect to a real object
DE102006004731A1 (en) * 2006-02-02 2007-08-09 Bayerische Motoren Werke Ag Camera position and/or orientation determining method for virtual or augmented reality system, involves detecting real-image object, and determining camera position and/or orientation based on reference image objects and real-image object
EP4254333A3 (en) * 2007-01-22 2023-12-06 QUALCOMM Incorporated Augmented reality method and devices using a real time automatic tracking of marker-free textured planar geometrical objects in a video stream
WO2008107554A2 (en) * 2007-01-22 2008-09-12 Total Immersion Method and device for creating at least two key images corresponding to a three-dimensional object
WO2008107554A3 (en) * 2007-01-22 2009-05-14 Total Immersion Method and device for creating at least two key images corresponding to a three-dimensional object
WO2008107553A3 (en) * 2007-01-22 2009-05-22 Total Immersion Augmented reality method and devices using a real time automatic tracking of marker-free textured planar geometrical objects in a video stream
US8315432B2 (en) 2007-01-22 2012-11-20 Total Immersion Augmented reality method and devices using a real time automatic tracking of marker-free textured planar geometrical objects in a video stream
FR2911708A1 (en) * 2007-01-22 2008-07-25 Total Immersion Sa Intraframe i.e. key frame, creating method, involves acquiring image representing object in determined initial position, and creating intraframe from acquired image and relative installation of object in its environment
FR2911707A1 (en) * 2007-01-22 2008-07-25 Total Immersion Sa Marker less planar textured geometric object monitoring method for e.g. virtual visit of museum, involves receiving image of video flow, and evaluating position and orientation of object to be monitored in image from key frame
US8614705B2 (en) 2007-01-22 2013-12-24 Total Immersion Method and device for creating at least two key frames corresponding to a three-dimensional object
WO2009112057A1 (en) * 2008-03-14 2009-09-17 Metaio Gmbh Method and system for displaying an image generated by at least one camera
FR2951565A1 (en) * 2009-10-20 2011-04-22 Total Immersion METHOD, COMPUTER PROGRAM AND REAL-TIME OBJECT REPRESENTATION HYBRID TRACKING DEVICE IN IMAGE SEQUENCE
WO2011048302A1 (en) * 2009-10-20 2011-04-28 Total Immersion Method, computer program, and device for hybrid tracking of real-time representations of objects in image sequence
CN102640185A (en) * 2009-10-20 2012-08-15 全浸公司 Method, computer program, and device for hybrid tracking of real-time representations of objects in image sequence
US8903177B2 (en) 2009-10-20 2014-12-02 Total Immersion Method, computer program and device for hybrid tracking of real-time representations of objects in a sequence
US9317133B2 (en) 2010-10-08 2016-04-19 Nokia Technologies Oy Method and apparatus for generating augmented reality content
CN103946890A (en) * 2011-11-29 2014-07-23 高通股份有限公司 Tracking three-dimensional objects
WO2013081917A1 (en) * 2011-11-29 2013-06-06 Qualcomm Incorporated Tracking three-dimensional objects
US8855366B2 (en) 2011-11-29 2014-10-07 Qualcomm Incorporated Tracking three-dimensional objects
CN103946890B (en) * 2011-11-29 2016-08-24 高通股份有限公司 Follow the tracks of the method and apparatus of three-dimensional body
US8965057B2 (en) 2012-03-02 2015-02-24 Qualcomm Incorporated Scene structure-based self-pose estimation
JP2015513679A (en) * 2012-03-02 2015-05-14 クアルコム,インコーポレイテッド Scene structure-based self-pose estimation
WO2013130208A1 (en) * 2012-03-02 2013-09-06 Qualcomm Incorporated Scene structure-based self-pose estimation
CN103377488A (en) * 2012-04-18 2013-10-30 三星电子株式会社 Method for displaying augmented reality image and electronic device thereof
DE102012107153A1 (en) 2012-08-03 2014-02-27 Hendrik Fehlis Device and method for determining the self-position of an image-receiving camera
US9881377B2 (en) 2012-08-03 2018-01-30 Thorsten Mika Apparatus and method for determining the distinct location of an image-recording camera
US9152874B2 (en) 2013-03-13 2015-10-06 Qualcomm Incorporated Motion blur aware visual pose tracking
WO2014159789A1 (en) * 2013-03-13 2014-10-02 Qualcomm Incorporated Motion blur aware visual pose tracking
US9646384B2 (en) 2013-09-11 2017-05-09 Google Technology Holdings LLC 3D feature descriptors with camera pose information
US11288937B2 (en) 2017-06-30 2022-03-29 Johnson Controls Tyco IP Holdings LLP Security camera system with multi-directional mount and method of operation
US11361640B2 (en) 2017-06-30 2022-06-14 Johnson Controls Tyco IP Holdings LLP Security camera system with multi-directional mount and method of operation
WO2019067583A1 (en) * 2017-09-29 2019-04-04 Sensormatic Electronics, LLC Security camera system with multi-directional mount and method of operation
US10713811B2 (en) 2017-09-29 2020-07-14 Sensormatic Electronics, LLC Security camera system with multi-directional mount and method of operation
US20190102903A1 (en) * 2017-09-29 2019-04-04 Sensormatic Electronics, LLC Security Camera System with Multi-Directional Mount and Method of Operation

Also Published As

Publication number Publication date
GB2411532B (en) 2010-04-28
GB2411532A (en) 2005-08-31
US20050190972A1 (en) 2005-09-01
EP1594322A3 (en) 2006-02-22
GB0403051D0 (en) 2004-03-17

Similar Documents

Publication Publication Date Title
EP1594322A2 (en) Position determination
US20220076501A1 (en) A system for mixing or compositing in real-time, computer generated 3d objects and a video feed from a film camera
US9697607B2 (en) Method of estimating imaging device parameters
Pollefeys et al. Metric 3D surface reconstruction from uncalibrated image sequences
Herrera et al. Dt-slam: Deferred triangulation for robust slam
US11348267B2 (en) Method and apparatus for generating a three-dimensional model
US20010043738A1 (en) Method of pose estimation and model refinement for video representation of a three dimensional scene
US20030012410A1 (en) Tracking and pose estimation for augmented reality using real features
US9171379B2 (en) Hybrid precision tracking
JP3637226B2 (en) Motion detection method, motion detection device, and recording medium
Yousif et al. MonoRGBD-SLAM: Simultaneous localization and mapping using both monocular and RGBD cameras
Wientapper et al. Reconstruction and accurate alignment of feature maps for augmented reality
Kumar et al. Pose estimation, model refinement, and enhanced visualization using video
GB2509783A (en) System and method for foot tracking
Hayashi et al. Occlusion detection of real objects using contour based stereo matching
Jiang et al. Camera tracking for augmented reality media
KR20050061115A (en) Apparatus and method for separating object motion from camera motion
CN105339981B (en) Method for using one group of primitive registration data
Jung et al. A model-based 3-D tracking of rigid objects from a sequence of multiple perspective views
GB2352899A (en) Tracking moving objects
EP1890263A2 (en) Method of pose estimation adn model refinement for video representation of a three dimensional scene
Tykkälä et al. RGB-D Tracking and Reconstruction for TV Broadcasts.
Sato et al. Outdoor scene reconstruction from multiple image sequences captured by a hand-held video camera
Schouteden et al. Image-based 3D acquisition tool for architectural conservation
Kim et al. Registration of partial 3D point clouds acquired from a multi-view camera for indoor scene reconstruction

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR LV MK YU

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR LV MK YU

RIC1 Information provided on ipc code assigned before grant

Ipc: H04N 5/222 20060101AFI20060105BHEP

Ipc: G06T 7/00 20060101ALI20060105BHEP

17P Request for examination filed

Effective date: 20060817

AKX Designation fees paid

Designated state(s): BE DE FR GB IT

17Q First examination report despatched

Effective date: 20070122

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20181011