区块链技术博客
www.b2bchain.cn

halcon测试篇:灰度变换(图像预处理)

这篇文章主要介绍了halcon测试篇:灰度变换(图像预处理)的讲解,通过具体代码实例进行17441 讲解,并且分析了halcon测试篇:灰度变换(图像预处理)的详细步骤与相关技巧,需要的朋友可以参考下https://www.b2bchain.cn/?p=17441

本文实例讲述了2、树莓派设置连接WiFi,开启VNC等等的讲解。分享给大家供大家参考文章查询地址https://www.b2bchain.cn/7039.html。具体如下:

halcon测试篇:灰度变换(图像预处理)

  • halcon测试篇:灰度变换(图像预处理)
    • 测试例代码
    • 执行效果
  • 注:转载注明出处

halcon测试篇:灰度变换(图像预处理)

在实际应用当中,不同的图像的功能需求各不相同,而在这些功能需求当中,由于图像的复杂性和不确定性,需要进行一些对对应图像灰度的前期预处理,再进行图像算法的后期操作。

测试例代码

dev_close_window ( ) dev_open_window (0, 0, 512, 512, 'black', WindowHandle)  * 使用这个算子会使每个算子执行的速度变快,但是变量值不会更新在控件上面. dev_update_off ( )  read_image (Myn, 'C:/Users/XC7Vampire/Desktop/MyN.png') rgb1_to_gray (Myn, GrayImage)  * 灰度值变换的目的是提高图像的对比度  * 1 --- [线性变换] * [0]add_image: 0.5*(GrayImage+GrayImage)+20 ==> g(x,y) = 0.5*f(x,y)+c add_image (GrayImage, GrayImage, g_image, 0.5, 20) * [1]invert_image: 图像取反. invert_image (g_image, ivert_image)  * [2]分段线性变换 get_domain (GrayImage, _domain_image) get_region_points (_domain_image, i_rows, i_columns) get_grayval (GrayImage, i_rows, i_columns, i_grayval) * 将灰度值大于200的全部变成100像素. for index := 0 to |i_grayval|-1 by 1     if (i_grayval[index] > 200)         i_grayval[index] := 100     endif endfor * 复制一个图像. copy_image (GrayImage, piecewise_image) set_grayval (piecewise_image, i_rows, i_columns, i_grayval)  * 1 --- [非线性变换] * .e.g: 常用的有对数函数(提高低范围的像素)和指数函数(提供高范围的像素) copy_image (GrayImage, log_image1) log_image(log_image1, log_image2, 'e') copy_image (GrayImage, exp_image1) exp_image(exp_image1, exp_image2, 'e')  * 2 --- [灰度直方图变换] copy_image (GrayImage, equ_image) * 直方图均衡化 equ_histo_image (equ_image, equ_image1) 

执行效果

下面贴出几张处理之后的效果图:

原图:
halcon测试篇:灰度变换(图像预处理)
图像增加亮度(add_image):
halcon测试篇:灰度变换(图像预处理)
图像取反(invert_image)
halcon测试篇:灰度变换(图像预处理)
本篇只提供方法思路,其他效果图可自行测试~

注:转载注明出处

https://blog.csdn.net/qq_49710945/article/details/109597707

本文转自互联网,侵权联系删除halcon测试篇:灰度变换(图像预处理)

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » halcon测试篇:灰度变换(图像预处理)
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们