public void SeparaInterface_GetBufferAddress(int Index, out IntPtr pImgBufAddress) { pImgBufAddress = IntPtr.Zero; if (m_Buffers != null) { m_Buffers.GetAddress(Index, out pImgBufAddress); } }
private void m_Xfer_XferNotify(object sender, EventArgs e) { HImage hImage = new HImage(); IntPtr myptr; m_Buffers.GetAddress(out myptr); hImage.GenImage1("byte", m_Buffers.Width, m_Buffers.Height, myptr); ImageGrabbed(hImage); }
public void xfer_XferNotify(object sender, SapXferNotifyEventArgs argsNotify) { DateTime StartTime = DateTime.Now; //1.计算图像采集时间 if (firstFrame) { firstFrame = false; start = DateTime.Now.Second + (float)DateTime.Now.Millisecond / 1000; return; } end = DateTime.Now.Second + (float)DateTime.Now.Millisecond / 1000; duration = end - start; start = end; Console.WriteLine("图像采集时间:" + duration.ToString() + "秒\n"); Model.AcquisionImageTime[AcquisionImageCount] = duration; //2.图像缓存转化为halcon图像类型 int SubImageWidth = 13384; int SubImageHeight = 100;//7635 IntPtr dataAddress = IntPtr.Zero; bool Flag = m_Buffers.GetAddress(out dataAddress); if (!Flag) { MessageBox.Show("图像缓存获取失败!"); } AutoMachineDAL.DAL Dal = new AutoMachineDAL.DAL(); Model.RawImage = Dal.ImageProcessObject.ImagePtrToHobject(SubImageWidth, SubImageHeight, ref dataAddress); HOperatorSet.DispObj(Model.RawImage, Model.MainUI_Camera_WindowID); if (Model.SaveImageFlag) { SaveImage(Model.RawImage, true); } //CombinImage(CommonModuleClass.RawImage, SubImageWidth, SubImageHeight); //5.计算图像转换时间 DateTime EndTime = DateTime.Now; TimeSpan ts = EndTime - StartTime; double difference = ts.TotalSeconds; //秒单位 Console.WriteLine("图像转换时间:" + difference.ToString() + "秒\n"); }
private void cvProcess(SapBuffer buffer)//修改 { unsafe { IntPtr dataBufAddress; buffer.GetAddress(out dataBufAddress); //IntPtr imgdata = new IntPtr(img.data); if (2 == videoMode) { mChipDetection.ProcessImage(dataBufAddress, (UInt32)buffer.Width, (UInt32)buffer.Height); } //img.data } }
private void btnTest_Click(object sender, EventArgs e) { //************整个的处理******************// string picpath = "E:\\pic\\7.jpg"; SapBuffer picbuffer = null; picbuffer = new SapBuffer(picpath, SapBuffer.MemoryType.Default); picbuffer.Create(); picbuffer.Load(picpath, -1); IntPtr BufAddress; picbuffer.GetAddress(out BufAddress); mChipDetection.ProcessImage(BufAddress, (uint)picbuffer.Width, (uint)picbuffer.Height); lblwordx.Text = mChipDetection.realworldx.ToString(); lblwordy.Text = mChipDetection.realworldy.ToString(); }