私は、白黒画像の円の中心を特定する機械学習プログラムを作成しています。画像生成スクリプトはここにある:Tensorflow用の生成された円画像前処理
from __future__ import division
from __future__ import print_function
import numpy as np
from PIL import Image
from random import randint
for n in range(0,400):
#import time
#date_string = time.strftime("%Y-%m-%d-%H:%M:%S")
#Initialize the matrix- Size (100,100)
size = 100
arr = np.zeros((size,size))
#Initialize the Gaussian Properties
x0 = randint(1,100); y0 = randint(1,100); sigmax = randint(1,10);
sigmay = randint(1,10)
center = (x0,y0)
print (center)
#Create the Gaussian Function
def Gaussian(x,y):
result = int(round(255*np.exp(-(x - x0)**2/(2 * sigmax**2)) *
np.exp(-(y - y0)**2/(2 *sigmay**2))))
return result
for i in range(size):
for j in range(size):
arr[i][j] = Gaussian(i,j)
im = Image.fromarray(arr)
if im.mode !='RGB':
im = im.convert('RGB')
#im.show()
im.save("/home/garrett/train/"+str(n)+".jpeg", "JPEG")
このスクリプトは、この黒と白のサークルのような画像を出力し、中央を与えるラベルは、テキストファイルに出力されます。私はhttps://github.com/tensorflow/models/blob/master/inception/inception/data/build_imagenet_data.py にあるスクリプトを、Tensorflowで使用するために画像データを処理するためのブラックボックスとして使用しています。私は、このコマンドを実行したときただし、:
python build_image_data.py --train_directory=./train --
output_directory=./ --validation_directory=./validate --
labels_file=mylabels.txt --train_shards=1 --validation_shards=1 --
num_threads=1
私は、次のエラーメッセージが出ます:
Saving results to ./
Determining list of input files and labels from ./validate.
Traceback (most recent call last):
File "build_image_data.py", line 435, in <module>
tf.app.run()
File "/home/garrett/anaconda3/lib/python3.6/site-
packages/tensorflow/python/platform/app.py", line 48, in run
_sys.exit(main(_sys.argv[:1] + flags_passthrough))
File "build_image_data.py", line 429, in main
FLAGS.validation_shards, FLAGS.labels_file)
File "build_image_data.py", line 415, in _process_dataset
filenames, texts, labels = _find_image_files(directory,
labels_file)
File "build_image_data.py", line 379, in _find_image_files
matching_files = tf.gfile.Glob(jpeg_file_path)
File "/home/garrett/anaconda3/lib/python3.6/site-
packages/tensorflow/python/lib/io/file_io.py", line 332, in
get_matching_files
for single_filename in filename
File "/home/garrett/anaconda3/lib/python3.6/contextlib.py", line 89,
in __exit__
next(self.gen)
File "/home/garrett/anaconda3/lib/python3.6/site-
packages/tensorflow/python/framework/errors_impl.py", line 466, in
raise_exception_on_not_ok_status
pywrap_tensorflow.TF_GetCode(status))
tensorflow.python.framework.errors_impl.NotFoundError: ./validate/(33,
23)
は、これは正しい方法ですか?もしそうなら、私は間違って何をしていますか?そうでない場合、Tensorflowで使用するためにデータをフォーマットする正しい方法は何ですか?役立つなら、私は畳み込みニューラルネットワークを使ってセンターを特定する予定です。これはおそらく過剰ですが、同様の、より複雑な作業を完了する前に、練習のほうがはるかです。
ありがとうございました。アドバイスありがとうございます。