Не удалось открыть изображение с помощью метода MNIST для цифрового распознавания при глубоком обучении - PullRequest
0 голосов
/ 12 марта 2020

Я использую opencv для обработки фотографии для подготовки данных для компьютерного зрения.

Но я не смог открыть обработанную фотографию. При попытке открыть фотографию возникает ошибка: фотография повреждена

# -*- coding: utf-8 -*-
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
origin_img = cv.imread('D:\\EPS_projects\\AI\\2_CV\\cifar-10\\img\\0\\1.PNG')
plt.imshow(origin_img)
plt.show()
import os
def resize(img):   
    img = cv.cvtColor(img, cv.COLOR_RGB2GRAY)
    h = img.shape[0]
    w = img.shape[1]
    p = max(h,w)/28
    if h > w:
       resize_h = 28
       resize_w = w/p
    else:
       resize_w = 28
       resize_h = h/p

    img_resized = cv.resize(img, (int(resize_h), int(resize_w)), interpolation = cv.INTER_AREA)
    img_resized = cv.resize(img, (28, 28), interpolation = cv.INTER_AREA)
    return img_resized
def load_data(path):  
   idx = 0
   total_imgs = len([img_name for img_name in os.listdir(path) if img_name.endswith('.PNG')])
   data = np.zeros((total_imgs,28,28), dtype=np.uint8)
   for img_name in os.listdir(path):        
     if not img_name.endswith('.PNG'):
        continue
    img_path = os.path.join(path, img_name)
    img = cv.imread(img_path)        
    resized_img = resize(img)        
    data[idx, :]=resized_img  
    idx+=1    

    return  data 
data = load_data('D:\\EPS_projects\\AI\\2_CV\\cifar-10\\img\\0')
import pickle
with open('D:\\EPS_projects\\AI\\2_CV\\MNIST\\work200306\\0\\1.PNG', 'wb') as f:
   pickle.dump(data, f)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...