当前位置: 首页 > news >正文

建设网站需要几部分做网站 技术

建设网站需要几部分,做网站 技术,学网站开发如何挣钱,18款app软件免费下载意义 客观世界的场景含有丰富多彩的信息#xff0c;但是由于受到硬件设备的成像条件和成像方式的限制#xff0c;难以获得原始场景中的所有信息。而且#xff0c;硬件设备分辨率的限制会不可避免地使图像丢失某些高频细节信息。在当今信息迅猛发展的时代#xff0c;在卫星…意义 客观世界的场景含有丰富多彩的信息但是由于受到硬件设备的成像条件和成像方式的限制难以获得原始场景中的所有信息。而且硬件设备分辨率的限制会不可避免地使图像丢失某些高频细节信息。在当今信息迅猛发展的时代在卫星遥感、医学影像、多媒体视频等领域中对图像质量的要求越来越高人们不断寻求更高质量和更高分辨率的图像来满足日益增长的需求。 空间分辨率的大小是衡量图像质量的一个重要指标也是将图像应用到实际生活中重要的参数之一。分辨率越高的图像含有的细节信息越多图像清晰度越高在实际应用中对各种目标的识别和判断也更加准确。 但是通过提高硬件性能从而提高图像的分辨率的成本高昂。因此为了满足对图像分辨率的需求又不增加硬件成本的前提下依靠软件方法的图像超分辨率重建应运而生。 超分辨率图像重建是指从一系列有噪声、模糊及欠采样的低分辨率图像序列中恢复出一幅高分辨率图像的过程。可以针对现有成像系统普遍存在分辨率低的缺陷运用某些算法提高所获得低分辨率图像的质量。因此超分辨率重建算法的研究具有广阔的发展空间。 方法的具体细节 评价指标 峰值信噪比 峰值信噪比(Peak Signal-to-Noise Ratio), 是信号的最大功率和信号噪声功率之比来测量被压缩的重构图像的质量通常以分贝来表示。PSNR指标值越高说明图像质量越好。 SSIM计算公式如下 MSE表示两个图像之间对应像素之间差值平方的均值。 表示图像中像素的最大值。对于8bit图像一般取255。 表示图像X在 ij 处的像素值 表示图像Y在 ij 处的像素值 结构相似性评价 结构相似性评价(Structural Similarity Index), 是衡量两幅图像相似度的指标取值范围为0到1。SSIM指标值越大说明图像失真程度越小图像质量越好。 SSIM计算公式如下 这两种方式一般情况下能较为准确地评价重建效果。但是毕竟人眼的感受是复杂丰富的所以有时也会出现一定的偏差。 EDSR SRResNet在SR的工作中引入了残差块取得了更深层的网络而EDSR是对SRResNet的一种提升其最有意义的模型性能提升是去除掉了SRResNet多余的模块BN层 EDSR把批规范化处理(batch normalization, BN)操作给去掉了。 论文中说原始的ResNet最一开始是被提出来解决高层的计算机视觉问题比如分类和检测直接把ResNet的结构应用到像超分辨率这样的低层计算机视觉问题显然不是最优的。由于批规范化层消耗了与它前面的卷积层相同大小的内存在去掉这一步操作后相同的计算资源下EDSR就可以堆叠更多的网络层或者使每层提取更多的特征从而得到更好的性能表现。EDSR用L1损失函数来优化网络模型。 1.解压数据集 因为训练时间可能不是很长所以这里用了BSD100可以自行更换为DIV2K或者coco # !unzip -o /home/aistudio/data/data121380/DIV2K_train_HR.zip -d train # !unzip -o /home/aistudio/data/data121283/Set5.zip -d test 2.定义dataset import os from paddle.io import Dataset from paddle.vision import transforms from PIL import Image import random import paddle import PIL import numbers import numpy as np from PIL import Image from paddle.vision.transforms import BaseTransform from paddle.vision.transforms import functional as F import matplotlib.pyplot as pltclass SRDataset(Dataset):def __init__(self, data_path, crop_size, scaling_factor)::参数 data_path: 图片文件夹路径:参数 crop_size: 高分辨率图像裁剪尺寸 实际训练时不会用原图进行放大而是截取原图的一个子块进行放大:参数 scaling_factor: 放大比例self.data_pathdata_pathself.crop_size int(crop_size)self.scaling_factor int(scaling_factor)self.images_path[]# 如果是训练则所有图像必须保持固定的分辨率以此保证能够整除放大比例# 如果是测试则不需要对图像的长宽作限定# 读取图像路径for name in os.listdir(self.data_path):self.images_path.append(os.path.join(self.data_path,name))# 数据处理方式self.pre_transtransforms.Compose([# transforms.CenterCrop(self.crop_size),transforms.RandomCrop(self.crop_size),transforms.RandomHorizontalFlip(0.5),transforms.RandomVerticalFlip(0.5),# transforms.ColorJitter(brightness0.3, contrast0.3, hue0.3),])self.input_transform transforms.Compose([transforms.Resize(self.crop_size//self.scaling_factor),transforms.ToTensor(),transforms.Normalize(mean[0.5],std[0.5]),])self.target_transform transforms.Compose([transforms.ToTensor(),transforms.Normalize(mean[0.5],std[0.5]),])def __getitem__(self, i):# 读取图像img Image.open(self.images_path[i], moder)img img.convert(RGB)imgself.pre_trans(img)lr_img self.input_transform(img)hr_img self.target_transform(img.copy())return lr_img, hr_imgdef __len__(self):return len(self.images_path)测试dataset # 单元测试train_pathtrain/DIV2K_train_HR test_pathtest dsSRDataset(train_path,96,2) l,hds[1]# print(type(l)) print(l.shape) print(h.shape)lnp.array(l) hnp.array(h) print(type(l)) ll.transpose(2,1,0) hh.transpose(2,1,0) print(l.shape) print(h.shape)plt.subplot(1, 2, 1) plt.imshow(((l1)/2)) plt.title(l) plt.subplot(1, 2, 2) plt.imshow(((h1)/2)) plt.title(h) plt.show() 定义网络结构 较rsresnet少了归一化层以及更深的残差块 from paddle.nn import Layer from paddle import nn import mathn_feat 256 kernel_size 3# 残差块 尺寸不变 class _Res_Block(nn.Layer):def __init__(self):super(_Res_Block, self).__init__()self.res_conv nn.Conv2D(n_feat, n_feat, kernel_size, padding1)self.relu nn.ReLU()def forward(self, x):y self.relu(self.res_conv(x))y self.res_conv(y)y * 0.1# 残差加入y paddle.add(y, x)return yclass EDSR(nn.Layer):def __init__(self):super(EDSR, self).__init__()in_ch 3num_blocks 32self.conv1 nn.Conv2D(in_ch, n_feat, kernel_size, padding1)# 扩大self.conv_up nn.Conv2D(n_feat, n_feat * 4, kernel_size, padding1)self.conv_out nn.Conv2D(n_feat, in_ch, kernel_size, padding1)self.body self.make_layer(_Res_Block, num_blocks)# 上采样self.upsample nn.Sequential(self.conv_up, nn.PixelShuffle(2))# 32个残差块def make_layer(self, block, layers):res_block []for _ in range(layers):res_block.append(block())return nn.Sequential(*res_block)def forward(self, x):out self.conv1(x)out self.body(out)out self.upsample(out)out self.conv_out(out)return out 看paddle能不能用gpu import paddle print(paddle.device.get_device())paddle.device.set_device(gpu:0) 训练一般4个小时就可以达到一个不错的效果set5中psnr可以达到27左右当然这时间还是太少了 import os from math import log10 from paddle.io import DataLoader import paddle.fluid as fluid import warnings from paddle.static import InputSpecif __name__ __main__:warnings.filterwarnings(ignore, categoryWarning) # 过滤报警信息train_pathtrain/DIV2K_train_HRtest_pathtestcrop_size 96 # 高分辨率图像裁剪尺寸scaling_factor 2 # 放大比例# 学习参数checkpoint ./work/edsr_paddle # 预训练模型路径如果不存在则为Nonebatch_size 30 # 批大小start_epoch 0 # 轮数起始位置epochs 10000 # 迭代轮数workers 4 # 工作线程数lr 1e-4 # 学习率# 先前的psnrpre_psnr32.35try:model paddle.jit.load(checkpoint)print(加载先前模型成功)except:print(未加载原有模型训练)model EDSR()# 初始化优化器scheduler paddle.optimizer.lr.StepDecay(learning_ratelr, step_size1, gamma0.99, verboseTrue)optimizer paddle.optimizer.Adam(learning_ratescheduler,parametersmodel.parameters())criterion nn.MSELoss()train_dataset SRDataset(train_path, crop_size, scaling_factor)test_dataset SRDataset(test_path, crop_size, scaling_factor)train_loader DataLoader(train_dataset,batch_sizebatch_size,shuffleTrue,num_workersworkers,)test_loader DataLoader(test_dataset,batch_sizebatch_size,shuffleFalse,num_workersworkers,)for epoch in range(start_epoch, epochs1):model.train() # 训练模式允许使用批样本归一化train_loss0n_iter_train len(train_loader)train_psnr0# 按批处理for i, (lr_imgs, hr_imgs) in enumerate(train_loader):lr_imgs lr_imgshr_imgs hr_imgssr_imgs model(lr_imgs)loss criterion(sr_imgs, hr_imgs) optimizer.clear_grad()loss.backward()optimizer.step()train_lossloss.item()psnr 10 * log10(1 / loss.item())train_psnrpsnrepoch_loss_traintrain_loss / n_iter_traintrain_psnrtrain_psnr/n_iter_trainprint(fEpoch {epoch}. Training loss: {epoch_loss_train} Train psnr {train_psnr}DB)model.eval() # 测试模式test_loss0all_psnr 0n_iter_test len(test_loader)with paddle.no_grad():for i, (lr_imgs, hr_imgs) in enumerate(test_loader):lr_imgs lr_imgshr_imgs hr_imgssr_imgs model(lr_imgs)loss criterion(sr_imgs, hr_imgs)psnr 10 * log10(1 / loss.item())all_psnrpsnrtest_lossloss.item()epoch_loss_testtest_loss/n_iter_testepoch_psnrall_psnr / n_iter_testprint(fEpoch {epoch}. Testing loss: {epoch_loss_test} Test psnr{epoch_psnr} dB)if epoch_psnrpre_psnr:paddle.jit.save(model, checkpoint,input_spec[InputSpec(shape[1,3,48,48], dtypefloat32)])pre_psnrepoch_psnrprint(模型更新成功)scheduler.step() 测试需要自己上传一张低分辨率的图片 import paddle from paddle.vision import transforms import PIL.Image as Image import numpy as npimgOImage.open(img_003_SRF_2_LR.png,moder) #选择自己图片的路径 imgtransforms.ToTensor()(imgO).unsqueeze(0)#导入模型 netpaddle.jit.load(./work/edsr_paddle)source net(img)[0, :, :, :] source source.cpu().detach().numpy() # 转为numpy source source.transpose((1, 2, 0)) # 切换形状 source np.clip(source, 0, 1) # 修正图片 img Image.fromarray(np.uint8(source * 255))plt.figure(figsize(9,9)) plt.subplot(1, 2, 1) plt.imshow(imgO) plt.title(input) plt.subplot(1, 2, 2) plt.imshow(img) plt.title(output) plt.show()img.save(./sr.png) EDSR_X2效果 双线性插值放大效果 EDSR_X2放大效果 双线性插值放大效果 EDSR_X2放大效果 原文 EDSR图像超分重构
http://www.hkea.cn/news/14590550/

相关文章:

  • 中国物流企业网站建设问题wordpress 关闭畅言
  • 住房与城乡建设部建设环境工程技术中心网站查工程中标信息哪个网站
  • 建设网站的企业邮箱网站建设服务最火的推广软件
  • 响应式中文网站欣赏杭州网站案列
  • 做试卷挣钱的网站怎么和客户推广说网站建设语
  • 无锡商业网站建设群艺馆网站建设方案
  • 岗巴网站建设如何盗取网站
  • 郴州网站网站建设智慧企业管理平台
  • 网站建设课程报告论文最有效的app推广方式有哪些
  • 家里电脑可以做网站服务器吗站长工具seo排名查询
  • 富阳建设局网站电话微信广告投放推广平台
  • 郑州网站建设哪里好外贸一般上什么网站
  • 八亿建站千博企业网站管理系统2013
  • 温州营销网站制作费用36kr是用wordpress吗
  • 怎么做网站电影自己如何建设一个彩票网站
  • 网站建设报告内容考幼师证去哪个网站做试题
  • 招聘网站哪个好用推荐做pc端网站
  • 深圳免费网站制作哪个好百度指数数据分析平台
  • 网站上有什么作用网站建设企业响应式网站模板
  • 上海黄浦网站建设营口市代做网站
  • 做公司网站哪个好新手做销售怎么开发客户
  • 网站建设费用进会计什么科目wordpress用户量上限
  • 做网站然后推广建网站做相亲
  • 宁波网站建设制作多少钱国外最火的网站
  • 做外贸哪些网站比较好大连网站建设设计
  • 网站建设英语词汇长沙推广专员招聘
  • 营销导向的网站建设的主要流程宝安建设与住宅局网站
  • 购买的网站平台建设服务计入成都网站制作收费
  • 烟台百度网站推广数码产品销售网站建设策划书
  • 网站设计怎么算侵权网站设计术语