private byte[,] CodeFilter(byte[,] bytes, CodeFilterItemViewModel filter) { if (filter.FilterArgs == null) { return(bytes); } int[] args = filter.FilterArgs.Split(',').Select(m => m.CastTo <int>()).ToArray(); switch (filter.FilterName) { case "Binaryzation": _code += $".Binaryzation({args[0]})"; return(bytes.Binaryzation((byte)args[0])); case "DeepFore": _code += $".DeepFore({args[0]})"; return(bytes.DeepFore((byte)args[0])); case "ClearNoiseRound": _code += $".ClearNoiseRound({args[0]}, {args[1]})"; return(bytes.ClearNoiseRound((byte)args[0], args[1])); case "ClearNoiseArea": _code += $".ClearNoiseArea({args[0]}, {args[1]})"; return(bytes.ClearNoiseArea((byte)args[0], args[1])); case "ClearBorder": _code += $".ClearBorder({args[0]})"; return(bytes.ClearBorder(args[0])); case "AddBorder": _code += $".AddBorder({args[0]}, {args[1]})"; return(bytes.AddBorder(args[0], (byte)args[1])); case "ClearGray": _code += $".ClearGray({args[0]},{args[1]})"; return(bytes.ClearGray((byte)args[0], (byte)args[1])); case "ToValid": _code += $".ToValid({args[0]})"; return(bytes.ToValid((byte)args[0])); } return(bytes); }