python polar contour_Halcon极坐标转换,图文解说,含点坐标的转换

本文介绍如何使用极坐标变换处理圆形图像,实现字符识别与关键区域提取。通过HALCON中的算子进行极坐标展开与逆变换,并展示具体实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

极坐标的用途

把圆形的图片转换为矩形,便于字符识别和关键区域的提取。

在halcon中对应的算子

(1)极坐标的展开:polar_trans_image_ext(Image : PolarTransImage : Row, Column, AngleStart, AngleEnd, RadiusStart, RadiusEnd, Width, Height, Interpolation : )

(2)极坐标的逆变换:polar_trans_image_inv(PolarImage : XYTransImage : Row, Column, AngleStart, AngleEnd, RadiusStart, RadiusEnd, Width, Height, Interpolation : )

其中:Row, Column分别为圆环的中心行列坐标, AngleStart, AngleEnd为起始和终止的角度值,RadiusStart, RadiusEnd为起始和终止的半径角度值, Width, Height为输出图片的宽和高。

(3)点坐标的逆变换:polar_trans_contour_xld_inv(PolarContour : XYTransContour : Row, Column, AngleStart, AngleEnd, RadiusStart, RadiusEnd, WidthIn, HeightIn, Width, Height : )

我写的案例dev_close_window ()

dev_open_window (0, 0, 512, 512, 'black', WindowHandle)

read_image (Image, '极坐标2.png')

get_image_size (Image, Width, Height)

draw_circle (WindowHandle, Row1, Column1, Radius)

gen_circle (Circle, Row1, Column1, Radius)

reduce_domain (Image, Circle, ImageReduced)

PI:=3.1415926

*逆时针,从0度到360度,转一圈

polar_trans_image_ext (ImageReduced, PolarTransImage, Row1, Column1, 0, 2*PI, 0, Radius, Width, Height, 'nearest_neighbor')

write_image (PolarTransImage, 'jpeg 100', 0, 'd:\\1.jpg')

*长和宽必须是原图像的长和宽,否则尺寸太小的话,图像容易超出,导致一片黑,看不到转换结果

polar_trans_image_inv (PolarTransImage, XYTransImage, Row1, Column1, 0, 2*PI, 0, Radius, Width, Height, 'nearest_neighbor')

write_image (XYTransImage, 'jpeg 100', 0, 'd:\\2.jpg')

*点坐标的转换

*Contour的原坐标是基于极坐标系,我们把它转到笛卡尔坐标系

gen_contour_polygon_xld (Contour, [155.568, 137.404, 30], [47.4712, 116.479, 260])

polar_trans_contour_xld_inv (Contour, XYTransContour, Row1, Column1, 0, 2*PI, 0, Radius, Width, Height, Width, Height)

stop()

变换前:

变换后:

逆变换:会回原样

官方例程

ocr_cd_print_polar_trans.hdev

create_shape_model_xld.hdev

circular_barcode.hdev

参考文献

https://blog.youkuaiyun.com/qq_32939413/article/details/104092627

https://www.pianshen.com/article/3946344220/

————————————————

版权声明:本文为优快云博主「libaineu2004」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

#转载请注明出处 www.skcircle.com 《少有人走的路》勇哥的工业自动化技术网站。如果需要本贴图片源码等资源,请向勇哥索取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值