For-L oop в открытом резюме очень медленно - PullRequest
0 голосов
/ 31 марта 2020

Я пытался найти код, который порождает мое изображение с указанным значением c и помечает его белым (255) или черным (0). Я не использую функцию cv2.threshold, потому что хочу дифференцировать в соответствии с другими критериями (в данном примере это позиция).

Здесь код:

import cv2
import numpy as np
import matplotlib.pyplot as plt


img = cv2.imread('/home/pi/Desktop/Bilder2/Bild1.png',0)

for x in range(img.shape[0]):
    for y in range(img.shape[1]):
        if(img[x,y]>180 or y>450):
            img[x,y]=255

cv2.imshow('Image',img)

cv2.waitKey(0)

cv2.destroyAllWindows()

этот код занимает около 5 секунды, которые слишком медленные. Есть ли простое решение этой проблемы? Я хотел бы добавить некоторые другие критерии, поэтому мне нужен простой алгоритм для быстрой итерации через пиксели.

Спасибо

...