TensorFlow如何将图片转化为生成向量?

2026-05-28 14:451阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计323个文字,预计阅读时间需要2分钟。

TensorFlow如何将图片转化为生成向量?

在Python 2环境下运行的代码,首先导入必要的库,然后定义一个函数用于将图像路径转换为数据。代码内容如下:

pythonimport osimport numpy as npimport cv2

def img_to_data(path, imgCount=128, weight=1960, height=960, channel=3): pathDir=list(os.listdir(path))


在Python2下运行的代码

我先把工程目录截图放上来:

TensorFlow如何将图片转化为生成向量?

import os
import numpy as np
import cv2


def imgTodata(path, imgCount = 128, weight = 1960, height = 960, channel = 3):

pathDir = list(os.listdir(path))

# [pic, weight, height, channel]
imgs = np.zeros((imgCount, weight, height, channel))

for id, pic in enumerate(pathDir):
img = cv2.imread(str(path + pic))
# cv2.namedWindow('test')
# cv2.imshow('test', img)
# cv2.waitKey(0)
# print 'The ', id, ' picture shape: ', img.shape
newImg = cv2.resize(img, (int(height) ,int(weight)), interpolation=cv2.INTER_CUBIC)
# print 'The ', id, ' picture shape: ', newImg.shape

imgs[id] = newImg
# print id, ' is success!'

# print imgs.shape

for i in xrange(2):
img = imgs[i]
# print img.shape
return imgs

def save(path, data):
np.save(path, data)

def load(path):
data = np.load(path)
return data

if __name__ == '__main__':
path = 'data/'
data = imgTodata(path,2, 1280, 960, 3)
print data[0]
print data.shape
save_path = 'npy_data/test.npy'
save(save_path, data)
data_ = load(save_path)
print data_.shape

只要修改对应的参数,就可以把自己图片当成向量传给Tensorflow网络。


本文共计323个文字,预计阅读时间需要2分钟。

TensorFlow如何将图片转化为生成向量?

在Python 2环境下运行的代码,首先导入必要的库,然后定义一个函数用于将图像路径转换为数据。代码内容如下:

pythonimport osimport numpy as npimport cv2

def img_to_data(path, imgCount=128, weight=1960, height=960, channel=3): pathDir=list(os.listdir(path))


在Python2下运行的代码

我先把工程目录截图放上来:

TensorFlow如何将图片转化为生成向量?

import os
import numpy as np
import cv2


def imgTodata(path, imgCount = 128, weight = 1960, height = 960, channel = 3):

pathDir = list(os.listdir(path))

# [pic, weight, height, channel]
imgs = np.zeros((imgCount, weight, height, channel))

for id, pic in enumerate(pathDir):
img = cv2.imread(str(path + pic))
# cv2.namedWindow('test')
# cv2.imshow('test', img)
# cv2.waitKey(0)
# print 'The ', id, ' picture shape: ', img.shape
newImg = cv2.resize(img, (int(height) ,int(weight)), interpolation=cv2.INTER_CUBIC)
# print 'The ', id, ' picture shape: ', newImg.shape

imgs[id] = newImg
# print id, ' is success!'

# print imgs.shape

for i in xrange(2):
img = imgs[i]
# print img.shape
return imgs

def save(path, data):
np.save(path, data)

def load(path):
data = np.load(path)
return data

if __name__ == '__main__':
path = 'data/'
data = imgTodata(path,2, 1280, 960, 3)
print data[0]
print data.shape
save_path = 'npy_data/test.npy'
save(save_path, data)
data_ = load(save_path)
print data_.shape

只要修改对应的参数,就可以把自己图片当成向量传给Tensorflow网络。