具体做法是:色彩浓度在阈值以上的像素,取值为1,低于阈值就让它为0。
这样一来,原本的真彩色照片,就被转换成了黑白轮廓图。
然后,再将轮廓图中的0或者1的取值,按照从左到右、从上到下的顺序,重新编排成一行数据,存放到数组Feature中。
Feature中的每一行,都存储了一张照片的二值化信息。
一共9527张照片,就需要9527行。
全部照片处理完毕后,就得到了一个巨大的二维数组Feature。
它有25200列、9527行。
接下来,定义一个拥有9527个整形元素的一维数组Label。
从label.xls中读入性别信息,男生设为1,女生设为0,存放在数组Label中。
Feature加上对应的Label,就构成了训练数据集。
训练“感知机”时,将一行行Feature代入公式中,进行加权和运算,其结果再通过sign函数,转换为0或1,然后和对应的Label值对照。
如果不相符,就调整权重和偏置,然后重新计算。
当每一个Feature代入公式后,都能计算出正确的Label时,就得到了一组权重和偏置。
也就是说,构建出了一个可用的数学模型。
依据这个模型,计算机就可以读入任何一张同尺寸、类型的照片,对其二值化
本章还未完,请点击下一页继续阅读>>>