一、算子介绍
Scale_image_range( Image //传入原始图像 ImageScle //灰度转换后的图像 Min 需要转换的最小值 Max 需要转换的最大值 )
算子使用的两种情况:
1.scale_image_range(Image, imagesacle, 40 , 100)
将图像当中40-100的灰度元素映射到0-255,小于40为0或者大于100的灰度值为255
2.scale_image_range(Image, imagesacle, [40 ,10], [100,200])
将图像中40-100的灰度值映射到10-200,同样小于40和大于200的会被设置为0和255
二、测试代码
gen_image_const (Image, 'byte', 512, 512) gen_image_proto (Image, ImageCleared, 100) dev_open_window (0, 0, 512, 512, 'black', WindowHandle) dev_display (ImageCleared) get_image_size (ImageCleared, Width, Height) get_domain (ImageCleared, Domain) get_region_points (Domain, Rows, Columns) gray:=(Columns/30+5)*10 set_grayval (ImageCleared, Rows, Columns, gray) *第一种用法 scale_image_range (ImageCleared, ImageScaled1, 100, 150) *第二种用法 scale_image_range (ImageCleared, ImageScaled, [50,0], [210,160])
(关键点:图像灰度值赋值的过程最好不要用循环,太慢了,根据元组计算出每个元素的灰度值在赋值给图像速度快,在图像处理中减少循环的使用,多用元组)
三、测试结果
第一种情况:
第二种情况:
通过Scale_image_range算子将图像50-210的灰度值映射在0-160的范围内。