#visualize.visualize_image_matrix_grayscale(image_matrix, "out_image_original_gray.png") #for i in range(10): network.visualize_image(image_matrix_rgb, "original_rgb") network.visualize_image(image_matrix, "original_greyscale") hopfield = Hopfield(image_matrix, alpha=alpha, strmost=strmost) while True: # recompute strmost _new_strmost = 1.0 * (step * batchsize - strmost_increase_after) / \ (strmost_increase_until - strmost_increase_after) * \ (strmost_final - strmost) + strmost if _new_strmost > strmost: hopfield.strmost = _new_strmost #hopfield.recompute_random() hopfield.recompute_random_batch(batchsize) if (step) % visualize_image_after == 0: print("{}: strmost={:.1f}, image visualization...".format( step, hopfield.strmost)) new_image_matrix = hopfield.get_recomputed_image_matrix() #visualize.visualize_image_matrix_grayscale(new_image_matrix, "out_image.png") network.visualize_image(new_image_matrix, "result") print("Visualized") step += 1
_new_strmost = 1.0 * (step * batchsize - strmost_increase_after) / \ (strmost_increase_until - strmost_increase_after) * \ (strmost_final - strmost) + strmost if _new_strmost > strmost: hopfield.strmost = _new_strmost print("{}: strmost={:.1f}".format(step * batchsize, hopfield.strmost)) t = time.time() hopfield.recompute_random_batch(batchsize) print("Batch took {:.2f}s".format(time.time() - t)) t = time.time() network.visualize_image(hopfield.get_recomputed_image_matrix(), "result") network.visualize_image(hopfield.get_recomputed_image_matrix_mean(), "result_mean") network.visualize_image(hopfield.get_recomputed_image_matrix_valid(), "result_valid") network.visualize_image(hopfield.get_recomputed_image_matrix_var(), "var") for i in range(len(b)): network.visualize_image( hopfield.get_recomputed_image_matrix_one_color(i), f"result_colors/result_color_{i}") print(hopfield.V[10, 10]) print("Visualisation took {:.2f}s".format(time.time() - t)) step += 1