# Patent

## Title
Encoding in two chrominance directions

## Abstract

The present disclosure relates generally to advanced digital signal processing including digital watermarking. One claim recites an apparatus comprising: memory for storing a color video signal or color image signal comprising first data representing a first chrominance direction and second data representing a second chrominance direction; and a processor programmed for: transforming the first data representing the first chrominance direction by encoding a first digital watermark component in the first data, the encoding a first digital watermark component in the first data utilizing a first encoding gain, and transforming the second data representing the second chrominance direction by encoding a second digital watermark component in the second data, the encoding a digital watermark signal in the second data utilizing a second encoding gain, wherein the second digital watermark component comprises an inverted signal relative to the first digital watermark component. Of course, other claims and combinations are disclosed.

## Background
RELATED APPLICATION DATA
This application is a continuation of U.S. patent application Ser. No. 13/494,849, filed Jun. 12, 2012 (now U.S. Pat. No. 8,660,298), which is a continuation of U.S. patent application Ser. No. 12/634,505, filed Dec. 9, 2009 (now U.S. Pat. No. 8,199,969), which is a continuation-in-part of U.S. patent application Ser. No. 12/337,029, filed Dec. 17, 2008 (published as US 2010-0150434 A1). The above patent documents are each hereby incorporated herein by reference in its entirety.


