知识列表
-
-
-
-
- **1、** `string_length_tf(t)`
- **2、**`tf.py_func`
- **3、**`len()`
- **4、**`tf.train.string_input_producer`
- **5、**`tf.cond()`
- **6、**`tensorflow内部含有实现图像翻转的函数`
- **7、**`tf.train.batch([example, label], batch_size=batch_size, capacity=capacity)`
- **8、**`tf.stack`
- **9、**`定义的填充函数:augment_image_pair`
- **10、**`tf.clip_by_value(A, min, max)`
- **11、**`定义读取图片函数:read_image(self, image_path)`
- **12、**`tf.substr`
- **13、**
- **14、**
- **15、**`tf.image.resize_area`
- **16、**`定义函数:scale-space pyramid`
- **17、** `定义函数:gradient_x(self, img)`
- **18、**`定义函数:upsample_nn(self, x, ratio)`
- **19、**`slim.avg_pool2d`
- **20、**`定义函数:generate_image_left(self, img, disp)`
- **21、**`定义函数:SSIM(self, x, y)`
- **22、**`定义函数:get_disparity_smoothness(self, disp, pyramid)`
- **23、**`numpy.floor():`
- **24、**`tf.pad()`
- **25、**`定义函数:get_disp(self, x)`
- **26、**`定义函数:conv(self, x, num_out_layers, kernel_size, stride, activation_fn=tf.nn.elu): `
- **27、**`定义函数:conv_block(self, x, num_out_layers, kernel_size):`
- **28、**`定义函数:maxpool(self, x, kernel_size):`
- **29、**`定义函数:resconv(self, x, num_layers, stride):`
- **30、**`定义函数:resconv(self, x, num_layers, stride):`
- **31、**`定义函数:resblock(self, x, num_layers, num_blocks):`
- **32、**`定义函数:upconv(self, x, num_out_layers, kernel_size, scale):`
- **33、**`定义函数:deconv(self, x, num_out_layers, kernel_size, scale):`
- **34、**`定义函数:build_vgg(self):`
- **35、**`定义函数:build_resnet50(self)::`
- **36、**`定义函数:build_model(self):`
- **37、**`定义函数:build_outputs(self):`
- **38、**`定义函数:build_losses(self):`
- **39、**`定义函数:build_summaries(self):`
- **40、**`np.fliplr`
- **41、**`numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)`
- **42、**`np.meshgrid`
- **43、**`np.clip`
- **44、**`定义函数:post_process_disparity(disp):`
- **45、**`定义函数:count_text_lines(file_path):`
- **46、**`tf.ConfigProto(allow_soft_placement=True)`
- **47、**`tf.train.Coordinator:`
- **48、**`train(params):`
- **49、**`test(params):`
- **50、**`tf.app.run()`
- 参考资料:
-
-
-
1、 string_length_tf(t)
返回数组长度
2、tf.py_func
核心是一个func函数(由用户自己定义),该函数接收numpy array作为输入,并返回numpy array类型的输出。
tf.py_func(func,inp,Tout,stateful=True,name=None):第一个参数func是我们要执行的函数,输入是numpy数组输出也是,这里是len函数;第二个参数inp是函数输入,是一个列表;第三个参数Tout制定了func函数返回numpy_array转化成tensor后的格式。也就是说这个函数的作用是将func函数的输出变为我们想要的格式。
3、len()
python的一个内置函数,输入是一个数组或字符串,返回值是数组中的元素个数。
def string_length_tf(t):
return tf.py_func(len, [t], [tf.int64])
#返回int64类型的数组t的元素个数
4、tf.train.string_input_producer
用于开启一个线程,进行生成图片名队列,这样可以极大的增强gpu效率,第一个参数为文件夹名,第二个参数shuffle为是否打乱顺序,shuffle=False 时一个epoch内文件的顺序不被打乱,设置shuffle=True,那么在一个epoch内,数据的前后顺序就会被打乱,此外还有参数num_epochs 是epoch数。
5、tf.cond()
在TensorFlow中,tf.cond()类似于c语言中的if…else…,用来控制数据流向。
例left_image = tf.cond(do_flip > 0.5, lambda: tf.image.flip_left_right(right_image_o), lambda: left_image_o)
如果do_flip > 0.5则运行left_image = tf.image.flip_left_right(right_image_o),
否则运行left_image = left_image_o。
6、tensorflow内部含有实现图像翻转的函数
tf.image.flip_up_down:从上向下翻转
tf.image.flip_left_right:从左到右翻转
tf.image.transpose_image:对角线翻转
tf.image.random_flip_up_down:以一定概率从上向下翻转
tf.image.random_flip_left_right:以一定概率从左到又翻转
7、tf.train.batch([example, label], batch_size=batch_size, capacity=capacity)
[example, label]表示样本和样本标签,这个可以是一个样本和一个样本标签,batch_size是返回的一个batch样本集的样本个数。capacity是队列中的容量。这主要是按顺序组合成一个batch。
tf.train.shuffle_batch([example, label], batch_size=batch_size, capacity=capacity, min_after_dequeue)
不一样的是这个参数min_after_dequeue,一定要保证这参数小于capacity参数的值,否则会出错。这个代表队列中的元素大于它的时候就输出乱的顺序的batch。也就是说这个函数的输出结果是一个乱序的样本排列的batch,不是按照顺序排列的。
上面的两个函数返回值都是一个batch的样本和样本标签,只是一个是按照顺序,另外一个是随机的。
8、tf.stack
用于拼接两个tf 张量,拼接可以在不同的维度上进行,拼接后的新张量维度加1,前面的参数为用于拼接的张量,后面的参数数字表示在哪个轴上拼接。
9、定义的填充函数:augment_image_pair
10、tf.clip_by_value(A, min, max)
输入一个张量A,把A中的每一个元素的值都压缩在min和max之间。小于min的让它等于min,大于max的元素的值等于max。
11、定义读取图片函数:read_image(self, image_path)
12、tf.substr
从字符串的 Tensor 中返回子字符串。
对于输入 Tensor 中的每个字符串,创建一个从索引 pos 开始的子字符串,总长度为 len。
如果 len 定义了一个将超出输入字符串长度的子字符串,那么使用尽可能多的字符;如果 pos 是负数或指定的字符索引大于任何输入字符串,则会抛出一个 InvalidArgumentError;pos 和 len 必须具有相同的形状,否则在 Op 创建时会抛出一个 ValueError。
13、
**:为乘方
//:整除,取整数部分