初学halcon,遇到的dev_open_window的问题

本文记录了作者初次使用halcon进行CNC工件角度检测时遇到的dev_open_window问题。在尝试使用halcon软件和通过gcc编译halcon生成的Linux程序时,发现窗口与图像大小不匹配导致图像显示异常。通过将dev_open_window函数改为dev_open_window_fit_size,成功解决了图像匹配问题。
摘要由CSDN通过智能技术生成

第一次接触halcon,想使用halcon检测CNC工件的角度

如下图所示的工件


这是我在halcon软件中直接运行时得到的摄像头反馈的视频图像

这是我使用的代码

* Image Acquisition 01: Code generated by Image Acquisition 01
dev_update_window ('off')
dev_close_window()
open_framegrabber ('Video4Linux2', 640, 480, 0, 0, 0, 0, 'progressive', 8, 'gray', -1, 'false', 'auto', 'default', 0, -1, AcqHandle)
dev_open_window_fit_size (0, 0, 640, 480, 'black', WindowHandle)
grab_image_start (AcqHandle, -1)
while (true)
    grab_image_async (Image, AcqHandle, -1)
    dev_display (Image)
    * Image Acquisition 01: Do something
endwhile
close_framegrabber (AcqHandle)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Halcon中的 `dev_open_window` 函数用于打开一个图形化显示窗口来显示图像或其他图形对象。它的完整语法如下: ```cpp dev_open_window(Rectangle, Width, Height, WindowHandle, WindowType, Options) ``` 其中各个参数的含义如下: - `Rectangle`:一个由 4 个整数组成的矩形,指定了图形窗口在屏幕上的位置和大小。具体来说,它包含四个元素 `(Row1, Col1, Row2, Col2)`,分别表示窗口的左上角和右下角所在的行列坐标。如果将它设置为 `[]`,则表示将窗口置于屏幕的中央位置。 - `Width`:一个整数,指定了图形窗口的宽度,单位为像素。 - `Height`:一个整数,指定了图形窗口的高度,单位为像素。 - `WindowHandle`:一个可选的整数,指定窗口的句柄。如果将其设置为 `[]`,则表示函数将创建一个新的窗口并返回其句柄。 - `WindowType`:一个字符串,指定了要创建的窗口类型。可以是以下字符串之一:'byte', 'real', 'int1', 'int2', 'int4', 'int8', 'uint2', 'uint4', 'uint8', 'string', 'any', 'image', 'graphics', 'histogram', 'xyplot', 'icon', 'button', 'trackbar', 'trackbar2', 'menu', 'toolbar', 'statusbar', 'mdi', 'mdi_child', 'mdi_tab', 'mdi_tab_child', 'mdi_tab_form', 'mdi_tab_child_form', 'mdi_tab_child_graphic', 'mdi_tab_child_image', 'mdi_tab_child_statistics', 'mdi_tab_child_text', 'mdi_tab_statistics', 'mdi_tab_text'。具体含义请参考 Halcon 的帮助文档。 - `Options`:一个字符串,指定了窗口的选项。可以是以下字符串之一:'background_color', 'background_color_name', 'visible', 'stay_on_top', 'no_title', 'no_frame', 'no_button', 'no_scroll', 'no_zoom', 'no_save', 'no_restore', 'no_delete', 'no_sizemove', 'no_minimize', 'no_maximize', 'no_close', 'border', 'color', 'colormap', 'scale_unit', 'scale_min', 'scale_max', 'scale_tick', 'scale_box', 'scale_box_color', 'scale_font', 'scale_font_size', 'caption', 'caption_color', 'caption_font', 'caption_font_size', 'title', 'title_color', 'title_font', 'title_font_size'。具体含义请参考 Halcon 的帮助文档。 需要注意的是,`dev_open_window` 函数还可以通过修改全局变量 `HDevWindowStack` 来控制窗口的堆栈行为。关于 `HDevWindowStack` 的详细用法请参考 Halcon 的帮助文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值