TECHNICAL FIELD
The present invention relates generally to steganographic data hiding and digital watermarking.
BACKGROUND AND SUMMARY
The term “steganography” generally means data hiding. One form of data hiding is digital watermarking. Digital watermarking is a process for modifying media content to embed a machine-readable (or machine-detectable) signal or code into the media content. For the purposes of this application, the data may be modified such that the embedded code or signal is imperceptible or nearly imperceptible to a user, yet may be detected through an automated detection process. Most commonly, digital watermarking is applied to media content such as images, audio signals, and video signals.
Digital watermarking systems may include two primary components: an embedding component that embeds a watermark in media content, and a reading component that detects and reads an embedded watermark. The embedding component (or “embedder” or “encoder”) may embed a watermark by altering data samples representing the media content in the spatial, temporal or some other domain (e.g., Fourier, Discrete Cosine or Wavelet transform domains). The reading component (or “reader” or “decoder”) analyzes target content to detect whether a watermark is present. In applications where the watermark encodes information (e.g., a message or payload), the reader may extract this information from a detected watermark.
A watermark embedding process may convert a message, signal or payload into a watermark signal. The embedding process then combines the watermark signal with media content and possibly another signals (e.g., an orientation pattern or synchronization signal) to create watermarked media content. The process of combining the watermark signal with the media content may be a linear or non-linear function. The watermark signal may be applied by modulating or altering signal samples in a spatial, temporal or some other transform domain.
A watermark encoder may analyze and selectively adjust media content to give it attributes that correspond to the desired message symbol or symbols to be encoded. There are many signal attributes that may encode a message symbol, such as a positive or negative polarity of signal samples or a set of samples, a given parity (odd or even), a given difference value or polarity of the difference between signal samples (e.g., a difference between selected spatial intensity values or transform coefficients), a given distance value between watermarks, a given phase or phase offset between different watermark components, a modulation of the phase of the host signal, a modulation of frequency coefficients of the host signal, a given frequency pattern, a given quantizer (e.g., in Quantization Index Modulation) etc.
The present assignee's work in steganography, data hiding and digital watermarking is reflected, e.g., in U.S. Pat. Nos. 6,947,571; 6,912,295; 6,891,959. 6,763,123; 6,718,046; 6,614,914; 6,590,996; 6,408,082; 6,122,403 and 5,862,260, and in published specifications WO 9953428 and WO 0007356 (corresponding to U.S. Pat. Nos. 6,449,377 and 6,345,104). Each of these patent documents is hereby incorporated by reference herein in its entirety. Of course, a great many other approaches are familiar to those skilled in the art. The artisan is presumed to be familiar with a full range of literature concerning steganography, data hiding and digital watermarking.
One possible combination of the disclosed technology is a method including: receiving a color image or video; transforming the color image or video signal by separating the color image or video into at least first data representing a first color channel of the color image or video and second data representing a second color channel of the color image or video, where the first data comprises a digital watermark signal embedded therein and the second data comprises the digital watermark signal embedded therein with a signal polarity that is inversely related to the polarity of the digital watermark signal in the first data; subtracting the second data from the first data to yield third data; using at least a processor or electronic processing circuitry, analyzing the third data to detect the digital watermark signal; once detected, providing information associated with the digital watermark signal.
Another combination is a method including: obtaining first data representing a first chrominance channel of a color image or video, where the first data comprises a watermark signal embedded therein; obtaining second data representing a second chrominance channel of the color image or video, the second data comprising the watermark signal embedded therein but with a signal polarity that is inversely related to the polarity of the watermark signal in the first data; combining the second data with the first data in manner that reduces image or video interference relative to the watermark signal, said act of combining yielding third data; using at least a processor or electronic processing circuitry, processing the third data to obtain the watermark signal; once obtained, providing information associated with the watermark signal.
Still another combination is an apparatus comprising: a processor or electronic processing circuitry to control: (a) handling of first data representing a first color channel of a color image or video, where the first data comprises a watermark signal embedded therein; (b) handling of second data representing a second color channel of the color image or video, the second data comprising the watermark signal embedded therein but with a signal polarity that is inversely related to the polarity of the watermark signal in the first data; (c) combining the second data with the first data in manner that reduces image or video interference relative to the watermark signal, the combining yielding third data; (d) processing the third data to obtain the watermark signal; and (e) once obtained, providing information associated with the watermark signal.
Yet another possible combination is a method including: a method including: obtaining first data representing a first chrominance channel of a color image or video signal; obtaining second data representing a second chrominance channel of the color image or video signal; using a processor or electronic processing circuitry, embedding a watermark signal in the first data with a first signal polarity; using a processor or electronic processing circuitry, transforming the second data by embedding the watermark signal in the second data so that when embedded in the second data the watermark signal comprises a second signal polarity that is inversely related to the first signal polarity of the watermark signal in the first data; combining the watermarked first data and the watermarked second data to yield a watermarked version of the color image or video signal, whereby during detection of the watermark signal from the watermarked version of the color image or video signal, the second data is combined with the first data in a manner that reduces image or video signal interference relative to the watermark signal.
Further combinations, aspects, features and advantages will become even more apparent with reference to the following detailed description and accompanying drawing.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 represents a color image.
FIG. 2 represents a first color channel (‘a’ channel) of the color image representation shown in FIG. 1.
FIG. 3 represents a second color channel (‘b’ channel) of the color image representation shown in FIG. 1.
FIG. 4 is a representation of the sum of the first color channel of FIG. 2 and the second color channel of FIG. 3 (e.g., a+b).
FIG. 5 is a graph showing a histogram standard deviation of FIG. 4.
FIG. 6 is a representation of the difference between the first color channel of FIG. 2 and the second color channel of FIG. 3 (a−b).
FIG. 7 is a graph showing a histogram standard deviation of FIG. 6.
FIG. 8 is an image representation of the difference between the first color channel of FIG. 2 (including a watermark signal embedded therein) and the second color channel of FIG. 3 (including the watermark signal embedded therein).
FIG. 9 is a graph showing a histogram standard deviation of FIG. 8.
FIGS. 10a and 10b are block diagrams showing, respectively, an embedding process and a detection process.
FIG. 11 is a diagram showing watermarks embedded in first and second video frames.



