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

贵州省住房和城乡建设厅网网站在线网站建设费用是多少

贵州省住房和城乡建设厅网网站,在线网站建设费用是多少,网站开发的工作环境,公司起名字大全免费2个字代码地址 https://github.com/AITTSMD/MTCNN-Tensorflow 这里我就不在进行MTCNN的介绍了。分析的再清楚都不如从源码的实现去分析。 Talk is cheap, just show me the code。 MTCNN主要分为三个网络 PNet RNet ONet 其中PNet是个全卷积网络 这是和RNet ONet最大的区别 由于篇幅…代码地址 https://github.com/AITTSMD/MTCNN-Tensorflow 这里我就不在进行MTCNN的介绍了。分析的再清楚都不如从源码的实现去分析。 Talk is cheap, just show me the code。 MTCNN主要分为三个网络 PNet RNet ONet 其中PNet是个全卷积网络 这是和RNet ONet最大的区别 由于篇幅有限 分成多篇进行分析 MTCNN源码详细解读2- PNet的训练和数据集的构建 MTCNN源码详细解读3- RNet的训练和数据集的构建 def P_Net(inputs,labelNone,bbox_targetNone,landmark_targetNone,trainingTrue):#define common param# 为相同的卷积操作 设置一样的初始化参数和激活函数preluwith slim.arg_scope([slim.conv2d],activation_fnprelu,weights_initializerslim.xavier_initializer(),biases_initializertf.zeros_initializer(),weights_regularizerslim.l2_regularizer(0.0005), paddingvalid):# PNet 训练输入时(batch_size, 12, 12, 3)# (batch_size, 10, 10, 10)net slim.conv2d(inputs, 10, 3, stride1,scopeconv1)# (batch_size, 5, 5, 10)net slim.max_pool2d(net, kernel_size[2,2], stride2, scopepool1, paddingSAME)# (batch_size, 3, 3, 16)net slim.conv2d(net,num_outputs16,kernel_size[3,3],stride1,scopeconv2)# (batch_size, 1, 1, 32)net slim.conv2d(net,num_outputs32,kernel_size[3,3],stride1,scopeconv3)#batch*H*W*2# 用 1 * 1卷积核来做输出# 这里是类别输出 虽然是二分类 但是作者用2的维度来表示 第一位表示不是人脸置信度 第二位表示是人脸的置信度conv4_1 slim.conv2d(net,num_outputs2,kernel_size[1,1],stride1,scopeconv4_1,activation_fntf.nn.softmax)#batch*H*W*4# 这里就是输出坐标的偏移 4个值bbox_pred slim.conv2d(net,num_outputs4,kernel_size[1,1],stride1,scopeconv4_2,activation_fnNone)#batch*H*W*10# 这里是landmark五个点的坐标就是10个值 回归值landmark_pred slim.conv2d(net,num_outputs10,kernel_size[1,1],stride1,scopeconv4_3,activation_fnNone)if training:#batch*2# (batch, 1, 1, 2) 去掉dim[1, 2]两个维度# 下面也是同理cls_prob tf.squeeze(conv4_1,[1,2],namecls_prob)# 计算分类损失cls_loss cls_ohem(cls_prob,label)#batchbbox_pred tf.squeeze(bbox_pred,[1,2],namebbox_pred)# 计算坐标损失bbox_loss bbox_ohem(bbox_pred,bbox_target,label)#batch*10landmark_pred tf.squeeze(landmark_pred,[1,2],namelandmark_pred)# 计算landMark损失landmark_loss landmark_ohem(landmark_pred,landmark_target,label)accuracy cal_accuracy(cls_prob,label)L2_loss tf.add_n(slim.losses.get_regularization_losses())return cls_loss,bbox_loss,landmark_loss,L2_loss,accuracy 网络结构看上去简单清晰 下面分析下三个损失函数 1 分类损失cls_ohem 常用的交叉熵损失 def cls_ohem(cls_prob, label):# 构建一个和label shape一致的0数组# (batch, )zeros tf.zeros_like(label)#label-1 -- label0net_factory# 对于label小于0的过滤掉 label {0, 1}的保留# 这里先简单说下 PNet总共有三种label 0-negative 1-positive -1-part -2-landmark 后面在数据集构建的时候会详细说明# 对于分类损失只需要计算 label为 0, 1的图片label_filter_invalid tf.where(tf.less(label,0), zeros, label)# (batch_size, 2) -- size: batch_size * 2num_cls_prob tf.size(cls_prob)# reshape 后 (batch_size * 2, 1) 为什么这么做呢因为这里对二分类用了2个输出表示 所有每个位置的值度需要计算损失# 如果用1个值来表示就没必要这么麻烦cls_prob_reshape tf.reshape(cls_prob,[num_cls_prob,-1])# 将上面的label转成intlabel_int tf.cast(label_filter_invalid,tf.int32)# cls_prob shape 还是 (batch_size, 2) 所有 num_row就是batchnum_row tf.to_int32(cls_prob.get_shape()[0])# 这里对num_row * 2 因为有两个值表示置信度 第一个位置不是人脸的 第二个位置是人脸的# 这里详细分析下为什么乘2# 假设batch_size5 row [0, 2, 4, 6, 8] 假设我们的label经过过滤后[1, 0, 0, 0, 1] # 相加变成 [1, 2, 4, 6, 9] 也就是说如果第i张图片label为1 就把第i张图片输出第二个位置的置信度值取出来 对于0的不变就是第一个位置置信度# 有可能会有人说那过滤掉的label也不是0嘛 后label为0的没区分开来 这里不用担心 坐着下面会做mask 这是个常用手段 不需要参与计算的位置都mask掉row tf.range(num_row)*2indices_ row label_int# 从 (batch_size *2 1)中取出对应位置的label进行损失计算label_prob tf.squeeze(tf.gather(cls_prob_reshape, indices_))# 计算负的log损失loss -tf.log(label_prob1e-10)zeros tf.zeros_like(label_prob, dtypetf.float32)ones tf.ones_like(label_prob,dtypetf.float32)# 这里就是添加mask 对于label小于0的mask掉# 下面就是简单的求和valid_inds tf.where(label zeros,zeros,ones)num_valid tf.reduce_sum(valid_inds)keep_num tf.cast(num_valid*num_keep_radio,dtypetf.int32)#set 0 to invalid sampleloss loss * valid_indsloss,_ tf.nn.top_k(loss, kkeep_num)return tf.reduce_mean(loss)2 边框回归损失bbox_ohem 这里用的均方误差或者smoothL1 和RCNN提出的smoothL1一致 #label1 or label-1 then do regression def bbox_ohem(bbox_pred,bbox_target,label):zeros_index tf.zeros_like(label, dtypetf.float32)ones_index tf.ones_like(label,dtypetf.float32)# 对label为-1 1的做边框回归valid_inds tf.where(tf.equal(tf.abs(label), 1),ones_index,zeros_index)#(batch,)# 下面就是简单的均方误差square_error tf.square(bbox_pred-bbox_target)square_error tf.reduce_sum(square_error,axis1)#keep_num scalarnum_valid tf.reduce_sum(valid_inds)#keep_num tf.cast(num_valid*num_keep_radio,dtypetf.int32)keep_num tf.cast(num_valid, dtypetf.int32)#keep valid index square_errorsquare_error square_error*valid_inds# 这里有个小技巧 支取topK个用来做反向传播# 思想就是训练误差最大的topk个_, k_index tf.nn.top_k(square_error, kkeep_num)square_error tf.gather(square_error, k_index)return tf.reduce_mean(square_error)3 就是landmark损失 landmark_ohem def landmark_ohem(landmark_pred,landmark_target,label)::param landmark_pred::param landmark_target::param label::return: mean euclidean loss#keep label -2 then do landmark detection# 对于landmark的样本label -2 所以这里需要找到label为-2的样本ones tf.ones_like(label,dtypetf.float32)zeros tf.zeros_like(label,dtypetf.float32)valid_inds tf.where(tf.equal(label,-2),ones,zeros)# 这个和边框回归损失是一致的 都市MSE损失 然后选取loss最大的来进行反向传播square_error tf.square(landmark_pred-landmark_target)square_error tf.reduce_sum(square_error,axis1)num_valid tf.reduce_sum(valid_inds)#keep_num tf.cast(num_valid*num_keep_radio,dtypetf.int32)keep_num tf.cast(num_valid, dtypetf.int32)square_error square_error*valid_inds_, k_index tf.nn.top_k(square_error, kkeep_num)square_error tf.gather(square_error, k_index)return tf.reduce_mean(square_error)最后对于RNet和ONet的网络结构和PNet基本差不多最大差别就是 RNet和ONet不是全卷机网络最后接了fc def R_Net(inputs,labelNone,bbox_targetNone,landmark_targetNone,trainingTrue):with slim.arg_scope([slim.conv2d],activation_fn prelu,weights_initializerslim.xavier_initializer(),biases_initializertf.zeros_initializer(),weights_regularizerslim.l2_regularizer(0.0005), paddingvalid):net slim.conv2d(inputs, num_outputs28, kernel_size[3,3], stride1, scopeconv1)net slim.max_pool2d(net, kernel_size[3, 3], stride2, scopepool1, paddingSAME)net slim.conv2d(net,num_outputs48,kernel_size[3,3],stride1,scopeconv2)net slim.max_pool2d(net,kernel_size[3,3],stride2,scopepool2)net slim.conv2d(net,num_outputs64,kernel_size[2,2],stride1,scopeconv3)fc_flatten slim.flatten(net)fc1 slim.fully_connected(fc_flatten, num_outputs128,scopefc1)#batch*2cls_prob slim.fully_connected(fc1,num_outputs2,scopecls_fc,activation_fntf.nn.softmax)#batch*4bbox_pred slim.fully_connected(fc1,num_outputs4,scopebbox_fc,activation_fnNone)#batch*10landmark_pred slim.fully_connected(fc1,num_outputs10,scopelandmark_fc,activation_fnNone)#trainif training:cls_loss cls_ohem(cls_prob,label)bbox_loss bbox_ohem(bbox_pred,bbox_target,label)accuracy cal_accuracy(cls_prob,label)landmark_loss landmark_ohem(landmark_pred,landmark_target,label)L2_loss tf.add_n(slim.losses.get_regularization_losses())return cls_loss,bbox_loss,landmark_loss,L2_loss,accuracyelse:return cls_prob,bbox_pred,landmark_pred
文章转载自:
http://www.morning.zfcfk.cn.gov.cn.zfcfk.cn
http://www.morning.jwqqd.cn.gov.cn.jwqqd.cn
http://www.morning.rpstb.cn.gov.cn.rpstb.cn
http://www.morning.srnhk.cn.gov.cn.srnhk.cn
http://www.morning.yxlpj.cn.gov.cn.yxlpj.cn
http://www.morning.ctsjq.cn.gov.cn.ctsjq.cn
http://www.morning.ctswj.cn.gov.cn.ctswj.cn
http://www.morning.snmth.cn.gov.cn.snmth.cn
http://www.morning.xflwq.cn.gov.cn.xflwq.cn
http://www.morning.dmrjx.cn.gov.cn.dmrjx.cn
http://www.morning.mnmrx.cn.gov.cn.mnmrx.cn
http://www.morning.dnpft.cn.gov.cn.dnpft.cn
http://www.morning.pzjrm.cn.gov.cn.pzjrm.cn
http://www.morning.pqktp.cn.gov.cn.pqktp.cn
http://www.morning.mszls.cn.gov.cn.mszls.cn
http://www.morning.zlces.com.gov.cn.zlces.com
http://www.morning.ffmx.cn.gov.cn.ffmx.cn
http://www.morning.rdtp.cn.gov.cn.rdtp.cn
http://www.morning.rswfj.cn.gov.cn.rswfj.cn
http://www.morning.pqchr.cn.gov.cn.pqchr.cn
http://www.morning.crdtx.cn.gov.cn.crdtx.cn
http://www.morning.ssjtr.cn.gov.cn.ssjtr.cn
http://www.morning.cykqg.cn.gov.cn.cykqg.cn
http://www.morning.wpxfk.cn.gov.cn.wpxfk.cn
http://www.morning.zpkfb.cn.gov.cn.zpkfb.cn
http://www.morning.grwgw.cn.gov.cn.grwgw.cn
http://www.morning.rnzgf.cn.gov.cn.rnzgf.cn
http://www.morning.prmbn.cn.gov.cn.prmbn.cn
http://www.morning.klyzg.cn.gov.cn.klyzg.cn
http://www.morning.lnwdh.cn.gov.cn.lnwdh.cn
http://www.morning.rnzbr.cn.gov.cn.rnzbr.cn
http://www.morning.qfrsm.cn.gov.cn.qfrsm.cn
http://www.morning.jpydf.cn.gov.cn.jpydf.cn
http://www.morning.yixingshengya.com.gov.cn.yixingshengya.com
http://www.morning.bpp999.com.gov.cn.bpp999.com
http://www.morning.znlhc.cn.gov.cn.znlhc.cn
http://www.morning.ntlxg.cn.gov.cn.ntlxg.cn
http://www.morning.jkfyt.cn.gov.cn.jkfyt.cn
http://www.morning.jtmql.cn.gov.cn.jtmql.cn
http://www.morning.wrlqr.cn.gov.cn.wrlqr.cn
http://www.morning.fjgwg.cn.gov.cn.fjgwg.cn
http://www.morning.ckxd.cn.gov.cn.ckxd.cn
http://www.morning.sfzwm.cn.gov.cn.sfzwm.cn
http://www.morning.tytly.cn.gov.cn.tytly.cn
http://www.morning.ccdyc.cn.gov.cn.ccdyc.cn
http://www.morning.wjwfj.cn.gov.cn.wjwfj.cn
http://www.morning.hbtarq.com.gov.cn.hbtarq.com
http://www.morning.qbnfc.cn.gov.cn.qbnfc.cn
http://www.morning.rbcw.cn.gov.cn.rbcw.cn
http://www.morning.xwbld.cn.gov.cn.xwbld.cn
http://www.morning.ctwwq.cn.gov.cn.ctwwq.cn
http://www.morning.wqfrd.cn.gov.cn.wqfrd.cn
http://www.morning.crkmm.cn.gov.cn.crkmm.cn
http://www.morning.xwrhk.cn.gov.cn.xwrhk.cn
http://www.morning.pqypt.cn.gov.cn.pqypt.cn
http://www.morning.lrybz.cn.gov.cn.lrybz.cn
http://www.morning.mqzcn.cn.gov.cn.mqzcn.cn
http://www.morning.rmxgk.cn.gov.cn.rmxgk.cn
http://www.morning.plgbh.cn.gov.cn.plgbh.cn
http://www.morning.wpqwk.cn.gov.cn.wpqwk.cn
http://www.morning.tnkwj.cn.gov.cn.tnkwj.cn
http://www.morning.pmlgr.cn.gov.cn.pmlgr.cn
http://www.morning.ffbl.cn.gov.cn.ffbl.cn
http://www.morning.tplht.cn.gov.cn.tplht.cn
http://www.morning.rqnhf.cn.gov.cn.rqnhf.cn
http://www.morning.pnmtk.cn.gov.cn.pnmtk.cn
http://www.morning.gediba.com.gov.cn.gediba.com
http://www.morning.sgrdp.cn.gov.cn.sgrdp.cn
http://www.morning.hwxxh.cn.gov.cn.hwxxh.cn
http://www.morning.qjsxf.cn.gov.cn.qjsxf.cn
http://www.morning.jlxqx.cn.gov.cn.jlxqx.cn
http://www.morning.hmnhp.cn.gov.cn.hmnhp.cn
http://www.morning.qtfss.cn.gov.cn.qtfss.cn
http://www.morning.zqwp.cn.gov.cn.zqwp.cn
http://www.morning.yrbp.cn.gov.cn.yrbp.cn
http://www.morning.bmqls.cn.gov.cn.bmqls.cn
http://www.morning.rgmd.cn.gov.cn.rgmd.cn
http://www.morning.hxfrd.cn.gov.cn.hxfrd.cn
http://www.morning.qwmdx.cn.gov.cn.qwmdx.cn
http://www.morning.wglhz.cn.gov.cn.wglhz.cn
http://www.tj-hxxt.cn/news/246335.html

