Adamwilliam
Adamwilliam

Reputation: 1

python about train a deep neural network on the MRI slices dataset

I want to Train a deep neural network on the MRI slices dataset. Here is my code

import pandas as pd
import numpy as np
from matplotlib import pyplot as plt
import matplotlib

file_dir = 'C:\\Users\\adam\\Downloads\\MRI_Images\\'

import glob
import cv2

images = [cv2.imread(file) for file in glob.glob("C:\\Users\\adam\\Downloads\\MRI_Images\\.png")]

(X_train_full, y_train_full), (X_test, y_test) = images

And python shows that not enough values to unpack. I don't know why. Is there problem when I put all images in one file to python?

Upvotes: 0

Views: 138

Answers (1)

zeit
zeit

Reputation: 377

I don't know the structure of your dataset directory, but I know that using glob.glob() will return all the images inside the 'C:\\Users\\adam\\Downloads\\MRI_Images\\' folder (not include subfolder).

That is, what you get inside image is a list of read-in images (numpy array format), like:

[image_0, image_1, ...]

A list can not be unpack into two tuples. And this is why the error comes out.

Try reading your train and test images seperately might help:

images_trainx = [cv2.imread(file) for file in glob.glob("C:\\Users\\adam\\Downloads\\MRI_Images\\trainx\\*.png")]
images_trainy = [cv2.imread(file) for file in glob.glob("C:\\Users\\adam\\Downloads\\MRI_Images\\trainy\\*.png")]
images_testx = [cv2.imread(file) for file in glob.glob("C:\\Users\\adam\\Downloads\\MRI_Images\\testx\\*.png")]
images_testy = [cv2.imread(file) for file in glob.glob("C:\\Users\\adam\\Downloads\\MRI_Images\\testy\\*.png")]

This approach is clunky but hard to go wrong.

Upvotes: 0

Related Questions