Как минимизировать время при преобразовании numpy ndarray в список - PullRequest
0 голосов
/ 29 мая 2019

Я хочу взять пиксельные значения изображения в качестве списка кортежа, поэтому я преобразовал его 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)
занимает много времени

1 Ответ

0 голосов
/ 29 мая 2019

Если ваша цель - только преобразовать матрицу '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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...