halcon算子2、gray_histo

gray_histo 计算直方图

原形 :gray_histo(Regions, Image : : : AbsoluteHisto, RelativeHisto)
功能 :计算直方图
参数 :Regions:区域,要计算的区域(在image上的区域)

Image :要计算的图形

AbsoluteHisto:绝对统计数量,比如灰阶值为0-255的有多少个像素点

RelativeHisto:比例,像素值0-255占整个图像的比例

代码示例:

cpp 复制代码
*显示直方图
while (true)
    read_image(Image, 'D:\\2.PNG')
    rgb1_to_gray (Image, GrayImage)
    dev_display (GrayImage)
    wait_seconds (1)
*   产生一个矩形
    gen_rectangle1 (Rectangle, 0, 0, 9, 9)
    dev_inspect_ctrl (AbsoluteHisto)
    dev_inspect_ctrl (AbsoluteHisto)
    dev_close_inspect_ctrl (AbsoluteHisto)

    *1\显示原图直方图
    gray_histo (Rectangle, GrayImage,AbsoluteHisto, RelativeHisto)
    dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
    dev_set_color ('green')
    gen_region_histo (Region, AbsoluteHisto, 255, 255, 1)
    dev_display (Region)
    
    dev_close_inspect_ctrl (AbsoluteHisto)
    dev_inspect_ctrl (AbsoluteHisto)
    dev_close_inspect_ctrl (RelativeHisto)
    dev_inspect_ctrl (RelativeHisto)
    *2\直方图均衡化后显示直方图
    dev_close_inspect_ctrl (AbsoluteHisto)
    dev_inspect_ctrl (AbsoluteHisto)
    dev_close_inspect_ctrl (AbsoluteHisto)
    equ_histo_image (GrayImage, ImageEquHisto)
    gray_histo (ImageEquHisto, ImageEquHisto,AbsoluteHisto, RelativeHisto)
    dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
    dev_set_color ('red')
    gen_region_histo (Region, AbsoluteHisto, 255, 255, 1)
    dev_display (Region)
    break
endwhile

上图是给了一张全黑的图片,然后截取10*10的左上角,进行直方图计算;可以看到AbsoluteHisto下标0有100个,其他都是0

RelativeHisto下标0占比1 ,也就是100% , 其他都是0 , 因为一张全黑的图像素点的值都是0

相关推荐
AI技术控7 小时前
计算机视觉算法实战——表面缺陷检测(主页有源码)
计算机视觉
Erekys8 小时前
视觉分析之边缘检测算法
人工智能·计算机视觉·音视频
唔皇万睡万万睡8 小时前
数字水印嵌入及提取系统——基于小波变换GUI
人工智能·计算机视觉
IT古董8 小时前
【深度学习】计算机视觉(CV)-目标检测-DETR(DEtection TRansformer)—— 基于 Transformer 的端到端目标检测
深度学习·目标检测·计算机视觉
LensonYuan8 小时前
视觉目标检测之小目标检测技术调研与实验
目标检测·计算机视觉·目标跟踪
高力士等十万人9 小时前
OpenCV中的边缘检测
人工智能·opencv·计算机视觉
三年呀9 小时前
计算机视觉之图像处理-----SIFT、SURF、FAST、ORB 特征提取算法深度解析
图像处理·python·深度学习·算法·目标检测·机器学习·计算机视觉
C#Thread11 小时前
机器视觉--图像的运算(加法)
图像处理·人工智能·计算机视觉
高力士等十万人12 小时前
OpenCV二值化处理
python·opencv·计算机视觉
视觉人机器视觉12 小时前
3D与2D机器视觉机械臂引导的区别
人工智能·数码相机·计算机视觉·3d·视觉检测