public void GlobalSetup() { _drawingBitmap = DrawingBitmapExtension.FromFile(_sourceBitmapPath); _bitmapSource = BitmapSourceExtension.FromFile(_sourceBitmapPath); _container = _drawingBitmap.ToImagePixelsContainer(); _imageSharp = ImageSharpBgr24Extension.FromFile(_sourceBitmapPath); }
public void ToEachClasses() { // bmp から ImagePixels を作成できないので DrawingBitmap から作成する using var bitmapBase = DrawingBitmapExtension.FromFile(_sourceBitmapPath); using var container = bitmapBase.ToImagePixelsContainer(); var pixels = container.Pixels; var avesBase = pixels.GetChannelsAverage().ToList(); avesBase.Count.Is(3); // ToDrawingBitmap using var bitmap0 = pixels.ToDrawingBitmap(); var aves00 = bitmap0.GetChannelsAverage().ToList(); aves00.Count.Is(3); aves00.Is(avesBase); // ToBitmapSource var bitmap1 = pixels.ToBitmapSource(); var aves10 = bitmap1.GetChannelsAverage().ToList(); aves10.Count.Is(3); aves10.Is(avesBase); // ToWriteableBitmap(BitmapSource) var writeable = pixels.ToWriteableBitmap(); var aves20 = writeable.GetChannelsAverage().ToList(); aves20.Count.Is(3); aves20.Is(avesBase); pixels.CopyToWriteableBitmap(writeable); var aves21 = writeable.GetChannelsAverage().ToList(); aves21.Count.Is(3); aves21.Is(avesBase); // ToImageSharpBgr24 using var image = pixels.ToImageSharpBgr24(); var aves30 = image.GetChannelsAverage().ToList(); aves30.Count.Is(3); aves30.Is(avesBase); }
public void FileLoadSave(string imagePath, string extension) { // 画像ファイルを Load -> Save -> Load して画素平均値を比較する using var bitmap0 = DrawingBitmapExtension.FromFile(imagePath); var baseAves = bitmap0.GetChannelsAverage().ToList(); var savePath = GetTempFileName() + extension; try { using var container = bitmap0.ToImagePixelsContainer(); container.Pixels.ToBmpFile(savePath); using var bitmap1 = DrawingBitmapExtension.FromFile(savePath); var newAves = bitmap1.GetChannelsAverage().ToList(); newAves.Is(baseAves.Take(3)); // 3chに揃える } finally { System.IO.File.Delete(savePath); // Dispose後に消す } }
public void GlobalSetup() { _drawingBitmap = DrawingBitmapExtension.FromFile(_sourceBitmapPath); _writeableBitmap = _drawingBitmap.ToWriteableBitmap(); _container = new ImagePixelsContainer(_drawingBitmap.Width, _drawingBitmap.Height); }
public void DrawingBitmap_FromTiff() { var bitmap = DrawingBitmapExtension.FromFile(_tifPath); }
public void DrawingBitmap_FromPng() { var bitmap = DrawingBitmapExtension.FromFile(_pngPath); }
public void DrawingBitmap_FromBitmap() { var bitmap = DrawingBitmapExtension.FromFile(_bmpPath); }
public void DrawingBitmap_FromJpeg() { var bitmap = DrawingBitmapExtension.FromFile(_jpgPath); }
public void ToEachClasses() { // bmp から作成した DrawingBitmap を各クラスに変換して、画素平均値を比較する using var bitmap = DrawingBitmapExtension.FromFile(_sourceBitmapPath); var avesBase = bitmap.GetChannelsAverage().ToList(); avesBase.Count.Is(3); // ToBitmapSource var bitmapSource0 = bitmap.ToBitmapSource1(); var aves00 = bitmapSource0.GetChannelsAverage().ToList(); aves00.Count.Is(4); aves00.Take(3).Is(avesBase); // bitmapSourceは 4ch なので 3ch に揃えて比較 var bitmapSource1 = bitmap.ToBitmapSource2(); var aves01 = bitmapSource1.GetChannelsAverage().ToList(); aves01.Count.Is(4); aves01.Take(3).Is(avesBase); // bitmapSourceは 4ch なので 3ch に揃えて比較 var bitmapSource2 = bitmap.ToBitmapSourceFast(); var aves02 = bitmapSource2.GetChannelsAverage().ToList(); aves02.Count.Is(4); aves02.Take(3).Is(avesBase); // bitmapSourceは 4ch なので 3ch に揃えて比較 // ToWriteableBitmap(BitmapSource) var writeable = bitmap.ToWriteableBitmap(); var aves10 = writeable.GetChannelsAverage().ToList(); aves10.Count.Is(3); aves10.Is(avesBase); bitmap.CopyToWriteableBitmap(writeable); var aves11 = writeable.GetChannelsAverage().ToList(); aves11.Count.Is(3); aves11.Is(avesBase); // ToImagePixelsContainer using var container = bitmap.ToImagePixelsContainer(); var pixels = container.Pixels; var aves20 = pixels.GetChannelsAverage().ToList(); aves20.Count.Is(3); aves20.Is(avesBase); bitmap.CopyToImagePixels(ref pixels); var aves21 = pixels.GetChannelsAverage().ToList(); aves21.Count.Is(3); aves21.Is(avesBase); // ToImageSharpBgr24 using var image = bitmap.ToImageSharpBgr24(); var aves30 = image.GetChannelsAverage().ToList(); aves30.Count.Is(3); aves30.Is(avesBase); }
public void GlobalSetup() { _drawingBitmap = DrawingBitmapExtension.FromFile(_sourceBitmapPath); _bitmapSource = BitmapSourceExtension.FromFile(_sourceBitmapPath); }