一、算子介绍
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的范围内。