手表网站建设策划新乡网站建设求职简历

news/2025/9/27 8:36:27/文章来源:
手表网站建设策划,新乡网站建设求职简历,网站建设应注意的问题,网络营销产品推广方案直方图 何为直方图#xff1f;没那么高大上#xff0c;其实就是二维统计图。每个照片都是有像素点所组成#xff0c;当然也是[0,255]#xff0c;直方图就是统计每个值所对应的像素点有几个。 直方图横坐标表示0-255这些像素点值#xff1b;纵坐标表示对应像素点值的个数有…直方图 何为直方图没那么高大上其实就是二维统计图。每个照片都是有像素点所组成当然也是[0,255]直方图就是统计每个值所对应的像素点有几个。 直方图横坐标表示0-255这些像素点值纵坐标表示对应像素点值的个数有多少个例如像素为55的像素点有多少个 cv2.calcHist(images,channels,mask,histSize,ranges) cv2.calcHist([img],[0],None,[256],[0,256]) 参数一images原图像格式为uint8或float32当传入函数时应该用中括号括住通常情况下都是输入的是灰度图 参数二同样用中括号括起来它会告诉函数我们图像的直方图如果输入图像时灰度图它的值就是[0]如果时彩色图像传入的参数可以是[0][1][2]分别对应BGR 参数三掩模图像说白了就是取部分图像而已统计整个图像的直方图时就把它设置为None当然也可以通过掩模来统计图像的某部分的直方图 参数四BIN的数目也就是横坐标的总量程而已一般都是256也就是0-255这256个像素点值也需要用中括号括起来 参数五像素值的范围一般设置为[0,256]import cv2 import numpy as np from matplotlib import pyplot as pltdef show_photo(name,picture):#图像显示函数cv2.imshow(name,picture)cv2.waitKey(0)cv2.destroyAllWindows()img cv2.imread(E:\Jupyter_workspace\study\data/cat.png,0)#这里的参数0表示以灰度图进行读取 hist cv2.calcHist([img],[0],None,[256],[0,256])#当然由于是灰度图通道数也只有一个即参数二[0]参数三None表示没有使用掩模直接输出整体图像的直方图参数四[256]直方图的横坐标量程参数五[0,256]像素值的范围 hist.shape#结果为(256, 1) 其中256表示这个图像中有0-255这256个取值1表示得到的直方图是二维的即每个像素出现多少个plt.hist(img.ravel(),256) plt.show()img cv2.imread(E:\Jupyter_workspace\study\data/cat.png)#第二个参数不填表示原图输入这个图像为彩色图也就是彩色图输入 color (b,g,r) for i,col in enumerate(color):#枚举格式遍历每个颜色通道histr cv2.calcHist([img],[i],None,[256],[0,256])plt.plot(histr,color col)plt.xlim([0,256]) plt.show()原图 原图对应的灰度图的直方图 原图的BGR直方图 掩模mask np.zeros(img.shape[:2],np.uint8) 上面的函数中有掩模的操作接下来介绍一下掩模mask的定义的操作 import cv2 import numpy as np from matplotlib import pyplot as pltdef show_photo(name,picture):#图像显示函数cv2.imshow(name,picture)cv2.waitKey(0)cv2.destroyAllWindows()#创建mast掩模是由黑白两部分组成的然后与原图重叠掩模白色区域对应原图区域不变黑色区域对应原图区域变黑 mask np.zeros(img.shape[:2],np.uint8)#这里面的掩码实际上就是边缘黑中间白此时的mask就和原图片大小相同uint8表示无符号八位整数0-255之间 print(mask.shape)#结果为(321, 287) mask[50:200,50:200] 255#要保存的东西是白色的白色区域为要保存的地方所以将选取地方置为255 show_photo(mask,mask)img cv2.imread(E:\Jupyter_workspace\study\data/cat.png,0)#灰度图读取照片 print(img.shape)#结果为(321, 287) show_photo(img,img)masked_img cv2.bitwise_and(img,img,maskmask)#与操作也就是有0则0黑色为0所以说掩码黑色地区都为黑参数一表示原图像参数三表示掩模图像 show_photo(masked_img,masked_img)hist_full cv2.calcHist([img],[0],None,[256],[0,256])#不带掩模的图像进行统计直方图 hist_mask cv2.calcHist([img],[0],mask,[256],[0,256])#带掩模mask的时候统计图像的部分掩模区域的直方图plt.subplot(221),plt.imshow(img,gray) plt.subplot(222),plt.imshow(mask,gray) plt.subplot(223),plt.imshow(masked_img,gray) plt.subplot(224),plt.plot(hist_full),plt.plot(hist_mask) plt.xlim([0,256]) plt.show()掩模图像 原图 掩模操作后的图像 上一原图 上二自定义的掩模 下一掩模对应的原图部分 下二蓝线对应原图的直方图橙线对应掩模处理的部分原图的直方图 直方图均衡化 假设某图片部分像素值为 25512820050502002555025520012812820020025550 下面表格中的函数映射中(255-0)表示设置的横轴的量程这里设置的是0-255 灰度值像素个数概率累积概率根据函数映射后灰度值取整5044/16 0.250.250.25*(255-0)63.756412833/16 0.18750.250.18750.43750.4375*(255-0)111.562511220055/16 0.31250.250.18750.31250.750.75*(255-0)191.2519125544/16 0.250.250.18750.31250.2511*(255-0)255255 均衡化后的像素值为 255112191646419125564255191112112192191255255 均衡化之后发现了这16个数相差的并不是特别大了 cv2.equalizeHist(img) 传入图像对象名称即可进行整体均衡化 import cv2 import numpy as np from matplotlib import pyplot as pltdef show_photo(name,picture):#图像显示函数cv2.imshow(name,picture)cv2.waitKey(0)cv2.destroyAllWindows()img cv2.imread(E:\Jupyter_workspace\study\data/people.jpg,0) plt.hist(img.ravel(),256)#原图像的直方图 plt.show()equ cv2.equalizeHist(img) plt.hist(equ.ravel(),256)#均衡化后的直方图 plt.show()res np.hstack((img,equ)) show_photo(img_equ,res)#显示原图和均衡化后的图片原图直方图 均衡化后的直方图 原图和均衡化后的图片对比 均衡化后的图像脸上的细节变得更加模糊了尴尬不 这时候就需要自定义均衡化 自定义均衡化 直方图的均衡化也就是整体的均衡化其他像素点值大的地方给平均给其他地方了导致一下细节会丢失 若将原图分成块进行均衡化每块进行自己块的均衡化效果会比全局整体均衡化更好些 当然若图像里面噪音太大局部反而没有整体均衡化好需要自己事先去衡量一下 cv2.createCLAHE(clipLimit 2.0,tileGridSize (8,8)) (8,8)表示分块均衡化中块的大小 import cv2 import numpy as np from matplotlib import pyplot as pltdef show_photo(name,picture):#图像显示函数cv2.imshow(name,picture)cv2.waitKey(0)cv2.destroyAllWindows()img cv2.imread(E:\Jupyter_workspace\study\data/people.jpg,0) plt.hist(img.ravel(),256)#原图像的直方图equ cv2.equalizeHist(img) plt.hist(equ.ravel(),256)#均衡化后的直方图clahe cv2.createCLAHE(clipLimit 2.0,tileGridSize (8,8))#自定义均衡化每8*8分成块按块进行均衡化 res_clahe clahe.apply(img)res np.hstack((img,equ,res_clahe)) show_photo(img_equ_clahe,res)原图-整体均衡化-自定义均衡化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919248.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

