将标签附加到图像的矢量上
Posted
技术标签:
【中文标题】将标签附加到图像的矢量上【英文标题】:Attaching the label to the vector of the image 【发布时间】:2018-10-18 20:07:47 【问题描述】:我有一个 images
列表,其中包含图像矢量和相关标签(即类)。
images.append([np.array(image_array_to_vector),np.array([label])])
如果我想阅读X
中的图像和y
中的标签,我做了以下操作:
X = np.array([i[0] for i in images])
y = [i[1] for i in images]
然后我想将X
保存在一个文本文件中,如下所示:
X_to_text_file = np.savetxt('x.txt', X.reshape(np.shape(X)), fmt='%5f')
以上工作正常。我想做的更改是将标签附加到X
中的矢量,并将其保存到文本文件中。
例如,我尝试过这样做:
X = np.array([[i[0],i[1]] for i in images])
但是,出现以下错误:
TypeError: Mismatch between array dtype ('object') and format specifier ('%5f %5f')
并且,当尝试如下使用字典时:
X = np.array([i[1]:i[0] for i in images])
我收到此错误:
TypeError: unhashable type: 'numpy.ndarray'
那么,是的,如何将标签附加到矢量并将其保存在文本文件中?
谢谢。
【问题讨论】:
【参考方案1】:在不知道原始数据的样子或将来如何从 .txt 中检索信息的情况下回答这个问题有点困难,但是将“%5f”格式更改为字符串“%s”格式应该可以解决您的问题:
X_to_text_file = np.savetxt('x.txt', X.reshape(np.shape(X)), fmt='%s')
【讨论】:
您可以查看此答案以获取更多信息,似乎与您的问题相似:***.com/questions/48230230/… 感谢您的友好回复。事实上,我需要数据是浮动的,因为当我将它更改为“%s”时,我在代码的另一个操作中得到以下内容:“ValueError: could not convert string to float” 原始数据为100x100图片,标签为标量值 我看到您正在将标签添加到数组中。一张图片可以有多个标签吗? 我问是因为我看到您正在尝试使用 %5f 格式保存“对象”类型的数组。你有一个由 numpy 数组组成的 numpy 数组。以上是关于将标签附加到图像的矢量上的主要内容,如果未能解决你的问题,请参考以下文章