精华内容
下载资源
问答
  • 简单平均偏差如果原数据未分组,则计算平均偏差的公式为:加权平均偏差在分组情况下,平均偏差的计算公式为:为什么要取离差的绝对值?因离差和为零,离差的平均数不能将离差和除以离差的个数求得,而必须将离...

    1.基础知识

    (1)平均值


    (2)平均偏差

    平均偏差是数列中各项数值与其算术平均数的离差绝对值的算术平均数。平均偏差是用来测定数列中各项数值对其平均数离势程度的一种尺度。平均偏差可分为简单平均偏差和加权平均偏差。

    简单平均偏差
    如果原数据未分组,则计算平均偏差的公式为:

    加权平均偏差

    在分组情况下,平均偏差的计算公式为:


    为什么要取离差的绝对值?因离差和为零,离差的平均数不能将离差和除以离差的个数求得,而必须将离差取绝对数来消除正负号。

    平均偏差是反映各标志值与算术平均数之间的平均差异。平均偏差越大,表明各标志值与算术平均数的差异程度越大,该算术平均数的代表性就越小;平均偏差越小,表明各标志值与算术平均数的差异程度越小,该算术平均数的代表性就越大。(下面的亮度判断利用这一特点,当平均偏差小于一定阈值时,才说明算数平均数有代表意义,可以进行进一步判断。)

    2.参考博客:

    https://blog.csdn.net/kklots/article/details/12720359

    这篇博客很多转载,但是作者注释的太不详细了,很多人转载,不知道他们是否真的明白了其中的思路。我不想就这样直接用,还是觉得思考清楚了再用比较好。

    作者思路:

    首先,计算均值,注意此处的均值不是指图像灰度的均值,指的是(图像灰度值-128)的均值。

    da = ∑(xi- 128) / N            N = src.rows * src.cols    i是指扫描图像时每个像素点索引

    其次,计算平均差,利用灰度直方图获取每个灰度值对应的像素个数,以像素个数为权重,利用加权平均偏差的计算公式得平均偏差。

    Ma = ∑|(xi - 128) - da| * Hist[i] / ∑Hist[i]            i是指【0,256)

    然后,根据平均差的值进行判断,此处需要给出一个阈值,作者给的阈值是abs(da)

    如果 Ma < abs(da),图像可能存在亮度异常,进一步利用da判断偏暗还是偏亮,如果da>0,说明大多数像素值都是大于128,图像偏亮;如果da<0,说明大多数像素值都是小于128,图像偏暗。

    我认为此处的阈值没法给一个准确的值,作者取得这个值可能是经过一些测试设定的,这个阈值不是一个定值,可以根据图像的情况变化,有一定的合理性。


    3.基于OpenCV的实现

    理解了思路,自己写出来也就很容易了。

    //参考博客:https://blog.csdn.net/kklots/article/details/12720359
    
    #include<opencv2/opencv.hpp>
    
    using namespace std;
    using namespace cv;
    
    void BrightnessDetect(const cv::Mat &src, int &Refer, float &Mean, float &MeanDev);
    
    int main()
    {
    	cv::Mat src = cv::imread("C:\\Users\\dell\\Desktop\\2图像太亮.jpg", 1);
    	if (src.empty())
    	{
    		cout << "输入图像为空" << endl;
    		return -1;
    	}
    
    	int Refer = 128;
    	float MeanDev = 0.0; 
    	float Mean = 0.0;	
    	BrightnessDetect(src, Refer, Mean, MeanDev);
    	cout << "平均值: " << Mean << endl;
    	cout << "平均偏差: " << MeanDev << endl;
    	cout << "判断结果: " << endl;
    
    	//通过平均偏差的大小来判断是否异常
    	if (MeanDev < abs(Mean))	//平均偏差小于阈值
    	{
    		if (Mean > 0)		//均值大于参考值(128),说明图像太亮
    			cout << "图像过亮!" << endl;
    		else if (Mean < 0)	//均值大于参考值(128),说明图像太暗
    			cout << "图像过暗!" << endl;
    		else
    			cout << "图像亮度正常!" << endl;
    	}
    	else
    		cout << "图像亮度正常!" << endl;
    
    	waitKey(0);
    	return 0;
    }
    
    void BrightnessDetect(const cv::Mat &src, int &Refer, float &Mean, float &MeanDev)
    {
    	CV_Assert(!src.empty());
    
    	cv::Mat gray;	//转换为灰度图
    	if (3 == src.channels())
    		cv::cvtColor(src, gray, CV_BGR2GRAY);
    	else
    		gray = src.clone();
    
    	//计算整幅图像均值,此处利用函数Scalar mean(InputArray src, InputArray mask=noArray())
    	cv::Scalar meanGrayS = cv::mean(gray);
    	float meanGray = meanGrayS[0];
    
    	//认为Refer(128)为图像亮度正常值,进一步计算出图像的偏移均值(自己取的,不太好表达)
    	Mean = meanGray - Refer;
    
    	//计算图像的偏移均值的平均偏差 MD = ∑|x - Mean(x)| / n
    	int nRows = gray.rows;
    	int nCols = gray.cols;
    	int sumTemp = 0;
    	for (int j = 0; j < nRows; j++)
    	{
    		uchar *pGray = gray.ptr<uchar>(j);
    		for (int i = 0; i < nCols; i++)
    		{
    			int diffTemp = pGray[i] - 128;
    			int absTemp = abs(diffTemp - Mean);
    			sumTemp += absTemp;
    		}
    	}
    	MeanDev = ((float)sumTemp / (nRows * nCols));
    
    }
    

    4.测试:


    5.扩展

    (1)做项目的时候,我们关注的往往只是图像中的某一部分,而不是整幅图像。有些情况下整幅图像的亮度正常,但是我们关注的那一部分其实有些亮度异常,需要进行亮度校正。因此,有必要实现一下带图像掩码的亮度检测。实现起来也不难,求均值和平均差时都在掩码图像有效的区域(非0区域)内进行,注意N不能再是整幅图像的像素总数了。

    //参考博客:https://blog.csdn.net/kklots/article/details/12720359
    //自己博客:https://blog.csdn.net/weixin_42142612/article/details/80901580
    
    #include<opencv2/opencv.hpp>
    
    using namespace std;
    using namespace cv;
    
    int BrightnessDetWithMask(const cv::Mat &src, cv::Mat &mask, int &Refer, float &Mean, float &MeanDev);
    
    int main()
    {
    	cv::Mat src = cv::imread("C:\\Users\\dell\\Desktop\\xin2.jpg", 1);
    	if (src.empty())
    	{
    		cout << "输入图像为空" << endl;
    		return -1;
    	}
    
    	cv::Mat mask = cv::imread("C:\\Users\\dell\\Desktop\\xin2mask.jpg", 0);
    		
    	int Refer = 128;
    	float MeanDev = 0.0; 
    	float Mean = 0.0;	
    	BrightnessDetWithMask(src, mask, Refer, Mean, MeanDev);
    
    	cout << "平均值: " << Mean << endl;
    	cout << "平均偏差: " << MeanDev << endl;
    	cout << "判断结果: " << endl;
    
    	//通过平均偏差的大小来判断是否异常,阈值取abs(Mean)
    	if (MeanDev < abs(Mean))	//平均偏差小于阈值,说明各标志值与平均数的差异程度越小,该平均数的代表性就越大
    	{
    		if (Mean > 0)		//均值大于参考值(128),说明图像太亮
    			cout << "图像过亮!" << endl;
    		else if (Mean < 0)	//均值大于参考值(128),说明图像太暗
    			cout << "图像过暗!" << endl;
    		else
    			cout << "图像亮度正常!" << endl;
    	}
    	else
    		cout << "图像亮度正常!" << endl;
    	
    	cv::Mat ValidImg;
    	src.copyTo(ValidImg, mask);
    
    	waitKey(0);
    	return 0;
    }
    
    /*
    * 函数功能:计算图像有效区域平均值和平均差,可以完成图像有效区域的亮度异常判断
    * 输入参数:src		输入图像
    		   mask		输入图像掩码
    		   Refer	输入图像正常参考值,一般取128
    * 输出参数:Mean		输出图像平均值(注意是各像素值减Refer后的平均值)
    		   MeanDev	输出图像平均差
    * 返回值:  int		1	正常
    					-1	输入图像有误
    					-2	输入掩码有误
    					-3	输入亮度参考值有误
    					-4	有效像素点个数为0,计算无意义
    * 备注:根据输出参数可以完成异常判断,假设平均差阈值为T
    		MeanDev < T	图像可能存在异常:
    			Mean > 0	大多数像素值大于参考值,说明图像太亮
    			Mean < 0	大多数像素值小于参考值,说明图像太暗
    */
    int BrightnessDetWithMask(const cv::Mat &src, cv::Mat &mask,int &Refer, float &Mean, float &MeanDev)
    {
    	if(src.empty())
    		return -1;		//输入图像为空
    
    	if (mask.empty())	//输入掩码为空,说明图像全部有效
    		mask = cv::Mat::ones(src.size(), CV_8UC1);
    	else
    	{
    		if (mask.channels() != 1 || mask.size() != src.size())
    			return -2;	//输入掩码不为空,但是格式或者尺寸不对
    	}
    
    	if (Refer >= 256 || Refer < 0)
    		return -3;		//输入参考值有误,范围应该在[0,256)
    
    	cv::Mat gray;	//转换为灰度图
    	if (3 == src.channels())
    		cv::cvtColor(src, gray, CV_BGR2GRAY);
    	else
    		gray = src.clone();
    
    	//计算图像有效区域内均值,此处利用函数Scalar mean(InputArray src, InputArray mask=noArray())
    	cv::Scalar meanGrayS = cv::mean(gray, mask);
    	float meanGray = meanGrayS[0];
    
    	//认为Refer(128)为图像亮度正常值,进一步计算出图像的偏移均值
    	Mean = meanGray - Refer;
    
    	//计算图像有效区域的偏移均值的平均偏差 MD = ∑|x - Mean(x)| / n
    	int nRows = gray.rows;
    	int nCols = gray.cols;
    	int sumTemp = 0;
    	int ValidNum = 0;	//有效像素点个数
    	for (int j = 0; j < nRows; j++)
    	{
    		uchar *pGray = gray.ptr<uchar>(j);	//灰度图像指针
    		uchar *pmask = mask.ptr<uchar>(j);	//掩码图像指针
    		for (int i = 0; i < nCols; i++)
    		{
    			if (pmask[i])	//注意只在掩码图像像素点非0(有效)时进行计算
    			{
    				int diffTemp = pGray[i] - 128;
    				int absTemp = abs(diffTemp - Mean);
    				sumTemp += absTemp;
    
    				ValidNum++;	//统计有效像素点个数
    			}
    		}
    	}
    
    	if (0 == ValidNum)
    		return -4;	//有效像素点个数为0,计算无意义
    
    	MeanDev = (float)(sumTemp) / (float)(ValidNum);
    
    	return 1;
    }
    
    

    (2)亮度检测的后续,需要对图像进行亮度校正。可以考虑gamma校正,图像偏亮和图像偏暗设置不同的校正参数。

    比如,图像太暗,设置gamma  = 1/2.2,使图像整体亮度值变大;图像太亮,设置gamma = 2.2,使图像整体亮度值变小。

    当然gamma校正也可以加上一个图像掩码,只在掩码图像的有效区域进行。


    备注:遇到一个问题,如果总想着不思考,直接找到现成的答案,这种惰性思维很可怕,入职一年了,自己明显感觉没积累什么,很大程度就是没养成一个好的解决问题的习惯。要有意识的改变这种惰性思维,加油!!


    展开全文
  • 1.基础知识 (1)平均值 (2)平均偏差 平均偏差是数列中各项数值与其算术平均数的离差绝对值的算术...在分组情况下,平均偏差的计算公式为: 为什么要取离差的绝对值?因离差和为零,离差的平均数不能将离差...

    1.基础知识

    (1)平均值

    (2)平均偏差

    平均偏差是数列中各项数值与其算术平均数的离差绝对值的算术平均数。平均偏差是用来测定数列中各项数值对其平均数离势程度的一种尺度。平均偏差可分为简单平均偏差和加权平均偏差。

    简单平均偏差
    如果原数据未分组,则计算平均偏差的公式为:


    加权平均偏差

    在分组情况下,平均偏差的计算公式为:

    为什么要取离差的绝对值?因离差和为零,离差的平均数不能将离差和除以离差的个数求得,而必须将离差取绝对数来消除正负号。

    平均偏差是反映各标志值与算术平均数之间的平均差异。平均偏差越大,表明各标志值与算术平均数的差异程度越大,该算术平均数的代表性就越小;平均偏差越小,表明各标志值与算术平均数的差异程度越小,该算术平均数的代表性就越大。(下面的亮度判断利用这一特点,当平均偏差小于一定阈值时,才说明算数平均数有代表意义,可以进行进一步判断。)

    2.参考博客:

    https://blog.csdn.net/kklots/article/details/12720359

    这篇博客很多转载,但是作者注释的太不详细了,很多人转载,不知道他们是否真的明白了其中的思路。我不想就这样直接用,还是觉得思考清楚了再用比较好。

    作者思路:

    首先,计算均值,注意此处的均值不是指图像灰度的均值,指的是(图像灰度值-128)的均值。

    da = ∑(xi- 128) / N            N = src.rows * src.cols    i是指扫描图像时每个像素点索引

    其次,计算平均差,利用灰度直方图获取每个灰度值对应的像素个数,以像素个数为权重,利用加权平均偏差的计算公式得平均偏差。

    Ma = ∑|(xi - 128) - da| * Hist[i] / ∑Hist[i]            i是指【0,256)

    然后,根据平均差的值进行判断,此处需要给出一个阈值,作者给的阈值是abs(da)

    如果 Ma < abs(da),图像可能存在亮度异常,进一步利用da判断偏暗还是偏亮,如果da>0,说明大多数像素值都是大于128,图像偏亮;如果da<0,说明大多数像素值都是小于128,图像偏暗。

    我认为此处的阈值没法给一个准确的值,作者取得这个值可能是经过一些测试设定的,这个阈值不是一个定值,可以根据图像的情况变化,有一定的合理性。

    3.基于OpenCV的实现

    理解了思路,自己写出来也就很容易了。

    //参考博客:https://blog.csdn.net/kklots/article/details/12720359
    #include<opencv2/opencv.hpp>
     
    using namespace std;
    using namespace cv;
     
    void BrightnessDetect(const cv::Mat &src, int &Refer, float &Mean, float &MeanDev);
     
    int main()
    {
    	cv::Mat src = cv::imread("C:\\Users\\dell\\Desktop\\2图像太亮.jpg", 1);
    	if (src.empty())
    	{
    		cout << "输入图像为空" << endl;
    		return -1;
    	}
     
    	int Refer = 128;
    	float MeanDev = 0.0; 
    	float Mean = 0.0;	
    	BrightnessDetect(src, Refer, Mean, MeanDev);
    	cout << "平均值: " << Mean << endl;
    	cout << "平均偏差: " << MeanDev << endl;
    	cout << "判断结果: " << endl;
     
    	//通过平均偏差的大小来判断是否异常
    	if (MeanDev < abs(Mean))	//平均偏差小于阈值
    	{
    		if (Mean > 0)		//均值大于参考值(128),说明图像太亮
    			cout << "图像过亮!" << endl;
    		else if (Mean < 0)	//均值大于参考值(128),说明图像太暗
    			cout << "图像过暗!" << endl;
    		else
    			cout << "图像亮度正常!" << endl;
    	}
    	else
    		cout << "图像亮度正常!" << endl;
     
    	waitKey(0);
    	return 0;
    }
     
    void BrightnessDetect(const cv::Mat &src, int &Refer, float &Mean, float &MeanDev)
    {
    	CV_Assert(!src.empty());
     
    	cv::Mat gray;	//转换为灰度图
    	if (3 == src.channels())
    		cv::cvtColor(src, gray, CV_BGR2GRAY);
    	else
    		gray = src.clone();
     
    	//计算整幅图像均值,此处利用函数Scalar mean(InputArray src, InputArray mask=noArray())
    	cv::Scalar meanGrayS = cv::mean(gray);
    	float meanGray = meanGrayS[0];
     
    	//认为Refer(128)为图像亮度正常值,进一步计算出图像的偏移均值(自己取的,不太好表达)
    	Mean = meanGray - Refer;
     
    	//计算图像的偏移均值的平均偏差 MD = ∑|x - Mean(x)| / n
    	int nRows = gray.rows;
    	int nCols = gray.cols;
    	int sumTemp = 0;
    	for (int j = 0; j < nRows; j++)
    	{
    		uchar *pGray = gray.ptr<uchar>(j);
    		for (int i = 0; i < nCols; i++)
    		{
    			int diffTemp = pGray[i] - 128;
    			int absTemp = abs(diffTemp - Mean);
    			sumTemp += absTemp;
    		}
    	}
    	MeanDev = ((float)sumTemp / (nRows * nCols));
     
    }
    

    4.测试

     

    5.扩展

    (1)做项目的时候,我们关注的往往只是图像中的某一部分,而不是整幅图像。有些情况下整幅图像的亮度正常,但是我们关注的那一部分其实有些亮度异常,需要进行亮度校正。因此,有必要实现一下带图像掩码的亮度检测。实现起来也不难,求均值和平均差时都在掩码图像有效的区域(非0区域)内进行,注意N不能再是整幅图像的像素总数了
     

    //参考博客:https://blog.csdn.net/kklots/article/details/12720359
    //自己博客:https://blog.csdn.net/weixin_42142612/article/details/80901580
     
    #include<opencv2/opencv.hpp>
     
    using namespace std;
    using namespace cv;
     
    int BrightnessDetWithMask(const cv::Mat &src, cv::Mat &mask, int &Refer, float &Mean, float &MeanDev);
     
    int main()
    {
    	cv::Mat src = cv::imread("C:\\Users\\dell\\Desktop\\xin2.jpg", 1);
    	if (src.empty())
    	{
    		cout << "输入图像为空" << endl;
    		return -1;
    	}
     
    	cv::Mat mask = cv::imread("C:\\Users\\dell\\Desktop\\xin2mask.jpg", 0);
    		
    	int Refer = 128;
    	float MeanDev = 0.0; 
    	float Mean = 0.0;	
    	BrightnessDetWithMask(src, mask, Refer, Mean, MeanDev);
     
    	cout << "平均值: " << Mean << endl;
    	cout << "平均偏差: " << MeanDev << endl;
    	cout << "判断结果: " << endl;
     
    	//通过平均偏差的大小来判断是否异常,阈值取abs(Mean)
    	if (MeanDev < abs(Mean))	//平均偏差小于阈值,说明各标志值与平均数的差异程度越小,该平均数的代表性就越大
    	{
    		if (Mean > 0)		//均值大于参考值(128),说明图像太亮
    			cout << "图像过亮!" << endl;
    		else if (Mean < 0)	//均值大于参考值(128),说明图像太暗
    			cout << "图像过暗!" << endl;
    		else
    			cout << "图像亮度正常!" << endl;
    	}
    	else
    		cout << "图像亮度正常!" << endl;
    	
    	cv::Mat ValidImg;
    	src.copyTo(ValidImg, mask);
     
    	waitKey(0);
    	return 0;
    }
     
    /*
    * 函数功能:计算图像有效区域平均值和平均差,可以完成图像有效区域的亮度异常判断
    * 输入参数:src		输入图像
    		   mask		输入图像掩码
    		   Refer	输入图像正常参考值,一般取128
    * 输出参数:Mean		输出图像平均值(注意是各像素值减Refer后的平均值)
    		   MeanDev	输出图像平均差
    * 返回值:  int		1	正常
    					-1	输入图像有误
    					-2	输入掩码有误
    					-3	输入亮度参考值有误
    					-4	有效像素点个数为0,计算无意义
    * 备注:根据输出参数可以完成异常判断,假设平均差阈值为T
    		MeanDev < T	图像可能存在异常:
    			Mean > 0	大多数像素值大于参考值,说明图像太亮
    			Mean < 0	大多数像素值小于参考值,说明图像太暗
    */
    int BrightnessDetWithMask(const cv::Mat &src, cv::Mat &mask,int &Refer, float &Mean, float &MeanDev)
    {
    	if(src.empty())
    		return -1;		//输入图像为空
     
    	if (mask.empty())	//输入掩码为空,说明图像全部有效
    		mask = cv::Mat::ones(src.size(), CV_8UC1);
    	else
    	{
    		if (mask.channels() != 1 || mask.size() != src.size())
    			return -2;	//输入掩码不为空,但是格式或者尺寸不对
    	}
     
    	if (Refer >= 256 || Refer < 0)
    		return -3;		//输入参考值有误,范围应该在[0,256)
     
    	cv::Mat gray;	//转换为灰度图
    	if (3 == src.channels())
    		cv::cvtColor(src, gray, CV_BGR2GRAY);
    	else
    		gray = src.clone();
     
    	//计算图像有效区域内均值,此处利用函数Scalar mean(InputArray src, InputArray mask=noArray())
    	cv::Scalar meanGrayS = cv::mean(gray, mask);
    	float meanGray = meanGrayS[0];
     
    	//认为Refer(128)为图像亮度正常值,进一步计算出图像的偏移均值
    	Mean = meanGray - Refer;
     
    	//计算图像有效区域的偏移均值的平均偏差 MD = ∑|x - Mean(x)| / n
    	int nRows = gray.rows;
    	int nCols = gray.cols;
    	int sumTemp = 0;
    	int ValidNum = 0;	//有效像素点个数
    	for (int j = 0; j < nRows; j++)
    	{
    		uchar *pGray = gray.ptr<uchar>(j);	//灰度图像指针
    		uchar *pmask = mask.ptr<uchar>(j);	//掩码图像指针
    		for (int i = 0; i < nCols; i++)
    		{
    			if (pmask[i])	//注意只在掩码图像像素点非0(有效)时进行计算
    			{
    				int diffTemp = pGray[i] - 128;
    				int absTemp = abs(diffTemp - Mean);
    				sumTemp += absTemp;
     
    				ValidNum++;	//统计有效像素点个数
    			}
    		}
    	}
     
    	if (0 == ValidNum)
    		return -4;	//有效像素点个数为0,计算无意义
     
    	MeanDev = (float)(sumTemp) / (float)(ValidNum);
     
    	return 1;
    }

    (2)亮度检测的后续,需要对图像进行亮度校正。可以考虑gamma校正,图像偏亮和图像偏暗设置不同的校正参数。

    比如,图像太暗,设置gamma  = 1/2.2,使图像整体亮度值变大;图像太亮,设置gamma = 2.2,使图像整体亮度值变小。

    当然gamma校正也可以加上一个图像掩码,只在掩码图像的有效区域进行。

     

    From:一种基于平均值和平均偏差的图像亮度检测方法

     

     

    展开全文
  • 钢材的理论重量是按钢材的公称尺寸和密度(过去称为比重)...二、钢材理论重量的计算公式钢材理论重量计算的计量单位为公斤(kg)。其基本公式为:W(重量kg)=F(断面积mm2)×L(长度m)×ρ(密度g/cm3)×1/1...

    663ec6108fb318023a7fb7524be908e8.png

    钢材的理论重量是按钢材的公称尺寸和密度(过去称为比重)计算得出的重量称之为理论重量。这与钢材的长度尺寸、截面面积和尺寸允许偏差有直接关系。由于钢材在制造过程中的允许偏差,因此用公式计算的理论重量与实际重量有一定出入,所以只作为估算时的参考。

    二、钢材理论重量的计算公式

    钢材理论重量计算的计量单位为公斤(kg)。其基本公式为:
    W(重量kg)=F(断面积mm2)×L(长度m)×ρ(密度g/cm3)×1/1000

    钢的密度ρ为:7.85g/cm3,由此得出各种钢材理论重量计算公式如下:

    品种名称:圆钢/盘条

    计算单位:kg/m

    计算公式:W=0.006165×d2

    公式说明:d=直径mm,

    计算举例:直径100mm的圆钢,求每m重量。每m重量=0.006165×1002=61.65kg

    品种名称:螺纹钢

    计算单位:kg/m

    计算公式:W=0.00617×d2

    公式说明:d=断面直径mm

    计算举例:断面直径为12mm的螺纹钢,求每m重量。每m重量=0.00617×122 ≈0.89kg

    品种名称:方钢

    计算单位:kg/m

    计算公式:W=0.00785×a2

    公式说明:a=边宽mm

    计算举例:边宽20mm的方钢,求每m重量。每m重量=0.00785×202=3.14kg

    品种名称:扁钢

    计算单位:kg/m

    计算公式:W=0.00785×b×d

    公式说明:b=边宽,d=厚mm

    计算举例:边宽40mm,厚5mm的扁钢,求每m重量。每m重量=0.00785×40×5=1.57kg

    品种名称:六角钢

    计算单位:kg/m

    计算公式:W=0.006798×s2

    公式说明:s=对边距离mm

    计算举例:对边距离50mm的六角钢,求每m重量。每m重量=0.006798×502=16.995kg

    品种名称:八角钢

    计算单位:kg/m

    计算公式:W=0.0065×s2

    公式说明:s=对边距离mm

    计算举例:对边距离80mm的八角钢,求每m重量。每m重量=0.0065×802=41.6kg

    品种名称:等边角钢

    计算单位:kg/m

    计算公式:W=0.00785×[d(2b–d)+0.215(R2–2r2)]

    公式说明:b=边宽,d=边厚,R=内弧半径,r=端弧半径(外弧)

    计算举例:求20mm×4mm等边角钢的每m重量。从冶金产品目录中查出4mm×20mm等边角钢的R为3.5,r为1.2,则每m重量=0.00785×[4×(2×20–4)+0.215×(3.52–2×1.22)]=1.15kg

    品种名称:不等边角钢

    计算单位:kg/m

    计算公式:W=0.00785×[d(B+b–d)+0.215(R2–2r2)]

    公式说明:B=长边宽,b=短边宽,d=边厚,R=内弧半径,r=端弧半径

    计算举例:求30mm×20mm×4mm不等边角钢的每m重量。从冶金产品目录中查出30×20×4不等边角钢的R为3.5,r为1.2,则每m重量=0.00785×[4×(30+20–4)+0.215×(3.52–2×1.22)]=1.46kg

    品种名称:槽钢

    计算单位:kg/m

    计算公式:W=0.00785×[hd+2t(b–d)+0.349(R2–r2)]

    公式说明:h=高,b=腿长,d=腰厚,t=平均腿厚,R=内弧半径,r=端弧半径

    计算举例:求80mm×43mm×5mm的槽钢的每m重量。从冶金产品目录中查出该槽钢t为8,R为8,r为4,则每m重量=0.00785×[80×5+2×8×(43–5)+0.349×(82–42)]=8.04kg

    品种名称:工字钢

    计算单位:kg/m

    计算公式:W=0.00785×[hd+2t(b–d)+0.615(R2–r2)]

    公式说明:h=高,b=腿长,d=腰厚,t=平均腿厚,R=内弧半径,r=端弧半径

    计算举例:求250mm×118mm×10mm的工字钢每m重量。从金属材料手册中查出该工字钢t为13,R为10,r为5,则每m重量=0.00785×[250×10+2×13×(118–10)+0.615×(102–52)]=42.03kg

    品种名称:钢板

    计算单位:kg/m2

    计算公式:W=7.85×d

    公式说明:d=厚

    计算举例:厚度4mm的钢板,求每m2重量。每m2重量=7.85×4=31.4kg

    品种名称:钢管(包括无缝钢管及焊接)

    计算单位:kg/m

    计算公式:W=0.02466×S(D–S)

    公式说明:D=外径、S=壁厚

    计算举例:外径为60mm壁厚4mm的无缝钢管,求每m重量。每m重量=0.02466×4×(60–4)=5.52kg

    展开全文
  • 平均绝对偏差(MAE): 计算公式: 优点:平均绝对误差由于离差被绝对值化,不会出现正负相抵消情况,因而,平均绝对误差能更好地反映预测值误差实际情况

    平均绝对偏差(MAD):

    计算公式:

    优点:平均绝对误差由于离差被绝对值化,不会出现正负相抵消的情况,因而,平均绝对误差能更好地反映预测值误差的实际情况

    缺点:若本身真实值就比较大,比如真实值1万,预测值9000,但mae=1000就会造成MAE是比较大的‘

               如真实值10,预测值9,但mae=1,所以不能单独从MAE的值来说明预测能力的好坏。

    应用:用于计算预测值误差

    平均平方误差(MSE)

    计算公式:

    他表示误差的平方的期望值(平均值),均方误差可以评价数据的变化程度,

    优点:1.这种计算方法避免了正负误差不能想加的问题;

               2.由于对误差进行了平方,加大了数值大的误差在指标中的作用,提高了灵敏度

    缺点:对误差进行平方处理,

    应用范围: 1.用于还原平方失真程度;

                       2.平方的形式便于求导,所以常被用作线性回归的损失函数

    平均预测误差(MFE)

    计算公式:

    优点:MFE平均预测误差没有将偏差绝对值化,正负偏差能够抵消,从而反映数据的集中程度。

    缺点:正负偏差相互抵消,使求得的预测误差偏小,比如MFE1=-3,MFE2=+3,那么MFE=0,但实际预测数据存在误差。

    平均绝对百分误差(MAPE)

    计算公式:

    优点:MAPE是衡量预测准确性的统计指标,是百分比值,一般认为MAPE小于10时,预测精度较高

    缺点:如果存在某个实际值At为0,那么MAPE则无法进行计算;

    应用:用来衡量预测模型的准确程度

    展开全文
  • 平均风向计算中对于风向角判断

    千次阅读 2019-04-24 16:17:29
    但依照方法进行数据批量处理过程中发现该方法求得最终平均风向角无法直接应用,需要按照角位象限处理才可以使用,以下列出处理方法以并对偏差来源进行简单分析。 单位矢量法 单位矢量法计算公式: A为单位矢量...
  • 你学过了如何计算指数加权平均数,有一个技术名词叫做偏差修正,可以让平均数运算更加准确,来看看它是怎么运行。 v_t=βv_(t-1)+(1-β)θ_t 在上一个笔记中,这个(红色)曲线对应β值为0.9,这个(绿色)曲线...
  • Optimization Algorithms优化算法 觉得有用话,欢迎一起讨论相互学习~...大体公式就是前一日V值加上当日温度0.1倍,如果用红线表示这个计算数值话就可以得到每日温度指数加权平均值. Vt=βVt−1+(1−...
  • 有效值计算公式如下: 其中:N - 波形样本点数量Vn - 第n个样本点幅值标准偏差定义为: 其中:N - 波形样本点数量Vn - 第n个样本点幅值mean - 幅值V的平均值从上面两个公式易知,对于平均值为零信号,有效...
  • Optimization Algorithms优化算法 觉得有用话,欢迎一起讨论相互学习...大体公式就是前一日V值加上当日温度0.1倍,如果用红线表示这个计算数值话就可以得到每日温度指数加权平均值. \[V_{t}=\beta V_{t-1}+...
  • 红(R),绿(G),靛/蓝紫(I/V)三原色亮度(心理亮度)比为1:1.5:0.6,也就是说,RGI三分量数值为1:(2/3):(5/3),即3:2:5时,亮度相等,对应十六进制值分别为#999900,#006600,#0000FF(不同显示器显示效果可能会有偏差,...
  • 标准偏差

    2009-08-14 16:25:00
    标准偏差越小,这些值偏离平均值就越少, 标准差计算公式反之亦然。标准偏差的大小可通过标准偏差与平均值的倍率关系来衡量。 标准偏差公式:S = Sqr(∑(xn-x拨)^2 /(n-1)) 公式中∑代表总和,x拨代
  • 采用具有1 cm– 1 分辨率Modtran 软件进行了分光谱透射率计算,通过数据建模获得了基于目标天顶角和平均氧气吸收率被动测距公式。该公式避免了氧气吸收率曲线饱和区,使得氧吸收法有效距离估计范围可延伸到...
  • 基于标准Skyrme能量密度泛函和扩展... 结果通常与Skyrme Hartree“ Fock” Bogoliubov计算和核子光势一致,标准偏差很大,并且随着密度增加而迅速增加。 有效质量更好约束条件有助于减少平均场势深度不确定性。
  • 一、重复性的计算 在这里举例计算气体浓度的重复性 1、首先测定某一浓度值,取大约30-50个浓度点,计算平均值。 2、在计算这几个点的标准偏差σ。 由下列图片也可得知公式 二、分辨率的计算 1、分辨率 = 响应度 / ...
  • 对噪声下平均半径的计算误差以及阈值对误差的影响进行了理论和仿真分析,结果表明存在最优阈值使计算误差达到最小,并对不同噪声强度下仿真的最优阈值数据进行拟合,给出了最优阈值拟合公式,分析表明该公式能够较...
  • 1.AVEDEV用途:返回一组数据与其平均值的绝对偏差的平均值,该函数可以评测数据(例如学生的某科考试成绩)的离散度。语法:AVEDEV(number1,number2,...)参数:Number1、number2、...是用来计算绝对偏差平均值的一组...
  • Excel公式和函数方差和标准差方差是一组数据中,各变量值与其均值离差平方和的平均数;而标准差是方差平方根,两者均反映了数据中变量值的平均变异程度。在Excel中,可以利用相应统计函数,轻松、快捷对这些值...
  • 1.2.6 改变公式的计算方式 13 1.3 在公式中使用函数 14 1.3.1 为什么使用函数 14 1.3.2 函数的类型 14 1.3.3 函数的参数 15 1.3.4 在公式中输入函数 16 1.4 在公式中使用名称 18 1.4.1 名称的作用范围 19 ...
  • 通过对常规双折模型重新公式化,我们将核介质效应纳入了α衰变计算。 改进模型使α团簇可以在库仑穿透过程中同时在不同核密度下改变其大小,从而反映了核平均场变化和Pauli在核表面阻塞所产生影响。 为了...
  • 统计学上sd、cv的计算

    千次阅读 2007-11-06 17:56:26
    sd Std Dev,Standard Deviation 标准偏差(Std Dev,Standard Deviation) ...标准偏差的大小可通过标准偏差与平均值的倍率关系来衡量。 标准偏差公式:S = Sqr(∑(xn-x拨)^2 /(n-1)) 公式中∑代表总和,x拨...
  • 使用Bland-Altman图,计算的偏差:男性ME / CFS患者在无氧阈值下实际CPET心率与公式预测心率之间的平均差在-28至19 bpm之间变化。 即使在具有临床上可接受偏倚配方中,所有配方一致极限(均偏±2SD)也...
  • 【DA】z检验p值的计算

    2021-01-05 02:05:58
    该分布的平均值为 0(零),标准偏差为 1。 可以使用此函数代替标准正态曲线面积表。 NORMSDIST(z)NORMSDIST(z)NORMSDIST(z) z :必需值,是需要计算其分布数值。如果 z 是非数字,则 NORMSDIST 返回#VALUE! ...
  • 后张法预应力钢绞线在张拉过程中,主要受到以下两方面的因素影响:一是管道弯曲...1、计算公式(1) 预应力筋伸长值ΔL的计算按照以下公式: ΔL—各分段预应力筋的理论伸长值(mm); Pp—各分段预应力筋的平均张拉力...
  • 后张法预应力钢绞线在张拉过程中,主要受到以下两方面的因素影响:一是管道弯曲影响...1、计算公式(1) 预应筋伸长值ΔL的计算按照以下公式: ΔL—各分段预应力筋的理论伸长值(mm);Pp—各分段预应力筋的平均张拉力(...
  • 获得了具有较高精度温度场分布规律、冻结区半径、管壁热流密度和冻结区平均温度近似计算公式,其相对误差不超过2%;分析证明了影响冻结区半径、管壁热流密度和冻结区平均温度4个主要因素;从理论上解释了数值计算中...
  • 此公众号会发表计算机考研(初复试信息)、夏令营等资料,方便考研人对信息的获取,节约自身查找资料的时间 目录 1. 什么是指数加权平均 ...它的计算公式如下: 其中, θ_t:为第 t 天的实际观察值, V_...
  • 指数加权平均算法

    2018-09-18 12:41:50
    计算方法 偏差修正 定义 有一个数列{an},每一项都受到前面影响。指数加权平均定量描述了这种影响。 例如:一个地区天气,每一天天气都和前面几天有关。 那么怎么描述这种关系呢? 上公式:...
  • 性质:又称均方根误差,当对某一量进行甚多次测量时,取这一测量列真误差均方根差(真误差平方算术平均值再开方),称为标准偏差,以σ表示。σ反映了测量数据偏离真实值程度,σ越小,表示测量精度越高,因此...
  • 分析了利用Shack-Hartmann波前传感器子孔径对之间光强信号的时间延迟交叉相关函数, 进行光传播路径上横向平均风速测量的基本原理, 给出了横向平均风速的计算公式, 并进行了水平1 km湍流大气实验测量。实验结果如下: ...
  • MSE与MAE区别与选择1.均方误差(也称L2损失)均方误差(MSE)是最常用回归损失函数,...其只衡量了预测值误差平均模长,而不考虑方向,取值范围也是从0到正无穷(如果考虑方向,则是残差/误差总和——平均偏差(M...

空空如也

空空如也

1 2 3 4 5
收藏数 86
精华内容 34
关键字:

平均偏差的计算公式