重庆定制网站建设地址深圳松岗最新消息今天

https://vijos.org/p/1629 描述 八是个很有趣的数字啊。八发,八八爸爸,88拜拜。当然最有趣的还是8用二进制表示是1000。怎么样,有趣吧。当然题目和这些都没有关系。 某个人很无聊,他想找出[a,b]中能被8整除却不能被其他一些数整除…

Linux系统中使用df命令详解磁盘使用情况

df(disk free)是一款Linux系统中用于检查文件系统磁盘空间占用情况的命令行工具。通过这个命令,用户能够查看已挂载的磁盘分区的总空间、已使用空间、可用空间以及挂载点。以下是对 df命令功能的详细阐述。 基本用法…

读人形机器人24岗位替代

读人形机器人24岗位替代1. 评估失业风险 1.1. 人形机器人的兴起给全球社会带来了兴奋感和担忧 1.2. 机器具有无与伦比的机动性、灵活性和适应性,它们能够执行各行各业的复杂任务 1.3. 最容易受自动化影响的行业1.3.1.…

Palantir解密:从企业数字化能力构成说起,“本体”如何破解现代企业数据应用难题? - 指南

Palantir解密:从企业数字化能力构成说起,“本体”如何破解现代企业数据应用难题? - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !import…

在Ubuntu 18.04/20.04 LTS设置静态DNS服务器

