二手交易平台 网站开发软件项目外包平台
web/
2025/9/27 21:19:06/
文章来源:
二手交易平台 网站开发,软件项目外包平台,一尊网 又一个wordpress站点,食品网站建设风格HALCON示例程序autobahn高速公路车道识别程序剖析
小哥哥小姐姐觉得有用点个赞呗#xff01;
示例程序源码#xff08;加注释#xff09;
*关闭halcon窗口的实时更新 dev_update_window (‘off’) *关闭halcon图形窗口 dev_close_window () *打开图形窗口 *dev_open_win…HALCON示例程序autobahn高速公路车道识别程序剖析
小哥哥小姐姐觉得有用点个赞呗
示例程序源码加注释
*关闭halcon窗口的实时更新 dev_update_window (‘off’) *关闭halcon图形窗口 dev_close_window () *打开图形窗口 *dev_open_window (窗口起始坐标Y, 窗口起始坐标X, 窗口宽度, 窗口高度, 背景颜色, 窗口句柄) /这个窗口句柄就是窗口的名字我们在一个程序或者软件中可能会打开好多个窗口窗口1、窗口2、窗口。。。现在我们希望在窗口5中显示一张图片电脑怎么知道我们想显示在哪里呢就是通过不同窗口的窗口句柄得到的。使用方法很简单下面有显示的算子使用用到了会说一下。/ dev_open_window (0, 0, 768, 575, ‘black’, WindowID) *halcon的赋值语句不是直接‘’就OK了要在‘’前加一个‘’ MinSize : 30 *获取halcon系统的信息 get_system (‘init_new_image’, Information) *设置halcon系统的信息 set_system (‘init_new_image’, ‘false’) *gen_grid_region 创建一个由线条或像素构成的区域。 *函数原型gen_grid_regionRegionGridRowStepsColumnStepsTypeWidthHeight ? /算子gen_grid_region创建由线Type ‘lines’或像素Type ‘points’构成的网格。在’线’的情况下返回连续的线如果’点’只有线的交叉点。从像素0,0到像素高度-1宽度-1开始网格在行方向上的步进宽度RowSteps和列方向上的ColumnSteps构建。在“行”模式下RowStepsColumnSteps分别可以设置为零。在这种情况下仅分别创建列行。/ gen_grid_region (Grid, MinSize, MinSize, ‘lines’, 512, 512) *clip_region - 将区域剪切为矩形。 *clip_regionRegionRegionClippedRow1Column1Row2Column2 ? /Region要剪切的区域RegionClipped剪切完成的结果Row1起始YColumn1起始XRow2终止YColumn2终止X。/ clip_region (Grid, StreetGrid, 130, 10, 450, 502) *设置显示线宽 dev_set_line_width (3) **设置显示线的颜色 dev_set_color (‘green’) *读取图片 *read_image (读入图片命名, ‘路径’) read_image (ActualImage, ‘autobahn/scene_00’) *在窗口显示刚刚读入的图片 dev_display (ActualImage) *停止程序为了方便看一下读入图片 stop () *显示刚刚使用clip_region剪切过后的用gen_grid_region生成的网格 dev_display (StreetGrid) stop () *halcon的for循环等同于 *fori0i28;ii1 *{ *} for i : 0 to 28 by 1 read_image (ActualImage, ‘autobahn/scene_’ (i$‘02’)) *将图片与区域求交集减少图片处理范围的大小可以使程序运行速度变快 *reduce_domain (图片, 区域, 求交集后的图片) reduce_domain (ActualImage, StreetGrid, Mask) *sobel_amp - 使用Sobel算子检测边缘 sobel_amp (Mask, Gradient, ‘sum_abs’, 3) *选取边缘检测后的像素值在20-255的区域 threshold (Gradient, Points, 20, 255) *dilation_rectangle1 - 使用矩形结构元素扩展区域。 dilation_rectangle1 (Points, RegionDilation, MinSize, MinSize) *将拓展后的区域与读入的原图求交集 reduce_domain (ActualImage, RegionDilation, StripGray) *选取像素值介于190-255的像素 threshold (StripGray, Strip, 190, 255) *填充孔洞 fill_up (Strip, RegionFillUp) *显示 dev_display (ActualImage) dev_display (RegionFillUp) endfor dev_set_line_width (1) dev_update_window (‘on’) set_system (‘init_new_image’, Information)
处理思路
在这个例子当中个人感觉对自己启发最大的就是使用网格与图像做交集从而进行快速的图像处理。 首先利用车的前视视角区域大致固定这一特性创建定义域。为了减少路面的干扰加快处理速度又使用网格对图像再进行一次压缩。在处理过程中采用了Sobel算子检测边缘之后进行简单的阈值筛选得到边缘。得到边缘之后为了得到完整的白线的图像进行了对选中的边缘区域使用矩形元素进行膨胀得到白线所在的区域。最后对区域进行简单的二值化筛选就OK啦这是一个非常非常简单的例子主要是处理思路慢慢学习的一个过程。
后记
大家有什么问题可以向我提问哈我看到了第一时间回复希望在学习的路上多多结交良师益友。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/80979.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!