Halcon-图像像素类型与转换

byte’ 每像素1字节,无符号 值范围: (0到255)
‘int1’ 每像素1字节,有符号 值范围: (-128到127)
‘uint2’ 每像素2字节,无符号 值范围: (0到65535)
‘int2’ 每像素2字节,有符号 值范围: (-32768到32767)
‘int4’ 每像素4字节,有符号 值范围: (-2147483648到2147483647)
‘int8’ 每像素8字节,有符号(仅适用于x64系统)
‘real’ 每像素4字节,浮点类型,6位有效十进制数字精度 值范围: (-3.4e38到3.4e38)
‘complex’ real类型的两个矩阵,向量
‘vector_field_relative’ real类型的两个矩阵,向量
‘vector_field_absolute’ real类型的两个矩阵,绝对坐标
‘direction’ 每像素1字节,无符号 值范围: (0到179),角度除以2
注意:数值180到254被自动设置为值255。
‘cyclic’ 每像素1字节,无符号,循环算术 范围: (0到255)

转换
halcon自转换
相互间的转换可通过convert_image_type算子完成,但盲目转换会导致图像像素值异常。

但为什么要进行转换呢?总结一下,有以下几种原因:
1.如byte和unit2两种都属于无符号类型,如果涉及到图像相减操作的时候,就需要转为有符号类型,生成真实值。
2.涉及到遍历图像操作时,如果数组的长度为长宽的积,且超过图像的像素位数最大值,会导致程序报错,必须给数组更大的空间,这就需要进行类型转换。
3.如果高像素值的图像想转为低像素值的图像,不能直接转换,需通过scale_image算子先将图像像素进行尺度变换。

halcon转C#类型
1.int,double,string,IntPtr
均通过Htuple类型的变量名加.I(),.D(),.S(),.IP()完成

来源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值