HALCON图像的转换

  • Post author:
  • Post category:其他



RGB图像转换为灰度图:


算子:rgb1_to_gray(RGBImage:GrayImage:😃

RGBImage:输入图像;

GrayImage:输出图像;

如果输入图像是三通道图像可以更具公式:

灰度值=0.299

红色值+0.587

绿色值+0.114*蓝色值;

如果RGBImage中输入图像是单通道图像,GrayImage灰度图直接复制RGBImage进行输出。

*读取图像
read_image (Earth, 'earth.png')
*RGB图像转换为灰度图
rgb1_to_gray (Earth, GrayImage)

程序执行的结果为:

在这里插入图片描述


求区域与图像的平均灰度值


算子:region_to_mean(Regions,Image:ImageMean:😃

*读取图像
read_image (Image, 'fabrik')
*区域生长
regiongrowing (Image, Regions, 3, 3, 6, 100)
*得到区域与图像的平均灰度值
region_to_mean (Regions, Image, ImageMean)
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
*显示图像
dev_display (ImageMean)


将区域转换为二进制图:


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

使用该算子将区域转换为“byte”图像,如果输入区域大于生成的图像就会在图像边界处进行剪切。

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

该算子可以根据索引(1…n)将输入区转换为标签图像,即第一区域会被绘制成灰度值1,第二区域会被绘制为灰度值2,对于比生成的图像灰度值大的区域将会被适当地剪切。

*读取图像
read_image (Image, 'a01.png')
*复制图像
copy_image (Image, DupImage)
*区域生长
regiongrowing (DupImage, Regions, 3, 3, 1, 100)
*将区域转化为二进制图像
region_to_bin (Regions, BinImage, 255, 0, 512, 512)
*将区域转化为label图像
region_to_label (Regions, ImageLabel, 'int4', 512, 512)



版权声明:本文为weixin_42105843原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。