private void cameraSlaveCapture(object source, CameraBridgeEventArgs e) { var tick = DateTime.Now; #if (DEMO) e.ImageSlave = methods.common.mirror((Bitmap)e.ImageMaster); #endif Bitmap back = (Bitmap)e.ImageSlave;//Flokal.Common.Methods.Image.Clone( (Bitmap)e.ImageSlave); if (countFrameOfSlave++ == 0) { testIfCameraSetCorrect(back, "Slave"); } try { if (cbCamMS.Checked) { detectorSlave.Core(back, tick); } } catch (Exception ex) { // to-do: must solve problem read data from cameras // Flokal.Protocol.Logging.Error("FormLifeMS.cameraSlaveCapture(/*async*/): " + ex.Message); } }
//private void Button1_Click(object sender, EventArgs e) //{ // if (button1.Text.Contains("start")) // { // drv = new IDSMS(); // drv.Init(0, -1, -1, 24, null, pbMC.Handle); // drv.TurnON(); // //drv .SetParamFromIni("4103043267.ini"); // drv.ImageCaptured += new Flokal.Camera.CameraBridgeEventHandler(CameraCapture); // button1.Text = "stop"; // } // else // { // drv.TurnOFF(); // drv.Release(); // button1.Text = "start"; // } //} private void CameraCapture(object source, CameraBridgeEventArgs e) { var front = (Bitmap)e.ImageMaster; var back = (Bitmap)e.ImageSlave; pbMC.Image = Flokal.Common.Methods.Image.Clone(front); DateTime start = DateTime.Now; #if (CV) Image <Gray, Byte> image1 = DetectRedCV(front); Image <Gray, Byte> image2 = DetectRedCV(back); Image <Gray, Byte> image = image1 | image2; pbMB.Image = image.ToBitmap(); #else BitmapData frontData = front.LockBits( new Rectangle(0, 0, front.Width, front.Height), ImageLockMode.ReadWrite, PixelFormat.Format24bppRgb); // pictureBox2.Image = RedThresholdTypeoldB(frontData, out res, 0,front.Height ,0,0, H, S, V /*, fr, till*/); front.UnlockBits(frontData); #endif duration = DateTime.Now - start; }
private void emulationZeroSample4Slave() { List <Bitmap> b = common.generateSample(cfg); foreach (var l in b) { var BridgeBetweenDrvAndApp = new CameraBridgeEventArgs(); BridgeBetweenDrvAndApp.ImageSlave = l; cameraSlaveCapture(drv, BridgeBetweenDrvAndApp); } Task.Delay(500).Wait(); bvSlave.clear(); bvSlave.refresh(); countSampleSlaveBad--; HidController.Controller.Blow(0, false); // HidController.Controller.SensorsClear(); }
private void cameraCapture(object source, CameraBridgeEventArgs e) { try { new Task(() => { cameraMasterCapture(source, e); }).Start(); new Task(() => { cameraSlaveCapture(source, e); }).Start(); if (countFrameOfMaster % 10 == 0) { toolStripStatusLabelFps.Text = (currBitmapSlave != null) ? $"FPS master:{e.FrameNumber},slave:{e.BPP}" : $"FPS:{e.FrameNumber}"; } } catch (Exception exception) { Flokal.Protocol.Logging.Error("FormLifeMS.cameraCapture(): " + exception.Message); } }
private void fixedImageToolStripMenuItem_Click(object sender, EventArgs e) { start(false); countFrameOfMaster = countFrameOfSlave = 0; List <Bitmap> listOfLines = methods.common.PrepareLinesBitmaps(/*@"..\..\..\..\merge" + inx + ".jpg"*/); foreach (var item in listOfLines) { var arg = new CameraBridgeEventArgs(); arg.ImageMaster = (Bitmap)item; arg.ImageSlave = methods.common.mirror(item); cameraCapture(sender, arg); } stop(); MessageBox.Show($"master done {countFrameOfMaster} lines, error {countBadFrameOfMaster}\n slave done {countFrameOfSlave} lines, error {countBadFrameOfSlave}"); // MSCompare(); }
private void cameraMasterCapture(object source, CameraBridgeEventArgs e) { var tick = DateTime.Now; Bitmap front = (Bitmap)e.ImageMaster; //Flokal.Common.Methods.Image.Clone((Bitmap)e.ImageMaster); if (countFrameOfMaster++ == 0) { testIfCameraSetCorrect(front, "Master"); } try { if (!checkBoxIsUseCore.Checked) { detectorMaster.Core(front, tick); } } catch (Exception ex) { // to-do: must solve problem read data from cameras // Flokal.Protocol.Logging.Error("FormLifeMS.cameraMasterCapture(/*async*/): " + ex.Message); } }