主頁 > 移動端開發 > 如何解決函式“resize”中的錯誤(-215:Assertionfailed)!ssize.empty()?

如何解決函式“resize”中的錯誤(-215:Assertionfailed)!ssize.empty()?

2021-11-06 15:03:47 移動端開發

我正在研究一個深度學習專案(表面缺陷檢測)來檢測影像中的裂紋和補丁缺陷(原始大小為 (2160,3840,3))和兩個標簽(裂紋和補丁)。在我在新資料上測驗模型時訓練我的模型后,它會生成以下錯誤。作為參考,我在下面給出了我的代碼。

error: OpenCV(4.1.2) /io/opencv/modules/imgproc/src/resize.cpp:3720: error: (-215:Assertion failed) !ssize.empty() in function 'resize' 

train_dir = '/content/drive/MyDrive/usetrain/train'
test_dir = '/content/drive/MyDrive/usetrain/test'

from glob import glob

train_cracks = glob('/content/drive/MyDrive/usetrain/train/cracks/*')

train_cracks[:10]

'/content/drive/MyDrive/usetrain/train/cracks/F04486-L462-03-2021-C29-PILACAVA-CLX01_5.jpg',
 '/content/drive/MyDrive/usetrain/train/cracks/F04701-L473-03-2021-C06-PILACAVA-CLX02_8.jpg',
 '/content/drive/MyDrive/usetrain/train/cracks/F04486-L462-03-2021-C45-PILACAVA-CLX01_5.jpg',
 '/content/drive/MyDrive/usetrain/train/cracks/F04704-L488-03-2021-C06-PILACAVA-CLX02_4.JPG',
 '/content/drive/MyDrive/usetrain/train/cracks/F04486-L462-03-2021-C40-PILACAVA-CLX01_6.jpg',
 '/content/drive/MyDrive/usetrain/train/cracks/F04701-L473-03-2021-C09-PILACAVA-CLX01_2.jpg',
 '/content/drive/MyDrive/usetrain/train/cracks/F04486-L462-03-2021-C18-PILACAVA-CLX01_1.jpg',
 '/content/drive/MyDrive/usetrain/train/cracks/F04486-L462-03-2021-C11-PILACAVA-CLX01_1.jpg',
 '/content/drive/MyDrive/usetrain/train/cracks/F04704-L488-03-2021-C01-PILACAVA-CLX01_6.JPG',
 '/content/drive/MyDrive/usetrain/train/cracks/F04486-L462-03-2021-C24-PILACAVA-CLX01_3.jpg']

 img1 = cv2.imread('/content/drive/MyDrive/usetrain/test/cracks/F04478-L397-04-2021-C05-PILACAVA-CLX02_8.jpg')
dimensions = img.shape
print(dimensions)
 (2160, 3840, 3)

 train_patches = glob('/content/drive/MyDrive/usetrain/train/patches/*')

 test_imgs = glob('/content/drive/MyDrive/usetrain/test/*')

 train_imgs = train_cracks[:35]   train_patches[:35]
# slice the dataset and use 2000 in each class
random.shuffle(train_imgs) # shuffle it randomly

 
Function for labels and images

 #A function to read and process the images to an acceptable format for our model
