大白话直方图均衡
用一句大白话说一下直方图均衡的概念,直方图均衡(histogram equalization)是通过让原图的每个像素点的灰度值通过某个函数变换成另一个值,来提高原图的对比度,具体的函数方程为output = L*T(input)其中output为映射后的灰度值,L为灰度级255,T(r)为灰度值r的累积分布概率,计算方法:灰度值为r及以下的像素点总个数数/总像素点数。
对于数学上的一些分析,这里就不写了,想了解具体的可以看这里
以下是效果图片和代码:
原图
直方图均衡之后
# img_hist = cv2.calcHist(img, [1], None, [256], [0, 256])另一个计算直方图的函数 plt.hist(img[:,:,0].flatten(), 256, [0, 256], color = 'r') # plt.plot(img_hist) plt.title('original') plt.show() img_yuv = cv2.cvtColor(img, cv2.COLOR_BGR2YUV) # equalize the histogram of the Y channel img_yuv[:,:,0] = cv2.equalizeHist(img_yuv[:,:,0]) # only for 1 channel plt.hist(img_yuv[:,:,0].flatten(), 256, [0, 256], color='r') img_output = cv2.cvtColor(img_yuv, cv2.COLOR_YUV2BGR) # y: luminance # img_equalized_hist = cv2.calcHist(img_yuv, [1], None, [256], [0, 256]) # plt.plot(img_equalized_hist) plt.title('equalized') plt.show() # convert the YUV image back to RGB format cv2.imwrite(path, img_output) cv2.imshow('Color input image', img) cv2.imshow('Histogram equalized', img_output) key = cv2.waitKey(0) cv2.destroyAllWindows()
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
spring-boot-plus后台快速开发框架1.0.0.RELEASE发布了
Introduction spring-boot-plus是一套集成spring boot常用开发组件的后台快速开发框架 Purpose 每个人都可以独立、快速、高效地开发项目! Everyone can develop projects independently, quickly and efficiently! Quick Start 官网地址:springboot.plus GITHUB:https://github.com/geekidea/spring-boot-plus GITEE:https://gitee.com/geekidea/spring-boot-plus 主要特性 集成spring boot 常用开发组件集、公共配置、AOP日志等 集成mybatis plus快速dao操作 快速生成后台代码: entity/param/vo/controller/service/mapper/xml 集成swagger2,可自动生成api文档 集成jwt、spring security权限控制 集成redis、spring cache、ehcache缓存 集成rabbit/...
- 下一篇
Spring MVCD框架中调用HanLP分词的方法
项目简要:关于java web的一个项目,用的Spring MVCd 框架。鉴于参与此次项目的人中并不是所人都做的Spring,为了能够提高效率,建议大家是先抛开SPring来写自己负责的模块,最后再把各个模块在Spring里面集成。项目里有一个文本分析的模块是一个同学用hanlp写的,由于在最后集成的时候直接使用maven添加的依赖,但最终测试时无法通过。后经分析发现她坐了实体识别,是自己改了hanlp的词典,手动加了很多词,而且在后期版本的迭代中还有可能继续改了hanlp的词典,这就意味着不能用maven直接导入仓库里的包了,只有将修改后的data文件放到本地,然后指定路径给hanlp。网上有一些解决的方法,但都是在项目部署的时候,把hanlp的词典数据放到服务器上一个固定位置上,然后再配置hanlp的配置文件,指定一个固定位置。这种方法虽然比较直接,但是并不能够把hanlp的词典数据与整个项目打包到一起,后期的管理也比较麻烦。倘若把数据直接作为项目的资源文件,部署到Tomcat上后无论怎么在配置里写路径都会提示找不到词典文件。在分析了HanLP的issue之后,发现这个项目支持自...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Hadoop3单机部署,实现最简伪集群
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Docker使用Oracle官方镜像安装(12C,18C,19C)