Przyciemnianie obrazu polega na zmianie jasności jego pikseli w kierunku wartości zero. Podczas takiej operacji mogą wystąpić takie problemy jak ujemna wartość jasności co nie jest możliwe z punktu obrazka.
Operacja przyciemniania jest:
Poniżej zostało przedstawione przykładowe zdjęcie. Przy pomocy przycisków można rozpocząć proces jego pociemniania. W celu przywrócenia początkowego obrazka wystarczy kliknąć 'załaduj obrazek ponownie'.
Funkcja realizująca pociemnianie przyjmuje jeden argument zmiana, który określa o ile ma zostać zmieniona jasność. Przyjmując, że zdjęcie jest w skali szarości, a każdy piksel zajmuje dokładnie jeden bajt to możliwe wartości są z przedziału [1, 255].
Krytyczne jest wychwycenie wszystkich pikseli, których jasność wyszłaby ujemna. W takich przypadkach należy przypisać wartość 0, ponieważ jest to najmniejsza możliwa wartość bajtu. Jeśli taka operacja zachodzi to pociemnianie jest nieodwracalne. (Chyba, że istnieje możliwość cofnięcia w programie np. Ctrl+Z)
Działanie napisanej funkcji można sprawdzić przy pomocy poniższego fragmentu kodu, który wczytuje macierz reprezentującą obrazek, a następnie wypisuje taką macierz po zmniejszeniu jasności pikseli.