当前位置: 首页 > news >正文

创新的做pc端网站四川省建筑施工企业安全员考试

创新的做pc端网站,四川省建筑施工企业安全员考试,wordpress主题带识图搜索,网页设计代码书前言: 😊😊😊欢迎来到本博客😊😊😊 🌟🌟🌟 本专栏主要结合OpenCV和C来实现一些基本的图像处理算法并详细解释各参数含义,适用于平时学习、工作快…

前言

😊😊😊欢迎来到本博客😊😊😊

🌟🌟🌟 本专栏主要结合OpenCV和C++来实现一些基本的图像处理算法并详细解释各参数含义,适用于平时学习、工作快速查询等,随时更新。

😊😊😊 具体食用方式:可以点击本专栏【OpenCV快速查找(更新中)】–>搜索你要查询的算子名称或相关知识点,或者通过这篇博客👉通俗易懂OpenCV(C++版)详细教程——OpenCV函数快速查找(不断更新中)]查阅你想知道的知识,即可食用。

🎁🎁🎁支持:如果觉得博主的文章还不错或者您用得到的话,可以悄悄关注一下博主哈,如果三连收藏支持就更好啦!这就是给予我最大的支持!😙😙😙


文章目录

    • 学习目标
    • 一、概念及原理
      • 1.1 相关概念及原理
    • 二、 代码实现
    • 三、 总结

学习目标

  • 熟悉自适应直方图均衡化概念及原理
  • C++实现自适应直方图均衡化案例

  上一节介绍了更为方便的方法来自动调节图像对比度——全局直方图均衡化但是原图中比较亮的区域,经过全局直方图均衡化处理后会出现了失真的情况,而且出现了明显的噪声。该如何处理呢?

一、概念及原理

1.1 相关概念及原理

  关于自适应直方图均衡化步骤如下:

  首先,将图像划分为不重叠的区域块然后,对每一个块分别进行直方图均衡化。在没有噪声影响的情况下,每一个小区域的灰度直方图会被限制在一个小的灰度级范围内;但是如果有噪声,每一个分割的区域块执行直方图均衡化后,噪声会被放大。最后,为了避免出现噪声这种情况,利用“限制对比度(Contrast Limiting)”的方式,如果直方图的bin超过了提前预设好的“限制对比度”,那么会被裁减,然后将裁剪的部分均匀分布到其他的bin,这样就重构了直方图。
————————————————
小知识:灰度与彩色直方图bin的含义
   1、计算颜色直方图时,横坐标是颜色空间,纵坐标是该颜色的像素点的数量。
   2、对于RGB而言,每个通道都有0到255个灰度集,即一共256个。如果采用bins=1的思路,则有 256 x 256 x 256 个横坐标,并且横坐标对应的纵坐标的值也比较少(一个图中像素值相同的也不多)
   3、为解决这种问题,采用了合并的思想,也就出现了bin。计算颜色直方图需要将颜色空间划分为若干个小的颜色区间。对于每个颜色通道(R,G,B),每32个划分到一个bin里面(具体一个bin中的区间为多少可以视情况而定)。排列组合后,有8 x 8 x 8 一共有512 bin ,也就是直方图的横坐标共512个刻度。

	R:0到255 划分为 8个binG:0到255 划分为 8个binB:0到255 划分为 8个bin举个例子:假设一个像素的R,G,B,3个通道的取值分别为2,5,4,那么在bins下的坐标就应该为(1,1,1)。因为2相对于R通道来说属于第一个bins,后面的同理。

  如下图所示,假设设置“限制对比度”为50,第3个bin所对应的像素个数大于50,然后将多出的将会均匀分布到每一个bin,重构后的直方图如图(右)所示,接下来利用重构后的直方图进行均衡化操作。

  可以看到,此时的直方图又会整体上升了一个高度,但也有部分bin会超过我们设置的上限(如地5个bin)。当然,在实现的时候有很多解决方法,可以多重复几次裁剪过程,使得上升的部分变得微不足道,也可以用另一种常用的方法

  示例: 假设图中裁剪值为ClipLimit=50
    (1) 求出直方图中高于该值的部分的和TotalNum (图中只有一个bin超过ClipLimit,假设为82,即82-50=32);
    (2) 假设将TotalNum均分给所有灰度级,直方图整体上升的高度L=TotalNum/N,即32/(256/16)=2
    (3) 同时以upper= ClipLimit-L为界限对直方图进行如下处理:

      1) 若幅值高于ClipLimit,直接置为ClipLimit即图中第5个bin
      2) 若幅值处于UpperClipLimit之间,将其填补至ClipLimit
      3) 若幅值低于Upper,直接填补L个像素点;

  经过上述操作,用来填补的像素点个数通常会略小于TotalNum,还有一些剩余的像素点没分出去。可以再把这些点均匀地分给那些目前幅值仍然小于ClipLimit的灰度值。