DETAILED DESCRIPTION
The following disclosure discusses a digital watermarking technique that utilizes at least two chrominance channels (also called “color planes,” “color channels” and/or “color direction”). Chrominance is generally understood to include information, data or signals representing color components of an image or video. In contrast to a color image or video, a grayscale (monochrome) image or video has a chrominance value of zero.
Media content that includes a color image (or color video) is represented in FIG. 1. An industry standard luminance and chrominance color space is called “Lab” (for Lightness (or luminance), plus ‘a’ and ‘b’ color channels) that can be used to separate components of images and video. FIG. 2 is an ‘a’ channel representation of FIG. 1 (shown in grayscale), and FIG. 3 is a ‘b’ channel representation of FIG. 1 (shown in grayscale). Of course, our inventive methods and apparatus will apply to and work with other color schemes and techniques as well. For example, alternative luminance and chrominance color schemes include “Yuv” (Y=luma, and ‘u’ and ‘v’ represent chrominance channels) and “Ycc.” (also a dual chrominance space representation).
Let's first discuss the additive and subtractive effects on FIGS. 2 and 3. FIG. 4 illustrates a representation of the result of adding the ‘a’ channel (FIG. 2) with the ‘b’ channel (FIG. 3). FIG. 6 illustrates a representation of the result of subtracting the ‘b’ channel (FIG. 3) from the ‘a’ channel (FIG. 2). The result of subtracting the ‘b’ channel from the ‘a’ channel yields reduced image content relative to adding the two channels since the ‘a’ and ‘b’ color planes have correlated image data in the Lab scheme. (In typical natural imagery, the ‘a’ and ‘b’ chrominance channels tend to be correlated. That is to say where ‘a’ increases, ‘b’ also tends to increase. One measure of this is to measure the histogram of the two chrominance planes when they are added (see FIG. 5), and compare that to the histogram when the two color planes are subtracted (see FIG. 7). The fact that the standard deviation of FIG. 7 is about half that of FIG. 5 also supports this conclusion, and illustrates the reduction in image content when ‘b’ is subtracted from ‘a’) In this regard, FIG. 4 provides enhanced or emphasized image content due to the correlation. Said another way, the subtraction of the FIG. 3 image from FIG. 2 image provides less image interference or reduces image content. The histogram representations of FIG. 4 and FIG. 6 (shown in FIGS. 5 and 7, respectively) further support this conclusion.
Now let's consider watermarking in the context of FIGS. 2 and 3.
In a case where a media signal includes (or may be broken into) at least two chrominance channels, a watermark embedder may insert digital watermarking in both the ‘a’ color direction (FIG. 2) and ‘b’ color direction (FIG. 3). This embedding can be preformed in parallel (if using two or more encoders) or serial (if using one encoder). The watermark embedder may vary the gain (or signal strength) of the watermark signal in the ‘a’ and ‘b’ channel to achieve improved hiding of the watermark signal. For example, the ‘a’ channel may have a watermark signal embedded with signal strength that greater or less than the watermark signal in the ‘b’ channel. Alternatively, the watermark signal may be embedded with the same strength in both the ‘a’ and ‘b’ channels. Regardless of the watermark embedding strength, watermark signal polarity is preferably inverted in the ‘b’ color plane relative to the ‘a’ color plane. The inverted signal polarity is represented by a minus (“−”) sign in equations 1 and 2.

WMa=a(channel)+wm  (1)

WMb=b(channel)−wm  (2)

WMa is a watermarked ‘a’ channel, WMb is a watermarked ‘b’ channel, and wm represents a watermark signal. A watermarked color image (including L and WMb and WMa) can be provided, e.g., for printing, digital transfer or viewing.
An embedded color image is obtained (from optical scan data, memory, transmission channel, etc.), and data representing the color image is communicated to a watermark detector for analysis. The detector (or a process, processor or electronic processing circuitry used in conjunction with the detector) subtracts WMb from WMa resulting in WMres as shown below:

WMres=WMa−WMb  (3)

WMres=(a+wm)−(b−wm)  (4)

WMres=(a−b)+2*wm  (5)

