Софтуерно Инженерство
Loading...
+ Нов въпрос
monika_bachvarova avatar monika_bachvarova 17 Точки

LAB - WORKING WITH IMAGES AND TEXT - Threshold the image

Здравейте, колеги,

имам проблем с т6 от LAB - WORKING WITH IMAGES AND TEXT 

def threshold_image(image, low, high):
   
    shape = image.shape
    result = np.zeros(shape)

    if (low>=0 | low<=255)&(high>=0 | high<=255):
        for x in range(0, shape[0]):
            for y in range(0, shape[1]):
                if image[x, y] <= low:
                    result[x, y] = 0
                if image[x, y] > high:
                    result[x, y] = 255        
           
    return result

Локалният тест си минава, но не получавам точка при проверката и не разбирам какво съм объркала. 

Много благодаря за съдействието!

 

Тагове:
0
Data Science
donton avatar donton 4 Точки

по друг начин съм го направил:

    image=np.array(image)
    image[image>high]=255
    image[image<=low]=0

 

Не бях получил точка и аз, но бях забравил равното на 2-я conditon. Не гарантирам, че ще е коректно....

0
22/01/2018 20:10:46
monika_bachvarova avatar monika_bachvarova 17 Точки

Така мисля, че ще промениш стойностите, а в условието се иска да се създаде нова картинка, а не да се модифицира съществуващата. 

0
TeodorStefanovPld avatar TeodorStefanovPld 948 Точки

 значи колежке не си разбрала условието :Д Данчо иска от нас да направим нов image да не променяме стария тоест:

timage=image.copy() - e абсолютно валидно.създаваш копие на оригиналния образ. Сега ти си си усложнила неимоверно живота

  image[image>high]=255
  image[image<=low]=0

тези  2 реда са напълно достатъчни да мине задачата и проверката.И това ви го казвам с 100% сигурност,python/pandas автоматично си сменя пикселите според условието.което е зададено.

Да не говорим че и циклите ти правят някакви безумни неща.

 

0
22/01/2018 20:34:56
monika_bachvarova avatar monika_bachvarova 17 Точки

Много ви благодаря за съдействието :)

0