EP2078277A2 - Method for comparing groups of images - Google Patents

Method for comparing groups of images

Info

Publication number
EP2078277A2
EP2078277A2 EP07821748A EP07821748A EP2078277A2 EP 2078277 A2 EP2078277 A2 EP 2078277A2 EP 07821748 A EP07821748 A EP 07821748A EP 07821748 A EP07821748 A EP 07821748A EP 2078277 A2 EP2078277 A2 EP 2078277A2
Authority
EP
European Patent Office
Prior art keywords
key frame
key
local
global
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP07821748A
Other languages
German (de)
French (fr)
Inventor
Frédéric Lefebvre
Ayoub Massoudi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to EP07821748A priority Critical patent/EP2078277A2/en
Publication of EP2078277A2 publication Critical patent/EP2078277A2/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7847Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • G06V20/47Detecting features for summarising video content
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/248Character recognition characterised by the processing or recognition method involving plural approaches, e.g. verification by template match; Resolving confusion among similar patterns, e.g. "O" versus "Q"
    • G06V30/2504Coarse or fine approaches, e.g. resolution of ambiguities or multiscale approaches

Definitions

  • the invention concerns a method for comparing groups of images.
  • the invention concerns mainly the field of content identification and authentication.
  • Fingerprinting is largely used to search a content in large multimedia databases.
  • a fingerprinting design extracts discriminating features, called fingerprints, typical for each image/video and thus specific to each picture/video.
  • the fingerprint can also be called image DNA or video DNA.
  • Database management is the first application. Fingerprinting is also a technical issue for the detection of illegal copy and streaming monitoring. Security and output bit length are the fingerprinting weaknesses.
  • the visual hash is a fingerprinting technique with crypto-system constraints.
  • a visual hash function computes a unique constant condensed version of the content, called visual digest. A small change of the picture/video leads to a small change of the visual digest.
  • Visual hash is used in multimedia content authentication
  • We call visual hash function a hash function designed for images and video contents.
  • Visual hash function uses fingerprinting techniques with crypto-system constraints.
  • a visual hash function verifies:
  • a one-way function or cryptographic hash function f has the property "ease of computation”: for every input x (from domain of f) f(x) is 'easy' to compute.
  • a hash function f maps an input x of arbitrary bit length to an output f(x) of fixed bit length.
  • the image f(x) must be resistant and robust, i.e. shall remain the same before and after attacks, if these attacks do not alter the perceptive contents.
  • f(x) ⁇ f(x') if ⁇ ⁇ ' .
  • the image f(x) is called visual digest. A small change of a content leads to a small change of the visual digest. A high change of the content leads to a high change of the visual digest.
  • An image visual digest can be:
  • a video visual digest can be:
  • the video fingerprinting consists in describing the video content as set of temporal features, local image features or global image features. Temporal features, local and global image features do not consume the same time. Global description is very fast but it is not very robust. Local description is time demanding but it is very robust against attack.
  • the invention proposes an innovative video content identification process which combines a visual hash function and a local fingerprinting. Thanks to a visual hash function, we observe the video content variation and we detect key frames. A local image fingerprint technique characterizes the detected key frames. The set of local fingerprints and global fingerprints for the whole video summarizes the video or fragments of the video.
  • the invention relates to a method for comparing a group of images, called candidate group, with reference groups of images, said reference groups being stored in a database with their representing key frames to which are associated local features and global features.
  • the method comprises the following steps:
  • the step of computing a global feature computes a visual digest of each key frame.
  • the method comprises
  • - a step of detecting among the key frames of each shot, a key frame having the smallest content variation of the candidate group, called stable frame, said method being performed only on the stable frames detected among the key frames.
  • the step of computing the local features of each key frame comprises the steps of:
  • said key frame is detected as a copy.
  • said key frame is detected as a copy.
  • the method further comprises the step of
  • - Figure 1 represents an image in the P-Q space
  • - Figure 2 represents a selection of points in an image used for the computation of the visual digest
  • Figure 3 represents a selection of preferred points in an image for the computation of the visual digest
  • FIG. 4 represents a key point orientation used for fingerprinting computing
  • FIG. 5 represents a nine region decomposition used for the computation of the descriptor.
  • FIG. 6 represents a flowchart of a video fingerprinting computation and of an indexing/identification process according to the invention, DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
  • Embodiments of the present invention may be implemented in software, firmware, hardware or by any combination of various techniques.
  • the present invention may be provided as a computer program product or software which may include a machine or computer-readable medium having stored thereon instructions which may be used to program a computer (or other electronic devices) to perform a process according to the present invention.
  • steps of the present invention might be performed by specific hardware component that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
  • a machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (for instance a computer).
  • These mechanisms include, but are not limited to, floppy diskettes, optical disks, hard disk drives, holographic disks, compact disks read-only memory (CD-ROMs), magneto-optical disks, read-only memory (ROMs), random access memory (RAM), Erasable Programmable Read-only memory (EEPROM), magnetic or optical cards, flash memory, a transmission over the Internet, electrical, optical, acoustical or other forms of propagated signals (for instance carrier waves, infrared signals, digital signals, etc), or the like.
  • modules represented are functional units which may or may not correspond to physically distinguishable units.
  • these modules or some of them may be grouped together into a single component, or constitute functionalities of one and the same piece of software.
  • a contra ⁇ o, certain modules may possibly be composed of separate physical entities.
  • the visual digest is based on pseudo variance of the luminance of the points selected in a P-Q image representation.
  • angular orientation
  • the coordinates of a point (x,y) according to (X 1 Y) axis (original domain) become (p, ⁇ ) according to the (P 1 Q) axis :
  • a point (x,y) is a selected point if its coordinate p satisfies:
  • the preferred embodiment takes care of the importance of a point in the image.
  • the importance of a point (x,y) in an image can be weighted by the relative position of this point (x,y) to the center (x',y').
  • the distance rof a point (x,y) from the ellipse (figure 3) image center (x',y') verifies:
  • the visual digest is composed of 180 elements. Each element of the visual digest is thus computed by:
  • l(p, ⁇ ) is the value of the selected point (p, ⁇ ) (preferably the luminance of the pixel (p, ⁇ ))
  • Mean( ⁇ ) is the classical mean value of l(p, ⁇ ) i ⁇ — .V /(p, ⁇ ) .
  • N ⁇ is card( ⁇ p, ⁇ ⁇ ) (strip width of ⁇ )
  • the image visual digest of a frame / is:
  • the evolution of the visual digest distance over a group of frames allows the detection of key frames.
  • a shot boundary is a brutal variation of the visual digest inside a group of frames.
  • the set of frames in between two shot boundaries is called a shot.
  • the stable frame presents the smallest distance variation of visual digest inside a shot.
  • the goal of this step is to extract stable frames. When a stable frame is detected, it can be characterized by using local fingerprinting.
  • An automatic threshold process determines brutal transitions along the video and detects shot boundaries.
  • the global automatic threshold process is based on two thresholds:
  • T g ⁇ oba ⁇ • Adaptive threshold denoted T /oca/
  • T g ⁇ oba ⁇ • Adaptive threshold denoted T /oca/
  • ShotBound the set of shot boundaries along a video
  • ShotBound ⁇ SB ⁇
  • a pseudo-global threshold denoted T g ⁇ oba ⁇ (iLi)
  • S? of size 2Li+1, centered on frame /.
  • T glob ⁇ l (i,L ⁇ ) ⁇ (i) + ⁇ ⁇ . ⁇ (i)
  • a local and adaptive threshold denoted T ⁇ oca ⁇ i, L 2
  • T ⁇ oca ⁇ i, L 2 is computed on a small sliding window S 2 of size 2L 2 +1, with L 2 « L 1 , centered on frame i.
  • T loc ⁇ l (i, L 2 ) ⁇ 2 .d ms ⁇ (i)
  • Stable frame detection A stable frame is the frame with the smallest content variation along a shot. For such a frame, the content distance between this frame to the other neighbor frames will be very low. Two frames with the same content have the same (or closed to) visual hash (global fingerprint in our case).
  • the stable frame is the frame which provides the smallest average of content image distance. This stable frame must have a well distributed content information.
  • the preferred value for L 3 is 5.
  • the interest points detection is based on a Difference Of Gaussian. It consists in detecting repeatable interest points.
  • An interest point also called key point
  • An interest point is repeatable if its pixel location is stable. It must be resistant to scale change, rotation, filtering...
  • the Gaussian kernel is a scale-space kernel candidate. The theoretical interest of such an approach is that the difference of two Gaussians with respective variances k. ⁇ and ⁇ is a very good approximation of the normalized Gaussian Laplacian:
  • the gradient of a pixel (x,y) in a disc of radius 1 is given by:
  • the neighboring disc is then divided into nine regions (figure 5). Each pixel within the disc belongs to one unique region depending on its polar position.
  • the final descriptor of a key point k is the concatenation of the nine histograms.
  • KD(k) [Histo(i,Q ,k)]
  • the Local Fingerprint of a stable frame / is the set of all KD:
  • the cardinality Of LF(T) depends on image activity.
  • Video movies are recorded in a database, each video movie is called a reference group of images.
  • global image features visual digest
  • the global image features are typical and unique for each of the different image contents.
  • the cardinality of each global image features is constant for each frame of the video.
  • the distance of the successive global image features is computed.
  • the evolution of this distance detects shot boundaries and key frames.
  • a shot boundary is a brutal variation of the representative features inside a group of n frames.
  • the set of frames surrounded by two shot boundaries is called a shot.
  • stable frames are detected among the key frames as presented earlier but the invention can also be applied to key frames without detection of stable frames.
  • the stable frame presents the smallest distance variation of image features inside a shot.
  • the frame content information is correctly distributed (above an entropic threshold).
  • a local fingerprint is calculated on each of the detected keyframes.
  • the local fingerprint represents as mentioned earlier, the local fingerprint of a key frame is SF(i), which calculation is described earlier.
  • a step E4 the global fingerprint of only the key frames is calculated.
  • a global fingerprint of a key frame i is the visual hash VD(i) as defined earlier.
  • the local fingerprints and the global fingerprints are stored in a step E5 in a database, for instance on a hard disk drive, a DVD, an holographic storage or any other memory or recording medium.
  • a visual hash function is performed during a step E6. This candidate movie is submitted to the database in order to check if it is a copy of one document of the database for instance.
  • a visual digest is obtained for the candidate movie.
  • the key frames are detected as explained earlier.
  • a global fingerprint is calculated for each of the key frames.
  • a local fingerprint is calculated on each of the key frames.
  • a comparison is performed in a step E10 between the global fingerprint of the key frame of the candidate movie and the global fingerprint of the key frames stored in the database.
  • the comparison is done using the Euclidian distance.
  • VD c (i) The global description VD c (i) is compared to all VD(i) of the database.
  • the comparison is done using Euclidean Distance:
  • a candidate VD 0 matches with a reference VD if
  • the empirical value Te depends on the application and attacks applied on the reference movie. This first pass is very fast and brings excellent results for most of attacks.
  • step E11 the keyframe is detected as being a copy and a decision step E14 is performed (detailed later).
  • step E11 When there is no match in step E11 , the local fingerprints of the key frame of the candidate movie and of the database are compared in a step E12. The comparison is done using the Euclidian distance. If there is a match, in step E13, the current key frame is detected as a copy and the decision step E14 is performed. When there is no match, in step E13, the next key frame is selected and the comparison of step E10 is performed again on this new key frame.
  • the decision step E14 when p key frames are detected as a copy, the decision step detects a section. When q sections are detected, the candidate movie is detected as being a copy of the movie stored in the database for which key frames local/global fingerprints have matched.
  • the invention does not need to make the comparison of all the key frames of the movie.
  • the process can be stopped.
  • This predetermined number is based on several parameters related to the content of the movie, to the reliability of the fingerprint calculation. Therefore the invention allows a fast process for matching videos.
  • This invention can be used for many purposes.
  • a first application is to retrieve a video or a fragment of video in a database using video fingerprint as a database index.
  • a second application is to identify, in real time (or closed to), a video stream by matching the current fingerprints of the current video with all fingerprints of a video database even if strong distortions are applied to an original content. It is a copy detection application.
  • a third application is to find a model of distortion applied to an original movie. By matching the local fingerprints of an original copy and a pirate copy, a model of distortion is computed. It is a co-registration application. This co- registration technique can be used in an informed watermarking algorithm.
  • a fourth application can be the recovery of a particular release of a movie. For instance, when a plurality of shots is taken, it is sometimes, later on, needed to recover which shot was used for which copy.
  • the current invention enables to recover the right shot.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Television Signal Processing For Recording (AREA)
  • Collating Specific Patterns (AREA)
  • Processing Or Creating Images (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

The invention relates to a method for comparing a group of images, called candidate group, with reference groups of images, said reference groups being stored in a database with their representing key frames to which are associated local features and global features. The method comprises the following steps: - detecting an image within said candidate group, called key frame; - computing a global feature of said key frame; - comparing said computed global feature with the global feature of each key frame of the reference group; - if the differences between said computed global feature and each stored global feature are above a predefined threshold then: computing a local feature of said key frame; comparing said computed local feature with the local feature of each key frame of the reference group.

Description

METHOD FOR COMPARING GROUPS OF IMAGES
The invention concerns a method for comparing groups of images.
FIELD OF THE INVENTION
The invention concerns mainly the field of content identification and authentication.
BACKGROUND OF THE INVENTION
New multimedia database search tools require rapidity, compression resistance and copyright. Fingerprinting is largely used to search a content in large multimedia databases. A fingerprinting design extracts discriminating features, called fingerprints, typical for each image/video and thus specific to each picture/video. The fingerprint can also be called image DNA or video DNA. Database management is the first application. Fingerprinting is also a technical issue for the detection of illegal copy and streaming monitoring. Security and output bit length are the fingerprinting weaknesses.
The visual hash is a fingerprinting technique with crypto-system constraints. A visual hash function computes a unique constant condensed version of the content, called visual digest. A small change of the picture/video leads to a small change of the visual digest. Visual hash is used in multimedia content authentication We call visual hash function, a hash function designed for images and video contents. Visual hash function uses fingerprinting techniques with crypto-system constraints. A visual hash function verifies:
• Easy to compute
A one-way function or cryptographic hash function f has the property "ease of computation": for every input x (from domain of f) f(x) is 'easy' to compute.
• Fixed output bit length A hash function f maps an input x of arbitrary bit length to an output f(x) of fixed bit length.
• Pre-image resistant
Given any image y, for which there exists an x with f(x)=y, it is computationally infeasible to compute any pre-image x' with f(x')=y.
• Weak collision resistance
Given any pre-image x it is computationally infeasible to find a 2nd pre- image x' ≠ x with f(x)=f(x'). Two pre-images x, x' are different if and only if their contents are different. • A soft (perceptive) digest
The image f(x) must be resistant and robust, i.e. shall remain the same before and after attacks, if these attacks do not alter the perceptive contents. f(x) ~ f(x') if χ = χ' . χ = χ' means that x' is a version of x (same visual content). For video/picture application, the image f(x) is called visual digest. A small change of a content leads to a small change of the visual digest. A high change of the content leads to a high change of the visual digest. An image visual digest can be:
• A global digest of the image. • A set of local digests computed on regions of an image.
A video visual digest can be:
• a global digest of the video.
• a set of image visual digest of all video frames, a set of image visual digests of all video key frames.
The video fingerprinting consists in describing the video content as set of temporal features, local image features or global image features. Temporal features, local and global image features do not consume the same time. Global description is very fast but it is not very robust. Local description is time demanding but it is very robust against attack.
The invention proposes an innovative video content identification process which combines a visual hash function and a local fingerprinting. Thanks to a visual hash function, we observe the video content variation and we detect key frames. A local image fingerprint technique characterizes the detected key frames. The set of local fingerprints and global fingerprints for the whole video summarizes the video or fragments of the video.
SUMMARY OF THE INVENTION
To this end, the invention relates to a method for comparing a group of images, called candidate group, with reference groups of images, said reference groups being stored in a database with their representing key frames to which are associated local features and global features. According to the invention, the method comprises the following steps:
- detecting an image within the candidate group, called key frame;
- computing a global feature of the key frame;
- comparing said computed global feature with the global feature of each key frame of the reference group;
- if the differences between said computed global feature and each stored global feature are above a predefined threshold then:
computing a local feature of the key frame;
comparing the computed local feature with the local feature of each key frame of the reference group.
According to a preferred embodiment, the step of computing a global feature computes a visual digest of each key frame.
According to a preferred embodiment, the method comprises
- a step of detecting shot boundaries,
- a step of detecting among the key frames of each shot, a key frame having the smallest content variation of the candidate group, called stable frame, said method being performed only on the stable frames detected among the key frames.
Preferentially, the step of computing the local features of each key frame comprises the steps of:
- detecting interest points, - computing a local descriptor for said interest points,
According to a preferred embodiment, when said global feature of a key frame of the reference group match the global feature of a key frame of the candidate group, said key frame is detected as a copy.
According to a preferred embodiment, when said local feature of a key frame of the reference group match the local feature of a key frame of the candidate group, said key frame is detected as a copy.
According to a preferred embodiment, the method further comprises the step of
- deciding that the candidate group is a copy of the reference group when a predetermined number (p) of key frames of the candidate groups are identified as a copy of said predetermined number of key frames of the reference group.
BRIEF DESCRIPTION OF THE DRAWINGS Other characteristics and advantages of the invention will appear through the description of a non-limiting embodiment of the invention, which will be illustrated, with the help of the enclosed drawing.
- Figure 1 represents an image in the P-Q space, - Figure 2 represents a selection of points in an image used for the computation of the visual digest,
- Figure 3 represents a selection of preferred points in an image for the computation of the visual digest,
- Figure 4 represents a key point orientation used for fingerprinting computing,
- Figure 5 represents a nine region decomposition used for the computation of the descriptor.
- Figure 6 represents a flowchart of a video fingerprinting computation and of an indexing/identification process according to the invention, DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
Embodiments of the present invention may be implemented in software, firmware, hardware or by any combination of various techniques. For example, in some embodiments, the present invention may be provided as a computer program product or software which may include a machine or computer-readable medium having stored thereon instructions which may be used to program a computer (or other electronic devices) to perform a process according to the present invention. In other embodiments, steps of the present invention might be performed by specific hardware component that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
Thus, a machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (for instance a computer). These mechanisms include, but are not limited to, floppy diskettes, optical disks, hard disk drives, holographic disks, compact disks read-only memory (CD-ROMs), magneto-optical disks, read-only memory (ROMs), random access memory (RAM), Erasable Programmable Read-only memory (EEPROM), magnetic or optical cards, flash memory, a transmission over the Internet, electrical, optical, acoustical or other forms of propagated signals (for instance carrier waves, infrared signals, digital signals, etc), or the like.
Unless specifically stated otherwise as apparent from the following discussion, it is appreciated that discussions utilizing terms such as "processing" or "computing" or "calculating" or "determining" or the like, may refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
In the following detailed description of the embodiments, reference is made to the accompanying drawings that show, by way of illustration, specific embodiments in which the invention may be practices. In the drawings, like numeral describe substantially similar components throughout the several views. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. Other embodiments may be utilized and structural, logical, and electrical changes may be made without departing from the scope of the present invention. Moreover, it is to be understood that the various embodiments of the invention, although different, are not necessarily mutually exclusive. For example, a particular feature, structure, or characteristic described in one embodiment may be included within other embodiments.
In Figure 6, the modules represented are functional units which may or may not correspond to physically distinguishable units. For example, these modules or some of them may be grouped together into a single component, or constitute functionalities of one and the same piece of software. A contraήo, certain modules may possibly be composed of separate physical entities.
We are now going to describe how the visual hash function used for obtaining the visual digest, said visual digest enabling to detect the shot boundaries. The visual digest is based on pseudo variance of the luminance of the points selected in a P-Q image representation. On figure 1 , to select a point in P-Q image representation, we consider points along a line passing through the image center, and characterized by its angular orientation θ. For an angular orientation θ, the coordinates of a point (x,y) according to (X1Y) axis (original domain) become (p, θ) according to the (P1Q) axis :
We select the set of points on a line passing through the image center, with the orientation θ. The discrete version of this line is a strip depicted in figure 2. θ is equal to 0.179 degree. We decide to use only the p-axis to characterize the pixels of each angular orientation θ. For an angular orientation θ, a point (x,y) is characterized by the couple (p,θ).
For a strip width of 1 , a point (x,y) is a selected point if its coordinate p satisfies:
-0.5 ≤p-p'≤ 0.5 (1)
With ( (p',θ) the coordinates of the middle point (x',y') for a same given θ.
So the equation (1) becomes :
-0.5<(x-x')cosθ + (j-/)sinθ < 0.5 (2)
For a strip width of η, we extend (2) to :
-η/2≤(x-x')cosθ + (j-/)sinθ <η/2 (3)
The preferred embodiment takes care of the importance of a point in the image. The importance of a point (x,y) in an image can be weighted by the relative position of this point (x,y) to the center (x',y'). The distance rof a point (x,y) from the ellipse (figure 3) image center (x',y') verifies:
r(x,y)<dφ) (4)
Where: d2(Q) = {height I if .{width I if
~ {height 12) 2. cos2 (θ ) + {width 12) 2. sin 2 (θ )
For the given orientation θ, only light grey pixels are selected. For other orientations, only dark grey pixels can be selected, white pixels are rejected. If a discretization of 1 ° angle is selected, the visual digest is composed of 180 elements. Each element of the visual digest is thus computed by:
Elt(θ) = (I(p,θ) - Mean(θ)f
• l(p,θ) is the value of the selected point (p,θ) (preferably the luminance of the pixel (p,θ))
• Mean(θ) is the classical mean value of l(p,θ) i Α — .V /(p,θ) .
J VΘ P =1
• Nθ is card({p,θ }) (strip width of η )
The image visual digest of a frame / is:
With card(VD(i)) = nθ
We are now going to describe how the key frames are detected.
The evolution of the visual digest distance over a group of frames allows the detection of key frames. A shot boundary is a brutal variation of the visual digest inside a group of frames. The set of frames in between two shot boundaries is called a shot. The stable frame presents the smallest distance variation of visual digest inside a shot. The goal of this step is to extract stable frames. When a stable frame is detected, it can be characterized by using local fingerprinting.
First a shot boundary detection is performed.
An automatic threshold process determines brutal transitions along the video and detects shot boundaries. The global automatic threshold process is based on two thresholds:
• Pseudo-global threshold, denoted Tgιobaι • Adaptive threshold, denoted T/oca/ Two frames with the same content have the same (or closed to) visual digest. Instead of the histogram, the visual hash function described previously is chosen to study the video content variation. Such an approach presents the additional advantage to be very fast and not CPU/memory demanding. Thus, the visual digest distance measures the similarity between frames. Inside a window S, the shot boundary corresponds to the frame where a pick of the visual digest distance is detected. This frame is localized in the center of the window S. The shot boundary on a window S, denoted SB, is calculated as below:
SB = i\dist (VD(i), VD(i + 1)) > mΑχ(Tglobal (i, L1 ), Tlocal (i, L2 ))
And the set of shot boundaries along a video is denoted ShotBound
ShotBound = {SB}
The cardinality of ShotBound depends on video activity. A pseudo-global threshold, denoted Tgιobaι(iLi), is defined on a large sliding window S? of size 2Li+1, centered on frame /. Letting μ(i) and σ(i) denote the mean and the variance of dist(VD(k),VD(k + 1)) measured for all k in S1=Ii-L1^L1]. We define our proposed pseudo-global threshold as: Tglobαl(i,Lι) = μ(i) + αι.σ (i)
A local and adaptive threshold, denoted Tιoca{i, L2), is computed on a small sliding window S2 of size 2L2+1, with L2 « L1, centered on frame i. Specifically, we have:
Tlocαl (i, L2) = α2.dmsκ (i)
where dmax(i) is the second maximum value of dist(VD(k),VD(k + X)) measured for k in S2=[i-L2;i+L2]. Empirical values: ^=20, L2=I 2, αi=3 and α2=2 .
Stable frame detection A stable frame is the frame with the smallest content variation along a shot. For such a frame, the content distance between this frame to the other neighbor frames will be very low. Two frames with the same content have the same (or closed to) visual hash (global fingerprint in our case).
Inside a shot, for each group of 2L3+1 frames, an average of the content image distance (at the position )) is given by: With j = L3
The stable frame is the frame which provides the smallest average of content image distance. This stable frame must have a well distributed content information.
Dist(l) = Min({Dist(j)}) StαbleFrαme = I .
\Entropy(VD(l)\ ≥ Threshold
We obtain one stable frame per shot.
The preferred value for L3 is 5.
In the previous step, a stable frame is detected. Now, we can characterize this frame by using local fingerprinting. The local fingerprint process is divided in two steps:
• Interest points detection
• Local description of interest points We are now going to describe the interest points detection
The interest points detection is based on a Difference Of Gaussian. It consists in detecting repeatable interest points. An interest point (also called key point) is repeatable if its pixel location is stable. It must be resistant to scale change, rotation, filtering... We use a cascade of filtered image. The Gaussian kernel is a scale-space kernel candidate. The theoretical interest of such an approach is that the difference of two Gaussians with respective variances k.σ and σ is a very good approximation of the normalized Gaussian Laplacian:
G(jc, y, kσ ) - G(x,y,σ ) ∞ (k - I)O 2V2G
The convolution of this difference with the image will lead to the Difference of Gaussians function (DOG image):
D(x,y,c) = (G(x,y,kc) - G(x,y,c)) * I(x,y) (6)
Therefore, for an input image, cascades of filtered images are built and called "octaves", and then the difference of Gaussians is computed for each octave. The extrema of the DOG Gaussians represent potential locations of interest points. Not all of these locations contain relevant information. Thus, a further threshold is performed on these points. Only the points with good contrast and precise space localization are kept. The locations of the detected key points in the scale space are then stored.
We are now going to describe the local description of the key points.
In the previous step, we performed key points detection and we stored their localization in the scale-space. In this step, we locally characterize each key point by computing a local descriptor. The descriptor must be both discriminant and invariant to a certain number of transformations. A discriminant descriptor is a descriptor which provides representative and different values for each different content. The description of a key point must be different from the description of other key points. An efficient descriptor allows a correct matching in a large database of descriptors with high probability.
To compute a descriptor, we consider a circular neighborhood of radius β (e.g 20) (Figure 6) in order to be invariant to rotation. We compute the key point orientation, Keyθr(x,y), by summing the gradient vectors in a small disc Disc(x,y) around the key point.
Keyθr(x, y) = V orientation(x" , y" )
(x",y")eDisc(x,y)
The gradient of a pixel (x,y) in a disc of radius 1 is given by:
magnitude(x,y) = ^(d xL(x,y)f + (d yL(x,y)f orientation{x,y) = Arc tan(θ yL(x, y)ld xL{x,y))
Where L(x,y) is the Gaussian image:
L(x,y,o) = G(x,y,o) * I(x,y)
The orientation of the resulting vector gives the key point orientation (figure 4).
According to this orientation, the neighboring disc is then divided into nine regions (figure 5). Each pixel within the disc belongs to one unique region depending on its polar position.
With :
• a the key point orientation
• θ the polar position of the pixel (x,y) within the disc
• rthe distance from the key point to the pixel (x,y)
For each of the nine regions, we compute a local histogram of sixteen bins. Histo(i,θ,k)=#Pixel(x",y") \ orientation(x",y")= θ, (x",y") C R(i,k) With
• k the selected key point (x,y) • θ the pixel orientation (from 0° to 360° with a step angle of 22.5°, so there are 16 bins)
• / the index of the selected region (from 1 to 9)
• R(i,k) the region / of the disc centered in the selected key point k
The final descriptor of a key point k (KD) is the concatenation of the nine histograms.
KD(k) = [Histo(i,Q ,k)]
The Local Fingerprint of a stable frame /, called also shot fingerprint (SF) , is the set of all KD:
SF(i) = {KD(k)}
The cardinality Of LF(T) depends on image activity.
The Video Fingerprint VF is the set of shot fingerprints SF: VF = [SF(J)]
We are now going to describe, with the help of figure 6, an application of video matching where the local and global features are used for detecting if two different video documents are similar.
Video movies are recorded in a database, each video movie is called a reference group of images. In a step E1 , global image features (visual digest) for each frame of each movie are calculated by applying a visual hash function as described earlier in this document. The global image features are typical and unique for each of the different image contents. The cardinality of each global image features is constant for each frame of the video.
For each group of n frames, the distance of the successive global image features is computed. The evolution of this distance detects shot boundaries and key frames. A shot boundary is a brutal variation of the representative features inside a group of n frames. The set of frames surrounded by two shot boundaries is called a shot. In a preferred embodiment, stable frames are detected among the key frames as presented earlier but the invention can also be applied to key frames without detection of stable frames. The stable frame presents the smallest distance variation of image features inside a shot. For a stable frame, the frame content information is correctly distributed (above an entropic threshold).
In a step E3, a local fingerprint is calculated on each of the detected keyframes. The local fingerprint represents as mentioned earlier, the local fingerprint of a key frame is SF(i), which calculation is described earlier.
In a step E4, the global fingerprint of only the key frames is calculated. A global fingerprint of a key frame i is the visual hash VD(i) as defined earlier.
The local fingerprints and the global fingerprints are stored in a step E5 in a database, for instance on a hard disk drive, a DVD, an holographic storage or any other memory or recording medium.
When a candidate movie is submitted to the database, a visual hash function is performed during a step E6. This candidate movie is submitted to the database in order to check if it is a copy of one document of the database for instance.
A visual digest is obtained for the candidate movie. In a step E7, the key frames are detected as explained earlier. In a step E8, a global fingerprint is calculated for each of the key frames. In a step E9, a local fingerprint is calculated on each of the key frames.
A comparison is performed in a step E10 between the global fingerprint of the key frame of the candidate movie and the global fingerprint of the key frames stored in the database. The comparison is done using the Euclidian distance.
The global description VDc(i) is compared to all VD(i) of the database. The comparison, called first pass, is done using Euclidean Distance:
distEuclid(VD, VD c ) = - VD c (/)|
A candidate VD0 matches with a reference VD if
distEuclid(VD,VDc) ≤ Te
The empirical value Te depends on the application and attacks applied on the reference movie. This first pass is very fast and brings excellent results for most of attacks.
When there is a match, in a step E11 , the keyframe is detected as being a copy and a decision step E14 is performed (detailed later).
When there is no match in step E11 , the local fingerprints of the key frame of the candidate movie and of the database are compared in a step E12. The comparison is done using the Euclidian distance. If there is a match, in step E13, the current key frame is detected as a copy and the decision step E14 is performed. When there is no match, in step E13, the next key frame is selected and the comparison of step E10 is performed again on this new key frame.
During the decision step E14, when p key frames are detected as a copy, the decision step detects a section. When q sections are detected, the candidate movie is detected as being a copy of the movie stored in the database for which key frames local/global fingerprints have matched.
The invention does not need to make the comparison of all the key frames of the movie. When a predetermined number of key frames (or stable frames) have been detected as being a copy, the process can be stopped.
This predetermined number is based on several parameters related to the content of the movie, to the reliability of the fingerprint calculation. Therefore the invention allows a fast process for matching videos.
This invention can be used for many purposes.
A first application is to retrieve a video or a fragment of video in a database using video fingerprint as a database index.
A second application is to identify, in real time (or closed to), a video stream by matching the current fingerprints of the current video with all fingerprints of a video database even if strong distortions are applied to an original content. It is a copy detection application.
A third application is to find a model of distortion applied to an original movie. By matching the local fingerprints of an original copy and a pirate copy, a model of distortion is computed. It is a co-registration application. This co- registration technique can be used in an informed watermarking algorithm.
A fourth application can be the recovery of a particular release of a movie. For instance, when a plurality of shots is taken, it is sometimes, later on, needed to recover which shot was used for which copy. The current invention enables to recover the right shot.
The invention is not limited to the cited applications given here above.

Claims

1. Method for comparing a group of images, called candidate group, with reference groups of images, said reference groups being stored in a database with their representing key frames to which are associated local features and global features, characterized in that the method comprises the following steps:
- detecting an image within said candidate group, called key frame; - computing a global feature of said key frame;
- comparing said computed global feature with the global feature of each key frame of the reference group;
- if the differences between said computed global feature and each stored global feature are above a predefined threshold then: ■ computing a local feature of said key frame;
comparing said computed local feature with the local feature of each key frame of the reference group.
2. Method according to claim 1 characterized in that the step of computing a global feature computes a visual digest of each key frame.
3. Method according to claim 1 or 2 characterized in that it comprises
- a step of detecting shot boundaries,
- a step of detecting among the key frames of each shot, a key frame having the smallest content variation of the candidate group, called stable frame, said method being performed only on the stable frames detected among the key frames.
4. Method according to claim 1 characterized in that the step of computing the local features of each key frame comprises the steps of:
- detecting interest points,
- computing a local descriptor for said interest points,
5. Method according to one of the preceding claims characterized in that when said global feature of a key frame of the reference group match the global feature of a key frame of the candidate group, said key frame is detected as a copy.
6. Method according to one of claims 1 to 4 characterized in that when said local feature of a key frame of the reference group match the local feature of a key frame of the candidate group, said key frame is detected as a copy.
7. Method according to one of the previous claims characterized in that it further comprises the step of
- deciding that the candidate group is a copy of the reference group when a predetermined number (p) of key frames of the candidate groups are identified as a copy of said predetermined number of key frames of the reference group.
EP07821748A 2006-10-24 2007-10-24 Method for comparing groups of images Withdrawn EP2078277A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP07821748A EP2078277A2 (en) 2006-10-24 2007-10-24 Method for comparing groups of images

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP06301082 2006-10-24
EP07821748A EP2078277A2 (en) 2006-10-24 2007-10-24 Method for comparing groups of images
PCT/EP2007/061385 WO2008049851A2 (en) 2006-10-24 2007-10-24 Method for comparing groups of images

Publications (1)

Publication Number Publication Date
EP2078277A2 true EP2078277A2 (en) 2009-07-15

Family

ID=39324957

Family Applications (1)

Application Number Title Priority Date Filing Date
EP07821748A Withdrawn EP2078277A2 (en) 2006-10-24 2007-10-24 Method for comparing groups of images

Country Status (2)

Country Link
EP (1) EP2078277A2 (en)
WO (1) WO2008049851A2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2304649B1 (en) * 2008-07-23 2017-05-10 Jastec Co Frame based video matching
US8837769B2 (en) * 2010-10-06 2014-09-16 Futurewei Technologies, Inc. Video signature based on image hashing and shot detection
CN112131902B (en) * 2019-06-24 2025-02-25 北京京东尚科信息技术有限公司 Closed-loop detection method and device, storage medium and electronic device
CN110796088B (en) * 2019-10-30 2023-07-04 行吟信息科技(上海)有限公司 Video similarity judging method and device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7376274B2 (en) * 2004-08-31 2008-05-20 Sonic Solutions Method and apparatus for use in video searching
EP1974300A2 (en) * 2006-01-16 2008-10-01 Thomson Licensing Method for determining and fingerprinting a key frame of a video sequence
WO2007091243A2 (en) * 2006-02-07 2007-08-16 Mobixell Networks Ltd. Matching of modified visual and audio media

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2008049851A3 *

Also Published As

Publication number Publication date
WO2008049851A2 (en) 2008-05-02
WO2008049851A3 (en) 2008-11-27

Similar Documents

Publication Publication Date Title
US8103050B2 (en) Method for computing a fingerprint of a video sequence
Lee et al. Robust video fingerprinting for content-based video identification
JP5175854B2 (en) Image descriptor for image recognition
CN102317957B (en) Improved image identification
US7921120B2 (en) Method and system for image recognition using a similarity inverse matrix
Pandey et al. Passive copy-move forgery detection in videos
CN106484837A (en) The detection method of similar video file and device
Lee et al. Video fingerprinting based on centroids of gradient orientations
CN101789011A (en) Detection of Similar Video Segments
Massoudi et al. A video fingerprint based on visual digest and local fingerprints
US8620107B2 (en) Apparatus and method for extracting features of video, and system and method for identifying videos using same
Kashyap A novel method for real-time object-based copy-move tampering localization in videos using fine-tuned YOLO V8
Gaborini et al. Multi-clue image tampering localization
Wary et al. A review on robust video copy detection
Van Beeck et al. Abnormal behavior detection in LWIR surveillance of railway platforms
Himeur et al. Robust video copy detection based on ring decomposition based binarized statistical image features and invariant color descriptor (RBSIF-ICD)
Hsu et al. Cross-camera vehicle tracking via affine invariant object matching for video forensics applications
WO2008049851A2 (en) Method for comparing groups of images
Mohiuddin et al. An ensemble approach to detect copy-move forgery in videos
Gupta et al. Video authentication in digital forensic
Mou et al. Content-based copy detection through multimodal feature representation and temporal pyramid matching
Vaishnavi et al. Recognizing image splicing forgeries using histogram features
Yamauchi et al. Relational HOG feature with wild-card for object detection
Lucena et al. Improving face detection performance by skin detection post-processing
Himeur et al. Joint color and texture descriptor using ring decomposition for robust video copy detection in large databases

Legal Events

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

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20090424

AK Designated contracting states

Kind code of ref document: A2

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

DAX Request for extension of the european patent (deleted)
RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: THOMSON LICENSING

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

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20160712