public ColorSpaceConversion(ConversionType c) { //используем то, что у всех членов перечисления ConversionType указаны значения int type = (int)c / 2; int direction = (int)c % 2; switch (type) { case 0: ColorSpace = new HSV(); break; case 1: ColorSpace = new YCbCr(); break; case 2: ColorSpace = new GrayScale(); break; default: throw new ArgumentException("Unknown color space"); } IsForwardConversion = direction == 0; }
public WriteableBitmap GetImage(string _strImgName) { WriteableBitmap bitmap = null; switch (m_strCurImgName) { case ComInfo.IMG_NAME_EDGE_DETECTION: EdgeDetection edge = (EdgeDetection)m_imgProc; if (edge != null) { bitmap = edge.WriteableBitmap; } break; case ComInfo.IMG_NAME_GRAY_SCALE: GrayScale gray = (GrayScale)m_imgProc; if (gray != null) { bitmap = gray.WriteableBitmap; } break; case ComInfo.IMG_NAME_BINARIZATION: Binarization binarization = (Binarization)m_imgProc; if (binarization != null) { bitmap = binarization.WriteableBitmap; } break; case ComInfo.IMG_NAME_GRAY_SCALE_2DIFF: GrayScale2Diff gray2Diff = (GrayScale2Diff)m_imgProc; if (gray2Diff != null) { bitmap = gray2Diff.WriteableBitmap; } break; case ComInfo.IMG_NAME_COLOR_REVERSAL: ColorReversal colorReversal = (ColorReversal)m_imgProc; if (colorReversal != null) { bitmap = colorReversal.WriteableBitmap; } break; case ComInfo.IMG_NAME_GRAY_SCALE_DIFF: GrayScaleDiff grayDiff = (GrayScaleDiff)m_imgProc; if (grayDiff != null) { bitmap = grayDiff.WriteableBitmap; } break; default: break; } return(bitmap); }
/// <summary> /// モノクロボタンのクリックイベント /// </summary> /// <param name="s">オブジェクト</param> /// <param name="e">イベントのデータ</param> private async void OnClickBtnMono(object s, EventArgs e) { var gray = new GrayScale(); var bitmap = BitmapFactory.DecodeResource(Resources, Resource.Drawable.dog); var mutableBitmap = await Task.Run(() => gray.GoImageProcessing(bitmap)); var imageView = (ImageView)FindViewById(Resource.Id.image); imageView.SetImageBitmap(mutableBitmap.Copy(Bitmap.Config.Argb8888, false)); }
private void Grayscale_Click(object sender, RoutedEventArgs e) { try { var bitmap = GrayScale.ToGrayscale(originalImage); filteredImage.Source = GetBitmapSource(bitmap); } catch (OriginalImageDontExistException exception) { MessageBox.Show(exception.Message); } }
public bool SelectGoImgProc(ComImgInfo _comImgInfo, CancellationToken _token) { bool bRst = true; switch (_comImgInfo.CurImgName) { case ComInfo.IMG_NAME_EDGE_DETECTION: EdgeDetection edge = (EdgeDetection)m_imgProc; bRst = edge.GoImgProc(_token); break; case ComInfo.IMG_NAME_GRAY_SCALE: GrayScale gray = (GrayScale)m_imgProc; bRst = gray.GoImgProc(_token); break; case ComInfo.IMG_NAME_BINARIZATION: Binarization binarization = (Binarization)m_imgProc; binarization.Thresh = _comImgInfo.BinarizationInfo.Thresh; bRst = binarization.GoImgProc(_token); break; case ComInfo.IMG_NAME_GRAY_SCALE_2DIFF: GrayScale2Diff gray2Diff = (GrayScale2Diff)m_imgProc; bRst = gray2Diff.GoImgProc(_token); break; case ComInfo.IMG_NAME_COLOR_REVERSAL: ColorReversal colorReversal = (ColorReversal)m_imgProc; bRst = colorReversal.GoImgProc(_token); break; case ComInfo.IMG_NAME_GRAY_SCALE_DIFF: GrayScaleDiff grayDiff = (GrayScaleDiff)m_imgProc; bRst = grayDiff.GoImgProc(_token); break; default: break; } return(bRst); }
public Bitmap SelectGetBitmap(string _strImgName) { Bitmap bitmap = null; switch (_strImgName) { case ComInfo.IMG_NAME_EDGE_DETECTION: EdgeDetection edge = (EdgeDetection)m_imgProc; bitmap = edge.BitmapAfter; break; case ComInfo.IMG_NAME_GRAY_SCALE: GrayScale gray = (GrayScale)m_imgProc; bitmap = gray.BitmapAfter; break; case ComInfo.IMG_NAME_BINARIZATION: Binarization binarization = (Binarization)m_imgProc; bitmap = binarization.BitmapAfter; break; case ComInfo.IMG_NAME_GRAY_SCALE_2DIFF: GrayScale2Diff gray2Diff = (GrayScale2Diff)m_imgProc; bitmap = gray2Diff.BitmapAfter; break; case ComInfo.IMG_NAME_COLOR_REVERSAL: ColorReversal colorReversal = (ColorReversal)m_imgProc; bitmap = colorReversal.BitmapAfter; break; default: break; } return(bitmap); }
private void GrayScaleForm() { SetPnBg(GrayScale.MakeGrayscale(GrayScale.GetFormImage(this)), true, DockStyle.Fill); }
private void CipGrayScaleProc() { this._mutex.WaitOne(); Cip.Filters.GrayScale filterGray = new GrayScale(); Raster result = filterGray.ProcessWithoutWorker(this._undoList.GetCurrent()); this._undoList.Add(result); this._currentBitmap = result.ToBitmap(); this._bNeedUpdate = true; this._mutex.ReleaseMutex(); }
private void grayScaleToolStripMenuItem_Click(object sender, EventArgs e) { if (!backgroundWorkerCip.IsBusy) { ImageFilter filter = new GrayScale(); backgroundWorkerCip.RunWorkerAsync(filter); this.CalculateHistogram(); } }
public PaletteViewModel(IContainer container, SampleTextViewModel sampleTextViewModel) { _container = container; SampleTextViewModel = sampleTextViewModel; BaseColorBrush = Observable.CombineLatest( RedValue, GreenValue, BlueValue, (r, g, b) => new SolidColorBrush(new Color { R = r, G = g, B = b, A = 255 })) .ToReactiveProperty <SolidColorBrush>() ; BaseColorBrush.Subscribe(x => { BaseColorBrush.Value.Freeze(); var hsl = HslColor.FromRgb(x.Color); ForegroundBrush.Value = hsl.L < 0.55 ? new SolidColorBrush(Colors.White) : new SolidColorBrush(Colors.Black); CreatePalette(x); ColorCode.Value = x.Color.R.ToString("x2") + x.Color.G.ToString("x2") + x.Color.B.ToString("x2"); }); ColorCode.Subscribe(x => { if (x.Length == 6) { RedValue.Value = byte.Parse(x.Substring(0, 2), System.Globalization.NumberStyles.HexNumber); GreenValue.Value = byte.Parse(x.Substring(2, 2), System.Globalization.NumberStyles.HexNumber); BlueValue.Value = byte.Parse(x.Substring(4, 2), System.Globalization.NumberStyles.HexNumber); } }); ToHtmlCommand.Subscribe(() => { using (var scope = _container.OpenScope()) { ClearFlash(); var service = scope.Resolve <HtmlGenerator>(); var content = service.Generate( PrimaryColors, ComplementalColors, AnalogousColors1, AnalogousColors2, TriadicColors1, TriadicColors2, VariantColors1, VariantColors2, WarningColors, ErrorColors, GrayScale ); Clipboard.SetText(content); ShowFlash("クリップボードにコピーしました。"); } }); ToCssCommand.Subscribe(() => { using (var scope = _container.OpenScope()) { ClearFlash(); var service = scope.Resolve <CssGenerator>(); var content = service.Generate( PrimaryColors.Reverse(), ComplementalColors.Reverse(), AnalogousColors1.Reverse(), AnalogousColors2.Reverse(), TriadicColors1.Reverse(), TriadicColors2.Reverse(), VariantColors1.Reverse(), VariantColors2.Reverse(), WarningColors.Reverse(), ErrorColors.Reverse(), GrayScale.Reverse() ); Clipboard.SetText(content); ShowFlash("クリップボードにコピーしました。"); } }); ToWpfResourceCommand.Subscribe(() => { using (var scope = _container.OpenScope()) { ClearFlash(); var service = scope.Resolve <WpfResourceGenerator>(); var content = service.Generate( PrimaryColors.Reverse(), ComplementalColors.Reverse(), AnalogousColors1.Reverse(), AnalogousColors2.Reverse(), TriadicColors1.Reverse(), TriadicColors2.Reverse(), VariantColors1.Reverse(), VariantColors2.Reverse(), WarningColors.Reverse(), ErrorColors.Reverse(), GrayScale.Reverse() ); Clipboard.SetText(content); ShowFlash("クリップボードにコピーしました。"); } }); SelectColorCommand.Subscribe(brush => { SampleTextViewModel.SelectColorCommand.Execute(brush); }); }