/// <summary> /// Download and initialize the facial landmark detector /// </summary> /// <param name="onDownloadProgressChanged">Callback when download progress has been changed</param> /// <returns>Async task</returns> public async Task Init(System.Net.DownloadProgressChangedEventHandler onDownloadProgressChanged = null) { if (_facemark == null) { FileDownloadManager manager = new FileDownloadManager(); manager.AddFile( "https://raw.githubusercontent.com/kurnianggoro/GSOC2017/master/data/lbfmodel.yaml", "facemark", "70DD8B1657C42D1595D6BD13D97D932877B3BED54A95D3C4733A0F740D1FD66B"); if (onDownloadProgressChanged != null) { manager.OnDownloadProgressChanged += onDownloadProgressChanged; } await manager.Download(); if (manager.AllFilesDownloaded) { using (FacemarkLBFParams facemarkParam = new CV.Face.FacemarkLBFParams()) { _facemark = new FacemarkLBF(facemarkParam); _facemark.LoadModel(manager.Files[0].LocalFile); } } } }
private void InitFacemark() { if (_facemark == null) { InitPath(); String facemarkFileName = "lbfmodel.yaml"; String facemarkFileUrl = "https://raw.githubusercontent.com/kurnianggoro/GSOC2017/master/data/"; String facemarkFileLocal = DnnPage.DnnDownloadFile( facemarkFileUrl, facemarkFileName, _path); using (FacemarkLBFParams facemarkParam = new CV.Face.FacemarkLBFParams()) { _facemark = new CV.Face.FacemarkLBF(facemarkParam); _facemark.LoadModel(facemarkFileLocal); } } }
public async Task Init(System.Net.DownloadProgressChangedEventHandler onDownloadProgressChanged = null) { if (_facemark == null) { FileDownloadManager manager = new FileDownloadManager(); manager.AddFile("https://raw.githubusercontent.com/kurnianggoro/GSOC2017/master/data/lbfmodel.yaml", "facemark"); if (onDownloadProgressChanged != null) { manager.OnDownloadProgressChanged += onDownloadProgressChanged; } await manager.Download(); using (FacemarkLBFParams facemarkParam = new CV.Face.FacemarkLBFParams()) { _facemark = new FacemarkLBF(facemarkParam); _facemark.LoadModel(manager.Files[0].LocalFile); } } }