opencv 统计函数countNonZero() minMaxloc() sumElems() mean() meanStdDev() reduce()

这篇具有很好参考价值的文章主要介绍了opencv 统计函数countNonZero() minMaxloc() sumElems() mean() meanStdDev() reduce()。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.countNonZero()用来统计元素值为非0值的像素点个数。

cv2.countNonZero(src) -> retval

src:输入图像,必须为单通道图像;
retval:非零像素值个数
absdiff()计算了2幅图像差异后得到的新图像
零值元素数量可以由元素总数减去非零值数量得到

2.minMaxLoc()函数返回图像中的元素值的最小值和最大值,以及最小值和最大值的坐标。

cv2.minMaxLoc(src[, mask])->minVal, maxVal, minLoc, maxLoc

src:输入图像,必须为单通道图像;
mask:掩码;
minVal, maxVal, minLoc, maxLoc:依次为最小值,最大值,最小值的坐标,最大值的坐标;

返回minLoc和maxLoc的坐标位置是以OpenCV中(x,y)的形式组织的,但是在numpy中下标访问是按照array[行][列]形式,类似于array[y][x]的形式,所以minLoc和maxLoc的坐标值不能直接用于numpy的下标访问,需要对调后才可以使用.

3.sumElems()统计所有元素值之和,如果有多通道,分通道计算,返回的是一个四元组,依次对应图像可能包含的第0,1,2,3通道,如果单通道图像则只有下标0对应的元素有意义,如果是3通道则只有前3个元素有意义。

cv2.sumElems(src) -> retval

src:输入图像,可以是单通道,3通道或4通道图像;
retval:返回的是一个4元组,分别对应各通道元素的和。

4.mean()用来统计单个通道内像素值的平均值,如果有多个通道,分通道计算。

cv2.mean(src[, mask]) ->retval

src:输入图像,可以是单通道,3通道或4通道图像;
mask:可选的掩码;
retval:返回的是一个4元组,分别对应各通道元素的平均值。

5.meanStdDev()用来统计单通道内像素值的平均值和标准差,一次调用返回2个结果。

cv2.meanStdDev(src[, mean[, stddev[, mask]]]) ->mean, stddev

src:输入图像,必须为单通道图像;
mask:可选的掩码;
mean:平均值;
stddev:标准差;
meanStdDev()返回的是一个元组,下标0为平均值mean,下标1为标准差stddev。

6.reduce()用来统计二维数组的每一行或每一列中的最小值、最大值、平均值、和。这里reduce的含义也可以理解为将二维矩阵压缩成一维向量,压缩后的值根据入参类型可以是最小值、最大值、平均值或者和。

cv2.reduce(src, dim, rtype[, dst[, dtype]]) ->dst

src:源图像,可以是单通道也可以是多通道,多通道时分通道计算;
dim:如果为0表示统计每列的数据等价于压缩成行(row),如果为1表示统计每行的数据等价于压缩成列(column);
rtype:reduce操作的类型;
dst:目标图像;
dtype:目标图像的类型,如果不指定默认为-1表示用源图像src的数据类型;

dim参数的理解:如果为0表示生成新的数据将是一个行向量,所以是在每一列上操作,将单个的列压缩成一个数值从而组成一个行向量;如果为1则表示生成新的数据是一个列向量,在每一行上操作,将单个的行压缩成一个数值从而组成一个列向量。

rtype标志	含义
REDUCE_SUM	所有行或列的和
REDUCE_AVG	所有行或列的平均值
REDUCE_MAX	所有行或列的最大值
REDUCE_MIN	所有行或列的最小值

countNonZero()用来统计的是非零元素的数量;minMaxLoc()返回位置参数是按照OpenCV格式组织的,在numpy数组中使用时需要对调下标组织形式,返回的坐标是按行扫描方式得到的最开始的坐标;sumElems()用来计算单个通道内所有元素的和,其原生的C接口函数为sum();meanStdDev()返回的平均值和标准差是一个numpy数组,其数组长度依赖输入图像的通道数,这点和mean()、sumElems()计算的结果默认包含4个元素有所区别;reduce()计算单行/列的和、均值时dtype类型需要指定为能精确表示的数据类型。文章来源地址https://www.toymoban.com/news/detail-659850.html

