Abstract:
The present invention is directed to a method of apparatus of enhancing the signal-to-noise ratio of a microphone array. The array includes a plurality of microphones and has a directivity pattern which is adjustable based on one or more parameters. The parameters are evaluated so as to realize an angular orientation of a directivity pattern null. This angular orientation of the directivity pattern null reduces microphone array output signal level. Parameter evaluation is performed under a constraint that the null be located within a predetermined region of space. Advantageously, the predetermined region of space is a region from which undesired acoustic energy is expected to impinge upon the array, and the angular orientation of a directivity pattern null substantially aligns with the angular orientation of undesired acoustic energy. Output signals of the array microphones are modified based on one or more evaluated parameters. An array output signal is formed based on modified and unmodified microphone output signals. The evaluation of parameters, the modification of output signals, and the formation of an array output signal may be performed a plurality of times to obtain an adaptive army response. Embodiments of the invention include those having a plurality of directivity patterns corresponding to a plurality of frequency subbands. Illustratively, the array may comprise a plurality of cardioid sensors.

Description:
FIELD OF THE INVENTION 
     This invention relates to microphone arrays which employ directionality characteristics to differentiate between sources of noise and desired sound sources. 
     BACKGROUND OF THE INVENTION 
     Wireless communication devices, such as cellular telephones and other personal communication devices, enjoy widespread use. Because of their portability, such devices are finding use in very noisy environments. Users of such wireless communication devices often find that unwanted noise seriously detracts from clear communication of their own speech. A person with whom the wireless system user speaks often has a difficult time hearing the user&#39;s speech over the noise. 
     Wireless devices are not the only communication systems exposed to unwanted noise. For example, video teleconferencing systems and multimedia computer communication systems suffer similar problems. In the cases of these systems, noise within the conference room or office in which such systems sit detract from the quality of communicated speech. Such noise may be due to electric equipment noise (e.g., cooling fan noise), conversations of others, etc. 
     Directional microphone arrays have been used to combat the problems of noise in communication systems. Such arrays exhibit varying sensitivity to sources of noise as a function of source angle. This varying sensitivity is referred to as a directivity pattern. Low or reduced array sensitivity at a given source angle (or range of angles) is referred to a directivity pattern null. Directional sensitivity of an array is advantageously focused on desired acoustic signals and ignores, in large part, undesirable noise signals. 
     While conventional directional arrays provide a desirable level of noise rejection, they may be of limited usefulness in situations where noise sources move in relation to the array. 
     SUMMARY OF THE INVENTION 
     The present invention provides a technique for adaptively adjusting the directivity of a microphone array to reduce (for example, to minimize) the sensitivity of the array to background noise. 
     In accordance with the present invention, the signal-to-noise ratio of a microphone array is enhanced by orienting a null of a directivity pattern of the array in such a way as to reduce microphone array output signal level. Null orientation is constrained to a predetermined region of space adjacent to the array. Advantageously, the predetermined region of space is a region from which undesired acoustic energy is expected to impinge upon the array. Directivity pattern (and thus null) orientation is adjustable based on one or more parameters. These one or more parameters are evaluated under the constraint to realize the desired orientation. The output signals of one or more microphones of the array are modified based on these to evaluated parameters and the modified output signals are used in forming an array output signal. 
     An illustrative embodiment of the invention includes an array having a plurality of microphones. The directivity pattern of the array (i.e., the angular sensitivity of the array) may be adjusted by varying one or more parameters. According to the embodiment, the signal-to-noise ratio of the array is enhanced by evaluating the one or more parameters which correspond to advantageous angular orientations of one or more directivity pattern nulls. The advantageous orientations comprise a substantial alignment of the nulls with sources of noise to reduce microphone array output signal level due to noise. The evaluation of parameters is performed under a constraint that the orientation of the nulls be restricted to a predetermined angular region of space termed the background. The one or more evaluated parameters are used to modify output signals of one or more microphones of the array to realize null orientations which reduce noise sensitivity. An array output signal is formed based on one or more modified output signals and zero or more unmodified microphone output signals. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIGS. 1(a)-1(c) present three representations of illustrative background and foreground configurations. 
     FIG. 2 presents an illustrative sensitivity pattern of an array in accordance with the present invention. 
     FIG. 3 presents an illustrative embodiment of the present invention. 
     FIG. 4 presents a flow diagram of software for implementing a third embodiment of the present invention. 
     FIG. 5 presents a third illustrative embodiment of the present invention. 
     FIGS. 6(a) and 6(b) present analog circuitry for implementing β saturation of the embodiment of FIG. 5 and its input/output characteristic, respectively. 
     FIG. 7 presents a fourth illustrative embodiment of the present invention. 
     FIG. 8 presents a polyphase filterbank implementation of a β computer presented in FIG. 7. 
     FIG. 9 presents an illustrative window of coefficients for use by the windowing processor presented in FIG. 8. 
     FIG. 10 presents a fast convolutional procedure implementing a filterbank and scaling and summing circuits presented in FIG. 7. 
     FIG. 11 presents a fifth illustrative embodiment of the present invention. 
     FIG. 12 presents a sixth illustrative embodiment of the present invention. 
    
    
     DETAILED DESCRIPTION 
     A. Introduction 
     Each illustrative embodiment discussed below comprises a microphone array which exhibits differing sensitivity to sound depending on the direction from which such sound impinges upon the array. For example, for undesired sound impinging upon the array from a selected angular region of space termed the background, the embodiments provide adaptive attenuation of array response to such sound impinging on the array. Such adaptive attenuation is provided by adaptively orienting one or more directivity pattern nulls to substantially align with the angular orientation(s) from which undesired sound impinges upon the array. This adaptive orientation is performed under a constraint that angular orientation of the null(s) be limited to the predetermined background. 
     For sound not impinging upon the array from an angular orientation within the background region, the embodiments provide substantially unattenuated sensitivity. The region of space not the background is termed the foreground. Because of the difference between array response to sound in the background and foreground, it is advantageous to physically orient the array such that desired sound impinges on the array from the foreground while undesired sound impinges on the array from the background. 
     FIG. 1 presents three representations of illustrative background and foreground configurations in two dimensions. In FIG. 1(a), the foreground is defined by the shaded angular region -45°&lt;θ&lt;45°. The letter &#34;A&#34; indicates the position of the array (i.e., at the origin), the letter &#34;x&#34; indicates the position of the desired source, and letter &#34;y&#34; indicates the position of the undesired noise source. In FIG. 1(b), the foreground is defined by the angular region -90°&lt;θ&lt;90°. In FIG. 1(c), the foreground is defined by the angular region -160°&lt;θ&lt;120°. The foreground/background combination of FIG. 1(b) is used with the illustrative embodiments discussed below. As such, the embodiments are sensitive to desired sound from the angular region -90°&lt;θ&lt;90° (foreground) and can adaptively place nulls within the region 90°&lt;θ&lt;270° to mitigate the effects of noise from this region (background). 
     FIG. 2 presents an illustrative directivity pattern of an array shown in two-dimensions in accordance with the present invention. The sensitivity pattern is superimposed on the foreground/background configuration of FIG. 2(b). As shown in FIG. 2, array A has a substantially uniform sensitivity (as a function of θ) in the foreground region to the desired source of sound DS. In the background region, however, the sensitivity pattern exhibits a null at approximately 180°±45°, which is substantially coincident with the two-dimensional angular position of the noise source NS. Because of this substantial coincidence, the noise source NS contributes less to the array output relative to other sources not aligned with the null. The illustrative embodiments of the present invention automatically adjust their directivity patterns to locate pattern nulls in angular orientations to mitigate the effect of noise on array output. This adjustment is made under the constraint that the nulls be limited to the background region of space adjacent to the array. This constraint prevents the nulls from migrating into the foreground and substantially affecting the response of the array to desired sound. 
     As stated above, FIG. 2 presents a directivity pattern in two-dimensions. This two-dimensional perspective is a projection of a three-dimensional directivity pattern onto a plane in which the array A lies. Thus, the sources DS and NS may lie in the plane itself or may have two-dimensional projections onto the plane as shown. Also, the illustrative directivity pattern null is shown as a two-dimensional projection. The three-dimensional directivity pattern may be envisioned as a three-dimensional surface obtained by rotating the two-dimensional pattern projection about the 0°-180° axis. In three dimensions, the illustrative null may be envisioned as a cone with the given angular orientation, 180°±45°. While directivity patterns are presented in two-dimensional space, it will be readily apparent to those of skill in the art that the present invention is generally applicable to three-dimensional arrangements of arrays, directivity patterns, and desired and undesired sources. 
     In the context of the present invention, there is no requirement that desired sources be located in the foreground or that undesired sources be located in the background. For example, as stated above the present invention has applicability to situations where desired acoustic energy impinges upon the array A from any direction within the foreground region (regardless of the location of the desired source(s)) and where undesired acoustic energy impinges on the array from any direction within the background region (regardless of the location of the undesired source(s)). Such situations may be caused by, e.g., reflections of acoustic energy (for example, a noise source not itself in the background may radiate acoustic energy which, due to reflection, impinges upon the array from some direction within the background). The present invention has applicability to still other situations where, e.g., both the desired source and the undesired source are located in the background (or the foreground). Embodiments of the invention would still adapt null position (constrained to the background) to reduce array output. Such possible configurations and situations notwithstanding, the illustrative embodiments of the present invention are presented in the context of desired sources located in the foreground and undesired sources located in the background for purposes of inventive concept presentation clarity. 
     The illustrative embodiments of the present invention are presented as comprising individual functional blocks (including functional blocks labeled as &#34;processors&#34;) to aid in clarifying the explanation of the invention. The functions these blocks represent may be provided through the use of either shared or dedicated hardware, including, but not limited to, hardware capable of executing software. For example, the functions of blocks presented in FIGS. 3, 7, 8, 10, 11 and 12 may be provided by a single shared processor. (Use of the term &#34;processor&#34; should not be construed to refer exclusively to hardware capable of executing software.) 
     Illustrative embodiments may comprise digital signal processor (DSP) hardware, such as the AT&amp;T DSP16 or DSP32C, read-only memory (ROM) for storing software performing the operations discussed below, and random access memory (RAM) for storing DSP results. Very large scale integration (VLSI) hardware embodiments, as well as custom VLSI circuitry in combination with a general purpose DSP circuit, may also be provided. 
     B. A First Illustrative Embodiment 
     FIG. 3 presents an illustrative embodiment of the present invention. In this embodiment, a microphone array is formed from back-to-back cardioid sensors. Each cardioid sensor is formed by a differential arrangement of two omnidirectional microphones. The microphone array receives a plane-wave acoustic signal, s(t), incident to the array at angle θ. 
     As shown in the Figure, the embodiment comprises a pair of omnidirectional microphones 10, 12 separated by a distance, d. The microphones of the embodiment are Bruel &amp; Kjaer Model 4183 microphones. Distance d is 1.5 cm. Each microphone 10, 12 is coupled to a preamplifier 14,16, respectively. Preamplifier 14, 16 provides 40 dB of gain to the microphone output signal. 
     The output of each preamplifier 14, 16 is provided to a conventional analog-to-digital (A/D) converter 20, 25. The A/D converters 20,25 convert analog microphone output signals into digital signals for use in the balance of the embodiment. The sampling rate employed by the A/D converters 20, 25 is 22.05 kHz. 
     Delay lines 30, 25 introduce signal delays needed to form the cardioid sensors of the embodiment. Subtraction circuit 40 forms the back cardioid output signal, c B  (t), by subtracting a delayed output of microphone 12 from an undelayed output of microphone 10. Subtraction circuit 45 forms the front cardioid output signal, c F  (t), by subtracting a delayed output of microphone 10 from an undelayed output of microphone 12. 
     As stated above, the sampling rate of the A/D converters 20, 25 is 22.05 kHz. This rate allows advantageous formation of back-to-back cardioid sensors by appropriately subtracting present samples from previous samples. By setting the sampling period of the A/D converters to d/c, where d is the distance between the omni-directional microphones and c is the speed of sound, successive signal samples needed to form each cardioid sensor are obtained from the successive samples from the A/D converter. 
     The output signals from the subtraction circuits 40, 45 are provided to β processor 50. β processor 50 computes a gain β for application to signal c B  (t) by amplifier 55. The scaled signal, βc B  (t), is then subtracted from front cardioid output signal, c F  (t), by subtraction circuit 60 to form array output signal, y(t). 
     Output signal y(t) is then filtered by lowpass filter 65. Lowpass filter 65 has a 5 kHz cutoff frequency. Lowpass filter 65 is used to attenuate signals that are above the highest design frequency for the array. 
     The forward and backward facing cardioid sensors may be described mathematically with a frequency domain representation as follows: ##EQU1## and the spatial origin is at the array center. Normalizing the array output signal by the input signal spectrum, S(ω), results in the following expression: ##EQU2## C. Determination of β 
     As shown in FIG. 3, the illustrative embodiment of the present invention includes a β processor 50 for determining the scale factor β used in adjusting the directivity pattern of the array. To allow the array to advantageously differentiate between desired foreground sources of acoustic energy and undesirable background noise sources, directivity pattern nulls are constrained to be within a defined spatial region. In the illustrative embodiment, the desired source of sound is radiating in the front half-plane of the array (that is, the foreground is defined by -90&lt;θ&lt;90). The undesired noise source is radiating in the rear half-plane of the array (that is, the background is defined by 90&lt;θ&lt;270). β processor 50 first computes a value for β and then constrains β to be 0&lt;β&lt;1 which effectuates a limitation on the placement of a directivity pattern null to be in the rear half-plane. For the first illustrative embodiment, θ null , the angular orientation of a directivity pattern null, is related to β as follows: ##EQU3## Note that for β=1, θ null  =90° and for β=0, θ null  =180°. 
     A value for β is computed by β processor 50 according to any of the following illustrative relationships. 
     1. Optimum β 
     The optimum value of β is defined as that value of β which minimizes the mean square value of the array output. The output signal of the illustrative back-to-back cardioid embodiment is: 
     
         y(n)=c.sub.F (n)-βc.sub.B (n).                        (5) 
    
     The value of β determined by processor 50 which minimizes array output is: ##EQU4## This result for optimum β is a finite time estimate of the optimum Wiener filter for a filter of length one. 
     2. Updating β with LMS Adaptation 
     Values for β may be obtained using a least mean squares (LMS) adaptive scheme. Given the output expression for the back-to-back cardioid array of FIG. 3, 
     
         y(n)=c.sub.F (n)-βc.sub.B (n)                         (7) 
    
     the LMS update expression for β is 
     
         β(n+1)=β(n)+2μy(n)c.sub.B (n),                (8) 
    
     where μ is the update step-size (μ&lt;1; the larger the μ the faster the convergence). The LMS update may be modified to include a normalized update step-size so that explicit convergence bounds for μ may be independent of the input power. The LMS update of β with a normalized μ is: ##EQU5## where the brackets indicate a time average, and where if &lt;c B   2  (n)&gt; is close to zero, the quotient is not formed and μ is set to zero. 
     3. Updating β with Newton&#39;s Technique 
     Newton&#39;s technique is a special case of LMS where μ is a function of the input. The update expression for β is: ##EQU6## where c B  (n) is not equal to zero. The noise sensitivity of this system may be reduced by introducing a constant multiplier 0≦μ≦1 to the update term, y(n)/c B  (n). 
     D. A Software Implementation of the First Embodiment 
     While the illustrative embodiment presented above may be implemented largely in hardware as described, the embodiment may be implemented in software running on a DSP, such as the AT&amp;T DSP32C, as stated above. FIG. 4 presents a flow diagram of software for implementing a second illustrative embodiment of the present invention for optimum β. 
     According to step 110 of FIG. 4, the first task for the DSP is to acquire from each channel (i.e., from each A/D converter associated with a microphone) a sample of the microphone signals. These acquired samples (one for each channel) are current samples at time n. These sample are buffered into memory for present and future use (see step 115). Microphone samples previously buffered at time n-1 are made available from buffer memory. Thus, the buffer memory serves as the delay utilized for forming the cardioid sensors. 
     Next, both the front and back cardioid output signal samples are formed (see step 120). The front cardioid sensor signal sample, c F  (n), is formed by subtracting a delayed sample (valid at time n-1) from the back microphone (via a buffer memory) from a current sample (valid at time n) from the front microphone. The back cardioid sensor signal sample, c B  (n), is formed by subtracting a delayed sample (valid at time n-1) from the front microphone (via a buffer memory) from a current sample (valid at time n) from the back microphone. 
     The operations prefatory to the computation of scale factor β are performed at steps 125 and 130. Signals c B   2  (n) and c F  (n)c B  (n) are first computed (step 125). Each of these signals is then averaged over a block of N samples, where N is illustratively 1,000 samples (step 130). The size of N affects the speed of null adaptation to moving sources of noise. Small values of N can lead to null adaptation jitter, while large values of N can lead to slow adaptation rates. Advantageously, N, should be chosen as large as possible while maintaining sufficient null tracking speed for the given application. 
     At step 135, the block average of the cross-product of back and front cardioid sensor signals is divided by the block average of the square of the back cardioid sensor signal. The result is the ratio, β, as described in expression (6). The value of β is then constrained to be within the range of zero and one. This constraint is accomplished by setting β=1 if β is calculated to be a number greater than one, and setting β=0 if β is calculated to be a number less than zero. By constraining β in this way, the null of the array is constrained to be in the rear half-plane of the array&#39;s sensitivity pattern. 
     The output sample of the array, y(n), is formed (step 140) in two steps. First, the back cardioid signal sample is scaled by the computed and constrained (if necessary) value of β. Second, the scaled back cardioid signal sample is subtracted from the front cardioid signal sample. 
     Output signal y(n) is then filtered (step 145) by a lowpass filter having a 5 kHz cutoff frequency. As stated above, the lowpass filter is used to attenuate signals that are above the highest design frequency for the array. The filtered output signal is then provided to a D/A converter (step 150) for use by conventional analog devices. The software process continues (step 155) if there is a further input sample from the A/D converters to process. Otherwise, the process ends. 
     E. An Illustrative Analog Embodiment 
     The present invention may be implemented with analog components. FIG. 5 presents such an illustrative implementation comprising conventional analog multipliers 510, 530, 540, an analog integrator 550, an analog summer 520, and a non-inverting amplifier circuit 560 shown in FIG. 6(a) having input/output characteristic shown in FIG. 6(b) (wherein the saturation voltage V L  =β is set by the user to define the foreground/background relationship). Voltage V L  is controlled by a potentiometer setting as shown. The circuit of FIG. 5 operates in accordance with continuous-time versions of equations (7) and (8), wherein β is determined in an LMS fashion. 
     F. A Fourth Illustrative Embodiment 
     A fourth illustrative embodiment of the present invention is directed to a subband implementation of the invention. The embodiment may be advantageously employed in situations where there are multiple noise sources radiating acoustic energy at different frequencies. According to the embodiment, each subband has its own directivity pattern including a null. The embodiment computes a value for β (or a related parameter) on a subband-by-subband basis. Parameters are evaluated to provide an angular orientation of a given subband null. This orientation helps reduce microphone array output level by reducing the array response to noise in a given subband. The nulls of the individual subbands are not generally coincident, since noise sources (which provide acoustic noise energy at differing frequencies) may be located in different angular directions. However there is no reason why two or more subband nulls cannot be substantially coincident. 
     The fourth illustrative embodiment of the present invention is presented in FIG. 7. The embodiment is identical to that of FIG. 3 insofar as the microphones 10, 12, preamplifiers 14, 16, A/D converters 20, 25, and delays 30, 35 are concerned. These components are not repeated in FIG. 7 so as to clarify the presentation of the embodiment. However, subtraction circuits 40, 45 are shown for purposes of orienting the reader with the similarity of this fourth embodiment to that of FIG. 3. 
     As shown in the Figure, the back cardioid sensor output signal, c B  (n), is provided to a β-processor 220 as well as a filterbank 215. Filterbank 215 resolves the signal c B  (n) into M/2+1 subband component signals. Each subband component signal is scaled by a subband version of β. The scaled subband component signals are then summed by summing circuit 230. The output signal of summing circuit 230 is then subtracted from a delayed version of the front cardioid sensor output signal, c F  (n), to form array output signal, y(n). Illustratively, M=32. The delay line 210 is chosen to realize a delay commensurate with the processing delay of the branch of the embodiment concerned with the back cardioid output signal, c B  (n). 
     The β-processor 220 of FIG. 7 comprises a polyphase filterbank as illustrated in FIG. 8. 
     As shown in FIG. 8, the back cardioid sensor output signal, c B  (n), is applied to windowing processor 410. Windowing processor applies a window of coefficients presented in FIG. 9 to incoming samples of c B  (n) to form the M output signals, p m  (n), shown in FIG. 8. Windowing processor 410 comprises a buffer for storing 2M-1 samples of c B  (n), a read-only memory for storing window coefficients, w(n), and a processor for forming the products/sums of coefficients and signals. Windowing processor 410 generates signals p m  (n) according to the following relationships: 
     
         p.sub.0 (n)=c.sub.B (n-M)w(0) 
    
     
         p.sub.1 (n)=c.sub.B (n-1)w(-M+1)+c.sub.B (n-M-1)w(1) 
    
     
         p.sub.2 (n)=c.sub.B (n-2)w(-M+2)+c.sub.B (n-M-2)w(2) 
    
     
         p.sub.M-1 (n)=c.sub.B (n-M+1)w(-1)+c.sub.B (n-2M+1)w(m-1). (11) 
    
     The output signals of windowing processor 410, p m  (n), are applied to Fast Fourier Transform (FFT) processor 420. Processor 420 takes a conventional M-point FFT based on the M signals p m  (n). What results are M FFT signals. Of these signals, two are real valued signals and are labeled as v 0  (n) and v M/2  (n). Each of the balance of the signals is complex. Real valued signals, v 1  (n) through v M/2-1  (n) are formed by the sum of an FFT signal and its complex conjugate, as shown in the FIG. 8. 
     Real-valued signals v 0  (n), . . . , v M/2  (n) are provided to β-update processor 430. β-update processor 430 updates values of β for each subband according to the following relation: ##EQU7## where μ is the update stepsize, illustratively 0.1 (however, μ may be set equal to zero and the quotient not formed when the denominator of (12) is close to zero). The updated value of β m  (n) is then saturated as discussed above. That is, for 0&lt;m&lt;M/2, ##EQU8## Advantageously, the computations described by expressions (11) through (13) are performed once every M samples to reduce computational load. 
     Those components which appear in the filterbank 215 and scaling and summing section 212 of FIG. 7 may be realized by a fast convolution technique illustrated by the block diagram of FIG. 10. 
     As shown in FIG. 10, β-processor provides the subband values of β to β-to-γ processor 320. β-to-γ processor 320 generates 4M fast convolution coefficients, γ, which are equivalent to the set of β coefficients from processor 430. The γ coefficients are generated by (i) computing an impulse response (of length 2M-1) of the filter which is block 212 (of FIG. 7) as a function of the values of β and (ii) computing the Fast Fourier Transform (FFT) (of size 4M) of the computed impulse response. The computed FFT coefficients are the 4M γ&#39;s. (Alternatively, due to the symmetry of the window used in the computation of the subband β values, there is a symmetry in the values of the γ coefficients which can be exploited to reduce the size of the FFT to 2M.) 
     The 4M γ coefficients are applied to a frequency domain representation of the back cardioid sensor signal, c B  (n). This frequency domain representation is provided by FFT processor 310 which performs a 4M FFT. The 4M γ coefficients are used to scale the 4M FFT coefficients as shown in FIG. 10. The scaled FFT coefficients are then processed by FFT -1  processor 330. The output of FFT -1  processor 330 (and block 212) is then provided to the summing circuit 235 for subtraction from the delayed c F  (n) signal (as shown in FIG. 7). The size of the FFT and FFT -1  may also be reduced by exploiting the symmetry of the γ coefficients. 
     G. Alternative Embodiments 
     While the illustrative embodiments presented above concern back-to-back cardioid sensors, those of ordinary skill in the art will appreciate that other array configurations in accordance with the present invention are possible. One such array configuration comprises a combination of an omnidirectional sensor and a dipole sensor to form an adaptive first order differential microphone array. Such a combination is presented in FIG. 11. β is updated according to the following expression: 
     
         β(n+1)=β(n)+2μy(n)(d(n)+o(n)).                (14) 
    
     Another such array configuration comprises a combination of a dipole sensor and a cardioid sensor to again form an adaptive first order differential microphone array. Such a combination is presented in FIG. 12. β is updated according to the following expression: 
     
         β(n+1)=β(n)+2μy(n)(d(n)+c(n)).                (15) 
    
     Although a number of specific embodiments of this invention have been shown and described herein, it is to be understood that these embodiments are merely illustrative of the many possible specific arrangements which can be devised in application of the principles of the invention. Numerous and varied other arrangements can be devised in accordance with these principles by those of ordinary skill in the art without departing from the spirit and scope of the invention.