繁体   English   中英

Numpy - 平面数组的列表列表

[英]Numpy - list of lists to flat array

我正处于我的机器学习算法的处理阶段,我需要查看猫是否外出。 目前我的图像由多个列表呈现,如下所示。 (这就是 1 张图像的显示方式,一个包含代表图像中 1 行像素的数组的数组)

 [[125 71 116... 255 255 255] [102 128 137... 255 255 255] [101 96 82... 255 255 255]... [148 151 149... 55 51 49] [150 149 147... 52 50 49] [143 143 147... 50 50 50]]

但我希望它们采用这种格式(内部列表不见了,但你仍然可以显示图像):

 array([ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 3., 18., 18., 18., 126., 136., 175., 26., 166., 255., 247., 127., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 30., 36., 94., 154., 170., 253., 253., 253., 253., 253., 225., 172., 253., 242., 195., 64., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 49., 238., 253., 253., 253., 253., 253., 253., 253., 253., 251., 93., 82., 82., 56., 39., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 18., 219., 253., 253., 253., 253., 253., 198., 182., 247., 241., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 80., 156., 107., 253., 253., 205., 11., 0., 43., 154., 0., 0., 0., 0., 0., ... 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])

这些是另一张图片的编号,因此编号无关紧要,但格式很重要。 有没有办法以上述格式获取我的 2 个列表格式。

目前我的身体因此而无法工作。

这就是我目前将图像放入列表的方式。

 X = [] y = [] def make_arrays(): inside = os.path.join("input", "classificatie", "aanwezig") outside = os.path.join("input", "classificatie", "buiten") nothing = os.path.join("input", "classificatie", "niets") images = glob.glob(f"{inside}/*") for i in images: img = cv2.imread(i) x = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) X.append(x) y.append("inside") images = glob.glob(f"{outside}/*") for i in images: img = cv2.imread(i) x = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) X.append(x) y.append("outside") images = glob.glob(f"{nothing}/*") for i in images: img = cv2.imread(i) x = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) X.append(x) y.append("nothing") make_arrays()

尝试使用flatten()

arr = np.array(arr).flatten().tolist()

尝试这个:

np.array(x).ravel()

其中x是嵌套列表。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM