13、图像常用算子

1    reduce_domain(Image, Region : ImageReduced : : )    1

2    crop_domain(Image : ImagePart : : )    1

3    add_channels(Regions, Image : GrayRegions : : )    2

4    rgb1_to_gray(RGBImage : GrayImage : : )    2

5    rgb3_to_gray(ImageRed, ImageGreen, ImageBlue : ImageGray : : )    2

6    decompose3(MultiChannelImage : Image1, Image2, Image3 : : )    2

7    compose3(Image1, Image2, Image3 : MultiChannelImage : : )    3

8    trans_from_rgb(ImageRed, ImageGreen, ImageBlue : ImageResult1, ImageResult2, ImageResult3 : ColorSpace : )    4

9    trans_to_rgb(ImageInput1, ImageInput2, ImageInput3 : ImageRed, ImageGreen, ImageBlue : ColorSpace : )    4

10invert_image(Image : ImageInvert : : )    5

11get_image_pointer1(Image : : : Pointer, Type, Width, Height)    6

12get_image_pointer3(ImageRGB : : : PointerRed, PointerGreen, PointerBlue, Type, Width, Height)    7

13gen_image1( : Image : Type, Width, Height, PixelPointer : )    8

14gen_image3( : ImageRGB : Type, Width, Height, PixelPointerRed, PixelPointerGreen, PixelPointerBlue : )    9

15gen_image_const( : Image : Type, Width, Height : )    10

16gen_image_proto(Image : ImageCleared : Grayval : )    11

17get_image_size(Image : : : Width, Height)    12

18write_image(Image : : Format, FillColor, FileName : )    13

19read_image( : Image : FileName : )    14

20get_grayval(Image : : Row, Column : Grayval)    14

21set_grayval(Image : : Row, Column, Grayval : )    15

22dump_window( : : WindowHandle, Device, FileName : )    15

23dump_window_image( : Image : WindowHandle : )    16

24copy_image(Image : DupImage : : )    16

25dev_set_part( : : Row1, Column1, Row2, Column2 : )    16

 

  1. reduce_domain(Image, Region : ImageReduced : : )

    功能:取图像Image以Region区域作为新定义域的图像ImageReduced,即减少定义域。

    例子:

    read_image(Image,'lena')

    *t通过ROI编辑工具产生一个region类型的区域ROI_region

    gen_rectangle1 (ROI_region, 201.554, 225.27, 393.799, 351.548)

    *从大的Image中剪裁出ROI_region区域的部分图像,存放到Reduced中。

    reduce_domain (Image, ROI_region, Reduced)

        注:Reduced以外的部分是一个空的区域,没有像素值,用黑色背景来表示。

功能:由1中可知Reduced以外的部分是一个空的区域,没有像素值,用黑色背景来表示,而crop_domain()

函数则是把类似Reduced的图像,把黑色背景去掉,把有像素值部分显示完全

例子:

     read_image(Image,'lena')

*t通过ROI编辑工具产生一个region类型的区域ROI_region

gen_rectangle1 (ROI_region, 201.554, 225.27, 393.799, 351.548)

*从大的Image中剪裁出ROI_region区域的部分图像,存放到Reduced中。

reduce_domain (Image, ROI_region, Reduced)

crop_domain (Reduced, ImagePart)

  1. 功能:当输入的Regions时当个region的话它的功能和1中的reduce_domain()一样,假如输入的Regions是一个region数组的话它的功能就跟和reduce_domain()不一样。

     

     

     

     

     

     

  2. 功能:将一张三通道的图像转化为一张灰度图像

  3. rgb3_to_gray(ImageRed, ImageGreen, ImageBlue : ImageGray : : )

功能:将3张单通道的图像转换为一张灰度图像

功能:把一张三通的图像分解为三张单通道的图像

例子:

read_image(Image,'lena')

decompose3 (Image,R, G, B)

  1. compose3(Image1, Image2, Image3 : MultiChannelImage : : )

    功能:把三张单通道的图像合成一张三通道的图像

read_image(Image,'lena')

decompose3 (Image,R, G, B)

 

compose3 (R, G, B, Image2)

  1. 功能:从RGB颜色空间转换到任意颜色空间,最后一个参数表示要转换到的颜色空间。

    例子:

    read_image(Image,'lena')

    decompose3 (Image,R, G, B)

    trans_from_rgb (R, G, B, H, S, V, 'hsv')

  2. 功能:任意颜色空间转换为RGB空间

    read_image(Image,'lena')

    decompose3 (Image,R, G, B)

    *RGV转换为HSV

    trans_from_rgb (R, G, B, H, S, V, 'hsv')

    *HSV转换为RGB

    trans_to_rgb (H, S, V, R1, G1, B1, 'hsv')

10、invert_image(Image : ImageInvert : : )

功能:图像取反:结果像素值 = 255 - 原图像素值 ,若原图像为单通道,只对该单通道取反,若为三通道,则对每个通道进行取反。

     read_image(Image,'lena')

