private void btn_Grabcut_Click(object sender, EventArgs e) { bDrawMode = !bDrawMode; OeipRect rect = new OeipRect(); if (personBox != null && personBox.Length > 0) { rect = personBox[0].rect; } VideoPipe.ChangeGrabcutMode(bDrawMode, ref rect); }
private void OnGrabCut() { Loom.RunAsync(() => { bDrawMode = !bDrawMode; OeipRect rect = new OeipRect(); if (personBox != null && personBox.Length > 0) { rect = personBox[0].rect; } cameraView.VideoPipe.ChangeGrabcutMode(bDrawMode, ref rect); }); }
// Start is called before the first frame update void Start() { setting = SettingManager.Instance.Setting; OeipManager.Instance.OnLogEvent += Instance_OnLogEvent; //绑定Camera UI objBindCamera.Bind(setting.cameraSetting, cameraSelectPanel); objBindCamera.GetComponent <DropdownComponent>("CameraIndex").SetFillOptions(true, OeipManagerU3D.Instance.GetCameras); objBindCamera.GetComponent <DropdownComponent>("FormatIndex").SetFillOptions(true, OeipManagerU3D.Instance.GetFormats); objBindCamera.OnChangeEvent += ObjBindCamera_OnChangeEvent; //cameraView管线返回设置 cameraView.VideoPipe.Pipe.OnProcessEvent += Pipe_OnProcessEvent; //绑定GrabCut设置 objBindGrabcut.Bind(setting.videoParamet, grabCutPanel); cameraView.VideoPipe.UpdateVideoParamet(setting.videoParamet); objBindGrabcut.OnChangeEvent += ObjBindGrabcut_OnChangeEvent; //加载神经网络 btnLoadNet.onClick.AddListener(() => { Loom.RunAsync(() => { darknetParamet.bLoad = 1; darknetParamet.confile = Path.GetFullPath(Path.Combine(Application.dataPath, "../../ThirdParty/yolov3-tiny-test.cfg")); darknetParamet.weightfile = Path.GetFullPath(Path.Combine(Application.dataPath, "../../ThirdParty/yolov3-tiny_745000.weights")); darknetParamet.thresh = 0.3f; darknetParamet.nms = 0.3f; darknetParamet.bDraw = 1; darknetParamet.drawColor = OeipHelper.getColor(1.0f, 0.1f, 0.1f, 0.8f); cameraView.VideoPipe.UpdateDarknetParamet(ref darknetParamet); }); }); //Grabcut 扣像 btnGrabcut.onClick.AddListener(() => { Loom.RunAsync(() => { bDrawMode = !bDrawMode; OeipRect rect = new OeipRect(); if (personBox != null && personBox.Length > 0) { rect = personBox[0].rect; } cameraView.VideoPipe.ChangeGrabcutMode(bDrawMode, ref rect); }); }); }
public void ChangeGrabcutMode(bool bDrawSeed, ref OeipRect rect) { grabcutParamet.bDrawSeed = bDrawSeed ? 1 : 0; grabcutParamet.rect = rect; Pipe.UpdateParamet(GrabcutIndex, grabcutParamet); }