Semantic Soft Segmentation论文笔记与代码复现

一、原理

SSS:利用深度神经网路ResNet-101生成图像的语义特征128维度的特征向量,然后利用拉普拉斯的矩阵分解自动生成软分割。
特征向量是Python编程,拉普拉斯矩阵是MATLAB编程。
语义分割其实是对不同的像素就行分类的过程。     
软分割:即表示语义上有意义的区域以及它们之间软过渡的层,
SSS:把图像中语义上有意义的区域用准确的软过度分隔开不同的层。所以,软就是指软过度。
拉普拉斯的矩阵决定每个像素属于哪个语义。论文第三页
 

二、深度残差网络ResNet

分别有50,101,152,200层
(The depth residual network ResNet, respectively)
ResNet中解决深层网络梯度消失的问题的核心结构是残差网络:
残差网络增加了一个identity mapping(恒等映射),把当前输出直接传输给下一层网络(全部是1:1传输,不增加额外的参数),相当于走了一个捷径,跳过了本层运算,这个直接连接命名为“skip connection”,同时在后向传播过程中,也是将下一层网络的梯度直接传递给上一层网络,这样就解决了深层网络的梯度消失问题。
残差网络使得前馈式/反向传播算法非常顺利进行,在极大程度上,残差网络使得优化较深层模型更为简单 
 

三、使用的数据集

cocostuff10k 9000张训练集,1000张训练集
COCO Dataset
– Object segmentation
– Recognition in Context
– Multiple objects per image
– More than 300,000 images
– More than 2 Million instances
– 80 object categories
– 5 captions per image
– Keypoints on 100,000 people, 17 个关键点.
 

四、实验

算法主要处理步骤:

特征降维,从128维特征降到3维。

超像素处理,用于计算Superpixels。

计算仿射变换和 Laplacian,包括:Matting Affinity,semantic affinity 和 non-local

color affinity 以及 affinityMatrixToLaplacian.

计算 Laplacian 的特征分解,得到 100 个特征向量(eigenvectors).

初始化优化,主要计算初始化 soft segments,对特征进行语义初始化;关于深度网络提取的特征进行 Group segments.

最终优化Final optimization,sparsification.

 

但实验结果差强人意,如下图:

最终的分割结果:

参考:

https://www.aiuai.cn/aifarm366.html

https://blog.csdn.net/BTUJACK/article/details/83989984

猜你喜欢

转载自blog.csdn.net/echo_1994/article/details/84990256