计算机视觉
图像处理

Halcon学习之二:图像的生成和定义

Halcon学习:有关图像通道的函数

黑白摄像机会返回每个像素所对应的能量采用结果,这些结果组成了一幅单通道灰度值图像,而对于RGB彩色摄像机,它将返回每个像素所对应的三个采样结果,也就是一幅三通道图像。下面这些是与图像通道有关的函数:

1、access_channel ( MultiChannelImage : Image : Channel : )

获取多通道图像MultiChannelImage的Channel通道的图像Image。

2、append_channel ( MultiChannelImage, Image : ImageExtended : : )

将Image图像的通道与MultiChannelImage的通道叠加得到新图像ImageExtended。

3、channels_to_image ( Images : MultiChannelImage : : )

将多幅单通道图像合并成一幅多通道图像

4、compose2 ( Image1, Image2 : MultiChannelImage : : )

将两幅单通道图像合并为二通道图像。Compose3、Compose4以此类推。

5、count_channels ( MultiChannelImage : : : Channels )

计算MultiChannelImage 的通道个数Channels

6、decompose2 ( MultiChannelImage : Image1, Image2 : : )

将一幅二通道图像转换为两幅单通道图像。Decompose3、Decompose4以此类推。

7、image_to_channels ( MultiChannelImage : Images : : )

将多通道图像转换为多幅单通道图像。

相关例程为:

* 输入图像
read_image (Image, 'G:/Halcon/机器视觉/images/claudia.png')
* 计算图像的通道数
count_channels (Image, Num)
* 读取每个通道的图像
for index := 1 to Num by 1
    access_channel (Image, channel1, index)
endfor
decompose3 (Image, image1, image2, image3)
compose2 (image3, image2, MultiChannelImage1)
append_channel (MultiChannelImage1, image3, ImageExtended)

相关处理结果为:

 

Halcon学习:有关图像生成的函数

1、copy_image ( Image : DupImage : : )

复制image图像

2、region_to_bin ( Region : BinImage : ForegroundGray, BackgroundGray,Width, Height : )

将区域Region转换为一幅二进制图像BinImage。

ForegroundGray, BackgroundGray分别为前景色灰度值和背景色灰度值。

Width, Height为Region的宽度和高度。

3、region_to_label ( Region : ImageLabel : Type, Width, Height : )

将区域Region转换为一幅Lable图像ImageLabel。

Type为imagelabel的类型。

Width, Height为Region的宽度和高度。

4、region_to_mean ( Regions, Image : ImageMean : : )

绘制ImageMean图像,将其灰度值设置为Regions和Image的平均灰度值。

相关例子:

* 读取图像
read_image (Image, 'G:/Halcon/机器视觉/images/bin_switch/bin_switch_2.png')
* 复制图像
copy_image (Image, DupImage)
* 区域生长算法
regiongrowing (Image, Regions, 3, 3, 1, 100)
* 生成ImageMean
region_to_mean (Regions, Image, ImageMean)
* 将Region转换为二进制图像
region_to_bin (Regions, BinImage, 255, 0, 512, 512)
* 将Region转换为Label图像
region_to_label (Regions, ImageLabel, 'int4', 512, 512)

实验结果:

Halcon学习:有关图像的定义域的函数

1、add_channels ( Regions, Image : GrayRegions : : )

将Image图像的灰度值赋给区域Regions,得到GrayRegions。

2、change_domain ( Image, NewDomain : ImageNew : : )

改变Image图像的定义域

3、full_domain ( Image : ImageFull : : )

扩张Image图像的定义域到最大。

4、get_domain ( Image : Domain : : )

得到Image图像的定义域

5、rectangle1_domain ( Image : ImageReduced : Row1, Column1, Row2,

Column2 : )

根据矩形坐标(Row1, Column1)、(Row2,Column2)得到区域视为Image图像的定义域。

6、reduce_domain ( Image, Region : ImageReduced : : )

得到图像Image相对于Region区域的图像

例程:

read_image (Image, 'G:/Halcon/机器视觉/images/brycecanyon1.png')
* 打开一个新的窗体
dev_open_window (0, 0, -1, -1, 'black', WindowHandle)
* 显示图像
dev_display (Image)
* 选出两个新的Region
draw_region (region1, WindowHandle)
draw_region (region2, WindowHandle)
add_channels (region1, Image, image_region1)
change_domain (Image, region2, ImageNew)
full_domain (image_region1, ImageFull)
rectangle1_domain (ImageFull, ImageReduced, 100, 100, 300, 500)
get_domain (image_region1, Domain)
reduce_domain (Image, region2, ReducedImage)

处理效果如下图所示:

转载请注明来源:CV视觉网 » Halcon学习之二:图像的生成和定义

分享到:更多 ()
扫描二维码,给作者 打赏
pay_weixinpay_weixin

请选择你看完该文章的感受:

0不错 3超赞 0无聊 0扯淡 0不解 0路过

评论 1

评论前必须登录!

 

  1. #1

    进来学习