Hiding codes in input data

Information

  • Patent Grant
  • 7978876
  • Patent Number
    7,978,876
  • Date Filed
    Tuesday, September 22, 2009
    15 years ago
  • Date Issued
    Tuesday, July 12, 2011
    13 years ago
Abstract
The present invention relates to hiding codes in input data, e.g., such as still imagery and motion pictures. One claim recites: embedding an N-bit code with a source signal, N being at least one. The embedding proceeds, for each bit of the N-bit code, according to the following: mapping the bit to a portion of the source signal; changing values of at least two data values associated with the portion in accordance with the bit. The act of changing embeds the N-bit code in a manner that is generally imperceptible to a human observer of the source signal. A related claim recites that the portion includes a data value, and the above method further includes changing the value of the data value in accordance with said bit of the code, an amount of the changing being adjusted based on the value. Of course, other claims and combinations are provided as well.
Description
TECHNICAL FIELD

The present disclosure relates to signal processing—to encode content with hidden supplemental information, and to decode such supplemental information from encoded content.


BACKGROUND AND SUMMARY

Various images in traditional print or photographic media are commonly distributed to many users. Examples include the distribution of prints of paintings to the general public and photographs and film clips to and among the media. Owners may wish to audit usage of their images in print and electronic media, and so require a method to analyze print, film and digital images to determine if they were obtained directly from the owners or derived from their images. For example, the owner of an image may desire to limit access or use of the image. To monitor and enforce such a limitation, it would be beneficial to have a method of verifying that a subject image is copied or derived from the owner's image. The method of proof should be accurate and incapable of being circumvented. Further, the method should be able to detect unauthorized copies that have been resized, rotated, cropped, or otherwise altered slightly.


In the computer field, digital signatures have been applied to non-image digital data in order to identify the origin of the data. For various reasons these prior art digital signatures have not been applied to digital image data. One reason is that these prior art digital signatures are lost if the data to which they are applied are modified. Digital images are often modified each time they are printed, scanned, copied, or photographed due to unintentional “noise” created by the mechanical reproduction equipment used. Further, it is often desired to resize, rotate, crop or otherwise intentionally modify the image. Accordingly, the existing digital signatures are unacceptable for use with digital images.


In accordance with certain embodiments, the present disclosure details methods and systems for embedding image signatures within visual images, applicable to digital representations as well as other media such as print or film. The signatures can identify the source or ownership of images and distinguish between different copies of a single image.


In a particular embodiment described herein, a plurality of signature points are selected that are positioned within an original image having pixels with pixel values. The pixel values of the signature points are adjusted by an amount detectable by a digital scanner. The adjusted signature points form a digital signature that is stored for future identification of subject images derived from the image.


The foregoing and other features will be more readily apparent from the following detailed description, which proceeds with reference to the accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a diagram of a computer system used in a preferred embodiment.



FIG. 2 is a sample digital image upon which the FIG. 1 embodiment is employed.



FIG. 3 is a representation of a digital image in the form of an array of pixels with pixel values.



FIG. 4 is graphical representation of pixel values showing relative minima and maxima pixel values.



FIG. 5 is a digital subject image that is compared to the image of FIG. 2 according to a preferred embodiment.





DETAILED DESCRIPTION

The following description details a method and system for embedding a signature into an original image to create a signed image. A preferred embodiment includes selecting a large number of candidate points in the original image and selecting a number of signature points from among the candidate points. The signature points are altered slightly to form the signature. The signature points are stored for later use in auditing a subject image to determine whether the subject image is derived from the signed image.


The signatures are encoded in the visible domain of the image and so become part of the image and cannot be detected or removed without prior knowledge of the signature. A key point is that while the changes manifested by the signature are too slight to be visible to the human eye, they are easily and consistently recognizable by a common digital image scanner, after which the signature is extracted, interpreted and verified by a software algorithm.


In contrast to prior art signature methods used on non-image data, the signatures persist through significant image transformations that preserve the visible image but may completely change the digital data. The specific transforms allowed include resizing the image larger or smaller, rotating the image, uniformly adjusting color, brightness and/or contrast, and limited cropping. Significantly, the signatures persist through the process of printing the image to paper or film and rescanning it into digital form.


