使用 tensorflow 进行基本图像分类 [关闭]
Posted
技术标签:
【中文标题】使用 tensorflow 进行基本图像分类 [关闭]【英文标题】:Basic Image Classification using tensorflow [closed] 【发布时间】:2019-08-06 19:42:05 【问题描述】:train = 'C:\ProgramData\Anaconda3\animal train'
test = 'C:\ProgramData\Anaconda3\animal test'
lr = 0.001
def label_image(img):
word_label = img.split('.')[-3]
if word_label == "cat": return [1,0]
elif word_label == "dog": return [0,1]
def create_train_data():
training_data = []
for img in tqdm(os.listdir(train)):
label = label_img(img)
path = os.path.join(train,img)
img = cv2.resize(cv2.imread(path,cv2.IMREAD_GRAYSCALE),(50,50))
training_data.append([np.array(img), np.array(label)])
shuffle(training_data)
return(training_data)
我是 tensorflow 新手,这是我的第一个项目(猫与狗图像分类)
能否请您详细解释每一行 create_train_data() 函数实际上在做什么?
【问题讨论】:
SO 不是为了“详细解释每一行”。您可以通过谷歌搜索了解每个 API 调用。有关分类教程,请参阅示例文档,例如 tensorflow.org/tutorials/keras/basic_classification 在开始之前我已经经历过。 os.path.join() 到底在做什么?我理解了几乎所有我在这部分有疑问的程序 【参考方案1】:OpenCV 中的图像读取如下 img = cv2.imread("path/to/image", flags)
现在“path/to/image”是您的工作目录或绝对路径。
path = os.path.join(train,img) 在您的代码中创建绝对路径。我认为由于您在工作目录中,因此在这种情况下也应该直接读取图像。
【讨论】:
非常感谢。这回答了它以上是关于使用 tensorflow 进行基本图像分类 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章