• 简介:检测暗色图像中的色差故障,展示了如何检测模糊图像中的不均匀色差缺陷,选择缺陷·为·黑色部分

  • 初始化
    dev_close_window ()
    dev_update_off ()
    *这一句包含如下三个算子:*dev_updata_pc(‘off’)关闭更新程序计数器
    *dev_updata_var(‘off’)关闭更新变量窗口
    *dev_updata_window(‘off’) 关闭更新图像窗口
    Path := ‘lcd/mura_defects_blur_’
    *path道路,定义图片所在路径
    read_image (Image, Path + ‘01’)
    *参数说明:为读入图片命名(Image)文件名(’01’)
    get_image_size (Image, Width, Height)
    *将打开一个新的图形窗口,该窗口保持给定图像大小的长宽比
    dev_open_window_fit_size (0, 0, Width, Height, 640, 480, WindowHandle)
    *( : : Row, Column, Width, Height, WidthLimit, HeightLimit : WindowHandle)
    *图形窗口左上角的位置(Row, Column)要显示的图像的宽度与高度(Width, Height)限制窗口宽度与高度(640, 480)新图形窗口句柄(WindowHandle)
    set_display_font (WindowHandle, 14, ‘mono’, ‘true’, ‘false’)
    *设置字体。窗口句柄(WindowHandle)字体大小(14)字体类型(’mono’)是否黑体(’ture’)是否倾斜(’false’)
    dev_set_draw (‘margin’)
    *//定义区域填充模式为(’Margin’或者’Fill’)
    dev_set_line_width (3)
    *设置输出区域轮廓线(圆圈)的线宽
    dev_set_color (‘red’)
    *设置圆圈颜色红色,可以一种或者多种
    ScaleFactor := 0.4
    *比例因子
    calculate_lines_gauss_parameters (17, [25,3], Sigma, Low, High)
    *提取的行的最大宽度(17)提取的行的典型对比,若为两个值的元组,第二个值定义要提取的行的最小对比度,并且不能大于第一个值。
    *用于高斯参数(Sigma)用于高斯线提取的高、低参数(Low, High)
    for f := 1 to 3 by 1

    read_image (Image, Path + f$’.2i’)
    *读取检测图像
    decompose3 (Image, R, G, B)
    *将一个三通道图像转换为三个图像。decompose3(MultiChannelImage : Image1, Image2, Image3 : : )
    *

    • 正确的侧照明
      rft_generic (B, ImageFFT, ‘to_freq’, ‘none’, ‘complex’, Width)
      *对计算的一幅图片实部进行快速傅里叶变换。参数:输入的图片(B)傅里叶变换后输出的图片(ImageFFT)
      *变换正方向(’to_freq’或’from_freq’)变换因子的规范(’none’)输出图片的数据类型(’complex’)图片的宽(Width)
      gen_gauss_filter (ImageGauss, 100, 100, 0, ‘n’, ‘rft’, Width, Height)
      *生成一个频域高斯滤波器 频域高斯滤波器(ImageGauss)Sigma1,Sigma2(100,100)滤波器在空间域的主要方向(0)
      *滤波器的归一化因子(‘n’)直流项在频域中的位置(‘rft’)图像的宽度与高度(Width, Height)
      convol_fft (ImageFFT, ImageGauss, ImageConvol)
      *对转换后图片用滤波器在频域进行卷积运算。输入的图片(ImageFFT)频域滤波器(ImageGauss)运算后输出的结果(ImageConvol)
      rft_generic (ImageConvol, ImageFFT1, ‘from_freq’, ‘none’, ‘byte’, Width)
      **对滤波后的图片进行快速傅里叶反变换。输入的图片(ImageConvol)运算后结果( ImageFFT1)反向变换(’from_freq’)
      *变换的归一化因子(‘none’)输出图像的图像类型(‘byte’)输出图像的宽度(Width)
      sub_image (B, ImageFFT1, ImageSub, 2, 100)
      *子图像-减去两个图像。被减数(B)减数(ImageFFT1)处理结果(ImageSub)校正系数(2)改正值(100)
      *进行实际检验
      zoom_image_factor (ImageSub, ImageZoomed, ScaleFactor, ScaleFactor, ‘constant’)
      *按给定的因子缩放图像。输入图像(ImageSub)按比例缩小的图像(ImageZoomed)比例因子(ScaleFactor)插值类型(‘constant’)

    • 使用线条时避免边界效果
      get_domain (ImageZoomed, Domain)
      *获取图像的域。输入图像(ImageZoomed)定义输入图像的域(Domain)
      erosion_rectangle1 (Domain, RegionErosion, 7, 7)
      *用矩形结构元素侵蚀区域。被侵蚀的区域(Domain)侵蚀后的区域(RegionErosion)结构矩形的宽度高度(7, 7)
      reduce_domain (ImageZoomed, RegionErosion, ImageReduced)
      *减少图像的域。输入图像(ImageZoomed)新定义的域(RegionErosion)图像简化的域(ImageReduced)
      lines_gauss (ImageReduced, Lines, Sigma, Low, High, ‘dark’, ‘true’, ‘gaussian’, ‘true’)
      *检测线条及其宽度。输入图像(ImageReduced)提取行(Lines)应用高斯平滑量(Sigma)滞后阈值操作下上阈值(Low, High)
      *提取亮线或暗线(‘dark’)是否提取线宽(‘true’)用于修正线的位置和宽度的线模型(‘gaussian’)是否在不能提取的地方添加连接(‘true’)
      hom_mat2d_identity (HomMat2DIdentity)
      *生成齐次二维变换矩阵。变换矩阵(HomMat2DIdentity)
      hom_mat2d_scale_local (HomMat2DIdentity, 1 / ScaleFactor, 1 / ScaleFactor, HomMat2DScale)
      *向齐次二维变换矩阵添加缩放。变换矩阵(HomMat2DIdentity)沿着x、y轴的比例因子(1 / ScaleFactor, 1 / ScaleFactor)
      *输出变换矩阵(HomMat2DScale)
      affine_trans_contour_xld (Lines, Defects, HomMat2DScale)
      *对XLD等值线应用二维变换。输入XLD轮廓(Lines)改变后XLD轮廓(Defects)输入变换矩阵(HomMat2DScale)
      dev_display (Image)
      *在当前图形窗口中显示图像对象(Image)。
      dev_display (Defects)
      *在当前图形窗口中显示缺陷(Defects)。
      if (f < 3)
      disp_continue_message (WindowHandle, ‘black’, ‘true’)

      • 黑色字体如果设置为“true”,文本将写入一个白框中
        stop ()
        endif
        endfor

