.NET 4.x Найти разницу трех чёрно-белых изображений - C#
Формулировка задачи:
Есть входные четыре черно белые изображения. Помогите найти разницу интенсивностей І0 = І1-І2-І3 и Iz = I1-I2-I4 и вывести на экран новые два изображения
Решение задачи: «.NET 4.x Найти разницу трех чёрно-белых изображений»
textual
Листинг программы
public unsafe CImage(string fileName) { Bitmap bitmap = new Bitmap(fileName); Size correctSize = new Size( (int)Math.Pow(2, Math.Ceiling(Math.Log(bitmap.Width, 2))), (int)Math.Pow(2, Math.Ceiling(Math.Log(bitmap.Height, 2)))); if (correctSize != bitmap.Size) { bitmap = new Bitmap(bitmap, correctSize); } _size = correctSize; _data = new ComplexF[this.Width * this.Height]; Rectangle rect = new Rectangle(0, 0, this.Width, this.Height); BitmapData bitmapData = bitmap.LockBits(rect, ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb); int* colorData = (int*)bitmapData.Scan0.ToPointer(); for (int i = 0; i < this.Width * this.Height; i++) { Color c = Color.FromArgb(colorData[i]); _data[i].Re = ((float)c.R + (float)c.G + (float)c.B) / (3f * 256f); } bitmap.UnlockBits(bitmapData); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д