tf.image.sobel_edges
Возвращает тензор с картами границ Собеля.
tf.image.sobel_edges(
image
)
Используется в блокнотах
| Используется в руководствах |
|---|
Пример использования:
Для общего использования image можно загрузить из файла, как показано ниже:
image_bytes = tf.io.read_file(path_to_image_file) image = tf.image.decode_image(image_bytes) image = tf.cast(image, tf.float32) image = tf.expand_dims(image, 0)
Но для демонстрации мы используем случайно сгенерированные значения для image:
image = tf.random.uniform( maxval=255, shape=[1, 28, 28, 3], dtype=tf.float32) sobel = tf.image.sobel_edges(image) sobel_y = np.asarray(sobel[0, :, :, :, 0]) # sobel in y-direction sobel_x = np.asarray(sobel[0, :, :, :, 1]) # sobel in x-direction
Для отображения результатов Собеля можно использовать модуль Image из PIL:
# Display edge maps for the first channel (at index 0) Image.fromarray(sobel_y[..., 0] / 4 + 0.5).show() Image.fromarray(sobel_x[..., 0] / 4 + 0.5).show()
| Аргументы | |
|---|---|
image | Тензор изображения формы [batch_size, h, w, d] и типа float32 или float64. Размер изображения должен быть не менее 2x2. |
| Возвращает | |
|---|---|
| Тензор с картами границ для каждого канала. Возвращает тензор формы [batch_size, h, w, d, 2], где два последних измерения содержат [[dy[0], dx[0]], [dy[1], dx[1]], ..., [dy[d-1], dx[d-1]]], вычисленные с помощью фильтра Собеля. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/image/sobel_edges