ICT3903 – Final Year Project in Computer Engineering Proposals 2016 / 2017 ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 1 Image Processing Techniques for Brain Hemorrhage Detection in Head CT Scans Supervisor(s): Co-supervisor (if any): Problem Background Prof. Ing. Carl James Debono, carl.debono@um.edu.mt Dr Paul Bezzina, paul.bezzina@um.edu.mt Dr Francis Zarb, francis.zarb@um.edu.mt Hemorrhagic stroke is a kind of cerebrovascular disease that causes vascular rapture and bleeding in the brain region. CT scans can be used for diagnostics and to determine whether a patient needs surgery, according to the volume of blood and the location of the hemorrhage. Accurate diagnostics depend on the quality of the CT scan which varies with patient positions and imaging artifacts. Moreover, small volumes of blood can be difficult to detect. Image processing techniques provide tools to support diagnostics. • Project Objective(s): • • Project Resources • • • • Industrial Partners involved: No Apply image processing techniques on CT scans to detect the presence of hemorrhage in the brain Develop a curve-fitting algorithm to enclose the detected region Evaluate the accuracy of the algorithm and compare to published work Budget: €__0___ CT scans will be made available by Malta’s General Hospital OpenCV or Matlab Peer-reviewed literature (journals and conference proceedings) Expected Project Deliverables: • • • Software developed Experimental results Analysis and comparison of results Student background / interest: • • • Programming Image processing Medical engineering Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. ■ The project has ethical issues; please specify. Project will analyse patient medical data ■ The project involves human subjects; please specify. The CT scans will come from patients at Malta’s General Hospital ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 2 3D Video Content Creation and Display Supervisor(s): Co-supervisor (if any): Prof. Ing. Carl James Debono, carl.debono@um.edu.mt NONE Problem Background Immersive multimedia communication will play an important role in the near future. 3D video is part of this experience. Most of the current technology relies on stereoscopic displays that demand the viewers to use special glasses. Recently new displays that do not need such glasses have been developed. In order to value the performance of such displays, content needs to be generated. Project Objective(s): • • • Capture natural video having different characteristics Process the captured video to transcode it to the necessary format Display the video content on the Dimenco display and evaluate the performance Project Resources • • • • Budget: €__0___ Stereo camera + SDK (available) Dimenco 3D display (available) Visual studio Industrial Partners involved: No Expected Project Deliverables: • • • Software developed Video sequences Analysis of the results Student background / interest: • • Programming Video processing and transmission Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 3 Fingerprint Recognition Supervisor(s): Dr George Azzopardi george.azzopardi@um.edu.mt Co-supervisor (if any): None Problem Background Fingerprints are among the most popular features that are used in biometric systems for the identification of persons. For instance, every person that goes to USA has his fingerprints recorded in their databases. In this project we will use the FVC2000 benchmark data sets of fingerprints: http://bias.csr.unibo.it/fvc2000/download.asp. Figure 1 shows examples of real fingerprints taken from this data set. Figure 1 - Examples of fingerprints. Each row shows the prints of the same finger in different arrangements. Project Objective(s): • • To investigate the B-COSFIRE algorithm that is very effective in the segmentation of ridges together with other computer vision algorithms that can be used for the matching of fingerprints. The B-COSFIRE algorithm has never been used in this application. I expect that with its robustness to noise (disconnected ridges), there is a good chance to improve the state-of-the-art. Downloads: • Matlab code of the B-COSFIRE algorithm: http://tinyurl.com/pfxcxl5 • Research paper of the B-COSFIRE algorithm: http://tinyurl.com/l43z7oy Project Resources • Industrial Partners involved: NONE Expected Project Deliverables: A system that is able to do fingerprint matching Budget: €__0___ ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 4 Student background / interest: Interest in image processing, computer vision and/or biometric systems Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 5 Collision Avoidance System for the RP Survey and Visual Inspection Train in the CERN Large Hadron Collider Supervisor(s): Co-supervisor (if any): Problem Background Dr Gianluca Valentino gianluca.valentino@um.edu.mt None The Large Hadron Collider (LHC) at CERN is a state-of-the-art particle accelerator located at CERN in Geneva, Switzerland. It is capable of accelerating protons and heavy-ions up to a record-breaking energy of 7 TeV to explore the fundamental constituents of matter. It is housed in a 27-km long circular tunnel lying around 100 m below the ground. The tunnel is equipped with a remote controlled monorail train, which is able to carry out Radio-Protection (RP) survey and visual inspections. The train is composed of 5 wagons, one of which is equipped with a retractable arm for RP measurements. The TeraRanger sensor, produced by Terabee, will be used to obtain measurements of the proximity of the robotic arm from nearby objects. It is based on the Time-of-Flight (TOF) principle, where the device measures the time between the emission of the signal and its return after being reflected by an object. It uses infrared light and provides a reading of up to 1 kHz. An embedded Linux board will be connected to the sensor(s), which will process the received signals and decide whether the safety volume is breached and stop the arm in case of an imminent collision. Project Objective(s): The aim of this project is to build a 3D model of a safety volume around this arm in order to detect any object on the path (such as magnets, collimators or beam instrumentation) and avoid a collision. The collision avoidance system will be implemented on an embedded Linux board which will work in conjunction with an array of ToF sensors. Project Resources • CERN and Terabee will provide the TeraRanger One sensor for the readout of the ToF measurements. • Up to €200 for an embedded Linux development board (e.g. Raspberry Pi, Beagleboard) for onboard signal processing and implementation of the collision avoidance system. Industrial Partners involved: CERN, Terabee Expected Project Deliverables: A working prototype of the collision avoidance system. Student background / interest: The ideal student would be knowledgeable and interested to work on an FYP in embedded systems, Linux and C/C++ programming as well as control theory. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 6 Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 7 Design of a Multistage Noise Shaping (MASH) Converter using the 0.18 µm CMOS Process Supervisor(s): Co-supervisor (if any): Prof. Ivan Grech ivan.grech@um.edu.mt None Problem Background ADCs are an important element for most systems in order to interface the analogue sensors to the digital processing section. Noise-shaping converters are widely used since they rely on low-precision components and can still achieve high resolution. The multistage approach achieves st nd high order noise filtering using only 1 and 2 order closed loop modulators, eliminating problems with stability. Project Objective(s): The scope of this project is to design a 1-1-1 or a 2-1 noise shaping converter using the 0.18 µm AMS CMOS process. Project Resources • Cadence with AMS 0.18µm hit kit (available). Industrial Partners involved: • None Expected Project Deliverables: • • Literature review on MASH conveters Design of ADC building blocks and simulation results Student background / Interest: Ethical and Data Protection Issues • Analogue circuit design Please tick if any of the following apply □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 8 Design of a MEMS R.F. Switch for Microwave Operation Supervisor(s): Prof. Ivan Grech ivan.grech@um.edu.mt Co-supervisor (if any): None Problem Background R.F. switches are important devices in the application of mobile transceivers, coarse tuning and also configurable R.F. circuitry. This project entails the design of an electrostatically actuated R.F. switch for microwave tunable circuitry. Project Objective(s): Familiarisation with a MEMS process suitable implementation (e.g. MetalMUMPS) Design of switch at mask level Development of an electrical model for the switch Project Resources • • Coventor MEMS design software (available) Cadence simulator (available) Industrial Partners involved: • None Expected Project Deliverables: • • • • • • Literature review of MEMS R.F. switches Switch design according to process rules Simulation using finite element software Electrical model for the switch Analogue circuit analysis MEMS / IC design Student background / interest: Ethical and Data Protection Issues for R.F. switch Please tick if any of the following apply □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 9 Algorithm Implementation on Highly Parallel Architectures Supervisor(s): Dr Johann A. Briffa johann.briffa@um.edu.mt Co-supervisor (if any): None Problem Background CUDA is an interface for general-purpose programming on Graphical Processing Units (GPUs) from NVIDIA. The architecture of GPUs emphasises massive parallelism of arithmetic units at the expense of control units and memory caching. This allows a very high speed-up for classes of computationally-intensive data-parallel problems, often found in scientific computing. This is an implementation project, with a significant research orientation. Project Objective(s): Implement a compute-intensive algorithm on GPUs and optimize for speed. Suitable algorithms to be discussed with supervisor; possible examples include algorithms used in high energy physics from an ongoing collaboration with the ALICE experiment at CERN. Examples of prior work by the supervisor can be seen in: • Johann A. Bri a. A GPU implementation of a MAP decoder for synchronization error correcting codes. IEEE Commun. Lett. , 17(5):996{999, May th 27 2013. • Johann A. Bri a. Graphics processing unit implementation and optimization of a exible maximum a-posteriori decoder for synchronisation correction. IET Journal of Engineering , June 11th 2014. Project Resources • • Industrial Partners involved: None Expected Project Deliverables: None Student background / interest: • • Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: €__0___ Interest in parallel computing. Aptitude and willingness to program (the project requires the use of C++ and NVIDIA CUDA; prior OO development experience in another language is suitable). ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 10 Motion Analysis with High Speed Video Supervisor(s): Dr Johann A. Briffa johann.briffa@um.edu.mt Co-supervisor (if any): None Problem Background The project is intended to trial the use of recently available low cost high speed cameras in a sports application and develop the necessary software to enable that use. Similar systems have existed for some time, though at significantly higher costs (in the order of several tens of thousands to hundreds of thousands of euros per unit). Recent advances in sensor technology also means that cameras are now able to operate with less light, which has always been a limiting factor in high frame rate video. While some software is already available as open source products, it is envisaged that its functionality will not necessarily cover all the requirements for the intended application. Therefore, some programming effort will be required to implement the necessary updates. The chosen camera platform exposes the embedded microcontroller, allowing us to modify how the hardware operates, as needed. Project Objective(s): • • • Consider off-the-shelf software for motion tracking and will apply this to a sports application (target archery) with the available high speed camera. Suggest improvements, listing upgrade features and performing a preliminary analysis of how these could be implemented. Design, implement, and test a selection of additional features identified above. Project Resources • • Industrial Partners involved: Archery Association of Malta Expected Project Deliverables: None Student background / interest: • • Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: €__0___ High frame rate camera Interest in image processing and/or embedded systems. Aptitude and willingness to program (the project requires the use of C++; prior OO development experience in another language is suitable). ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 11 Automatic Ahead-of-Time Compiler Generation Supervisor(s): Dr Joshua Ellul joshua.elllul@um.edu.mt Co-supervisor (if any): None Problem Background Intermediate representations (IR) are useful for code distribution due to their platform independence and smaller size. Upon receiving code it is often beneficial to translate received IR into the underlying native architecture instruction set so as to benefit from execution gains (as opposed to having to interpret the IR). This process is called Ahead-OfTime (AOT) compilation. Writing an AOT compiler is a non-trivial task. It involves mapping from a source language or instruction set to the underlying target native instruction set. LLVM is a modular and reusable compiler infrastructure that is source language and target architecture independent. New languages can be supported by writing a frontend for LLVM, and new target platforms can be supported by writing a backend for LLVM. LLVM has gained extensive interest from both academia and industry which has resulted in quite a number of frontends and backends being made available. In this project we aim to investigate techniques to facilitate automatic generation of AOT compilers for different architectures by analysing how the different input IR instructions are translated to native instructions for different target architectures using available LLVM backends. Heuristics will then be proposed that given the input IR instructions and the generated native code instructions, will output an AOT compiler for the respective architecture. Project Objective(s): • • • • Understand LLVM internals Analyse how source IR is compiled to target architectures Define simple heuristics that can map AOT compiler constructs to different architectures Create an LLVM pass that can generate an AOT compiler for a given architecture Project Resources • Industrial Partners involved: None Expected Project Deliverables: • • • Student background / interest: C/C++ programming Operating System Internals Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: €__0___ LLVM source to target analysis Heuristics to map AOT compiler to a given target Tool that generates AOT compiler based on heurestics ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 12 Language-Independent Native Address Spaces for the MMUless Supervisor(s): Co-supervisor (if any): Dr Joshua Ellul joshua.ellul@um.edu.mt None Problem Background The Internet of Things (IoT) promises to enhance and augment our lives by enabling connected devices to monitor and react to our daily routines. It is envisaged that users will be able to download apps onto their different de- vices in aim of customising and getting the most out of the devices as possible. Downloading applications from untrusted (and even trusted) sources introduces the potential for malicious and/or buggy applications to disrupt behaviour of other applications. Traditional processors provide memory management units (MMUs) that enable operating systems to provide protection between address spaces of the different executing processes. Many microcontrollers used in the IoT domain do not have MMUs. Software-based approaches to enable process memory protection for such resource constrained devices have recently been proposed that are either language-dependent, require a virtualisation layer or are no longer supported or available. LLVM is a modular and reusable compiler infrastructure that is sourcelanguage and target-architecture-independent. A compilation pass that inserts run-time memory-access checks can be implemented in LLVM so as to provide programming language-independent process memory protection that is executed natively. In this project we aim to investigate software-based techniques to enable process memory protection that are programming language-independent and natively supported. Project Objective(s): • • • • Understand how LLVM works Understand how MMUs work and how to define a software based MMU Implement memory access checks Implement an LLVM pass that can change memory accesses for safe memory accesses Project Resources • Industrial Partners involved: None Expected Project Deliverables: • Student background / interest: C/C++ programming Operating System Internals Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: €__0___ LLVM compiler pass that inserts memory access checks into compiled code ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 13 Hospital Admission Pattern Analysis, Bed Resource Requirements Forecasting, Allocation and Management Supervisor(s): Dr Lalit Garg lalit.garg@um.edu.mt Co-supervisor (if any): None Problem Background Healthcare resource planners need to develop policies that ensure optimal allocation of scarce healthcare resources. This goal can be achieved by analysing admission patterns to forecast daily resource requirements to ensure optimum allocation and management of available resources. If resources are limited, admission should be scheduled according to the resource availability. Such resource availability or demand can change with time. We here model admissions and patient flow through the care system as a discrete time Markov chain. In order to have a more realistic representation, a non-homogeneous model is developed which incorporates time-dependent covariates, namely a patient’s present age and the present calendar year. However, more sophisticated models are required to better manage changes in admission patterns and resource requirements. As our previous work, we have already developed many such sophisticated models for better modelling admission patterns and resource requirements [1-4]. In this final year project (FYP), we will extend our work to develop novel approaches to effectively solve the problem using AI/ML based methods. 1. Garg L, McClean SI, Meenan BJ, Millard PH (2010). A nonhomogeneous discrete time Markov model for admission scheduling and resource planning in a care system. Health Care Management Science. 13(2):155–169. 2. Garg L, McClean SI, Meenan BJ, Millard PH (2009). Nonhomogeneous Markov Models for Sequential Pattern Mining of Healthcare Data. IMA journal Management Mathematics. 20(4): 327344. 3. Garg L, McClean SI, Meenan BJ, Barton M, Fullerton K (2012). Intelligent patient management and resource planning for complex, heterogeneous and stochastic healthcare systems. In press. IEEE Transactions on Systems, Man, and Cybernetics--Part A: Systems and Humans. 4. Garg L, McClean SI, Meenan BJ, Barton M, Fullerton K (2013). An Extended Mixture Distribution Survival Tree for Patient Pathway Prognostication. Communications in Statistics: Theory and Methodology. 42(16):2912-2934. Project Objective(s): 1. Review of literature on hospital admission pattern analysis, bed resource requirements forecasting, allocation and management and hospital waiting lists. 2. Understand approaches for forecasting and scheduling. 3. Understanding of advanced AI and machine learning methods, including phase type survival tree analysis, survival analysis, Markov process model, Bayesian Analysis. 4. Problem analysis and design. 5. Pattern analysis and mining of hospital admission data. 6. Developing novel models for characterizing hospital admissions and its interrelationship with bed resource requirements, enhancing/ ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 14 improving on the existing models. 7. Implementing these models characterizing hospital admissions and its interrelationship with bed resource requirements using Matlab/ C/C++. 8. Evaluating the model using a real database from a hospital. 9. Report writing Project Resources • Industrial Partners involved: None Expected Project Deliverables: • Budget: €__0___ A computing device (PC or Laptop), Internet Access, Matlab, C/C++, UM Library access, Access to high quality literature resources. • • • • Student background / interest: Ethical and Data Protection Issues Literature review on hospital bed occupancy and requirements forecasting A fully properly tested working implementation of characterizing hospital admissions and its interrelationship with bed resource requirements. Critical evaluation of the model Results, analysis and conclusion A Report Knowledge of basic probabilistic methods, Good programming skills in a language of your choice. strong analytical and problem solving skills and fast learning abilities, reliable, responsible, hardworking, enthusiasm and determination to learn and acquire new skills. Please tick if any of the following apply. ■ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 15 Machine Learning Methods for Handling Missing Data in Medical Questionnaires Supervisor(s): Dr Lalit Garg lalit.garg@um.edu.mt Co-supervisor (if any): None Problem Background The proposed project is a part of a University funded project. Self-report questionnaires are used as an extremely valuable instrument to assess the quality of life of a patient, its relationship with socioeconomic and environmental factors, disease risk/ progress, treatment and disease burden, treatment response and quality of care. However, a common problem with such questionnaires is missing data. Despite enormous care and effort to prevent it, some level of missing data is common and unavoidable. Such missing data can have a detrimental impact on statistical analyses based on the questionnaire responses. A variety of methods have been suggested for missing data imputation. Nevertheless, more research is desperately needed to assess and improve the reliability of data imputation. We have already developed/ proposed some novel methods to handle missing data [1-4]. In this final year project (FYP), we will extend our work to develop novel machine learning procedures enforcing collaborative filtering to complete missing data in medical questionnaires. Empirical datasets would be used to assess these novel methods against existing methods. 1. Garg L, Dauwels J, Earnest A, Pang L (2013) Tensor based methods for handling missing data in quality-of-life questionnaires. IEEE Journal of Biomedical and Health Informatics. In press. doi: 10.1109/JBHI.2013.2288803. 2. Asif MT, Srinivasan K, Garg L, Dauwels J, Jaillet P (2013) Lowdimensional Models for Missing Data Imputation in Road Networks, ICASSP 2013, May 26 - 31, 2013. 3. Dauwels J, Garg L, Earnest A, Pang LK (2012). Tensor Factorizations for Missing Data Imputation in Medical Questionnaires, The 37th International Conference on Acoustics, Speech, and Signal Processing (ICASSP), Kyoto, Japan, March 25 30, 2012. 4. Dauwels J, Garg L, Earnest A, Pang LK (2011). Handling Missing Data in Medical Questionnaires Using Tensor Decompositions. The Eighth International Conference on Information, Communications, and Signal Processing (ICICS 2011). Singapore 13-16 December, 2011. Project Objective(s): 1. 2. 3. 4. 5. 6. Review of literature on missing data imputation, types of missingness in data, missing data in medical questionnaires and novel machine learning methods for collaborative filtering. Understand approaches for missing data imputation. Understanding of advanced probabilistic, mathematical and machine learning methods, including Singular vector decomposition, extreme learning machine, tensor decomposition methods. Problem analysis and design. Acquiring real data and simulating data with different proportions, patterns and types of missingness. Rigorous testing and comparison of existing missing data techniques ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 16 for application to medical questionnaires Developing novel missing data techniques, specifically designed for repeated medical questionnaires. 8. Implementing these techniques using real and simulated datasets using Matlab/ R/ C/ C++. 9. Evaluating these techniques using real and simulated datasets. 10. Report writing 7. Project Resources • Industrial Partners involved: None Expected Project Deliverables: • Budget: €__0___ A computing device (PC or Laptop), Internet Access, Matlab, C/C++, UM Library access, Access to high quality literature resources. • • • • Student background / interest: Ethical and Data Protection Issues Literature review on missing data handling in survey questionnaires and missing data imputation techniques. A fully properly tested working implementation of tools for missing data handling in medical questionnaires. Critical evaluation of the model Results, analysis and conclusion The project Report Knowledge of basic AI methods, Good programming skills in a language of your choice. Strong analytical and problem solving skills and fast learning abilities, reliable, responsible, hardworking, enthusiasm and determination to learn and acquire new skills. Please tick if any of the following apply. ■ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 17 An Automatic Projection Correction System for Corner Surfaces Supervisor(s): Dr Ing. Nicholas J. Sammut nicholas.sammut@um.edu.mt Co-supervisor (if any): None Problem Background Video projected images are skewed when projected onto wall or ceiling corners or round surfaces. This creates challenges for video immersion applications and projections of advertisements on corner surfaces or round surfaces due to misalignments between the projector and the screen. Project Objective(s): This project involves the setting up of the necessary hardware to detect and measure the image skew as well as the programming of the calibration system, the image reconstruction, the image rendering and the overall correction of the skew effects on the uneven surfaces. This very interesting practical project may have commercial value and may be patentable. Project Resources Budget: €750 + license fees (Video projector, video camera, tilt sensor, Matlab or LabVIEW Vision toolbox license) Industrial Partners involved: None Expected Project Deliverables: Hardware and software system to correct the skewed images of projectors on corners and/or round surfaces. Student background / interest: Computer Engineering Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 18 Automatic Automotive Mirror Correction System Supervisor(s): Dr Ing. Nicholas J. Sammut nicholas.sammut@um.edu.mt Co-supervisor (if any): None Problem Background The wrong adjustment of vehicle side and room mirrors results in blind spots that are the cause of several road accidents. Drivers often forget to adjust the mirrors correctly especially when they change their position in the car or when they use a different vehicle. Project Objective(s): This project involves the setting up of the necessary hardware and software to automatically find the optimum mirror angle for vehicles. The system includes a camera system to detect the position of the driver a software system to perform the image processing and the control system to control the mirror angle. Project Resources Budget: €1000 + license fees (2 automatic side mirrors with controllers, video camera, proximity sensor, Matlab or LabVIEW Vision toolbox license) Industrial Partners involved: None Expected Project Deliverables: Hardware and software system to correct the projector mirror angles Student background / interest: Computer Engineering Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 19 FPGA Based Gravitational Multi-Particle Simulator Supervisor(s): Dr Ing. Owen Casha owen.casha@um.edu.mt Co-supervisor (if any): None Problem Background When evaluating a high performance computing platform, we have to consider several aspects. The cost of cluster computers and supercomputers can be prohibitive. Area and power consumption can also be a major problem with these computing platforms. For such reasons, various acceleration technologies are being considered. FPGAs, for instance, offer the high performance of a dedicated hardware solution of a particular algorithm, with a fraction of area and power consumption of a microprocessor-based counterpart solution. Moreover, the continuous development in transistor integration levels mean that it is now possible to implement considerable number of floating point arithmetic units on modern FPGAs. Project Objective(s): The objective of this project is to design an FPGA based gravitational multi-particle simulator to solve Newton’s law of gravitation in full form and display a 3-D representation of the particle’s interaction at high frame rates on a VGA monitor. This project is to simulate particles of different masses interacting with each other due to gravity. The system is to be designed to accept any set of initial conditions. Additionally, the system must display a portion of the 3-D space on a VGA monitor for visualization of the particle’s interactions. It is recommended that all of the calculations are done in a mantissa floating point format allowing any scale of initial conditions to be simulated. Project Resources FPGA development board Xilinx SDK Platform ModelSim Matlab Industrial Partners involved: None Expected Project Deliverables: Prototype of hardware computational platform Matlab Simulation VHDL Codes Dissertation Student background / interest: Hardware Description Languages FPGA Systems Computational Physics Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 20 2-Axis PID Sun Tracker Supervisor(s): Dr Ing. Owen Casha owen.casha@um.edu.mt Co-supervisor (if any): None Problem Background Photovoltaic solar systems are considered to be as a renewable energy solution for energy crisis and environmental pollution. In order to improve their efficiency, it is required to maximize the output power by keeping the solar panels aligned with sun. Consequently, a tracking of the sun’s position with high degree of accuracy is required. The main purpose of a solar tracking system is to track the movement of the sun during the day in order to orient the solar panel to the maximum radiation at times. Large numbers of tracking systems have been developed and reported in literature. Sun tracking algorithms can be classified into closed loop and open loop systems, according to their control mode. Each system acquires relative advantages and disadvantages which strongly affect their performance. Project Objective(s): The objective of this project is to design a dual axis PID (proportionalintegral-derivative) controlled sun tracker using a general purpose microcontroller. Project Resources Microcontroller development board Matlab Industrial Partners involved: None Expected Project Deliverables: Prototype of 2-axis PID Sun Tracker System Modelling Matlab Simulation Dissertation Student background / interest: Embedded Systems Control Theory Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 21 Face Anti-Spoofing based on Texture Analysis Supervisor(s): Dr Ing. Reuben Farrugia reuben.farrugia@um.edu.mt Co-supervisor (if any): None Problem Background Existing face recognition systems are vulnerable to spoofing attacks where malicious users try to bypass a face biometric system by presenting a fake face in front of the camera. Research on face spoofing detection has mainly been focusing on analyzing the texture of the grayscale component of facial images. Project Objective(s): In this project, the student will investigate the use of the Local Binary Pattern (LBP) texture descriptor to extract the texture information from the face images. The histograms of LBP features of each cell are concatenated to form the final descriptor. The decision of whether a face image is a natural image or a fake can be done using a classifier. Experiments will be conducted using the CASIA face anti-spoofing dataset which is available. The algorithm can be implemented in MATLAB, but other programming languages can be considered. Project Resources • • Industrial Partners involved: None Expected Project Deliverables: Budget: €0 Open dataset available • Well commented code of the developed algorithm. • A demo of the developed face anti-spoofing method. Student background / interest: Signal Processing Image Processing Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 22 Exemplar-Based Digital Image Inpainting Supervisor(s): Dr Ing. Reuben Farrugia reuben.farrugia@um.edu.mt Co-supervisor (if any): None Problem Background The term inpainting comes from art restoration where Medieval artwork was restored in an unobtrusive way during the Renaissance period. Digital image inpainting (aka inpainting) is the natural extension of inpainting, and is a process used by existing image editing software, such as Adobe Photoshop, to fill cracks, conceal undesired objects and remove text and logos from an image. Inpainting methods can be categorized in three groups: i) classical Partial Derivative Equation based methods, ii) Exemplar-based methods and iii) Low-Rank methods. Exemplar-based methods currently represent the state-of-the-art and try to approximate unknown pixels using the known parts of the image. Project Objective(s): In this project the student will implement an algorithm which allows the user to select a region to be removed or filled. An Exemplar-based inpainting method will be implemented which tries to automatically fill the unknown pixels using a best-first filling strategy. The performance of the developed method will be compared to the inpainting method adopted by Photoshop. The project can be developed using either C++, Python or MATLAB. Project Resources • Industrial Partners involved: None Expected Project Deliverables: Budget: €0 • Well commented code of the developed algorithm. • A demo of the developed inpainting method. Student background / interest: Signal Processing Image Processing Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 23 Massive MIMO in 5G Supervisor(s): Prof. Ing. Saviour Zammit saviour.zammit@um.edu.mt Co-supervisor (if any): None Problem Background Massive MIMO is a technique which will feature in future 5G networks. The technique will allow very high bit rates to be delivered to mobile devices using low power, whilst conserving bandwidth. Project Objective(s): The aim of the project is to simulate an OFDM/MMIMO system in Matlab to investigate how spectral efficiency will be impacted by antenna array size at the base-station. Project Resources • Industrial Partners involved: None Expected Project Deliverables: Literature Review Matlab Simulation Code Report with results Student background / interest: Matlab Telecommunications Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: €__0___ ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 24 Indoor Location System Supervisor(s): Prof. Ing. Saviour Zammit saviour.zammit@um.edu.mt Co-supervisor (if any): None Problem Background GPS does not extend within buildings, yet many location based services and applications stand to benefit from a reliable and accurate indoor location system. Project Objective(s): The aim of the project is to study the state of the art in indoor location and design, prototype and test an indoor location technology based on smartphone technology. Project Resources • Industrial Partners involved: None Expected Project Deliverables: Literature Review Matlab Simulation Code Report with results Student background / interest: Matlab Telecommunications Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: €__0___ ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 25 Fast Block-Matching Motion Estimation Search on FPGA Supervisor(s): Dr Ing. Trevor Spiteri, trevor.spiteri@um.edu.mt Co-supervisor (if any): None Problem Background Most of the processing time in video compression algorithms is taken by the motion estimation search, making this search suitable for optimization and acceleration. A macroblock is a rectangular block of pixels. A motion estimation search for a macroblock in a video frame involves searching for the most similar macroblock in a reference video frame. In exhaustive searches, all the possible blocks in a particular window in the reference frame are compared to the macroblock. In fast searches, only macroblocks at specific relative locations are compared, which greatly reduces the amount of comparisons to compute. Project Objective(s): The aim is to develop a fast block-matching motion estimation search on FPGA that can be used to accelerate a video coding application. If there is enough time, different block-matching techniques can be implemented and compared. Project Resources • • • • Industrial Partners involved: None Expected Project Deliverables: • • • • VHDL code Simulation results Testing Performance analysis Student background / interest: • • Image processing Hardware design using VHDL Ethical and Data Protection Issues Budget: €0 FPGA development board (available in labs) Xilinx ISE WebPACK design software Test video sequences Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 26 VHDL Code Generator for Digital Filter Implementation Supervisor(s): Co-supervisor (if any): Problem Background Project Objective(s): Project Resources Industrial Partners involved: Expected Project Deliverables: Student background / interest: Ethical and Data Protection Issues Dr Ing. Trevor Spiteri, trevor.spiteri@um.edu.mt None Digital filters can be implemented either in software on a processor or on hardware platforms such as FPGAs. After the filter coefficients are obtained using filter design techniques or software tools like MATLAB, an implementation strategy is chosen for the implementation. This project involves writing a software tool in a high-level language such as C, C++ and Python that reads the filter coefficients from a file and generates a hardware design in VHDL. This design can be implemented on an FPGA for the filter to be tested. Different filter implementations can be targeted and compared. The aim is to develop a software tool that converts a digital filter specification into code in VHDL, a hardware description language. The design is to be verified by running the generated designs on an FPGA platform and physically testing the digital filters. • • • • • • Budget: €0 MATLAB for design of filter coefficients IDE for program development FPGA development board (available in labs) Xilinx ISE WebPACK design software Signal generator and oscilloscope None • • • Software tool that generates HDL for digital filters Testing Performance analysis • • Digital filters Hardware design using VHDL Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 27 GNU Radio-Based Teaching System Supervisor(s): Prof. Ing. Victor Buttigieg victor.buttigieg@um.edu.mt Co-supervisor (if any): None Problem Background GNU Radio is a software framework that allows the user to develop highly modularized radio or signal processing systems through the use of an extensive library of basic building blocks. Special drivers can then be used to drive specific hardware to generate the signals in real-time. Further details may be found at http://gnuradio.org. Project Objective(s): The objective of this project is to build a number of systems to teach fundamental techniques in communications and signal processing from a practical point of view using GNU Radio as the underlying platform. Project Resources • • Industrial Partners involved: None Expected Project Deliverables: A set of experiments (with suitable documentation) to illustrate communications and signal processing fundamentals. Student background / interest: Communications, signal processing, programming (in Python and C++). Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. GNU Radio software is open source Additional hardware may need to be bought depending on specific objectives set by the student. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 28 Automatic Electronic Programme Guide Updating Supervisor(s): Prof. Ing. Victor Buttigieg victor.buttigieg@um.edu.mt Co-supervisor (if any): None Problem Background Most modern TV platforms offer an Electronic Programme Guide (EPG) that helps user find suitable TV programmes to watch. In many instances, this is also used to record future programmes. However the EPG is usually set up several days before the programmes actually go on air and the scheduled times are not always very accurate, leading to missed programme segments when recording. Project Objective(s): The objective of this project is to automatically detect the start of programmes and to update the EPG accordingly. Project Resources • Industrial Partners involved: None Expected Project Deliverables: A computer program that analyses a TV broadcast channel and associated EPG stream and adjusts the EPG times accordingly. Student background / interest: Programming, image/video processing. Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. The project is software based using freely available packages. ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 29 Home Automation Systems Supervisor(s): Prof. Ing. Edward Gatt edward.gatt@um.edu.mt Co-supervisor (if any): None Problem Background Home Automation systems are commonly found in electronic form today. A system of sensors is connected to a controller, which in turn connects to the network. Remote sensing has many applications in real life; one of these applications is for home automation. A low cost controller with a large number of inputs and outputs that can be used either for controlling or sensing the remote devices. The system is based on designing and implementing using an FPGA chip that is interfaced to a network. Project Objective(s): The hardware of the controller chip will be designed using VHDL and tested using Xilinx FPGA . Project Resources • Industrial Partners involved: None Expected Project Deliverables: Controller chip implemented on an FPGA together with interfacing electronics Student background / interest: VHDL Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: € 200 ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 30 Remote Sensing Supervisor(s): Co-supervisor (if any): Prof. Edward Gatt edward.gatt@um.edu.mt None Problem Background The use of field programmable gate arrays (FPGAs) for autonomous sensor network monitoring and control is an interesting research domain in which low FPGA logic utilization, low power consumption, and accurate sensor readings are the major metrics for evaluation. An autonomous sensor network is a special application for system monitoring, which is composed of several components such as a transducer, conditioning circuits, processing units, and data communication. The on-chip sensor network can read electrical quantities such as voltage, current, and power consumption of a circuit, while relaying the data remotely. Project Objective(s): The hardware of the controller chip will be designed using VHDL and tested using Xilinx FPGA . Project Resources • Industrial Partners involved: None Expected Project Deliverables: Controller chip implemented on an FPGA together with interfacing electronics Student background / interest: VHDL Ethical and Data Protection Issues Please tick if any of the following apply. □ The project has data protection issues; please specify. □ The project has ethical issues; please specify. □ The project involves human subjects; please specify. Budget: € 200 ICT3903 – Final Year Project in Computer Engineering B.Sc. (Hons.) in Computer Engineering Faculty of ICT, Final Year Project Proposal 31