如何将tensor大于某个值为1,小于某个值为0
如何将tensor大于某个值为1,小于某个值为0
一、总结
一句话总结:
可用tf.where方法,tf.where(pridict_y>0.5,x=1,y=0)表示大于0.5取1,否则取
二、如何将tensor大于某个值为1,小于某个值为0
转自或参考:如何将tensor大于某个值为1,小于某个值为0
http://blog.csdn.net/qq_32623363/article/details/103684766
方法很简单,定义一个简单的函数,imgTensor
是传入的需要转换的tensor
,boundary
是这个临界值,即大于boundary
的值设为1
,小于boundary
的值设为0
。本函数使用tf.where
来实现,那么很容易可以看出我们可以任意设置tensor
大于某个值(或小于某个值)时的值,只需要将下面代码中的tf.ones_like
(或:tf.zeros_like
)改成tf.fill()
来构造一个相同大小的tensor
即可。
def getBinaryTensor(imgTensor, boundary = 200):
one = tf.ones_like(imgTensor)
zero = tf.zeros_like(imgTensor)
return tf.where(imgTensor > boundary, one, zero)
版权申明:欢迎转载,但请注明出处
一些博文中有一些参考内容因时间久远找不到来源了没有注明,如果侵权请联系我删除。
在校每年国奖、每年专业第一,加拿大留学,先后工作于华东师范大学和香港教育大学。
2025-04-30:宅加太忙,特此在网上找女朋友,坐标上海,非诚勿扰,vx:fan404006308
AI交流资料群:753014672