颜色读数与物质浓度模型的新思考
2020-12-11王雁
王 雁
(四川信息职业技术学院, 四川广元 637000)
比色法是目前常用的一种检测物质浓度的方法, 即把待测物质制备成溶液后滴在特定的白色试纸上, 等其充分反应以后获得一张有颜色的试纸, 再把该颜色试纸与一个标准比色卡进行对比, 就可以确定待测物质的浓度了. 由于每个人对颜色的视觉差异和观测误差, 使得这一方法在精度上受到很大影响. 随着照相技术和颜色分辨率的提高, 希望建立颜色读数和物质浓度的数量关系, 即只要输入照片中的颜色读数就能够获得待测物质的浓度. 本文以溴酸钾为例, 确定颜色读数和物质浓度之间的关系, 并建立颜色读数和物质浓度的数学模型.
1 问题分析和模型假设
由于比色法存在主观上的视觉差异, 导致每一种物质在同浓度下, 有一组或多组的颜色读数. 为了准确预测颜色读数和物质浓度间的关系, 对同浓度下所测得的读数取均值, 用均值进行数据分析和模型建立.
首先讨论B、 R、 G、 H、 S这五种色卡颜色的读数与物质浓度间是否存在相关性, 剔除其中相关性较弱的色卡, 选择相关系数大的色卡进行建模. 其次, 由于观察可知数据呈现明显的递增趋势, 所以考虑建立一元线性回归模型. 但是建模数据较少, 考虑建立灰色模型.
2 模型选择和建立
实验数据来自2017年全国大学生数学建模比赛C题附件1(表1).
表1 同浓度的溴酸钾在比色卡上的读数
2.1 颜色读数与物质浓度相关性分析
图1说明溴酸钾在不同浓度下, 五种显色卡读数的变化情况.
图1 色卡随浓度变化情况
从折线图可以看出, 色卡S随着浓度逐渐增大而读数也增大, 而色卡B、 G随着浓度逐渐增大而读数减小, H、 R色卡变化并不明显. 为了增强观察的可靠性, 进一步做相关性检验.
由表2可知, 除R色卡读数不能确定物质浓度之外, 其余色卡读数均可确定物质浓度, 选取相关系数较大的前三列B、 G、 S色卡作为建模数据.
表2 浓度与色卡读数的相关性分析
2.2 颜色读数与物质浓度的模型建立
2.2.1 一元线性回归模型
经过以上初步分析, 物质浓度与颜色读数存在线性关系, 因此考虑做一元线性回归.
B色卡:Y=97.418-0.857X,R2=0.915
计算误差可得表3结果.
表3 B色卡一元线性回归模型与原始值间的残差
G色卡:
Y=1385.395-9.882X,R2=0.761
计算误差可得表4结果.
表4 G色卡一元线性回归模型与原始值间的残差
S色卡:
Y=-26.131+0.487X,R2=0.908
计算误差可得表5结果.
表5 S色卡一元线性回归模型与原始值间的残差
由上述分析可知B、 S色卡拟合效果较好, 相关系数的平方和均达到了0.9以上. 其中B、 G、 S三种色卡所建立的模型标准误差中, B色卡模型13.3361
2.2.2 灰色线性回归模型
灰色线性回归模型弥补了原线性回归模型不能描述指数增长趋势和GM(1,1)模型不能描述变量间的线性关系的不足, 因此该组合模型更适用于既有线性趋势又有指数增长趋势的序列.
事实上, 若有序列X(0)=(x(0)(1),x(0)(2), …,x(0)(n)) ,X(0)的一次累加序列为
X(1)=(x(1)(1),x(1)(2), …,x(1)(n)), 则称
为灰色线性回归组合模型. 针对B、 G、 H建立灰色线性回归模型.
B色卡:
表6 B色卡灰色线性回归模型与原始值间的残差
G色卡:
表7 G色卡灰色线性回归模型与原始值间的误差
图3 G色卡浓度变化情况
S色卡:
表8 S色卡灰色线性回归模型与原始值间的残差
图4 S色卡浓度变化情况
通过对B、 G、 S色卡建立灰色线性回归模型, 由图2, 3, 4可直观地看到, 预测值和原始值拟合效果非常好. 再由误差分析可以得出, 利用灰色线性回归建立的模型, 其残差远远小于一元线性回归模型. 其中B、 G、 S三种色卡所建立的模型标准误差中, G色卡模型0.2511< B色卡模型1.4032
图2 B色卡浓度变化情况
3 结 论
本文先对数据进行了相关性分析, 发现并不是所有的比色卡读数都和浓度有相关关系, 特别是R色卡, 在不同浓度下没有明显差异, 基于此选择相关性较大的三种比色卡进行建模分析. 首先尝试建立了一元线性回归模型, 在残差分析中, 此模型精度差, 拟合效果不好. 而数据既有线性趋势又有指数增长趋势, 因此考虑建立灰色线性回归模型来优化拟合效果, 通过建立灰色线性回归模型, 发现拟合效果优于一元线性回归模型.