我正在尝试使用MRI图像制作线性SVM分类器(AD与NC),用于阿尔茨海默病的分类。如何正确加载图像数据集?
我找到了一个SVM图像分类的例子,我试图通过试验,但加载数据集时出错。文件夹名称为“images”,“images”中有五个子文件夹。它们被命名为doller_bill,向日葵,披萨,狗和球。每个子文件夹包含50-60张照片作为jpg格式。以下是我下载的示例代码。 download from github
from pathlib import Path
import matplotlib.pyplot as plt
import numpy as np %matplotlib notebook
from sklearn import svm, metrics, datasets
from sklearn.utils import Bunch
from sklearn.model_selection import GridSearchCV, train_test_split
from skimage.io import imread
from skimage.transform import resize
def load_image_files(container_path, dimension=(64, 64)):
image_dir = Path(container_path)
folders = [directory for directory in image_dir.iterdir() if
directory.is_dir()]
categories = [fo.name for fo in folders]
descr = "A image classification dataset"
images = []
flat_data = []
target = []
for i, direc in enumerate(folders):
for file in direc.iterdir():
img = skimage.io.imread(file)
img_resized = resize(img, dimension, anti_aliasing=True,
mode='reflect')
flat_data.append(img_resized.flatten())
images.append(img_resized)
target.append(i)
flat_data = np.array(flat_data)
target = np.array(target)
images = np.array(images)
return Bunch(data=flat_data,
target=target,
target_names=categories,
images=images,
DESCR=descr)
image_dataset = load_image_files("images/")
但是,当我运行代码时,它出现如下错误
NameError:未定义名称'skimage'
那么,请你帮我弄清楚如何加载图像数据集。例如,我有一个名为“images”的文件夹,子文件夹被命名为“MRI images_NC”,“MRI images_AD”,因此,每个文件夹大约包含1500张照片。
再次感谢。
名称'skimage'未定义
意味着在导入期间
from skimage.io import imread `enter code here`
无法找到skimage套餐
请跑一个
pip安装scikit-image