Název:
Identifikace elementů grafického uživatelského rozhraní pro robotický testovací systém
Překlad názvu:
Automated Identification of Graphical UI Elements for Robotic Quality Assurance
Autoři:
Válek, Lukáš ; Herout, Adam (oponent) ; Španěl, Michal (vedoucí práce) Typ dokumentu: Diplomové práce
Rok:
2022
Jazyk:
eng
Nakladatel: Vysoké učení technické v Brně. Fakulta informačních technologií
Abstrakt: [eng][cze]
Tato práce se zabývá problematikou analýzy obrazovek grafického uživatelského rozhraní (GUI) pomocí konvolučních neuronových sítí (CNN) a metod počítačového vidění. Cílem této práce je vytvořit systém, který automaticky identifikuje GUI elementy na základě piktogramových a textových informací pro detekované prvky ve vstupním obrázku. K~vývoji systému byla použita kombinace EfficientNetB1 CNN, OCR a tradičních metod počítačového vidění. K trénování CNN byla použita vlastní datová sada, která obsahovala 120 tisíc piktogramů. Byl vytvořen sémantický slovník UI prvků, který dále využívá text detekovaný pomocí OCR. Nakonec byl vytvořen podsystém pro analýzu GUI hierarchie, který slouží k detekci a sémantické kategorizaci oblastí GUI. Výsledný systém automaticky klasifikuje detekované piktogramy, navrhuje další třídy na základě textu a rozděluje GUI obrazovku do hierarchických sekcí. Systém dosahuje 81,1% přesnosti identifikace UI prvků a v průměru zanalyzuje jednu obrazovku za 0,6 sekundy. Systém automatizuje identifikaci UI prvků, čímž umožňuje zaměstnancům věnovat se jiným činnostem. V budoucnu lze tento systém dále rozvíjet, aby sloužil jako základ pro automatické exploratorní testování.
This thesis explores the issue of graphical user interface (GUI) screen analysis using convolutional neural networks (CNN) and computer vision methods. The thesis aims to create a system which automatically identifies GUI elements based on pictogram and text information for detected components in an input image. A combination of EfficientNetB1 CNN, OCR, and traditional computer vision methods was used to develop the system. A custom dataset which contains 120k pictograms was used to train the CNN. A UI element semantic dictionary was created, which further utilises the text detected by OCR. Finally, a GUI hierarchy analysis subsystem was created to detect and semantically categorise sections in GUI. The resulting system automatically classifies detected pictograms, suggests additional text classes, and separates the GUI screen into hierarchical sections. The system achieves 81.1% UI element identification accuracy and, on average, analyses a single screen in 0.6 seconds. This system automates repetitive processes, thus decreasing needed person-hours. In the future, the system can be further developed to function as a foundation for automated exploratory testing.
Klíčová slova:
computer vision; EfficientNetB1; image classification; Keras; machine learning; neural networks; object identification; OCR; OpenCV; Python; semantic analysis of graphical user interface; semantic dictionary of UI elements; TensorFlow; UI element identification; identifikace objektů; identifikace UI prvků; Keras; klasifikace obrázků; neuronové sítě; OCR; OpenCV; počítačové vidění; Python; strojové učení; sémantická analýza grafického uživatelského rozhraní; sémantický slovník GUI prvků; TensorFlow; EfficientNetB1
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: http://hdl.handle.net/11012/207879