Sunteți pe pagina 1din 8

Efecte artistice

Student: Agavriloaei Alexandru grupa: 3131B

1
Cuprins
Introducere:.....................................3
Pasi de proiectare:...........................3
Interactiune:....................................4
Coduri reprezentative:....................5
Bibliografie:.....................................8

2
Introducere:
Tema proiectului este „Efecte artistice” si are ca
scop prelucrarea imaginilor prin oferirea de diferite
efecte artistice. Aplicatia este realizata in C# si permite
utilizatorului de a modifica in scop artistic orice imagine
prin accesul la diferite efecte.

Pasi de proiectare:
Proiectul a fost realizat in Visual Studio, limbajul
C# prin utilizarea de Windows Forms.

Incarcarea imaginii pentru prelucrare se realizeaza


prin butonul „Load Image”, care permite incarcarea a
cinci formate diferite de imagini: BMP, GIF, JPEG,
PNG, TIFF. Salvarea imaginii prelucrate se face prin
butonul „Save Image”, iar resetarea lucrarilor efectuate
3
asupra imaginii prin butonul „Reset”. Aplicarea
efectelor se realizeaza prin butoanele dispuse in partea
dreapta, iar reglarea nivelelor atat a contrastului,
saturatiei, cat si a nivelelor de rosu, verde si albastru
prin utilizarea trackbar-urilor.

Interactiune:
Incarcarea imaginilor se face din memoria interna a
computerului intr-un pictureBox, iar aplicarea unui efect
necesita incarcarea unei imagini inainte.

Inainte de aplicarea unui efect, se face o reincarcare


a imaginii automata, astfel incat nu este posibila
utilizarea unui efect peste o imagine care are deja
incarcat un efect asupra ei.

4
Coduri reprezentative:
Pentru incarcarea si salvarea imaginii am utilizat
cate un openFileDialog, respeciv saveFileDialog si am
utilizat functia Image.FromFile din libraria
System.Drawing.

Pentru realizarea efectelor am utilizat functia


ColorMatrix din libraria System.Drawing.Imaging care
permite accesul la matricea culorilor a imaginii
incarcate. Matricea ColorMatrix este o matrice de 5x5,
care contine informatii despre nivele de rosu, verde si
albastru, despre canalul alpha si translarile fata de cele 3
axe. Imaginea este preluata din pictureBox, este
convertita in Bitmap, apoi este incarcata in ColorMatrix.
Dupa aplicarea valorilor specifice unui efect artisitic, se
5
deseneaza o noua imagine dupa valorile din
ColorMatrix, iar ea este incarcata inapoi in pictureBox.

Pentru schimbarea parametrilor prin utilizare


trackbar-urilor am folosit aceeasi logica ca mai sus, doar
ca valorile scrise in ColorMatrix sunt preluate din
trackbar si convertite.

6
Pentru realizarea design-ului am folosit o functie
care incarca anumite culori in format hexazecimal
asupra obiectelor din Windows Forms.

Pentru butoane am utilizat o clasa care creaza un


nou Button suprascriind anumite proprietati alea lor,
precum forma butonului, si incarcarea implicita a
design-ului.

7
Bibliografie:
-laboratoare facultate;
- https://docs.microsoft.com/en-
us/dotnet/api/system.drawing.imaging.colormatrix?
view=netframework-4.8
-
https://stackoverflow.com/questions/23865511/contrast-
with-color-matrix
- https://docs.rainmeter.net/tips/colormatrix-guide/
- https://softwarebydefault.com/2013/08/09/fuzzy-blur-
filter/
- https://www.c-
sharpcorner.com/UploadFile/f5a10c/creating-custom-
controls-in-C-Sharp/