def read_and_process_image(list_of_images):
    '''
     Returns two arravs
       X is an array of resized images
       y is an array of labels
     '''

    X=[] #Images
    y = [] #labels

    for image in list_of_images:
        X.append(cv2.resize(cv2.imread(image, cv2. IMREAD_COLOR), (nrows, ncolumns), interpolation=cv2. INTER_CUBIC)) #Read the image
        #get the labels
        if'cracks' in image:
            y. append(1)
        elif 'patches'in image:
            y. append(0)
    return X,y

 X, y = read_and_process_image(train_imgs)

 X[0]
 array([[[182, 200, 207],
        [187, 199, 209],
        [189, 199, 208],
        ...,
        [106, 121, 136],
        [110, 124, 142],
        [126, 134, 147]],

       [[188, 201, 209],
        [188, 199, 207],
        [192, 203, 211],
        ...,
        [109, 124, 138],
        [110, 127, 136],
        [124, 136, 150]],

       [[188, 201, 209],
        [193, 205, 209],
        [187, 201, 210],
        ...,
        [107, 124, 136],
        [110, 126, 138],
        [117, 129, 139]],

       ...,

       [[196, 199, 203],
        [212, 215, 219],
        [216, 220, 224],
        ...,
        [130, 144, 156],
        [127, 144, 153],
        [134, 152, 163]],

       [[187, 190, 194],
        [210, 213, 217],
        [211, 215, 219],
        ...,
        [128, 144, 152],
        [131, 149, 158],
        [132, 150, 161]],

       [[180, 183, 187],
        [204, 209, 212],
        [210, 217, 220],
        ...,
        [123, 140, 148],
        [133, 152, 159],
        [135, 154, 162]]], dtype=uint8)

 y
 [1,
 1,
 0,
 1,
 1,
 0,
 1,
 1,
 1,
 0,
 1,
 1,
 1,
 0,
 0,
 0,
 1,
 0,
 1,
 0,
 0,
 1,
 0,
 0,
 1,
 1,
 1,
 0,
 0,
 1,
 0,
 1,
 0,
 0,
 0,
 1,
 1,
 0,
 1,
 1,
 0,
 1,
 0,
 1,
 1,
 1,
 0,
 1,
 1,
 1,
 0,
 0,
 0,
 0,
 0,
 0,
 1,
 0,
 1,
 0,
 1,
 1,
 0,
 0,
 0,
 0,
 1,
 0,
 1,
 0]

 plt. figure(figsize=(20,10))
columns = 5
for i in range (columns) :
    plt. subplot (5 / columns   1, columns, i   1)
    plt.imshow(X[i])
 

 import seaborn as sns

#Convert list to numpy array
X = np.array(X)
y = np.array(y)

#Lets plot the label to be sure we just have two class
sns.countplot(y)

plt.title('Labels for Cracks and Patches')
 

 print( "Shape of train images is:", X. shape)
print ("Shape of labels is:", y. shape)
 Shape of train images is: (70, 150, 150, 3)
Shape of labels is: (70,)

 #Lets split the data into train and test set
from sklearn.model_selection import train_test_split
X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.20, random_state=2)

print("Shape of train images is:", X_train.shape)
print("Shape of validation images is:", X_val.shape)
print("Shape of labels is:", y_train. shape)
print("Shape of labels is:", y_val.shape)
 Shape of train images is: (56, 150, 150, 3)
Shape of validation images is: (14, 150, 150, 3)
Shape of labels is: (56,)
Shape of labels is: (14,)

 #get the length of the train and validation data
ntrain = len(X_train)
nval = len(X_val)


batch_size = 4

 #Keras Model

 from keras import layers
from keras import models
from keras import optimizers
from keras.preprocessing.image import ImageDataGenerator
from keras.preprocessing.image import img_to_array, load_img

 model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu',input_shape=(150, 150, 3)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(128, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(128, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Flatten())
model.add(layers.Dropout(0.5)) #Dropout for regularization
model.add(layers.Dense (512, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))

 model.summary()
 Model: "sequential"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
