2017-07-20 4 views
-1

Je veux changer quelques images qui sont constituées d'éléments noir et blanc seulement (MNIST).Comment inverser les images BLACK et WHITE (ou en niveaux de gris) dans tensorflow? (noir <-> blanc changement)

Je peux facilement convertir en noir au blanc, du blanc au noir par ces codes dans l'élément python

def inverseImageBW_array(originalImage): 
    temp = 1 - originalImage 
    temp = -1.* originalImage 
    return temp 

cependant, je ne peux pas le faire quand je traite le code tensorflow. J'ai essayé de le faire en

tf.multiply(1- originalImage, -1) 

l'acheter ne fonctionne pas. Je sais que nous pouvons facilement changer la luminosité ou le contraste avec les fonctions tf.image mais je pense qu'il n'y a pas de fonctions qui supportent l'inversion noir et blanc.

S'il vous plaît aidez-moi.

Répondre

0

Vous ne savez pas pourquoi quelque chose ne fonctionne pas pour vous. Si votre image est un tenseur 2D ou tenseur 3d avec un lot, puis broadcasting devrait prendre soin de tout:

import tensorflow as tf 

a = tf.constant([[0.5, 0.3], [0.2, 0.8]]) 
b = 1 - a 
with tf.Session() as sess: 
    print sess.run(b) 
+0

oui je sais, mais parce tensorflow ne sait pas sur le nombre d'entrée x (ex [Aucun, 28. 28, 1]). Ensuite, ils n'ont rien fait, ou ont parfois une erreur. –

+0

existe-t-il un autre moyen de convertir les pixels noirs en blanc, blanc en noir? –

+0

La solution ci-dessus devrait fonctionner même pour les entrées de taille [None, 28, 28, 1]. L'as tu essayé? –