This subtraction operation yields reduced image content (e.g., FIG. 6) as discussed above. The subtraction or inverting operation of the color channels also emphasizes or increases the watermark signal (2*wm), producing a stronger watermark signal for watermark detection. Indeed, subtracting the color channels increases the watermark signal-to-media content ratio: WMres=(a−b)+2*wm.
FIG. 8 illustrates the result of equation 5 (with respect to watermarked versions of FIG. 2 and FIG. 3). As shown, the perceptual “graininess” or “noise” in the image corresponds to the emphasized watermark signal. The image content is also reduced in FIG. 8. A histogram representation of FIG. 8 is shown in FIG. 9 and illustrates a favorable reduction of image content.
A watermark detector may extract or utilize characteristics associated with a synchronization signal (if present) from a frequency domain representation of WMres. The detector may then use this synchronization signal to resolve scale, orientation, and origin of the watermark signal. The detector may then detect the watermark signal and obtain any message or payload carried thereby.
To even further illustrate the effects of improving the watermark signal-to-media content ratio with our inventive processes and systems, we provide some additive and subtractive examples in the content of watermarking.
For the following example, a watermark signal with the same polarity is embedded in each of the ‘a’ color channel and the ‘b’ color channel. The same signal polarity is represented by a plus (“+”) sign in equations 6 and 7.

WMa=a+wm  (6)

WMb=b+wm  (7)

WMa is a watermarked ‘a’ channel, WMb is a watermarked ‘b’ channel, and wm represents a watermark signal. A watermarked color image (including L and WMb and WMa) can be provided, e.g., for printing, digital transfer or viewing.
An embedded color image is obtained, and data representing the color image is communicated to a watermarked detector for analysis. The detector (or a process, processor, or electronic processing circuitry used in conjunction with the detector) adds the ‘a’ and ‘b’ color channels to one another (resulting in WMres) as shown below:

WMres=WMa+WMb  (8)

WMres=(a+wm)+(b+wm)  (9)

WMres=(a+b)+2*wm  (10)

This addition operation results in increased image content (e.g., FIG. 4). Indeed, image interference during watermark detection will be greater since the two correlated ‘a’ and ‘b’ color channels tend to reinforce each other.
By way of further example, if WMb is subtracted from WMa (with watermark signals having the same polarity), the following results:

WMres=WMa−WMb  (11)

WMres=(a+wm)−(b+wm)  (12)

WMres=(a−b)+≈0*wm  (13)

A subtraction or inverting operation in a case where a watermark signal includes the same polarity decreases image content (e.g., FIG. 4), but also significantly decreases the watermark signal. This may result in poor—if any—watermark detection.
FIGS. 10a and 10b are flow diagrams illustrating some related processes and methods. These processes may be carried out, e.g., via a computer processor, electronic processing circuitry, printer, handheld device such as a smart cell phone, etc.
With reference to FIG. 10a, a color image (or video) is obtained and separated into at least two (2) color channels or planes (10). A watermark signal is determined for the color image or video (12). Of course, the watermark signal for the color image or video may be determined prior to or after color plane separation. The determined watermark signal is embedded in a first of the color planes (14). An inverse polarity version of the watermark signal is embedded in a second color plane. The color planes are recombined (perhaps with data representing luminance) to form a composite color image.
With reference to FIG. 10b, a watermarked color image or video is obtained or received (11). The color image (or video) has or can be separated into at least two (2) color planes or channels (13). A first color plane includes a watermark signal embedded therein. A second color plane includes the watermark signal embedded therein with a polarity that is inversely related to the watermark signal in the first color plane. The watermarked second color plane is subtracted from the watermarked first color (15). The result of the subtraction is analyzed to detect the watermark signal. A detected watermark message, signal or payload can be provided (19), e.g., to a remote database to obtain related metadata or information, to a local processor, for display, to a rights management system, to facilitate an online transaction, etc.
In addition to the Lab color scheme discussed above, a watermark signal may be embedded in color image (or video) data represented by RGB, Yuv, Ycc, CMYK or other color schemes, with, e.g., a watermark signal inserted in a first chrominance direction (e.g., red/green direction, similar to that discussed above for the ‘a’ channel) and a second chrominance direction (e.g., a blue/yellow direction, similar to that discussed above for the ‘b’ channel). For watermark signal detection with an alterative color space, e.g., an RGB or CMYK color space, an image can be converted to Lab (or other color space), or appropriate weights of, e.g., RGB or CMY channels, can be used. For example, the following RGB weights may be used to calculate ‘a’−‘b’: Chrominance Difference=0.35*R−1.05*G+0.70*B+128, where R, G and B are 8-bit integers.
Further Considerations of Video
The human contrast sensitivity function curve shape with temporal frequency (e.g., relative to time) has a very similar shape to the contrast sensitivity with spatial frequency.
Successive frames in a video are typically cycled at about at least 60 Hz to avoid objectionable visual flicker. So-called “flicker” is due to the high sensitivity of the human visual system (HVS) to high temporal frequency changes in luminance. The human eye is about ten (10) times less sensitive to high temporal frequency chrominance changes.
Consider a video sequence with frames as shown in FIG. 11. A chrominance watermark can be added to frame 1 per the above description for images. In a similar way, a watermark is added to frame 2 but the polarity is inverted as shown in FIG. 11.
In order to recover the watermark, pairs of frames are processed by a watermark detector, and the ‘a’ channels are subtracted from each other as shown below.

