images = np.zeros((1, IMG_HEIGHT, IMG_WIDTH, IMG_CHANNELS), dtype=np.uint8) test_image = plt.imread( "D:\\Projects\\mgr\\test\\4_test.jpg")[:, :, :IMG_CHANNELS] test_image = resize(test_image, (IMG_HEIGHT, IMG_WIDTH), preserve_range=True) images[0] = test_image preds_test = model.predict(images, verbose=1) label = labels[0] pred_label = preds_test[0] f, axarr = plt.subplots(2, 3) axarr[1][2].imshow(images[0]) axarr[1][2].set_title("original") axarr[1][1].imshow(heatmap_to_rgb(label, id2code)) axarr[1][1].set_title("truth") axarr[1][0].imshow(heatmap_to_rgb(pred_label, id2code)) axarr[1][0].set_title("prediction mask") for i in range(label.shape[2]): if i > 3: axarr[1][i - 3].imshow(pred_label[:, :, i]) axarr[1][i - 3].set_title("layer " + id2code[i + 1]) else: axarr[0][i].imshow(pred_label[:, :, i]) axarr[0][i].set_title("layer " + id2code[i + 1]) plt.show()
batch_size=18, epochs=600, callbacks=callbacks) model.save('saved_models/' + model_name + '.model') y_pred = model.predict(test_inputs) y_predi = y_pred for i in range(TEST_LENGTH): f, axarr = plt.subplots(2, 5) axarr[1][4].imshow(test_inputs[i]) axarr[1][4].set_title("original") axarr[1][3].imshow(heatmap_to_rgb(test_labels[i], id2code)) axarr[1][3].set_title("truth") axarr[1][2].imshow(heatmap_to_rgb(y_pred[i], id2code)) axarr[1][2].set_title("prediction mask") for cl in range(len(color_labels)): if cl > 5: axarr[1][cl - 5].imshow(y_pred[i, :, :, cl]) axarr[1][cl - 5].set_title("layer " + id2code[cl + 1]) else: axarr[0][cl].imshow(y_pred[i, :, :, cl]) axarr[0][cl].set_title("layer " + id2code[cl + 1]) plt.show()
# Model learning result = model.fit(train_inputs, train_labels, validation_split=0.2, batch_size=14, epochs=300, callbacks=callbacks) model.save('models/' + model_name + '.model') y_pred = model.predict(test_inputs) y_predi = y_pred for i in range(TEST_LENGTH): img_is = (test_inputs[i]) seg = y_predi[i] fig = plt.figure(figsize=(1, 3)) ax = fig.add_subplot(1, 3, 1) ax.imshow(img_is) ax.set_title("original") ax = fig.add_subplot(1, 3, 2) ax.imshow(heatmap_to_rgb(y_predi[i], id2code)) ax.set_title("predicted class") ax = fig.add_subplot(1, 3, 3) ax.imshow(heatmap_to_rgb(test_labels[i], id2code)) ax.set_title("true class") plt.show()
def add_masks(self, pred): return heatmap_to_rgb(pred, id2code)