public static async Task <ProcessingResult> HandleEncryption(Bitmap originalContainerBitmap, Bitmap originalKeyBitmap, string originalFileName) { var encryptionStopwatch = Stopwatch.StartNew(); var result = await Svd.Encrypt(originalContainerBitmap, originalKeyBitmap, originalFileName); encryptionStopwatch.Stop(); var encryptionMse = Helpers.CalculateMse(result.InputContainer, result.OutputContainer); var encryptionPsnr = Helpers.CalculatePsnr(encryptionMse); return(new ProcessingResult { Psnr = encryptionPsnr, Mse = encryptionMse, Time = encryptionStopwatch.Elapsed, AverageBlueColor = result.AverageBlueColor, AverageGreenColor = result.AverageGreenColor, AverageRedColor = result.AverageRedColor, AverageBlueColorWatermark = result.AverageBlueColorWatermark, AverageGreenColorWatermark = result.AverageGreenColorWatermark, AverageRedColorWatermark = result.AverageRedColorWatermark, ContainerHeight = result.ContainerHeight, ContainerWidth = result.ContainerWidth, WatermarkHeight = result.WatermarkHeight, WatermarkWidth = result.WatermarkWidth, ContainerWithWatermark = result.OutputContainer }); }
public static async Task <ProcessingResult> Encrypt(string originalFilePath, string originalFileName, string originalKeyPath, int brightness, int contrast, int mode) { var originalContainerBitmap = new Bitmap(originalFilePath); var originalKeyBitmap = new Bitmap(originalKeyPath); var encryptionStopwatch = Stopwatch.StartNew(); switch (mode) { case 1: originalContainerBitmap = Helpers.SetContrast(Helpers.SetBrightness(originalContainerBitmap, brightness), contrast); break; case 2: originalKeyBitmap = Helpers.SetContrast(Helpers.SetBrightness(originalKeyBitmap, brightness), contrast); break; } var result = await Svd.Encrypt(originalContainerBitmap, originalKeyBitmap, originalFileName); encryptionStopwatch.Stop(); var encryptionPsnr = Helpers.CalculatePsnr(result.InputContainer, result.OutputContainer); return(new ProcessingResult { Psnr = encryptionPsnr, Time = encryptionStopwatch.Elapsed, AverageBlueColor = result.AverageBlueColor, AverageGreenColor = result.AverageGreenColor, AverageRedColor = result.AverageRedColor }); }