Det—a=(a1+wm)−(a2−wm)=(a1−a2)+2*wm  (14)

Det_a refers to watermark detection processing of the ‘a’ channel. Because of the temporal correlation between frames, the image content in equation 14 is reduced while the watermark signal is reinforced.
In a similar way the ‘b’ channels are also subtracted from each other

Det—b=(b1−wm)−(b2+wm)=(b1−b2)−2*wm  (15)

Det_a refers to watermark detection processing of the ‘b’ channel. Equation 14 and 15 are then subtracted from each other as shown below in equation 16.




  
    
      
        
          
            
              
                Det_a
                -
                Det_b
              
              =
              
              ⁢
              
                
                  (
                  
                    
                      a
                      ⁢
                      
                        
                      
                      ⁢
                      1
                    
                    -
                    
                      a
                      ⁢
                      
                        
                      
                      ⁢
                      2
                    
                    +
                    
                      2
                      *
                      wm
                    
                  
                  )
                
                -
                
                  (
                  
                    
                      b
                      ⁢
                      
                        
                      
                      ⁢
                      1
                    
                    -
                    
                      b
                      ⁢
                      
                        
                      
                      ⁢
                      2
                    
                    -
                    
                      2
                      *
                      wm
                    
                  
                  )
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                
                  (
                  
                    
                      a
                      ⁢
                      
                        
                      
                      ⁢
                      1
                    
                    -
                    
                      a
                      ⁢
                      
                        
                      
                      ⁢
                      2
                    
                  
                  )
                
                -
                
                  (
                  
                    
                      b
                      ⁢
                      
                        
                      
                      ⁢
                      1
                    
                    -
                    
                      b
                      ⁢
                      
                        
                      
                      ⁢
                      2
                    
                  
                  )
                
                +
                
                  4
                  *
                  wm
                
              
            
          
        
      
    
    
      
        (
        16
        )
      
    
  