*取反

invert_image(Image,ImageInvert)

11、get_image_pointer1(Image : : : Pointer, Type, Width, Height)

    功能:获取单通道图像的图像数据,假如传入的是多通道图像,则获取第一个通道的数据,同一张图像,每次调用Pointer    的结果都不一样。

read_image(Image,'lena')

*分离RGB三通道

decompose3 (Image, R, G, B)

*获取R单通道的指针

get_image_pointer1 (R, Pointer, Type, Width, Height)

12、get_image_pointer3(ImageRGB : : : PointerRed, PointerGreen, PointerBlue, Type, Width, Height)

功能:获取三通道的图像的图像数据

read_image(Image,'lena')

*获取多通道图像的图像数据

get_image_pointer3 (Image, PointerRed, PointerGreen, PointerBlue, Type1, Width1, Height1)

13、gen_image1( : Image : Type, Width, Height, PixelPointer : )

功能:根据11或12中返回的图像数据来创建一个符合halcon规则的单通道图像。

read_image(Image,'lena')

*获取多通道图像的图像数据

get_image_pointer3 (Image, PointerRed, PointerGreen, PointerBlue, Type1, Width1, Height1)

 

gen_image1 (out_Image, 'byte', Width1, Height1, PointerBlue)

14、gen_image3( : ImageRGB : Type, Width, Height, PixelPointerRed, PixelPointerGreen, PixelPointerBlue : )

功能: 根据三通道图像数据来创建一个符合halcon规则的三通道图像

read_image(Image,'lena')

*获取多通道图像的图像数据

get_image_pointer3 (Image, PointerRed, PointerGreen, PointerBlue, Type1, Width1, Height1)

 

gen_image3 (out_ImageRGB, 'byte', Width1, Height1, PointerRed, PointerGreen, PointerBlue)

 

15、gen_image_const( : Image : Type, Width, Height : )

*创建一个图像,并为图像的所有像素值指定同一个默认灰度值(一般为0

gen_image_const (Image1, 'byte', 600, 600)

    

16、gen_image_proto(Image : ImageCleared : Grayval : )

功能:创建一个图像,并为图像所有像素指定同一个灰度值

    read_image(Image1,'lena')

*创建一个图像

gen_image_proto (Image1, out_Image, 200)

17、get_image_size(Image : : : Width, Height)

功能:获取图像大小

read_image(Image1,'lena')

get_image_size (Image1, Width, Height)

18、write_image(Image : : Format, FillColor, FileName : )

功能:根据指定的图像格式来保存图像,第三个参数表示不属于图形定义域(region)的像素,用该灰度值来表示,若要保存的是三通道图像,则会让不属于图形定义域的区域R = G = B = FillColor

read_image(Image,'lena')

*t通过ROI编辑工具产生一个region类型的区域ROI_region

gen_rectangle1 (ROI_region, 201.554, 225.27, 393.799, 351.548)

*从大的Image中剪裁出ROI_region区域的部分图像,存放到Reduced中。

reduce_domain (Image, ROI_region, Reduced)

 

*第三个参数表示不属于图形定义域(region)的像素,用该灰度值来表示

write_image (Reduced, 'bmp', 200, 'C:/hhhhhh.bmp')

保存出来的图像:

19、read_image( : Image : FileName : )

    功能:读取图像

20、get_grayval(Image : : Row, Column : Grayval)

功能:获取指定坐标的像素值

read_image(Image,'lena')

 

decompose3 (Image, R, G, B)

 

get_grayval (R, 100, 100, Grayval)

21、set_grayval(Image : : Row, Column, Grayval : )

功能:设置一副图像某个坐标的灰度值

22、dump_window( : : WindowHandle, Device, FileName : )

功能:把窗口内容以图像文件格式保存到硬盘上

read_image (Image123, 'C:/123.JPG')

threshold_sub_pix (Image123, Border, 128)

*把窗口内容以图像文件格式保存到硬盘上

dump_window (3600, 'bmp', 'C:/hhhhhh.bmp')

23、dump_window_image( : Image : WindowHandle : )

功能:把窗口内容保存为一个图像对象

read_image (Image123, 'C:/123.JPG')

threshold_sub_pix (Image123, Border, 128)

*把窗口内容保存为一个图像对象

dump_window_image (Image, 3600)

 

24、copy_image(Image : DupImage : : )

功能:深拷贝一张图像(重新分配内存)

25、dev_set_part( : : Row1, Column1, Row2, Column2 : )

功能:修改显示的局部图像,让选择的局部图像填充整个图形窗口(相当于在图形窗口中放大某一个区域图像)

read_image (Image123, 'lena')

 

dev_set_part (76, 140, 425, 386)

*要用dev_display()显示才看到效果

dev_display (Image123)

 

posted @ 2022-05-08 23:00  ihh2021  阅读(418)  评论(0编辑  收藏  举报