halcon做好图像采集,在VS2015中的WinForm界面上显示,未来做运动控制、串口通信等都是需要halcon联合WinForm界面的,这里就先从基础的开始,话不多说,直奔主题。
第一步:做好halcon图像采集算法并将其导出为C#代码。
打开VS2015选择Windows窗体应用程序并设置命名工程名称与保存路径。如下图:
可以看到一个类似于白板的窗体(适当拖动窗体大小),接着添加应用,如下如
单击引用在右击添加引用,引用的路径为halcon安装目录下的bin->dotnet35下的halcondotnet.dll(动态链接库),若不知道在哪里,可回到桌面右击halcon图标查看文件所在位置,然后回到VS215单击浏览按钮做如下图操作:
出现下图内容就说明添加成功了。
做好添加引用,点击工具箱去添加显示halcon窗体的控件,如下图:
常规选项在工具箱的最后面,右击常规单击选择项,弹出如下图的窗口:
单击浏览选择上一步路径下的halcondotnet.dll(动态链接库),确定后若出现如下图的内容说明添加成功,然后点击确认即可。
现在常规下面出现以下两个选项,如下图:
这里单击第二个且按住放到白板上,如下图:
这样关于联合halcon的界面内容就做完了,接下来就是布置界面,如下图:
强调:定时器的响应周期设置为40ms。
第二步:从halcon中导出C#
首先是图像的实时采集代码(借助图像采集助手),代码如下:
* Image Acquisition 01: Code generated by Image Acquisition 01
open_framegrabber ('DirectShow', 1, 1, 0, 0, 0, 0, 'default', 8, 'gray', -1, 'false', 'default', '[1] ', 0, -1, AcqHandle)
grab_image_start (AcqHandle, -1)
dev_close_window () //手动添加
dev_open_window (0, 0, 512, 512, 'black', WindowHandle) //手动添加
while (true)
grab_image_async (Image, AcqHandle, -1)
dev_display (Image)
get_image_size (Image, Width, Height)