Advertisement
Guest User

Untitled

a guest
May 27th, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. from keras.models import Model
  2. from keras.layers import Input, Dense
  3. from tifffile import *
  4. import numpy as np
  5. import csv
  6.  
  7. window_height = 576
  8. window_width = 200
  9. image_step = window_width
  10. outputs = 10
  11.  
  12.  
  13. def test_network(in_data, out_data):
  14. inp = Input(shape=(window_height, window_width,)) # 3d vector as inputdata
  15. hidden_1 = Dense(0.1*n, activation='tanh')(inp)
  16. out = Dense(outputs, activation='sigmoid')(hidden_1)
  17. model = Model(input=inp, output=out)
  18. model.compile(optimizer='rmsprop',
  19. loss='mse',
  20. metrics=['accuracy'])
  21. model.train_on_batch(in_data, out_data)
  22. return model.evaluate()
  23.  
  24.  
  25. with open('objects.csv', 'r') as f:
  26. reader = csv.reader(f, delimiter=',')
  27. objects_coor = []
  28. for row in reader:
  29. t = [int(row[0]), int(row[1]), int(row[2])]
  30. objects_coor.append(t)
  31.  
  32. for picnum in range(1, 801):
  33. s = "/home/micresh/traindata/traindata/Train1/" + str(picnum) + '.tif'
  34. tiff = imread(s)
  35. images_count = int(16000/image_step)
  36. objects_on_pic = []
  37. for i in range(len(objects_coor)):
  38. if objects_coor[i][0] == picnum:
  39. objects_on_pic.append([objects_on_pic[i][1], objects_on_pic[i][2]])
  40. out_data = np.zeros((images_count, 8))
  41. in_data = np.zeros(((images_count, window_height, window_width)))
  42. for step in range(images_count):
  43. for y_cor in range(window_height):
  44. for x_cor in range(window_width):
  45. in_data[step][y_cor][x_cor] = tiff[y_cor][x_cor + image_step * step]
  46. if len(objects_coor) == 0:
  47. for x in range(8):
  48. out_data[step][x] = 0
  49. else:
  50. x = 0
  51. while x < 8:
  52. for y in range(len(objects_coor)):
  53. out_data[step][x] = objects_coor[y][0]
  54. out_data[step][x+1] = objects_coor[y][1]
  55. x += 2
  56. print (test_network(in_data, out_data))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement