Nalazite se na CroRIS probnoj okolini. Ovdje evidentirani podaci neće biti pohranjeni u Informacijskom sustavu znanosti RH. Ako je ovo greška, CroRIS produkcijskoj okolini moguće je pristupi putem poveznice www.croris.hr
izvor podataka: crosbi !

An Application for LED Patterns Recognition with a Smartphone Camera (CROSBI ID 428183)

Ocjenski rad | diplomski rad

Pejić, Lovro An Application for LED Patterns Recognition with a Smartphone Camera / Pripužić, Krešimir (mentor); Zagreb, Fakultet elektrotehnike i računarstva, . 2019

Podaci o odgovornosti

Pejić, Lovro

Pripužić, Krešimir

engleski

An Application for LED Patterns Recognition with a Smartphone Camera

The Android Operating System is based on the Linux Operating System. It was originally developed by Android, Inc. The Android Operating System architecture consists of several layers. These are: Linux Kernel, Libraries, Android Runtime, Application Framework, Applications. From a very basic point of view, it is easy to notice that every single Android application consists of two key parts. The first part includes so-called “Java documents”, while the second part refers to the design of the graphical user interface (GUI) which is designed in XML (Extensible markup language) language. Android application directory has a tree-shaped structure. Some of the more important directories are: java/, res/, Gradle Scripts/, Manifests/. Each Android application is made up of several components that can communicate with other components within the same or other applications as needed. These are: Activities, Services, Broadcast receiver, Content provider. REST is an architectural style for providing standards between computer systems on the web. A very important feature of the systems that follow the REST paradigm is that they are stateless which means that the server does not need to know anything about the client state and vice versa. When using the REST architecture, clients send requests in order to modify or retrieve resources and servers send responses to those requests. A request generally consists of several parts, such as: An HTTP verb, a header, a path to source, a message body containing data. There are four basic HTTP verbs that are used in the requests: GET, PUT, POST, DELETE. Responses from the server contain status codes to alert the client to information about the success of the operation. The most popular status codes are: 200 – OK, 201 – CREATED, 400 – BAD REQUEST, 403 – FORBIDDEN, 404 – NOT FOUND, 500 – INTERNAL SERVER ERROR. JSON is a lightweight format for storing and transporting data. JSON is often used when data is sent from the server to the client and vice versa. JSON is simple and easy to understand. Node.js is an open-source and cross-platform JavaScript runtime environment built on Chrome’s V8 JavaScript engine. It can be used for almost any kind of project. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight. MongoDB is a cross-platform document-oriented database program developed by MongoDB, inc. under SSPL licence. It is classified as a NoSQL database. MongoDB stores data in flexible, JSON-like documents. The MongoDB document model maps directly to the objects in your application code, so it is always possible to work with predifined object classes. Due to the fact that MongoDB is a distributed database at its core, it has high availability and horizontal scaling possibility. OpenCV (Open Source Computer Vision Library) is an open source and cross- platform computer vision software library. It is originally developed by Intel and released under the BSD 3-Clause License. OpenCV was built to accelerate the use of machine perception in the commercial products and to provide a common infrastructure for computer vision applications. The OpenCV library consists of more than 2500 optimized algorithms, which includes a comprehensive set of computer vision and machine learning algorithms. The OpenCV4Android Library is a version of the OpenCV library that is customized and optimized for work on mobile devices with Android Operating System. LED Pattern Detector is a mobile application designed for the Android Operating System that is used to determine the device error according to the frequency of blinking of its certain LED light source. The whole application consists of three activities. That is StartupActivity, MainActivity and ResultsActivity. StartupActivity is an activity that handles remote database synchronization process. MainActivity is an activity that implements OpenCV’s CvCameraViewListener2 interface and whose main task is to process each camera frame. It is separated to six different modes. These are: InitialMode, LedDetectingMode, ManualCalibrationMode, MeasuringMode, PreAutoCalibrationMode, PreManualCalibrationMode. ResultsActivity’s task is quite simple. It calculates LED source blinking frequency based on the total blinks number and the measuring duration, after which it displays the corresponding description of the calculated frequency which was obtained from the local database. Making this paper truly impressed me because it has enriched my knowledge for a great new design experience that consists of two large parts, the client and the server. More importantly, I have learned a lot about using modern technologies from the domain of computer vision that is anticipated even greater growth and the prospective future.

Java ; JavaScript ; LED source ; Pattern ; Pattern detector ; Android ; Android history ; Android architecture ; Linux ; Application ; Mobile application ; Android Studio ; OpenCV ; Computer vision ; Client ; Server ; Database ; Local database ; Remote database ; JSON ; Node.js ; MongoDB ; REST ; Real-time processing

nije evidentirano

nije evidentirano

nije evidentirano

nije evidentirano

nije evidentirano

nije evidentirano

Podaci o izdanju

56

11.07.2019.

obranjeno

Podaci o ustanovi koja je dodijelila akademski stupanj

Fakultet elektrotehnike i računarstva

Zagreb

Povezanost rada

Elektrotehnika, Računarstvo