Testare Si Validare
Ca urmare a finalizării programului descris în capitolul anterior, este nevoie de așa numitele testări ale aplicației pentru a vedea dacă aceasta funcționează corect și pentru modificarea parametrilor, regiunilor, sau poziției diplomei de bacalaureat. Pentru toate acestea, am folosit o copie color a unei diplome de bacalaureat, am decupat-o după dimensiunile unei diplome originale și am început procesul de testare și validarea necesar bunei funcționări a aplicației respectiv a procesului de achiziție a datelor. La finalul procesului de testare, în baza de date trebuie achiziționate corect datele aflate pe diplomă. Acest lucru îl vom verifica pe parcursul procesului de testare și il vom valida dacă recunoașterea funcționează corect.
Copia diplomei pe care o voi folosi are următoarele date care trebuie achiziționate:
Nume: ALB V. CORINA BIANCA
Unitate învățământ: COLEGIUL NATIONAL “SILVANIA”
Localitatea: ZALAU
Județ: SALAJ
CNP: [anonimizat]
Limba și Literatura Romana: 8.50
Proba1: MATEMATICĂ MATE-INFO
Nota Probei: 9,60
Proba2: INFORMATICĂ MI C/C++
Nota Probei2: 9.06
Media Generală: 9.06
Astfel, în final aceste date trebuie să apară în baza de date.
5.1 Testarea componentelor si a comenzilor
5.1.1 Camera Web
În primul rând pentu funcționarea aplicației și a sistemului de achiziție automată a datelor, trebuie testată funcționalitatea camerei web cu care lucrăm. Astfel în momentul lansării aplicației și apăsarea butonului „Scanează diploma (LIVE)” în caseta de imagine specifică trebuie să avem o imagine continuă, preluată de la camera web. Astfel, am testat funcționalitate acesteia, lucru prezentat în figura 5.1. Pentru a vedea dacă procesul de redare continuă a imaginilor este funcțional, voi adăuga diploma de bacalaureat în locul destinat scanării acesteia, fapt prezentat în figura 5.2
Figura 5.1 Testare cameră web
Figura 5.2 Testare cameră web
Astfel, observăm că imaginea a apărut instant în caseta de imagine, astfel putem spune că funcționalitatea camerei web este corectă.
5.1.2 Testarea butoanelor
Un lucru important în testarea programului sunt butoanele aferente aplicației, deoarece dacă acestea nu funcționează corect, nu o vom putea controla iar procesul de recunoaștere a caracterelor și preluare a datelor va avea de suferit.
În prima etapă se vor testa butoanele de pe prima fereastră a aplicației, se vor verifica dacă, comenzile acestora funcționează. Testarea butonului de pornire a camerei web a fost verificată în momentul testării funcționării camerei web astfel vom începe cu butonul de captură a imaginii. Observăm că prin acționarea acestuia o captură a imaginii este realizată și afișată în caseta de imagine corespunzătoare după cum este prezentat în figura 5.3.
Figura 5.3 Testare buton captură
Atunci când este acționat butonul „Salvează diploma” apare caseta de dialog prin care este posibilă salvarea imaginii color a diplomei, posibiliatea de selectare a formatului fișierelor ce urmează a fi salvate, lucru exemplificat în figura 5.4.
Figura 5.4 Testarea butonului salvare
În vederea scanării unei diplome deja existente în calculator, am testat funcționalitatea algoritmilor de recunoaștere a caracterelor prin selectarea regiunilor de interes și achiziția datelor în casetele de text corespunzătoare. Acest lucru a fost posibil acționând butonul „Deschide imagine” prezentat în figura 5.5. Din cauza faptului că o imagine scanată este de o calitate superioară față de o imagine capturată cu camera web, procesul de recunoaștere a caracterelor nu necesită o prelucrare foarte amplă a acesteia. În cazul nostru am aplicat doar un filtru care transformă culorile imaginii în nuanțe de gri și am aplicat algoritmii Tesseract pentru identificarea zonelor de interes și recunoașterea caracterelor de pe imaginea scanată. La acest pas putem observa corectitudinea informațiilor achiziționate de la o imagine mult mai clară.
Figura 5.5 Buton deschidere imagine și recunoaștere a caracterelor
În continuare se vor testa ultimele două butoane de pe această primă fereastră a aplicației care au rolul de a deschide fereastra corespunzătoare scanării celeilalte fețe a diplomei și de a deschide fereastra de vizualizare a datelor din baza de date. La acționarea butonului „Scanează spatele diplomei” se va deschide cea de-a doua fereastră a aplicației. Aceasta cuprinde la fel ca prima fereastră mai multe butoane care au aceeași modalitate de funcționare, ne referim aici la butonul de pornire al camerei web, de capturare a imaginii, de salvare, de încărcare a unei diplome, aici diferența este că vom analiza alte regiuni de interes de pe diplomă, un buton de vizualizare a bazei de date dar și un buton care adaugă informațiile achiziționate în baza de date. Ultimul buton de pe această primă fereastră este cel de deschidere a ferestrei ce conține informațiile preluate din baza de date.
În cea de-a doua fereastră vom testa butonul de adăugare a datelor în baza de date. Acest lucru este posibil doar dacă am achiziționat datele din prima fereastră. În cazul în care tipul de date achiziționate este compatibil cu tipul declarat în baza de date, pe ecran apare un mesaj de informare cu privire la finalizarea procedurii de adăugare a datelor, prezentat în figura 5.6.
Figura 5.6 Mesaj de confirmare a adăugarii cu succes a datelor
Pentru verificarea datelor din baza de date se acționează butonul de vizualizare a acesteia care va deschide o nouă fereastră. În cea de-a treia fereastră se testează conexiunea cu baza de date, dacă aceasta nu se poate realiza pe ecran va apărea un mesaj de eroare, iar dacă conexiunea este activă se va afișa tabelul cu datele existente. Acest lucru se poate observa în figura 5.7.
Figura 5.7 Conexiune bază de date
Un ultim buton pe care îl testăm este cel de ieșire din aplicație care returnează un mesaj de confirmare a părăsirii programului. Inițial la apăsarea butonului aplicația se închidea fără apariția acestui mesaj, fapt care nu este eficient deoarece butonul se poate apăsa din greșeală iar toată munca era piedută. La apăsarea opțiunii „Yes” aplicația se va închide iar la apăsarea opțiunii „No” programul va rula în continuare. Acest tip de mesaj se poate observa în figura 5.8.
Figura 5.8 Mesaj părăsire aplicație
5.2 Procesarea imaginii și recunoașterea caracterelor
5.2.1 Testarea procesării de imagine
Vom începe procesul de testare prin adăugarea diplomei în locul destinat scanării acesteia și vom lansa aplicația în vederea testării regiunilor de interes, respectiv zonele de pe diplomă unde se află datele de care avem nevoie.
Primul pas pentru implementarea algoritmilor de recunoaștere a caracterelor îl reprezintă procesarea imaginilor captate de camera web. Astfel, se va trece imaginea capturată printr-un proces de convertire a acesteia în nuanțe de gri prezentată în figura 5.9.
Figura 5.9 Convertirea în nuanțe de gri
Această conversie nu este suficientă pentru recunoașterea caracterelor de aceea imaginea se trece printr-un proces de binarizare cu scopul segmentării obiectelor. Aici mai intervine lumina care cade pe diplomă în momentul capturării imaginii deoarece dacă într-o parte lumina este mai puternică observăm în figura 5.10 faptul că în partea în care lumina are o intensitate mai mare imaginea este de culoare albă iar opusul unde lumina este de o intensitate mai scăzută este neagră. Acesta este efectul binarizării incorecte, iar algoritmii de recunoaștere a caracterelor nu o să funcționeze.
Figura 5.10 Binarizare incorectă
Pentru o binarizare corectă a imaginii sursa de lumină trebuie să fie uniformă pe toată suprafața diplomei. Astfel, algoritmul de recunoaștere a caracterelor este capabil să funcționeze corect. Binarizarea corectă este prezentată în figura 5.11
Figura 5.11 Binarizare corectă
Unul din factorii care mai influențează binarizarea este factorul pragului de binarizare. Acesta se stabilește după intensitatea luminii uniforme care cade pe imaginea ce urmează a fi scanată. De exemplu, o valoare prea mică a factorului duce la albirea prea puternică a imaginii binarizate, iar o valoare prea mare duce la înnegrirea acesteia. Prin stabilirea greșită a valorii factorului nu se va putea realiza procesul de recunoaștere a caracterelor. Cele două ipostaze sunt exemplificate în figura 5.12.
Figura 5.12 Pragul binarizării
După procesul de binarizare se testează aplicarea unui filtru de eliminare a zgomotului. Se va folosi filtrul median. Acesta ajută la netezirea elementelor binare din imagine, în cazul de față netezirea caracterelor de pe suprafața diplomei. Dacă valoarea parametrului filtrului este prea mare caracterele vor fi imposibil de citit deoarece filtrul elimină pixelii mult prea tare. Efectele acestui filtru sunt prezentate în figura 5.13.
Figura 5.13 Aplicarea filtrului median
5.2.2 Testarea agloritmilor OCR
După validarea procesului de prelucrare a imaginii capturate, urmează etapa de recunoaștere a caracterelor. Pentru ca acest proces să funcționeze corect, este necesară alegerea corectă a regiunilor de interes.
După lansarea aplicației vom observa în figura 5.14 că regiunile de interes nu sunt corect setate, astfel este necesară modificarea parametrilor acestora în vederea corectării și poziționării corecte.
Figura 5.14 Testare regiuni de interes
După modificarea parametrilor s-a obținut un rezultat corect al selectării regiunilor de interes de pe diplomă, lucru care se poate observa în figura 5.15
Figura 5.15 Regiuni de interes corecte
Dacă totul s-a realizat corect, algoritmul Tesseract este capabil să facă diferența între caractere și să le recunoască iar mai apoi să transfere informația în casetele de text specifice fiecărei zone de interes. Acest lucru îl putem observa în figura 5.16, unde se mai observă anumite erori apărute la recunoașterea caracterelor acest fapt datorându-se și calității mai scăzute a sistemului optic, respectiv al camerei web.
Figura 5.16 Recunoașterea caracterelor
5.3 Testarea bazei de date
În urma achiziției textului în căsuțele de text se dorește adăugarea acestuia în baza de date creată anterior. Acest lucru este posibil prin apăsarea butonului „Adaugă în baza de date” situat pe cea de-a doua fereastră a aplicației dar și a declarării corecte a serverului ce conține baza de date și scrierea corectă a comenzilor de adăugare.
Validarea introducerii datelor este posibilă doar dacă am achiziționat toate datele din prima și a doua fereastră iar aceasta este confirmată prin apariția unui mesaj de confirmare.
Există și o opțiune de editare a datelor din baza de date verificată atât în caseta de date cât și în mediul de lucru Microsoft SQL Server 2012. Pentru actualizarea bazei de date se acționează butonul „Actualizează” după ce am editat în prealabil câmpul pe care dorim să-l edităm. De exemplu, am editat câmpul Nume, unde ințial era trecut numele Cosma Cristian, astfel încât în acest moment apare un al doilea prenume alăturat datelor inițiale. În figura 5.17 este exemplificat modul de testare a actualizării bazei de date.
Figura 5.17 Actualizarea datelor din baza de date
De asemenea, pentru testarea acestui proces de actualizare se poate verifica și în programul Microsoft SQL Server, pentru a vedea dacă datele au fost actualizate cu succes. Acest lucru este exemplificat în figura 5.18, unde observăm că numele a fost modificat.
Figura 5.18 Verificarea actualizării în Microsoft SQL Server.
Totodată am testat și modalitatea de ștergere a unei înregistrări folosind atât aplicația creată cât și programul Microsoft SQL Server. Observăm că la apăsarea butonului „Șterge din baza de date” rândul selectat dispare și este șters din baza de date. Această modalitate este exemplificată în figura 5.19.
Figura 5.19 Ștergerea înregistrărilor
După efectuarea testelor și validarea acestora, considerăm că aplicația realizată și-a atins scopul, iar pentru a putea fi utilizată în cadrul departamentelor unde este nevoie de un astfel de sistem, am creat un manual de utilizare și instalare a acesteia, prezentate în capitolul ce urmează.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Testare Si Validare (ID: 124548)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
