oeb*_*oeb 2 optimization deep-learning tensorflow
我试图使用tensorflow在2D图像映射上检测局部最小值的位置和值.由于这不是微不足道的,我想知道tf中一个强大而有效的方式是什么?
到目前为止,我想到了使用[-1 1]内核的简单水平和垂直卷积.
小智 5
您可以找到这样的本地最大值,如下所示:
import tensorflow as tf
def get_local_maxima(in_tensor):
max_pooled_in_tensor = tf.nn.pool(in_tensor, window_shape=(3, 3), pooling_type='MAX', padding='SAME')
maxima = tf.where(tf.equal(in_tensor, max_pooled_in_tensor), in_tensor, tf.zeros_like(in_tensor))
return maxima
Run Code Online (Sandbox Code Playgroud)
对于局部最小值,最容易否定输入然后找到最大值,因为对于pooling_type到目前为止仅支持AVG和MAX.
为什么这样做?某个指数in_tensor的值与同一指数中的值相同的唯一时间max_pooled_in_tensor是该值是以该指数为中心的3x3邻域中的最高值in_tensor.
| 归档时间: |
|
| 查看次数: |
525 次 |
| 最近记录: |