到了这里,关于opencv 统计函数countNonZero() minMaxloc() sumElems() mean() meanStdDev() reduce()的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • OpenCV笔记:模板匹配 cv2.matchTemplate()、cv2.minMaxLoc() 与 绘制矩形 cv2.rectangle() 方法介绍

            模板匹配是用来在一副大图中搜寻查找模版图像位置的方法。绘制矩形是用来将模版图像的匹配结果展示出来的方法。         模板匹配实现简单(2~3行代码),计算效率高,不需要执行阈值化、边缘检测等操作来生成二值化图像。 但是: 如果输入图像中存

    2024年02月04日
    浏览(48)
  • 【人工智能】— 无监督学习、K-means聚类(K-means clustering)、K-means损失函数,目标函数

    无监督学习是指在没有标签的数据上进行学习,即没有监督信号的指导下进行模型训练。在无监督学习中,我们主要关注从无标签数据中学习出数据的低维结构和隐藏的模式。 通过无标签数据,我们可以预测以下内容: 低维结构:通过无监督学习算法如主成分分析(PCA),

    2024年02月10日
    浏览(41)
  • 损失函数——均方误差(Mean Squared Error,MSE)

    均方误差(Mean Squared Error,MSE): MSE是回归任务中常用的损失函数,它衡量模型预测值与实际值之间的平均平方误差。 具体来说,MSE的计算公式如下: 其中,n是样本数量,xi是第i个样本的真实值,yi是模型对第i个样本的预测值。 MSE的值越小,说明模型的预测值与真实值之

    2023年04月24日
    浏览(42)
  • 机器学习——K-Means算法优化(一)代价函数

    在K-Means算法中,对K个质心的选择,容易陷入局部最小值,从而每次聚类得到不同的结果。 使用多次的随机初始化,并计算每一次建模得到的代价函数值,选取最小的代价函数值作为聚类结果,代价函数公式如下 J ( c ( 1 ) , … , c ( m ) , μ 1 , … , μ K ) = 1 m ∑ i = 1 m ∣ ∣ x (

    2024年02月02日
    浏览(53)
  • 使用R语言的apply函数和mean函数计算矩阵每列数据的均值

    使用R语言的apply函数和mean函数计算矩阵每列数据的均值 在R语言中,apply函数是一个非常有用的函数,它可以对矩阵或数据框的行或列进行操作。而mean函数则是用来计算向量或矩阵的均值。结合这两个函数,我们可以很方便地计算矩阵每列数据的均值。 下面我们来演示一下如

    2024年02月01日
    浏览(48)
  • 【统计函数3】——excel常见函数

    相关数据资料来源于网易 函数一览: rank、rand、randbetween、floor、int 求某单元格在某区域内的排名 分开的范围之间可用逗号隔开,最后再用一个小括号括起来。F4可以快速锁定行和列。 看看这个例子:当我们使用rank进行排序时遇到同分的情况该怎么?我们规定同分的情况下

    2024年02月16日
    浏览(36)
  • PyQt结合OpenCV实现实时人流量统计

    之前学的基本都是Web端的技术。前两天的面试,让我深入的去学习一下  Qt 技术,了解完概念之后,才知道我之前接触的类  TkInter  技术,有点安卓开发的味道。。。

    2024年02月12日
    浏览(36)
  • Golang 函数耗时统计

    运行结果: 在函数起始位置计算当前时间,在函数结束位置算出耗时。 运行结果: 计算当前时间与计算耗时放在两处,难免显得丑陋,且不易阅读。如果有多个函数需要统计耗时,那么多处书写重复的两行代码会造成代码冗余。由于 Golang 提供了函数延时执行的功能,借助

    2024年02月16日
    浏览(37)
  • 153基于python和opencv实现实时统计米粒计数

    本期是一个小的demo,对米粒进行实时统计个数。效果图如下: 代码下载和视频演示地址: 153基于python和opencv实现实时统计米粒计数_哔哩哔哩_bilibili 其他代码可了解: 001手写汉字识别-单个汉字识别-pyqt可视化交互界面-python代码\\\') 002unet墙体瑕疵检测-python-pytorch\\\') 003水果识别

    2024年04月11日
    浏览(42)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包