这也是image的数据结构最后一节,主要讲述图像的创建,灰度的映射等
1:图像的创建,在halcon中创建的算子都是以gen_开头的,做多了,就会发现有很多规律,毕竟软件也是人创建的,会有一定章法;
**生成与输入图同样大小的图片
gen_image_const (Image5, ‘byte’, Width, Height)这个算子是生成一个image5的灰度值为0的图像,而且其分辨率是WidthHeight;
2:如何读取一张图片的像素呢,在halcon中,是将图片image转换为区域region,然后在区域中进行处理,因此现将输入的图像转换为图像;
生成一个矩形,矩形就是这个图像
***生成矩形框
gen_rectangle1 (Rectangle, 0, 0, Height-1, Width-1)
因为在halcon中索引从0开始,因此长度要去掉1;这样就得到了图像的整个区域;
*从区域生成所有的像素坐标
get_region_points(Rectangle, Rows, Cols)
从区域中把所有的坐标像素都记录,然后再通道这些坐标信息,从而得到输入图像的灰度值,这个地方需要自己理解,简单来说,就是在halcon中你要知道灰度,它没办法和opencv那样直接索引,而是先通过把像素坐标找到然后传入tuple(这后面也会叙述),然后再读取;
*读取图像的全部像素
get_grayval(R, Rows, Cols, Grayvals)这就是读取R通道的所有灰度值,然后传入到这个Grayvals的数组中;
这就是对应的索引下的灰度数值;
最后将灰度值设置到创建的图像中: