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

go语言可以做网站吗jquery电子商务网站模板

go语言可以做网站吗,jquery电子商务网站模板,品牌策划公司取名,网站建设报价图片欣赏Deeplab是图像分割领域非常强大的模型#xff0c;在前面的博文中我们也进行过很多相应项目的开发实践#xff0c;感兴趣的话可以自行移步阅读即可#xff1a; 《基于DeepLabv3Plus开发构建人脸人像分割系统》 《基于DeepLabV3实践路面、桥梁、基建裂缝裂痕分割》 《基于D…Deeplab是图像分割领域非常强大的模型在前面的博文中我们也进行过很多相应项目的开发实践感兴趣的话可以自行移步阅读即可 《基于DeepLabv3Plus开发构建人脸人像分割系统》 《基于DeepLabV3实践路面、桥梁、基建裂缝裂痕分割》 《基于DeepLabV3Plus实现质检划痕图像分割识别系统》 《基于DeepLabV3Plus实现无人机航拍目标分割识别系统》 《python基于DeepLabv3开发构建河道分割识别系统》 《基于DeepLabV3Plus实现焊缝分割识别系统》 《python基于DeeplabV3Plus开发构建裂缝分割识别系统并实现裂缝宽度计算测量》 《AI助力隧道等洞体类场景下水泥基建缺陷检测基于DeeplabV3Plus开发构建洞体场景下壁体建筑缺陷分割系统》 本文的核心目的就是想要基于DeepLabV3Plus来开发构建手机屏幕表面缺陷图像智能分割识别系统助力工业生产流程上的智能化首先看下实例效果 在图像分割领域中有不少优秀出色的网络DeepLab系列就是其中非常经典的分支之一在之前的很多项目中陆续都已经有接触到了在处理图像分割中表现出色。 DeepLabV3Plus是一种用于语义分割任务的深度学习模型它是DeepLab系列模型的一种改进版本。下面详细解释DeepLabV3Plus的原理 引入空洞卷积Dilated ConvolutionDeepLabV3Plus利用空洞卷积来扩大感受野以更好地捕捉图像中的上下文信息。传统的卷积操作只关注局部区域而空洞卷积通过在卷积核中引入间隔或称为膨胀率使得卷积核能够跳过一些像素点从而扩大感受野。 多尺度金字塔池化Multi-scale Atrous Spatial Pyramid Pooling, ASPPDeepLabV3Plus使用ASPP模块来处理不同尺度的信息。ASPP模块使用多个并行的空洞卷积分支每个分支具有不同的膨胀率以捕捉来自不同感受野的特征。最后将这些特征进行汇总并进行融合以生成更丰富的特征表示。 融合低级特征为了结合低层次的细节特征DeepLabV3Plus引入了一个编码器-解码器结构。在编码器部分通过堆叠多个残差块和降采样操作提取高层次的语义特征。然而这会导致空间信息的丢失。因此在解码器部分使用反卷积或上采样操作来恢复特征图的分辨率并与对应的低级特征进行融合。 融合注意力机制为了进一步提升融合的效果DeepLabV3Plus引入了注意力机制。该机制利用辅助监督信号和空间注意力模块自适应地对不同的特征图进行加权融合。这样可以使网络更加关注重要的特征区域提升语义分割的准确性。 DeepLabV3Plus通过引入空洞卷积、多尺度金字塔池化、融合低级特征和注意力机制等改进提升了语义分割任务的性能。它能够准确地标记图像中每个像素的类别从而在许多计算机视觉领域如图像分割、自动驾驶等中发挥着重要作用。 整体网络结构图如下所示 接下来看下数据集 共包含油污、划痕和斑点这三种常见的手机屏幕缺损类型。 DeepLabV3Plus核心实现如下 import tensorflow as tf from keras import backend as K from keras.layers import (Activation,BatchNormalization,Concatenate,Conv2D,DepthwiseConv2D,Dropout,GlobalAveragePooling2D,Input,Lambda,Softmax,ZeroPadding2D, ) from keras.models import Model from modules.mobilenet import mobilenetV2 from modules.Xception import Xceptiondef SepConv_BN(x,filters,prefix,stride1,kernel_size3,rate1,depth_activationFalse,epsilon1e-3, ):if stride 1:depth_padding sameelse:kernel_size_effective kernel_size (kernel_size - 1) * (rate - 1)pad_total kernel_size_effective - 1pad_beg pad_total // 2pad_end pad_total - pad_begx ZeroPadding2D((pad_beg, pad_end))(x)depth_padding validif not depth_activation:x Activation(relu)(x)x DepthwiseConv2D((kernel_size, kernel_size),strides(stride, stride),dilation_rate(rate, rate),paddingdepth_padding,use_biasFalse,)(x)x BatchNormalization(epsilonepsilon)(x)if depth_activation:x Activation(relu)(x)x Conv2D(filters, (1, 1), paddingsame, use_biasFalse)(x)x BatchNormalization(epsilonepsilon)(x)if depth_activation:x Activation(relu)(x)return xdef Deeplabv3(input_shape, num_classes, alpha1.0, backbonemobilenet, downsample_factor16 ):img_input Input(shapeinput_shape)x, atrous_rates, skip1 MobileNet(img_input, alpha, downsample_factordownsample_factor)size_before tf.keras.backend.int_shape(x)b0 Conv2D(256, (1, 1), paddingsame, use_biasFalse)(x)b0 BatchNormalization(epsilon1e-5)(b0)b0 Activation(relu)(b0)b1 SepConv_BN(x, 256, A!, rateatrous_rates[0], depth_activationTrue, epsilon1e-5)b2 SepConv_BN(x, 256, A2, rateatrous_rates[1], depth_activationTrue, epsilon1e-5)b3 SepConv_BN(x, 256, A3, rateatrous_rates[2], depth_activationTrue, epsilon1e-5)b4 GlobalAveragePooling2D()(x)b4 Lambda(lambda x: K.expand_dims(x, 1))(b4)b4 Lambda(lambda x: K.expand_dims(x, 1))(b4)b4 Conv2D(256, (1, 1), paddingsame, use_biasFalse)(b4)b4 BatchNormalization(epsilon1e-5)(b4)b4 Activation(relu)(b4)b4 Lambda(lambda x: tf.image.resize_images(x, size_before[1:3], align_cornersTrue))(b4)x Concatenate()([b4, b0, b1, b2, b3])x Conv2D(256, (1, 1), paddingsame, use_biasFalse)(x)x BatchNormalization(epsilon1e-5)(x)x Activation(relu)(x)x Dropout(0.1)(x)skip_size tf.keras.backend.int_shape(skip1)x Lambda(lambda xx: tf.image.resize_images(xx, skip_size[1:3], align_cornersTrue))(x)dec_skip1 Conv2D(48, (1, 1), paddingsame, use_biasFalse)(skip1)dec_skip1 BatchNormalization(epsilon1e-5)(dec_skip1)dec_skip1 Activation(tf.nn.relu)(dec_skip1)x Concatenate()([x, dec_skip1])x SepConv_BN(x, 256, DC0, depth_activationTrue, epsilon1e-5)x SepConv_BN(x, 256, DC1, depth_activationTrue, epsilon1e-5)size_before3 tf.keras.backend.int_shape(img_input)x Conv2D(num_classes, (1, 1), paddingsame)(x)x Lambda(lambda xx: tf.image.resize_images(xx, size_before3[1:3], align_cornersTrue))(x)x Softmax()(x)model Model(img_input, x)return model基于轻量级的MobileNet作为骨干网络来实现特征的提取即使是在算力较弱的设备下也可以完成训练。在自己的项目中也可以直接整合集成使用。 训练完成后对整体进行可视化核心实现如下 from matplotlib import pyplot as pltwith open(train.txt) as f:train_list [float(one) for one in f.readlines() if one.strip()] with open(val.txt) as f:val_list [float(one) for one in f.readlines() if one.strip()] print(train_list_length: , len(train_list)) print(val_list_length: , len(val_list))plt.clf() plt.figure(figsize(8, 6)) plt.plot(train_list, labelTrain Loss Cruve, cg) plt.plot(val_list, labelVal Loss Cruve, cb) plt.title(Model Loss Cruve) plt.savefig(loss.png) 结果如下所示 这里分为两个阶段进行训练首先是冷冻训练主要是基于预训练权重来进行训练如下 这一阶段大部分参数被冻结模型的整体损失比较高完成预热之后解冻模型参数开启全量训练如下所示 这里为了方便使用模型开发了专用的可视化系统界面实例推理计算效果如下所示 直观来看效果还是不错的有兴趣的话都是可以自己动手实践一下的。
http://www.huolong8.cn/news/353390/

相关文章:

  • 境内境外网站区别怎么设置网站字体
  • 中国建设网站下载主题猫-wordpress
  • 网站打开慢 可以只换空间不换域名吗网站建设经济可行性分析
  • 高校二级网站建设意义装修案例分享的文案
  • 做盗版小说网站能赚钱不软件公司工资高吗
  • 南充北京网站建设华为手机应用引擎
  • 手机网站开发下拉刷新自助建站网站哪个好
  • sap.net网站开发有哪些网站可以做兼职
  • 北京免费建站网络营销用什么软件可以做网站动态
  • 局域网内网站建设网站开发app开发主营业务
  • 工商营业执照咨询电话seo优化教程
  • 门窗厂家东莞网站建设新站优化案例
  • 兴宁网站建设设计男医生给产妇做内检小说网站
  • 网址搜索ip地址上海谷歌seo公司
  • 用python怎么做网站wordpress页面侧边栏
  • pc网站建设网站设计培训学院
  • 三明做网站企业网站建设情况 文库
  • 怎么从网站知道谁做的缙云企业网站建设
  • 300元建站腾讯云网站建设教学视频教程
  • 湘西网站建设商务网站业务流程
  • 有帮忙做儿童房设计的网站吗电商网站建设哪家好
  • 网站等保需要几年一做什么网站做烘干设备好
  • 南昌营销型网站建设企业建站公司案例
  • 义乌网站制作公司电子商务公司建设网站方案
  • 做网站创业怎么样电子商务网站开发教程论文6
  • 淄博外贸网站建设海丰建设局网站
  • 网站建设信息模板下载wordpress怎么添加用户中心页面
  • 手机网站哪些功能wordpress更改固定连接404
  • 连云港网站建设的公司网站建设功
  • 北京网站优化诊断网上商城怎么购物