Potrzebuję pętli przez każdy piksel z 2D numpy tablicy (obraz) 2560x2160. Uproszczona wersja mój problem jest następujący:Szybszy sposób przechodzenia przez każdy piksel obrazu w języku Python?
import time
import numpy as np
t = time.clock()
limit = 9000
for (x,y), pixel in np.ndenumerate(image):
if(pixel > limit)
pass
tt = time.clock()
print tt-t
To trwa nieprzyjemny ~ 30 sekund, aby zakończyć na moim komputerze. (Core i7, 8GB RAM) Czy istnieje szybszy sposób na wykonanie tej pętli z wewnętrzną instrukcją "if"? Interesują mnie tylko piksele powyżej określonego limitu, ale potrzebuję ich (x, y) wskaźników i wartości.
WOW! Moje oczy są otwarte. Zajęło <0,1 sekundy. – dinkelk
co jest tutaj w x i y? –
@AndrewHundt: 'x' i' y' są tablicami indeksów x i y dla niezerowych punktów, odpowiednio. – nneonneo