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

网站的布局方式有哪些互联网公司花名大全男

网站的布局方式有哪些,互联网公司花名大全男,网页素材html,自己用电脑网站建设直方图是什么#xff1f; 直方图是一种图形表示方法#xff0c;用于显示数据中各个数值或数值范围的分布情况。它将数据划分为一系列的区间#xff08;也称为“箱子”或“bin”#xff09;#xff0c;然后统计每个区间中数据出现的频次#xff08;或频率#xff09;。直…直方图是什么 直方图是一种图形表示方法用于显示数据中各个数值或数值范围的分布情况。它将数据划分为一系列的区间也称为“箱子”或“bin”然后统计每个区间中数据出现的频次或频率。直方图可以帮助我们更好地理解数据的分布特征包括集中趋势、离散程度等。 直方图的主要特点包括 1. 横轴X 轴 横轴表示数据的数值范围或区间。每个区间通常由两个数值来表示例如0-10、10-20 等。 2. 纵轴Y 轴 纵轴表示每个区间中数据的频次或频率也就是该区间内数据出现的次数。 3. 条形图 直方图的图形由一系列的矩形条组成每个矩形条的宽度表示区间的宽度高度表示该区间内数据的频次。 4. 连续数据 直方图适用于连续型数据例如测量数据、时间数据等。对于离散型数据柱状图可能更为适合。 直方图在许多领域有重要的应用包括统计学、图像处理、数据分析等。在图像处理中直方图可以用来分析图像的像素值分布从而进行图像增强、对比度调整、图像分割等操作。在统计学中直方图可以帮助我们了解数据的分布情况如正态分布、偏态分布等。通过观察直方图我们可以对数据的特征有更深入的了解从而做出更准确的决策和分析 直方图在图像中的含义 从统计的角度讲直方图是图像内灰度值的统计特性与图像灰度值之间的函数直方图统计图像内各个灰度级出现的次数。从直方图的图形上观察横坐标是图像中各像素点的灰度级纵坐标是具有该灰度级像素值的像素个数。 例如有一幅图像如图 13-1 所示。该图中只有 9 个像素点存在 1、2、3、4、5共 5 个灰度级。 统计各个灰度级出现的次数如表 13-1 所示 在绘制直方图时将灰度级作为 x 轴处理该灰度级出现的次数作为 y 轴处理则可知 x 轴的数据为 x[1 2 3 4 5]。y 轴的数据为 y[3 1 2 1 2]。 根据上述关系可以绘制出如图 13-2 所示的折线图左图和直方图右图。一般情况下我们把左侧的直线图和右侧直方图都称为直方图。 在实际处理中图像直方图的 x 轴区间一般是[0, 255]对应的是 8 位位图的 256 个灰度级y 轴对应的是具有相应灰度级的像素点的个数。 例如在图 13-3 中上图是一张图像下图则是其对应的直方图。图中圆点表示这些像素点会被统计到对应的灰度级上。 虽然 8 位的图像都具有 256 个灰度级每一个像素可以有 256 个灰度值但是属于不同灰度级的像素数量是很不一样的。 例如图 13-4从图中可以看出图像的不同部分直方图是不一样的。 有时为了便于表示也会采用归一化直方图。在归一化直方图中x 轴仍然表示灰度级y轴不再表示灰度级出现的次数而是灰度级出现的频率。 例如针对图 13-1统计各个灰度级出现的频率 灰度级出现的频率 灰度级出现的次数/总像素数 在图 13-1 中共有 9 个像素所以统计结果如表 13-2 所示。 在归一化直方图中各个灰度级出现的频率之和为 1。例如本例中 在绘制直方图时将灰度级作为 x 轴数据处理将其出现的频率作为 y 轴数据处理则可知 x 轴的数据为 x[1 2 3 4 5]y 轴的数据为 y[3/9 1/9 2/9 1/9 2/9] 根据上述关系可以绘制出如图 13-5 所示的归一化直方图。对比图 13-4 与图 13-5可以看到归一化直方图与直方图在外观上是一致的只是 y 轴的标签不同而已。 本例中在直方图内y 轴显示的标签是 1、2、3在归一化直方图中y 轴显示的标签是 1/9、2/9、3/9。 在 OpenCV 的官网上特别提出了要注意三个概念DIMS、BINS、RANGE。 DIMS表示在绘制直方图时收集的参数的数量。一般情况下直方图中收集的数据只有一种就是灰度级。因此该值为 1。RANGE表示要统计的灰度级范围一般为[0, 255]。0 对应的是黑色255 对应的是白色。BINS参数子集的数目。在处理数据的过程中有时需要将众多的数据划分为若干个组再进行分析。 例如针对图 13-1 中的灰度级你可能希望将两个像素值作为一组讨论。这样整个灰度级被划分为三组具体为{ {1,2} , {3,4} , {5} }。图 13-6 所示的是划分前后的直方图情况。 也可以按照上述方式对灰度图像进行划分。例如在灰度图像中将[0, 255]区间内的 256个灰度级按照每 16 个像素一组划分为子集 [0, 255] [0, 15] ∪ [16, 31] ∪…∪[240, 255] 按照上述方式整个灰度级范围可以划分为 16 个子集具体为 整个灰度级范围 bin1 ∪ bin2 ∪…∪ bin16 子集划分完以后某灰度图像生成的直方图如图 13-7 所示图中的 b1 代表 bin1b2 代表bin2以此类推。 下面讨论 BINS 的值 针对图 13-1在原始图像中共有 5 个灰度级其 BINS 值为 5。在以 2 个灰度级为一个小组划分子集后得到 3 个子集其 BINS 值为 3。针对灰度图像灰度级区间为[0, 255]共有 256 个灰度级其 BINS 值为 256在以 16个灰度级为一个小组划分子集后其 BINS 值为 16。 说白了就是柱子的数量 绘制直方图 Python 的模块 matplotlib.pyplot 中的 hist()函数能够方便地绘制直方图我们通常采用该函数直接绘制直方图机器学习也用的这个。除此以外OpenCV 中的cv2.calcHist()函数能够计算统计直方图还可以 在此基础上绘制图像的直方图。下面分别讨论这两种方式。 使用Numpy绘制直方图 模块 matplotlib.pyplot 提供了一个类似于 MATLAB 绘图方式的框架可以使用其中的matplotlib.pyplot.hist()函数以下简称为 hist()函数来绘制直方图。 此函数的作用是根据数据源和灰度级分组绘制直方图。其基本语法格式为 matplotlib.pyplot.hist(XBINS) 其中两个参数的含义如下 X数据源必须是一维的。图像通常是二维的需要使用 ravel()函数将图像处理为一维数据源以后再作为参数使用。 BINSBINS 的具体值表示灰度级的分组情况。 函数 ravel()的作用是将二维数组降维成一维数组。例如有图像 a其值为 使用函数 ravel()对 a 进行处理 b a.ravel() 可以得到 b 为 示例使用 hist()函数绘制一幅图像的直方图。 代码如下 import cv2 import matplotlib.pyplot as plt ocv2.imread(boat.jpg) plt.hist(o.ravel(),256) plt.show()运行结果 示例使用函数 hist()将一幅图像的灰度级划分为 16 组后绘制该图像的直方图。 将上面的255改成了16 import cv2 import matplotlib.pyplot as plt ocv2.imread(boat.jpg) plt.hist(o.ravel(),16) plt.show()使用OpenCV绘制直方图 OpenCV 提供了函数 cv2.calcHist()用来计算图像的统计直方图该函数能统计各个灰度级的像素点个数。利用matplotlib.pyplot 模块中的 plot()函数可以将函数 cv2.calcHist()的统计结果绘制成直方图 1用cv2.calcHist()函数统计图像直方图信息 函数 cv2.calcHist()用于统计图像直方图信息其语法格式为 hist cv2.calcHist( images, channels, mask, histSize, ranges, accumulate )函数中返回值及参数的含义为 hist返回的统计直方图是一个一维数组数组内的元素是各个灰度级的像素个数。 images原始图像该图像需要使用“[ ]”括起来。 channels指定通道编号。通道编号需要用“[ ]”括起来如果输入图像是单通道灰度图像该参数的值就是[0]。对于彩色图像它的值可以是[0]、[1]、[2]分别对应通道B、G、R。 mask掩模图像。当统计整幅图像的直方图时将这个值设为 None。当统计图像某一部分的直方图时需要用到掩模图像。 histSizeBINS 的值该值需要用“[ ]”括起来。例如BINS 的值是 256需要使用“[256]”作为此参数值。 ranges即像素值范围。例如8 位灰度图像的像素值范围是[0, 255]。 accumulate累计累积、叠加标识默认值为 False。如果被设置为 True则直方图在开始计算时不会被清零计算的是多个直方图的累积结果用于对一组图像计算直方 图。该参数允许从多个对象中计算单个直方图或者实时更新直方图。该参数是可选的一般情况下不需要设置。 示例使用 cv2.calcHist()函数计算一幅图像的统计直方图结果并观察得到的统计直方图信息。 代码如下 import cv2 imgcv2.imread(boat.jpg) hist cv2.calcHist([img],[0],None,[16],[0,255]) print(type(hist)) print(hist.shape) print(hist.size) print(hist)运行结果如下 需要注意在本例的 cv2.calcHist()函数中 第 1 个参数“[img]”表示要绘制直方图的原始图像是使用“[ ]”括起来的。第 2 个参数表示要统计哪个通道的直方图信息。本例中读取的 img 是灰度图像所以使 用“[0]”来表示。第 3 个参数是掩模图像在本例中的值为“None”表示计算整幅图像的直方图。第 4 个参数“[16]”表示 BINS 的值是 16也就是分了16组第 5 个参数“[0, 255]”表示灰度级的范围是[0, 255]。 class numpy.ndarray (16, 1) 16 [[ 12575.][ 39591.][ 56651.][ 38932.][ 29997.][ 33472.][ 46033.][ 74555.][199718.][288966.][136663.][ 44440.][ 20355.][ 20691.][ 5578.][ 344.]]示例:绘制统计直方图 import cv2 from matplotlib import pyplot as pltimgcv2.imread(boat.jpg) hist cv2.calcHist([img],[0],None,[16],[0,255])plt.plot(hist,colorb) plt.show()运行结果 以上都是将图像进行直方图展示函数下面来讲下直方图在图像处理中的应用函数。 直方图均衡化 如果一幅图像拥有全部可能的灰度级并且像素值的灰度均匀分布那么这幅图像就具有高对比度和多变的灰度色调灰度级丰富且覆盖范围较大。在外观上这样的图像具有更丰富的色彩不会过暗或过亮。 图 13-22 展示了对一幅图像进行直方图均衡化前后的对比左图是原始图像比较暗右图是均衡化后的图像色彩比较均衡。 在 OpenCV 的官网上对图像均衡化即直方图均衡化前后的直方图进行了对比如图13-23 所示。其中左图是原始图像的直方图可以看到灰度级集中在中间图像中没有较暗和较亮的像素点右图是对原图均衡化后的直方图像素分布更均衡。 直方图均衡化的主要目的是将原始图像的灰度级均匀地映射到整个灰度级范围内得到一个灰度级分布均匀的图像。这种均衡化既实现了灰度值统计上的概率均衡也实现了人类视觉系统Human Visual SystemHVS上的视觉均衡。 直方图均衡化函数 OpenCV 使用函数 cv2.equalizeHist()实现直方图均衡化。该函数的语法格式为 dst cv2.equalizeHist( src ) 式中 dst 是直方图均衡化处理的结果。src 是 8 位单通道原始图像。 示例使用函数 cv2.equalizeHist()实现直方图均衡化。 原图 代码如下 #-----------导入使用的模块--------------- import cv2 import matplotlib.pyplot as plt #-----------读取原始图像--------------- img cv2.imread(equ.bmp,cv2.IMREAD_GRAYSCALE) #-----------直方图均衡化处理--------------- equ cv2.equalizeHist(img) #-----------显示均衡化前后的图像--------------- cv2.imshow(original,img) cv2.imshow(result,equ) #-----------显示均衡化前后的直方图--------------- plt.figure(原始图像直方图) #构建窗口 plt.hist(img.ravel(),256) plt.figure(均衡化结果直方图) #构建新窗口 plt.hist(equ.ravel(),256) plt.show() #----------等待释放窗口--------------------- cv2.waitKey() cv2.destroyAllWindows()结果中可以看到对比很明显在直方图均衡化之前图像整体比较 亮均衡化以后图像的亮度变得比较均衡。而两幅图像的直方图的对比则不太明显。这实际上体现了均衡化是指综合考虑了统计概率和 HVS 的结果。 下面做简单的说明 原始图像的直方图大部分的像素值集中在右侧线条密集。这说明图像中位于[200,255]区间的像素点很多图像比较亮。 在均衡化后的直方图中左侧的像素点比较密集而右侧的相对比较稀疏。但是实际上人眼并不能明显感受到像素值的细微差别所以我们可以将相近的像素值看成同一个像素值这样就会得到类似于图 13-29 的直方图。此时直方图内灰度级的分布就比较均衡了是均衡一致的直方图。
http://www.dnsts.com.cn/news/172560.html

