Linux系统里压缩PDF文件大小 sudo apt-get install ghostscriptgs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf其中,-dPDFSETTINGS=/screen 或者 /ebook 或者 /prepress,分别对应着低、中、高三个清晰度的压缩...
SNPE MaxPerGPUSize 注意事项 SNPE根据不同的硬件设备支持的GPU每层卷积运算的能力不同,具体如下:A330平台:8192A430,A530平台: 16384H或者W乘以通道数不能大于上面的上限,如51251232 size的feature map 刚好是A430,A530设备的最大量级。值得注意: 我们设计网络时,容易忽略padding带来的计算数据变大问题。比如,输入51251232数据,按说刚刚好可以计算,但是如果卷积有padding操作,则有可能变成51351332,数值超过计算上限了,导致结果和PC端的不一样,这一点
tensorflow 图不是拓扑结构问题 问题:topological sort failed with message: The graph couldn’t be sorted in topological order.背景:我确认自己的建立的图没有环,但是运行的时候tensorflow会报graph中存在非拓扑结构原因:使用n卷积,每个卷积的输入都是相同的数据data,这样会得到n个卷积结果,然后按axis=3的维度进行合并,这个时候会报错。解决方案:不要在最后将n个卷积结果一次性的合并,而是要在每次卷积后与之前的卷积进行合并。
Tensorflow Sess Attempted to use a closed Session 问题 问题描述:我们有时候会在工程中使用session作为返回值或者在其他函数中使用之前定义的session,但是会遇见即使返回了session但是这个session已经自动关闭了,无法使用。解决方法:将该session设置为默认的session即可不被tensorflow自动关闭# right solutiondef initSessiong(): sess = tf.Session() sess = sess.as_default() # set default session return se
Partial Convolution implement Tensorflow 1.X version inpainting里面重要的一个工作是Nvidia的Partial Convolution部分卷积,该卷积包含两个分支,一个是更新mask图像,另一个则是根据mask图进行部分的卷积。下面是他的1.x版本的实现代码如下:def pc_conv(x, mask, cnum, ksize, stride, test ,name='pconv'): b, h, w, c = int(x.s...
The BatchNorm layer convertion to caffe model from tensorflow caffe must set the batchnorm scale as 1, which is as follows.net.params[‘bn1’][2].data[…] = 1Mean value is [0,0,0,0…,0] and variance is [1,1,1,1,…,1]The gamma and beta value are from tensorflow mo...
Count to tensorflow model FLOPs and trainable params Count to tensorflow model FLOPs and trainable paramsStep1:Convert your tensorflow checkpoint model to PB formatStep2:Call the function as followsimport tensorflow as tffrom tensorflow.python.fra...
tensorflow gauss blur 高斯模糊处理 tensorflow的高斯模糊函数如下import tensorflow as tfimport numpy as npfrom scipy.ndimage.filters import gaussian_filterfrom ops import concatdef gauss_kernel_fixed(sigma, N): # Non-Adaptive kernel si...
tensorflow fake quantization 伪量化训练-单GPU和多GPU tensorflow fake quantization 伪量化训练tensorflow伪量化训练简单说就是用float类型的模拟int类型的运算。在fake quantization训练的过程中,尽量使float类型的计算精度接近int类型的精度。fake quantization 需要在计算图中添加一个伪量化的节点,才能进行伪量化训练,同时该方法的训练出来的模型需要使用,对应的伪量化转pb代...
tensorfow checkpoint 转pb 模型 conv2d的输出节点名字是BiasAdd constant_graph = graph_util.convert_variables_to_constants(sess, sess.graph_def, ['*/BiasAdd'])为自己定义的name scope。如果使用tf.layers.conv2d实现的卷积操作,要将pb模型的输出结果为该卷积的结果,需要指定为 /BiasAdd而不是/Conv2D...
使用tf.layers.conv2d()转PB模型时记得加Conv2D后缀 tf.layers.conv2d()会自动添加Conv2D例如我们这样设置tf.layers.conv2d( , name='output')我们将checkpoint转换成pb模型时,需要制定一个输出节点。使用layers这个包,如name为output,如果直接设定该节点为输出节点,则会报错。原因:tensorflow的layers会自动的name的后面加上Conv2D下级scope...
tensorflow用tf.nn.conv2d_transpose实现tf.layers.conv2d_transpose 用nn的操作实现layers的操作def deconv(x, cnum, kernel_size = 3, scale_size = 2,stride = 2, name='upsample', padding='SAME', ): b, w, h, c = x.shape[0], x.shape[1], x.shape[2], x.shape[3] b, w, h, c = i...
How to process Conv weight during the model trainning 这里写自定义目录标题Tensorflow如何在训练的时候对卷积的权重进行一些特殊处理步骤如下整体代码Tensorflow如何在训练的时候对卷积的权重进行一些特殊处理比如对卷积的权重进行求均值,取最大值等等自定义的操作。步骤如下获取想要操作的的卷积核权重,保存到一个list中申请一个同该卷核相同shape的占位符;使用tf.assign()创建一个更新卷积核权重的操作op;整体代码...
Make the SPNE softmax layer support the 4D model with axis=3 实现SNPE softmax layer的4D tensor 第4轴的排序SNPE的softmax只支持1D和2D的输入,如何实现4D数据的排序呢? 并且SNPE的排序的轴是固定的axis=-1,如何对4D数据的第3个轴排序呢?def softmax(data, axis=3): dt_shape = data.get_shape().as_list() dt_axis1 = ...
How to implement tf.clip_by_value() when converted the TF PB model to DLC model 如何在SNPE中实现Tensorfow的tf.clip_by_value()操作def clip_by_value(x, min, max, name='clip'): with tf.name_scope(name=name): with tf.name_scope(name='clipmin'): res = tf.maximum(x, min...
Tensrfow GAN Discriminator 如何使用hinge loss训练 hinge loss核心点:网络的输出要确保是[-1,1]范围之前一直用cross entrype loss这一点没有台注意,所以之前一直没写对!hinge loss 核心代码 def Hinge_loss(pos, neg, name='Hinge_loss'): with tf.variable_scope(name): d_loss ...
pyTorch onnx 学习(二) 添加自定义的onnx operations 在pyTorch中定义的网络图以及其运算,在onnx中不一定支持,因此,需要自定义的添加operators。如果onnx支持则可以直接使用,一下是支持的网络以及运算:add (nonzero alpha not supported)sub (nonzero alpha not supported)muldivcatmmaddmm...
pyTorch onnx 学习(一) 官方文档pyTorch版本AlexNet模型转换到caffe2版本的模型 AlexNet模型已经训练好,来自与torchvision包,现在需要转换成onnx格式的模型,转换后的结果为alexnet.onnx:import torchimport torchvisiondummy_input = torch.randn(10, 3, 224, 224, device='cud...