In generally, related (but not necessarily immediately adjacent) frames will have spatially correlated content. Because of the spatial correlation between the ‘a’ and ‘b’ frames, the image content is reduced while the watermark signal is reinforced. See equation 16.
For any one pair of frames selected by a watermark detector, the polarity of the watermark could be either positive or negative. To allow for this, the watermark detector may examine both polarities.
Concluding Remarks
Having described and illustrated the principles of the technology with reference to specific implementations, it will be recognized that the technology can be implemented in many other, different, forms. To provide a comprehensive disclosure without unduly lengthening the specification, applicant hereby incorporates by reference each of the above referenced patent documents in its entirety.
The methods, processes, components, apparatus and systems described above may be implemented in hardware, software or a combination of hardware and software. For example, the watermark encoding processes and embedders may be implemented in software, firmware, hardware, combinations of software, firmware and hardware, a programmable computer, electronic processing circuitry, and/or by executing software or instructions with a processor or circuitry. Similarly, watermark data decoding or decoders may be implemented in software, firmware, hardware, combinations of software, firmware and hardware, a programmable computer, electronic processing circuitry, and/or by executing software or instructions with a processor, parallel processors or other multi-processor configurations.
The methods and processes described above (e.g., watermark embedders and detectors) also may be implemented in software programs (e.g., written in C, C++, Visual Basic, Java, Python, Tcl, Perl, Scheme, Ruby, executable binary files, etc.) stored in memory (e.g., a computer readable medium, such as an electronic, optical or magnetic storage device) and executed by a processor (or electronic processing circuitry, hardware, digital circuit, etc.).
While one embodiment discusses inverting the polarity in a second color channel (e.g., a ‘b’ channel), one could also invert the polarity in the first color channel (e.g., an ‘a’ channel) instead. In such a case, the first color channel is then preferably subtracted from the second color channel.
The particular combinations of elements and features in the above-detailed embodiments are exemplary only; the interchanging and substitution of these teachings with other teachings in this and the incorporated-by-reference patents are also contemplated.

## Claims

1. An apparatus comprising:
memory for storing a color video signal comprising first data and second data;
a processor programmed for:
transforming first color direction information and second color direction information of the first data by encoding a signal in the first color direction information such that the signal includes a first signal polarity, and encoding the signal in the second color direction information such that signal includes a second signal polarity that is inversely related to the first signal polarity,
transforming first color direction information and second color direction information of the second data by encoding the signal in the first color direction information such that signal includes the second signal polarity, and encoding the signal in the second color direction information such that the signal includes the first signal polarity.

2. The apparatus of claim 1 in which encoding the signal utilizes digital watermark embedding.

3. The apparatus of claim 1 in which the signal—once encoded in the first data and in the second data—is obscured to a human observer as the color video signal is rendered in real time.

4. The apparatus of claim 1 in which the first data comprises a first video frame and the second data comprise a second video frame.

5. The apparatus of claim 4 in which the first frame and the second frame are not adjacent frames.

6. An apparatus comprising:
memory for storing a color video signal or color image signal comprising first data representing a first chrominance direction and second data representing a second chrominance direction; and
a processor programmed for:
transforming the first data representing the first chrominance direction by encoding a first digital watermark component in the first data, the encoding a first digital watermark component in the first data utilizing a first encoding gain, and
transforming the second data representing the second chrominance direction by encoding a second digital watermark component in the second data, the encoding a digital watermark signal in the second data utilizing a second encoding gain, wherein the second digital watermark component comprises an inverted signal relative to the first digital watermark component.

7. The apparatus of claim 6 in which the first chrominance direction comprises a blue-yellow direction.

8. The apparatus of claim 7 in which the second chrominance direction comprises a red-green direction.

9. The apparatus of claim 6 in which the first encoding gain is different than the second encoding gain.

10. The apparatus of claim 6 in which the first data and the second data collectively represented through variously weighted Red, Green and Blue values.

11. An apparatus comprising:
memory for storing a color video signal or color image signal comprising first data representing a first chrominance direction and second data representing a second chrominance direction;
means for transforming the first data representing the first chrominance direction by encoding a first digital watermark component in the first data, the encoding a first digital watermark component in the first data utilizing a first encoding gain; and
means for transforming the second data representing the second chrominance direction by encoding a second digital watermark component in the second data, the encoding a digital watermark signal in the second data utilizing a second encoding gain, wherein the second digital watermark component comprises an inverted signal relative to the first digital watermark component.

12. The apparatus of claim 11 in which the first chrominance direction comprises a blue-yellow direction.

13. The apparatus of claim 12 in which the second chrominance direction comprises a red-green direction.

14. The apparatus of claim 11 in which the first encoding gain is different than the second encoding gain.

15. The apparatus of claim 11 in which the first data and the second data collectively represented through variously weighted Red, Green and Blue values.