Shown in FIG. 1 is a computer system 10 that is used to carry out an illustrative embodiment. The computer system 10 includes a computer 12 having the usual complement of memory and logic circuits, a display monitor 14, a keyboard 16, and a mouse 18 or other pointing device. The computer system also includes a digital scanner 20 that is used to create a digital image representative of an original image such as a photograph or painting. Typically, delicate images, such as paintings, are converted to print or film before being scanned into digital form. In one embodiment a printer 22 is connected to the computer 12 to print digital images output from the processor. In addition, digital images can be output in a data format to a storage medium 23 such as a floppy disk for displaying later at a remote site. Any digital display device may be used, such a common computer printer, X-Y plotter, or a display screen.


An example of the output of the scanner 20 to the computer 12 is a digital image 24 shown in FIG. 2. More accurately, the scanner outputs data representative of the digital image and the computer causes the digital image 24 to be displayed on the display monitor 14. As used herein “digital image” refers to the digital data representative of the digital image, the digital image displayed on the monitor or other display screen, and the digital image printed by the printer 22 or a remote printer.


The digital image 24 is depicted using numerous pixels 24 having various pixel values. In the gray-scale image 24 the pixel values are luminance values representing a brightness level varying from black to white. In a color image the pixels have color values and luminance values, both of which being pixel values. The color values can include the values of any components in a representation of the color by a vector. FIG. 3 shows digital image 24A in the form of an array of pixels 26. Each pixel is associated with one or more pixel values, which in the example shown in FIG. 3 are luminance values from 0 to 15.


The digital image 24 shown in FIG. 2 includes thousands of pixels. The digital image 24A represented in FIG. 3 includes 225 pixels. The techniques detailed herein preferably are used for images having pixels numbering in the millions. Therefore, the description herein is necessarily a simplistic discussion.


According to a preferred embodiment, numerous candidate points are located within the original image. Signature points are selected from among the candidate points and are altered to form a signature. The signature is a pattern of any number of signature points. In a preferred embodiment, the signature is a binary number between 16 and 32 bits in length. The signature points may be anywhere within an image, but are preferably chosen to be as inconspicuous as possible. Preferably, the number of signature points is much greater than the number of bits in a signature. This allows the signature to be redundantly encoded in the image. Using a 16 to 32 bit signature, 50-200 signature points are preferable to obtain multiple signatures for the image.


A preferred embodiment locates candidate points by finding relative maxima and minima, collectively referred to as extrema, in the image. The extrema represent local extremes of luminance or color. FIG. 4 shows what is meant by relative extrema. FIG. 4 is a graphical representation of the pixel values of a small portion of a digital image. The vertical axis of the graph shows pixel values while the horizontal axis shows pixel positions along a single line of the digital image. Small undulations in pixel values, indicated at 32, represent portions of the digital image where only small changes in luminance or color occur between pixels. A relative maximum 34 represents a pixel that has the highest pixel value for a given area of the image. Similarly, a relative minimum 36 represents a pixel that has the lowest pixel value for a given area of the image.


Relative extrema are preferred signature points for two major reasons. First, they are easily located by simple, well known processing. Second, they allow signature points to be encoded very inconspicuously.


One of the simplest methods to determine relative extrema is to use a “Difference of Averages” technique. This technique employs predetermined neighborhoods around each pixel 26; a small neighborhood 28 and a large neighborhood 30, as shown in FIGS. 2 and 3. In the present example the neighborhoods are square for simplicity, but a preferred embodiment employs circular neighborhoods. The technique determines the difference between the average pixel value in the small neighborhood and the average pixel value of the large neighborhood. If the difference is large compared to the difference for surrounding pixels then the first pixel value is a relative maxima or minima.


Using the image of FIG. 3 as an example, the Difference of Averages for the pixel 26A is determines as follows. The pixel values within the 3.times.3 pixel small neighborhood 28A add up to 69; dividing by 9 pixels gives an average of 7.67. The pixel values within the 5.times.5 pixel large neighborhood 30A add up to 219; dividing by 25 pixels gives an average of 8.76 and a Difference of Averages of −1.09. Similarly, the average in small neighborhood 28G is 10.0; the average in large neighborhood 30G is 9.8; the Difference of Averages for pixel 26G is therefore 0.2. Similar computations on pixels 26B-26F produce the following table:





















26A
26B
26C
26D
26E
26F
26G























Small Neighborhood
7.67
10.56
12.89
14.11
13.11
11.56
10.0


Large Neighborhood
8.76
10.56
12.0
12.52
12.52
11.36
9.8


Difference of
−1.09
0.0
0.89
1.59
0.59
0.2
0.2


Averages









Based on pixels 26A-26G, there may be a relative maximum at pixel 26D, whose Difference of Averages of 1.59 is greater than the Difference of Averages for the other examined pixels in the row. To determine whether pixel 26D is a relative maximum rather than merely a small undulation, its Difference of Averages must be compared with the Difference of Averages for the pixels surrounding it in a larger area.


