• opencv 直方图


    1.简介

    对输入图像进行直方图均衡化处理,提升后续对象检测的准确率在OpenCV人脸检测的代码演示中已经很常见。此外对医学影像图像与卫星遥感图像也经常通过直方图均衡化来提升图像质量。

    • 图像直方图均衡化可以用于图像增强. 
    • 直方图均衡化是通过拉伸像素强度分布范围来增强图像对比度的一种方法.
    • 说得更清楚一些, 以上面的直方图为例, 你可以看到像素主要集中在中间的一些强度值上. 直方图均衡化要做的就是 拉伸 这个范围. 见下面左图: 绿圈圈出了 少有像素分布其上的 强度值. 对其应用均衡化后, 得到了中间图所示的直方图. 均衡化的图像见下面右图.


    2.opencv API

    直方图均衡化一般先将图像转为灰度图,然后对其进行均衡化 
    OpenCV中直方图均衡化的API很简单

    • equalizeHist(src, dst)

    3.示例

    将彩色图像进行直方图均衡化已达到图像增强

    步骤:

    1.彩色图像通道进行分离(RGB)

    2.每一个单通道进行直方图均衡化

    3.将均衡化后的图像进行合并得到彩色图像

    #include <opencv2/opencv.hpp>
    
    
    int main(int argc, char* argv[])
    {
    
        Mat src = imread("dog.jpg");
        if (src.empty()) {
            printf("could not load image...
    ");
            return -1;
        }
        imshow("src", src);
    
        vector<Mat> bgr;
        split(src, bgr);
        Mat dst;
    
        equalizeHist(bgr[0], bgr[0]);
        equalizeHist(bgr[1], bgr[1]);
        equalizeHist(bgr[2], bgr[2]);
    
        merge(bgr, dst);
        imshow("eq", dst);
    
        waitKey(0);
        return 0;
    }

     

     

    参考:http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/histograms/histogram_equalization/histogram_equalization.html

  • 相关阅读:
    ios更改UITabBarController背景以及选中背景图片的方法
    ios7 sdk 新特性
    AES加密算法原理
    iOS 获取手机的型号,系统版本,软件名称,软件版本
    iOS8中的UIActionSheet添加UIDatePicker后,UIDatePicker不显示问题
    iOS 8 定位失败问题
    利用CMake和OpenCV源代码生成Visual Studio工程
    dm8127前段采集和抓拍
    c++课程设计
    github安卓游戏
  • 原文地址:https://www.cnblogs.com/zhaobinyouth/p/11806191.html
Copyright © 2020-2023  润新知