EGNet
计算机视觉-Archer
专注于计算机视觉的[显著、伪装物体检测][图像分割][扩散模型]方向,分享“读论文-写论文-写代码”过程的爬坑经验~
展开
-
批量处理小工具- 批量resize 和 批量mask2edge(canny法, 求梯度法)
import cv2import sysimport numpy as npimport osmySys = 'ubuntu' # win ubuntu mac# filePath1 = '/home/xxx/data/SOC-COD/COD-CCC/mask/'filePath1 = '/home/xxx/COD-edge/mask/'# filePath2 = '/home/xxx/COD-edge/CODmask/'filePath2 = '/home/xxx/COD-edge/r.原创 2021-02-24 18:07:56 · 232 阅读 · 0 评论 -
(遇到问题)已解决-将文件加夹内所有文件名读取到txt中 make-list for EGNet
import osfilePath = '/home/xx/data/ECSSD/image'list_jpg = os.listdir(filePath)if __name__ == '__main__': ''' => 用于完成test.txt, 要在此文件目录下事先创建test.txt文件 与后面完成train.txt分开单独使用时, 直接注释掉另一个 ''' # /=== ===> test.txt 写入pic_name & .原创 2021-01-13 15:24:32 · 185 阅读 · 0 评论 -
sal2edge.m:(含有实用代码,本代码是matlab) 将显著性检测的 salient maps 转换为 salient edge maps (对EGNet里面代码的解读)
将显著性检测的 salient maps 转换为 salient edge mapssrc_root = 'H:\matlab\Az_Docter_Project\MB';dst_root = 'H:\matlab\Az_Docter_Project\MB_edge';lst_set = 'H:\matlab\Az_Docter_Project\MB';lst_set = [lst_...原创 2020-04-02 23:47:32 · 516 阅读 · 0 评论 -
matlab --fullfile,fopen,
data_root = '/home/liuj/dataset/DUTS/DUTS-TR/DUTS-TR-Mask';out_root = '/home/liuj/dataset/DUTS/DUTS-TR/DUTS-TR-Mask';lst_set = '/home/liuj/dataset/DUTS/DUTS-TR/train'index_file = fullfile([ls...原创 2020-04-02 21:55:11 · 525 阅读 · 1 评论 -
DUT-OMRON中差出来的2张图片名字 sun_barwtmnxkuxyttlj.png sun_akxddynsopjifavt.png
sun_barwtmnxkuxyttlj.pngsun_akxddynsopjifavt.png原创 2020-02-21 17:37:36 · 313 阅读 · 0 评论 -
2nk2loss_resnet比较
=>model_sun_resnet:ECSSD dataset with DSS method get| 0.9459 max-fmeasure| 0.0374 mae| 0.9245 S-measure| 0.9457 max-Emeasure..PASCALS dataset with DSS method get| 0.8618 max-fmeasure| 0.074...原创 2019-12-10 10:42:24 · 276 阅读 · 0 评论 -
EGNet自悟1
自悟1:s6导引s2相加,里面的特征是二值图还是数值图?数值图会有作用原创 2019-12-09 15:17:37 · 242 阅读 · 1 评论 -
EGNet可视化分析: G3、G4、G5、G6、final、edge
final&edgeG3 G4G5 G6F3 F4F4 F5F G比较原创 2019-12-05 16:26:15 · 1194 阅读 · 1 评论 -
cbam模块
https://github.com/fuyongXu/deeplearning_models_classifier_tutorial/blob/master/models/bam.py# -*-coding:utf-8-*-import mathimport torchimport torch.nn as nnimport torch.nn.functional as...原创 2019-12-05 10:55:45 · 723 阅读 · 0 评论 -
DUTS-EGNet作者提供的在DUTS-TR-Mask中多出来3张图片,用如下代码找出,png中混迹了jpg格式三张图片
https://blog.csdn.net/Teeyohuang/article/details/79809652import osf = open("./img.txt", 'w') # 先创建一个空的文本 imgpath = "./DUTS-TR-Image/" # 指定需要读取文件的目录 DUTS-TR-Mask DUTS-TR-Imagefiles = os.listdi...原创 2019-12-03 21:52:40 · 886 阅读 · 0 评论 -
EGNet各种链接
程明明主页上面的EGNet: http://mmcheng.net/egnet/论文pdf: http://mftp.mmcheng.net/Papers/19ICCV_EGNetSOD.pdfgithub: https://github.com/JXingZhao/EGNet/原创 2019-12-02 21:45:52 · 301 阅读 · 0 评论 -
python 获取指定文件夹下所有文件名
https://blog.csdn.net/zhuzuwei/article/details/79925562os.listdir()用于返回指定的文件夹下包含的文件或文件夹名字的列表,这个列表按字母顺序排序。 import os filePath = 'C:\\myLearning\\pythonLearning201712\\carComments\\01\\'...原创 2019-11-20 22:18:40 · 488 阅读 · 0 评论 -
安装Cython教程
背景介绍:为了评价我的显著模型是否好用,我采用了DSS的评测代码这是DSS作者的网址链接:https://github.com/Andrew-Qibin/SalMetricSalMetric就是评测测试出来的显著图效果好坏的方式使用这个评测代码需要安装如下两个require文件:1 opencv(version3) 我猜是c的2 Cython1 Cython下载安装1 Cyt...原创 2019-11-20 10:43:56 · 814 阅读 · 0 评论 -
MergeLayer1的详细介绍
class MergeLayer1(nn.Module): # list_k: [[64, 512, 64], [128, 512, 128], [256, 0, 256] ... ] def __init__(self, list_k): super(MergeLayer1, self).__init__() self.list_k = list_k...原创 2019-11-18 22:00:34 · 565 阅读 · 0 评论 -
庖丁解牛-Resnet50 深度剖析,细致讲解,深入理解
庖丁解牛-ResNet-50深度剖析请看50-layer这一列是本文介绍的层的结构:resnet-50有四组大block,每组分别是3, 4, 6, 3个小block,每个小block里面有三个卷积,另外这个网络的最开始有一个单独的卷积层,因此是:(3+4+6+3)*3+1=49最后又一个全连接层,因而一共50层如下图,每个大block里面的第一个都是IN !==OUT情况,左侧支线,.........原创 2019-11-05 12:07:07 · 74551 阅读 · 21 评论 -
Pytorch---maxpool的ceil_mode
https://blog.csdn.net/GZHermit/article/details/79351803pytorch里面的maxpool,有一个属性叫ceil_mode,这个属性在api里面的解释是ceil_mode: when True, will useceilinstead offloorto compute the output shape也就...原创 2019-11-02 15:28:15 · 1257 阅读 · 0 评论 -
requires_grad: volatile 和 requires_grad在pytorch中的意思
https://blog.csdn.net/u012436149/article/details/66971822在resnet.py文件中遇到了Backward过程中排除子图pytorch的BP过程是由一个函数决定的,loss.backward(), 可以看到backward()函数里并没有传要求谁的梯度。那么我们可以大胆猜测,在BP的过程中,pytorch是将所有影响loss...原创 2019-11-02 15:11:13 · 227 阅读 · 0 评论 -
nn.BatchNorm2d
先看这个,对NCHW格式的输入有个直观的理解:http://www.mamicode.com/info-detail-2378483.htmlhttps://www.jianshu.com/p/86530a0a3935官网资料: https://www.cnblogs.com/leebxo/p/10102689.htmlm = nn.BatchNorm2d(100, ...原创 2019-11-02 14:32:06 · 625 阅读 · 0 评论 -
Variable
# coding=utf-8import torchfrom torch.autograd import Variable """pytorch中Variable了解""""""Variable是Pytorch中autograd自动微分模块的核心。它封装了Tensor,支持几乎所有的tensor操作。主要包含如下3个属性:1. data: 保存Variable所包含的Tenso...原创 2019-10-31 20:19:47 · 297 阅读 · 0 评论 -
zero_grad()
有两种方式直接把模型的参数梯度设成0:model.zero_grad()optimizer.zero_grad() # 当optimizer=optim.Optimizer(model.parameters())时,两者等效如果想要把某一Variable的梯度置为0,只需用以下语句:Variable.grad.data.zero_()# Zero the gradients ...原创 2019-10-31 20:17:32 · 261 阅读 · 0 评论 -
load_state_dict
torch.nn.Module.load_state_dict:https://blog.csdn.net/qq_35608277/article/details/85837457简单的模型load:一般来说,保存模型是把参数全部用 model.cpu().state_dict(), 然后加载模型时一般用 model.load_state_dict(torch.load(model_...原创 2019-10-31 18:36:49 · 2184 阅读 · 0 评论 -
边缘检测: Richer Convolutional Features for Edge Detection
程明明网站对应链接:https://mmcheng.net/zh/rcfedge/pdf:http://mftp.mmcheng.net/Papers/19PamiEdge.pdfgithub:https://github.com/yun-liu/rcfpytorch版本:githubhttps://github.com/meteorshowers/RCF-pytorch相关...原创 2019-10-31 12:10:51 · 724 阅读 · 0 评论 -
ENGet实验结果:可视化分析
原创 2019-10-30 20:50:57 · 447 阅读 · 0 评论 -
numpy.squeeze
https://blog.csdn.net/tracy_leaf/article/details/79297121squeeze 函数:从数组的形状中删除单维度条目,即把shape中为1的维度去掉用法:numpy.squeeze(a,axis = None) 1)a表示输入的数组; 2)axis用于指定需要删除的维度,但是指定的维度必须为单维度,否则将会报错; 3...原创 2019-10-30 20:07:57 · 141 阅读 · 0 评论 -
Pytorch---神经网络特征图可视化
https://www.jianshu.com/p/2fe73baa09b8?utm_source=oschina-app实现思路:1 处理单张图片作为网络输入。2 根据给定的layer层,获取该层的输出结果features。3 考虑到features的形状为:[batch_size, filter_nums, H, W] 提取其中的第一个过滤器得到的结果feature。4...原创 2019-10-30 11:54:37 · 2681 阅读 · 0 评论 -
通过1X1卷积核实现升维,降维
原创 2019-10-28 11:10:51 · 4242 阅读 · 0 评论 -
最大池化:选择kernel_size为3x3而不是2x2的原因
https://blog.csdn.net/tigerda/article/details/78800552●Theano中对Max-pooling的解释Max-poolingisusefulinvisionfortworeasons:1、Byeliminatingnon-maximalvalues,itreducescomputationforupp...原创 2019-10-25 11:22:42 · 3867 阅读 · 0 评论 -
遇到问题EGNet(6):
def forward里面的内容不显示吗?当调用vgg的是后会显示,默认是resnetclass vgg16(nn.Module): def __init__(self): super(vgg16, self).__init__() self.cfg = {'tun': [64, 64, 'M', 128, 128, 'M', 256, 256...原创 2019-10-24 11:42:10 · 239 阅读 · 0 评论 -
EGNet---code(四)训练深入分析--vgg.py
1 class vgg16(nn.Module)class vgg16(nn.Module): def __init__(self): super(vgg16, self).__init__() self.cfg = {'tun': [64, 64, 'M', 128, 128, 'M', 256, 256, 256, 'M', 512, 512,...原创 2019-10-24 11:33:35 · 522 阅读 · 1 评论 -
PyTorch如何打印vgg16每层的输出形状
EGNet -vgg + conv3下面是EGNet,tun &tun_ex另外加了3成卷积的结果import torchfrom vgg import vgg16from torchsummary import summarydevice = torch.device('cuda' if torch.cuda.is_available() else 'cpu...原创 2019-10-23 20:00:39 · 2755 阅读 · 0 评论 -
PyTorch---(EGNet开小灶)(1)---nn.Module, nn.Sequential, nn.Conv2d
1 nn.Module"""Pytorch中神经网络模块化接口nn的了解"""torch.nn是专门为神经网络设计的模块化接口。nn构建于autograd之上,可以用来定义和运行神经网络。nn.Module是nn中十分重要的类,包含网络各层的定义及forward方法。定义自已的网络: 需要继承nn.Module类,并实现forward方法。=> 一般把网络中具有可学习...原创 2019-10-21 21:17:44 · 528 阅读 · 0 评论 -
遇到问题EGNet(5):
1 问题一:论文中的主图是基于vgg16进行说明的,我想确认下我的理解是否正确,论文EGNet的3.2节提到用众多算法常用的基网VGG来描述所提出的方法请问基网的Conv1-2、Conv2-2、Conv3-3、Conv4-3、Conv5-3、Conv6-3表示的含义是否是block1的第二个卷积层(末层)block2的第二个卷积层(末层)block3的第三个卷积层(末层)block4...原创 2019-10-18 20:47:56 · 258 阅读 · 0 评论 -
遇到问题EGNet(4):model.py文件
*extra_layer(base_model_cfg, resnet50()应该是指的调用函数extra_layer()函数的返回值用于输入原创 2019-10-18 17:17:30 · 205 阅读 · 0 评论 -
EGNet---code(三)训练深入分析
run.py# =>1 get_loader train_loader, dataset = get_loader# =>2 config.save_foldconfig.save_fold ='./EGNet/run-nnet'# =>3 train = Solver()train = Solver(train_loader, No...原创 2019-10-15 23:20:50 · 1229 阅读 · 6 评论 -
VGG16
原创 2019-10-12 12:46:03 · 217 阅读 · 1 评论 -
具有捷径连接的深度监督的显著性目标检测 Deeply Supervised Salient Object Detection with Short Connections
https://blog.csdn.net/weixin_40740160/article/details/83621308原创 2019-10-12 11:45:59 · 671 阅读 · 0 评论 -
EGNet---code(二): github-推理,测试
https://github.com/JXingZhao/EGNet测试For testing: Download pretrained model (2cf5);下载 预训练模型 Change the test image path in dataset.py 在数据集py文件中更改图片路径 class ImageDataTest(data.Da...原创 2019-09-19 16:08:53 · 699 阅读 · 4 评论 -
遇到问题EGNet(1): 测试报错
1 输入指令:(PS:模式test 显著性数据集是ECSSD)python3 run.py --mode test --sal_mode e2 模型&数据集放置如下:(PS:请问选中的这两个的放置位置是否正确?对的,另外这个ECSSD是自己下载的,里面内容改名如下) 3 报错如下:(PS:报错核心部分,原因是图片没有读取到)ValueError: non-broadca...原创 2019-09-21 21:11:25 · 1713 阅读 · 5 评论 -
EGNet---code(一)(GPU):代码查看
https://github.com/JXingZhao/EGNetrun.pyimport argparseimport osfrom dataset import get_loaderfrom solver import Solverdef main(config): if config.mode == 'train': train_loade...原创 2019-09-21 23:13:20 · 971 阅读 · 4 评论 -
遇到问题EGNet(2):
https://github.com/JXingZhao/EGNet1 图像尺寸过大导致报错 是的呢,图片太大显存会炸掉,你可以考虑把这种过大的图片resize。RuntimeError: CUDA error: out of memory唯独每次在这个图片的时候报错,注意到其他图片的尺寸长宽最大在400, 而这张图1000多这个网络的输入图像是不是不能太大? 2 这个...原创 2019-09-23 21:48:32 · 340 阅读 · 0 评论