相关文章:

  • 电商网站建设推荐阿里低代码开发平台
  • 信誉好的菏泽网站建设做视频链接网站
  • 做计算机网站有哪些内容电子商务网站建设试题及答案
  • 湖北城乡住房建设厅网站上海网站推广策划
  • 汶上1500元网站建设高端品牌女装连衣裙
  • 网站的建设ppt模板如何用ps做网站标识
  • 有关于网站建设类似的文章前端招聘网站
  • 用asp.net做的网站贴吧美的技术网站
  • 运营电商是做什么的seo是什么意思中文翻译
  • 皮革 东莞网站建设电子商务大专出来都去干嘛了
  • 网站建设公司广告词宣传片拍摄流程
  • 有关网站开发的创意手机百度怎么翻译网页
  • 上海知名网站设计seo关键词优化要多少钱
  • 唐山网站建设|唐山网站制作|公司建站666起|唐山红城网络h5入口
  • 五台县建设局网站魔鬼做交易网站
  • 上海的网站设计公司价格三亚有线电视微信公众号
  • 网站维护建设需要什么花费最佳线上网站建设费用
  • 天门网站建设设计网站如何清除百度收录
  • 建设部网站八大员查询百度 网站 移动端
  • 门头沟做网站公司六安网站建设优化
  • 网站首页动画代码广州网站制作公司联系方式
  • 网站设计公司报价app开发团队公司
  • 网页内嵌网站淘宝网站c#设计怎么做
  • 珠海市网站建设制作设计平台网站建设哪个好一些
  • 怀化网站开发大连商城网站建设
  • 模板网站和定制网站有什么区别房产网站建设哪家好
  • 在国内怎么做国外网站广西网站建设哪家有
  • 做网页用什么软件写代码夺宝网站怎样做优化
  • 学校内部网站开发价格网站开发软件、
  • 查询网站收录网站建设推广方法