conv2d (Conv2D)              (None, 148, 148, 32)      896       
_________________________________________________________________
max_pooling2d (MaxPooling2D) (None, 74, 74, 32)        0         
_________________________________________________________________
conv2d_1 (Conv2D)            (None, 72, 72, 64)        18496     
_________________________________________________________________
max_pooling2d_1 (MaxPooling2 (None, 36, 36, 64)        0         
_________________________________________________________________
conv2d_2 (Conv2D)            (None, 34, 34, 128)       73856     
_________________________________________________________________
max_pooling2d_2 (MaxPooling2 (None, 17, 17, 128)       0         
_________________________________________________________________
conv2d_3 (Conv2D)            (None, 15, 15, 128)       147584    
_________________________________________________________________
max_pooling2d_3 (MaxPooling2 (None, 7, 7, 128)         0         
_________________________________________________________________
flatten (Flatten)            (None, 6272)              0         
_________________________________________________________________
dropout (Dropout)            (None, 6272)              0         
_________________________________________________________________
dense (Dense)                (None, 512)               3211776   
_________________________________________________________________
dense_1 (Dense)              (None, 1)                 513       
=================================================================
Total params: 3,453,121
Trainable params: 3,453,121
Non-trainable params: 0
_________________________________________________________________

 from tensorflow.keras import optimizers

 #We'Il use the RMSprop bptimizer with a learning rate of .0001 
#We'1l use binary_crossenropy loss because its a binary classification
model.compile(loss='binary_crossentropy', optimizer=optimizers.RMSprop(learning_rate=1e-4), metrics=['acc'])

 #Lets create the augmentation configuration

train_datagen = ImageDataGenerator (rescale=1./255,
                   rotation_range=40,
                width_shift_range=0.2,
                  height_shift_range=0.2,
                      shear_range=0.2,
                       zoom_range=0.2,horizontal_flip=True,)

val_datagen = ImageDataGenerator(rescale=1./255)

 #Create the image generators
train_generator = train_datagen.flow(X_train, y_train, batch_size=batch_size)
val_generator = val_datagen.flow(X_val, y_val, batch_size=batch_size)

 #The training part

history = model.fit(train_generator,
steps_per_epoch= ntrain // batch_size,
epochs=100,
validation_data=val_generator,validation_steps= nval//batch_size)
 Epoch 1/100
14/14 [==============================] - 3s 52ms/step - loss: 0.7155 - acc: 0.4464 - val_loss: 0.7217 - val_acc: 0.4167
Epoch 2/100
14/14 [==============================] - 1s 35ms/step - loss: 0.7124 - acc: 0.4107 - val_loss: 0.6927 - val_acc: 0.5000
Epoch 3/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6994 - acc: 0.5000 - val_loss: 0.7094 - val_acc: 0.4167
Epoch 4/100
14/14 [==============================] - 1s 38ms/step - loss: 0.7052 - acc: 0.4821 - val_loss: 0.6899 - val_acc: 0.7500
Epoch 5/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6988 - acc: 0.4643 - val_loss: 0.6958 - val_acc: 0.4167
Epoch 6/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6984 - acc: 0.5000 - val_loss: 0.6925 - val_acc: 0.5833
Epoch 7/100
14/14 [==============================] - 1s 35ms/step - loss: 0.7043 - acc: 0.4286 - val_loss: 0.6923 - val_acc: 0.5833
Epoch 8/100
14/14 [==============================] - 1s 40ms/step - loss: 0.6980 - acc: 0.5000 - val_loss: 0.6939 - val_acc: 0.5000
Epoch 9/100
14/14 [==============================] - 1s 36ms/step - loss: 0.7056 - acc: 0.3750 - val_loss: 0.6931 - val_acc: 0.5000
Epoch 10/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6975 - acc: 0.5536 - val_loss: 0.6957 - val_acc: 0.4167
Epoch 11/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6974 - acc: 0.4286 - val_loss: 0.6956 - val_acc: 0.4167
Epoch 12/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6965 - acc: 0.5000 - val_loss: 0.6902 - val_acc: 0.5000
Epoch 13/100
14/14 [==============================] - 1s 40ms/step - loss: 0.6944 - acc: 0.5179 - val_loss: 0.6920 - val_acc: 0.5000
Epoch 14/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6997 - acc: 0.4821 - val_loss: 0.6920 - val_acc: 0.5000
Epoch 15/100
14/14 [==============================] - 1s 42ms/step - loss: 0.6962 - acc: 0.4464 - val_loss: 0.6938 - val_acc: 0.5000
Epoch 16/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6940 - acc: 0.5714 - val_loss: 0.6995 - val_acc: 0.4167
Epoch 17/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6906 - acc: 0.5179 - val_loss: 0.6956 - val_acc: 0.5000
Epoch 18/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6944 - acc: 0.5179 - val_loss: 0.6836 - val_acc: 0.5833
Epoch 19/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6989 - acc: 0.4821 - val_loss: 0.6953 - val_acc: 0.4167
Epoch 20/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6960 - acc: 0.4464 - val_loss: 0.6905 - val_acc: 0.6667
Epoch 21/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6952 - acc: 0.4821 - val_loss: 0.6903 - val_acc: 0.5000
Epoch 22/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6951 - acc: 0.5357 - val_loss: 0.6928 - val_acc: 0.5000
Epoch 23/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6979 - acc: 0.4107 - val_loss: 0.6907 - val_acc: 0.5833
Epoch 24/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6949 - acc: 0.5179 - val_loss: 0.6912 - val_acc: 0.5000
Epoch 25/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6932 - acc: 0.5357 - val_loss: 0.6882 - val_acc: 0.5833
Epoch 26/100
14/14 [==============================] - 1s 40ms/step - loss: 0.6989 - acc: 0.4286 - val_loss: 0.6910 - val_acc: 0.5000
Epoch 27/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6940 - acc: 0.5179 - val_loss: 0.6904 - val_acc: 0.4167
Epoch 28/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6881 - acc: 0.5000 - val_loss: 0.6898 - val_acc: 0.5000
Epoch 29/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6898 - acc: 0.5357 - val_loss: 0.6899 - val_acc: 0.5833
Epoch 30/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6878 - acc: 0.5714 - val_loss: 0.6921 - val_acc: 0.5833
Epoch 31/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6911 - acc: 0.6071 - val_loss: 0.6911 - val_acc: 0.5000
Epoch 32/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6831 - acc: 0.6071 - val_loss: 0.6873 - val_acc: 0.5000
Epoch 33/100
14/14 [==============================] - 1s 37ms/step - loss: 0.7060 - acc: 0.5536 - val_loss: 0.6945 - val_acc: 0.5833
Epoch 34/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6813 - acc: 0.5893 - val_loss: 0.7053 - val_acc: 0.5000
Epoch 35/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6911 - acc: 0.5536 - val_loss: 0.6920 - val_acc: 0.5000
Epoch 36/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6879 - acc: 0.5893 - val_loss: 0.6875 - val_acc: 0.5833
Epoch 37/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6726 - acc: 0.5714 - val_loss: 0.6945 - val_acc: 0.5000
Epoch 38/100
14/14 [==============================] - 1s 36ms/step - loss: 0.6677 - acc: 0.6250 - val_loss: 0.6694 - val_acc: 0.5000
Epoch 39/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6877 - acc: 0.5893 - val_loss: 0.6891 - val_acc: 0.5000
Epoch 40/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6633 - acc: 0.5714 - val_loss: 0.7008 - val_acc: 0.5000
Epoch 41/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6667 - acc: 0.5893 - val_loss: 0.6740 - val_acc: 0.6667
Epoch 42/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6540 - acc: 0.6607 - val_loss: 0.7073 - val_acc: 0.4167
Epoch 43/100
14/14 [==============================] - 1s 41ms/step - loss: 0.6649 - acc: 0.5893 - val_loss: 0.7120 - val_acc: 0.5000
Epoch 44/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6808 - acc: 0.5000 - val_loss: 0.6928 - val_acc: 0.5833
Epoch 45/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6486 - acc: 0.6250 - val_loss: 0.7054 - val_acc: 0.4167
Epoch 46/100
14/14 [==============================] - 1s 41ms/step - loss: 0.6472 - acc: 0.5714 - val_loss: 0.6984 - val_acc: 0.5833
Epoch 47/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6636 - acc: 0.5714 - val_loss: 0.8272 - val_acc: 0.5000
Epoch 48/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6599 - acc: 0.5179 - val_loss: 0.6857 - val_acc: 0.5833
Epoch 49/100
14/14 [==============================] - 1s 40ms/step - loss: 0.6593 - acc: 0.6786 - val_loss: 0.7024 - val_acc: 0.5833
Epoch 50/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6481 - acc: 0.6071 - val_loss: 0.6696 - val_acc: 0.5833
Epoch 51/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6189 - acc: 0.5893 - val_loss: 0.7829 - val_acc: 0.5000
Epoch 52/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6671 - acc: 0.5357 - val_loss: 0.6825 - val_acc: 0.3333
Epoch 53/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6594 - acc: 0.6071 - val_loss: 0.6937 - val_acc: 0.5000
Epoch 54/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6382 - acc: 0.5000 - val_loss: 0.6992 - val_acc: 0.5000
Epoch 55/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6456 - acc: 0.6071 - val_loss: 0.7051 - val_acc: 0.5000
Epoch 56/100
14/14 [==============================] - 1s 37ms/step - loss: 0.5973 - acc: 0.6071 - val_loss: 0.7803 - val_acc: 0.5000
Epoch 57/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6598 - acc: 0.6429 - val_loss: 0.6868 - val_acc: 0.4167
Epoch 58/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6090 - acc: 0.6786 - val_loss: 0.6781 - val_acc: 0.5833
Epoch 59/100
14/14 [==============================] - 1s 39ms/step - loss: 0.5979 - acc: 0.6964 - val_loss: 0.6984 - val_acc: 0.5833
Epoch 60/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6809 - acc: 0.5893 - val_loss: 0.6575 - val_acc: 0.5000
Epoch 61/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6201 - acc: 0.7321 - val_loss: 0.7751 - val_acc: 0.5000
Epoch 62/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6777 - acc: 0.6786 - val_loss: 0.6880 - val_acc: 0.4167
Epoch 63/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6538 - acc: 0.6607 - val_loss: 0.7105 - val_acc: 0.4167
Epoch 64/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6501 - acc: 0.6071 - val_loss: 0.6990 - val_acc: 0.5833
Epoch 65/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6747 - acc: 0.6250 - val_loss: 0.6909 - val_acc: 0.5000
Epoch 66/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6176 - acc: 0.6607 - val_loss: 0.7157 - val_acc: 0.5833
Epoch 67/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6256 - acc: 0.6607 - val_loss: 0.7766 - val_acc: 0.4167
Epoch 68/100
14/14 [==============================] - 1s 37ms/step - loss: 0.5733 - acc: 0.6786 - val_loss: 0.7187 - val_acc: 0.4167
Epoch 69/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6577 - acc: 0.6607 - val_loss: 0.6613 - val_acc: 0.5833
Epoch 70/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6062 - acc: 0.6429 - val_loss: 0.9178 - val_acc: 0.4167
Epoch 71/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6403 - acc: 0.6250 - val_loss: 0.8255 - val_acc: 0.5833
Epoch 72/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6436 - acc: 0.6429 - val_loss: 0.7849 - val_acc: 0.4167
Epoch 73/100
14/14 [==============================] - 1s 38ms/step - loss: 0.5983 - acc: 0.6250 - val_loss: 0.8304 - val_acc: 0.5000
Epoch 74/100
14/14 [==============================] - 1s 41ms/step - loss: 0.6738 - acc: 0.5714 - val_loss: 0.7302 - val_acc: 0.4167
Epoch 75/100
14/14 [==============================] - 1s 36ms/step - loss: 0.5941 - acc: 0.6607 - val_loss: 0.7187 - val_acc: 0.5000
Epoch 76/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6028 - acc: 0.6786 - val_loss: 0.7375 - val_acc: 0.4167
Epoch 77/100
14/14 [==============================] - 1s 37ms/step - loss: 0.6261 - acc: 0.6429 - val_loss: 0.7407 - val_acc: 0.4167
Epoch 78/100
14/14 [==============================] - 1s 38ms/step - loss: 0.5387 - acc: 0.6964 - val_loss: 0.7237 - val_acc: 0.5000
Epoch 79/100
14/14 [==============================] - 1s 38ms/step - loss: 0.5672 - acc: 0.6607 - val_loss: 0.9385 - val_acc: 0.5000
Epoch 80/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6389 - acc: 0.6964 - val_loss: 0.8926 - val_acc: 0.5000
Epoch 81/100
14/14 [==============================] - 1s 41ms/step - loss: 0.5603 - acc: 0.7321 - val_loss: 0.9412 - val_acc: 0.5000
Epoch 82/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6297 - acc: 0.6964 - val_loss: 0.7572 - val_acc: 0.5833
Epoch 83/100
14/14 [==============================] - 1s 40ms/step - loss: 0.5175 - acc: 0.6964 - val_loss: 0.7978 - val_acc: 0.4167
Epoch 84/100
14/14 [==============================] - 1s 37ms/step - loss: 0.5738 - acc: 0.6964 - val_loss: 0.7796 - val_acc: 0.5833
Epoch 85/100
14/14 [==============================] - 1s 40ms/step - loss: 0.5711 - acc: 0.6429 - val_loss: 1.0373 - val_acc: 0.5000
Epoch 86/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6091 - acc: 0.6786 - val_loss: 0.7931 - val_acc: 0.4167
Epoch 87/100
14/14 [==============================] - 1s 42ms/step - loss: 0.6229 - acc: 0.6964 - val_loss: 0.7175 - val_acc: 0.5000
Epoch 88/100
14/14 [==============================] - 1s 40ms/step - loss: 0.5781 - acc: 0.6607 - val_loss: 0.7392 - val_acc: 0.6667
Epoch 89/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6144 - acc: 0.6250 - val_loss: 0.7039 - val_acc: 0.6667
Epoch 90/100
14/14 [==============================] - 1s 39ms/step - loss: 0.5126 - acc: 0.7143 - val_loss: 0.7843 - val_acc: 0.5000
Epoch 91/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6374 - acc: 0.6607 - val_loss: 0.7806 - val_acc: 0.5000
Epoch 92/100
14/14 [==============================] - 1s 37ms/step - loss: 0.7390 - acc: 0.5714 - val_loss: 0.7436 - val_acc: 0.5000
Epoch 93/100
14/14 [==============================] - 1s 39ms/step - loss: 0.6417 - acc: 0.6250 - val_loss: 0.7791 - val_acc: 0.4167
Epoch 94/100
14/14 [==============================] - 1s 38ms/step - loss: 0.6310 - acc: 0.6786 - val_loss: 0.6743 - val_acc: 0.5000
Epoch 95/100
14/14 [==============================] - 1s 37ms/step - loss: 0.5615 - acc: 0.6429 - val_loss: 0.8794 - val_acc: 0.5833
Epoch 96/100
14/14 [==============================] - 1s 38ms/step - loss: 0.5540 - acc: 0.7321 - val_loss: 0.9387 - val_acc: 0.6667
Epoch 97/100
14/14 [==============================] - 1s 38ms/step - loss: 0.5913 - acc: 0.7321 - val_loss: 0.8006 - val_acc: 0.4167
Epoch 98/100
14/14 [==============================] - 1s 38ms/step - loss: 0.5682 - acc: 0.7679 - val_loss: 0.7195 - val_acc: 0.4167
Epoch 99/100
14/14 [==============================] - 1s 41ms/step - loss: 0.6450 - acc: 0.7143 - val_loss: 0.7179 - val_acc: 0.5000
Epoch 100/100
14/14 [==============================] - 1s 42ms/step - loss: 0.5651 - acc: 0.6786 - val_loss: 0.7568 - val_acc: 0.4167

 #Now lets predict on the first 10 Images of the test set
X_test, y_test = read_and_process_image(test_imgs[:3])
x = np.array(X_test)
test_datagen = ImageDataGenerator (rescale=1./255)

error                                     Traceback (most recent call last)
<ipython-input-35-922ff9d9ecb5> in <module>()
      1 #Now lets predict on the first 10 Images of the test set
----> 2 X_test, y_test = read_and_process_image(test_imgs[:3])
      3 x = np.array(X_test)
      4 test_datagen = ImageDataGenerator (rescale=1./255)

<ipython-input-11-e3fe44f59019> in read_and_process_image(list_of_images)
     11 
     12     for image in list_of_images:
---> 13         X.append(cv2.resize(cv2.imread(image, cv2. IMREAD_COLOR), (nrows, ncolumns), interpolation=cv2. INTER_CUBIC)) #Read the image
     14         #get the labels
     15         if'cracks' in image:

error: OpenCV(4.1.2) /io/opencv/modules/imgproc/src/resize.cpp:3720: error: (-215:Assertion failed) !ssize.empty() in function 'resize'

   

uj5u.com熱心網友回復:

您測驗影像的路徑已損壞。該錯誤是由于cv2嘗試調整空numpy陣列的大小所致您應該檢查測驗資料集的路徑(確保image_paths可以訪問)

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/350055.html

標籤:张量流 凯拉斯 深度学习 物体检测 迁移学习

上一篇:是否可以使用C 訓練在tensorflow和pytorch中開發的ONNX模型?

下一篇:如何將從image_dataset_from_directory獲得的資料集拆分為資料和標簽?

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 【從零開始擼一個App】Dagger2

    Dagger2是一個IOC框架,一般用于Android平臺,第一次接觸的朋友,一定會被搞得暈頭轉向。它延續了Java平臺Spring框架代碼碎片化,注解滿天飛的傳統。嘗試將各處代碼片段串聯起來,理清思緒,真不是件容易的事。更不用說還有各版本細微的差別。 與Spring不同的是,Spring是通過反射 ......

    uj5u.com 2020-09-10 06:57:59 more
  • Flutter Weekly Issue 66

    新聞 Flutter 季度調研結果分享 教程 Flutter+FaaS一體化任務編排的思考與設計 詳解Dart中如何通過注解生成代碼 GitHub 用對了嗎?Flutter 團隊分享如何管理大型開源專案 插件 flutter-bubble-tab-indicator A Flutter librar ......

    uj5u.com 2020-09-10 06:58:52 more
  • Proguard 常用規則

    介紹 Proguard 入口,如何查看輸出,如何使用 keep 設定入口以及使用實體,如何配置壓縮,混淆,校驗等規則。

    ......

    uj5u.com 2020-09-10 06:59:00 more
  • Android 開發技術周報 Issue#292

    新聞 Android即將獲得類AirDrop功能:可向附近設備快速分享檔案 谷歌為安卓檔案管理應用引入可安全隱藏資料的Safe Folder功能 Android TV新主界面將顯示電影、電視節目和應用推薦內容 泄露的Android檔案暗示了傳說中的谷歌Pixel 5a與折疊屏新機 谷歌發布Andro ......

    uj5u.com 2020-09-10 07:00:37 more
  • AutoFitTextureView Error inflating class

    報錯: Binary XML file line #0: Binary XML file line #0: Error inflating class xxx.AutoFitTextureView 解決: <com.example.testy2.AutoFitTextureView android: ......

    uj5u.com 2020-09-10 07:00:41 more
  • 根據Uri,Cursor沒有獲取到對應的屬性

    Android: 背景:呼叫攝像頭,拍攝視頻,指定保存的地址,但是回傳的Cursor檔案,只有名稱和大小的屬性,沒有其他諸如時長,連ID屬性都沒有 使用 cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DURATIO ......

    uj5u.com 2020-09-10 07:00:44 more
  • Android連載29-持久化技術

    一、持久化技術 我們平時所使用的APP產生的資料,在記憶體中都是瞬時的,會隨著斷電、關機等丟失資料,因此android系統采用了持久化技術,用于存盤這些“瞬時”資料 持久化技術包括:檔案存盤、SharedPreference存盤以及資料庫存盤,還有更復雜的SD卡記憶體儲。 二、檔案存盤 最基本存盤方式, ......

    uj5u.com 2020-09-10 07:00:47 more
  • Android Camera2Video整合到自己專案里

    背景: Android專案里呼叫攝像頭拍攝視頻,原本使用的 MediaStore.ACTION_VIDEO_CAPTURE, 后來因專案需要,改成了camera2 1.Camera2Video 官方demo有點問題,下載后,不能直接整合到專案 問題1.多次拍攝視頻崩潰 問題2.雙擊record按鈕, ......

    uj5u.com 2020-09-10 07:00:50 more
  • Android 開發技術周報 Issue#293

    新聞 谷歌為Android TV開發者提供多種新功能 Android 11將自動填表功能整合到鍵盤輸入建議中 谷歌宣布Android Auto即將支持更多的導航和數字停車應用 谷歌Pixel 5只有XL版本 搭載驍龍765G且將比Pixel 4更便宜 [圖]Wear OS將迎來重磅更新:應用啟動時間 ......

    uj5u.com 2020-09-10 07:01:38 more
  • 海豚星空掃碼投屏 Android 接收端 SDK 集成 六步驟

    掃碼投屏,開放網路,獨占設備,不需要額外下載軟體,微信掃碼,發現設備。支持標準DLNA協議,支持倍速播放。視頻,音頻,圖片投屏。好點意思。還支持自定義基于 DLNA 擴展的操作動作。好像要收費,沒體驗。 這里簡單記錄一下集成程序。 一 跟目錄的build.gradle添加私有mevan倉庫 mave ......

    uj5u.com 2020-09-10 07:01:43 more
最新发布
  • 歡迎頁輪播影片

    如圖,引導開始,球從上落下,同時淡入文字,然后文字開始輪播,最后一頁時停止,點擊進入首頁。 在來看看效果圖。 重力球先不講,主要歡迎輪播簡單實作 首先新建一個類 TextTranslationXGuideView,用于影片展示 文本是類似的,最后會有個圖片箭頭影片,布局很簡單,就是一個 TextVi ......

    uj5u.com 2023-04-20 08:40:31 more
  • 【FAQ】關于華為推送服務因營銷訊息頻次管控導致服務通訊類訊息

    一. 問題描述 使用華為推送服務下發IM訊息時,下發訊息請求成功且code碼為80000000,但是手機總是收不到訊息; 在華為推送自助分析(Beta)平臺查看發現,訊息發送觸發了頻控。 二. 問題原因及背景 2023年1月05日起,華為推送服務對咨詢營銷類訊息做了單個設備每日推送數量上限管理,具體 ......

    uj5u.com 2023-04-20 08:40:11 more
  • 歡迎頁輪播影片

    如圖,引導開始,球從上落下,同時淡入文字,然后文字開始輪播,最后一頁時停止,點擊進入首頁。 在來看看效果圖。 重力球先不講,主要歡迎輪播簡單實作 首先新建一個類 TextTranslationXGuideView,用于影片展示 文本是類似的,最后會有個圖片箭頭影片,布局很簡單,就是一個 TextVi ......

    uj5u.com 2023-04-20 08:39:36 more
  • 【FAQ】關于華為推送服務因營銷訊息頻次管控導致服務通訊類訊息

    一. 問題描述 使用華為推送服務下發IM訊息時,下發訊息請求成功且code碼為80000000,但是手機總是收不到訊息; 在華為推送自助分析(Beta)平臺查看發現,訊息發送觸發了頻控。 二. 問題原因及背景 2023年1月05日起,華為推送服務對咨詢營銷類訊息做了單個設備每日推送數量上限管理,具體 ......

    uj5u.com 2023-04-20 08:39:13 more
  • iOS從UI記憶體地址到讀取成員變數(oc/swift)

    開發除錯時,我們發現bug時常首先是從UI顯示發現例外,下一步才會去定位UI相關連的資料的。XCode有給我們提供一系列debug工具,但是很多人可能還沒有形成一套穩定的除錯流程,因此本文嘗試解決這個問題,順便提出一個暴論:UI顯示例外問題只需要兩個步驟就能完成定位作業的80%: 定位例外 UI 組 ......

    uj5u.com 2023-04-19 09:16:23 more
  • FIDE重磅更新!性能飛躍!體驗有禮!

    FIDE 開發者工具重構升級啦!實作500%性能提升,誠邀體驗! 一直以來不少開發者朋友在社區反饋,在使用 FIDE 工具的程序中,時常會遇到諸如加載不及時、代碼預覽/渲染性能不如意的情況,十分影響開發體驗。 作為技術團隊,我們深知一件趁手的開發工具對開發者的重要性,因此,在2023年開年,FinC ......

    uj5u.com 2023-04-19 09:16:15 more
  • 游戲內嵌社區服務開放,助力開發者提升玩家互動與留存

    華為 HMS Core 游戲內嵌社區服務提供快速訪問華為游戲中心論壇能力,支持玩家直接在游戲內瀏覽帖子和交流互動,助力開發者擴展內容生產和觸達的場景。 一、為什么要游戲內嵌社區? 二、游戲內嵌社區的典型使用場景 1、游戲內打開論壇 您可以在游戲內繪制論壇入口,為玩家提供沉浸式發帖、瀏覽、點贊、回帖、 ......

    uj5u.com 2023-04-19 09:15:46 more
  • iOS從UI記憶體地址到讀取成員變數(oc/swift)

    開發除錯時,我們發現bug時常首先是從UI顯示發現例外,下一步才會去定位UI相關連的資料的。XCode有給我們提供一系列debug工具,但是很多人可能還沒有形成一套穩定的除錯流程,因此本文嘗試解決這個問題,順便提出一個暴論:UI顯示例外問題只需要兩個步驟就能完成定位作業的80%: 定位例外 UI 組 ......

    uj5u.com 2023-04-19 09:14:53 more
  • FIDE重磅更新!性能飛躍!體驗有禮!

    FIDE 開發者工具重構升級啦!實作500%性能提升,誠邀體驗! 一直以來不少開發者朋友在社區反饋,在使用 FIDE 工具的程序中,時常會遇到諸如加載不及時、代碼預覽/渲染性能不如意的情況,十分影響開發體驗。 作為技術團隊,我們深知一件趁手的開發工具對開發者的重要性,因此,在2023年開年,FinC ......

    uj5u.com 2023-04-19 09:14:08 more
  • 游戲內嵌社區服務開放,助力開發者提升玩家互動與留存

    華為 HMS Core 游戲內嵌社區服務提供快速訪問華為游戲中心論壇能力,支持玩家直接在游戲內瀏覽帖子和交流互動,助力開發者擴展內容生產和觸達的場景。 一、為什么要游戲內嵌社區? 二、游戲內嵌社區的典型使用場景 1、游戲內打開論壇 您可以在游戲內繪制論壇入口,為玩家提供沉浸式發帖、瀏覽、點贊、回帖、 ......

    uj5u.com 2023-04-19 09:08:34 more