// Download models and Create ailiaModel void CreateAdainNet(AiliaModel ailiaModelVgg, AiliaModel ailiaModelDecoder, bool gpu_mode = true) { string asset_path = Application.temporaryCachePath; string serverFolderName = "adain"; if (gpu_mode) { // call before OpenFile ailiaModelVgg.Environment(Ailia.AILIA_ENVIRONMENT_TYPE_GPU); ailiaModelDecoder.Environment(Ailia.AILIA_ENVIRONMENT_TYPE_GPU); } AiliaDownload ailia_download = new AiliaDownload(); ailia_download.DownloaderProgressPanel = UICanvas.transform.Find("DownloaderProgressPanel").gameObject; var urlList = new List <ModelDownloadURL>(); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = "adain-vgg.onnx.prototxt" }); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = "adain-vgg.onnx" }); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = "adain-decoder.onnx.prototxt" }); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = "adain-decoder.onnx" }); StartCoroutine(ailia_download.DownloadWithProgressFromURL(urlList, () => { modelPrepared = ailiaModelVgg.OpenFile(asset_path + "/adain-vgg.onnx.prototxt", asset_path + "/adain-vgg.onnx") & ailiaModelDecoder.OpenFile(asset_path + "/adain-decoder.onnx.prototxt", asset_path + "/adain-decoder.onnx"); })); }
// Download models and Create ailiaModel AiliaModel CreateAiliaNet(ImageSegmentaionModels modelType, bool gpu_mode = true) { string asset_path = Application.temporaryCachePath; string serverFolderName = ""; string prototxtName = ""; string onnxName = ""; switch (modelType) { case ImageSegmentaionModels.HRNetV2_W18_Small_v2: serverFolderName = "hrnet"; prototxtName = "HRNetV2-W18-Small-v2.onnx.prototxt"; onnxName = "HRNetV2-W18-Small-v2.onnx"; break; case ImageSegmentaionModels.HRNetV2_W18_Small_v1: serverFolderName = "hrnet"; prototxtName = "HRNetV2-W18-Small-v1.onnx.prototxt"; onnxName = "HRNetV2-W18-Small-v1.onnx"; break; case ImageSegmentaionModels.HRNetV2_W48: serverFolderName = "hrnet"; prototxtName = "HRNetV2-W48.onnx.prototxt"; onnxName = "HRNetV2-W48.onnx"; break; case ImageSegmentaionModels.hair_segmentation: serverFolderName = "hair_segmentation"; prototxtName = "hair_segmentation.opt.onnx.prototxt"; onnxName = "hair_segmentation.opt.onnx"; break; case ImageSegmentaionModels.pspnet_hair_segmentation: serverFolderName = "pspnet-hair-segmentation"; prototxtName = "pspnet-hair-segmentation.onnx.prototxt"; onnxName = "pspnet-hair-segmentation.onnx"; break; case ImageSegmentaionModels.deeplabv3: serverFolderName = "deeplabv3"; prototxtName = "deeplabv3.opt.onnx.prototxt"; onnxName = "deeplabv3.opt.onnx"; break; } ailiaModel = new AiliaModel(); if (gpu_mode) { // call before OpenFile ailiaModel.Environment(Ailia.AILIA_ENVIRONMENT_TYPE_GPU); } AiliaDownload ailia_download = new AiliaDownload(); ailia_download.DownloaderProgressPanel = UICanvas.transform.Find("DownloaderProgressPanel").gameObject; var urlList = new List <ModelDownloadURL>(); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = prototxtName }); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = onnxName }); StartCoroutine(ailia_download.DownloadWithProgressFromURL(urlList, () => { modelPrepared = ailiaModel.OpenFile(asset_path + "/" + prototxtName, asset_path + "/" + onnxName); })); return(ailiaModel); }
// Download models and Create ailiaModel AiliaModel CreateAiliaNet(ImageManipulationModels modelType, bool gpu_mode = true) { string asset_path = Application.temporaryCachePath; string serverFolderName = ""; string prototxtName = ""; string onnxName = ""; switch (modelType) { case ImageManipulationModels.SRResNet: serverFolderName = "srresnet"; prototxtName = "srresnet.opt.onnx.prototxt"; onnxName = "srresnet.opt.onnx"; break; case ImageManipulationModels.Noise2Noise: serverFolderName = "noise2noise"; prototxtName = "noise2noise_gaussian.onnx.prototxt"; onnxName = "noise2noise_gaussian.onnx"; break; case ImageManipulationModels.IlluminationCorrection: serverFolderName = "illnet"; prototxtName = "illnet.onnx.prototxt"; onnxName = "illnet.onnx"; break; case ImageManipulationModels.Colorization: serverFolderName = "colorization"; prototxtName = "colorizer.onnx.prototxt"; onnxName = "colorizer.onnx"; break; } ailiaModel = new AiliaModel(); if (gpu_mode) { // call before OpenFile ailiaModel.Environment(Ailia.AILIA_ENVIRONMENT_TYPE_GPU); } AiliaDownload ailia_download = new AiliaDownload(); ailia_download.DownloaderProgressPanel = UICanvas.transform.Find("DownloaderProgressPanel").gameObject; var urlList = new List <ModelDownloadURL>(); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = prototxtName }); urlList.Add(new ModelDownloadURL() { folder_path = serverFolderName, file_name = onnxName }); StartCoroutine(ailia_download.DownloadWithProgressFromURL(urlList, () => { modelPrepared = ailiaModel.OpenFile(asset_path + "/" + prototxtName, asset_path + "/" + onnxName); })); return(ailiaModel); }