Exemplo n.º 1
0
        /// <summary> calcAndShowSmoothImg
        /// Berechnung des Glaettungsbildes anhand des ausgewaehlten Filters
        /// </summary>
        /// <returns>true-Bild wurde gefiltert und angezeigt in GUI</returns>
        private bool calcAndShowSmoothImg()
        {
            outImg = null;
            showOutImg(); // altes ergbild loeschen
                          // ermittle den gewaehlten Filter:
            switch (cbSmoothFilter.SelectedIndex)
            {
            case (int)smoothFilterTyp.Median:
                currFilter = new CMedianFilter(
                    int.Parse(cbMaskSize.SelectedItem.ToString()));
                break;

            case (int)smoothFilterTyp.Gauss:
                currFilter = new CGaussFilter(
                    int.Parse(cbMaskSize.SelectedItem.ToString()));
                break;

            case (int)smoothFilterTyp.Mittelwert:
                currFilter = new CMidValFilter(
                    int.Parse(cbMaskSize.SelectedItem.ToString()));
                break;

            default:
                return(false);
            } // switch
            outImg = currFilter.Run(inImg);
            showOutImg(); // neues Ergbild anzeigen
            return(true);
        }
Exemplo n.º 2
0
        /// <summary> calcAndShowEdgeImg
        /// Berechnung des Kantenbildes anhand des ausgewaehlten Filters
        /// </summary>
        /// <returns>true-Bild wurde gefiltert und angezeigt in GUI</returns>
        private bool calcAndShowEdgeImg()
        {
            setProgressBarOn(true); // Anzeige in Statusleiste, das BV laeuft
            outImg = null;
            showOutImg();           // altes ergbild loeschen
                                    // ermittle den gewaehlten Filter:
            switch (cbEdgeFilter.SelectedIndex)
            {
            case (int)edgeFilterTyp.Laplace:
                currFilter = new CLaplaceFilter();
                break;

            case (int)edgeFilterTyp.Prewitt:
                currFilter = new CPrewittFilter();
                break;

            case (int)edgeFilterTyp.Sobel:
                currFilter = new CSobelFilter();
                break;

            default:
                setProgressBarOn(false);
                return(false);
            } // switch
            outImg = currFilter.Run(inImg); // Filterung
            showOutImg(); // neues Ergbild anzeigen
            setProgressBarOn(false);
            return(true);
        }