示例#1
0
        public void Creation_WeightedMean_FailWithContextSizeOutOfRange()
        {
            var    accumulator = new ConvolutionAccumulator_Float(CellPassConsts.NullHeight, ConvolutionMaskSize.Mask3X3);
            Action act         = () => _ = new WeightedMeanFilter <float>(accumulator, (ConvolutionMaskSize)100, 2.0, NullInfillMode.NoInfill);

            act.Should().Throw <ArgumentException>().WithMessage("Context size of 100 is out of range: 3..11");
        }
示例#2
0
        public void Creation_WeightedMean()
        {
            var accumulator = new ConvolutionAccumulator_Float(CellPassConsts.NullHeight, ConvolutionMaskSize.Mask3X3);
            var filter      = new WeightedMeanFilter <float>(accumulator, ConvolutionMaskSize.Mask3X3, 2.0, NullInfillMode.NoInfill);

            filter.Should().NotBeNull();
        }
示例#3
0
        public void Creation_WeightedMean_CenterWeightCorrect()
        {
            var accumulator = new ConvolutionAccumulator_Float(CellPassConsts.NullHeight, ConvolutionMaskSize.Mask3X3);
            var filter      = new WeightedMeanFilter <float>(accumulator, ConvolutionMaskSize.Mask3X3, 2.0, NullInfillMode.NoInfill);

            filter.Should().NotBeNull();

            filter.FilterMatrix[1, 1].Should().Be(2 / 10.0d);
        }