The teachings of the present invention can be readily understood by considering the following detailed description in conjunction with the accompanying drawings, in which:
To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures.
In one embodiment the present invention is a method and apparatus for automatically directing the adjustment of home theater display settings in substantially real time. Embodiments of a measurement and computation system according to the invention use a perceptual scale to guide a user in adjusting the home theater display settings. In the cases of “brightness” and “contrast”, the perceptual scale is luminance linearized in units of just-noticeable differences (JNDs). In the cases of “color” and “tint”, the perceptual scale is luminance in any scale, where the spectral sensitivity is simulated in a multi-filter calorimeter to approximate the International Commission on Illumination (CIE) luminance spectral sensitivity times the transmittance of a blue filter. Luminance can be assessed in any scale for “color” and “tint”, because the user is asked to balance the luminance of two colors, and any scale (monotonic function of luminance) can be used to effect this equality. In the case of “brightness” and “contrast”, the luminance scale matters because the user is asked to pronounce a difference rather than an equality.
More specifically, embodiments of the invention, when used in conjunction with a calorimeter, store calibration coefficients that enable a calibrator to guide a user in optimally adjusting five settings on a home-theater display (e.g., a television, a computer monitor or the like): “color temperature”, “brightness”, “contrast”, “color”, and “tint”. In one embodiment, the “color-temperature” adjustment involves measuring several settings with the calorimeter, and then choosing the setting that measures closest to the D65 standard illuminant (or white point) defined by the CIE. In further embodiments, adjustment of other settings involves more algorithmic subtlety.
In one embodiment, the methods according to the present invention assume the following:
By binary search, the “brightness” setting b is chosen in one embodiment so that black luminance at b is approximately 0.9 just-noticeable differences (JND) greater than black luminance at the minimum “brightness” setting. Similar search ensures that white luminance at the chosen “contrast” setting c is in one embodiment approximately 6 JNDs less than the white luminance at the maximum “contrast” setting. One embodiment of the method 100 uses a mapping between luminance and number of JNDs, as described in further detail below.
One method for directing the adjustment of the “brightness” setting of a home theater according to the present invention uses the function j(L), i.e., the Digital Imaging and Communications in Medicine (DICOM) number of just-noticeable differences (JNDs) as a function of luminance (cd/m2). This function is defined in further detail below.
The method 100 thus is initialized at step 102 and proceeds to step 104, where the method 100 computes a target or baseline JND value, jB=j(Lmin)+x, where x is a predefined number of JNDs that L(0,b) should be above Lmin=L(0,bmin) in cd/m2. That is, the target JND value is the estimated value of luminance at which further increase of the “brightness” setting will produce a noticeable difference in the black level of the home theater display. In one embodiment, x is empirically determined to be approximately 0.9. Although the remainder of the discussion of the method 100 assumes that x=0.9, it will be appreciated that this is an exemplary value only, and that other values for x may also be used without deviating from the spirit of the present invention.
In step 106, the method 100 prompts the user to measure the luminance of 0-digital-level black at the minimum and maximum “brightness” settings bmin and bmax, respectively, and then computes the corresponding JND values j(L(0, bmin) and j(L(0, bmax)) for each of the received luminance values. The idea in step 106 is to make as few measurements as possible; thus, in one embodiment, a maximum of two measurements (i.e., the minimum and maximum settings bmin and bmax) is made.
In step 108, the method 100 sets bm=bmin and bp=bmax. The method 100 then proceeds to step 109 and sets an intermediate “brightness” setting, bint, where bint=(bm+bp)/2 (i.e., such that bint is approximately halfway between bm and bp. Thus, in the current example, bint=50.
In step 110, the method 100 directs the user to set the “brightness” setting b=bint and to measure L(0,b). The method 100 then proceeds to step 112 and determines whether j(L(0,b)) is within 0.45 JND (i.e., half of x JND) of the target JND value jB. If the method 100 concludes in step 112 that j(L(0,b)) is within 0.45 JND of the target JND value jB, the method 100 proceeds to step 114 and directs the user to adopt the current value of the “brightness” setting b before terminating in step 126.
Alternatively, if the method 100 concludes in step 112 that j(L(0,b)) is not within 0.45 JND of the target JND value jB, the method 100 proceeds to step 116 and determines whether j(L(0,b))<jB. If the method 100 concludes in step 116 that j(L(0,b))<jB, the method 100 proceeds to step 118 and resets bm=bint and Δb=bp−bint. If, however, the method 100 concludes in step 116 that j(L(0,b))>jB, the method 100 proceeds to step 120 and resets bp=bint and Δb=bint−bm.
Once bm or bp and Δb have been reset in accordance with either of steps 118 and 120, the method 100 proceeds to step 122 and determines whether Δb≦1. If the method 100 concludes in step 122 that Δb≦1, the method 100 proceeds to step 114 and directs the user to adopt the current value of the “brightness” setting b before terminating in step 126.
Alternatively, if the method 100 concludes in step 122 that Δb>1, the method 100 returns to step 109 and proceeds as described above to reset bint using the current values for bm and bp.
In one embodiment, where the home theater display to be calibrated has a minimum-“brightness” setting bmin that produces a non-minimum luminance L(0,bmin), the method 100 is re-initialized whenever a new minimum luminance is measured.
The method 200 thus is initialized at step 202 and proceeds to step 204, where the method 200 computes a target JND value, jW=j(Lmax)−y, where y is a predefined number of JNDs that L(255,c) should be below Lmax=L(255,cmax) in cd/m2. That is, the target JND value is the estimated value of luminance at which further decrease of the “contrast” setting will produce a noticeable difference in the white level of the home theater display. In one embodiment, y is empirically determined to be approximately 6. Although the remainder of the discussion of the method 200 assumes that y=6, it will be appreciated that this is an exemplary value only, and that other values for y may also be used without deviating from the spirit of the present invention.
In step 206, the method 200 prompts the user to measure the luminance of maximum (e.g., 255)-digital-level white at the minimum and maximum “contrast” settings cmin and cmax, respectively, and then computes the corresponding JND values j(L(0, cmin) and j(L(0, cmax)) for each of the received luminance values. The idea in step 206 is to make as few measurements as possible; thus, in one embodiment, a maximum of two measurements (i.e., the minimum and maximum settings cmin and cmax) is made.
In step 208, the method 200 sets cm=cmin and cp=cmax. The method 200 then proceeds to step 209 and sets an intermediate “contrast” setting, cint, where cint=(cm+cp)/2 (i.e., such that cint is approximately halfway between cm and cp. Thus, in the current example, cint=50.
In step 210, the method 200 directs the user to set the “contrast” setting c=cint and to measure L(255,c). The method 200 then proceeds to step 212 and determines whether j(L(255,c)) is within 3 JND (i.e., half of y JND) of the target JND value jW. If the method 200 concludes in step 212 that j(L(255,c)) is within 3 JND of the target JND value jW, the method 200 proceeds to step 214 and directs the user to adopt the current value of the “contrast” setting c before terminating in step 226.
Alternatively, if the method 200 concludes in step 212 that j(L(255,c)) is not within 3 JND of the target JND value jW, the method 200 proceeds to step 216 and determines whether j(L(255,c))>jW. If the method 200 concludes in step 216 that j(L(0,b))<jB, the method 200 proceeds to step 218 and resets bm=bint and Δb=bp−bint. If, however, the method 200 concludes in step 216 that j(L(255,c))<jW, the method 200 proceeds to step 220 and resets cp=cint and ΔC=cint−cm.
Once cm or cp and Δc have been reset in accordance with either of steps 218 and 220, the method 200 proceeds to step 222 and determines whether Δc≦1. If the method 200 concludes in step 222 that Δc≦1, the method 200 proceeds to step 214 and directs the user to adopt the current value of the “contrast” setting c before terminating in step 226.
Alternatively, if the method 200 concludes in step 222 that Δc>1, the method 200 returns to step 209 and proceeds as described above to reset cint using the current values for cm and cp.
In one embodiment, where the home theater display to be calibrated has a maximum-“contrast” setting cmax that produces a non-maximum luminance L(255,cmax), the method 200 is re-initialized whenever a new maximum luminance is measured.
In one embodiment, the DICOM grayscale function (e.g., as described in “Digital Imaging and Communications in Medicine (DICOM) 4: Grayscale Standard Display Function”, National Electrical Manufacturers Association (NEMA) Standard PS 3.14-1999, which is herein incorporated by reference) is used to generate the target luminances jB and jW defined above for the black and white adjustments through brightness and contrast (i.e., as discussed with reference to
The function (implemented in double precision) is given by:
j(L)=A+B·Log10(L)+C·(Log10(L))2+D·(Log10(L))3+E·(Log10(L))4+F·(Log10(L))5+G·(Log10(L))6+H·(Log10(L))7+I·(Log10(L))8 (EQN. 1)
where A=71.498068, B=94.593053, C=41.912053, D=9.8247004, E=0.28175407, F=−1.1878455, G=−0.18014349, H=0.14710899, I=−0.017046845.
For very low-luminance readings (e.g., less than 0.05 cd/m2), the DICOM JND-versus-luminance function j(L) is extrapolated following some known facts about human vision.
For example, in one embodiment, define L[1]=0.04999 and L[2]=0.05469, both in cd/m2 (using these numbers avoids any evaluation of the L[j] function to which the j(L) function is an inverse). Further, define B=0.5 L[1]/(L[2]−L[1])−1 and A=L[1]/(1+B)0.5. For L<0.0499, j(L)=(L/A)2−B. Here, A and B are chosen so that the value and slope of the extrapolated function match the main DICOM function at L=0.499, j=1.
This low-luminance square-root law j−1(L) is like the DeVries-Rose law in vision science (see, e.g., G. Wyszecki and W. S. Stiles, Color Science, 2nd ed. Wiley, 1982, p. 647, which is herein incorporated by reference). Two qualitative features render this choice empirically attractive: (1) the interval between 0.046 and 0.049 cd/m̂2 corresponds to 0.6 JND; and (2) the interval between 0.01 and 0.03 cd/m̂2 corresponds to 1.7 JND. This approximately agrees with observed values for setting plasma and cathode ray tube (CRT) home theater displays.
The methods of
To allow more control on the stopping criterion for the method 100 or the method 200 (e.g., for future home theater displays) the methods 100 and 200 may be modified as follows. The method 100 or 200 will interpolate between existing measurements to retrieve the desired b “(brightness”, as in the case of the method 100) and c (“contrast”, as in the case of the method 200) values. The interpolation takes over, for example, in steps 118 and/or 120 of the method 100, or in steps 218 and/or 220 of the method 200.
In the case of the method 100 (i.e., “brightness” setting), step 118 assigns the new bint=bint′ and L(0, bint′)=Lint′, while step 120 assigns the new bint=bint″ and L(0, bint″)=Lint″. bint is then computed as an interpolated value (rounded to the nearest integer): bint=bint″+(bint″−bint′)(LB−Lint′)/(Lint″−Lint′). Thus, the new bint values calculated in steps 118 and 120 are interpolated. One embodiment of a method for calculating LB is discussed in greater detail below.
In the case of the method 200 (i.e., “contrast” setting), step 218 assigns the new cint=cint′ and L(255, cint′)=Lint′, while step 220 assigns the new cint=cint″ and L(255, cint″)=Lint″. cint is then computed as an interpolated value (rounded to nearest integer): cint is then computed as =cint′+(cint″−cint′)(LW−cint′)/(cint″−cint′). Thus, the new cint values calculated in steps 218 and 220 are interpolated. One embodiment of a method for calculating LW is discussed in greater detail below.
Before one can perform these interpolations, one must compute LB from jB and LW from jW. In one embodiment, this computation is performed by implementing (in double precision) the forward DICOM transformation L[j] from JND values to luminance (cd/m2):
where ln and Log10 are respectively the natural logarithm and the base-10 logarithm, j the JND index (1 of 1023) of the Luminance levels Lj of the JNDs, and a=−1.3011877, b=−2.5840191E−2, c=8.0242636E−2, d=−1.0320229E−1, e=1.3646699E−1, f=2.8745620E−2, g=−2.5468404E−2, h=−3.1978977E−3, k=1.2992634E−4, m=1.3635334E−3. It is noted that in the case of EQN. 2, the variables b and c represent parameter values, and not “brightness” and “contrast” settings, as respectively used elsewhere herein.
On some home theater displays, a “contrast” slider changes the screen-white chromaticity. To deal with this change, one can forbid a “contrast” setting for which the screen chromaticity (u′, v′) deviates more than 0.01 from the screen white (uo′,vo′) attained at the center of the “contrast”-slider scale. The criterion is Δ(u′,v′)=0.01, where u′=4x/(−2x+12y+3), v′=9y/(−2x+12y+3), and Δ(u′v′)=[(u′−uo′)2+(v′−vo′)2]0.5 and x and y are CIE chromaticity coordinates, as derived from CIE 1931 XYZ values according to x=X/(X+Y+Z), y=Y/(X+Y+Z). Thus, (u′, v′) may be referred to as the CIE uniform-chromaticity coordinates, because relative to CIE chromaticity coordinates (x, y), (u′, v′) represents equal distances as closer to equal perceptual differences. If a “contrast” setting fails this test, the binary search explores no setting that is farther than the center value.
In further embodiments, the present invention provides a method and apparatus for automatically directing the adjustment of the “color” and “tint” settings of a home theater display. In one embodiment, directing the adjustment of the “color” and “tint” settings is facilitated by simulating the action of a blue-filtered luminance through a linear combination of the seven colorimeter channel outputs, each channel's spectral sensitivity being its filter transmittance multiplied by the detector sensitivity. In one embodiment, the linear combination is chosen to be a least-square best fit (over wavelength λ) to the CIE Y function times the spectral transmission of a Tokyo Blue filter, such as that commercially available from Lee Filters of Burbank, Calif. In the colorimeter's usual mode, Level-1 calibration finds the linear combinations of the seven filter-detector functions that least-square matches the X, Y, and Z color-matching functions. In accordance with the present invention, instead of CIE color-matching functions X(λ), Y(λ), or Z(λ), the function matched is Y(λ) T(λ), where T(λ) is the Tokyo-Blue filter transmittance.
For the purposes of the method 300, to calibrate the “color” and “tint” controls on a display, a colorimeter is used with n input filters. In one embodiment, n=7 filters with transmission spectra fi(λ) overlay detectors with sensitivity d(λ). Prior to measuring any display, the calorimeter is calibrated to simulate luminance measurements through a Tokyo Blue filter. The calibration task is then to find the coefficients ki that produce the least-square best fit of
where “λmin” and “λmax” are limiting nanometer values and signal the consideration of all visible wavelengths λ. In one embodiment, λmin=400 and λmax=700.
Referring back to
For the purposes of the method 300, full-on blue display color is denoted as B, and full-on white display color is denoted as W. Either of these display colors is shown with a given “color” setting C. For any “color” setting C (from a minimum setting Cmin to a maximum setting Cmax), the respective B- and W-screen measurements of simulated luminance through the simulated blue filter is denoted as L(C,B) and L(C,W). The goal, then, is to, while making a minimum number of measurements, find the “color” setting C for which the difference D(C) (where D(C)=L(C,B)−L(C,W)) is approximately zero. If such a setting C does not exist, the goal is to find the condition for which the absolute difference |D(C)| is minimized. It is unknown whether D(C) is increasing or decreasing in the setting C, but it is known that D(C) is monotonic (i.e., has no extrema).
Accordingly, for the “color” control, the method 300 is initialized at step 302 and proceeds to step 304, where the method 300 prompts the user to measure the luminance of the blue and white screens at the extreme “color” settings (i.e., Cmin and Cmax). Thus, the user measures L(Cmin, W), L(Cmin, B), L(Cmax, W) and L(Cmax, B).
In step 306, the method 300 receives the requested measurements from the user. The method 300 then proceeds to step 308 and computes the differences D(Cmin)=L(Cmin,B)−L(Cmin,W) and D(Cmax)=L(Cmax,B)−L(Cmax,W), for each of the extreme “color” settings.
In step 310, the method 300 determines whether D(Cmin) is approximately equal to zero. If the method 300 concludes in step 310 that D(Cmin) is approximately equal to zero, the method 300 proceeds to step 312 and directs the user to set the “color” setting C to Cmin. The method 300 directs the user to adopt the current value of C (i.e., Cmin) for the “color” setting in step 330 before terminating in step 340.
Alternatively, if the method 300 concludes in step 310 that D(Cmin) is not approximately equal to zero, the method 300 proceeds to step 314 and determines whether D(Cmax) is approximately equal to zero. If the method 300 concludes in step 314 that D(Cmax) is approximately equal to zero, the method 300 proceeds to step 316 and directs the user to set the “color” setting C to Cmax. The method 300 directs the user to adopt the current value of C (i.e., Cmax) for the “color” setting in step 330 before terminating in step 340.
Alternatively, if the method 300 concludes in step 314 that D(Cmax) is not approximately equal to zero, the method 300 proceeds to step 318 and determines whether the product D(Cmin)*D(Cmax) is greater than zero. If the method 300 concludes in step 318 that D(Cmin)*D(Cmax) is greater than zero, the method 300 proceeds to step 320 and determines whether |D(Cmin)| is less than |D(Cmax)|. If the method 300 concludes in step 320 that |D(Cmin)| is less than |D(Cmax)|, the method 300 advances to step 312 and directs the user to set the “color” setting C to Cmin before proceeding as described above.
Alternatively, if the method 300 concludes in step 320 that |D(Cmin)| is not less than |D(Cmax)|, the method 300 advances to step 316 and directs the user to set the “color” setting C to Cmax before proceeding as described above.
Referring back to step 318, if the method 300 concludes that D(Cmin)* D(Cmax) is not greater than zero, the method 300 proceeds to step 322 and sets Cm=Cmin and Cp=Cmax. In step 324, the method 300 estimates the “color” setting C for equality. In one embodiment, the “color” setting C is estimated using iterated interpolation as:
C=(aCp−Cm)/(a−1) (EQN. 4)
where a=D(Cm)/D(Cp) (EQN. 5)
In step 326, the method 300 directs the user to set the “color” setting to C and computes D(C). The method 300 then proceeds to step 328 and determines whether D(C) is approximately equal to zero. If the method 300 concludes in step 328 that D(C) is approximately equal to zero, the method 300 proceeds to step 330 and directs the user to adopt the current value of C (i.e., interpolated C) as the “color” setting, as described above.
Alternatively, if the If the method 300 concludes in step 328 that D(C) is not approximately equal to zero, the method 300 proceeds to step 332 and determines whether D(Cm)*D(C) is greater than zero. If the method 300 concludes in step 332 that D(Cm)*D(C) is greater than zero, the method 300 proceeds to step 334 and sets Cp=C. Alternatively, if the method 300 concludes in step 332 that D(Cm)*D(C) is not greater than zero, the method 300 proceeds to step 336 and sets Cm=C.
Once C has been set to either Cp or Cm (i.e., in accordance with step 334 or step 336), the method 300 proceeds to step 338 and repeats steps 324-336 twice before directing the user to adopt the current value of C as the “color” setting, as described above.
For the purposes of the method 400, full-on cyan display color is denoted as Cy, and full-on magenta display color is denoted as M. Either of these display colors is shown with a given “tint” setting T. For any “tint” setting T (from a minimum setting Tmin to a maximum setting Tmax), the respective Cy- and M-screen measurements of simulated luminance through the simulated blue filter is denoted as L(T,Cy) and L(T,M). The goal, then, is to, while making a minimum number of measurements, find the “tint” setting T for which the difference E(T) (where E(T)=L(T,Cy)−L(T,M)) is approximately zero. If such a setting T does not exist, the goal is to find the condition for which the absolute difference |E(T)| is minimized. It is unknown whether E(T) is increasing or decreasing in the setting T, but it is known that E(T) is monotonic (i.e., has no extrema).
Accordingly, for the “tint” control, the method 400 is initialized at step 402 and proceeds to step 404, where the method 400 prompts the user to measure the luminance of the cyan and magenta screens at the extreme “tint” settings (i.e., Tmin and Tmax). Thus, the user measures L(Tmin, Cy), L(Tmin, M), L(Tmax, Cy) and L(Tmax, M).
In step 406, the method 400 receives the requested measurements from the user. The method 400 then proceeds to step 408 and computes the differences E(Tmin)=L(Tmin,M)−L(Tmin,Cy) and E(Tmax)=L(Tmax,M)−L(Tmax,Cy), for each of the extreme “tint” settings.
In step 410, the method 400 determines whether E(Tmin) is approximately equal to zero. If the method 400 concludes in step 410 that E(Tmin) is approximately equal to zero, the method 400 proceeds to step 412 and directs the user to set the “tint” setting T to Tmin. The method 400 directs the user to adopt the current value of T (i.e., Tmin) for the “tint” setting in step 430 before terminating in step 440.
Alternatively, if the method 400 concludes in step 410 that E(Tmin) is not approximately equal to zero, the method 400 proceeds to step 414 and determines whether E(Tmax) is approximately equal to zero. If the method 400 concludes in step 414 that E(Tmax) is approximately equal to zero, the method 400 proceeds to step 416 and directs the user to set the “tint” setting T to Tmax. The method 400 directs the user to adopt the current value of T (i.e., Tmax) for the “tint” setting in step 430 before terminating in step 440.
Alternatively, if the method 400 concludes in step 414 that E(Tmax) is not approximately equal to zero, the method 400 proceeds to step 418 and determines whether the product E(Tmin)*E(Tmax) is greater than zero. If the method 400 concludes in step 418 that D(Cmin)*D(Cmax) is greater than zero, the method 400 proceeds to step 420 and determines whether |E(Tmin) | is less than |E(Tmax) |. If the method 400 concludes in step 420 that |E(Tmin) | is less than |D(Tmax) |, the method 400 proceeds to step 412 and directs the user to set the “tint” setting T to Tmin before proceeding as described above.
Alternatively, if the method 400 concludes in step 420 that |E(Tmin) | is not less than |E(Tmax) |, the method 400 proceeds to step 416 and directs the user to set the “tint” setting T to Tmax before proceeding as described above.
Referring back to step 418, if the method 400 concludes that E(Tmin)* E(Tmax) is not greater than zero, the method 400 proceeds to step 422 and sets Tm=Tmin and Tp=Tmax. In step 424, the method 400 estimates the “tint” setting T for equality. In one embodiment, the “tint” setting T is estimated using iterated interpolation as:
T=(a′Tp−Tm)/(a′−1) (EQN. 6)
where a′=E(Tm)/E(Tp) (EQN. 7)
In step 426, the method 400 directs the user to set the “tint” setting to T and computes E(T). The method 400 then proceeds to step 428 and determines whether E(T) is approximately equal to zero. If the method 400 concludes in step 428 that E(T) is approximately equal to zero, the method 400 proceeds to step 430 and directs the user to adopt the current value of T (i.e., interpolated T) as the “tint” setting, as described above.
Alternatively, if the If the method 400 concludes in step 428 that E(T) is not approximately equal to zero, the method 400 proceeds to step 432 and determines whether E(Tm)*E(T) is greater than zero. If the method 400 concludes in step 432 that E(Tm)*E(T) is greater than zero, the method 400 proceeds to step 434 and sets Tp=T. Alternatively, if the method 400 concludes in step 432 that E(Tm)*E(T) is not greater than zero, the method 400 proceeds to step 436 and sets Tm=T.
Once T has been set to either Tp or Tm(i.e., in accordance with step 434 or step 436), the method 400 proceeds to step 438 and repeats steps 424-436 twice before directing the user to adopt the current value of T as the “tint” setting, as described above.
Alternatively, the adjustment module 505 can be represented by one or more software applications (or even a combination of software and hardware, e.g., using Application Specific Integrated Circuits (ASIC)), where the software is loaded from a storage medium (e.g., I/O devices 506) and operated by the processor 502 in the memory 504 of the general-purpose computing device 500. Thus, in one embodiment, the adjustment module 505 for adjusting the settings of a home theater display described herein with reference to the preceding Figures can be stored on a computer readable medium or carrier (e.g., RAM, magnetic or optical drive or diskette, and the like).
It should be noted that although not explicitly specified, one or more steps of the methods described herein may include a storing, displaying and/or outputting step as required for a particular application. In other words, any data, records, fields, and/or intermediate results discussed in the methods can be stored, displayed, and/or outputted to another device as required for a particular application. Furthermore, steps or blocks in the accompanying Figures that recite a determining operation or involve a decision, do not necessarily require that both branches of the determining operation be practiced. In other words, one of the branches of the determining operation can be deemed as an optional step.
While various embodiments have been described above, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth and scope of a preferred embodiment should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
This application claims the benefit of U.S. Provisional Patent Application Ser. No. 60/812,552, filed Jun. 9, 2006, which is herein incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
60812552 | Jun 2006 | US |