二、 代码实现

  关于OpenCV实现的限制对比度的自适应直方图均衡化函数,其实在OpenCV中并没有提及相关函数,提供了函数createCLAHE()来构建指向CLAHE对象的指针,其中默认设置“限制对比度(clipLimit=(40.0)),块的大小为8×8

#include <iostream>
#include <opencv2/opencv.hpp> 
# include <opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv ;int main() {Mat src = imread(D:/VSCodeFile/0penCV_CSDN/image/img3.jpg);//Mat src;if (src.empty() {cout<<“the image is empty!" << endl;//全局直方图均衡化Mat gray;cvtColor(src, gray, COLOR_BGR2GRAY);Mat dst;equalizeHist(gray, dst);//限制对比度的自适应直方图均衡化//构建CLAHE 对象Ptr<CLAHE> clahe = createCLAHE(2.0, Size(8, 8));Mat dst1;// 限制对比度的自适应直方图均衡化clahe->apply(gray, dst1);//图片显示imshow("原图", src);imshow("直方图均衡化演示", dst);imshow("对比度增强", dst1);waitKey (0) ;return 0;
}

  结果显示了对原图进行全局直方图均衡化(HE)和限制对比度自适应直方图均衡化(CLAHE)的效果,仔细观察会发现原图中比较亮的区域,经过HE处理后出现了失真的情况(两个人体已经模糊),而且出现了明显的噪声,而CLAHE避免了这两种情况。

在这里插入图片描述

  对比度增强只是图像增强方法中的一种手段,目前提到的对比度拉伸的方法受图像噪声的影响会很明显,在下一章内容开始介绍去除噪声的方法,去噪之后再使用对比度增强技术效果会更好


三、 总结

  最后,长话短说,大家看完就好好动手实践一下,切记不能三分钟热度、三天打鱼,两天晒网。OpenCV是学习图像处理理论知识比较好的一个途径,大家也可以自己尝试写写博客,来记录大家平时学习的进度,可以和网上众多学者一起交流、探讨,有什么问题希望大家可以积极评论交流,我也会及时更新,来督促自己学习进度。希望大家觉得不错的可以点赞、关注、收藏。


🚶🚶🚶今天的文章就到这里啦~
喜欢的话,点赞👍、收藏⭐️、关注💟哦 ~
http://www.yayakq.cn/news/772353/

相关文章:

  • 商城网站里可以再放cms吗辽宁做网站找谁
  • 郑州做网站建设公司哪家好网站名查询
  • 网站开发主管岗位职责东莞网站seo优化
  • 网站询盘量梧州红豆网梧州论坛
  • 做网站在哪里接活12306网站开发多少钱
  • 有网站的源代码怎么生成网站国内网站用django做的
  • 岗网站制作网站开发建站教程详解
  • 个人网站建设课程介绍用阿里云服务器做自己购物网站
  • 网站弹窗代码ie 常用网站
  • 网站数据库地址是什么网站怎么做seo关键词
  • 哈尔滨做网站收费学校门户网站流程建设方案
  • 广西建网站公司北京顺义去哪找做网站的
  • 网站建设讯美竞价交易规则
  • 济南网站建设开发郑州推出vip服务
  • 个人求职网站如何做哪些网站做问卷可以赚钱
  • 建设网站案例织梦网站修改教程
  • wordpress 网站制作公司网站开发维护
  • 网站设计市场价厦门专业网站建设
  • 网站更新了通江网站建设
  • 网站建设 中企动力西安平台网站建设推荐
  • 个人网站建立 学生宁波网站建设公司信息查询
  • 网站系统制作教程网站根目录验证文件
  • 哪些网站做科技专题推荐一个免费网站
  • access做网站数据方法东城区网站建设公司
  • 销售网站开发背景意义中国互联网上网服务行业协会
  • 韶关网站建设价格省博物馆网站建设
  • 深圳网站建设公司哪个网站建设潍坊
  • 长治网站制作的网站整站优化推广
  • 网站建设模板软件建立一个公司网站 宣传企业文化优弊端
  • 新手做市场分析的网站电商培训班学了有用吗