Preferably, extrema within 10% of the image size of any side are not used as signature points. This protects against loss of signature points caused by the practice of cropping the border area of an image. It is also preferable that relative extrema that are randomly and widely spaced are used rather than those that appear in regular patterns.


Using the Difference of Averages technique or other known techniques, a large number of extrema are obtained, the number depending on the pixel density and contrast of the image. Of the total number of extrema found, a preferred embodiment chooses 50 to 200 signature points. This may be done manually by a user choosing with the keyboard 16, mouse 18, or other pointing device each signature point from among the extrema displayed on the display monitor 14. The extrema may be displayed as a digital image with each point chosen by using the mouse or other pointing device to point to a pixel or they may be displayed as a list of coordinates which are chosen by keyboard, mouse, or other pointing device. Alternatively, the computer 12 can be programmed to choose signature points randomly or according to a preprogrammed pattern.


One bit of binary data is encoded in each signature point in the image by adjusting the pixel values at and surrounding the point. The image is modified by making a small, preferably 2%-10% positive or negative adjustment in the pixel value at the exact signature point, to represent a binary zero or one. The pixels surrounding each signature point, in approximately a 5.times.5 to 10.times.10 grid, are preferably adjusted proportionally to ensure a continuous transition to the new value at the signature point. A number of bits are encoded in the signature points to form a pattern which is the signature for the image.


In a preferred embodiment, the signature is a pattern of all of the signature points. When auditing a subject image, if a statistically significant number of potential signature points in the subject image match corresponding signature points in the signed image, then the subject image is deemed to be derived from the signed image. A statistically significant number is somewhat less than 100%, but enough to be reasonably confident that the subject image was derived from the signed image.


In an alternate embodiment, the signature is encoded using a redundant pattern that distributes it among the signature points in a manner that can be reliably retrieved using only a subset of the points. One embodiment simply encodes a predetermined number of exact duplicates of the signature. Other redundant representation methods, such as an error-correcting code, may also be used.


In order to allow future auditing of images to determine whether they match the signed image, the signature is stored in a database in which it is associated with the original image. The signature can be stored by associating the bit value of each signature point together with x-y coordinates of the signature point. The signature may be stored separately or as part of the signed image. The signed image is then distributed in digital form.


As discussed above, the signed image may be transformed and manipulated to form a derived image. The derived image is derived from the signed image by various transformations, such as resizing, rotating, adjusting color, brightness and/or contrast, cropping and converting to print or film. The derivation may take place in multiple steps or processes or may simply be the copying of the signed image directly.


It is assumed that derivations of these images that an owner wishes to track include only applications which substantially preserve the resolution and general quality of the image. While a size reduction by 90%, a significant color alteration or distinct-pixel-value reduction may destroy the signature, they also reduce the image's significance and value such that no auditing is desired.


In order to audit a subject image according to a preferred embodiment, a user identifies the original image of which the subject image is suspected of being a duplicate. For a print or film image, the subject image is scanned to create a digital image file. For a digital image, no scanning is necessary. The subject digital image is normalized using techniques as described below to the same size, and same overall brightness, contrast and color profile as the unmodified original image. The subject image is analyzed by the method described below to extract the signature, if present, and compare it to any signatures stored for that image.


The normalization process involves a sequence of steps to undo transformations previously made to the subject image, to return it as close as possible to the resolution and appearance of the original image. It is assumed that the subject image has been manipulated and transformed as described above. To align the subject image with the original image, a preferred embodiment chooses three or more points from the subject image which correspond to points in the original image. The three or more points of the subject image are aligned with the corresponding points in the original image. The points of the subject image not selected are rotated and resized as necessary to accommodate the alignment of the points selected.


For example, FIG. 5 shows a digital subject image 38 that is smaller than the original image 24 shown in FIG. 2. To resize the subject image, a user points to three points such as the mouth 40B, ear 42B and eye 44B of the subject image using the mouse 18 or other pointer. Since it is usually difficult to accurately point to a single pixel, the computer selects the nearest extrema to the pixel pointed to by the user. The user points to the mouth 40A, ear 42A, and eye 44A of the original image. The computer 12 resizes and rotates the subject image as necessary to ensure that points 40B, 42B, and 44B are positioned with respect to each other in the same way that points 40A, 42A, and 44A are positioned with respect to each other in the original image. The remaining pixels are repositioned in proportion to the repositioning of points 40B, 42B and 44B. By aligning three points the entire subject image is aligned with the original image without having to align each pixel independently.


