Luboš Vaníček
programmed grammars, parsing, translators
Překladače a gramatiky
Compilers that are used to translate programming languages are based on context-free grammars. That means that they aren’t as strong as they could be. The power of compilers is the key problem that this work is trying to solve. The main part of a compiler that is related to this problem is a parser. And that is what this work is trying to improve. The problem is solved by creating a special algorithm based on programmed grammars. The algorithm is than used in parsers. A special application is created to verify if the solution works. This application allows users to test the algorithm on user-created grammars and an input string of symbols. The created program is tested with grammatical constructions that are known as context-sensitive. The results are really successful and promising for the future development and application. This work could influence constructions in programming languages and introduce brand new ones. It’s a good starting point for stronger and better compilers. It could shorten the whole code and increase its clarity. Another application of this work could be in translators that are translating natural languages, because those languages are context-sensitive.
Ondřej Soukup
simple matrix grammars, generative power, number of components
Překladače a gramatiky
The concept of simple matrix grammars was introduced and first studied in early seventies. All the achieved results were summarized in a few following studies and the simple matrix grammars start disappearing from the forefront. This work returns to them and aims to correct some generally accepted historical mistakes. In the following studies, the very first definition of simple matrix grammars has slightly evolved to the modern and currently generally accepted form, nevertheless, the validity of the former related results were not revised. However, these modifications have significant influence on the simple matrix grammars. Despite the existing beliefs that the simple matrix grammars define an infinite hierarchy of languages depending on the number of their components, we show that two components are exactly enough strong and the addition of another component do not increase the generative power. Moreover, we prove that simple matrix grammars with two components are precisely as strong as matrix grammars.
Jaroslav Kollár
Spätný prekladač, Optimalizácie, LLVM IR
Překladače a gramatiky
Pojem bezpečnosť v rámci informačných technológií v dnešnej dobe nadobúda stále väčší význam. V súčasnosti sú najviac zraniteľné mobilné telefóny, tablety a iné podobné zariadenia. Na analýzu škodlivého softvéru môže byť využitá jedna z techník softvérového reverzného inžinierstva a to spätný preklad. Ten je možné realizovať pomocou spätného prekladača prevádzajúceho platformovo závislú binárnu aplikáciu do vysokoúrovňového kódu. Tento kód je potom možné analyzovať a získané informácie použiť pri tvorbe antivírusových programov. Z dôvodu zjednodušenia analýzy tohto kódu je vhodné ho upraviť do funkčne ekvivalentnej ľudsky čitateľnejšej podoby. O túto úpravu sa starajú optimalizácie v spätnom prekladači. Článok popisuje základné informácie o spätnom prekladači vyvíjaný firmou AVG Technologies. Konkrétne je popísaná štruktúra tohto spätného prekladača a jeho plánované využitie. Dôraz je kladený na optimalizácie, ktoré sú predmetom tohto článku. Pri nich sú uvedené problémy, ktoré riešia a zároveň sú prezentované spôsoby riešenia týchto problémov. Optimalizácie sú vykonávané nad jazykom LLVM IR predstavujúcim vnútornú reprezentáciu v uvedenom spätnom prekladači.
Marek Žák
Hexapod, Legged chassis, Walking robot, Hexapod gaits
Robotika a umělá inteligence
This paper aims on design, construction and control of hexapod robot, which is six-leg walking robot. Basic characteristics of legged robots, a few existing robots and their pros and cons are described. Paper also describes basic gaits, which are used by legged robots for their locomotion. Result of this project is a legged robot, which can walk using tripod, wave and ripple gait and is equipped with sonars, force-sensitive resistors and encoders. Robot is controlled and monitored from user interface program. It can display data from sensors and positions of robot’s legs. The robot can be used to test and verify algorithms, gaits and features of walking robots.
Jonáš Holcner
Leap Motion, Camera calibration, Projector calibration, Leap Motion projector, interface, Unity 3D
Zpracování dat (obraz, zvuk, text apod.) Uživatelská rozhraní
The goal of this paper is to develop user interface using potential of the Leap Motion Controller in combination with projected image of a projector. This interface requires a projector calibration for user to be able to interact with the image. The calibration enables translation of points between coordinate spaces of Leap Motion and projector. Combined with data from Leap Motion, this allows user to interact with applications and games only by hands within the projected image. The solution contains a projector and a Leap Motion located over a table looking at the table desk. Leap Motion is used to track hand motions above the table. The capabilities of the proposed interface are demonstrated on a computer game, which was developed in Unity 3D engine. In this paper is proposed a new way of interacting with applications and games using the unique control interface.
Jiří Husák
High-Level Synthesis, Xilinx ZYNQ, Xilinx Vivado, zpracování obrazu
Počítačová architektura a vestavěné systémy
Počítačové systémy se stávají stále složitější. V oblasti zpracování videa jsou potřeba stále vyšší nároky na výpočetní výkon. K těmto účelům lze použít technologii FPGA, která přináší možnost akcelerace v hardwaru. Vyšší nároky jsou však kladeny i na vývojáře. Proto vzniká snaha popisovat chování hardwaru pomocí vyšších programovacích jazyků. Cílem této práce je navrhnout a implementovat aplikaci pro zpracování videa akcelerovanou v FPGA pomocí jazyka C++ a zhodnotit přínos tohoto přístupu pro vývojáře. Aplikace je určena pro platformu Xilinx ZYNQ a pro implementaci je použito vývojové prostředí Xilinx Vivado. V architektuře jsou používány komponenty vytvořené pomocí syntézy na systémové úrovni (High-Level Synthesis). Výsledkem práce je demonstrační aplikace, která ukazuje, že může být výhodné používat syntézu na systémové úrovni. Hlavními důvody je úspora času při vývoji a možnost snadněji provádět změny chování komponenty. Tato práce je užitečná pro vývojáře FPGA a předkládá jim možnost zvýšení produktivity.
Martin Brázdil
Diagram tříd, Webová služba, Reflexe, C# .NET, Java
Informační systémy
K optimalizaci procesu vývoje produktu softwarové aplikace, tedy produktu v IT oblasti, na kterou se práce zaměřuje, je třeba mít přehled o aktuálním postupu. Tato práce cílí na oblast architektury vyvíjeného programu - UML diagramy tříd. Aplikace je koncipována jako webová služba psaná pro platformu C# .NET s rozšířenou podporou platformy Java. Po propojení služby s projektem (přeloženými zdrojovými kódy aplikace), se pak lze dotazovat dané služby na diagramy tříd potřebných částí architektury. Jelikož jsou vygenerované diagramy dostupné ve tvaru obrázků z webového prostoru, je možno je integrovat i do online dokumentace (např. Wiki stránky). Po úpravě zdrojového projektu a jeho analýze, se vložený diagram sám aktualizuje, čímž se udržuje neustálá konzistence mezi reálnou implementací a dokumentací. Výsledná aplikace poskytuje vývojovému týmu informace o aktuálním stavu architektury jeho produktu, čímž dopomáhá ke sdílení informací uvnitř týmu, prezentaci a případné kontrole doposud odvedené práce.
Zdeněk Křesťan
Hluboký zásobníkový automat, Syntaktická analýza, Překladače a gramatiky
Překladače a gramatiky
Bude síla bezkontextových gramatik stačit i v budoucnu? Cílem tohoto článku je nastínit možné řešení tohoto problému využitím hlubokého zásobníkového automatu. Modifikací algoritmu pro prediktivní syntaktickou analýzu tímto automatem získáme algoritmus, který jednoduchým způsobem překoná sílu bezkontextových gramatik.
Vojtěch Havlena
T-normy, Lawson-Hansonův algoritmus, Aproximace B-spliny
Modelování a simulace
Tento článek se věnuje způsobu modelování fuzzy logických spojek, speciálně fuzzy konjunkcí na základě empirických dat. Cílem je nalézt algoritmus pro aproximaci aditivních generátorů a pomocí něho experimentálně zjistit, jakým způsobem lidé chápou fuzzy konjunkci. Mimo určení, jaká fuzzy konjunkce nejvíce odpovídá konjunkci ve významu používaném lidmi, si experiment klade také za cíl zjistit, zda lidé chápou konjunkci jako komutativní operaci. V článku je představen a analyzován algoritmus, který na základě empirických dat hledá generátor, aproximovaný pomocí B-splinů, který těmto datům nejvíce odpovídá. Samotný experiment byl vyhodnocen na základě dat sesbíraných od respondentů.
Miroslav Slivka
SSL, TLS, šifrovaná komunikácia, Netfox
Počítačové sítě
Táto práca sa zaoberá sprístupnením šifrovanej komunikácie pre nástroj Netfox, ktorý vzniká na Fakulte informačních technologií, VUT v Brně pod záštitou bezpečnostného výskumu(VG20102015022) - SEC6NET. V práci je popísaná analýza SSL/TLS komunikácie a časť návrhu a implementácie samotného modulu. Implementácia zahrňuje niekoľko symetrických šifier a RSA, ktoré sa používa na výmenu kľúčov. Modul sprístupňuje šifrovanú komunikáciu pre ďalšie spracovanie a extrakciu dát v dešifrovanej podobe.
Juraj Kardoš
Aircraft ground dynamics, Ground motion model, AutoTaxi
Modelování a simulace
Recent studies focused on the global airline industry predict a continuous growth of passenger numbers, which will stimulate an increased demand for modern sophisticated aircraft capable of precise operations at reduced separation minima. Automation systems, such as AutoTaxi, will allow for decreased ground separation standards and a subsequent increase of throughput at airports in metropolitan areas. Such automation tools will also allow fuel savings by improving the way aircraft are operated on the ground. Except the direct operating cost, there are also associated effects, which need to be considered, namely, production of large volumes of CO2, noise pollution in the airport surroundings and an increased susceptibility to foreign object damage. This paper deals with an AutoTaxi control system for a single-aisle passenger aircraft, such as Boeing 737 series, under different operational conditions. The implemented model considers varying runway characteristics due to the atmospheric conditions and different aircraft configurations. The tire-ground interaction model has an essential impact on the ground motion model. Therefore we present detailed force and momentum equilibria analysis presented in form of equations of motion. The validation of the model was based on the turn radii comparison for multiple steering angles. Simulation results were subjected to a comparison with the analytical solution of the Ackerman drive for a tricycle vehicle and with Boeing turn radii as specified in Airplane Characteristics for Airport Planning. Obtained result suggest high-precision real-time simulation. The simulation model is assumed to be validated using actual real aircraft measured data from taxiing trials at designated international airport.
Michal Wiglasz
Koevoluční algoritmus, Kartézské genetické programování, Genetický algoritmus, Plasticita fenotypu, Predikce fitness, Obrazový filtr
Nekonvenční výpočetní techniky
Kartézské genetické programování (CGP) se využívá zejména pro automatizovaný návrh číslicových obvodů, ale ukázalo se být úspěšnou metodou i pro řešení jiných inženýrských úloh. Časově nejnáročnější částí výpočtu je vyhodnocení kvality kandidátních řešení. Bylo ukázáno, že evoluci je možné urychlit pomocí koevoluce s prediktory fitness, které slouží k přibližnému určení kvality kandidátních řešení. Nevýhodou koevoluce je nutnost provést mnoho časově náročných experimentů pro určení nejvýhodnější velikosti prediktoru pro daný problém. V tomto článku je představena nová reprezentace prediktorů fitness s plastickým fenotypem, založená na principech souběžného učení v evolučních algoritmech. Plasticita fenotypu umožňuje odvodit různé fenotypy ze stejného genotypu. Díky tomu je možné adaptovat velikost prediktoru v průběhu evoluce na obtížnost řešeného problému. Z experimentů vyplývá, že lze dosáhnout srovnatelné kvality jako u standardního CGP při kratší době běhu programu a zároveň odpadá nutnost hledání nejvýhodnější velikosti prediktoru.
Ivan Ševčík
FITkit, Plotter, XY 4150
Počítačová architektura a vestavěné systémy
The aim of this paper is to propose a cheap and customizable device for drawing vector graphics on variety of surfaces. This includes creating a drawing hardware, a control unit and its software. The drawing device was designed as a plotter with two axes of freedom, allowing a drawing surface to remain static. An embedded platform FITkit was used as the control unit in order to save money and reduce time spent on the project. The FITkit had to be accompanied by an amplifier board which bridges its output ports and the motors, as these operate at a different voltage levels. A software for FITkit was developed that communicates with a personal computer and converts vector graphics to the motor movements and pen control. Finally, a dedicated program was developed also for the computer side. It provides a convenient way to issue commands and read files containing vector graphics created by a suitable editor, such as AutoCAD. The result is a fully functional and highly customizable plotter-like device that can draw both individual commands and whole AutoCAD XDF files. This work may serve as a starting point for creating a drawing device like the one presented in this paper. Having such device available opens up a lot of possibilities and it represents a valuable tool for future projects.
Jakub Šoustar
parsing, parallel, communicating, pushdown, automata
Překladače a gramatiky
In this paper we will look at use of parallel communicating pushdown automata systems (PCPA), that communicates their stacks on request, in parsing. We will present some issues that would accompany their use, and also present some possible ways to deal with those issues. New implicit transition mapping for pushdown automata, that are used as a components of a PCPA, will be presented. This new property is aimed at dealing with the issues, that are caused by new requirements which a PCPA poses on pushdown automata.
Marek Milkovič
Unpacking, Decompilation, Retargetable Decompiler, Reverse Engineering, Executable Files, Packing, Malware, Compression
Překladače a gramatiky
Executable file packing is a process used for compression or protection of these files. The behavior and intent of such packed executable files is difficult or even impossible to analyze. If we want to analyze the original code, we need to detect the used packer and unpack the executable file with a tool called unpacker. This paper describes the methods used for packing and unpacking of the executable files as well as the implementation of an easily and quickly extensible unpacker, which is going to be used in a decompiler developed by AVG Technologies. This unpacker provides the interface for plugins, which extend the set of supported packers. Unpacking plugins aim at the methods for unpacking without actually running the packed program; thereby providing security measures and targeting the architecture and platform independent unpacking. A newly proposed generic unpacker achieves comparable results with unpackers used in practice and even outpace them in a few aspects. It shows that even static unpacking methods can produce accurate results.
Tereza Černá
Detekce registračních značek vozidel, Klasifikace znaků, Kaskádový klasifikátor, MSER
Zpracování dat (obraz, zvuk, text apod.) Počítačová grafika
Cílem této práce je detekce registračních značek vozidel a rozpoznání jejich textu. Základním přístupem pro detekci je využití kaskádového klasifikátoru. Práce je rozdělena do tří hlavních kapitol -- získání datové sady, detekce značek a rozpoznání znaků. Datová sada byla pořízena na území města Brna přímo pro účely této práce a sloužila k trénování a vyhodnocení detektorů. Další dvě části pojednávají o přípravě pozitivních a negativních vzorků dat a jejich použití při trénování kaskádového klasifikátoru. Úspěšnost detekce registračních značek byla vyhodnocena na dvou datových sadách s výsledky 100 % a 98.47 %. Aktuálně se autorka zabývá rozpoznáním znaků a~sestavením registrační značky.
Martin Janyš
Java, Sandbox, Spring, Oddělování procesů, Webové aplikace, Stabilita
Informační systémy
Předmětem článku je téma odolnosti a stability webových aplikací se zaměřením na platformu Java. Řada existujících informačních systémů postavených nejen nad touto platformou se potýká s problémy, které narušují stabilitu aplikace. Tyto problémy pak mohou vyústit v plánovaný nebo neplánovaný výpadek, odstávku a následně i finanční nebo obchodní ztrátu v důsledku nefunkčnosti celé služby. Cílem bude ukázat problémy, se kterými se aplikace potýkají v provozním prostředí a jak je proaktivně řešit. Jako možná dílčí řešení zvýšení stability mohou být vhodná konfigurace JVM (Java Virtual Machine), analýza a oprava odhalených chyb a nebo technika na zvýšení stability nazývaná Sandboxing, které se věnuje tato práce. Pomocí této techniky je možné rozdělit aplikace do samostatných částí, které se nemohou ovlivnit. Zamezí se tak šíření chyb mezi částmi aplikace a tím zvýšíme stabilitu celé aplikace. Mezi cílové aplikace patří Java aplikace realizované za pomoci aplikačního rámce Spring. Do takto postavených aplikací lze zavést techniku Sanboxing vhodnout konfigurací, která zajistí, že běh aplikace bude rozdělen do určených částí, které budou automaticky testovány a případně restartovány. Aplikace se tak sama zotaví v postižených částech bez kompletního výpadku. Práce je realizována ve spolupráci s firmou IBAcz. Projekt nese jméno Java Capsules.
Roman Mikulenčák
Obchodní systém, trh cenných papírů, lineární klasifikace, svíčkové formace, predikce, předpověď vývoje kurzu
Robotika a umělá inteligence
Práce se zabývá automatickým obchodním systémem s rozpoznáváním svíčkových formací pomocí lineární klasifikace s adaptivním trénováním vah. Obsahuje popis algoritmické podstaty, implementace programu a experiment vytvořený obchodním systémem. Srovnání vybranou strategii s jinými přístupy.
Dominik Zapletal
Vehicle re-identification, Reacquisition, Multiple camera system, Vehicle signatures, Real time systems, Video surveillance, Computer vision, Feature extraction, Image matching, Road traffic
Zpracování dat (obraz, zvuk, text apod.) Počítačová grafika
In this paper an approach to the vehicle re-identification problem in a multiple camera system is presented. We focused on the re-identification itself assuming that the vehicle detection problem is already solved including extraction of a full-fledged 3D bounding box. The re-identification problem is solved by using color histograms, histograms of oriented gradients by a linear regressor. The features are used in separate models in order to get the best results in the shortest CPU computation time. The proposed method works with a high accuracy (60% true positives retrieved with 10% false positive rate on a challenging subset of the test data) in 85 milliseconds of the CPU (Core i7) computation time per one vehicle re-identification assuming the fullHD resolution video input. The applications of this work include finding important parameters like travel time, traffic flow, or traffic information in a distributed traffic surveillance and monitoring system.
Martin Hruška
Forest Automata, Formal Verification, Static Analysis, Complex Data Structures, Tree Automata, Backward Run, Predicate Abstraction
Testování, analýza a verifikace
Forest automata are one of the formalisms recently used for analysis and verification of programs manipulating dynamic data structures. In the area of shape analysis there exists a tool Forester employing forest automata. Forest automata are based on tree automata and Forester has its own implementation of tree automata. However, there is the VATA library which implements the efficient algorithms for the tree automata manipulation, especially the efficient algorithms for the checking inclusion of languages of tree automata what is an operation crucial also for the verification procedure based on forest automata. The first goal of this work is to implement a version of Forester tool that uses the VATA library for tree automata manipulation. The second goal of this work is to extend forest automata based verification with backward run that checks whether a found error is a spurious or a real one what could be used for refinement of predicate abstraction. The first goal has been already fulfilled and the variant of Forester using the VATA library successfully participated in the competition SV-COMP 2015. The part of the second goal is done only partially -- the backward run is already finished and predicate abstraction implementation is in progress.
Jiří Hon
Příbuzné proteiny, Ověření funkce proteinu, Zachování aktivního místa
Bioinformatika
Hledání příbuzných enzymů v biologických databázích patří mezi obvyklé činnosti v oblasti proteinového inženýrství a pro tento účel existuje řada zavedených nástrojů. Chceme-li však stávajícími nástroji hledat příbuzné enzymy s modifikovanou funkcí - a zamýšlíme tím modifikaci pouze ve smyslu rychlosti reakce, stability enzymu apod., nikoliv přímo typu enzymatické funkce - pak spoléháme na slabou hypotézu, že sekvenčně podobné enzymy mají pravděpodobně stejný typ funkce. Důsledkem toho je buď příliš velké množství nežádoucích výsledků vyhledávání, nebo naopak jejich nedostatečná různorodost. Proto ve spolupráci s Loschmidtovými laboratořemi navrhuji rozšířit současné nástroje o nové filtrační kroky omezující výsledky pouze na relevantní enzymy, jejichž základem je zohlednění pozice a typu katalytických reziduí hledaného enzymu a doplnění anotací. Implementací a aplikací filtračních kroků se mi podařilo dosáhnout řádového snížení počtu výsledků při zachování jejich různorodosti a díky tomu jsem usnadnil a zlevnil výběr zajímavých sekvencí v množině nalezených putativních enzymů, které by mohly mít vhodné vlastnosti pro proteinové inženýrství a vyplatilo by se investovat do jejich experimentálního ověření v laboratoři.
Miloš Musil
Amino acid substitutions, Phylogenetic analysis, Mutations, Mutation effect prediction
Bioinformatika
Many genetic mutations are single nucleotide polymorphisms (SNPs). Significant number of genetic diseases is caused by non-synonymous SNPs manifested as single point mutations on the protein level. The ability to identify deleterious substitutions could be useful for protein engineering to test whether the proposed mutations do not damage protein function same as for targeting disease causing detrimental mutations. However the experimental validation is costly and the need of predictive computation methods has risen. Here we introduce a new in silico predictor based on the principles of phylogenetic analysis and dissimilarity between original and substituting amino acid physico-chemical properties. Developed algorithm was tested on four datasets with 78,650 mutations from 16,256 sequences in total. The predictor yields up to 72% normalized accuracy and in the comparison with the most existing tools, it is substantially less time consuming. In order to achieve the highest possible efficiency, the optimization process was focused on selection of the most suitable (a) overall decision threshold, (b) third-party software for calculation of a multiple sequence alignment and (c) a set of decision features / physico-chemical properties. To cope with the last mentioned problem, two feature selection methods were tested on the database of 544 possible properties.
Marek Sychra
Topic detection, Link detection, Story segmentation, Term frequency - Inverse document frequency
Zpracování dat (obraz, zvuk, text apod.)
This paper deals with the topic of finding similarities amongst a group of short documents according to their topic. It solves finding borders between two topically different parts in a large document. The goal is achieved by text and word analysis, which contains learning the meaning and importance of each word. Both problems use the same analysis, only different application. The solution of the first problem (link detection) gives great results despite using a simple analysis method. The second problem (story segmentation) is harder to rate precisely, but also gives good results. Both tasks were tested against short documents - world news reports. The main motivation for implementation and research was practical application with the use of presentation materials from lectures at FIT BUT (linking parts of different lectures and courses).
Ladislav Mošner
3D printing, delta printer, Fused Deposition Modeling, Fused Filament Fabrication, RepRap
Počítačová architektura a vestavěné systémy
This paper deals with the topic of 3D printing. The primary aim was to build a real printer with a stiff construction minimizing clearance. The design of the 3D printer and its parts was highly influenced by the RepRap project, especially by the Rostock printer based on the delta kinematics, and Fused Deposition Modeling. The solution is formed using the Arduino Mega 2560 platform running Marlin firmware. Our printer uses a newly designed extruder that should prevent a filament from melting in a guide tubule due to a large heatsink. In order to evaluate the accuracy of the 3D printer, multiple tests were performed. The advantages and weaknesses of the modified design presented here can be very helpful for other people who may decide to build their own 3D printer.
Filip Kuklis
Photoacoustic, Ultrasonic, Imaging, HPC, Parallel computing, Vectorisation
Zpracování dat (obraz, zvuk, text apod.)
The ability of reconstruction of photoacoustic images is important requirement to study soft tissues or vascular and lymphatic systems in high resulution but in small space. Today solution needs extensive computing power and it is noticeably time-consuming. In this study we would like to introduce a new solution which would be a way much faster and easy to use. My solution is up to twenty times faster and needs forty percent less memory. This solution may be a better alternative for scietnist who study soft tissues by photoacoustic imaging.
Jan Krušina
Braille Font Detection, Braille Reader, Mobile Device
Zpracování dat (obraz, zvuk, text apod.)
The aim of this project is to create a portable Braille reader. The main objective is to recognize Braille characters from images taken by camera on a mobile phone, convert them into Latin alphabet, and eventually display the output to the user. Solution of this task is based on a visual detection of Braille characters. Input frames from camera are processed one by one using a special algorithm which separates dots in characters from the rest of the image. Afterwards, dots are grouped into particular characters. Finally, every single character is translated and rendered on screen. This application is capable of detecting dots from books at a very high success rate. Reading from other surfaces, e.g., metal, has a good success rate as well. Thus, the application is able to detect dots on informational signs and other captions, which are commonly used. This reader gives people the ability to read text written in Braille used by blind and visually impaired people all over the world.
Zdeněk Hladík
finite automata, twodimensional languages, car nationality, licence plates
Zpracování dat (obraz, zvuk, text apod.) Překladače a gramatiky
Cílem této práce je aplikace umožňující zjistit státní příslušnost automobilu na základě tvaru jeho SPZ. Aplikace využívá dvoudimensionálních konečných automatů a současně vytvořenou obsáhlou databázi povolených tvarů SPZ evropských států. V současné době aplikace podporuje 27 států a cca 9000 příslušných pravidel. Využití této aplikace je např. pro mýtné brány, bezpečnostní záznamy nebo statistiky provozu. Jedná se o demostrační příklad využití dvoudimensionálních automatů a operací s 2-D řetězci v praxi pro komerční využití.
Lenka Jalůvková
Spojování snímků, SIFT, SURF, RANSAC, Planární projekce, Cylindrická projekce
Zpracování dat (obraz, zvuk, text apod.)
Tento článek je zaměřen na tvorbu živých panoramat. Vstupem je video ze streamujících kamer, výstupem je taktéž stream - panorama neustále se překreslující podle aktuální polohy kamery. Výsledné řešení je založeno na algoritmech SIFT a SURF pro hledání klíčových bodů a deskriptorů ve snímcích, dále na algoritmu RANSAC pro výpočet homografie sloužící k následnému plynulému spojování snímků a splynutí přechodů. Překreslování snímků zleva doprava i zprava doleva vyžadovalo váhování přechodů z obou stran vkládaného snímku. Tvorba panoramat je závislá na zvolené obrazové projekci, v našem případě byla použita planární a cylindrická projekce. Funkčnost navrhnutého řešení byla otestována na řadě testovacích nahrávek.
Lenka Turoňová
Parallel systems, Formal verification, Petri nets, Coverability, Abstraction, Well-quasi-ordered transition systems
Testování, analýza a verifikace
We improve existing method for the automatic verification of systems with parallel running processes. The technique is based on an effort to find an inductive invariant using a variant of counterexamplequided refinement (CEGAR). The effectiveness of the method depends on the size of the invariant. In this paper, we explore the possiblity of improving the method by focusing on finding the smallest invariant.
Martin Teknos
network behavior analysis, NBA, detection of network attacks, Advanced Security Network Metrics, ASNM, network attack obfuscation, network traffic classification, data mining, machine learning, exploit
Bezpečnost
This paper is focused on a~network behavior analysis (NBA) designed to detect network attacks. It is expected that NBA trained without knowledge of obfuscated attacks will have some difficulties with their detection. Secondly, detection accuracy of NBA should improve by providing obfuscated attacks together with direct attacks to NBA learning process. The goal is to increase accuracy of detection of obfuscated network attacks with NBA and thus improve NBA. This work suggests some obfuscation methods which can be used to evade NBA. A~semi-automatic attack tool was implemented. It was used for systematic exploitation and recording of this activity. This was essential for getting enough data before experiments. Acquired data was analyzed with chosen NBA to verify assumptions. Current results of experiments confirmed an~assumption that NBA needs knowledge about obfuscated attacks in order to detect them with good accuracy. Detection accuracy of NBA trained without obfuscated attacks can vary a~lot, depending on a~degree of overfitting. NBA learned with knowledge of all attacks (direct and obfuscated) was able to achieve 99.99% classification accuracy. This work also showed that there is still a lot of further research to be done in this field. There is a need to examine all kinds of attacks and their obfuscations in order to provide various knowledge about attacks to NBA.
Andrej Tichý
Remote control robot, Global communication, Robot Operating System
Webové technologie Robotika a umělá inteligence
Nowadays, there are no cheap and easy robot management systems which would be able to provide fast and secure communication over a public network. This work deals with creating a communication platform which enables secure global communication between a client and a robot and ensures management of robots. To solve the problem I have designed a communication layer based on client-server architecture allowing non-ros applications to communicate with platforms based on ROS, using a specified protocol. When solving the problem I divided the application into three different subsections: a web client, a client for the robot and a server. The result of this work is the presentation of a functional system that can globally manage and communicate with the selected robot. The system provides an overview of the current status of selected robots. In already existing solutions I mentioned above the robot acts as a server in architecture, which is not an appropriate solution in practice. The main contribution of this work consists in exchanging roles, where robot acts as a client. Therefore it is possible to provide the robot with cheap computing power of server and thus to save valuable resources of the robot. One another benefit of this work is constructing a tool that allows global communication between the client and the robot and ensures the safety of this communication. It also represents the interface between non-ros applications and robots based on the ros platform. It provides advanced management of robots and clients, solves client's access rights to robots and helps to increase the efficiency of the robot.
Karel Beneš
Grammar-based language model, Push-to-talk button, Automatic Speech Recognition
Zpracování dat (obraz, zvuk, text apod.)
This paper describes the construction of a speech recognition system for usage in the aeronautics cockpit. The primary goal of the recognizer is to allow pilots to control parts of the cockpit by voice. Speech recognition in the cockpit is challenging, because of changing context, variable noise and the possibility of off-talk. The recognizer is based on the Kaldi speech recognition toolkit and several project-specific components are implemented in C++. Additionally, a specific way of creating language model for coping with noises is presented. In general, we describe how to use a research-oriented speech recognition toolkit in a real-world application.
Jakub Adámek
Počítání kolonií, Analýza Petriho misek, Zpracování obrazu
Zpracování dat (obraz, zvuk, text apod.)
Analýza Petriho misek je jednou ze základních úloh v mikrobiologických laboratořích, avšak nikoli nejjednodušší. Správná analýza a vyhodnocení Petriho misek může přispět k záchraně lidského života. Práce se zabývá automatickou analýzou obrazu Petriho misek a počítáním bakteriálních kolonií. Cílem práce je vytvořit mobilní aplikaci a případná příslušenství, která by byla schopná konkurovat komerčním řešením. ColonyCatcher je aplikace určená pro mobilní zařízení se systémem Android, která je schopná pomocí spodní osvětlovací jednotky pořídit snímek Petriho misky a nadále jej analyzovat a určit počet bakteriálních kolonií. Součástí práce je popis osvětlovací jednotky a také algoritmů, které jsou použity pro počítání bakteriálních kolonií. Následuje popis použití aplikace ColonyCatcher, která provede laboranta analýzou Petriho misky v pěti snadných krocích. Přínosem práce je dostupnější aplikace a její příslušenství pro všechny mirkobiologické laboratoře.
Farida Kudaiberdiyeva
BDD, Selenium, Behat, PHP, testování
Testování, analýza a verifikace
Tato práce je zaměřena na odhalení hlavních výhod a nevýhod použití chováním řízeného vývoje firmami jak v České Republice, tak i v zahraničí. Věnuje se odlišnostem a mezerám tohoto přístupu testování webových aplikací oproti klasickému přístupu. Za klasický přístup se považuje použití nástroje Selenium při tvorbě testovacích sad. Z těchto předpokladů vyplynul cíl této práce, kterým je zjistit, zda použití BDD procesu je vhodné a efektivní oproti klasickému přístupu testování software. Pro dosažení cíle byly porovnány 2 nástroje: PHP Selenium Client od Nearsoft a Behat. Kritéria, zvolená pro porovnání, jsou: odhalené chyby, způsob zápisu a vykonání scénáře, srozumitelnost pro počítačově nezaložené lidi, čas, potřebný pro napsání testů, pravděpodobnost zanesení chyby při vytváření testu a úroveň abstrakce testu. Zkoumání tohoto problému stále probíhá, z předběžných výsledků však lze stanovit hlavní výhody a nevýhody použití každého z těchto nástrojů. Nejefektivnějším přístupem je kombinace obou, tedy použití nástroje Behat s přidáváním vlastních vět a zdrojového kódu. Nejméně efektivní je způsob testování využitím pouze implicitních vět nástroje Behat. Smyslem a přínosem této práce je zjištění, zda je BDD vhodný a efektivní pro společnost Dixons Carphone (dříve Dixons Retail). Poskytnutí nezávislého pohledu na tento problém, založeným na reálných příkladech a ověřených argumentech.
Radim Kocman
jumping finite automata, n-parallel languages, discontinuous tape reading
Překladače a gramatiky
The present paper proposes an idea for a new investigation area in automata theory — n-parallel jumping finite automata. These automata are a combination of recently presented jumping finite automata and more settled n-parallel grammars. They read input words discontinuously as general jumping finite automata; however, they use multiple heads to do so, which is quite similar to the principle of the multiple nonterminals in n-parallel right linear grammars. This paper establishes definitions for such automata, outlines expected results, and suggests future investigation areas.
David Kovařík
modeling, simulation, visualisation, data-flow graphs
Modelování a simulace Testování, analýza a verifikace
Data-flow graphs are, for their native support of high level of parallelism, often used by hardware designers. However, such graph representation is also very useful for performing deeper analysis of the design (including functional or formal verification). Simulator presented in this paper is a support tool for verification environment HADES. The goal of the simulator is to perform an efficient simulation of a verified model and to enhance user's knowledge about the model and its behavior. To perform a simulation efficiently, we introduce a specific simulation algorithm which saves computation time by eliminating redundant evaluations. The simulator is equiped with several output interfaces connected to a single simulation core. One output interface provides direct simulation output in text format. The second is also textual, but allows user to enter commands in order to control the simulation. Finally, the third forms a graphical interface in order to visualize results of simulation process. Thus, the simulator provides a scriptable command line interface to let users write automated tests as well as a powerful visualization tool for users to better understand behavior of the model.
Martin Sladeček
Správa času, First Things First, Android Wear, Android kalendář, Android todo list, Google Calendar API
Uživatelská rozhraní
Práce popisuje návrh a implementaci mobilní aplikace na správu času. Koncept správy času vychází z filosofie First-Things-First, která má za cíl nejen pomoci s plánováním času, ale vést uživatele k sebezdokonalování. Na rozdíl od většiny dostupných kalendářů a todo listů je v této aplikaci každý úkol či událost podřízena krátkodobým či dlouhodobým cílům. Aplikace je dostupná pro mobilní telefony a tablety se systémem Android a podporuje i chytré hodinky s Android Wear. Práce má za úkol seznámit čtenáře s filosofií First-Things-First a nastínit problematiku spojenou s návrhem a implementací mobilní aplikace.
Dominik Šimek
Intel Xeon Phi, HPC, N-Body, k-Wave
Počítačová architektura a vestavěné systémy
Motiváciou pre vznik tejto práce bolo nasadenie a optimalizácia výpočtovo náročných algoritmov na koprocesor Intel Xeon Phi. Tabuľkovo koprocesor Intel Xeon Phi disponuje podstatne väčším výkonom ako klasický procesor, preto sa javí ako veľmi zaujímavá architektúra. Celkovo je táto technológia veľmi mladá a ešte neprebádaná, preto stojí za úsilie priniesť pohľad, ktorý by zjednodušil prácu s koprocesorom a umožnil jeho efektívne využívanie. Cieľom tohto dokumentu je stručne oboznámiť čitateľa s našou prácou, ktorá by mohla byť v blýzkej budúcnosti veľmi zaujímavá a využiteľná. Na koľko je Intel Xeon Phi mladou technológiou, jeho efektívne využívanie je pomerne náročné. Práca sa teda javí ako veľká výzva, ktorú by bola škoda nevyužiť. Práca s koprocesorom Intel Xeon Phi má budúcnosť v obore High Performance Computing, kde by ho bolo možné používať napríklad na miesto akcelerátorov GPGPU. Vysoko optimalizované výpočtovo náročné algoritmy by teda mali bežať na tomto koprocesore veľmi rýchlo. Aká je ale pravda? Je vysoký výkon koprocesoru naozaj využiteľný? V bakalárskej práci sme postupovali od jednoduchších benchmarkov k zložitejším problémom, ktoré sme sa snažili dôkladne vyhodnotiť. K zaujímavejším problémom riešených v tejto práci patrí napríklad simulácia pohybu častíc v priestore (N-Body), simulácia šírenia akustických vĺn v 1D, 2D a 3D, optimalizácia extrakcie ivectoru, ktorá sa využíva pri spracovaní reči.
Aleš Horký
Plánování školních rozvrhů, Genetický algoritmus, Heuristický algoritmus, Kolizní matice, Multikriteriální optimalizace
Robotika a umělá inteligence
Tento článek pojednává o návrhu a implementaci softwaru pro automatické plánování rozvrhů zkoušek a přednášek. Návrh je přizpůsoben pro specifické potřeby Fakulty informačních technologií Vysokého učení technického v Brně, kterým nevyhovuje žádný komerční ani volně dostupný rozvrhovací produkt. Problém je řešen kombinací genetického a heuristického algoritmu. Pomocí genetického algoritmu je získáno pořadí předmětů v jakém mají být vkládány do výsledného rozvrhu heuristickým algoritmem. Výsledky na reálných vstupních datech vykazují přibližně o 40% méně denních kolizí (případů, kdy má student naplánováno více než jednu zkoušku v jednom dni) a přibližně o 15% větší rozestupy mezi jednotlivými termíny oproti stávajícím rozvrhům za dobu výpočtu řádově desítek minut. Nastavitelné parametry aplikace umí postihnout většinu běžných požadavků (např. časové preference, vybavení učeben, paralelní plánování do více učeben, fixní termíny, a další). V průběhu vývoje probíhá spolupráce s osobami odpovědnými za vytváření rozvrhů na fakultě tak, aby mohli tento nástroj v budoucnu využívat.
Karolína Hajná
kartézské genetické programování, třívstupové LUT, návrh obvodů
Robotika a umělá inteligence
Tato práce se zabývá problematikou návrhu obvodů pomocí kartézského genetického programování na úrovní třívstupových logických členů. Je představena metoda bitově paralelní akcelerace výpočtu fitness pro obvody s třívstupovými hradly. Porovnáním její vlastnosti s nejpoužívanější variantou kartézského genetického programování, které používá dvouvstupová hradla, jsou ukázány výhody a nevýhody této metody. Výsledky by mohly přinést nové možnosti při návrhu obvodů.
Jan Bauer, Petr Schwarz
Biometrie, Hlas, Raspberry Pi, BSAPI
Zpracování dat (obraz, zvuk, text apod.)
Cílem této práce je vytvoření zařízení pro autentizaci řečníka podle hlasu. V řešení bylo použito knihovny BSAPI, která byla vyvinuta společností Phonexia. Knihovna je napsána v jazyce C++ a byla portována na zařízení Raspberry Pi B+. O správný chod se stará skript napsaný v jazyce Python. Vytvořené řešení je určitě zajímavé a může se v budoucnu stát spolehlivým bezpečnostním systémem. Hlavním výsledkem je, že se nám podařilo dosáhnout slibné úspěšnosti, a máme tedy nakročeno k zavedení podobného systému do praxe.
Jakub Martiško
Grammar Systems, Parsing, Formal Languages
Překladače a gramatiky
Most commonly used parsers are based on the model of context free languages and grammars.This type of grammar is relatively simple to describe and design, however its descriptive poweris quite limited. One of the researched approaches, which deals with this problem are grammar systems. Using the combination of more simple grammars (usually context free), grammar systems are able to describe even some context sensitive languages while maintaining relative simplicity of context free grammars. This paper proposes modification of one of the variants of grammar systems. Parser, based on this modification, is also described in the paper. This proposed parser is able to parse same set of languages that are parseable by commonly used types of parsers and even some more complex languages.
Dominik Breitenbacher
Faktorizace, SIQS, OpenMP, MPIR, Profilace
Bezpečnost
Práce se zabývá faktorizací celých čísel, tedy rozkladem složeného čísla na jeho faktory. Faktorizace je nejznámější a nejpoužívanější metodou k lámání RSA. V rámci této práce byla vybrána faktorizační metoda zvaná SIQS. SIQS je považována za nejrychlejší metodu k faktorizaci čísel, které mají do 100 dekadických číslic, a tato metoda byla v rámci práce i naimplementována. Implementace byla řádně zdokumentována, čímž se práce snaží vyplnit mezeru mezi teoretickým popisem SIQS a existujícími implementacemi. I když se jedná o nejrychlejší metodu (do 100 číslic), není možné ji efektivně počítat v polynomiálním čase, a tak se hledají různé možnosti, jak tuto metodu co nejvíce urychlit. Jako první se nabízí paralelizace. K tomuto účelu bylo využito OpenMP jakožto výkonného nástroje pro práci s vlákny, jeho použití je přitom velice jednoduché. Další možností je pak optimalizace kódu. Cílem této práce je ukázat, jak jednoduše lze v mnoha případech využít paralelizace kódu a dále také, jak díky podrobné analýze kódu lze dosáhnout poměrně velkého urychlení. Metodika iteračního provádění optimalizací se ukázala jako velmi účinná a je možné ji použít obecně, nejenom v této úloze. Touto metodikou byla implementace SIQS vylepšena tak, že faktorizace byla urychlena až 99-krát, v některých částech kódu dokonce ještě více.
Marek Absolon
Radar, Altimeter, FMCW, LFM, Ultralight, Signal processing, Radar ranging
Zpracování dat (obraz, zvuk, text apod.)
The main topic of this paper is a radar ranging for the use in an aircraft altitude measurement. This should help beginner pilots in practicing landing and take off. To achieve this aim, we selected continuous-wave radars with frequency modulation (FMCW). Our solution is based on linear frequency modulation method using triangular modulation pattern. For data processing was used MATLAB, where will be produced an ideal algorithm. Afterwards, this algorithm will be implemented in C and used in an embedded device. During the testing, it was found out that radars with 24 GHz transmit frequency and 180 MHz bandwidth have a range resolution from 1 meter upto 13 metres. This range is sufficient for use in training of takeoffs and landings, which is the main aim of this paper. Another good finding is that during take off and landing, there is minimal occurrence of doppler frequencies. Meanwhile, results show that during practicing takeoffs and landings, it is possible to use radars for measuring altitude. This is very useful, mainly for inexperienced pilots, who cannot orrectly estimate altitude for fully safe landing.
Adam Babinec
Vehicle Detection, Vehicle Tracking, UAV, Aerial Imagery, Particle Filter
Zpracování dat (obraz, zvuk, text apod.) Robotika a umělá inteligence
In this paper we present a complex solution to automatic vehicle trajectory extraction from aerial video data, providing a basis for a cost-effective and flexible way to gather detailed vehicle trajectory data in traffic scenes. The video sequences are captured using an action camera mounted on a UAV flying above the traffic scene and processed off-line. The system utilizes video stabilisation algorithm and geo-registration based on RANSAC guided transformation estimation of ORB image feature sets. Vehicles are detected in scene using AdaBoost classifier constructed of Multi-Scale Block Local Binary Patterns features. The vehicle tracking is carried out by multi-target tracker based upon set of intra-independent Bayesian bootstrap particle filters specialized to deal with environmental occlusion, multi-target overlap, low resolution and feature salinity of targets and their appearance changes. The performance of the presented system was evaluated against hand-annotated video sequences captured in distinct traffic scenes. The analysis show promising results with average target miss ratio of 22.5 % while keeping incorrect tracking ratio down to 20.4 %.
Alena Obluková
syntax analysis, LL grammars, error recovery
Překladače a gramatiky
Parser is one of the most important parts of compiler. Syntax-Directed Translation is often used, that means that parser controls: semantic actions and generation of syntax tree. When the input contains an error, parser cannot continue and the whole compiler has to stop. Therefore, it is important that parser supports good error recovery. Error recovery requires parser to be modified with heuristic, so syntax analyzer can continue parsing even though an error is detected. There are several error-recovery strategies and methods. This paper describes one of them - acceptable-sets derived from continuations - continuation in LL parsers. This method is not so well known, however it is easy to explain and implement. We have implemented parser that uses this error recovery method. This method has been modified to be more encapsulated and clearer. Implemented parser can be used in lectures to demonstrate error recovery in top-down parser.
Michael Vlček
rain prediction, neural network, image processing
Zpracování dat (obraz, zvuk, text apod.) Robotika a umělá inteligence
This paper presents a software solution for making a short-term rain prediction. It focuses on predicting precipitation solely on the soil of Czech Republic, although it is possible to apply to other areas, if proper modifications are made. This solution uses meteoradar images from Czech radars and a specific machine learning algorithm called Artificial neural network. The received meteoradar images are further processed and fed to the neural network, which makes an informed prediction of upcoming precipitation for a specific location anywhere in Czech Republic. The project is in an early experimenting phase, and as of now it is delivering a short-term prediction with success rates up to 75% for the shortest of predictions (10 minutes). The prediction success and length has to rise yet. This solution provides a robust way to predict rain on a national scale. It can be further improved to be used on mobile devices using utilities like GPS.
Tomáš Winkler
Optimalizace procesu, Optimalizace procesu plánování, Správa úkolů v SharePoint
Informační systémy
Problémem, jímž se v této práci zabývám, je optimalizace procesu plánování sledování a vyhodnocování úkolů v oblasti managementu na oddělení Corporate Technology společnosti Siemens, Brno. Jedním z cílů článku je seznámit veřejnost s možným přístupem k řešení podobných problémů, které se vyskytují ve středně velkých a velkých organizacích. Po nastudování teorie CMMI a principů normy ISO 9001 daný proces optimalizuji automatizací některých opakujících se manuálních činností. Jelikož oddělení Corporate Technology využívá pro ukládání úkolů serveru SharePoint, je aplikace vyvíjena tak, aby dokázala spolupracovat se serverem SharePoint v konfiguraci, jež je typická pro velké organizace. Výsledkem je, že aplikace byla otestována v prostředí organizace nad reálnými daty a splňuje vše potřebné k tomu, aby ušetřila při procesu plánování sledování a vyhodnocování úkolů 50 % času. Aplikace prozatím nebyla nasazena do reálného provozu, jelikož nyní dochází k závěrečnému důkladnému testování. Výsledky práce mimo jiné dokazují užitečnost automatizace manuálních a neustále se opakujících činností probíhajících v rámci procesů organizace.
Pavel Černý
Bash framework, Atomické úlohy, Přednášky, Video server, Zpracování videa, Tokenové zpracování, Responzivní design
Webové technologie Informační systémy Zpracování dat (obraz, zvuk, text apod.) Uživatelská rozhraní
Cílem této práce je vytvoření komplexního systému pro automatizované zpracování videí z přednášek. Práce je rozdělena na dvě hlavní podúlohy. První je věnována serverové části - Bash frameworku, který je tvořen z několika oddělených atomických procesů. Vstupem tohoto bloku bude záznam přednášky a výstupem bude video s úvodní částí, titulky a synchronizovanou prezentací. Druhou důležitou částí je internetová aplikace, která bude sloužit pro přehrávání, editaci, vytváření procesů a administraci.
Jan Vašíček
Odhad nadmořské výšky, Konvoluční sítě, EXIF data
Zpracování dat (obraz, zvuk, text apod.)
Tato práce se zabývá automatickým odhadem nadmořské výšky kamery z obrazu. Úlohu jsem řešil pomocí konvolučních neuronových sítí, u nichž využívám schopnost učit se nové příznaky na základě trénovacích dat. Trénovací sada obrazů (dataset), která by obsahovala údaje o nadmořské výšce kamery, nebyla k dispozici, a proto bylo nutné vytvořit dataset nový. Schopnosti člověka v dané úloze také nebyly dříve testovány, proto jsem provedl uživatelský experiment s cílem změřit průměrnou kvalitu lidského odhadu nadmořské výšky kamery. Experimentu se zúčastnilo 100 lidí a výsledky ukazují, že průměrná chyba odhadu člověka je 879m. Automatický systém založený na konvoluční neuronové síti dosahuje lepších výsledků než člověk, neboť průměrná chyba odhadu se pohybuje okolo hodnoty 751m. Navržený systém může kromě samotného odhadu nadmořské výšky z obrazových dat nalézt uplatnění také ve složitějších úlohách, jako je vizuální geo-lokalizace kamery.
Peter Matula
reverse engineering, decompilation, data type recovery, cryptographic constants
Bezpečnost
Retargetable machine-code decompilation transforms a platform-independent executables into a high level language (HLL). Decompilers may be used by reverse engineers to manually inspect suspicious binaries (e.g. malicious software). However, modern malware is often very complex and its decompilation produces huge and enigmatic outputs. Therefore, reverse engineers are trying to use every bit of available information to aid their analysis. This paper presents a fast cryptographic constants searching algorithm. Based on the signature database, it recognises usage of constants typical for many well-known (cryptographic, compression, etc.) algorithms. Moreover, the results are used by AVG Retargetable Decompiler to make its output more readable. The presented algorithm is faster than any state-of-the-art solution and it is fully exploited in the decompilation process.
Martin Šimon
object tracking, bidirectional tracking, partial occlusion, long-term tracking, full occlusion, rough camera movement
Zpracování dat (obraz, zvuk, text apod.) Počítačová grafika
Visual object tracking with focus on occlusion, background clutter, image noise and unsteady camera movements, those all in a long-term domain, remain unsolved despite the popularity it experiences in recent days. This paper summarizes a related work which has been done in trackers field and proposes an object tracking system focused on solving mentioned problems, especially the occlusion, rough camera movements and the long-term task. To solve these problems we propose a system combined from three parts; the tracker, which is the core part, the detector, to re-initialize tracker after a failure or an occlusion, and a system of adaptive learning to handle long-term task. The tracker uses newly proposed approach of bidirectional tracking of points, which are generally weaker then commonly used keypoints. Outputs of both the tracker and the detector are fused together and the result is also used for the learning part. The proposed solution can handle mentioned problems well and in some areas is even better then the state-of-the-art solutions.
Radim Hrazdil
Multicopter, Quadcopter, UAV, ROS, Ultrasonic Sonar, Collision avoidance
Počítačová architektura a vestavěné systémy Zpracování dat (obraz, zvuk, text apod.) Robotika a umělá inteligence
There are a lot of people who like making models of planes, helicopters or multicopters, but not all of them can actually fly them. This article presents (HW/SW) system that prevents user from crashing into obstacles and provides convenient way to control any UAV (Unmanned Aerial Vehicle). The main target are vehicles equipped with Robotic operating system (ROS), however the device is designed to be easy to use for another platforms as well and because it is intended to be used on aerial vehicles, it is also designed to be light, extensible and energy-efficient. To achieve this I used ultrasonic sonars mounted on the UAV and connected to the Arduino. This project results in sonar-based distance measurement device with collision avoidance system ins ROS which is a starting point for further development of safety mechanisms and anti-crash user interface, for example using fuzzy logic to avoid collisions. Main contribution of this work is design and realization of a measuring device using Arduino for controlling ultrasonic sensors. Thanks to Arduino, the device can be used independently on platform. ROS packages can be used by other developers as a starting point for their projects.
Ondřej Krpec
Plagiarism, PHP, Plagiarism detection in PHP code, Code obfuscation, Haelstead metrics, Levenshtein algorithm, Document fingerpring, Winnowing algorithm, Tokenization, Abstract syntax tree
Zpracování dat (obraz, zvuk, text apod.) Překladače a gramatiky
This project develops a system for detecting plagiarism in sets of student assignments written in PHP language. Plagiarism is viewed as a form of code obfuscation where students deliberately perform semantics preserving transformations of an original working version to pass it off as their own. In order to detect such obfuscations we develop a tool in which we attempt to find transformations that have been applied, using several techniques and algorithms. The main goal is to provide fast and quality tool for plagiarism recognition that can be used at academic enviroment.
Martin Holkovič
SDN, dynamická identita, Pyretic, OpenFlow
Počítačové sítě
Jedným z posledných trendov firemných počítačových sietí je možnosť zapojiť si vlastné zariadenie do siete. Tento trend otvára nové výzvy pre sieťových administrátorov. Jedným z prístupov ako sa k~problému so správou veľmi dynamických sietí vysporiadať je správa pomocou identít používateľov. Namiesto vytvárania konfigurácie sieťových prvkov na základe pripojených koncových staníc (MAC adresa, IP adresa) sa konfigurácia vytvára podľa identity užívateľov, využívajúcich koncové stanice (meno užívateľa, pracovná skupina). Výsledkom práce je rožšírenie riadenia SDN sietí o znalosť identít používateľov pomocou systému pre detekciu a správu identít. Takto rozšírené riadenie umožňuje administrátorovi konfigurovať a spravovať sieť prostredníctvom identity používateľov. Súčasťou práce je taktiež vytvorenie prípadu použitia znázorňujúceho výhody tohto prístupu.
Věra Müllerová
HDR, high dynamic range imaging, de-ghosting, FPGA, real-time, video
Zpracování dat (obraz, zvuk, text apod.)
High dynamic range (HDR) imaging technology is becoming increasingly popular in recent years. A~standard and most common approach to obtain an HDR image is the multiple exposures fusion method that consists of combining multiple images of the same scene captured with different exposure times. This technique works perfectly only on static scenes. However, if there is a motion in the scene during the sequence acquisition, the resultant HDR image contains ghosting artefacts due to moving objects in the captured scene. In this paper, de-ghosting methods are reviewed and two of them - a bitmap movement detection based on a median threshold and a histogram based ghost detection - are proposed as the suitable techniques for a real-time video capturing and implementation on an FPGA (Field-Programmable Gate Array) architecture.
Petr Šebek, Martin Hrubý
Genetic Algorithm, Resource-Constrained Project Scheduling Problem, GARTH
Modelování a simulace
In this paper, I study the resource-constrained project scheduling problem and describe the novel genetic algorithm GARTH created by Martin Hrubý. GARTH is designed to find and eliminate unfavorable characteristics from an individual. This approach is opposing the standard way of thinking about genetic algorithms - to synthesize desirable characteristic in new individuals. To be able to recognize unfavorable characteristics, the algorithm creates a hypothesis about mutual time properties of particular jobs from the given problem instance. This hypothesis is called Run Time Hypothesis because it is created as the algorithm get to know specific problem instance. The topic of my paper is to develop this algorithm and to discover new techniques that could be used in computation of RCPSP.
Petr Dvořáček
kartézské genetické programování, aproximační počítání, optimalizace
Počítačová architektura a vestavěné systémy Nekonvenční výpočetní techniky
V posledních letech klademe stále větší důraz na energetickou úspornost integrovaných obvodů. Můžeme vytvořit aproximační obvody, které nesplňují specifikovanou logickou funkci, a které jsou cíleně navrženy ke snížení plochy, zpoždění a příkonu. Tyto přibližně pracující obvody lze využít v mnoha aplikacích, kde lze tolerovat chyby, obzvláště ve zpracování obrazu. Tato práce popisuje evoluční návrh aproximačních obvodů pomocí kartézského genetického programování (CGP). Díky paralelnímu výpočtu fitness a různým akceleracím byla urychlena evaluace 8-bitové násobičky více než 170 krát oproti standardnímu přístupu. Pomocí inkrementální evoluce byly vytvořeny různé aproximační násobičky a použity v procesu potlačení nemaximálních hodnot v detekci hran.
Petr Heřman
Levný robot, Firmware řídící a senzorové jednotky, PIC mikrokontrolér, ROS
Robotika a umělá inteligence
Tato práce popisuje návrh robota z cenově dostupného materiálu. Implementaci firmware vlastní jednotky nižšího řízení založené na mikrokontroléru PIC, která má na starost řízení motorů, získávání dat ze senzorů a komunikaci s jednotkou vyššího řízení. Dále se věnuje realizaci napojení na robotický operační systém ROS a jeho standardní struktury umožňující využití existujících balíčku pro ovládání robota a zobrazování dat z jeho senzorů. Vyrobený robot je modelem automatické sekačky trávníku, ale celé řešení je univerzální. Řídící a senzorovou jednotku, jež je spojovací komponentou mezi podvozkem a počítačem s ROS, lze bez větších obtíží využít i u jiných robotů.
Barbora Franková
Softwarově definované sítě, OpenFlow, OpenDaylight, Zákonné odposlechy, Sec6Net
Počítačové sítě
Tato práce se zabývá využitím softwarově definovaných sítí v oblasti zákonných odposlechů. Staví na implementaci systému pro zákonné odposlechy vyvinuté v rámci projektu Sec6Net. Přínosem práce je rozšíření tohoto systému v několika oblastech, ve kterých SDN nabízí potenciál ke spolehlivější identifikaci odposlouchávaných uživatelů a efektivnějšímu využití sítě. První zmíněný cíl je realizován prostřednictvím modulu funkce dynamické identity, druhý pak pomocí modulu pro dynamickou konfiguraci síťových sond.
Miroslav Skácel
Query-by-Example, Spoken Term Detection, Dynamic Time Warping, acoustic pattern search, unsupervised detection in speech
Zpracování dat (obraz, zvuk, text apod.)
This paper aims at a search in a large speech database with zero or low-resource languages by spoken term example in a spoken utterance. The data can not be recognized by Automatic Speech Recognition system due to a lack of resources. A modern method for searching patterns in speech called Query-by-Example is investigated. This technique exploits a well-known dynamic programming approach named Dynamic Time Warping. An analysis of different distance metrics used during the search is provided. A scoring metric based on normalized cross entropy is described to evaluate the system accuracy.
Václav Pfudl
real-time rendering, normal-mapping, shadow-mapping, lens-flare, screen space ambient occlusion, skydome, skeletal animation, movement artificial intelligence, group behaviors
Počítačová grafika
The aim of this text was to describe implementation of software that would be able to simulate a scene with walking characters in real-time with emphasis on rendering level of realism. The application should be then able to record video sequences of such simulated scenes. Such video sequences could be used as an input (test data) for people counting systems. The problem was divided into three major subproblems: character animation, artificial intelligence for character movement and advanced rendering techniques. The character animation problem is solved by creating a model of the character and using skeletal animation. To achieve characters moving in a scene autonomously path finding (A* algorithm) and group behaviors (steering behaviors) were implemented. Realism in a scene is added by implemented rendering methods such as normal-mapping, shadow-mapping, deffered rendering, skydome, lens flare effect and screen space ambient occlusion. Rendering stage of a scene can be easily parametrized through implemented GUI. Implemented application provides user with easy way of setting a scene with walking pedestrians, setting its visualization and to record the result.
Stanislav Krajcir
funkčná verifikácia, UVM, SystemVerilog, odolnosť systémov proti poruchám
Počítačová architektura a vestavěné systémy
Problém zabezpečenia odolnosti systémov proti poruchám patrí medzi veľmi aktuálne témy. Zariadenia, ktoré sú vysielané do vesmíru bývajú vystavené veľmi extrémnym podmienkam, ktoré môžu ovplyvniť ich funkčnosť. Z hľadiska efektívneho využívania zdrojov je dôležité mať možnosť overiť mieru odolnosti týchto zariadení proti poruchám ešte predtým, než im budú vystavené v skutočnom prostredí. Jedným zo spôsobov je využitie softvérovej simulácie. V rámci simulačného prostredia sa do zariadenia injektujú poruchy s cieľom overenia miery odolnosti daného zariadenia proti poruchám. Cieľom tejto práce je predstaviť možnosti automatizácie celého tohto procesu s využitím funkčnej verifikácie. Funkčná verifikácia umožňuje celý tento proces zrýchliť a zefektívniť. Jedná sa o inovatívne riešenie, pretože tento spôsob využitia funkčnej verifikácie nebol zatiaľ nikde realizovaný. V rámci práce je predstavený návrh a implementácia verifikačného prostredia. Verifikačné prostredie zohráva veľmi dôležitú úlohu v rámci celého procesu overovania odolnosti systémov proti poruchám. Výsledky tejto práce budú využité v rámci výskumu odolnosti systémov proti poruchám, ktorý prebieha na Ústave počítačových systémov Fakulty informačných technológií VUT.
Tomáš Lysek
progressive photon mapping, global illumination, gpgpu
Počítačová grafika
Pro tvorbu fotorealistických obrazů je nutné použít časově náročné výpočetní techniky - globall illumination techniky. Mezi nejnovější techniky patří photon mapping a jeho progresivní varianta. Tento článek se bude zabývat implementací progressive photon mappingu (ppm) na dnešních grafických kartách a porovná rychlost implementace mezi CPU variantou a GPU variantou. Dále vybere nejpomalejší blok ppm a navrhne urychlení. Navrhnuté urychlení je zclustrování hitpointů do blízkých clusterů a použítí pravidelné mřížky pro photony.
Matej Dubeň
Kolaboratívne odporúčanie, Obsahové odporúčanie, Agregácia udalostí, Agregácia miest, Android, Data mining, Kosínusová miera podobnosti
Databáze a data-mining Robotika a umělá inteligence
Cieľom tohoto článku je priblížiť návrh aplikácie Let's Go Out! pre mobilné telefóny s operačným systémom Android, ktorá vznikla vrámci bakalárskej práce autora tohoto článku. Zaoberá sa inteligentným a cieleným odporúčaním. Autor popisuje motivácie pre vznik aplikácie, samotný návrh a zaujímavé časti implementácie. Obsah článku je zameraný na odporúčacie systémy a podrobne vysvetľuje ich funkcionalitu ako vo všeobecnej rovine, tak v konkrétnej rovine, ktorá spadá pod vývoj aplikácie Let's Go Out!. Vyvinutá aplikácia je voľne prístupná na stiahnutie. Avšak kvôli kontinuálnemu vývoju sa aplikácia dynamicky mení ako po grafickej stránke tak aj po funkcionálnej stránke, čo dočasne znemožňuje hĺbkové testovanie.
Michal Matýšek
optimalizace, mobilní zařízení, zobrazování, engine Unity, hry
Počítačová grafika
Tento článek popisuje optimalizační postupy, které umožňují, pomocí enginu Unity, efektivně vykreslovat složité herní scény na mobilních zařízeních. Proces zobrazování komplexního prostředí vytvořeného pomocí prezentovaných technik je na mobilních telefonech i tabletech několikanásobně efektivnější, oproti klasickým přístupům využívajícím dostupné komponenty a funkce enginu Unity. Výsledné scény vytvářejí testovací prostředí pro měření, analýzu a porovnávání efektivity různých optimalizačních metod.
Kateřina Žmolíková
speech recognition, deep neural networks, acoustic modelling
Zpracování dat (obraz, zvuk, text apod.)
This paper presents a modification of neural network structure in speech recognition system which leads to improving the accuracy of the system. Deep neural networks are widely used as a part of acoustic model which aims to predict the score of acoustic units given the speech signal. The input of deep neural network is a sequence of speech frames. Typically the network tries to classify the central one of these frames while using the context frames as an additional information. In the multiframe model the output of the network is extended to predict classes of multiple frames. This modification leads to obtaining multiple predictions for one frame. Combining these predictions results in better accuracy of the network. The approach was tested on Wall Street Journal dataset. Experimenting with different sizes of the context on the input and output of the network lead to 7% and 12% relative improvement on two testsets.
Jan Bednařík, David Herman
Human gesture recognition, Human tracking using depth sensor, Human tracking from top view, 3D human body pose, Human model fitting, Articulated human model, Depth sensor
Zpracování dat (obraz, zvuk, text apod.) Počítačová grafika
In this paper we present a system suitable for real-time human tracking and predefined human gestures detection using depth data acquired from Kinect sensor installed right above the detection region. The tracking part is based on fitting an articulated human body model to obtained data using particle filter framework and specifically defined constraints which originate in physiological properties of the human body. The gesture recognition part utilizes the timed automaton conforming to the human body poses and regarding tolerances of the joints positions and time constraints. The system was tested against the manually annotated 61-minutes-long recording of the depth data where ten different people were tracked. The 92.38\% sensitivity was reached as well as the real-time performance exceeding 30 FPS. No a priori knowledge about the tracked person is required which makes the system suitable for seamless human-computer interaction solutions, security applications or entertainment industry where the position of sensors must not interfere with the detection region.
Jakub Špaňhel
License plate detection, License plate recognition, Character segmentation, Character recognition, Intesity profiles, Neural network recognition, Cascade classifiers
Zpracování dat (obraz, zvuk, text apod.)
This paper aims at proposing an Automatic License Plate Recognition system (ALPR) from still images. This ALPR system is based on license plate detection by a cascade classifier and neural network (NN) license plate recognition. The system was developed in multiple iterations and different methods of license plate detection and character recognition were used for each of them. Comparison of the methods used is also presented. First of all, license plate location is estimated using cascade classifier. Secondly, individual characters are separated from the detected license plate. Finally, each of the separated characters is recognized using neural network. The system achieves an average precision rate of 88.94% for license plate detection, 83.81% for license plate recognition and has the an average success rate of 74.55% in total. This paper describes different solutions to license plate detection and recognition issues and compares some of the commonly used methods in this field.
Tomáš Poledník
Fire detection, Image processing, Video sequence, Machine Learning by deep convolutional neural networks, Computer vision, Caffe, Fire modelling, Fire scene compositing
Počítačová grafika
This paper deals with fire detection in image and video by machine learning, specifically deep convolutional neural networks, using Caffe framework. The aim is to create a vast set of testing data that could be used as the base element of machine learning detection and create a detector usable in real-time application. For the purposes of the project a set of tools for fire sequences creation, their segmentation and automatic labeling is proposed and created together with a large test set of short sequences with artificial modelled fire.
Petr Palata
fast segmentation, interactive montage, mobile application, segmentation preview
Zpracování dat (obraz, zvuk, text apod.) Uživatelská rozhraní
The aim of this paper is to introduce an application for mobile phones for real-time interactive montage. To be able to provide a preview of the segmentation to the user in real-time on a mobile phone, a fast segmentation algorithm must be introduced. We address this issue by proposing a segmentation algorithm which runs in real-time on mobile devices and is suitable as a preprocessing step to more accurate but slower segmentation algorithms. We also elaborate on solving user- experience issues connected to user interface design of the mentioned application.
Jiří Kučera
rewriting systems, state grammars, pure pushdowns, infinite hierarchy
Informační systémy
The aim of this paper is to present a~modification of #-rewriting systems, called #-rewriting systems with pure pushdowns, and their relation to state grammars. Briefly, the #-rewriting systems with pure pushdowns are #-rewriting systems equiped with pushdowns containing only terminal symbols (herefrom comes their denomination as 'pure'), and a pushdown containing terminal and nonterminal symbols, which is used as an auxiliary workspace. It will be shown that this extension leads to relation between programmed grammars and state grammars.