Repository of FERIT Osijek
Not a member yet
4053 research outputs found
Sort by
Caloric value estimation from food images using supervised machine learning
Glavni cilj ovog završnog rada bio je razviti model za procjenu kalorijske vrijednosti
hrane koristeći nadzirano strojno učenje i slike obroka. U tu svrhu izrađen je specifičan podatkovni skup
koji sadrži slike najčešćih namirnica i obroka, zajedno s pripadajućim kalorijskim vrijednostima. Ključni
korak u razvoju modela bilo je izdvajanje značajki iz slika korištenjem algoritama kao što su HOG, LBP i
LDA. Kako bi se poboljšala preciznost modela, implementirane su i metode za odabir značajki, uključujući
informacijsku dobit, Chi-kvadrat test i omotač. Modeli trenirani za procjenu kalorijske vrijednosti
obuhvaćali su algoritme k-najbližih susjeda (KNN), regresiju potpornih vektora (SVR) i stabla odlučivanja
(DT). Iako su rezultati pokazali određene potencijale, model nije postigao dovoljnu preciznost, što je
vidljivo kroz relativno visoke vrijednosti mjere RMSE. Uzrok tome dijelom je ograničenost korištenog
podatkovnog skupa, ali i složenost problema prepoznavanja hrane s jedne slike. Unatoč tome, ovaj rad
pruža vrijedan uvid u problematiku procjene kalorija iz slika te postavlja temelje za buduća istraživanja.
U budućnosti je preporučljivo proširiti podatkovni skup, uključiti složenije obroke te istražiti naprednije
metode strojnog učenja, poput dubokog učenja, kako bi se poboljšala preciznost modela i omogućila
njegova primjena u svakodnevnom životu korisnika.The main goal of this thesis was to develop a model for estimating the caloric value of food
using supervised machine learning and food images. For this purpose, a specific dataset was created
containing images of the most common food items and meals, along with their respective caloric values.
A key step in the development of the model was feature extraction from images using algorithms such
as HOG, LBP, and LDA. To improve model accuracy, feature selection methods were also implemented,
including Information Gain, Chi-Square test, and Wrapper method. The models trained for estimating
caloric values included k-nearest neighbors (KNN), support vector regression (SVR), and decision trees
(DT). Although the results showed some potential, the model did not achieve satisfactory accuracy, as
evidenced by relatively high RMSE values. The causes for this are partly due to the limitations of the
dataset used, as well as the complexity of recognizing food from a single image. Nonetheless, this thesis
provides valuable insights into the issue of calorie estimation from images and lays the foundation for
future research. In the future, it is recommended to expand the dataset, include more complex meals,
and explore advanced machine learning methods such as deep learning, to improve the accuracy of the
model and enable its application in everyday user scenarios
RGB Christmas Star
U ovom završnom radu napravljena je unaprijeđena božićna zvijezda kontrolirana
ESP8266 mikrokontrolerom, osvjetljenje su pružile WS2812B LED diode kontrolirane mikrokontrolerom.
Programiranje mikrokontrolera je odrađeno u Arduino IDE razvojnom sustavu. Sklopovski dio je pravilno
povezan te korisnik kontrolira osvjetljenje i efekte zvijezde putem Internet stranice koja je objašnjena u
radu. U radu su objašnjene softverske i sklopovske karakteristike završnog rada, ključne funkcionalnosti,
sve je popraćeno slikama programskog koda i sklopovskog dijela. Prikazano je testiranje gotovog
završnog rada.In this final project, an improved Christmas star controlled by an ESP8266 microcontroller was
created, with lighting provided by WS2812B LED strips controlled by the microcontroller. The
microcontroller was programmed using the Arduino IDE development environment. The hardware part
is properly connected, and the user controls the star's lighting and effects via a Web interface, which is
explained in the paper. The software and hardware characteristics of the final project are explained,
along with the key functionalities, all accompanied by images of the code and hardware components.
The testing of the completed final project is also presented
2D computer game
Unutar ovog rada prikazana je izrada 2D računalne igre u Unity Engine-u. Cilj igre je
ostati što duže živ i postići što veći rezultat te oboriti prethodne rekorde koji su bili postavljeni. Igra je
napravljena u Unity okruženju, a kodovi su pisani pomoću C# programskog jezika. Svi likovi unutar igre
su napravljeni u Piskel web aplikaciji, a zvuk uređen u AudioMass web aplikaciji. U igri igrač kontrolira
plavi kvadrat koji mora izbjeći nadolazeće prepreke i ukoliko želi skupljati dodatne bodove. Prepreke se
vremenom sve češće pojavljuju i postaju sve brže što ih čini teže za izbjeći. Mehanike igre su pokretane
skriptama. Igra se sastoji od glavnog izbornika koji nudi opciju za pokretanje igre, prikaza trenutnog
rezultata unutar igre i izbornika za kraj igre koji nudi opcije za ponovno pokretanje ili povratak na glavni
izbornik. Prikazuje trenutni i najveći rezultat.This paper presents the development of a 2D computer game in Unity Engine. The objective of
the game is to stay alive as long as possible and achieve the highest score, while breaking previous
records that have been set. The game is developed in the Unity environment, and the code is written in
the C# programming language. All characters in the game are created using the Piskel web application,
and the sound is edited in the AudioMass web application. In the game, the player controls a blue
square that must avoid oncoming obstacles and, if desired, collect additional points. The obstacles
appear more frequently and become faster over time, making them harder to avoid. The game
mechanics are driven by scripts. The game consists of a main menu offering the option to start the
game, an in-game score display, and a game over menu offering options to restart the game or return
to the main menu. It displays both the current and highest scores
WS2812D Based WiFi Display
Ovaj završni rad bavi se razvojem WiFi pokaznika temeljenog na WS2812D svjetlećim
diodama. Glavni problem bio je dizajnirati sustav koji omogućuje korisnicima upravljanje dinamičkim
prikazom na LED matrici putem mrežnog sučelja. Rad je uključivao odabir mikroupravljača ESP8266 zbog
njegove bežične funkcionalnosti i izrada tiskane pločice (PCB) koja podržava WS2812D LED diode.
Smjernice za rješavanje problema obuhvaćale su razvoj sheme sklopa, dizajn PCB-a i izradu prototipa
koristeći KiCAD i JLCPCB. Postignuti rezultati uključuju uspješno upravljanje LED prikazima putem web
sučelja, što omogućuje dinamično mijenjanje boja, uzoraka i prikazivanje tekstualnih informacija. Ovaj
rad pokazuje kako integrirati moderne tehnologije u interaktivne sustave za poboljšanje korisničkog
iskustva.This thesis focuses on the development of a WiFi display based on WS2812D light-emitting
diodes. The main problem was to design a system that allows users to control a dynamic display on an
LED matrix via a web interface. The work involved selecting the ESP8266 microcontroller for its wireless
functionality and creating a printed circuit board (PCB) that supports WS2812D LEDs. The problemsolving
approach included developing the circuit schematic, designing the PCB, and prototyping using
KiCAD and JLCPCB. Achieved results include successful management of LED displays through a web
interface, enabling dynamic color changes, patterns, and text display. This work demonstrates how to
integrate modern technologies into interactive systems to enhance user experience
INMARSAT system evolution
sažetak (hrvatski): U ovom radu prikazan je nastanak Inmarsat organizacije. Detaljno su opisane tri
tehnološke komponente koje čine Inmarsat sustav. Predstavljeni su standardi koji su trenutno u upotrebi
te standardi koji više nisu podržani od Inmarsat-a zbog zastarjele tehnologije. Navedeni su načini
prijenosa podataka te slanja poruka pogibelji. Ukratko je opisana budućnost Inmarsat sustava.abstract: This paper presents the origin of the Inmarsat organization. The three technological
components that make up the Inmarsat system are described in detail. The standards that are currently
in use and the standards that are no longer supported by Inmarsat due to outdated technology are
presented. The methods of transferring data and sending messages in distress are listed. The future of
the Inmarsat system is briefly described
Web3 application for managing projects
Završni rad opisuje izradu web3 aplikacije za vođenje projekata unutar tvrtke koja
pruža sigurno pohranjivanje dnevnih zadataka i poruka zaposlenika na blockchainu. Rad istražuje
primjenu blockchain tehnologije i njene prednosti, kao što su sljedivost i transparentnost podataka.
Korištenjem Node.js platforme, Express.js okvira te Solidity pametnih ugovora, aplikacija omogućuje
administraciju projekata i praćenje zadataka na Volta testnoj mreži. Opisane su ključne funkcionalnosti
aplikacije, uključujući mogućnost postavljanja projekata na blockchain te pohranjivanje komunikacije
između zaposlenika pomoću Metamask sučelja. Rad također ističe sigurnosne aspekte pohranjivanja
podataka na blockchain te potencijalne nedostatke kao što su sporost zapisivanja i troškovi transakcija.
Kroz rad je demonstrirana implementacija web3 tehnologija te prikazana njihova primjena u stvarnom
poslovnom okruženju.Web3 application for project managment The final thesis describes the development of a
web3 application for managing projects within a company, which provides secure storage of daily tasks
and employee messages on the blockchain. The paper explores the application of blockchain technology
and its advantages, such as traceability and data transparency. By utilizing the Node.js platform, the
Express.js framework, and Solidity smart contracts, the application enables project administration and
task tracking on the Volta test network. The key functionalities of the application are described,
including the ability to deploy projects on the blockchain and store employee communication using the
Metamask interface. The thesis also highlights the security aspects of storing data on the blockchain and
potential drawbacks such as the slow speed of data entry and transaction costs. The work demonstrates
the implementation of web3 technologies and showcases their application in a real business
environment
Information and communication technologies for measurement, monitoring and control in power systems
U uvodu se opisuju elektroenergetski sustavi te se navode njegovi ključni dijelovi.
Navedene su neke od najpoznatijih vrsta elektrana i načini prijenosa električne energije do potrošača. U
nastavku rada opisani su sustavi za nadzori i kontrolu elektroenergetskih sustava. Neki od njih su
pametna brojila, AMI, AMR sustavi čija je najčešća svrha daljinsko mjerenje količine potrošnje na strani
potrošača. Opisani su kompliciraniji sustavi poput SCADA i EMS sustava koji se koriste unutar
elektroenergetskih sustava koji služe za napajanje velikih područja te DERMS sustavi koji se najčešće
koriste u sklopu manjih sustava čija se proizvodnja električne energije temelji na obnovljivim izvorima.
Opisana je njihova arhitektura i glavni dijelovi te razni protokoli koji se koriste u komunikaciji. Kao
zadnja cjelina, navodi se povijesni razvoj i napredak elektroenergetskih sustava i opreme koja se u njima
koristi. Pruža se pogled na razvoj SCADA sustava kroz povijest i spominje se umjetna inteligencija kao
budućnost u nadzoru elektroenergetskih sustava.The basics of power systems and its key parts are described in the introduction. Most common
types of power plants are presented, alongside their key advantages and disadvantages. Electrical grid
and electrical substations are also explained in the introduction. Second part of this thesis describes
monitoring systems like AMI and AMR, but it also focuses on more complex systems like SCADA and
EMS that are used not only for monitoring, but for control and supervisory of the power systems.
DERMS is another important system that is described in this part of thesis. DERMS plays a big role in
managing power systems whose production of electrical energy is based on renewable sources of
energy. This part doesn't only describe the features of every system, it also describes their key elements
and sensors that make them precise and accurate. Last part of the thesis puts the development of
technology throughout the years into perspective. It shows how different new, modern systems are
compared with the first systems that were used. A distinction is made between different generations of
SCADA systems. Artificial intelligence is referred to as the future of managing, monitoring and
supervisory of power systems
Cybersecurity threats in social networks
Završni rad podijeljen je u šest cjelina. U prvoj cjelini obrađene su najčešće vrste
kibernetičkih prijetnji. Druga cjelina govori o posljedicama kibernetičkih prijetnji i njihovim utjecajima na
korisnika i kompanije. Treća cjelina sadrži strategije za zaštitu od kibernetičkih prijetnji. U četvrtoj cjelini
analizirani su stvari primjeri kibernetičkih napada. Peta cjelina se bavi detekcijom prijetnji, upravljanjem
ranjivostima te izazovima i ograničenjima umjetne inteligencije u kontekstu kibernetičke sigurnosti. U
šestoj cjelini obrađeni su zakoni i regulative koji se bave kibernetičkom sigurnosti u Europi i svijetu.
ključne riječi (hrvatski ): Društvene mreže, Kibernetička sigurnost, Kibernetički napad, Kibernetičke
prijetnje, Umjetna inteligencijaThe bachelor thesis is divided into six parts. The first part deals with the most common types of
cyber threats. The second part talks about the consequences of cyber threats and their impact on users
and companies. The third unit contains strategies for protection against cyber threats. In the fourth unit,
examples of cyber attacks are analyzed. The fifth unit deals with threat detection, vulnerability
management, and challenges and limitations of artificial intelligence in the context of cyber security. In
the sixth unit, the laws and regulations dealing with cyber security in Europe and the world are dealt
with
Algorithms for finding shortest path in graphs in C++ programming language
U ovom završnom radu cilj je bio opisati, pojasniti i usporediti najpoznatije i
optimizirane algoritme za pronalazak najkraćeg puta u grafu s naglaskom na njihovu implementaciju i
usporedbu u programskom jeziku C++. Problem najkraćeg puta je temelj za razne primjene u i rješavanje
problema u računarstvu, mrežnom usmjeravanju i logistici. Prvo, predstavljamo osnovni koncept grafa i
problem najkraćeg puta, definiramo grafove, što su bridovi, težine, čvorovi, usmjereni i neusmjereni
graf, te graf s pozitivnim i negativnim težinama. Nakon toga definiramo način na koji prikazujemo
grafove u matematičkom i računalnom smislu za najlakše pohranjivanje i rukovanje s njima te kako
bismo ih mogli implementirati u programskom jeziku. Poslije detaljno opisujemo ključne algoritme za
pronalazak najkraćeg puta u grafu, radimo detaljnu implementaciju tih algoritama u C++, uspoređujemo
im performanse i testiramo ih s različitim podacima. Završni rad zaključujemo sa savjetima za odabir
odgovarajućeg algoritma ovisno o potrebama i zahtjevima problema. Prvo, predstavljamo osnovni
koncept grafa i problem najkraćeg puta, definiramo grafove, što su bridovi, težine, čvorovi, usmjereni i
neusmjereni graf, te graf s pozitivnim i negativnim težinama. Nakon toga definiramo način na koji
prikazujemo grafove u matematičkom i računalnom smislu za najlakše pohranjivanje i rukovanje s njima
te kako bismo ih mogli implementirati u programskom jeziku. Poslije detaljno opisujemo ključne
algoritme za pronalazak najkraćeg puta u grafu, radimo detaljnu implementaciju tih algoritama u C++,
uspoređujemo im performanse i testiramo ih s različitim podacima. Završni rad zaključujemo sa
savjetima za odabir odgovarajućeg algoritma ovisno o potrebama i zahtjevima problema.This undergraduate thesis task was to describe in detail, explain and compare most common
and optimized algorithms for shortest path problem in graph with accent on their implementation and
comparison in C++ programming language. Shortest path problem is base for different system
implementations in computer science, network routing and logistics. Firstly, we introduce base concepts
of graphs and shortest path problem, defining graphs, what are edges, weights, nodes, or vertices,
directed and undirected graph and graph with positive and negative edge weights. After that we define
principle and mathematical form how we represent graphs in computer science for easiest storing in
memory and handling with them so we could implement them in programming language. With detailed
description we define key algorithms for shortest path problem in graph, making detail implementation
in C++ of every described algorithm, we compare their performance and test them with different data
sets. This work is concluded with tips for choosing appropriate algorithm depending on system and
problem needs. Firstly, we introduce base concepts of graphs and shortest path problem, defining
graphs, what are edges, weights, nodes, or vertices, directed and undirected graph and graph with
positive and negative edge weights. After that we define principle and mathematical form how we
represent graphs in computer science for easiest storing in memory and handling with them so we could
implement them in programming language. With detailed description we define key algorithms for
shortest path problem in graph, making detail implementation in C++ of every described algorithm, we
compare their performance and test them with different data sets. This work is concluded with tips for
choosing appropriate algorithm depending on system and problem needs
Analysis and comparison of methods for reducing inrush current when switching on the transformer
U ovom radu opisan je problem udarnih struja koje nastaju pri samom uklopu
transformatora. Glavna tema rada je proučavanje i pronalaženje najboljih metoda za smanjenje iste. U
početku su predstavljene izvedbe i građa transformatora, a zatim smo udarne struje. To su struje koje
mogu imati višestruko veće vrijednosti od nominalnih, koje imaju transformatori u radnim uvjetima, što
može uzrokovati znatna oštećenja za stroj. Proučavanjem i istraživanjem, detaljno su opisani fenomeni
udarnih struja, faktori koji utječu na njeno nastajanje i najbitnije, metode za smanjenje. U radu je
opisano ukupno devet metoda za smanjenje udarnih struja, naravno ima ih i više, ali odabrane su neke
od najpouzdanijih i najučinkovitijih. Također, odabrane metode za smanjenje udarne struje su jedne od
najčešće korištenih, a u svakom potpoglavlju su detaljno opisane.This paper describes the main problem with today's transformers, which is inrush currents.
Inrush currents, which are occurring during the initial connection of the transformer, pose a significant
problem for transformers, and the main focus of the paper was to study and find the best methods for
reducing them. Initially, we focused on the design and construction of transformers to become familiar
with some basics, and then we moved on to addressing the main topic, which is inrush currents. These
are currents that can have values several times higher than the nominal values that transformers have
under operating conditions, potentially causing significant damage to the machine. Through study and
research, the phenomena of inrush currents, the factors influencing their occurrence, and most
importantly, methods for reducing them are described in detail. A total of nine methods for reducing
inrush currents are described in the paper; of course, there are more, but some of the most reliable and
effective ones were selected. Additionally, the chosen methods for reducing inrush currents are among
the most commonly used, and each subchapter provides a detailed description