Methods and systems for image fingerprinting
First Claim
1. A computer-implemented system for fingerprinting image data, the system comprising:
- a processing component; and
a memory;
wherein the processing component is coupled to the memory and is configured to;
select a first feature point in the image data;
select a plurality of neighborhood feature points closest in distance to the first feature point, wherein a least distant feature point, measured relative to the first feature point, of the plurality of neighborhood feature points is designated as an anchor point;
generate the plurality of point vectors, each point vector computed based on distance and angle between a particular neighborhood feature point and the first feature point, wherein the distance and angle are computed relative to the anchor point;
aggregate the plurality of point vectors to generate a fingerprint corresponding to the first feature point; and
map the image data to a two-dimensional array defining intensity values for one or more colors at each pixel location so as to convert the image data to a canonical format.
5 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides methods and systems to protect an organization'"'"'s secure image information from unauthorized disclosure. In one embodiment, methods and systems to generate image fingerprints are provided. The fingerprints are generated for each feature point of an image data. Because the fingerprints take into account the neighborhood features around each feature point, the image fingerprints are robust against derivative images where the original image may have been altered. Methods and systems to maintain a fingerprint database for an organization'"'"'s secure image data is also provided. In one embodiment, client fingerprints are generated for image data that a user intends to transmit outside of the organization. In some embodiments, suitable security actions are initiated if any of the client fingerprints match any of the fingerprints in the fingerprint database.
152 Citations
25 Claims
-
1. A computer-implemented system for fingerprinting image data, the system comprising:
-
a processing component; and a memory; wherein the processing component is coupled to the memory and is configured to; select a first feature point in the image data; select a plurality of neighborhood feature points closest in distance to the first feature point, wherein a least distant feature point, measured relative to the first feature point, of the plurality of neighborhood feature points is designated as an anchor point; generate the plurality of point vectors, each point vector computed based on distance and angle between a particular neighborhood feature point and the first feature point, wherein the distance and angle are computed relative to the anchor point; aggregate the plurality of point vectors to generate a fingerprint corresponding to the first feature point; and map the image data to a two-dimensional array defining intensity values for one or more colors at each pixel location so as to convert the image data to a canonical format. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented system for fingerprinting image data, the system comprising:
-
a processing component; and a memory; wherein the processing component is coupled to the memory and is configured to; select a first feature point in the image data; identify a plurality of neighborhood feature points closest in distance to the first feature point, wherein the plurality of neighborhood feature points closest in distance to the first feature point includes a P-neighborhood, the P-neighborhood including P number of neighborhood feature points closest in distance to the first feature point, wherein the feature points in the P-neighborhood are determined by storing all feature points of the image data in a feature point table and determining P number of feature points in the feature point table closest in location to the first feature point; generate a plurality of point vectors, each point vector computed based on distance and angle between a particular neighborhood feature point and the first feature point; and aggregate the plurality of point vectors to generate a fingerprint corresponding to the first feature point, wherein the feature points of the image data are stored in such a way that reduces a computation complexity of a search for the plurality of neighborhood feature points closest to the first feature point to less than O(n2). - View Dependent Claims (18, 19, 20)
-
-
10. The computer-implemented system for fingerprinting image data as recited in 9, wherein the distance and angle between the first feature point and the particular neighborhood feature point is computed relative to the anchor point.
-
11. The computer-implemented system for fingerprinting image data as recited in 10, wherein the distance between the particular neighborhood feature point and the first feature point is normalized relative to the distance between the anchor point and the first feature point.
-
12. The computer-implemented system for fingerprinting image data as recited in 11, wherein the distance between the anchor point and the first feature point is normalized to a unitary value.
-
13. The computer-implemented system for fingerprinting image data as recited in 10, wherein the angle between the particular neighborhood feature point and the first feature point is normalized relative to the angle between the anchor point and the first feature point.
-
14. The computer-implemented system for fingerprinting image data as recited in 13, wherein the angle between the first feature point and the anchor point is normalized to a zero value.
-
15. The computer-implemented system for fingerprinting image data as recited in 10, wherein values of the distance and angle between the particular neighborhood feature point and the first feature point are rounded to enable generation of substantially similar fingerprints across related features of the image data.
-
16. The computer-implemented system for fingerprinting image data as recited in 9, wherein the angle is computed based on a predetermined direction of rotation.
-
17. The computer-implemented system for fingerprinting image data as recited in 16, wherein the direction of rotation is determined for a specific P neighborhood based on a feature local to the specific P neighborhood.
-
21. A computer-implemented system for fingerprinting image data, the system comprising:
-
a processing component; and a memory; wherein the processing component is coupled to the memory and is configured to; select a first feature point in the image data; identify a plurality of neighborhood feature points closest in distance to the first feature point, wherein the plurality of neighborhood feature points closest in distance to the first feature point includes a P-neighborhood, the P-neighborhood including P number of neighborhood feature points closest in distance to the first feature point; generate a plurality of point vectors, each point vector computed based on distance and angle between a particular neighborhood feature point and the first feature point; and aggregate the plurality of point vectors to generate a fingerprint corresponding to the first feature point, wherein the distance between the first feature point and another feature point of the image data is computed using an Euclidean distance formula, and wherein a final square-root function is not computed in the Euclidean distance formula. - View Dependent Claims (22, 23, 24)
-
-
25. A computer-implemented method for fingerprinting image data, the method comprising:
-
selecting a first feature point in the image data; identifying a plurality of neighborhood feature points closest in distance to the first feature point, wherein the plurality of neighborhood feature points closest in distance to the first feature point includes a P-neighborhood, the P-neighborhood including P number of neighborhood feature points closest in distance to the first feature point; generating a plurality of point vectors, each point vector computed based on distance and angle between a particular neighborhood feature point and the first feature point; and aggregating the plurality of point vectors to generate a fingerprint corresponding to the first feature point, wherein distance between the first feature point and another feature point of the image data is computed using a modified Euclidean distance formula that excludes a square-root operation.
-
Specification