After the subject image is aligned, the next step is to normalize the brightness, contrast and/or color of the subject image. Normalizing involves adjusting pixel values of the subject image to match the value-distribution profile of the original image. This is accomplished by a technique analogous to that used to align the subject image. A subset of the pixels in the subject image are adjusted to equal corresponding pixels in the original image. The pixels not in the subset are adjusted in proportion to the adjustments made to the pixels in the subset. The pixels of the subject image corresponding to the signature points should not be among the pixels in the subset. Otherwise any signature points in the subject image will be hidden from detection when they are adjusted to equal corresponding pixels in the original image.


In a preferred embodiment, the subset includes the brightest and darkest pixels of the subject image. These pixels are adjusted to have luminance values equal to the luminance values of corresponding pixels in the original image. To ensure that any signature points can be detected, no signature points should be selected during the signature embedding process described above that are among the brightest and darkest pixels of the original image. For example, one could use pixels among the brightest and darkest 3% for the adjusting subset, after selecting signature points among less than the brightest and darkest 5% to ensure that there is no overlap.


When the subject image is fully normalized, it is preferably compared to the original image. One way to compare images is to subtract one image from the other. The result of the subtraction is a digital image that includes any signature points that were present in the subject image. These signature points, if any, are compared to the stored signature points for the signed image. If the signature points do not match, then the subject image is not an image derived from the signed image, unless the subject image was changed substantially from the signed image.


In an alternative embodiment, the normalized subject image is compared directly with the signed image instead of subtracting the subject image from the original image. This comparison involves subtracting the subject image from the signed image. If there is little or no image resulting from the subtraction, then the subject image equals to the signed image, and therefore has been derived from the signed image.


In another alternate embodiment, instead of normalizing the entire subject image, only a section of the subject image surrounding each potential signature point is normalized to be of the same general resolution and appearance as a corresponding section of the original image. This is accomplished by selecting each potential signature point of the subject image and selecting sections surrounding each potential signature point. The normalization of each selected section proceeds according to methods similar to those disclosed above for normalizing the entire subject image.


Normalizing each selected section individually allows each potential signature point of the subject image to be compared directly with a corresponding signature point of the signed image. Preferably, an average is computed for each potential signature point by averaging the pixel value of the potential signature point with the pixel values of a plurality of pixels surrounding the potential signature point. The average computed for each signature is compared directly with a corresponding signature point of the signed image.


While the methods of normalizing and extracting a signature from a subject image as described above are directed to luminance values, similar methods may be used for color values. Instead of or in addition to normalizing by altering luminance values, the color values of the subject image can also be adjusted to equal corresponding color values in an original color image. However, it is not necessary to adjust color values in order to encode a signature in or extract a signature from a color image. Color images use pixels having pixel values that include luminance values and color values. A digital signature can be encoded in any pixel values regardless of whether the pixel values are luminance values, color values, or any other type of pixel values. Luminance values are preferred because alterations may be made more easily to luminance values without the alterations being visible to the human eye.


From the foregoing it will be appreciated that, although specific embodiments of the invention have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. Accordingly, the invention is not limited except as by the appended claims.

