在学习了神经网络的诸多案例后,很多同学都想实验一下,用神经网络训练自己的数据,使其能够应用于生活当中,但是却因为无法制作自己数据集而困扰,这里分享一下,通过python将数据整理存盘,制作成可训练的数据集。
在python中训练神经网络,以python的数据格式来讲,自己训练的每一份数据都是一个list并且有一个对应的标签【例:[[1231,4564],[1]]】分为训练数据和识别标签。这里我们以图片训练为例,先将一张图片转为单通道——灰度图然后再将图片进行转化为一串数据制作成一个list。
def Pic_change(Picture): #将传入的二位图片转为一维的list
Picture = cv2.cvtColor(Picture,cv2.COLOR_BGR2GRAY)
Picture = cv2.resize(Picture,(200,200))
list_load = []
for i in range(200):
for j in range(200):
pixel = float(Picture[i][j])/255.0
list_load.append(pixel)
arr1 = np.array(list_load)
return arr1
这里我们首先使用了opencv中的转换函数,使彩色图片转为单通道数据,并将其resize成一个固定大小,为了防止训练图片不一样大,通过循环得到每一个像素的值,用append方法添加到list中,其中除以255.0是为了使数据的取值范围在激励函数的取值范围内【注:灰度图像素取值为0-255,相除后取值在0-1之间,符合激励函数的输出范围】这样就可以得到一张可训练图片的list了
Train = [] #新建一个空的list用于保存图片
list = Pic_change(Picture)#得到Picture的数据
Train.append(list)
Train.append(label) #这样就获得了一个可以训练的拥有标签的list了
关于存储请参考另一篇手记
点击查看更多内容
2人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