HALCON高级篇:矫正图像

矫正图像

对于Blob分析或者OCR的应用,具有不变形的图像是很有必要的。假设一个OCR已经基于不变形图像数据被训练,然后,它将不能识别变形很严重的字符。在这样的情况下,图像数据必须被矫正,如在OCR应用之前,镜头和透视畸变必须被消除。

转换图像到WCS

算子image_to_world_plane通过将其转化到测量平面来矫正一张图像,例如WCS中z=0的平面。被矫正的图像没有镜头和透视畸变。其对应一张被没有镜头畸变的相机拍摄的图像,看起来是垂直于测量平面的。

如果超过一张图像必须被矫正,一张映射图可以用算子gen_image_to_world_plane_map来确定下来,其类似于运用image_to_world_plane;接着就是用算子map_image进行的图像的实际转换。

在图1中,WCS已经被定义,矫正图像的左上角对应于输入图像的左上角。为了描述它,在图1中被矫正图像的整个域被展示出来,其被转换到输入图像的虚拟图像面上。就像看到的那样,输入图像和矫正后图像映射的左上角是一致的。

图1图像到测量平面的映射

需要注意的是,它也是有可能的,通过定义WCS,被矫正图像不位于或者仅仅部分位于成像区域。矫正图像的域被设定仅仅包含位于在成像区域的这些像素。,如灰度信息是可行的。在图2中,WCS已经被定义,这样矫正图像的左上角位于成像区域的外面。为了描述它,对于部分没有灰度值信息的矫正图像被展示位黑色的灰度。图2中,矫正图像的整个域被展示,其被转化到输入图像的虚拟图像面上。可以看到,对于矫正图像的左上角,没有任何的图像信息。

图2:图像到测量平面的映射,矫正图像的一部分位于图像区域的外面

如果几张图像需要用相同的相机参数来矫正,算子gen_image_to_world_plane_map结合map_image比image_to_world_plane更高效,应该转化仅仅一次就可以确定下来。在这种情况下,首先通过算子gen_image_to_world_plane_map来产生一个映射图,其描述了图像平面和世界平面之间的转换。然后,这个图被算子map_image利用去高效的转换图像。



转载自:老白说图像

https://author.baidu.com/home?from=bjh_article&app_id=1660654292867942



本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

会员中心
搜索
«    2024年4月    »
1234567
891011121314
15161718192021
22232425262728
2930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864