[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2011070023A1 - Method and arrangement for improved image matching - Google Patents

Method and arrangement for improved image matching Download PDF

Info

Publication number
WO2011070023A1
WO2011070023A1 PCT/EP2010/069088 EP2010069088W WO2011070023A1 WO 2011070023 A1 WO2011070023 A1 WO 2011070023A1 EP 2010069088 W EP2010069088 W EP 2010069088W WO 2011070023 A1 WO2011070023 A1 WO 2011070023A1
Authority
WO
WIPO (PCT)
Prior art keywords
dimensional
images
projected
image
pixels
Prior art date
Application number
PCT/EP2010/069088
Other languages
French (fr)
Inventor
Donny Tytgat
Jean-François Macq
Sammy Lievens
Maarten Aerts
Original Assignee
Alcatel Lucent
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 Alcatel Lucent filed Critical Alcatel Lucent
Priority to CN201080056075.1A priority Critical patent/CN102652319B/en
Priority to US13/509,760 priority patent/US9589369B2/en
Priority to KR1020127017918A priority patent/KR101428627B1/en
Priority to JP2012542521A priority patent/JP5559349B2/en
Publication of WO2011070023A1 publication Critical patent/WO2011070023A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/285Analysis of motion using a sequence of stereo image pairs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence

Definitions

  • the present invention relates to a method for determining at least one set of matched attributes between a plurality of images.
  • a human head showing details of the face of a person as the image is taken from a camera in front of this person, while another image displays the same human head, but with details of the back of the head such as the hair, as this image was taken from a camera at the back of this same person.
  • this object is solved by the method comprising a step of projecting at least part of the images of said plurality to a 3-dimensional space resulting in a plurality of 3-dimensional projected images, a step of searching for at least one set of corresponding 3-dimensional elements within the 3-dimensional projected images of the plurality of 3-dimensional projected images, a step of calculating back said corresponding 3-dimensional elements of said at least one set to corresponding 2-dimensional attributes within the images of the plurality and providing said corresponding 2-dimensional attributes within said images as said at least one set of matched attributes.
  • 3D space Projecting the two-dimensional images to a three dimensional, hereafter abbreviated with 3D, space, which is possible in case e.g. depth information is available for these images, will enable searching for corresponding or matching elements in this 3D space.
  • This search for corresponding elements is much easier and computationally less intensive in the 3D space compared to a search in the 2D space as will become clear from different embodiments further described.
  • matching attributes will be provided in a simple, yet very accurate way.
  • this search for corresponding elements within the 3D space will enable to find matching attributes in 2D such as the previously mentioned example of an identified and recognized human head from images taken from the front and the back side of the same person. This was until now not possible by using the state of the art 2D techniques.
  • An attribute may comprise a pixel, thus enabling to determine matching pixels between the different images.
  • An attribute may also comprise an object containing a group of pixels, enabling to determine matching objects between the different images.
  • a variant embodiment further includes a step of selecting one image of said plurality as a reference image, a step of identifying an attribute on said reference image, a step of identifying the 3-dimensional projection of said attribute as a 3-dimensional element of said at least one set of corresponding 3- dimensional elements whereby at least one corresponding 3-dimensional element is searched in the 3-dimensional projected images of the other images of the plurality.
  • said attribute comprises a pixel and said at least one corresponding 3-dimensional element is searched by forming a volume body around the 3-dimensional projection of said pixel such that projected pixels of the 3-dimensional projected images of the other images of the plurality which are falling within the contours of said volume body are considered as corresponding 3-dimensional elements for said 3-dimensional projection of said pixel.
  • This provides a simple method for identifying matched pixels which comprise the pixel under consideration and the back projected 3-dimensional pixels falling within the contours of this volume body.
  • the arbitrary volume body which is used in the 3D space for determining corresponding pixels may be an ellipsoid centered around said 3- dimensional projection of said pixel.
  • an element of said at least one set of corresponding 3-dimensional elements comprises at least one projected 3- dimensional object obtained from one or more 3-dimensional projections of respective reference images selected from said plurality and a corresponding 3- dimensional element is determined as a group of 3-dimensional projections of pixels from another projected image of said plurality which 3-dimensional projections of pixels are falling within the contours of a volume body approximating said at least one projected 3-dimensional object, such that said at least one set of matched attributes is obtained by the back calculation of said at least one projected 3-dimensional object and of said group to the original images in the 2-dimensional domain.
  • a variant method further includes a step of 2-dimensional image recognition on said respective reference images such that to said at least one projected 3-dimensional object at least one recognized object on said respective reference images is associated.
  • Another variant method further includes a step of 3-dimensional image recognition on said one or more 3D projections of said respective reference images, such that to said at least one projected 3-dimensional object at least one recognized object resulting from said 3-dimensional image recognition is associated.
  • said volume body is selected from a set of volume models associated to said at least one projected 3-dimensional object.
  • volume body can be adapted by fitting said volume body with said at least one projected 3-dimensional object.
  • Embodiments of the method can also be used in methods for image recognition of an image from a plurality of images, such that the matched attributes of said at least one set of matched attributes, and pertaining to said image, will be associated to said at least one recognized object on said respective reference images.
  • Embodiments of the method for determining matched pixels can also be used in a method for determining a motion vector between two images of a video sequence taken at different instances in time.
  • said method includes a step of determining a matched pixel within a first of said two images at the earliest instance in time, for a start pixel of a 2-dimensional motion vector determined between two images taken at said different instances in time of a first video sequence according to any of the claims 1 -4, said method further including a step of projecting said 2- dimensional motion vector of said first video sequence to the 3-dimensional space, for obtaining a 3-dimensional motion vector, wherein said 3-dimensional motion vector is applied to the 3-dimensional projection of said matched pixel to thereby obtain a corresponding end point which is further back projected to an end pixel in a second image of said two images such that said matched pixel and said end pixel define said motion vector between said two images of said video sequence.
  • a method for determining a motion vector between two images of a video sequence taken at different instances in time may include a step of determining respective matched pixels within said two images for the start and end pixels of a 2-dimensional motion vector determined between two images taken at said different instances in time of a first video sequence according to any of the claims 1 -4, said pair of respective matched pixels in said two images thereby defining start and end pixels of said motion vector of said video sequence.
  • this also allows to significantly reduce the processing effort for the motion vector calculations.
  • the present invention relates as well to device for performing embodiments of the present method, to a computer program adapted to perform any of the embodiments of the method and to a computer readable storage medium comprising such a computer program .
  • the present invention relates as well to a video encoder and an image analyzer for incorporating such a device .
  • Fig. 1 depicts a high-level schematic of the method
  • Fig. 2 depicts an embodiment of the method of Fig. 1 for determining a set of matched pixels
  • Fig. 3a shows an embodiment of the method of Fig. 1 for determining a set of matched objects
  • Fig. 3b shows a preferred embodiment of the method of Fig. 3a which is particularly suited for identifying human objects
  • Fig. 3c shows another variant embodiment of the method for determining a set of matched objects
  • Fig. 4a shows an application of the method of fig. 3a used for segmentation of image 2
  • Fig. 4b shows an application of the method shown in Fig. 3b used for segmentation of image 2 with respect to human recognition
  • Fig. 5 schematically shows how the method of Fig. 4b can be applied to images showing a human face viewed from different sides
  • Fig. 6a shows another application of the method of Fig. 2 for determining motion vectors
  • Fig. 6b shows an alternative for the embodiment shown in Fig. 6a for determining motion vectors
  • Fig. 7a schematically explains the method for determining motion vectors as set out in Fig. 6a and
  • Fig. 7b schematically explains the method for determining motion vectors as set out in Fig. 6b.
  • any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the invention.
  • any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
  • Fig. 1 shows a high level embodiment of the method for determining a set of matched attributes between a plurality of images. In Fig. 1 only two images, image 1 and image 2 are shown, but other embodiments for determining matched attributes between more than two images are possible as well.
  • 3D images are further transformed into three- dimensional, abbreviated throughout this document by 3D, images, denoted imagel _3D and image2_3D respectively.
  • image representations which comprise pixel information in two dimensions, and also depth information.
  • Depth is a parameter which can be extracted from e.g. a pair of stereo images. This involves some known preprocessing techniques in case the images are merely captured by a simple camera. This depth information can also be directly obtained by using so-called 2D+Z camera's such as ⁇ ime-of- flight camera's. By using this depth information together with the 2D color pixel data a 3D representation of both images can be generated by projecting the 2D image data to a 3D space.
  • 3D projections or representations are needed for these pixels forming part of or associated to the attributes for which matched attributes in the other images are to be searched for. If, for instance, only one matched counterpart for one particular group of pixels representing an object such as a car, is to be searched for, only the pixels belonging to this car need to be projected to the 3D space.
  • the other images in which the matched attributes are to be searched for can also be partly projected e.g. only the part corresponding to or surrounding the location of pixels of this car in the first image may need projection.
  • complete 3D images will be reconstructed from all 2D images of the plurality. In all cases imagei_3D, with i indicating the respective image, refers to both the 3D projections of the complete image or of only part of the image.
  • corresponding elements can be searched for within this 3D space.
  • One possibility would be to extrapolate the methods used in 2D for block matching to volume matching of e.g. simple volumes around projected pixels in case corresponding pixels between the 3D projections are to be determined. While this represents one possibility for searching for corresponding or matching pixels within the 3D space, a more simple method involves only using simple volumes around the pixels of only one 3D image, e.g. imagel _3D, and then merely checking whether a projected pixel of image2_3D is comprised within this volume.
  • corresponding elements to be determined in the 3D space can be pixels, but can also comprise e.g. recognized objects or structures including a set of pixels such as the car in the previously mentioned example, or can comprise some further metadata associated to such a set of pixels such as the name of a recognized person or the type of the recognized car.
  • Searching for such matched objects in the 2D images can then again be performed by projecting the 2D images or part of them to the 3D space and by searching for corresponding projected object volumes in this 3D space . This can be done by means of some iterative process starting from a first guess of projected volumes and by searching for a best match between them by using some metric.
  • Alternative simpler methods will be further explained into detail with respect to Figs 3a to 3c.
  • a recalculation of the corresponding pixels of the corresponding 3D elements to the 2D space will be performed. This will then result in a provision of a set of matched attributes between the two images in 2D.
  • a set of matched attributes can be a set of matched pixels, or a set of matched structures being a set of groups of pixels, or a set of matched objects, each matched object again being represented by a group of pixels in both images.
  • a simple arbitrary volume will be constructed or created around its 3D projection. By checking whether the 3D representations of the other pixels of the other images form part of this volume, it can be decided whether or not these other pixels of the other images match.
  • a simple volume around the 3D projected pixel for which a matching candidate is to be searched can be an ellipsoide, or a sphere, or a cube, or a beam, or any other volume body. While a sphere or a cube represent very simple volumes, allowing limited computational resources, the use of volumes having different axial dimensions can have advantages related to accuracy of the match itself. This can e.g. be interesting for stereoscopic image pairs in 2D. For these images, the depth parameter which is needed for the 3D projection, is usually calculated via traditional methods.
  • the accuracy of the calculated depth is however inversely proportional with the value of the depth itself, thus for varying depth values across the images, using ellipsoids with varying dimensions can help to further increase the accuracy for the determination of the corresponding pixels or elements in the 3D space.
  • one of the corresponding 3D pixels within a 3D projected image can be selected based upon some metrics such as the calculated distance, in the 3D space, between this 3D pixel and the 3D projected pixel of the reference image for which a match was to be found.
  • the 3D pixel in the 3D projected image with the smallest 3D distance with respect to the 3D projected pixel of the reference image will then be selected as the best match in 3D, such that this will be selected as the corresponding element in 3D. This will then be calculated back to the original image in 2D.
  • Fig. 3a shows an embodiment of a method for identifying matched objects between two images.
  • Objects can be identified on 2D images by using automated object recognition techniques, or by means of human recognition.
  • one image is selected, usually one for which it was determined in an earlier step to be the easiest of the plurality for performing the object recognition on.
  • the determination or selection of the reference images for performing image recognition on could again have been performed by a human user, or again automatically by a first scan of all images using such traditional image recognition techniques, followed by analysis of the first results.
  • Some traditional recognition techniques allow for a coarse recognition by either only including a limited number of features, or by limiting the analysis on the data.
  • Fig. 3a This pre-selection is not shown in Fig. 3a, which figure further indicates that image 1 was selected for undergoing the object recognition procedure in 2D.
  • image 1 was selected for undergoing the object recognition procedure in 2D.
  • one of the recognized objects is selected for further searching for a matched object in the other images.
  • the pixels belonging to this object on image 1 are therefore projected to the 3D space, resulting in imagel _3D.
  • all pixels of image 1 can be projected to the 3D space, and the pixels belonging to the object will be specially identified in this imagel _3D.
  • image2_3D is generated by projecting all or part of the pixels of image2 to the 3D space.
  • a first possibility comprises searching for matched pixels for all pixels of this object. To this purpose several options are available which will be discussed in a later paragraph. Once these matched pixels are found, the group of pixels comprising these matched pixels is then considered as a matched object in the other image. In some embodiments some further post-processing can be needed on the obtained set of matched objects, depending on the application which will further use the set of matched objects. This post-processing can be interesting to e.g. further eliminate noise.
  • a pixel-by-pixel approach can be applied by again forming arbitrary volumes around all the projected pixels of the 3D projected object of imagel _3D with the aim to identify matching pixels for all pixels constituting the object. This can again be done by using the aforementioned ellipsoids or spheres or cubes. It is then checked for each pixel of image2_3D whether they are comprised within the contours of these volumes, and these pixels which do so, are then considered as corresponding pixels belonging to a corresponding object in 3D.
  • one large volume VO surrounding all projected pixels of the 3D object of image 1 _3D can be created, or a volume enveloping the individual small volumes such as the ellipsoids around each pixel, or a mixture of both.
  • a volume VO is chosen or generated, it is determined whether projected pixels of image2_3D are lying or are comprised within the contours of this arbitrary volume VO. All projected pixels of image2_3D comprised within the contours of this volume VO are then identified as belonging to a corresponding object in 3D, and their position in image 2 will be back calculated, upon which the matched object in image 2 is obtained as the back calculation of this 3D group of pixels to the 2D domain.
  • the volume body can just be the body formed by the 3D projection of the object itself.
  • the 3D object is approximated by a volume body.
  • a volume body This is e.g. suitable in case the form of the object is known from the recognition process, in which case a generic volume approximating the 3D projected object can be used.
  • some beam shape volume can be chosen to represent this laptop in 3D space.
  • a sphere can be used to represent this ball.
  • This volume object can therefore also be selected from a library of known volumes resembling the shape of the recognized object in 3D.
  • These basic volumes or shapes can be selected, and optionally further fitted to the object, e.g. by adapting the radius and center point of the selected sphere to approximate the projected ball.
  • the morphology or form of these volumes can even be further fitted to resemble the 3D projected object as close as possible. This may for instance be the case for a recognized human head.
  • some morphological volume having the shape of a human head can either be selected, and further fine tuned, or, in other embodiments even created in the 3D space for thereby fitting the enveloping volume created by the 3D projected pixels of this head. This is shown in Fig. 3b.
  • a creation of a morphological fitting volume can be performed for all types of objects, so not only for human heads.
  • both reference images are selected in stead of only one. Image recognition is then performed on all these reference images, with the purpose of increasing the accuracy of the recognition. This is for instance again the case for 3 views or images of a human head taken from left, right and back sides. Image recognition, implying the identification of the person, can not be performed on the view taken from the back side, therefore only the left and right sides can be used. As again these views are on their own not sufficient for a good recognition, both left and right views are then selected as reference views on which the image recognition is performed. Both of them will then be projected to the 3D space and the projections of the recognized objects will then be merged into one 3D recognized object or element for which a corresponding element in the other 3D projected images is to be determined.
  • the object recognition is not performed in the 2 Dimensional space, but directly in the 3D space.
  • one or more selected reference images can then be projected to the 3D space, upon which step the image recognition is performed in 3D.
  • Techniques for doing this are known to a person skilled in the art and can comprise finding 3D feature points- or shapes and asserting whether they combine into a feasible model of the object that is being recognized.
  • a corresponding object in the 3D projections of the other images is searched for e.g. by approximating this single or set of identified objects in 3D with a body volume, which can thus also just be the 3D projection of this object itself, upon which step the pixels of the projections of the other images, falling within the contours of this body volume, are determined.
  • a back calculation to the 2D original images including the reference images will be performed, such as to identify the matched objects in the original 2 D images.
  • Fig. 3c shows an embodiment of this variant where image recognition is performed in the 3D space on the 3D projection of image 1 .
  • Fig. 4a shows a first application of an embodiment of the method used for generating segmented images. It basically shows the same steps as these shown in Fig. 3a, but in this case the whole image 1 is segmented in several objects. For each of the recognized objects in image 1 , a matched object, if any, in image2 is determined, which is then also associated to the recognized object. In this way a complete segmentation of image 2 will be obtained, merely based on the segmented imagel and object matching using the aforementioned embodiments of the method.
  • Fig. 4b shows this application for the case where the segmented image 1 contains recognized human objects such as faces. Matching human objects are then identified in image2, again resulting in the segmentation of image2. Of course combinations of both methods are also possible, as in general pictures will contain a mixture of human and non-human objects.
  • segmentation of a whole plurality of images can thus be obtained from one single segmented image, in general the one which was selected as the best image available for performing pattern recognition.
  • searching for corresponding elements within the 3D space for the objects recognized in this selected image determining the corresponding objects in the other images in the original 2D space via the aforementioned 3D techniques, and associating the same recognized objects to the matched objects in the other images, a very simple, yet very powerful matching and segmentation technique is obtained.
  • Fig. 5 further illustrates this by means of a very simple example of two images from the same person, but taken from a 1 80 degrees different angle. Both original 2D pictures are shown as resp. step (a) and (b). Face recognition is possible on image 1 , which results in a segmented image 1 in step (c). Due to the lack of enough differentiating features on image 2, this same person can not be recognized on this second image 2 via state of the art methods. By however using embodiments of the method, e.g. the one depicted in Fig.
  • a morphological volume resembling the head of the recognized person can be generated in the 3D projection of the recognized "John Doe” , and pixels of image2_3D falling within this 3D volume will then also be identified as belonging to a matching "John Doe” object in 3D.
  • image2_3D By back calculating the corresponding 3D pixels of the corresponding "John Doe” in image2_3D, to image 2, recognition of "John Doe” in image 2 and accompanying segmentation can be obtained. This is represented in step (d).
  • the method as explained for determining matching pixels between several images can be further used in an application for determining motion vectors from one video sequence to one or several other video sequences.
  • Motion vectors are mostly used with respect to video coding applications, in which context they represent a two-dimensional vector used for inter prediction that provides an offset from the coordinates in an original or decoded picture to the coordinates in a reference picture. Determination of such a two-dimensional motion vector can be done by using block-based correlation methods that traverse parts of this image at a particular instance in time to find matching pixels or blocks of pixels for the pixels or blocks of pixels for the reference image. A motion vector is thereby calculated as the pixel distance between the position of a current block of pixels in this image and the position of the best matching block of the same size and dimensions and orientation in the reference image. Motion vectors can however be used for purposes which go beyond the mere video coding applications. One of these applications comprises tracking wherein motion vectors can be used to follow an object of interest throughout a video sequence. After identifying this object of interest one can use the motion vectors in the video sequence to track this object of interest throughout time.
  • motion vector in its most general way, which definition therefore implies a two-dimensions vector which determines a shift between the pixel position of a particular pixel or block in one frame or image, taken at a particular instance in time of a video sequence, and the best matching pixel or block in another frame or image of this video sequence, taken at another particular instance in time.
  • FIG. 6a shows two video sequences, videol and video2, of which only two particular frames at two particular time instances t and t-1 , are shown.
  • both video sequences generally comprise much more than 2 frames but instead a series of images or frames, taken at a sequence of time instances.
  • imagel l (t- l ) and imagel 2(t) being frames from video 1 at respective time instances t-1 and t
  • image21 ( ⁇ -l ) and image22(t) being frames from video 2 at the same respective time instances t- 1 and t.
  • video 1 is selected for the traditional 2D motion vector calculation, which is thus based on imagel 1 (t-1 ) and imagel 2(t). As explained in a previous paragraph, this implies the calculation of matched pixel pairs between imagel 1 and imagel 2. For both pixels of the motion vector pixel pair of both images, the projected pixels in the 3D space are then calculated, as shown in steps (a) and (b), thereby yielding a 3D motion vector for this pixel pair, as shown in step (e).
  • step (c) Determination of corresponding pixels in 3D is performed in step (d). This determination can be done using aforementioned techniques making use of e.g. ellipsoids or other volumes placed around pixels of one of the projected images. These calculations yield a set of corresponding pixels between the two projected images imagel 1 _3D and image2_3D l at t-1 .
  • start and end pixel values for one or more 3D motion vectors of video 1 were also determined.
  • start and end pixel values for one or more 3D motion vectors of video 1 were also determined.
  • end points of corresponding motion vectors for the 3D projection of image 22 ( ⁇ ) are obtained. These can be calculated back to the original image 22(t). All this is reflected in step (f).
  • Fig. 7a schematically illustrates this.
  • This figure shows on the left hand side the projections of the images imagel 1 and imagel 2 of video 1 , which projections are respectively denoted imagel 1 _3D( ⁇ - 1 ) and imagel 2_3D(t), in steps (a) and (b).
  • the 3D motion vector mvl is depicted as well and is obtained as the 3D vector which is joining the 3D projection of a pair of pixels pertaining to an earlier determined 2D motion vector.
  • These 2D motion vector pixels are denoted pi 1 (t-1 ) from imagel 1 and pl 2(t) from imagel 2, and their 3D projections are respectively denoted pl l _3D( ⁇ - l ) and pl 2_3D(t).
  • mvl thereby denotes the 3D motion vector linking both projected pixels in step (e).
  • the right- hand side of this figure shows the 3D projection of image21 (t-1 ), which projection is denoted image21 _3D(t-l ) in step (c).
  • This 3D projection shows another 3D projected pixel, being p21 _3D( ⁇ -l ), which is obtained as the corresponding pixel in the 3D domain to pixel pl 2_3D( ⁇ - l ) by using some of the methods as explained with respect to the search for matching pixels.
  • the result of this determination is shown by step (d).
  • This Fig. 7a also shows a 3D projection of image22(t).
  • this depth parameter is not the actual measured or stereoscopically obtained depth from image22(t), it is an estimate based on the depths of imagel 1 (t-1 ), imagel 2(t) and image21 ( ⁇ -l ), which were used for calculating 3D projections of these images. Anyhow, this depth parameter is already a good estimate which can be used, e.g. as a starting point during further fine tuning of this depth parameter value using the more traditional methods based on e.g. stereoscopic image analysis.
  • Figs. 6b and 7b show another variant method for determining such a 2D motion vector. Steps (a), (b),(c) and (d) are similar to these shown in Figs 6a and 7a, and their explanation will therefore not be repeated. In contrast however to the variant of Figs 6a and 7a, this embodiment makes use of a depth parameter for image22(t), which thus allows to generate a 3D projection of this image, denoted image22_3D(t). This is done in step (e).
  • step (f) start and end points for a 3D motion vector mv2 of video 2 are obtained, and these can then be calculated back to the original images in 2D, which thereby yield a corresponding 2D motion vector in video2.
  • the motion vector which is obtained by using the second variant method can be more accurate compared to the one obtained by means of the first described variant method. But this higher accuracy is obtained at the expense of more processing effort as the 3D projection of image22(t) is to be created, which itself depends on the availability of depth values. In case these are not available, or in case processing efficiency represents a more restrictive boundary condition, the first described variant may be preferred.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

A method for determining at least one set of matching attributes (pixel, object) between a plurality of images (image1, image2), comprises a step of projecting at least part of the images of said plurality to a 3-dimensional space resulting in a plurality of 3-D projected images(image1 _3D, image2_3D), a step of searching for at least one corresponding set of elements within the 3D projected images of the plurality of 3-D projected images, a step of calculating back said corresponding elements within the original images of the plurality and providing said corresponding elements within said original images as said at least one set of matched attributes.

Description

METHOD AND ARRANGEMENT FOR IMPROVED IMAGE MATCHING
The present invention relates to a method for determining at least one set of matched attributes between a plurality of images.
Current techniques for determining such a set of matched attributes such as e.g. matched pixels or matched objects make use of 2-dimensional, hereafter abbreviated as 2D, image processing techniques in order to find such matched attributes between two or more images. This involves performing searches in the 2D domain to find corresponding pixels or pixel groups in these images. Known techniques are mostly based on block matching techniques involving placing a fictitious block around a pixel in one of the images, and searching for blocks in the other images which have the best correspondence with the first one, using metrics that calculate a correspondence or matching score based on these blocks around the pixels in the images. These solutions are computationally intensive, and are not robust when the images are e.g. generated by two cameras having a large baseline, meaning that there is a large distance between these cameras. Such images or views will show a significant difference. Most of the known methods furthermore require a certain overlap of the objects in the images between which correspondence or matching is searched for. In addition, when correspondences are searched at an object level rather than at the pixel level itself, the state of the art methods fail in case the viewpoints are so different that the pixel content of these objects is totally different, despite the fact that the object itself is the same in both images. This can for instance be the case when one image displays e.g. a human head showing details of the face of a person as the image is taken from a camera in front of this person, while another image displays the same human head, but with details of the back of the head such as the hair, as this image was taken from a camera at the back of this same person.
It is thus an object of the present invention to set out an improved method for determining matched attributes between a plurality of images, which can solve the above mentioned prior art problems.
According to the invention this object is solved by the method comprising a step of projecting at least part of the images of said plurality to a 3-dimensional space resulting in a plurality of 3-dimensional projected images, a step of searching for at least one set of corresponding 3-dimensional elements within the 3-dimensional projected images of the plurality of 3-dimensional projected images, a step of calculating back said corresponding 3-dimensional elements of said at least one set to corresponding 2-dimensional attributes within the images of the plurality and providing said corresponding 2-dimensional attributes within said images as said at least one set of matched attributes.
Projecting the two-dimensional images to a three dimensional, hereafter abbreviated with 3D, space, which is possible in case e.g. depth information is available for these images, will enable searching for corresponding or matching elements in this 3D space. This search for corresponding elements is much easier and computationally less intensive in the 3D space compared to a search in the 2D space as will become clear from different embodiments further described. By back-calculating the 3D corresponding elements from the 3D to the 2D space, matching attributes will be provided in a simple, yet very accurate way. Furthermore, this search for corresponding elements within the 3D space will enable to find matching attributes in 2D such as the previously mentioned example of an identified and recognized human head from images taken from the front and the back side of the same person. This was until now not possible by using the state of the art 2D techniques.
An attribute may comprise a pixel, thus enabling to determine matching pixels between the different images. An attribute may also comprise an object containing a group of pixels, enabling to determine matching objects between the different images.
A variant embodiment further includes a step of selecting one image of said plurality as a reference image, a step of identifying an attribute on said reference image, a step of identifying the 3-dimensional projection of said attribute as a 3-dimensional element of said at least one set of corresponding 3- dimensional elements whereby at least one corresponding 3-dimensional element is searched in the 3-dimensional projected images of the other images of the plurality. This provides a simple method, especially in case the plurality of the images comprises more than two images. By selecting one image as a reference image, calculations for finding matching attributes between this reference image and the other images can be very simple as will be shown by means of several examples.
In another embodiment said attribute comprises a pixel and said at least one corresponding 3-dimensional element is searched by forming a volume body around the 3-dimensional projection of said pixel such that projected pixels of the 3-dimensional projected images of the other images of the plurality which are falling within the contours of said volume body are considered as corresponding 3-dimensional elements for said 3-dimensional projection of said pixel.
This provides a simple method for identifying matched pixels which comprise the pixel under consideration and the back projected 3-dimensional pixels falling within the contours of this volume body.
The arbitrary volume body which is used in the 3D space for determining corresponding pixels may be an ellipsoid centered around said 3- dimensional projection of said pixel.
This proves to be a very simple embodiment for forming a 3D volume body centered around a 3D projected pixel.
In another variant method an element of said at least one set of corresponding 3-dimensional elements comprises at least one projected 3- dimensional object obtained from one or more 3-dimensional projections of respective reference images selected from said plurality and a corresponding 3- dimensional element is determined as a group of 3-dimensional projections of pixels from another projected image of said plurality which 3-dimensional projections of pixels are falling within the contours of a volume body approximating said at least one projected 3-dimensional object, such that said at least one set of matched attributes is obtained by the back calculation of said at least one projected 3-dimensional object and of said group to the original images in the 2-dimensional domain.
This allows to identify matching objects. A variant method further includes a step of 2-dimensional image recognition on said respective reference images such that to said at least one projected 3-dimensional object at least one recognized object on said respective reference images is associated.
This allows to identify matched objects in one image, based on earlier performed object recognition on another image of the plurality. In this way a simple method for pattern or image recognition on an image is obtained by identifying matched objects between that image and a reference image on which recognition techniques were already performed in the 2D domain, and on which recognized objects or patterns were thus already identified. By determining matched attributes between the image and already identified objects in the reference image, via the previously mentioned techniques, a very simple way of performing pattern or object recognition with applications of segmentation of this image are obtained.
Another variant method further includes a step of 3-dimensional image recognition on said one or more 3D projections of said respective reference images, such that to said at least one projected 3-dimensional object at least one recognized object resulting from said 3-dimensional image recognition is associated.
This provides an alternative for these images for which a 2- dimensional object recognition is very difficult. Based on 3-dimensional object recognition techniques, object can be back identified in the 2-dimensional space.
In another variant, said volume body is selected from a set of volume models associated to said at least one projected 3-dimensional object.
This proves to be very interesting in case matched objects having a typical morphological shape such as e.g. a human head, are to be identified. By selecting a volume model with the form of e.g. such a human head from a set of volume models, 3D projected pixels of the other images falling within the contours of this head can then be considered as corresponding pixels belonging to the 3D projected head in 3D, and their back projection to 2D will then result in the identification or the recognition of this human head in 2D . In yet another embodiment said volume body can be adapted by fitting said volume body with said at least one projected 3-dimensional object.
This allows to further improve the accuracy of the matching process by e.g. morphing the selected shape of the human head with the actual 3D projected pixel data of the recognized head in 2D. Robustness of the recognition is thereby further improved.
Embodiments of the method can also be used in methods for image recognition of an image from a plurality of images, such that the matched attributes of said at least one set of matched attributes, and pertaining to said image, will be associated to said at least one recognized object on said respective reference images.
Embodiments of the method for determining matched pixels can also be used in a method for determining a motion vector between two images of a video sequence taken at different instances in time.
In a first variant said method includes a step of determining a matched pixel within a first of said two images at the earliest instance in time, for a start pixel of a 2-dimensional motion vector determined between two images taken at said different instances in time of a first video sequence according to any of the claims 1 -4, said method further including a step of projecting said 2- dimensional motion vector of said first video sequence to the 3-dimensional space, for obtaining a 3-dimensional motion vector, wherein said 3-dimensional motion vector is applied to the 3-dimensional projection of said matched pixel to thereby obtain a corresponding end point which is further back projected to an end pixel in a second image of said two images such that said matched pixel and said end pixel define said motion vector between said two images of said video sequence.
Alternatively a method for determining a motion vector between two images of a video sequence taken at different instances in time may include a step of determining respective matched pixels within said two images for the start and end pixels of a 2-dimensional motion vector determined between two images taken at said different instances in time of a first video sequence according to any of the claims 1 -4, said pair of respective matched pixels in said two images thereby defining start and end pixels of said motion vector of said video sequence.
Both alternatives for determining motion vectors and including embodiments of the methods for determining matched pixels between several images can present valuable alternatives to the classical way of calculating motion vectors, based on classical 2-dimensional block-matching techniques.
Especially for video coding applications this also allows to significantly reduce the processing effort for the motion vector calculations.
The present invention relates as well to device for performing embodiments of the present method, to a computer program adapted to perform any of the embodiments of the method and to a computer readable storage medium comprising such a computer program .
The present invention relates as well to a video encoder and an image analyzer for incorporating such a device .
It is to be noticed that the term 'coupled', used in the claims, should not be interpreted as being limitative to direct connections only. Thus, the scope of the expression 'a device A coupled to a device B' should not be limited to devices or systems wherein an output of device A is directly connected to an input of device B. It means that there exists a path between an output of A and an input of B which may be a path including other devices or means.
It is to be noticed that the term 'comprising', used in the claims, should not be interpreted as being limitative to the means listed thereafter. Thus, the scope of the expression 'a device comprising means A and B' should not be limited to devices consisting only of components A and B. It means that with respect to the present invention, the only relevant components of the device are A and B.
The above and other objects and features of the invention will become more apparent and the invention itself will be best understood by referring to the following description of an embodiment taken in conjunction with the accompanying drawings wherein
Fig. 1 depicts a high-level schematic of the method, Fig. 2 depicts an embodiment of the method of Fig. 1 for determining a set of matched pixels,
Fig. 3a shows an embodiment of the method of Fig. 1 for determining a set of matched objects,
Fig. 3b shows a preferred embodiment of the method of Fig. 3a which is particularly suited for identifying human objects,
Fig. 3c shows another variant embodiment of the method for determining a set of matched objects,
Fig. 4a shows an application of the method of fig. 3a used for segmentation of image 2,
Fig. 4b shows an application of the method shown in Fig. 3b used for segmentation of image 2 with respect to human recognition,
Fig. 5 schematically shows how the method of Fig. 4b can be applied to images showing a human face viewed from different sides,
Fig. 6a shows another application of the method of Fig. 2 for determining motion vectors,
Fig. 6b shows an alternative for the embodiment shown in Fig. 6a for determining motion vectors,
Fig. 7a schematically explains the method for determining motion vectors as set out in Fig. 6a and
Fig. 7b schematically explains the method for determining motion vectors as set out in Fig. 6b.
The description and drawings merely illustrate the principles of the invention. It will thus be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the principles of the invention and are included within its spirit and scope. Furthermore, all examples recited herein are principally intended expressly to be only for pedagogical purposes to aid the reader in understanding the principles of the invention and the concepts contributed by the inventor(s) to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the invention, as well as specific examples thereof, are intended to encompass equivalents thereof.
It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the invention. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
Fig. 1 shows a high level embodiment of the method for determining a set of matched attributes between a plurality of images. In Fig. 1 only two images, image 1 and image 2 are shown, but other embodiments for determining matched attributes between more than two images are possible as well.
These images or parts of them are further transformed into three- dimensional, abbreviated throughout this document by 3D, images, denoted imagel _3D and image2_3D respectively. This is possible for those image representations which comprise pixel information in two dimensions, and also depth information. Depth is a parameter which can be extracted from e.g. a pair of stereo images. This involves some known preprocessing techniques in case the images are merely captured by a simple camera. This depth information can also be directly obtained by using so-called 2D+Z camera's such as†ime-of- flight camera's. By using this depth information together with the 2D color pixel data a 3D representation of both images can be generated by projecting the 2D image data to a 3D space.
In general only 3D projections or representations are needed for these pixels forming part of or associated to the attributes for which matched attributes in the other images are to be searched for. If, for instance, only one matched counterpart for one particular group of pixels representing an object such as a car, is to be searched for, only the pixels belonging to this car need to be projected to the 3D space. The other images in which the matched attributes are to be searched for can also be partly projected e.g. only the part corresponding to or surrounding the location of pixels of this car in the first image may need projection. However it is also possible that in other embodiments complete 3D images will be reconstructed from all 2D images of the plurality. In all cases imagei_3D, with i indicating the respective image, refers to both the 3D projections of the complete image or of only part of the image.
Once such a 3D representation is obtained, corresponding elements can be searched for within this 3D space. One possibility would be to extrapolate the methods used in 2D for block matching to volume matching of e.g. simple volumes around projected pixels in case corresponding pixels between the 3D projections are to be determined. While this represents one possibility for searching for corresponding or matching pixels within the 3D space, a more simple method involves only using simple volumes around the pixels of only one 3D image, e.g. imagel _3D, and then merely checking whether a projected pixel of image2_3D is comprised within this volume.
This embodiment will be further explained into detail with reference to
Fig. 2.
These corresponding elements to be determined in the 3D space can be pixels, but can also comprise e.g. recognized objects or structures including a set of pixels such as the car in the previously mentioned example, or can comprise some further metadata associated to such a set of pixels such as the name of a recognized person or the type of the recognized car. Searching for such matched objects in the 2D images can then again be performed by projecting the 2D images or part of them to the 3D space and by searching for corresponding projected object volumes in this 3D space . This can be done by means of some iterative process starting from a first guess of projected volumes and by searching for a best match between them by using some metric. Alternative simpler methods will be further explained into detail with respect to Figs 3a to 3c.
Once such set of corresponding elements is determined in 3D, a recalculation of the corresponding pixels of the corresponding 3D elements to the 2D space will be performed. This will then result in a provision of a set of matched attributes between the two images in 2D. As mentioned before, such a set of matched attributes can be a set of matched pixels, or a set of matched structures being a set of groups of pixels, or a set of matched objects, each matched object again being represented by a group of pixels in both images.
In case matched pixels are searched for, a very simple method is shown in Fig. 2. As in the general case parts of both images may be projected to the 3D space, resulting in 3D representations denoted by imagel _3D and image 2_3D. In case matched pixels in the other images for one particular pixel in one image are searched for, only this one particular pixel can be projected to the 3D space such that imagel _3D just comprises this single projected pixel. This is shown in the embodiment depicted in Fig. 2. If it is known that both images are similar, only a small number of pixels of the other images situated on a location around or in the neighborhood of that particular pixel, need to be projected. In case this knowledge is not available, all pixels of all the other images may need to be projected to 3D for generating image2_3D.
For the particular pixel for which some matched pixels in the other images are to be determined, a simple arbitrary volume will be constructed or created around its 3D projection. By checking whether the 3D representations of the other pixels of the other images form part of this volume, it can be decided whether or not these other pixels of the other images match.
While this could give rise to several sets of 3D corresponding pixels, depending on the size and shape of this volume around the respective projected pixel of the reference, a further refinement can be performed to identify the most relevant corresponding 3D pixel, for instance by consideration of the distance to the projection of the reference pixel. This refinement is not shown in Fig. 2.
For identifying corresponding pixels in 3D, a simple volume around the 3D projected pixel for which a matching candidate is to be searched, can be an ellipsoide, or a sphere, or a cube, or a beam, or any other volume body. While a sphere or a cube represent very simple volumes, allowing limited computational resources, the use of volumes having different axial dimensions can have advantages related to accuracy of the match itself. This can e.g. be interesting for stereoscopic image pairs in 2D. For these images, the depth parameter which is needed for the 3D projection, is usually calculated via traditional methods. The accuracy of the calculated depth is however inversely proportional with the value of the depth itself, thus for varying depth values across the images, using ellipsoids with varying dimensions can help to further increase the accuracy for the determination of the corresponding pixels or elements in the 3D space.
Once such a corresponding pixel has been found in the 3D projection of the other images, in this case only in image2_3D, these corresponding 3D projected pixels will be calculated back to indicate the position of the pixels in the original 2D images, resulting in a set of matched pixels in 2D for the original image. In case several matching pixels are found within one or more of the other images , which is of course possible in case the dimensions of the volume body around the 3D projected pixel were too large, some further iterations or refinement calculations can be performed, either by adapting the dimensions of the chosen volume bodies, or , alternatively, one of the corresponding 3D pixels within a 3D projected image can be selected based upon some metrics such as the calculated distance, in the 3D space, between this 3D pixel and the 3D projected pixel of the reference image for which a match was to be found. The 3D pixel in the 3D projected image with the smallest 3D distance with respect to the 3D projected pixel of the reference image will then be selected as the best match in 3D, such that this will be selected as the corresponding element in 3D. This will then be calculated back to the original image in 2D.
Fig. 3a shows an embodiment of a method for identifying matched objects between two images. Objects can be identified on 2D images by using automated object recognition techniques, or by means of human recognition. In general one image is selected, usually one for which it was determined in an earlier step to be the easiest of the plurality for performing the object recognition on. However it is also possible to select more reference images on which image recognition will be performed, as will be explained more into detail in a later paragraph. The determination or selection of the reference images for performing image recognition on could again have been performed by a human user, or again automatically by a first scan of all images using such traditional image recognition techniques, followed by analysis of the first results. Some traditional recognition techniques allow for a coarse recognition by either only including a limited number of features, or by limiting the analysis on the data. By performing such a quick initial coarse recognition on the plurality of the images which results in a metric that indicates the quality of recognition of the objects, a selection of the image on which to do the full recognition step can be made.
This pre-selection is not shown in Fig. 3a, which figure further indicates that image 1 was selected for undergoing the object recognition procedure in 2D. After this object recognition step, one of the recognized objects is selected for further searching for a matched object in the other images. The pixels belonging to this object on image 1 are therefore projected to the 3D space, resulting in imagel _3D. Alternatively all pixels of image 1 can be projected to the 3D space, and the pixels belonging to the object will be specially identified in this imagel _3D. In parallel also image2_3D is generated by projecting all or part of the pixels of image2 to the 3D space.
In order to find a matched object for the recognized object, a first possibility comprises searching for matched pixels for all pixels of this object. To this purpose several options are available which will be discussed in a later paragraph. Once these matched pixels are found, the group of pixels comprising these matched pixels is then considered as a matched object in the other image. In some embodiments some further post-processing can be needed on the obtained set of matched objects, depending on the application which will further use the set of matched objects. This post-processing can be interesting to e.g. further eliminate noise.
In order to check which group of pixels of image 2 form a matched object with the selected or identified object of image 1 , a pixel-by-pixel approach can be applied by again forming arbitrary volumes around all the projected pixels of the 3D projected object of imagel _3D with the aim to identify matching pixels for all pixels constituting the object. This can again be done by using the aforementioned ellipsoids or spheres or cubes. It is then checked for each pixel of image2_3D whether they are comprised within the contours of these volumes, and these pixels which do so, are then considered as corresponding pixels belonging to a corresponding object in 3D.
Alternatively one large volume VO surrounding all projected pixels of the 3D object of image 1 _3D can be created, or a volume enveloping the individual small volumes such as the ellipsoids around each pixel, or a mixture of both. Once such a volume VO is chosen or generated, it is determined whether projected pixels of image2_3D are lying or are comprised within the contours of this arbitrary volume VO. All projected pixels of image2_3D comprised within the contours of this volume VO are then identified as belonging to a corresponding object in 3D, and their position in image 2 will be back calculated, upon which the matched object in image 2 is obtained as the back calculation of this 3D group of pixels to the 2D domain.
In some embodiments the volume body can just be the body formed by the 3D projection of the object itself.
In other embodiments the 3D object is approximated by a volume body. This is e.g. suitable in case the form of the object is known from the recognition process, in which case a generic volume approximating the 3D projected object can be used. For example, if it is known that the recognized object concerns a laptop, some beam shape volume can be chosen to represent this laptop in 3D space. Similarly, if it is known that the object concerns a ball, a sphere can be used to represent this ball. This volume object can therefore also be selected from a library of known volumes resembling the shape of the recognized object in 3D. These basic volumes or shapes can be selected, and optionally further fitted to the object, e.g. by adapting the radius and center point of the selected sphere to approximate the projected ball. While some embodiments apply a rather coarse approximation and fitting via the adaptation of some dimensions of the volumes, in more sophisticated embodiments, the morphology or form of these volumes can even be further fitted to resemble the 3D projected object as close as possible. This may for instance be the case for a recognized human head. In this case some morphological volume having the shape of a human head can either be selected, and further fine tuned, or, in other embodiments even created in the 3D space for thereby fitting the enveloping volume created by the 3D projected pixels of this head. This is shown in Fig. 3b. By checking whether pixels from image2_3D form part of this morphological volume, thus by checking whether they are comprised within the contours of this volume, and by calculating them back to the 2D space, a very easy way to perform human face recognition can be done, even on images which only shown the back of this head. This will be further illustrated when discussing fig. 5.
A creation of a morphological fitting volume can be performed for all types of objects, so not only for human heads.
In other embodiments several reference images are selected in stead of only one. Image recognition is then performed on all these reference images, with the purpose of increasing the accuracy of the recognition. This is for instance again the case for 3 views or images of a human head taken from left, right and back sides. Image recognition, implying the identification of the person, can not be performed on the view taken from the back side, therefore only the left and right sides can be used. As again these views are on their own not sufficient for a good recognition, both left and right views are then selected as reference views on which the image recognition is performed. Both of them will then be projected to the 3D space and the projections of the recognized objects will then be merged into one 3D recognized object or element for which a corresponding element in the other 3D projected images is to be determined. To search this corresponding 3D object, again it can be checked whether pixels of the 3D projection of the other 3D projected images fall or are comprised within the contours of the volume body approximating the 3D recognized object. Once these pixels are found, they will be calculated back to the corresponding 2D image, leading to the recognition of this human head on the image taken from the back side.
In yet other embodiments the object recognition is not performed in the 2 Dimensional space, but directly in the 3D space. Again one or more selected reference images can then be projected to the 3D space, upon which step the image recognition is performed in 3D. Techniques for doing this are known to a person skilled in the art and can comprise finding 3D feature points- or shapes and asserting whether they combine into a feasible model of the object that is being recognized.
Also in this case more than one reference projection can be used, for the same reasons as for the 2D case. Once the reference objects in the 3D projected reference images are identified, a corresponding object in the 3D projections of the other images is searched for e.g. by approximating this single or set of identified objects in 3D with a body volume, which can thus also just be the 3D projection of this object itself, upon which step the pixels of the projections of the other images, falling within the contours of this body volume, are determined. For the group of pixels complying to this criterion in 3D , a back calculation to the 2D original images including the reference images , will be performed, such as to identify the matched objects in the original 2 D images. Fig. 3c shows an embodiment of this variant where image recognition is performed in the 3D space on the 3D projection of image 1 .
Fig. 4a shows a first application of an embodiment of the method used for generating segmented images. It basically shows the same steps as these shown in Fig. 3a, but in this case the whole image 1 is segmented in several objects. For each of the recognized objects in image 1 , a matched object, if any, in image2 is determined, which is then also associated to the recognized object. In this way a complete segmentation of image 2 will be obtained, merely based on the segmented imagel and object matching using the aforementioned embodiments of the method. Fig. 4b shows this application for the case where the segmented image 1 contains recognized human objects such as faces. Matching human objects are then identified in image2, again resulting in the segmentation of image2. Of course combinations of both methods are also possible, as in general pictures will contain a mixture of human and non-human objects.
By using this approach, segmentation of a whole plurality of images can thus be obtained from one single segmented image, in general the one which was selected as the best image available for performing pattern recognition. By searching for corresponding elements within the 3D space for the objects recognized in this selected image, determining the corresponding objects in the other images in the original 2D space via the aforementioned 3D techniques, and associating the same recognized objects to the matched objects in the other images, a very simple, yet very powerful matching and segmentation technique is obtained.
Fig. 5 further illustrates this by means of a very simple example of two images from the same person, but taken from a 1 80 degrees different angle. Both original 2D pictures are shown as resp. step (a) and (b). Face recognition is possible on image 1 , which results in a segmented image 1 in step (c). Due to the lack of enough differentiating features on image 2, this same person can not be recognized on this second image 2 via state of the art methods. By however using embodiments of the method, e.g. the one depicted in Fig. 3b, a morphological volume resembling the head of the recognized person can be generated in the 3D projection of the recognized "John Doe" , and pixels of image2_3D falling within this 3D volume will then also be identified as belonging to a matching "John Doe" object in 3D. By back calculating the corresponding 3D pixels of the corresponding "John Doe" in image2_3D, to image 2, recognition of "John Doe" in image 2 and accompanying segmentation can be obtained. This is represented in step (d).
The method as explained for determining matching pixels between several images can be further used in an application for determining motion vectors from one video sequence to one or several other video sequences.
Motion vectors are mostly used with respect to video coding applications, in which context they represent a two-dimensional vector used for inter prediction that provides an offset from the coordinates in an original or decoded picture to the coordinates in a reference picture. Determination of such a two-dimensional motion vector can be done by using block-based correlation methods that traverse parts of this image at a particular instance in time to find matching pixels or blocks of pixels for the pixels or blocks of pixels for the reference image. A motion vector is thereby calculated as the pixel distance between the position of a current block of pixels in this image and the position of the best matching block of the same size and dimensions and orientation in the reference image. Motion vectors can however be used for purposes which go beyond the mere video coding applications. One of these applications comprises tracking wherein motion vectors can be used to follow an object of interest throughout a video sequence. After identifying this object of interest one can use the motion vectors in the video sequence to track this object of interest throughout time.
In this patent application we will use the term "motion vector" in its most general way, which definition therefore implies a two-dimensions vector which determines a shift between the pixel position of a particular pixel or block in one frame or image, taken at a particular instance in time of a video sequence, and the best matching pixel or block in another frame or image of this video sequence, taken at another particular instance in time.
The traditional determination of such a motion vector between two images therefore implies the identification of a pair of best matching pixels or pixel blocks, one pixel or pixel block from each image.
A first embodiment for determining such motion vectors in a new alternative way is explained in Fig. 6a. This figure shows two video sequences, videol and video2, of which only two particular frames at two particular time instances t and t-1 , are shown. Of course both video sequences generally comprise much more than 2 frames but instead a series of images or frames, taken at a sequence of time instances. In order not to overload the drawing only two of them are shown : imagel l (t- l ) and imagel 2(t) being frames from video 1 at respective time instances t-1 and t, and image21 (†-l ) and image22(t) being frames from video 2 at the same respective time instances t- 1 and t.
One of the video sequences is selected for performing a traditional 2D determination of the motion vectors on the images. In fig. 6a video 1 is selected for the traditional 2D motion vector calculation, which is thus based on imagel 1 (t-1 ) and imagel 2(t). As explained in a previous paragraph, this implies the calculation of matched pixel pairs between imagel 1 and imagel 2. For both pixels of the motion vector pixel pair of both images, the projected pixels in the 3D space are then calculated, as shown in steps (a) and (b), thereby yielding a 3D motion vector for this pixel pair, as shown in step (e). In parallel matched pixels as explained with respect to the previous embodiments between image pairs imagel 1 and image 21 , both taken at t-1 , are also determined by means of the 3D projection of these image 1 1 (t-1 ) and image 21 (†- 1 ). The 3D projection of image21 (†-l ) is shown in step (c). Determination of corresponding pixels in 3D is performed in step (d). This determination can be done using aforementioned techniques making use of e.g. ellipsoids or other volumes placed around pixels of one of the projected images. These calculations yield a set of corresponding pixels between the two projected images imagel 1 _3D and image2_3D l at t-1 .
On the other hand start and end pixel values for one or more 3D motion vectors of video 1 , were also determined. By combining now both sets , thereby applying the 3D motion vector transformation determined for videol , to corresponding pixels of image 21 _3D for the starting pixels of image 1 1 _3D of the 3D motion vectors, end points of corresponding motion vectors for the 3D projection of image 22 (†) are obtained. These can be calculated back to the original image 22(t). All this is reflected in step (f).
Fig. 7a schematically illustrates this. This figure shows on the left hand side the projections of the images imagel 1 and imagel 2 of video 1 , which projections are respectively denoted imagel 1 _3D(†- 1 ) and imagel 2_3D(t), in steps (a) and (b). The 3D motion vector mvl is depicted as well and is obtained as the 3D vector which is joining the 3D projection of a pair of pixels pertaining to an earlier determined 2D motion vector. These 2D motion vector pixels are denoted pi 1 (t-1 ) from imagel 1 and pl 2(t) from imagel 2, and their 3D projections are respectively denoted pl l _3D(†- l ) and pl 2_3D(t). mvl thereby denotes the 3D motion vector linking both projected pixels in step (e). The right- hand side of this figure shows the 3D projection of image21 (t-1 ), which projection is denoted image21 _3D(t-l ) in step (c). This 3D projection shows another 3D projected pixel, being p21 _3D(†-l ), which is obtained as the corresponding pixel in the 3D domain to pixel pl 2_3D(†- l ) by using some of the methods as explained with respect to the search for matching pixels. The result of this determination is shown by step (d). This Fig. 7a also shows a 3D projection of image22(t). This 3D projection is just shown for explanatory reasons, as this 3D projection is not needed for the calculation of the 3D motion vector mv2 in this embodiment. Indeed, in this embodiment it is assumed that mv2 equals mvl . This is denoted by step (f) . Therefore the same 3D motion vector mv2 = mvl is applied to p21 _3D(t-l ) as starting point, which yields p22_3D(t) as a 3D end point .
Once then the end points of the 3D motion vector in the 3D projections of images image21 (†-l )_3D and image22(†)_3D are determined , these are back calculated to the original images image21 (†-l ) and image22(t) respectively. This results in 2D motion vectors being calculated for video2 without having to do a full motion vector estimation step on this video sequence. This method thus provides an inexpensive way of finding motion vectors that can be used for video encoding and optimization of many image processing techniques such as image recognition, image segmentation, stereo matching, tracking and so on. It is to be remarked that during the back calculation from the 3D end points of the motion vectors to the original 2D image22(t), a depth parameter will result. While this depth parameter is not the actual measured or stereoscopically obtained depth from image22(t), it is an estimate based on the depths of imagel 1 (t-1 ), imagel 2(t) and image21 (†-l ), which were used for calculating 3D projections of these images. Anyhow, this depth parameter is already a good estimate which can be used, e.g. as a starting point during further fine tuning of this depth parameter value using the more traditional methods based on e.g. stereoscopic image analysis.
Figs. 6b and 7b show another variant method for determining such a 2D motion vector. Steps (a), (b),(c) and (d) are similar to these shown in Figs 6a and 7a, and their explanation will therefore not be repeated. In contrast however to the variant of Figs 6a and 7a, this embodiment makes use of a depth parameter for image22(t), which thus allows to generate a 3D projection of this image, denoted image22_3D(t). This is done in step (e).
This then allows to determine a corresponding pixel in image22_3D(t) for the end point pl 2_3D(t) of the 3D motion vector in imagel 2_3D(t). This corresponding pixel is denoted p22_3D(t), and its determination is shown in step (f). In this way start and end points for a 3D motion vector mv2 of video 2 are obtained, and these can then be calculated back to the original images in 2D, which thereby yield a corresponding 2D motion vector in video2.
It can be remarked that the motion vector which is obtained by using the second variant method can be more accurate compared to the one obtained by means of the first described variant method. But this higher accuracy is obtained at the expense of more processing effort as the 3D projection of image22(t) is to be created, which itself depends on the availability of depth values. In case these are not available, or in case processing efficiency represents a more restrictive boundary condition, the first described variant may be preferred.
While the principles of the invention have been described above in connection with specific apparatus, it is to be clearly understood that this description is made only by way of example and not as a limitation on the scope of the invention, as defined in the appended claims.

Claims

1 . Method for determining at least one set of matched attributes (pixel 1 i,pixel2j;objectl i, objec†2j) between a plurality of images (imagel , image2), said method comprising a step of projecting at least part of the images of said plurality to a 3-dimensional space resulting in a plurality of 3- dimensional projected images(imagel _3D, image2_3D), a step of searching for at least one set of corresponding 3-dimensional elements within the 3- dimensional projected images of the plurality of 3-dimensional projected images, a step of calculating back said corresponding 3-dimensional elements of said at least one set to corresponding 2-dimensional attributes within the images of the plurality and providing said corresponding 2-dimensional attributes (pixel 1 i,pixel2j;objectl i, objec†2j) within said images as said at least one set of matched attributes.
2. Method according to claim 1 further including a step of selecting one image (image 1 ) of said plurality as a reference image, a step of identifying an attribute on said reference image, a step of identifying the 3-dimensional projection of said attribute as a 3-dimensional element (pixel3D, objec†3D) of said at least one set of corresponding 3-dimensional elements whereby at least one corresponding 3-dimensional element is searched in the 3-dimensional projected images of the other images of the plurality.
3. Method according to claim 2 wherein said attribute comprises a pixel and wherein said at least one corresponding 3-dimensional element is searched by forming a volume body around the 3-dimensional projection of said pixel such that projected pixels of the 3-dimensional projected images of the other images of the plurality which are falling within the contours of said volume body are identified as corresponding 3-dimensional elements for said 3- dimensional projection of said pixel.
4. Method according to claim 3 wherein said volume body is an ellipsoid centered around said 3-dimensional projection of said pixel.
5. Method according to claim 1
wherein an element of said at least one set of corresponding 3- dimensional elements comprises at least one projected 3-dimensional object obtained from one or more 3-dimensional projections of respective reference images selected from said plurality and
wherein a corresponding 3-dimensional element is determined as a group of 3-dimensional projections of pixels from another projected image of said plurality which 3-dimensional projections of pixels are falling within the contours of a volume body approximating said at least one projected 3- dimensional object,
such that said at least one set of matched attributes is obtained by the back calculation of said at least one projected 3-dimensional object and of said group to the original images in the 2-dimensional domain.
6. Method according to claim 5 further including a step of 2- dimensional image recognition on said respective reference images such that to said at least one projected 3-dimensional object at least one recognized object on said respective reference images is associated.
7. Method according to claim 5 further including a step of 3- dimensional image recognition on said one or more 3D projections of said respective reference images, such that to said at least one projected 3- dimensional object at least one recognized object resulting from said 3- dimensional image recognition is associated.
8. Method according to claim 5-7 wherein said volume body is selected from a set of volume models associated to said at least one projected 3- dimensional object.
9. Method according to claim 5 to 8 further including a step of adapting said volume body by fitting said volume body with said at least one projected 3-dimensional object.
1 0. Method for image recognition of an image from a plurality of images, said method comprising the steps in accordance with any of the previous claims 6 to 9, such that the matched attributes of said at least one set of matched attributes, and pertaining to said image, will be associated to said at least one recognized object on said respective reference images.
1 1 . Method for determining a motion vector between two images (image21 (t- 1 ), image22(t)) of a video sequence (video2) taken at different instances in time (t- 1 , t) , said method including a step of determining a matched pixel (p21 ) within a first (image21 (t- 1 )) of said two images at the earliest instance in time (t-1 ), for a start pixel (pi 1 ) of a 2-dimensional motion vector determined between two images (imagel l (t-l ), imagel 2(†)) taken at said different instances in time (t- 1 , t) of a first video sequence (videol ) according to any of the claims 1 - 4, said method further including a step of projecting said 2-dimensional motion vector of said first video sequence to the 3-dimensional space, for obtaining a 3- dimensional motion vector (mvl ), wherein said 3-dimensional motion vector (mvl ) is applied to the 3-dimensional projection (p21 _3D(†- l )) of said matched pixel (p21 ) to thereby obtain a corresponding end point (p22_3D(†- l )) which is further back projected to an end pixel (p22) in a second image (image22(†)) of said two images such that said matched pixel (p21 ) and said end pixel (p22) define said motion vector between said two images of said video sequence.
1 2. Method for determining a motion vector between two images (image21 (t- 1 ), image22(t)) of a video sequence (video2) taken at different instances in time (t-1 , t) , said method including a step of determining respective matched pixels (p21 , p22) within said two images for the start (pl l ) and end (pi 2) pixels of a 2-dimensional motion vector determined between two images (imagel 1 (t-1 ), imagel 2(†)) taken at said different instances in time (t-1 , t) of a first video sequence (video 1 ) according to any of the claims 1 -4, said pair of respective matched pixels (p21 , p22) in said two images (image21 (t- 1 ), image22(†)) thereby defining start and end pixels of said motion vector of said video sequence.
1 3. Device adapted to perform any of the steps as set out in the previous claims 1 to 1 2.
14. A computer program adapted to perform any of the methods in accordance with any of the claims 1 to 1 3.
1 5. A computer readable storage medium comprising the computer program of claim 14.
PCT/EP2010/069088 2009-12-11 2010-12-07 Method and arrangement for improved image matching WO2011070023A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201080056075.1A CN102652319B (en) 2009-12-11 2010-12-07 For improvement of the method and apparatus of images match
US13/509,760 US9589369B2 (en) 2009-12-11 2010-12-07 Method and arrangement for improved image matching
KR1020127017918A KR101428627B1 (en) 2009-12-11 2010-12-07 Method and arrangement for improved image matching
JP2012542521A JP5559349B2 (en) 2009-12-11 2010-12-07 Method and configuration for improved image matching

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP09290933A EP2333692A1 (en) 2009-12-11 2009-12-11 Method and arrangement for improved image matching
EP09290933.2 2009-12-11

Publications (1)

Publication Number Publication Date
WO2011070023A1 true WO2011070023A1 (en) 2011-06-16

Family

ID=42008515

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2010/069088 WO2011070023A1 (en) 2009-12-11 2010-12-07 Method and arrangement for improved image matching

Country Status (6)

Country Link
US (1) US9589369B2 (en)
EP (1) EP2333692A1 (en)
JP (1) JP5559349B2 (en)
KR (1) KR101428627B1 (en)
CN (1) CN102652319B (en)
WO (1) WO2011070023A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140212030A1 (en) * 2011-06-20 2014-07-31 Donny Tytgat Method and arrangement for image model construction

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9558575B2 (en) 2012-02-28 2017-01-31 Blackberry Limited Methods and devices for selecting objects in images
EP2634772A1 (en) * 2012-02-28 2013-09-04 BlackBerry Limited Methods and devices for selecting objects in images
CN103871036B (en) * 2012-12-12 2017-11-28 上海联影医疗科技有限公司 Rapid registering and joining method for three dimensional digital subtraction angiography image
US9183225B2 (en) * 2014-02-21 2015-11-10 Siemens Energy, Inc. Computerized method for transforming an image from an image-searchable domain to a pixel-searchable domain
US20160314616A1 (en) * 2015-04-23 2016-10-27 Sungwook Su 3d identification system with facial forecast
US10962780B2 (en) * 2015-10-26 2021-03-30 Microsoft Technology Licensing, Llc Remote rendering for virtual images
FR3060170B1 (en) * 2016-12-14 2019-05-24 Smart Me Up OBJECT RECOGNITION SYSTEM BASED ON AN ADAPTIVE 3D GENERIC MODEL
EP3594899A1 (en) * 2018-07-10 2020-01-15 InterDigital CE Patent Holdings Tracking an object in a sequence of panoramic images
US11625929B2 (en) * 2020-01-31 2023-04-11 Salesforce.Com, Inc. Selection of object recognition models for computer vision

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999006940A1 (en) * 1997-08-01 1999-02-11 Interval Research Corporation A method and apparatus for personnel detection and tracking
US6072903A (en) * 1997-01-07 2000-06-06 Kabushiki Kaisha Toshiba Image processing apparatus and image processing method
US6658136B1 (en) * 1999-12-06 2003-12-02 Microsoft Corporation System and process for locating and tracking a person or object in a scene using a series of range images
EP1482448A2 (en) * 2003-05-28 2004-12-01 TRW Automotive U.S. LLC Method and apparatus for determining an occupant's head location in an actuatable occupant restraining system
WO2005067424A2 (en) * 2003-12-31 2005-07-28 Cognex Technology And Investment Corporation Method and apparatus for monitoring a passageway using 3d images
US7317812B1 (en) * 2002-11-15 2008-01-08 Videomining Corporation Method and apparatus for robustly tracking objects

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3986748B2 (en) * 2000-11-10 2007-10-03 ペンタックス株式会社 3D image detection device
KR100682889B1 (en) * 2003-08-29 2007-02-15 삼성전자주식회사 Method and Apparatus for image-based photorealistic 3D face modeling

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6072903A (en) * 1997-01-07 2000-06-06 Kabushiki Kaisha Toshiba Image processing apparatus and image processing method
WO1999006940A1 (en) * 1997-08-01 1999-02-11 Interval Research Corporation A method and apparatus for personnel detection and tracking
US6658136B1 (en) * 1999-12-06 2003-12-02 Microsoft Corporation System and process for locating and tracking a person or object in a scene using a series of range images
US7317812B1 (en) * 2002-11-15 2008-01-08 Videomining Corporation Method and apparatus for robustly tracking objects
EP1482448A2 (en) * 2003-05-28 2004-12-01 TRW Automotive U.S. LLC Method and apparatus for determining an occupant's head location in an actuatable occupant restraining system
WO2005067424A2 (en) * 2003-12-31 2005-07-28 Cognex Technology And Investment Corporation Method and apparatus for monitoring a passageway using 3d images

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHIN SENG CHUA ET AL: "3D FREE-FORM SURFACE REGISTRATION AND OBJECT RECOGNITION", INTERNATIONAL JOURNAL OF COMPUTER VISION, KLUWER ACADEMIC PUBLISHERS, NORWELL, US LNKD- DOI:10.1007/BF00127819, vol. 17, no. 1, 1 January 1996 (1996-01-01), pages 77 - 99, XP000554284, ISSN: 0920-5691 *
KYLE HEATH ET AL: "Multi-person tracking from sparse 3D trajectories in a camera sensor network", DISTRIBUTED SMART CAMERAS, 2008. ICDSC 2008. SECOND ACM/IEEE INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 7 September 2008 (2008-09-07), pages 1 - 9, XP031329212, ISBN: 978-1-4244-2664-5 *
XIAOGUANG LU ET AL: "Three-dimensional model based face recognition", PATTERN RECOGNITION, 2004. ICPR 2004. PROCEEDINGS OF THE 17TH INTERNAT IONAL CONFERENCE ON CAMBRIDGE, UK AUG. 23-26, 2004, PISCATAWAY, NJ, USA,IEEE LNKD- DOI:10.1109/ICPR.2004.1334127, vol. 1, 23 August 2004 (2004-08-23), pages 362 - 366, XP010724260, ISBN: 978-0-7695-2128-2 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140212030A1 (en) * 2011-06-20 2014-07-31 Donny Tytgat Method and arrangement for image model construction
US9324191B2 (en) * 2011-06-20 2016-04-26 Alcatel Lucent Method and arrangement for image model construction

Also Published As

Publication number Publication date
KR101428627B1 (en) 2014-08-13
CN102652319A (en) 2012-08-29
JP5559349B2 (en) 2014-07-23
US20120299911A1 (en) 2012-11-29
CN102652319B (en) 2015-11-25
KR20130004249A (en) 2013-01-09
US9589369B2 (en) 2017-03-07
JP2013513842A (en) 2013-04-22
EP2333692A1 (en) 2011-06-15

Similar Documents

Publication Publication Date Title
US9589369B2 (en) Method and arrangement for improved image matching
Li et al. Learning the depths of moving people by watching frozen people
JP7173772B2 (en) Video processing method and apparatus using depth value estimation
Huang et al. Indoor depth completion with boundary consistency and self-attention
CN106570507B (en) Multi-view-angle consistent plane detection and analysis method for monocular video scene three-dimensional structure
Revaud et al. Epicflow: Edge-preserving interpolation of correspondences for optical flow
US8433157B2 (en) System and method for three-dimensional object reconstruction from two-dimensional images
US8452081B2 (en) Forming 3D models using multiple images
US8447099B2 (en) Forming 3D models using two images
Skinner et al. Uwstereonet: Unsupervised learning for depth estimation and color correction of underwater stereo imagery
Konrad et al. Automatic 2d-to-3d image conversion using 3d examples from the internet
KR20080108430A (en) 3d face reconstruction from 2d images
WO2021220688A1 (en) Reinforcement learning model for labeling spatial relationships between images
Kazemi et al. Real-time face reconstruction from a single depth image
Atapour-Abarghouei et al. Generative adversarial framework for depth filling via wasserstein metric, cosine transform and domain transfer
Mustafa et al. 4d temporally coherent light-field video
Xu et al. Video-object segmentation and 3D-trajectory estimation for monocular video sequences
Salvador et al. Multi-view video representation based on fast Monte Carlo surface reconstruction
EP2966867A1 (en) Methods and devices for encoding and decoding a sequence of frames representing a 3D scene, and corresponding computer program products and computer-readable medium
KR101866106B1 (en) Method and Device of Inter-frame Plane Prediction for Depth Video
De Cubber et al. Partial differential equation-based dense 3D structure and motion estimation from monocular image sequences
Dickson et al. User-centred Depth Estimation Benchmarking for VR Content Creation from Single Images.
KR101670987B1 (en) Method for endcoding image data and method for and decoding image data based on scale and angle variation information and apparatus for encoding image data and apparatus for decoding image data based on scale and angle variation information
Miled et al. A variational framework for simultaneous motion and disparity estimation in a sequence of stereo images
JP2009294956A (en) Three-dimensional shape restoration method, its device, program, and recording medium

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080056075.1

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10790919

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 4313/CHENP/2012

Country of ref document: IN

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2012542521

Country of ref document: JP

ENP Entry into the national phase

Ref document number: 20127017918

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 13509760

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 10790919

Country of ref document: EP

Kind code of ref document: A1