예제 #1
0
        public void SelectDebayer(int downscale)
        {
            lock (this)
            {
                Debayer newDebayer = null;

                switch (downscale)
                {
                case 0:
                    newDebayer = new DebayerBilinear();
                    break;

                default:
                    newDebayer = new DebayerHalfRes(1 << (downscale - 1));
                    break;
                }

                newDebayer.BlackLevel            = Debayer.BlackLevel;
                newDebayer.WhiteLevel            = Debayer.WhiteLevel;
                newDebayer.Brightness            = Debayer.Brightness;
                newDebayer.Saturation            = Debayer.Saturation;
                newDebayer.CamMatrix             = Debayer.CamMatrix;
                newDebayer.WhiteBalance          = Debayer.WhiteBalance;
                newDebayer.UseCorrectionMatrices = Debayer.UseCorrectionMatrices;

                Debayer = newDebayer;
            }
        }
예제 #2
0
        public void SelectDebayer(int downscale)
        {
            lock (this)
            {
                Debayer newDebayer = null;

                switch (downscale)
                {
                    case 0:
                        newDebayer = new DebayerBilinear();
                        break;
                    default:
                        newDebayer = new DebayerHalfRes(1 << (downscale - 1));
                        break;
                }

                newDebayer.BlackLevel = Debayer.BlackLevel;
                newDebayer.WhiteLevel = Debayer.WhiteLevel;
                newDebayer.Brightness = Debayer.Brightness;
                newDebayer.Saturation = Debayer.Saturation;
                newDebayer.CamMatrix = Debayer.CamMatrix;
                newDebayer.WhiteBalance = Debayer.WhiteBalance;
                newDebayer.UseCorrectionMatrices = Debayer.UseCorrectionMatrices;

                Debayer = newDebayer;
            }
        }