Claims
  • 1. A method comprising: selecting data representing a source signal as a point at which a code is embedded;utilizing a processor, changing at least one value associated with the source signal at the point, andwherein an amount of a change introduced by the changing the at least one value varies in dependence on a value associated with the source signal at the point, so that a smaller value is changed less than a larger value, andwherein change to the source signal is made essentially human imperceptible by varying the change in dependence on the value associated with the source signal, with a smaller value being changed less than a larger value.
  • 2. The method of claim 1, wherein the source signal comprises data representing imagery.
  • 3. The method of claim 1, wherein the point comprises a location.
  • 4. The method of claim 1, wherein the value comprises a value associated with one or more pixels.
  • 5. The method of claim 1, wherein selecting further comprises utilizing a predetermined pattern.
  • 6. The method of claim 1, wherein the source signal comprises digital imagery having a plurality of pixels, wherein each pixel has digital image data values associated therewith, and wherein the code comprises N bits, N being at least one,the selecting selects more than N pixels as signature points,for each of the selected signature points, changing of the at least one value comprises changes a digital data value at the signature point by increasing or decreasing the digital image value at the signature point according to a value of a bit of the signature to be mapped at the signature point, andthe amount of the changing is adjusted based on the digital data values at the signature point.
  • 7. The method of claim 6, further comprising storing the code for future identification.
  • 8. The method of claim 6, wherein each pixel has at least a luminance value and a color value associated therewith, wherein changing the at least one value changes a luminance value at each of the signature points, and wherein the signature points are spaced apart from each other.
  • 9. The method of claim 1, wherein the selecting comprises randomly selecting data as the point at which the code is embedded.
  • 10. The method of claim 1, wherein the selecting comprises selecting data as the point at which the code is embedded according to a pattern.
  • 11. The method of claim 1, wherein the source signal comprises data representing a motion picture.
  • 12. A method comprising: evaluating data hiding characteristics of a plurality of portions of a host signal; andembedding, utilizing a processor, an N-bit code in the host signal by avoiding portions of the host signal that have poor data hiding characteristics, which are identified as areas having smaller variations in data associated with luminance or color values than other portions of the host signal, wherein N is greater than 1, and whereinthe code is embedded in data that it is relatively less perceptible to a human observer of the host signal.
  • 13. The method of claim 12, wherein evaluating data hiding comprises determining amounts of variations in luminance or color values of data representing the host signal to determine data hiding characteristics of the host signal, wherein the data hiding characteristics correspond to the amounts of variations.
  • 14. A method comprising: identifying portions of a host signal having a predetermined data hiding attribute including determining amounts of signal or data value variation to identify portions having the predetermined data hiding attribute; andchanging, utilizing a processor, the host signal in at least certain identified portions to embed an N-bit code therein, wherein N is at least one, and whereinthe N-bit code is embedded in the host signal where it is relatively less perceptible to a human observer of the host signal.
  • 15. The method of claim 14, wherein the signal or data variation includes a variation in luminance or color values of the host signal.
  • 16. The method of claim 14, wherein the host signal comprises data representing imagery.
  • 17. The method of claim 16, wherein the imagery comprises data representing a motion picture.
  • 18. The method of claim 14, wherein the predetermined data hiding attribute corresponds to a relationship of portions with larger variations relative to other portions.
  • 19. A method comprising: embedding, utilizing a processor, an N-bit code with a source signal, wherein N is at least one, and wherein the embedding is performed for each bit of the N-bit code;mapping the bit to at least one data value representing the source signal;changing a value of the data value in accordance with the bit of the code, wherein an amount of the changing is adjusted based on the value; andchanging values of at least two additional data values in accordance with the bit;wherein the changing comprise embedding the N-bit code in a manner that is generally imperceptible to a human observer of the source signal.
  • 20. The method of claim 19, wherein changes to the source signal are effected in groups of data values, yielding a more robust embedding of the code in the source signal that better withstands corruption of the source signal with the embedded code.
  • 21. The method of claim 19, wherein the source signal comprises imagery including pixels, and further comprising changing the imagery at plural portions thereof, wherein the change at each portion increases or decreases a value associated with a pixel at each portion, and the changes at pixels adjoining each portion increases or decreases the value associated with each pixel adjoining signature pixels to correspond to the change of the code pixel adjacent thereto.
  • 22. The method of claim 19, wherein the mapping comprises randomly choosing data values in the source signal.
  • 23. The method of claim 19, wherein the mapping comprises choosing data values in the source signal according to a pattern.
  • 24. A method comprising: embedding, utilizing a processor, an N-bit code with a source signal, wherein N is at least one, and wherein the embedding is performed for each bit of the N-bit code;mapping the bit to a portion of the source signal;changing values of at least two data values associated with the portion in accordance with the bit;wherein changing values comprises embedding the N-bit code in a manner that is generally imperceptible to a human observer of the source signal.
  • 25. The method of claim 24, wherein the portion comprises a data value, and the method further comprises changing the value of the data value in accordance with the bit of the code, wherein an amount of the changing is adjusted based on the value.
  • 26. A method comprising: identifying plural points representing imagery;utilizing a processor, increasing the value of each of a first group of said identified points, and also increasing the values of a first group of associated points; andutilizing the processor, decreasing the value of each of a second group of said identified points, and also decreasing the values of a second group of points.
  • 27. The method of claim 26, further comprising pseudorandomly identifying the plural points representing the imagery.
  • 28. The method of claim 26, further comprising identifying the plural points representing the imagery according to a pattern.
  • 29. A device, comprising: a memory; anda processor operatively coupled to the memory and configured to: select data representing a source signal as a point at which a code is embedded; andchange at least one value associated with the source signal at the point,wherein an amount of a change introduced by the changing of the at least one value varies in dependence on a value associated with the source signal at the point, so that a smaller value is changed less than a larger value, and wherein the change to the source signal is made essentially human imperceptible by varying the change in dependence on the value associated with the source signal.
  • 30. A non-transitory computer-readable medium having instructions stored thereon, the instructions comprising: instructions to select data representing a source signal as a point at which a code is embedded; andinstructions to change at least one value associated with the source signal at the point,wherein an amount of a change introduced by the changing of the at least one value varies in dependence on a value associated with the source signal at the point, so that a smaller value is changed less than a larger value, and wherein the change to the source signal is made essentially human imperceptible by varying the change in dependence on the value associated with the source signal.
