vb连接halcon读取图像

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

halcon基本,vb连接halcon读取图像,视频

halcon学习方法:安装完halcon之后,在开始里出现一些文档

quick_guide.pdf

快速入门halcon

hdevelop_users_guide.pdf

详细讲解在hdevelop中使用halcon,及hdevelop的操作

programmers_guide.pdf

详细讲解在高级语言中的使用halcon

reference_hdevelop.pdf

讲解各个算子、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、vb中使用halcon窗口加载图像

1.读取图像

[cpp]view plaincopyprint?

1.read_image (Lena, 'F:/image/lena.jpg')

2.get_image_size (Lena, Width, Height)

3.dev_close_window ()

4.dev_open_window (0, 0, Width/2, Height/2, 'black', WindowHandle)

5.set_display_font (WindowHandle, 14, 'mono', 'true', 'false')

6.dev_display (Lena)

7.disp_continue_message (WindowHandle, 'black', 'true')

8.stop ()

2.导出vb的bas代码

选择文件/导出,弹出

注意:此处选择使用halcon窗口

3.vb中调用read_image.bas

先看一下read_image.bas的内容,可知在需要的地方直接调用main即可

[vb]view plaincopyprint?

1....

2.

3.' Main procedure

4.Private Sub action()

5.

6. ' Local iconic variables

7. Dim ho_Lena As HUntypedObjectX

8.

9.

10. ' Local control variables

11. Dim hv_Width As Variant, hv_Height As Variant

12. Dim hv_WindowHandle As Variant

13.

14.

15. Call Op.ReadImage(ho_Lena, "F:/image/lena.jpg")

16. Call Op.GetImageSize(ho_Lena, hv_Width, hv_Height)

17. If COMExpWinHandleStack.IsOpen() Then

18. Op.CloseWindow (COMExpWinHandleStack.Pop())

19. End If

20. Call Op.SetWindowAttr("background_color", "black")

21. Call Op.OpenWindow(0, 0, Tuple.TupleDiv( _

22. hv_Width, 2), Tuple.TupleDiv(hv_Height, 2), 0, "", "", hv_WindowHandle)

23. COMExpWinHandleStack.Push (hv_WindowHandle)

24. Call set_display_font(hv_WindowHandle, 14, "mono", "true", "false")

25. If COMExpWinHandleStack.IsOpen() Then

26. Call Op.DispObj(ho_Lena, COMExpWinHandleStack.GetActive())

27. End If

28. Call disp_continue_message(hv_WindowHandle, "black", "true")

29. HDevelopStop

30.End Sub

31.

32.

33.

34.#If Not NO_EXPORT_APP_MAIN Then

35.Sub InitHalcon()

36. ' Default settings used in HDevelop

37. Call Op.SetSystem("do_low_error", "false")

38.End Sub

39.

40.Sub Main()

41. Call InitHalcon

42. Call action

43.End Sub

44.

45.#End If

3.1.新建一个exe 的project ,然后保存,然后添加read_image.bas 文件到此project

3.2.添加halcon/com 控件:选择project/components ,弹出的菜单中

3.3.在工具箱中会出现HWindowXCtrl 控件,拖进form1,然后再拖一个commandbutton,

双击

commanbutton,加入代码 [vb] view plaincopyprint? 3. End Sub Private Sub Command1_Click()

Call Main 3.4.按F5运行程序,然后单击command1,弹出 这是一个halcon 界面库构造的窗口,脱离vb 窗口的。 、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、 vb 中使用hwindowxctrl 的窗口加载图像 在上面第2步选择使用导出模板。 导出的代码如下,可知需要调用的过程是inithalcon 和runhalcon [vb] view plaincopyprint? 1. ... 2. ' Main procedure 3. Private Sub action() 4. 5. ' Local iconic variables 6. Dim ho_Lena As HUntypedObjectX 7. 8. 9. ' Local control variables 10. Dim hv_Width As Variant, hv_Height As Variant 11. Dim hv_WindowHandle As Variant 12. 13. Call Op.ReadImage(ho_Lena, "F:/image/lena.jpg") 14. Call Op.GetImageSize(ho_Lena, hv_Width, hv_Height)

相关文档
最新文档