One factor in limiting the speed of conventional implementations of mixture models is that the algorithm involves many decisions where different operations are fetched and performed depending on the outcome of the decisions. These decisions cause flushing of the pipeline, and thus prevent the realization of a highly parallel pipeline in a processor. Without parallelism, the throughput of the pipeline in the processor, i.e., the ability to process many samples of the digital input at a time, is limited. To alleviate this issue, implementation of the mixture model is reformulated, among other things, by embedding decisions into the process flow as multiplicative factors. The resulting implementation alleviates the need to use if-else statements for the decisions and reduces the number of times the pipeline has to be flushed. The implementation enables a pipeline with a higher degree of parallelism and thereby increases throughput and speed of the implementation.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method for enabling parallel processing of decisions in a processor, the decisions involving a mixture model comprising a plurality of probability distributions, the method comprising: (1) computing a first decision variable based on a first sample and a first probability distribution corresponding to the first sample; (2) computing one or more first multiplicative factors based on the first decision variable; and (3) updating one or more parameters of the first probability distribution using the one or more first multiplicative factors. 2. The method of claim 1, further comprising: (4) computing a second decision variable based on the first sample and a second probability distribution corresponding to the first sample; (5) computing one or more second multiplicative factors based on the second decision variable; and (6) updating one or more parameters of the second probability distribution using the one or more second multiplicative factors. 3. The method of claim 2, wherein: any one or more of operations (1) to (3) and any one or more of operations (4) to (6) are performed during a same clock cycle. 4. The method of claim 1, further comprising: (4) computing a third decision variable based on a second sample and a third probability distribution corresponding to the second sample; (5) computing one or more third multiplicative factors based on the third decision variable; and (6) updating one or more parameters of the third probability distribution using the one or more third multiplicative factors. 5. The method of claim 4, wherein: any one or more of (1) to (3) and any one or more of (4) to (6) are performed during a same clock cycle. 6. The method of claim 1, wherein updating the one or more first parameters of the first probability distribution comprises using one or more first multiplicative factors as coefficients of an infinite impulse response filter. 7. The method of claim 6, wherein the infinite impulse response filter comprises one or more multiplier-accumulator blocks. 8. The method of claim 1, wherein computing the first decision variable comprises computing the first decision variable using subtraction and using a sign bit of the result from the subtraction as the first decision variable. 9. The method of claim 1, wherein: the mixture model comprises a Mixture of Gaussians model; the plurality of probability distributions comprises a plurality of Gaussians probability distributions; and the one or more parameters of the first probability distribution corresponding to the first sample comprises one or more of the following: weight, mean, and variance. 10. The method of claim 1, wherein: the first sample comprises one or more pixel values of a pixel of an image frame of a video; and the method further comprises determining whether the pixel of the image frame of the video is likely to belong to a foreground or a background. 11. A computer-readable non-transitory medium comprising one or more instructions for enabling parallel processing of decisions, the decisions involving a mixture model comprising a plurality of probability distributions, when the one or more instructions are executed on a processor, the one or more instructions configure the processor to perform the following: (1) computing a first decision variable based on a first sample and a first probability distribution corresponding to the first sample; (2) computing one or more first multiplicative factors based on the first decision variable; and (3) updating one or more parameters of the first probability distribution using the one or more first multiplicative factors. 12. The medium of claim 11, the one or more instructions further configure the processor to perform the following: (4) computing a second decision variable based on the first sample and a second probability distribution corresponding to the first sample; (5) computing one or more second multiplicative factors based on the second decision variable; and (6) updating one or more parameters of the second probability distribution using the one or more second multiplicative factors. 13. The medium of claim 12, wherein: any one or more of operations (1) to (3) and any one or more of operations (4) to (6) are performed during a same clock cycle in the processor. 14. The medium of claim 11, the one or more instructions further configure the processor to perform the following: (4) computing a third decision variable based on a second sample and a third probability distribution corresponding to the second sample; (5) computing one or more third multiplicative factors based on the third decision variable; and (6) updating one or more parameters of the third probability distribution using the one or more third multiplicative factors. 15. The method of claim 14, wherein: any one or more of (1) to (3) and any one or more of (4) to (6) are performed during a same clock cycle. 16. The medium of claim 11, wherein updating the one or more first parameters of the first probability distribution comprises using one or more first multiplicative factors as coefficients of an infinite impulse response filter. 17. The medium of claim 11, wherein computing the first decision variable comprises computing the first decision variable using subtraction and using a sign bit of the result from the subtraction as the first decision variable. 18. A digital signal processor for enabling parallel processing of decisions involving a mixture model comprising a plurality of probability distributions, the digital signal processor comprising: a plurality of hardware computation blocks; memory comprising samples and instructions for processing the samples based on the mixture model, wherein the instructions perform, using the hardware computation blocks, the following operations: (1) compute a first decision variable based on a first sample and a first probability distribution corresponding to the first sample; (2) compute one or more first multiplicative factors based on the first decision variable; and (3) update one or more parameters of the first probability distribution using the one or more first multiplicative factors. 19. The digital signal processor of claim 18, wherein the instructions are executable using the hardware computation blocks to compute one or more further decision variables based on the first sample or a second sample during a same clock cycle in which any one of (1) to (3) are performed. 20. The digital signal processor of claim 18, wherein the instructions are executable using the hardware computation blocks to update one or more parameters of one or more further probability distributions corresponding to the first sample or a second sample during a same clock cycle in which any one of (1) to (3) are performed.