예제 #1
0
        private byte ApplyBlur(byte[] neighborhood)
        {
            int sum = 0;

            for (int i = 0; i < neighborhoodSize; ++i)
            {
                sum += neighborhood[i];
            }

            return(RgbComponentOperations.ControlOverflow(sum / neighborhoodSize));
        }
예제 #2
0
        protected override byte ComputeNewRgbComponentValue(byte[] neighborhood)
        {
            double sum = 0;

            for (int i = 0; i < neighborhood.Length; ++i)
            {
                sum += neighborhood[i] * kernel[i];
            }

            sum *= factor;

            return(RgbComponentOperations.ControlOverflow(sum));
        }