halcon缺陷检测学习2图像色差缺陷检测detect_mura_defects_blur相关推荐

  1. 9月5日关键点检测学习笔记——人体骨骼点检测:自顶向下

    文章目录 前言 一.常用数据集 二.评价体系 1.Bounding box IoU 2.Mask IoU 3.Object keypoint similarity(OKS) 三.Top-down 自顶 ...

  2. opencv 直线检测 java_OpenCV实现图像的直线检测

    上一篇博文介绍了图像的Canny边缘检测,本文主要介绍图像的直线检测部分,主要使用概率霍夫变换来检测直线,调用的函数为HoughLinesP(),下面给出代码部分以及直线检测效果图: 1.代码部分: ...

  3. 目标检测学习————Keras搭建yolo3目标检测平台

    Keras搭建yolo3目标检测平台 源码下载 yolo3实现思路 一.预测部分 二.训练部分 训练自己的yolo3模型 参考原文出处 点击进入https://blog.csdn.net/weixin ...

  4. 自动驾驶采标系列三:基于图像的目标检测技术

        标注猿的第54篇原创        一个用数据视角看AI世界的标注猿    上一篇文章我们从"环境感知"数据的采集设备上进行了详细说明,已经了解了相应设备采集的数据及采集前 ...

  5. 车辆行人检测学习笔记

    车辆行人检测学习笔记 1.目标检测&常见检测网络 目标检测:物体识别是要分辨出图片中有什么物体,输入是图片,输出是类别标签和概率.而目标检测不仅要检测图片中有什么物体,还要输出无异的外框(x, ...

  6. halcon缺陷检测学习3暗斑检测detect_mura_defects_texture

    这个例子展示了如何检测高纹理图像中的色差不均匀缺陷 实现高纹理图像中缺陷的检测(黑色). 缺陷的特征是暗斑.因此,通过从原始图像中减去估计的背景光照,缺陷变得更加明显 dev_close_window ...

  7. halcon缺陷检测学习7皮革·凹痕、磨损、刮伤缺陷inspect_leather_photometric_stereo

    本程序演示了使用光度立体技术对皮革样品的检查. *输入4张皮革样本的图片,光线来自不同的方向. 初始化 dev_update_off () dev_close_window () dev_open_w ...

  8. HALCON示例程序inspect_bottle_mouth.hdev玻璃瓶口缺陷检测

    HALCON示例程序inspect_bottle_mouth.hdev玻璃瓶口缺陷检测 示例程序源码(加注释) 定义变量并初始化 SmoothX := 501 ThresholdOffset := 2 ...

  9. HALCON示例程序check_blister_mixed.hedv药品胶囊缺陷检测

    HALCON示例程序check_blister_mixed.hedv药品胶囊缺陷检测 示例程序源码(加注释) 读入图片与显示相关设置 dev_close_window () read_image (I ...

最新文章

  1. 科学处理java.lang.StackOverflowError: null异常
  2. Matlab GUI 界面设计基础(1)
  3. linux shell实现go.mod迁移后版本号的更新问题(技能点:sed删除行自定义分隔符;文件的过滤后遍历)
  4. Vue Vuex todo举例
  5. HDOJ杭电2044
  6. qt 试用 (3)配置编译源代码及调试
  7. 2022年快手磁力金牛服饰行业营销洞察报告
  8. 【SAP业务模式】之ICS(三):前台操作
  9. 二叉搜索树bst_二进制搜索树(BST)–搜索插入和删除
  10. java treemarker_Java TreeMaker類代碼示例
  11. js基础-18-js中创建对象的几种方式
  12. SpringBoot+Redis+Lua防止(黑客)IP重复防刷攻击
  13. 如何下载微信公众号里面的视频?
  14. 北邮计算机自招,2019自主招生能报几所学校?深度解析90所自招院校限报!
  15. python麻将源码_a8贵州麻将源码 贵阳麻将a8源码 a8贵阳捉鸡源码
  16. 【C++】endl的作用
  17. 二次方程计算器-字符串处理
  18. [转载]Android实现更换皮肤功能
  19. Python获取Csdn扫码登录每日一句
  20. Windows 11配置WSL及Linux子系统安装

热门文章

  1. 备份一下java笔记
  2. 推荐一款 Kubernetes YAML 文件静态分析工具 KubeLinter
  3. 基于Ana conda的环境的Tensorflow安装
  4. 平台千万级订单推送实现
  5. Rickshaw是一个JavaScript工具箱,用于创建交互式时间序列图
  6. 荣耀wifi服务器未响应,荣耀路由器wifi连接成功,但无法使用怎么办?
  7. 王者荣耀8月25服务器维护,王者荣耀8月15日更新维护几点开始?王者荣耀更新维护多久...
  8. 计算机能换显卡吗,笔记本显卡能换吗?笔记本换显卡的方法
  9. threejs 热力图做成材质_d3.js 热力图 demo
  10. 连锁超市如何部署远程监控系统