自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(754)
  • 资源 (1)
  • 收藏
  • 关注

原创 论文阅读: 1903.PotraitNet

2019.03.007:PortraitNet: Real-time portrait segmentation network for mobile device四大创新点:轻量级:轻量级的实时人像分割U型架构,可以有效地在移动设备上运行:边界损失(boundary loss):边界的label来自对分割gt的canny算子的输出。设置线宽为4。因为边界占据图像很小的部分,为了避免极度的样本不均衡,所以用的是focal loss。一致性损失(consistency

2021-09-06 02:21:31 231

原创 论文阅读: 1808.BiSeNet

1808.00897:BiSeNet: Bilateral Segmentation Network for Real-time Semantic Segmentation创新点提出了 2-path 的 Bilateral Segmentation Network (BiSeNet),context path来编码不同感受野和不同尺度的高级语义信息(即high-level feature),spatial path来编码丰富的细节空间信息(即low-level feature),融合后得到预测结果

2021-09-06 02:15:14 163

原创 论文阅读: 1802.Deeplabv3+

1802.02611:Encoder-Decoder with Atrous Separable Convolution for Semantic Image Segmentation属于典型的DilatedFCN,它是Google提出的DeepLab系列的第4弹。创新点在DeepLab v3上的基础上增加了一个Decoder。Decoder将底层特征与高层特征进一步融合,提升分割边界准确度。从某种意义上看,DeepLabv3+在DilatedFCN基础上引入了EcoderDecode

2021-09-06 02:09:24 308

原创 论文阅读: 1712.BSN

论文针对肖像分割(Portrait Segmentation)。四大创新点提出了BSNet:三个trick:个体边缘敏感算子。全局边缘敏感算子。边缘敏感属性分类器。Boundary-sensitive Network for Portrait Segmentation论文解读...

2021-09-06 02:02:20 144

原创 论文阅读: 1706.Deeplabv3

1706.05587:Rethinking Atrous Convolution for Semantic Image Segmentation三大改进点去掉CRF模块。改进了ASPP:相比V2的ASPP增加了1x1的conv以及global avg pooling。对ASPP每个空洞卷积加入了BN层。在级联模块中应用空洞卷积:将空洞卷积应用在最后面的级联模块,框架可以更通用。论文中的级联模块指复制了四份block4,这四份分别使用不同rate的空洞卷积,最终blo

2021-09-06 01:59:03 153

原创 论文阅读: 1705.DRN

1705.09914:Dilated Residual Networks使用扩张卷积替换模型中的下采样,保持feature map的空间分辨率同时不降低后续卷积层的接收野的分辨率,实验证明这样简单转换是有效的:DRN结构没有了resnet最后的两次下采样,也就是说,特征图在28x28的大小之后就不再变小了。不再减小特征图尺寸,那么就要增加卷积核的膨胀系数。可以看到,DRN没有后两次下采样(在本该第四次采样的卷积过程中将膨胀系数改成2,在本该第五次采样的卷积过程中将膨胀系数改成4,均能保持相同的

2021-09-06 01:55:20 123

原创 论文阅读: 1611.PSPNet

论文阅读: 1611.PSPNet

2021-09-06 01:52:42 257

原创 论文阅读: 1611.RefineNet

1611.06612:RefineNet: Multi-Path Refinement Networks for High-Resolution Semantic Segmentation创新点提出基于Resnet的残差连接的思想设计的RefineNet(提炼网络),可以充分利用各个层级的features,使得语义分割更为精准。作者认为高级语义特征可以更好地进行分类识别,而低级别视觉特征有助于生成清晰、详细的边界。residual connections(identity map

2021-09-06 01:49:57 120

原创 论文阅读: 1606.Deeplabv2

1606.00915:DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs两大创新点:ASPP受SPPNet启发,新提出空间金字塔池化 Atous Spatial Pyramid Pooling(ASPP)(类似于SPPNet的空间金字塔结构),并行的采用多个采样率的空洞卷积提取特征,再将特征融合:能够用多尺度获得

2021-09-06 01:45:35 160

原创 论文阅读: 1511.SegNet

1511.00561:SegNet: A Deep ConvolutionalEncoder-Decoder Architecture for ImageSegmentation只是结构上比较优雅,它得到的结果不一定比FCN好:

2021-09-06 01:40:47 130

原创 论文阅读: 1505.UNet

1505.04597:U-Net: Convolutional Networks for Biomedical Image SegmentationU-net:对称语义分割模型该网络模型:一个收缩路径 + 一个对称扩张路径。收缩路径用来获得上下文信息,对称扩张路径用来精确定位分割边界。非常经典的结构:...

2021-09-06 01:37:50 89

原创 论文阅读: 1505.DeconvNet

1505.04366:Learning Deconvolution Network for Semantic Segmentation结构设计完全对称的结构:有种自编码器的感觉在里面,先编码再解码。这样的结构主要使用了反卷积和上池化。即: 而上池化的实现主要在于池化时记住输出值的位置,在上池化时再将这个值填回原来的位置,其他位置填0即OK。...

2021-09-06 01:31:37 118

原创 论文阅读: 1412.Deeplabv1

1412.7062:Semantic Image Segmentation with Deep ConvolutionalDeeplab系列是很成熟优雅的结构,以至于现在的很多改进是基于这个网络结构的进行的。 受制于当时的basemodel发展水平,DeepLabv1仅使用VGGNet进行实验。创新点提出了一种新的卷积:空洞卷积(Atrous Convolution):解决的痛点:普通的卷积和池化层会导致最终的特征图极小,特征图经过上采样再输出成分割结果,这样的上采样就有些“放大过度”了。

2021-09-06 01:27:02 233

原创 论文阅读: 1411.FCN

1411.4038:Fully Convolutional Networks for Semantic Segmentation深度学习应用于图像语义分割的开山之作(难免效果很糙),CVPR2015 Best Paper。创新点卷积化(Convolutional): 丢弃全连接,换成卷积层。(已变成了固定结构)分类使用的网络通常会在最后连接几层全连接层,它会将原来二维的矩阵(图片)压扁成一维的,从而丢失了空间信息,最后训练输出一个标量(分类标签)。而图像语义分割的输出需要是个分割图,且

2021-09-06 01:12:34 100

原创 【leetcode】分治/动态规划/贪心/递归/迭代

算法策略分治:自顶向下,分而治之。常用递归。动态规划(DP):类似于分治,但会存储每个子问题的解,避免重复计算。常用迭代。贪心:类似于DP,但每步都求局部最优。计算次数往往会比DP少。凡是用贪心能解决的,DP都能解决。实现手段递归:A调用A自身。所有的递归都可以转化成迭代。迭代:A循环调用B,并不断更新变量的旧值。...

2020-05-31 17:15:35 550

原创 【leetcode】八皇后

代码实现:class solution(object): def solveNQueens(self, n): self.helper([-1]*n, 0, n) def helper(self, columnPosition, rowindex, n):#ding # print(rowindex) if rowindex == n: self.printSolution(columnPosition, n)

2020-05-31 17:07:12 459

原创 【leetcode】剪绳子

动态规划def cut(n): if n < 2: return 0 elif n == 2: return 1 elif n == 3: return 2 else: lst = [0, 1, 2, 3] for i in range(4, n+1): max = 0 for j in range(1, i//2+1):

2020-05-31 16:37:58 296

原创 【leetcode】背包问题

思路一般用动态规划(DP)。输入参数W:各个物品的重量;V:各个物品的价值;carry:最大承重为carry的背包;N:物品件数。0-1背包每件物品只能选一次。def bag_01(V, W, carry, N): res = [0] * (carry+1) for i in range(N): for j in range(carry, W[i]-1, -1): res[j] = max(res[j], res[j-W[i]

2020-05-31 16:35:29 383

原创 【python】面向对象的三大特征(封装、继承、多态)

继承子类直接继承一个父类(基类),包括父类的所有属性和函数。多态同一个函数在多个类中都有(可能实现方法各有不同),最后哪个类作为传入对象,就调用谁家的该函数。封装:隐藏实现过程,只提供现成的调用接口给外部。...

2020-05-17 18:44:43 278

原创 【python】快排的三种实现

def quick_sort(x, low, high): if len(x) <= 1 or low >= high: return x base, l, r = x[low], low, high while l < r: while l < r and x[r] >= base: r...

2020-04-28 09:07:16 301

原创 【tensorflow】tensor相关

tensor是如何命名的Tensorflow中,tensor的名字是op的名字加上 :0 (如果有多个,这又会有 :1 、:2 。。。。)打印所有nodefor n in tf.get_default_graph().as_graph_def().node: print(n.name)...

2020-04-24 13:45:36 186

原创 【tensorflow】模型加载

net.load vs saver.restore.load() 只能加载.npy文件,.restore() 只能加载 ckpt(checkpoint)文件。net.load 会增加assign节点一定会改图,所以要在 sess.graph.finalize() 之前。 saver.restore 不会改图,可以放到 sess.graph.finalize() 之后。Assign节点只会在...

2020-04-24 13:44:40 411

原创 【tensorflow】直接读取图片

Tensorflow通过tf.gfile.FastGFile(filename,’rb’).read()读取的图像,是图像的原始数据,还需要经过解码,才能获取图像的数据,数据的格式为RGB(三通道图像),这一点是与Opencv不同。Tensorflow提供了对jpeg和png格式图片的解码函数,例如“decode_jpeg”对jpeg格式的图片进行解码,使用encode_jpeg编码,将图像...

2020-04-24 13:43:12 414

原创 【python】import注意事项

尽量不要这么写:from lib import *可能会导致重复压入。而且万一遇上重命名,就会出现覆盖而导致的出错。所以最好避免这种写法。

2020-04-24 13:34:10 234

原创 【Linux】通过设置镜像目录来扩容本地存储空间

通过设置镜像目录来扩容本地存储空间:在对应磁盘上新建要用来存储的文件夹:sudo mkdir /home/磁盘名称/用户名指定文件夹的拥有者:sudo chown -R 用户名:users /home/磁盘名称/用户名创建从存储文件夹到本地镜像目录的软链接:ln -s /home/磁盘名称/用户名 ~/镜像目录...

2020-04-24 13:33:10 231

原创 【tensorflow】node相关

tf中的op就是node。所有tensorflow操作,都会生成tf node。打印所有node:for n in tf.get_default_graph().as_graph_def().node: print(n.name)train时的graph往往会比test时的graph多很多node(例如:tf预处理操作,甚至包括读tfrecord)。但是output node在tra...

2020-04-24 11:28:19 521

原创 【图像处理】反色

定义反色又叫补色。例如:黑与白、红与青等。反色是与原色叠加可以变为白色的颜色,即用白色(RGB:255,255,255)减去原色的颜色。比如(RGB:255,0,0)的反色是(0,255,255)。实验原图:代码:import cv2def reverse_color(img): img = 255 - img.copy() return imgif __...

2020-04-19 15:35:07 3514

原创 python多进程打印进度条

import timefrom tqdm import tqdmimport multiprocessing as mpdef pickle_process(_class, *args): return _class.proc_func(*args)class OP(): def __init__(self): self.length = 64 ...

2020-04-18 21:24:23 4872 2

原创 python多进程写同一个list/dict

python2下的写法import timefrom tqdm import tqdmimport multiprocessing as mpdef picklable_op(_class, *args): """ 多进程之间要使用pickle来序列化并传递一些数据。 由于py2下实例方法并不能像py3一样直接被pickle。 所以需要对多进程对象进行封...

2020-04-18 21:19:03 7885 2

原创 【标注工具】好用的标注工具推荐

推荐以下两种万能标注工具:labelme精灵标注

2020-04-06 11:17:21 1824

原创 【tensorflow】显示pb文件的graph

import tensorflow as tffrom tensorflow.python.platform import gfilepb_file = ‘xxx/xxx/xxx.pb’pb_log_dir = ‘xxx/xxx/log/’def show_pb_graph(): graph = tf.get_default_graph() graph_def = ...

2020-04-06 09:26:30 484

原创 【tensorflow】shape与ndim

获取shapeimport tensorflow as tftensor = tf.placeholder(dtype=tf.float32, shape=[200, 200, 3])print('\n=========== get shape ============')print('tensor : ', tensor)print('tenso...

2020-03-28 10:42:11 1526

原创 【linux】ls指令

参数参数作用l以长格式显示,即列出文件详细信息s降序排列h将文件大小转为我们习惯的M、K等为单位的大小t按修改时间对文件进行排序,默认是最近修改的在前r对结果逆序常用操作按文件大小排序降序:ls -lsh升序:ls -lrsh按文件修改时间查看文件降序:ls -lt升序:ls -lrt参考文献[1] l...

2020-03-23 19:36:14 414

原创 【tensorflow】tf.name_scope与tf.variable_scope区别

共同点作用域函数 包括:命名域:tf.name_scope()变量域:tf.variable_scope()对于使用 tf.Variable()方式创建的变量,具有相同的效果。即:都会在变量名称前面,加上域名称。都可用于:变量共享tensorboard画流程图进行可视化封装变量但是,tf.Variable() 每次都会新建变量。如果希望重用(共享)一些变量,必须用到...

2020-03-22 15:14:37 326

原创 【tensorflow】feed操作

feed array1:预设placeholder:self.xxx = tf.placeholder(dtype=tf.float32, shape=[xxx, xxx], name='xxx')2:喂numpy.ndarray格式的矩阵进去:xxx = sess.run(self.xxx, feed_dict={self.xxx: xx_array})feed variable...

2020-03-22 14:57:14 284

原创 加密压缩

加密压缩:zip -r -P <密码> <压缩包> <源文件>

2020-03-16 23:35:08 362

原创 查看磁盘情况

查看各块硬盘的整体占用情况:df -h查找文件夹下的超大文件:find {要查找的文件夹} -type f -size +10000k

2020-03-16 23:28:40 148

原创 【visdom】配置visdom

配置visdom用visdom记录pytorch训练过程时,需要在本地打开visdom:python -m visdom.server -env_path "... .../visdom_data/"如果pytorch训练进程在服务器上,而本地又想同步查看visdom,则需要同时在本地和服务器执行上面的指令。建议把指令放到screen里面去执行,这样不会被误kill。...

2020-03-16 23:26:11 573 1

原创 根据进程名称查看信息

查看所有带有python字样的进程信息:ps aux | grep "python"

2020-03-16 23:21:54 617 1

原创 如何将终端显示保存到log中

将终端显示全部保存到log:python/sh 命令 > log.txt 2>&1 其中,2>&1是指将错误信息重写入标准输出中。

2020-03-16 23:20:24 644

Pycharm简洁高效的主题设置

这是我在日常使用Pycharm IDE过程中,根据个人喜好所逐渐形成的一整套主题设置。主要亮点:简洁高效。欢迎下载。

2018-01-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除