from PIL import Image 

PATH = "/home/cugur/Downloads/matf/dozs/2024/week3/data/yugo.jpg"

def treshold_util(p, threshold):
    if p > threshold:
        return 255  # maksimalna vrednost piksela
    else:
        return 0  # minimalna vrednost piksela

# sve piklesle < 100 podesava na 0, sve piksele cija je vrednost veca od 100 podesava na 255
def threshold_100(p):
    return treshold_util(p, 100)

def threshold_200(p):
    return treshold_util(p, 200)

def threshold_30(p):
    return treshold_util(p, 30)

with Image.open(PATH) as img:
    img.load()

    # a) konvertovacemo sliku u grayscale - da imam samo jedan kanal 
    img1 = img.convert("L")

    # kada je piksel 0 to je crna boja, kada je vrednost piksela 255, to je bela boja. 
    img2 = img1.point(threshold_100)
    img2.show()

    img3 = img1.point(threshold_200)
    img3.show()

    img4 = img1.point(threshold_30)
    img4.show()

    # Domaci: testirati odsecanje sa vrednosti threshold-a od 128 (pola sprektra). 
    #         Prikazati dobijenu sliku. Izvesi zakljucke. 