许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  MTCNN源码详细解读(1):PNet/RNet/ONet网络结构与损失函数解析

MTCNN源码详细解读(1):PNet/RNet/ONet网络结构与损失函数解析

阅读数 6
点赞 0
article_banner

代码 地址 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,label=None,bbox_target=None,landmark_target=None,training=True):
    #define common param
    # 为相同的卷积操作 设置一样的初始化参数和激活函数prelu
    with slim.arg_scope([slim.conv2d],
                        activation_fn=prelu,
                        weights_initializer=slim.xavier_initializer(),
                        biases_initializer=tf.zeros_initializer(),
                        weights_regularizer=slim.l2_regularizer(0.0005), 
                        padding='valid'):
        # PNet 训练输入时(batch_size, 12, 12, 3)
        # (batch_size, 10, 10, 10)
        net = slim.conv2d(inputs, 10, 3, stride=1,scope='conv1')
        # (batch_size, 5, 5, 10)
        net = slim.max_pool2d(net, kernel_size=[2,2], stride=2, scope='pool1', padding='SAME')
        # (batch_size, 3, 3, 16)
        net = slim.conv2d(net,num_outputs=16,kernel_size=[3,3],stride=1,scope='conv2')
        # (batch_size, 1, 1, 32)
        net = slim.conv2d(net,num_outputs=32,kernel_size=[3,3],stride=1,scope='conv3')
        #batch*H*W*2
        # 用 1 * 1卷积核来做输出
        # 这里是类别输出 虽然是二分类 但是作者用2的维度来表示  第一位表示不是人脸置信度 第二位表示是人脸的置信度
        conv4_1 = slim.conv2d(net,num_outputs=2,kernel_size=[1,1],stride=1,scope='conv4_1',activation_fn=tf.nn.softmax)
        
        #batch*H*W*4
        # 这里就是输出坐标的偏移 4个值
        bbox_pred = slim.conv2d(net,num_outputs=4,kernel_size=[1
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空