1. custom_layers
    1. scale_layer.py
    2. uppooling_layer.py
  2. config.py
    1. 工程中模型配置参数,数据路径,样本数,样本尺寸等
  3. data_generator.py
    1. 训练时调用此代码来生成每个batch_size的样本
      1. get_alpha
        1. 根据mask图读取其alpha图
      2. get_alpha_test
      3. composite4
        1. 图像融合算法关键方法
      4. process
        1. 根据原图,mask图,alpha图融合图像
      5. generate_trimap
        1. 对alpha图随机腐蚀膨胀生成trimap图
      6. random_choice
        1. 以未知区域某个像素点为中心随机裁剪
      7. DataGenSequence
        1. 模型训练时使用的数据生成器
  4. model.py
    1. build_encoder_decoder
    2. build_refinement
    3. 模型由此两部分组成,分开构建,分开画图
  5. plot_model.py
    1. 直接调用keras的plot_model画出build_encoder_decoder的网络结构图
  6. 1. pre_process.py
    1. 数据预处理,没用
  7. segnet.py
    1. 跟model几乎一样,但是其build_encoder_decoder部分的kernel大小从3变为5。model中会一直是3
  8. test.py
    1. 载入模型,并根据输入的原图+trimap图预测最后合成效果图
  9. test_alphamatting.py
    1. 载入模型,仅测试特定目录alphamatting下的几张图
  10. train.py
    1. 模型训练的入口函数,开始训练模型
    2. 训练开始
  11. train_encoder_decoder.py
    1. 单独训练build_encoder_decoder
  12. train_final.py
    1. 跟train.py几乎一样
  13. train_refinement.py
    1. 单独训练build_refinement,注意它需要encoder_decoder作为输入
  14. utils.py
    1. 计算训练模型过程中的一些损失函数
      1. overall_loss
      2. alpha_prediction_loss
      3. compositional_loss
      4. compute_mse_loss
      5. compute_sad_loss
      6. 其他辅助函数
  15. vgg16.py
    1. VGG16网络的定义,载入了包含了预训练模型权重的
  16. migreate.py
    1. 迁移学习:将VGG16模型的预训练参数赋值给当前新模型,一般是encoder_decoder模型
  17. 蓝色代表数据处理相关