RELATED APPLICATION DATA

This application is a continuation of application Ser. No. 12/189,530, filed Aug. 11, 2008 (U.S. Pat. No. 7,593,545), which is a continuation of application Ser. No. 11/535,895, filed Sep. 27, 2006 (U.S. Pat. No. 7,412,074), which is a continuation of application Ser. No. 11/074,520, filed Mar. 7, 2005 (U.S. Pat. No. 7,136,503), which is a continuation of application Ser. No. 10/113,398, filed Mar. 27, 2002 (U.S. Pat. No. 7,068,811), which is a continuation of application Ser. No. 09/408,878, filed Sep. 29, 1999 (now abandoned), which is a continuation of application Ser. No. 09/317,784, filed May 24, 1999 (U.S. Pat. No. 6,072,888), which is a continuation of application Ser. No. 09/074,632, filed May 7, 1998 (U.S. Pat. No. 5,930,377), which is a continuation of application Ser. No. 08/969,072, filed Nov. 12, 1997 (U.S. Pat. No. 5,809,160), which is a continuation of application Ser. No. 07/923,841, filed Jul. 31, 1992 (U.S. Pat. No. 5,721,788).

US Referenced Citations (217)
Number Name Date Kind
2630525 Tomberlin et al. Mar 1953 A
3493674 Houghton Feb 1970 A
3562420 Thompson Feb 1971 A
3569619 Simjian Mar 1971 A
3576369 Wick et al. Apr 1971 A
3585290 Sanford Jun 1971 A
3638188 Pincoffs et al. Jan 1972 A
3655162 Shoemaker Apr 1972 A
3703628 Philipson, Jr. Nov 1972 A
3742463 Haselwood et al. Jun 1973 A
3805238 Rothjell Apr 1974 A
3809806 Walker et al. May 1974 A
3810156 Goldman May 1974 A
3838444 Loughlin et al. Sep 1974 A
3845391 Crosby Oct 1974 A
3914877 Hines Oct 1975 A
3919479 Moon et al. Nov 1975 A
3922074 Ikegami et al. Nov 1975 A
3971917 Maddox et al. Jul 1976 A
3977785 Harris Aug 1976 A
3982064 Barnaby Sep 1976 A
3984624 Waggener Oct 1976 A
4025851 Haselwood et al. May 1977 A
4071698 Barger, Jr. et al. Jan 1978 A
4184700 Greenaway Jan 1980 A
4225967 Miwa et al. Sep 1980 A
4230990 Lert, Jr. et al. Oct 1980 A
4231113 Blasbalg Oct 1980 A
4237484 Brown et al. Dec 1980 A
4238849 Gassmann Dec 1980 A
4252995 Schmidt et al. Feb 1981 A
4262329 Bright et al. Apr 1981 A
4310180 Mowry, Jr. et al. Jan 1982 A
4313197 Maxemchuk Jan 1982 A
4367488 Leventer et al. Jan 1983 A
4379947 Warner Apr 1983 A
4380027 Leventer et al. Apr 1983 A
4389671 Posner et al. Jun 1983 A
4395600 Lundy et al. Jul 1983 A
4416001 Ackerman et al. Nov 1983 A
4423415 Goldman Dec 1983 A
4425642 Moses et al. Jan 1984 A
4425661 Moses et al. Jan 1984 A
4450531 Kenyon et al. May 1984 A
4476468 Goldman Oct 1984 A
4488245 Dalke et al. Dec 1984 A
4495620 Steele et al. Jan 1985 A
4528588 Lofberg Jul 1985 A
4532508 Ruell Jul 1985 A
4547804 Greenberg Oct 1985 A
4553261 Froessl Nov 1985 A
4590366 Rothfjell May 1986 A
4595950 Lofberg Jun 1986 A
4637051 Clark Jan 1987 A
4639779 Greenberg Jan 1987 A
4644582 Morishita et al. Feb 1987 A
4647974 Butler et al. Mar 1987 A
4654867 Labedz et al. Mar 1987 A
4660221 Dlugos Apr 1987 A
4663518 Borror et al. May 1987 A
4665431 Cooper May 1987 A
4672605 Hustig et al. Jun 1987 A
4675746 Tetrick et al. Jun 1987 A
4677435 Causse D'Agraives et al. Jun 1987 A
4677466 Lert, Jr. et al. Jun 1987 A
4682794 Margolin Jul 1987 A
4697209 Kiewit et al. Sep 1987 A
4703476 Howard Oct 1987 A
4712103 Gotanda Dec 1987 A
4718106 Weinblatt Jan 1988 A
4739377 Allen Apr 1988 A
4739398 Thomas et al. Apr 1988 A
4750173 Bluthgen Jun 1988 A
4765656 Becker et al. Aug 1988 A
4775901 Nakano Oct 1988 A
4776013 Kafri et al. Oct 1988 A
4805020 Greenberg Feb 1989 A
4807031 Broughton et al. Feb 1989 A
4811357 Betts et al. Mar 1989 A
4811408 Goldman Mar 1989 A
4820912 Samyn Apr 1989 A
4825393 Nishiya Apr 1989 A
4835517 Van der Gracht et al. May 1989 A
4843562 Kenyon et al. Jun 1989 A
4855827 Best Aug 1989 A
4864618 Wright et al. Sep 1989 A
4866771 Bain Sep 1989 A
4874936 Chandler et al. Oct 1989 A
4876617 Best et al. Oct 1989 A
4879747 Leighton et al. Nov 1989 A
4884139 Pommier Nov 1989 A
4885632 Mabey et al. Dec 1989 A
4903301 Kondo et al. Feb 1990 A
4908836 Rushforth et al. Mar 1990 A
4908873 Philibert et al. Mar 1990 A
4918484 Ujiie et al. Apr 1990 A
4920503 Cook Apr 1990 A
4921278 Shiang et al. May 1990 A
4939515 Adelson Jul 1990 A
4941150 Iwasaki Jul 1990 A
4943973 Werner Jul 1990 A
4943976 Ishigaki Jul 1990 A
4944036 Hyatt Jul 1990 A
4945412 Kramer Jul 1990 A
4963998 Maufe Oct 1990 A
4965827 McDonald Oct 1990 A
4967273 Greenberg Oct 1990 A
4969041 O'Grady et al. Nov 1990 A
4972471 Gross et al. Nov 1990 A
4972475 Sant'Anselmo Nov 1990 A
4972476 Nathans Nov 1990 A
4979210 Nagata et al. Dec 1990 A
4993068 Piosenka et al. Feb 1991 A
4996530 Hilton Feb 1991 A
5003590 Lechner et al. Mar 1991 A
5010405 Schreiber et al. Apr 1991 A
5027401 Soltesz Jun 1991 A
5034982 Heninger et al. Jul 1991 A
5036513 Greenblatt Jul 1991 A
5063446 Gibson Nov 1991 A
5067162 Driscoll, Jr. et al. Nov 1991 A
5073899 Collier et al. Dec 1991 A
5073925 Nagata et al. Dec 1991 A
5075773 Pullen et al. Dec 1991 A
5077608 Dubner Dec 1991 A
5077795 Rourke et al. Dec 1991 A
5079648 Maufe Jan 1992 A
5083224 Hoogendoorn et al. Jan 1992 A
5091966 Bloomberg et al. Feb 1992 A
5093867 Hori et al. Mar 1992 A
5095196 Miyata Mar 1992 A
5103459 Gilhousen et al. Apr 1992 A
5113437 Best et al. May 1992 A
5128525 Stearns et al. Jul 1992 A
5134496 Schwab et al. Jul 1992 A
5144660 Rose Sep 1992 A
5146457 Veldhuis et al. Sep 1992 A
5148498 Resnikoff et al. Sep 1992 A
5150409 Elsner Sep 1992 A
5161210 Druyvesteyn et al. Nov 1992 A
5166676 Milheiser Nov 1992 A
5168147 Bloomberg Dec 1992 A
5181786 Hujink Jan 1993 A
5185736 Tyrrell et al. Feb 1993 A
5199081 Saito et al. Mar 1993 A
5200822 Bronfin et al. Apr 1993 A
5212551 Conanan May 1993 A
5213337 Sherman May 1993 A
5228056 Schilling Jul 1993 A
5243423 DeJean et al. Sep 1993 A
5245165 Zhang Sep 1993 A
5245329 Gokcebay Sep 1993 A
5247364 Banker et al. Sep 1993 A
5253078 Balkanski et al. Oct 1993 A
5257119 Funada et al. Oct 1993 A
5259025 Monroe et al. Nov 1993 A
5278400 Appel Jan 1994 A
5293399 Hefti Mar 1994 A
5295203 Krause et al. Mar 1994 A
5305400 Butera Apr 1994 A
5315098 Tow May 1994 A
5319453 Copriviza et al. Jun 1994 A
5319724 Blonstein et al. Jun 1994 A
5319735 Preuss et al. Jun 1994 A
5325167 Melen Jun 1994 A
5327237 Gerdes et al. Jul 1994 A
5337361 Wang et al. Aug 1994 A
5349655 Mann Sep 1994 A
5374976 Spannenburg Dec 1994 A
5387941 Montgomery et al. Feb 1995 A
5394274 Kahn Feb 1995 A
5396559 McGrew Mar 1995 A
5408542 Callahan Apr 1995 A
5410598 Shear Apr 1995 A
5425100 Thomas et al. Jun 1995 A
5436653 Ellis et al. Jul 1995 A
5450122 Keene Sep 1995 A
5453968 Veldhuis et al. Sep 1995 A
5510900 Shirochi et al. Apr 1996 A
5530759 Braudaway et al. Jun 1996 A
5537216 Yamashita et al. Jul 1996 A
5541741 Suzuki Jul 1996 A
5557333 Jungo et al. Sep 1996 A
5559559 Jungo et al. Sep 1996 A
5574962 Fardeau et al. Nov 1996 A
5579124 Aijala et al. Nov 1996 A
5587743 Montgomery et al. Dec 1996 A
5617148 Montgomery Apr 1997 A
5671267 August et al. Sep 1997 A
5689587 Bender et al. Nov 1997 A
5719984 Yamagata et al. Feb 1998 A
5721788 Powell et al. Feb 1998 A
5790932 Komaki et al. Aug 1998 A
5809160 Powell et al. Sep 1998 A
5825892 Braudaway et al. Oct 1998 A
5907443 Hirata May 1999 A
5918223 Blum et al. Jun 1999 A
5930377 Powell et al. Jul 1999 A
6072888 Powell et al. Jun 2000 A
6137892 Powell et al. Oct 2000 A
6166750 Negishi Dec 2000 A
6301369 Powell et al. Oct 2001 B2
6307950 Powell et al. Oct 2001 B1
6317505 Powell et al. Nov 2001 B1
6385330 Powell et al. May 2002 B1
6459803 Powell et al. Oct 2002 B1
6614915 Powell et al. Sep 2003 B2
6628801 Powell et al. Sep 2003 B2
6678392 Powell et al. Jan 2004 B2
7062070 Powell et al. Jun 2006 B2
7068811 Powell et al. Jun 2006 B2
7068812 Powell et al. Jun 2006 B2
7136503 Powell et al. Nov 2006 B2
7280672 Powell et al. Oct 2007 B2
7412074 Powell et al. Aug 2008 B2
7593545 Powell et al. Sep 2009 B2
20020090110 Braudaway et al. Jul 2002 A1
Foreign Referenced Citations (16)
Number Date Country
29 43 436 May 1981 DE
3806414 Sep 1989 DE
058482 Jun 1985 EP
441702 Aug 1991 EP
0 493 091 Jul 1992 EP
372601 Feb 1995 EP
411232 Dec 1995 EP
2063018 May 1981 GB
2067871 Jul 1981 GB
2196167 Apr 1988 GB
2204984 Nov 1988 GB
01-292965 Nov 1989 JP
4-101591 Apr 1992 JP
5-37795 Feb 1993 JP
5-244389 Sep 1993 JP
WO8908915 Sep 1989 WO
Related Publications (1)
Number Date Country
20100220934 A1 Sep 2010 US
Continuations (9)
Number Date Country
Parent 12189530 Aug 2008 US
Child 12564733 US
Parent 11535895 Sep 2006 US
Child 12189530 US
Parent 11074520 Mar 2005 US
Child 11535895 US
Parent 10113398 Mar 2002 US
Child 11074520 US
Parent 09408878 Sep 1999 US
Child 10113398 US
Parent 09317784 May 1999 US
Child 09408878 US
Parent 09074632 May 1998 US
Child 09317784 US
Parent 08969072 Nov 1997 US
Child 09074632 US
Parent 07923841 Jul 1992 US
Child 08969072 US