def fix_image_flip_shape(image, result):
"""Set the shape to 3 dimensional if we don't know anything else.
Args:
image: original image size
result: flipped or transformed image
Returns:
An image whose shape is at least None,None,None.
"""
image_shape = image.get_shape()
if image_shape == tensor_shape.unknown_shape():
result.set_shape([None, None, None])
else:
result.set_shape(image_shape)
return result
# =========================================================================== #
# Image + BBoxes methods: cropping, resizing, flipping, ...
# =========================================================================== #
python类unknown_shape()的实例源码
def fix_image_flip_shape(image, result):
"""Set the shape to 3 dimensional if we don't know anything else.
Args:
image: original image size
result: flipped or transformed image
Returns:
An image whose shape is at least None,None,None.
"""
image_shape = image.get_shape()
if image_shape == tensor_shape.unknown_shape():
result.set_shape([None, None, None])
else:
result.set_shape(image_shape)
return result
# =========================================================================== #
# Image + BBoxes methods: cropping, resizing, flipping, ...
# =========================================================================== #
def fix_image_flip_shape(image, result):
"""Set the shape to 3 dimensional if we don't know anything else.
Args:
image: original image size
result: flipped or transformed image
Returns:
An image whose shape is at least None,None,None.
"""
image_shape = image.get_shape()
if image_shape == tensor_shape.unknown_shape():
result.set_shape([None, None, None])
else:
result.set_shape(image_shape)
return result
# =========================================================================== #
# Image + BBoxes methods: cropping, resizing, flipping, ...
# =========================================================================== #
def fix_image_flip_shape(image, result):
"""Set the shape to 3 dimensional if we don't know anything else.
Args:
image: original image size
result: flipped or transformed image
Returns:
An image whose shape is at least None,None,None.
"""
image_shape = image.get_shape()
if image_shape == tensor_shape.unknown_shape():
result.set_shape([None, None, None])
else:
result.set_shape(image_shape)
return result
# =========================================================================== #
# Image + BBoxes methods: cropping, resizing, flipping, ...
# =========================================================================== #
def testset_shape(self):
p = state_ops.variable_op([1, 2], tf.complex64)
self.assertEqual([1, 2], p.get_shape())
p = state_ops.variable_op([1, 2], tf.complex64, set_shape=False)
self.assertEqual(tensor_shape.unknown_shape(), p.get_shape())
def testAssignNoVarShape(self):
value = np.array([[42.0+42.0j, 43.0+43.0j]])
var = state_ops.variable_op(value.shape, tf.complex64, set_shape=False)
self.assertEqual(tensor_shape.unknown_shape(), var.get_shape())
assigned = tf.assign(var, value)
self.assertShapeEqual(value, assigned)
def testAssignNoVarShapeNoValidateShape(self):
value = np.array([[42.0+42.0j, 43.0+43.0j]])
var = state_ops.variable_op(value.shape, tf.complex64, set_shape=False)
self.assertEqual(tensor_shape.unknown_shape(), var.get_shape())
assigned = tf.assign(var, value, validate_shape=False)
self.assertShapeEqual(value, assigned)
def _NewShapelessTensor(self):
tensor = tf.placeholder(tf.complex64)
self.assertEqual(tensor_shape.unknown_shape(), tensor.get_shape())
return tensor
def testAssignNoValueShapeNoValidateShape(self):
value = self._NewShapelessTensor()
shape = [1, 2]
var = state_ops.variable_op(shape, tf.complex64)
self.assertEqual(shape, var.get_shape())
assigned = tf.assign(var, value, validate_shape=False)
self.assertEqual(tensor_shape.unknown_shape(), assigned.get_shape())
def testAssignNoShapeNoValidateShape(self):
with self.test_session():
value = self._NewShapelessTensor()
var = state_ops.variable_op([1, 2], tf.complex64, set_shape=False)
self.assertEqual(tensor_shape.unknown_shape(), var.get_shape())
self.assertEqual(tensor_shape.unknown_shape(),
tf.assign(var, value, validate_shape=False).get_shape())
def testAssignUpdateNoShape(self):
var = state_ops.variable_op([1, 2], tf.complex64, set_shape=False)
added = tf.assign_add(var, self._NewShapelessTensor())
self.assertEqual(tensor_shape.unknown_shape(), added.get_shape())
subbed = tf.assign_sub(var, self._NewShapelessTensor())
self.assertEqual(tensor_shape.unknown_shape(), subbed.get_shape())
def get_shape(self):
return tensor_shape.unknown_shape()
def __init__(self, name, dtype):
super(MockSparseTensor, self).__init__()
self._name = name
self._dtype = dtype
self._shape = tensor_shape.unknown_shape()
self.indices = MockTensor("%s indices" % name, tf.int32)
self.values = MockTensor("%s values" % name, dtype)
def get_shape(self):
return tensor_shape.unknown_shape()
def _reverse_seq(input_seq, lengths):
"""Reverse a list of Tensors up to specified lengths.
Args:
input_seq: Sequence of seq_len tensors of dimension (batch_size, n_features)
or nested tuples of tensors.
lengths: A `Tensor` of dimension batch_size, containing lengths for each
sequence in the batch. If "None" is specified, simply reverses
the list.
Returns:
time-reversed sequence
"""
if lengths is None:
return list(reversed(input_seq))
flat_input_seq = tuple(nest.flatten(input_) for input_ in input_seq)
flat_results = [[] for _ in range(len(input_seq))]
for sequence in zip(*flat_input_seq):
input_shape = tensor_shape.unknown_shape(
ndims=sequence[0].get_shape().ndims)
for input_ in sequence:
input_shape.merge_with(input_.get_shape())
input_.set_shape(input_shape)
# Join into (time, batch_size, depth)
s_joined = array_ops.pack(sequence)
# TODO(schuster, ebrevdo): Remove cast when reverse_sequence takes int32
if lengths is not None:
lengths = math_ops.to_int64(lengths)
# Reverse along dimension 0
s_reversed = array_ops.reverse_sequence(s_joined, lengths, 0, 1)
# Split again into list
result = array_ops.unpack(s_reversed)
for r, flat_result in zip(result, flat_results):
r.set_shape(input_shape)
flat_result.append(r)
results = [nest.pack_sequence_as(structure=input_, flat_sequence=flat_result)
for input_, flat_result in zip(input_seq, flat_results)]
return results
mocks.py 文件源码
项目:DeepLearning_VirtualReality_BigData_Project
作者: rashmitripathi
项目源码
文件源码
阅读 25
收藏 0
点赞 0
评论 0
def get_shape(self):
return tensor_shape.unknown_shape()
mocks.py 文件源码
项目:DeepLearning_VirtualReality_BigData_Project
作者: rashmitripathi
项目源码
文件源码
阅读 26
收藏 0
点赞 0
评论 0
def __init__(self, name, dtype):
super(MockSparseTensor, self).__init__()
self._name = name
self._dtype = dtype
self._shape = tensor_shape.unknown_shape()
self.indices = MockTensor("%s indices" % name, dtypes.int32)
self.values = MockTensor("%s values" % name, dtype)
def test_to_feature_columns_and_input_fn(self):
df = setup_test_df_3layer()
feature_columns, input_fn = (
estimator_utils.to_feature_columns_and_input_fn(
df,
base_input_keys_with_defaults={"a": 1,
"b": 2,
"c": 3,
"d": 4},
target_keys=["g"],
feature_keys=["a", "b", "f"]))
expected_feature_column_a = feature_column.DataFrameColumn(
"a", learn.PredefinedSeries(
"a", tf.FixedLenFeature(tensor_shape.unknown_shape(), tf.int32, 1)))
expected_feature_column_b = feature_column.DataFrameColumn(
"b", learn.PredefinedSeries("b", tf.VarLenFeature(tf.int32)))
expected_feature_column_f = feature_column.DataFrameColumn(
"f", learn.TransformedSeries([
learn.PredefinedSeries("c", tf.FixedLenFeature(
tensor_shape.unknown_shape(), tf.int32, 3)),
learn.PredefinedSeries("d", tf.VarLenFeature(tf.int32))
], mocks.Mock2x2Transform("iue", "eui", "snt"), "out2"))
expected_feature_columns = [expected_feature_column_a,
expected_feature_column_b,
expected_feature_column_f]
self.assertEqual(sorted(expected_feature_columns), sorted(feature_columns))
base_features, targets = input_fn()
expected_base_features = {
"a": mocks.MockTensor("Tensor a", tf.int32),
"b": mocks.MockSparseTensor("SparseTensor b", tf.int32),
"c": mocks.MockTensor("Tensor c", tf.int32),
"d": mocks.MockSparseTensor("SparseTensor d", tf.int32)
}
self.assertEqual(expected_base_features, base_features)
expected_targets = mocks.MockTensor("Out iue", tf.int32)
self.assertEqual(expected_targets, targets)
self.assertEqual(3, len(feature_columns))
def test_to_feature_columns_and_input_fn(self):
df = setup_test_df_3layer()
feature_columns, input_fn = (
estimator_utils.to_feature_columns_and_input_fn(
df,
base_input_keys_with_defaults={"a": 1,
"b": 2,
"c": 3,
"d": 4},
label_keys=["g"],
feature_keys=["a", "b", "f"]))
expected_feature_column_a = feature_column.DataFrameColumn(
"a", learn.PredefinedSeries(
"a", tf.FixedLenFeature(tensor_shape.unknown_shape(), tf.int32, 1)))
expected_feature_column_b = feature_column.DataFrameColumn(
"b", learn.PredefinedSeries("b", tf.VarLenFeature(tf.int32)))
expected_feature_column_f = feature_column.DataFrameColumn(
"f", learn.TransformedSeries([
learn.PredefinedSeries("c", tf.FixedLenFeature(
tensor_shape.unknown_shape(), tf.int32, 3)),
learn.PredefinedSeries("d", tf.VarLenFeature(tf.int32))
], mocks.Mock2x2Transform("iue", "eui", "snt"), "out2"))
expected_feature_columns = [expected_feature_column_a,
expected_feature_column_b,
expected_feature_column_f]
self.assertEqual(sorted(expected_feature_columns), sorted(feature_columns))
base_features, labels = input_fn()
expected_base_features = {
"a": mocks.MockTensor("Tensor a", tf.int32),
"b": mocks.MockSparseTensor("SparseTensor b", tf.int32),
"c": mocks.MockTensor("Tensor c", tf.int32),
"d": mocks.MockSparseTensor("SparseTensor d", tf.int32)
}
self.assertEqual(expected_base_features, base_features)
expected_labels = mocks.MockTensor("Out iue", tf.int32)
self.assertEqual(expected_labels, labels)
self.assertEqual(3, len(feature_columns))
def _reverse_seq(input_seq, lengths):
"""Reverse a list of Tensors up to specified lengths.
Args:
input_seq: Sequence of seq_len tensors of dimension (batch_size, n_features)
or nested tuples of tensors.
lengths: A `Tensor` of dimension batch_size, containing lengths for each
sequence in the batch. If "None" is specified, simply reverses
the list.
Returns:
time-reversed sequence
"""
if lengths is None:
return list(reversed(input_seq))
flat_input_seq = tuple(nest.flatten(input_) for input_ in input_seq)
flat_results = [[] for _ in range(len(input_seq))]
for sequence in zip(*flat_input_seq):
input_shape = tensor_shape.unknown_shape(
ndims=sequence[0].get_shape().ndims)
for input_ in sequence:
input_shape.merge_with(input_.get_shape())
input_.set_shape(input_shape)
# Join into (time, batch_size, depth)
s_joined = array_ops.pack(sequence)
# TODO(schuster, ebrevdo): Remove cast when reverse_sequence takes int32
if lengths is not None:
lengths = math_ops.to_int64(lengths)
# Reverse along dimension 0
s_reversed = array_ops.reverse_sequence(s_joined, lengths, 0, 1)
# Split again into list
result = array_ops.unpack(s_reversed)
for r, flat_result in zip(result, flat_results):
r.set_shape(input_shape)
flat_result.append(r)
results = [nest.pack_sequence_as(structure=input_, flat_sequence=flat_result)
for input_, flat_result in zip(input_seq, flat_results)]
return results
def _reverse_seq(input_seq, lengths):
"""Reverse a list of Tensors up to specified lengths.
Args:
input_seq: Sequence of seq_len tensors of dimension (batch_size, n_features)
or nested tuples of tensors.
lengths: A `Tensor` of dimension batch_size, containing lengths for each
sequence in the batch. If "None" is specified, simply reverses
the list.
Returns:
time-reversed sequence
"""
if lengths is None:
return list(reversed(input_seq))
flat_input_seq = tuple(nest.flatten(input_) for input_ in input_seq)
flat_results = [[] for _ in range(len(input_seq))]
for sequence in zip(*flat_input_seq):
input_shape = tensor_shape.unknown_shape(
ndims=sequence[0].get_shape().ndims)
for input_ in sequence:
input_shape.merge_with(input_.get_shape())
input_.set_shape(input_shape)
# Join into (time, batch_size, depth)
s_joined = array_ops.pack(sequence)
# TODO(schuster, ebrevdo): Remove cast when reverse_sequence takes int32
if lengths is not None:
lengths = math_ops.to_int64(lengths)
# Reverse along dimension 0
s_reversed = array_ops.reverse_sequence(s_joined, lengths, 0, 1)
# Split again into list
result = array_ops.unpack(s_reversed)
for r, flat_result in zip(result, flat_results):
r.set_shape(input_shape)
flat_result.append(r)
results = [nest.pack_sequence_as(structure=input_, flat_sequence=flat_result)
for input_, flat_result in zip(input_seq, flat_results)]
return results
estimator_utils_test.py 文件源码
项目:DeepLearning_VirtualReality_BigData_Project
作者: rashmitripathi
项目源码
文件源码
阅读 20
收藏 0
点赞 0
评论 0
def test_to_feature_columns_and_input_fn(self):
df = setup_test_df_3layer()
feature_columns, input_fn = (
estimator_utils.to_feature_columns_and_input_fn(
df,
base_input_keys_with_defaults={"a": 1,
"b": 2,
"c": 3,
"d": 4},
label_keys=["g"],
feature_keys=["a", "b", "f"]))
expected_feature_column_a = feature_column.DataFrameColumn(
"a",
learn.PredefinedSeries(
"a",
parsing_ops.FixedLenFeature(tensor_shape.unknown_shape(),
dtypes.int32, 1)))
expected_feature_column_b = feature_column.DataFrameColumn(
"b",
learn.PredefinedSeries("b", parsing_ops.VarLenFeature(dtypes.int32)))
expected_feature_column_f = feature_column.DataFrameColumn(
"f",
learn.TransformedSeries([
learn.PredefinedSeries("c",
parsing_ops.FixedLenFeature(
tensor_shape.unknown_shape(),
dtypes.int32, 3)),
learn.PredefinedSeries("d", parsing_ops.VarLenFeature(dtypes.int32))
], mocks.Mock2x2Transform("iue", "eui", "snt"), "out2"))
expected_feature_columns = [
expected_feature_column_a, expected_feature_column_b,
expected_feature_column_f
]
self.assertEqual(sorted(expected_feature_columns), sorted(feature_columns))
base_features, labels = input_fn()
expected_base_features = {
"a": mocks.MockTensor("Tensor a", dtypes.int32),
"b": mocks.MockSparseTensor("SparseTensor b", dtypes.int32),
"c": mocks.MockTensor("Tensor c", dtypes.int32),
"d": mocks.MockSparseTensor("SparseTensor d", dtypes.int32)
}
self.assertEqual(expected_base_features, base_features)
expected_labels = mocks.MockTensor("Out iue", dtypes.int32)
self.assertEqual(expected_labels, labels)
self.assertEqual(3, len(feature_columns))