数据处理与模型性能评估
1. 数据处理
1.1 图像像素颜色值读取
在处理图像时,我们可以通过嵌套循环遍历图像的行和列来读取每个像素的颜色值。代码如下:
size_t i{0};
for (long r = 0; r < img.nr(); ++r) {
for (long c = 0; c < img.nc(); ++c) {
ch1[i] = img[r][c].red;
ch2[i] = img[r][c].green;
ch3[i] = img[r][c].blue;
++i;
}
}
这样可以得到三个包含颜色通道值的容器,可分别用于初始化灰度图像或矩阵对象,以便进行图像处理或线性代数运算。
1.2 数据归一化
数据归一化是机器学习中至关重要的预处理步骤,它能将多尺度的数据转换到相同的尺度。不同特征值可能具有不同的尺度,这会对许多机器学习算法产生显著影响。例如,在基于欧几里得距离的分类算法中,特征值差异较大的特征可能会主导其他特征。一些算法,如支持向量机(SVM)和神经网络,通常需要归一化的输入数据。此外,数据归一化还会影响优化算法的收敛速度。
常见的归一化方法有标准化、最小 - 最大归一化和均值归一化:
- 标准化 :使数据的均值为 0,标准差为 1。公式为:(此处原文档公式缺失,可补充为 (z = \frac{x - \mu}{\sigma}),其中 (x) 是原始向量,(\mu) 是均值,(\sigma) 是
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