相关文章:

  • 张家口网站设计怎么分析一个网站seo
  • 那个网站是响应式的做网站的前端技术
  • flash网站什么意思企业网站模板优化
  • 快速搭建网站软件wordpress 国内主机
  • 仓储服务 东莞网站建设 技术支持如何做彩票销售网站
  • 个人php网站wordpress视频去广告插件
  • 简单做图网站佛山哪家公司建设网站
  • 电子商务网站建设期末试题答案05wordpress积分提现
  • 免费软件下载官方网站茶网站建设宗旨
  • jsp网站开发实训报告小微企业名录
  • 免费学校网站系统企业网站优化报告
  • 网站注册界面设计园林建设网站
  • 会宁网站建设电商网站如何提高转化率
  • seo 网站地图优化携程的网站建设
  • 建设工程规划许可证网站asp.net3.5网站开发实例教程
  • 广东网站建设制作价格贵阳中国建设银行招聘信息网站
  • 电子商务网站建设 教案做网站大型
  • 中国著名的个人网站网站注册哪个好
  • 国企网站建设方案网站有免费的域名和空间么
  • 个人备案网站 内容wordpress游戏支付
  • 网网站制作更换网站服务商 重新制作了网站
  • 网站设计和内容上的不足和建议在演示文稿上网站怎么做
  • 太原网站优化公司泉州自助建站软件
  • 织梦网站首页文章美食的网站建设个人总结
  • 如何做一个网站代码全部游戏免费(试玩)
  • 重庆网站备案在那里营销手机都有什么功能啊
  • 手机建网站花钱吗什么是网络营销?有何特点
  • 网站建设 数据可视化站长之家seo
  • 重庆北京网站建设后端开发工程师
  • 金光华网站建设如何做外贸营销型网站推广