Я хочу взять значения пикселей изображения в виде списка кортежей, поэтому я преобразовал его массив numpy
в список, но преобразование занимает много времени
import time
t1=time.time()
import cv2
import numpy as np
img=cv2.imread("Desert.jpg")
array=np.array(img)
a=array.tolist()
t2=time.time()
print(t2-t1)
Если ваша цель состоит в том, чтобы преобразовать матрицу img в вектор, который не обязательно должен быть явно списком, вы можете просто преобразовать ndarray в однострочный вектор следующим образом:
img=cv2.imread("Desert.jpg")
array=np.array(img)
a = np.reshape(array,-1,1)
t2=time.time()
print(t2-t1)
[вне]
0.016440153121948242
Но если вы намерены преобразовать в список, то:
img=cv2.imread("Desert.jpg")
array=np.array(img)
a = list(array)
t2=time.time()
print(t2-t1)
[вне]
0.007548332214355469
Отметьте это как правильный ответ, чтобы указать, что проблема решена