Example #1
0
        public static ProcessedImage operator -(ProcessedImage processedImage)
        {
            var outputImage = new ProcessedImage(processedImage.ImageModel);

            for (var i = 0; i < outputImage.Values.Length; i++)
            {
                outputImage.Values[i] = -processedImage.Values[i];
            }

            return(outputImage);
        }
Example #2
0
        public static ProcessedImage operator +(double scalar, ProcessedImage processedImage)
        {
            var outputImage = new ProcessedImage(processedImage.ImageModel);

            for (var i = 0; i < outputImage.Values.Length; i++)
            {
                outputImage.Values[i] = processedImage.Values[i] + scalar;
            }

            return(outputImage);
        }
Example #3
0
        public static ProcessedImage Abs(this ProcessedImage processedImage)
        {
            var outputImage = new ProcessedImage(processedImage.ImageModel);

            for (var i = 0; i < outputImage.Values.Length; i++)
            {
                outputImage.Values[i] = Math.Abs(processedImage.Values[i]);
            }

            return(outputImage);
        }
Example #4
0
        public static Image ToImage(this ProcessedImage processedImage)
        {
            var imageModel        = processedImage.ImageModel;
            var outputImagePixels = new Pixel[imageModel.Width * imageModel.Height];

            for (var i = 0; i < imageModel.Width * imageModel.Height; i++)
            {
                outputImagePixels[i] = (Pixel)processedImage.Values[i];
            }

            return(new Image(outputImagePixels, imageModel));
        }
Example #5
0
        public static ProcessedImage operator -(Image image, ProcessedImage processedImage)
        {
            if (image.ImageModel != processedImage.ImageModel)
            {
                throw new ImageModelMismatchException();
            }

            var outputImage = new ProcessedImage(processedImage.ImageModel);

            for (var i = 0; i < outputImage.Values.Length; i++)
            {
                outputImage.Values[i] = image.ImagePixels[i] - processedImage.Values[i];
            }

            return(outputImage);
        }
Example #6
0
        public static ProcessedImage operator +(ProcessedImage firstProcessedImage, ProcessedImage secondProcessedImage)
        {
            if (firstProcessedImage.ImageModel != secondProcessedImage.ImageModel)
            {
                throw new ImageModelMismatchException();
            }

            var outputImage = new ProcessedImage(firstProcessedImage.ImageModel);

            for (var i = 0; i < outputImage.Values.Length; i++)
            {
                outputImage.Values[i] = firstProcessedImage.Values[i] + secondProcessedImage.Values[i];
            }

            return(outputImage);
        }