【c++|opencv】二、灰度变换和空间滤波---2.直方图和均衡化

这篇具有很好参考价值的文章主要介绍了【c++|opencv】二、灰度变换和空间滤波---2.直方图和均衡化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

every blog every motto: You can do more than you think.
https://blog.csdn.net/weixin_39190382?type=blog

0. 前言

图像直方图、直方图均衡化

1. 图像直方图

#include <iostream>
#include <opencv2/opencv.hpp>

using namespace cv;
using namespace std;

int main(){
    Mat img, img_gray,hist;
    img = imread("/home/v/home.png");
    if (img.empty()){
        cout << "Could not open or find the image" << endl;
        return -1;
    }

    cvtColor(img, img_gray, COLOR_BGR2GRAY);
    imshow("img gray",img_gray);

    // 获取图像直方图
    int histSize = 256;
    float range[] = { 0, 256 };
    const float* histRange = { range };
    calcHist(&img_gray, 1, 0, Mat(), hist, 1, &histSize, &histRange, true, false);

    // 创建直方图
    int hist_h = 300;
    int hist_w = 512;
    int bin_w = hist_w / histSize; // 直方图的等级
    Mat hist_img(hist_h, hist_w, CV_8UC3, Scalar(0, 0, 0));

    // 绘制并显示直方图
    normalize(hist, hist, 0, hist_h, NORM_MINMAX, -1, Mat()); // 归一化直方图
    for (int i=1;i<histSize;i++){
        line(hist_img, Point(bin_w*(i-1), hist_h - cvRound(hist.at<float>(i-1))),
             Point(bin_w*(i), hist_h - cvRound(hist.at<float>(i))),
             Scalar(0, 0, 255), 2, 8, 0);
    }

    imshow("直方图",hist_img);
    waitKey(0);
    return 0;
}

【c++|opencv】二、灰度变换和空间滤波---2.直方图和均衡化,c++|opencv,opencv,c++,人工智能

2. 直方图均衡化

#include<iostream>
#include<opencv2/opencv.hpp>

using namespace cv;
using namespace std;

int main(){
    Mat img,img_gray,img_enhanced;
    img = imread("/home/v/home.png");

    if (img.empty()){
        cout<<"Error"<<endl;
        return -1;
    }

    cvtColor(img,img_gray,COLOR_BGR2GRAY);
    imshow("gray",img_gray);

    equalizeHist(img_gray,img_enhanced); // 直方图均衡化
    imshow("enhanced",img_enhanced);
    
    waitKey(0);
    return 0;
}

【c++|opencv】二、灰度变换和空间滤波---2.直方图和均衡化,c++|opencv,opencv,c++,人工智能文章来源地址https://www.toymoban.com/news/detail-736101.html

到了这里,关于【c++|opencv】二、灰度变换和空间滤波---2.直方图和均衡化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python数字图像处理基础(七)——直方图均衡化、傅里叶变换

    均衡化原理 图像均衡化是一种基本的图像处理技术,通过更新图像直方图的像素强度分布来调整图像的全局对比度。这样做可以使低对比度的区域在输出图像中获得更高的对比度。 简单理解:改变图像对比度,让色彩更丰富,灰度值直方图:瘦高 - 均衡 本质上,直方图均衡

    2024年01月18日
    浏览(55)
  • Python Opencv实践 - 图像直方图均衡化

         

    2024年02月11日
    浏览(41)
  • OpenCV官方教程中文版 —— 直方图均衡化

    本小节我们要学习直方图均衡化的概念,以及如何使用它来改善图片的对比。 想象一下如果一副图像中的大多是像素点的像素值都集中在一个像素值范围之内会怎样呢?例如,如果一幅图片整体很亮,那所有的像素值应该都会很高。但是一副高质量的图像的像素值分布应该很

    2024年02月06日
    浏览(44)
  • Python Opencv实践 - 图像直方图自适应均衡化

       

    2024年02月11日
    浏览(45)
  • OPENCV C++(十)gramm矫正+直方图均衡化

    两者都是只对单通道使用,对多通道的话 就需要分离通道处理再合并通道  两种方法,第一个要运算次数太多了,第二个只需要查表 伽马矫正函数,这里用第二种方法,且写法有点高级 就是建立了查找表,然后计算查找表,再遍历像素直接赋值查找表,就不用计算了。 这就

    2024年02月13日
    浏览(45)
  • opencv- CLAHE 有限对比适应性直方图均衡化

    CLAHE(Contrast Limited Adaptive Histogram Equalization)是一种对比度有限的自适应直方图均衡化技术,它能够提高图像的对比度而又避免过度增强噪声。 在OpenCV中, cv2.createCLAHE() 函数用于创建CLAHE对象,然后可以使用该对象的 apply() 方法来对图像进行CLAHE均衡化, 它在局部区域内对图

    2024年02月04日
    浏览(50)
  • python的opencv操作记录(13)-增强之直方图均衡化

    前段时间忙活深度网络和android的东西去了,好久没讲讲传统图像处理了,这一篇继续来说说opencv中的传统图像处理部分——图像增强之直方图增强。 图像增强是一种基本的图像处理操作,简单的来说就是把图像变的更清晰,或者说感兴趣的某个区域需要变的更加清晰。 而清

    2024年02月04日
    浏览(44)
  • C#使用OpenCv(OpenCVSharp)图像直方图均衡化处理实例

    本文实例演示C#语言中如何使用OpenCv(OpenCVSharp)对图像进行直方图均衡化处理。 直方图均衡化原理 直方图均衡化(Histogram Equalization)是一种常用的图像增强技术,用于改善图像的对比度和亮度分布。它通过重新分配图像灰度级的像素值,使得图像的直方图在灰度范围内更加

    2024年02月07日
    浏览(87)
  • visual Studio MFC 平台实现拉普拉斯和拉普拉斯与直方图均衡化与中值滤波相结合实现比较

    本文使用visual Studio MFC 平台实现图像增强中的拉普拉斯变换,同时拉普拉斯一般不会单独使用,与其他平滑操作相结合,本文使用了拉普拉斯与直方图均衡化以及与中值滤波相结合,也对三种方式进行了对比 关于基础工程的创建可以参考 01-Visual Studio 使用MFC 单文档工程绘制

    2024年02月04日
    浏览(49)
  • 【OpenCV • c++】自定义直方图 | 灰度直方图均衡 | 彩色直方图均衡

      直方图广泛应用于很多计算机视觉处理当中。通过标记帧与帧之间显著的边缘和颜色的变化,可以检测视频中的场景变化。在每个兴趣点设置一个有相似特征的直方图所构成的“标签”,可以用来标记各种不同的事情,比如图像的色彩分布,物体边缘梯度模板等等。是计

    2024年02月08日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包