PointNet part segment部分学习

文献笔记:

1.把点云的区域分割表示为一个逐点识别的问题。

(We formulate part segmentation as a per-point classification problem.)

把点的mIoU(?)作为评价指标,计算mIoU值的具体方法如下(分清category的mIoU、shape的mIoU、part type的mIoU):

首先,对于分类C中的每一个形状S,计算该形状S的mIoU值:对于C中的每一个部分(part type),计算理论值和预测值之间的IoU值 ,如果某个部分的预测值和理论值组成的union中点为空,我们把这个部分IoU设为1。之后我们计算该category中的所有部分(part type)的IoU值,将这些IoU的平均值作为该形状的mIoU值。

之后,当我们要计算category的mIoU值时,我们把属于当前category中的所有形状的mIoU值做平均值,该平均值即为category的mIoU值。

以上是论文中对于各个方法的结果比较。

2.关于PointNet Segmentation Network,它是识别网络的一个扩展。局部点特征(第二次变换网络feature transform的输出)和全局点特征(最大池化层的输出)被关联在一起。分割网络不使用dropout。训练参数跟识别网络的完全一样。

对于基础的分割网络,为了达到最好的分割效果,作者还是做出了如下的一些修改:

a.增加了一个one-hot向量来表示输入的类型,并别把它和最大池化层的输出联系在一起

b.在某些层增加了神经元,并且增加了skip links跳转链接来收集不同层的局部点特征,把他们连接在一起,共同组成分割网络的作为输入的点特征。

此外,文章最后还提到法向量估计(法向量预测结果在某些区域甚至比真实值更平滑,连续性更好)。还通过实验验证了分割网络的健壮性。对于识别网络的部分,网络对数据损坏和数据缺失并不是特别敏感,因为点的全局特征是从关键点的集合中提取的。对于分割网络来说,它同样具有稳定性。结合逐点特征和学习到的全局形状特征,对每点部分的标签进行了预测。下图说明的分割结果的一致性。


代码部分:

模型:

1.model部分的代码储存在pointnet_part_seg中,get_model函数定义了如上图9的网络,包括classification network以及segmentation network;

2.get_transform函数和get_transform_K函数定义了figure 9中的变换网络T1和T2,可以看到T1和T2这两个变换网络本身也是由卷积层、池化层和全连接层等构成的;

3.get_loss函数包含了对损失设计,总的损失包括三部分,分别是:seg_loss(分割的交叉熵损失,通过tf.nn.sparse_softmax_cross_entropy_with_logits()来获得)、label_loss(标记的交叉熵损失,但是最后计算loss时weight取1,实际结果中没有这项的贡献)、mat_diff_loss(变换矩阵Transform本身是正交矩阵,计算出的正交矩阵的正则化偏差Regularization loss)

train.py:

1.batch默认值32,epoc默认值200,在train函数前面定义了学习率和衰减率等参数,定义了需要读写的文件的位置,包括训练文件和测试文件的位置,模型的储存和日志的储存。以及label到one_hot的转换函数。

2.train函数:

首先确定learning rate以及学习率衰减的参数,这里是指数衰减

bn

(batch normalization 主要解决的是中间训练层数据分布发生改变的情况,再输入之前进行归一化处理,网络无需适应不同的数据分布,从而加速训练。BN层本质上就是对上一层的输出进行处理,得到下一层的输入。实现BN层的难点在于如何使得归一化不破坏上一层所学习到的特征。引入可学习参数\gamma, \beta 进行变换,让BN层网络通过学习,恢复原始网络的特征分布。从数学上看就是,在不改变特征分布的前提下,通过变换来改变均值和方差的大小,得到归一化的效果) 

momentum

(增加一个动量项,一般来说,主要用在权重更新的时候,如果前一次的momentum与这次的梯度负方向相同,那么动量项会使下降的幅度更大,目的是为了加速收敛)

之后是一些初始化、以及tensorflow的config

最后是train_one_epoch函数,以及eval_one_epoch函数。

刚接触深度学习,有些概念不是很明白,希望今后能多接触,努力学



在b站上发现了作者的一个视频,可能有些帮助:

https://www.bilibili.com/video/av28340597?from=search&seid=7171823237791363931

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容