2017-03-17 11 views
0
私は、次のコード使用して画像を表示する管理

Tensorflowのv0.12画像は後にリサイズdisplyingない

import os 
import tensorflow as tf 
from tensorflow.python.framework import ops 
from tensorflow.python.framework import dtypes 
import numpy as np 
import glob 
import fnmatch 
import matplotlib.pyplot as plt 
from PIL import Image 

def test1(path): 

    filename_queue = tf.train.string_input_producer(tf.train.match_filenames_once(path)) 

    image_reader = tf.WholeFileReader() 

    label, image_file = image_reader.read(filename_queue) 

    image = tf.image.decode_jpeg(image_file,3) 

    print(image)  

    image = tf.image.resize_images(image, [224 , 224]) 

    print(image) 

    with tf.Session() as sess: 

     tf.global_variables_initializer().run() 

     coord = tf.train.Coordinator() 
     threads = tf.train.start_queue_runners(coord=coord) 

     for i in range(1): 
      img = image.eval()  

     Image.fromarray(np.asarray(img)).show() 


     coord.request_stop() 
     coord.join(threads) 

    sess.close() 

if __name__== "__main__": 

    test1("./data/test1/1099.jpg") 

それが与える:私は次のコードを使用して画像のサイズを変更する場合が

import os 
import tensorflow as tf 
from tensorflow.python.framework import ops 
from tensorflow.python.framework import dtypes 
import numpy as np 
import glob 
import fnmatch 
import matplotlib.pyplot as plt 
from PIL import Image 

def test1(path): 

    filename_queue = tf.train.string_input_producer(tf.train.match_filenames_once(path)) 

    image_reader = tf.WholeFileReader() 

    label, image_file = image_reader.read(filename_queue) 

    image = tf.image.decode_jpeg(image_file,3) 

    print(image)  


    with tf.Session() as sess: 

     tf.global_variables_initializer().run() 

     coord = tf.train.Coordinator() 
     threads = tf.train.start_queue_runners(coord=coord) 

     for i in range(1): 
      img = image.eval()  

     Image.fromarray(np.asarray(img)).show() 


     coord.request_stop() 
     coord.join(threads) 

    sess.close() 

if __name__== "__main__": 

    test1("./data/test1/1099.jpg") 

を次のエラーメッセージ:

raise TypeError( "このデータ型は処理できません") TypeError:このデータ型を処理できません

+0

まあ画像DTYPEは何ですか? print(image.dtype)またはprint(tf.DType(image)) – Steven

+0

@スペーン私の質問にお返事ありがとうございます。 print(image.dtype)はTensor( "DecodeJpeg:0"、shape =(?,?、3)、dtype = uint8)を生成します。また、print(tf.DType(image))はTypeError :int()引数は 'Tensor'ではなく、文字列または数字でなければなりません – dragon

+0

幸いです。あなたは質問を閉じることができるようにあなたの答えを受け入れるべきです。 – Steven

答えて

0

import os 
import tensorflow as tf 
from tensorflow.python.framework import ops 
from tensorflow.python.framework import dtypes 
import numpy as np 
import glob 
import fnmatch 
import matplotlib.pyplot as plt 
from PIL import Image 

def test1(path): 

    filename_queue = tf.train.string_input_producer(tf.train.match_filenames_once(path)) 

    image_reader = tf.WholeFileReader() 

    label, image_file = image_reader.read(filename_queue) 

    image = tf.image.decode_jpeg(image_file,3) 

    print(image)  

    image = tf.image.resize_images(image, [224 , 224]) 

    print(image) 

    with tf.Session() as sess: 

     tf.global_variables_initializer().run() 

     coord = tf.train.Coordinator() 
     threads = tf.train.start_queue_runners(coord=coord) 

     for i in range(1): 
      img = image.eval()  

     Image.fromarray(np.asarray(img.astype(np.uint8))).show() 


     coord.request_stop() 
     coord.join(threads) 

    sess.close() 

if __name__== "__main__": 

    test1("./data/test1/1099.jpg") 

それを修正するための管理のおかげで、人々をありがとう:)

関連する問題