public static bool InitCaptcha(string prototxtPath, string modelPath, string mapPath, int gpuId, int batchSize) { byte[] deploy = Util.GetFileStream(prototxtPath); byte[] model = Util.GetFileStream(modelPath); CC.taskPool = CC.CreateTaskPoolByData(deploy, deploy.Length, model, model.Length, 1F, "", 0, 0F, gpuId, batchSize); CC.prototxt = System.Text.Encoding.Default.GetString(deploy); string[] mapFile = Util.LoadStringFromFile(mapPath).Trim().Split("\r\n".ToArray()); CC.map = new ArrayList(); for (int i = 0; i < mapFile.Length; i++) { if (mapFile[i].Length > 0) { CC.map.Add(mapFile[i]); } } string time_step = Util.GetMiddleString(CC.prototxt, "time_step:", "b").Trim(); string layer = Util.GetMiddleString(CC.prototxt, "inner_product_param {", "{"); string alphabet_size = Util.GetMiddleString(layer, "num_output:", "p").Trim(); CC.timeStep = int.Parse(time_step); CC.alphabetSize = int.Parse(alphabet_size); return(CC.taskPool != 0); }