files = os.listdir('./data/' + d)でのエラーについて
[][1
]
↑print(omg)の結果
画像の独自のデータセットを読み込もうとしています。
下記のコードのimg = cv2.resize(img, (IMG_SIZE, IMG_SIZE))
でエラーがでました。
data
というディレクトリの下にa,b,c,d,e,fというディレクトリがあってそのディレクトリに画像のファイルが大量に入っています。ファイルの拡張子はpngやjpegです。
データセットの読み込みを教えていただければありがたいです。
import os
import numpy as np
import cv2
import tensorflow as tf
NUM_CLASSES = 6 #分類するクラス数
IMG_SIZE = 28
#画像のあるディレクトリ
train_img_dirs = ['a', 'b', 'c', 'd', 'e', 'f']
#学習画像データ
train_image = []
#学習データのラベル
train_label = []
for i, d in enumerate(train_img_dirs):
# ./data/以下の各ディレクトリ内のファイル名取得
files = os.listdir('Users/name/desktop/zissou/data/' + d)
for f in files:
# 画像読み込み
img = cv2.imread('Users/name/desktop/zissou/data/' + d + '/' + f)
# 1辺がIMG_SIZEの正方形にリサイズ
img = cv2.resize(img, (IMG_SIZE, IMG_SIZE))
# 1列にして
img = img.flatten().astype(np.float32)/255.0
train_image.append(img)
# one_hot_vectorを作りラベルとして追加
tmp = np.zeros(NUM_CLASSES)
tmp[i] = 1
train_label.append(tmp)
# numpy配列に変換
train_image = np.asarray(train_image)
train_label = np.asarray(train_label)
エラー内容
Traceback (most recent call last)
<ipython-input-65-4ca319834c1e> in <module>()
6 img = cv2.imread('/Users/tadashintaro/desktop/zissou/data/' + d + '/' + f)
7 # 1辺がIMG_SIZEの正方形にリサイズ
----> 8 img = cv2.resize(img, (IMG_SIZE, IMG_SIZE))
9 # 1列にして
10 img = img.flatten().astype(np.float32)/255.0
error: /Users/jenkins/miniconda/1/x64/conda- bld/conda_1486587097465/work/opencv- 3.1.0/modules/imgproc/src/imgwarp.cpp:3229: error: (-215) ssize.area() > 0 in function resize**