用神经网络训练计算机来预测图像

2025-10-28 09:35:23

1、给定一幅RGB图片,并转化为像素数据:

a=ImageData[img];

用神经网络训练计算机来预测图像

2、查看图片的尺寸:

b=ImageDimensions[img]

c=Reverse[b]

用神经网络训练计算机来预测图像

3、把图片转化为训练集:

r= Flatten@MapIndexed[(2(#2-1.)/(c-1)-1.)->#1 &,a,{2}];

输入值为像素的位置;

输出值为像素的RGB颜色参数。

用神经网络训练计算机来预测图像

4、构造一个未训练的神经网络:

d=NetChain[{100,Ramp,250,Ramp,10,LogisticSigmoid,3}]

输出值为3元向量。

因此,你步骤一准备的图片如果不是RGB图片,请用Rasterize处理一下,免得训练的时候报错。

用神经网络训练计算机来预测图像

5、用训练集r来训练神经网络d,训练20回合:

t=NetTrain[d,r, MaxTrainingRounds -> 20];

用神经网络训练计算机来预测图像

6、用训练的神经网络来预测原图,看看预测效果:

p=Range[-1,1,2./#]&/@c;q = Tuples[p];Image[Partition[t@q, Length[p[[2]]]]]

额,一塌糊涂。

用神经网络训练计算机来预测图像

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