ImportError: 无法导入名称 '_validate_lengths'

7 浏览
0 Comments

ImportError: 无法导入名称 '_validate_lengths'

我已开始学习Tensorflow。我正在使用Pycharm,我的环境是Ubuntu 16.04。我正在按照教程进行操作。我交叉检查了nump,它是最新的。我不知道这个错误的原因。

from numpy.lib.arraypad import _validate_lengths

ImportError: 无法导入名为'_validate_lengths'的模块

需要提示来解决这个错误。谢谢。

import tensorflow as tf
from skimage import transform
from skimage import data
import matplotlib.pyplot as plt
import os
import numpy as np
from skimage.color import rgb2gray
import random
#listdir: 该方法返回一个包含给定目录中的条目名称的列表。
# 如果路径是一个已存在的目录,则返回True
def load_data(data_dir):
    # 获取data_dir的所有子目录。每个子目录代表一个标签。
    directories = [d for d in os.listdir(data_dir)
                   if os.path.isdir(os.path.join(data_dir, d))]
    # 遍历标签目录并收集两个列表中的数据,labels和images。
    labels = []
    images = []
    for d in directories:
        label_dir = os.path.join(data_dir, d)
        file_names = [os.path.join(label_dir, f)
                      for f in os.listdir(label_dir)
                      if f.endswith(".ppm")]
        for f in file_names:
            images.append(data.imread(f))
            labels.append(int(d))
    return images, labels
ROOT_PATH = "/home/tahir/PhD Study/Traffic Signs Using Tensorflow/"
train_data_dir = os.path.join(ROOT_PATH, "TrafficSigns/Training")
test_data_dir = os.path.join(ROOT_PATH, "TrafficSigns/Testing")
images, labels = load_data(train_data_dir)
# 打印`images`的维度
print(images.ndim)
# 打印`images`的元素数量
print(images.size)
# 打印`images`的第一个实例
images[0]

0