要在Ubuntu 18.04/20.04 LTS上设置静态DNS服务器,需遵循特定的配置过程,这个过程因为Ubuntu系统中网络管理组件的不同而有所区别。 Ubuntu 18.04 (使用netplan) Ubuntu 18.04 默认使用netplan来代替之前的 /etc/netw…

做旅行网站好网络建设与运维初级

队列概念队列(Queue)是限定只能在一端插入、另一端删除的线性表。允许删除的一端叫做队头(front),允许插入的一端叫做队尾(rear),没有元素的队列称为“空队列”。队列具有先进先出(FIFO)的特性。普通顺序队列存在的问题在普通顺序队列中,入队的操作就是先将尾指针re…

杭州市城乡建设网站做字典网站开发

一、误差思维(只要有估计,就会有误差)1.误差永远存在,并且不可避免。2.多次测量用平均值的统计方式取得结果,尽量避免偶然因素的影响。二、置信区间(误差范围)1.统计学最核心思想:用…

wordpress下划线 代码东莞网站关键词优化怎么做

乘车人表结构 分库分表策略 乘车人的数据严重依赖于用户数据。每个用户至少需要有一个对应的乘车人,即自己本人。当然,也有可能是其他人,因为允许用户注册账号后为他人购票的情况。这种关联确保了用户和乘车人之间的正确映射,使系…

杭州手机网站黄埭网站建设

一、RAID的介绍 1.什么是raid "RAID"一词是由David Patterson, Garth A. Gibson, Randy Katz 于1987年在加州大学伯克利分校发明的。在1988年6月SIGMOD会议上提交的论文"A Case for Redundant Arrays of Inexpensive Disks”"中提出,当时性能最…

中国设计师个人网站手机网站建设制作公司

一.安装和配置网络设备在安装linux时,如果你有网卡,安装程序将会提示你给出tcp/ip网络的配置参数,如本机的ip地址,缺省网关的ip地址,DNS的ip地址等等.根据这些配置参数,安装程序将会自动把网卡(linux系统首先要支持)驱动程序编译到内核中去.但是我们一定要了解加载网卡驱动程序…

提高工作效率的软件seo顾问 工资

DeepSeek R1-7B 医疗大模型微调实战全流程指南 目录 环境配置与硬件优化医疗数据工程微调策略详解训练监控与评估模型部署与安全持续优化与迭代多模态扩展伦理与合规体系故障排除与调试行业应用案例进阶调优技巧版本管理与迭代法律风险规避成本控制方案文档与知识传承1. 环境配…

网站开发工程那些网站企业可以免费展示

本文用于介绍Visual Studio 2012中Xamarin Mono For Android 如何打包编译APK文件,从如何创建Android项目,到如何启动调试,都会逐个配图讲解。1 新建项目2 选择安卓3 选择安卓程序4 随便取名和设置存放路径5 确定1 创建完一个新的项目2 点击“…

分布式 ID 生成方案实战指南:从选型到落地的全场景避坑手册(三) - 实践

分布式 ID 生成方案实战指南:从选型到落地的全场景避坑手册(三) - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family…

实用指南:鸿蒙NEXT安全控件解析:实现精准权限管控的新范式

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

做教育的有哪些网站wordpress模板破解版

最后一道大题题目再现 写一个person类,有姓名,性别,年龄。然后在此基础上派生出教师类和学生类。教师类增加了以下数据:工号,职称,工资。学生类增加了以下数据成员:学号,专业&#…

网站推广的看法不用写代码做网站

椭圆在数学中占有一定的比重,是中学时代必学的圆锥曲线之一,也是历来考试的重点和难点。几何画板作为专业的几何绘图工具,可以用来画椭圆图形。前面的教程学习了在几何画板中利用椭圆定义画椭圆的方法,其实我们还可以利用自定义工…

为什么做彩票网站会被提示危险辽宁省开原市城乡建设投资有限公司网站

企业即时通讯(以下称“企业IM” ) 激战正酣,中国移动也有意搅局。中国移动方面日前向北京商报记者透露,中国移动的IM产品将于下月正式上线,此次中国移动拿出的是淡出人们视线许久的飞信。由于传统通信业务持续下滑,正在蓬勃发展的…

详细介绍:Golang语言基础篇007_结构体详解

详细介绍:Golang语言基础篇007_结构体详解2025-09-27 08:05 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: blo…

实用指南:集成学习全解析:Bagging、Boosting、Stacking原理与实战(2025版)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

队列+宽搜(BFS)-662.二叉树最大宽度-力扣(LeetCode) - 指南

队列+宽搜(BFS)-662.二叉树最大宽度-力扣(LeetCode) - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consol…