Inglese index Italiano

Projects

Facial Recognition
Motivation and Objectives: Facial recognition is a rapidly evolving field with applications ranging from biometric security to social media. The aim was to develop a system capable of accurately identifying and analyzing facial characteristics, overcoming the limitations of traditional methods and adapting to various environments.
Development Methodology: We began with an extensive literature review on facial recognition methods, focusing on the Viola and Jones method for its efficiency and reliability. Using OpenCV, we implemented the method in Java, leveraging its capabilities for image processing and artificial intelligence.
Challenges and Solutions: One of the major challenges was ensuring that the system could operate under varying lighting conditions and with different levels of facial distortion. We addressed this issue through the use of image normalization techniques and adapting the model to handle variations in facial characteristics.
Results and Impact: The project demonstrated the possibility of developing a highly accurate and versatile facial recognition system, with potential applications across multiple sectors. The experience reinforced our understanding of artificial intelligence and machine learning, offering a platform for future developments in the fields of security and personalized assistance.

F# Code Formatter
Motivation and Objectives: Maintaining well-formatted code is essential for readability and software maintenance. However, formatting F# code can be particularly challenging due to its rich syntax and style conventions. The objective was to create a tool that could automatically format F# code consistently and according to guidelines.
Development Methodology: We started with a thorough review of F# style conventions and code parsing techniques. Subsequently, we developed a parser that analyzes F# code and identifies control structures, declarations, and other key elements to apply the desired formatting.
Challenges and Solutions: One of the main challenges was correctly handling nested code blocks and multi-line comments without altering the program logic. We solved this problem through the implementation of a formatting algorithm that takes into account the structure of the code and the positions of comments.
Results and Impact: The F# code formatter tool proved effective in improving code readability and reducing cultural gaps among team members. The experience provided valuable lessons on developing support tools for programming languages and opened up new possibilities for automating and optimizing software development workflows.

Online Video Game Store Simulation
Motivation and Objectives: Creating an online video game store simulator allows exploring the challenges and opportunities in electronic commerce, especially in the gaming sector. The aim was to develop a system offering a smooth user experience, with a robust and secure backend for data management.
Development Methodology: We started by defining key functionalities, such as product management, shopping cart, and checkout. Subsequently, we implemented the backend in PHP, using PostgreSQL for the database and PDO for security. The user interface was developed with HTML, CSS, and JavaScript, with a particular focus on user experience.
Challenges and Solutions: One of the major challenges was ensuring that the site was performant and secure, resisting potential attacks. We addressed this issue through the use of prepared statements and SQL query optimization, ensuring that the site was accessible and secure for users.
Results and Impact: The simulation provided a practical understanding of the complex dynamics of electronic commerce, from marketing strategies to site optimization techniques. The experience strengthened skills in PHP, JavaScript, and relational database usage, providing a solid foundation for future projects in the e-commerce sector.

Mine Hunter Robot
Motivation and Objectives: Combining programming with physical engineering to create a robot that can interact creatively and usefully with the real world. The aim was to develop a robot capable of navigating autonomously in a game field, recognizing and collecting mines, and then relocating them to their original positions.
Development Methodology: We began with the design of the robot, choosing appropriate hardware components and developing firmware that could manage sensors and motors. The interface with the Android application was implemented through Bluetooth, allowing remote control of the robot.
Challenges and Solutions: One of the main challenges was ensuring that the robot could operate in a variable environment and accurately recognize mines. We solved this problem through the use of artificial vision algorithms and adapting the robot to handle variations in terrain and lighting conditions.
Results and Impact: The mine hunter robot demonstrated how technology can be used to create entertaining and useful solutions, as well as providing a platform for exploring more advanced concepts in programming and engineering. The experience reinforced our understanding of robotics and human-machine interaction, opening up new directions for future projects in these areas.

Hospital Management Pepa Model
Motivation and Objectives: Modeling a hospital management system can help better understand the complex healthcare dynamics and develop solutions to improve efficiency and patient care. The aim was to create a model representing a virtual hospital, with interactive components managing various activities.
Development Methodology: We started by defining the key components of the model, such as Reception, Ambulance, Blood, Xray, Operation, and Recovery, and developed a decision-making system that automates the process of planning patient care.
Challenges and Solutions: One of the main challenges was ensuring that the model could handle complex and variable situations, such as bed availability and urgent need for medical procedures. We addressed this issue through the implementation of optimization algorithms and creating a monitoring and feedback system.
Results and Impact: The hospital Pepa simulation provided a practical understanding of operational challenges in the healthcare sector and demonstrated how technology can be used to improve efficiency and quality of care. The experience reinforced skills in object-oriented programming and systems analysis, providing a solid foundation for future projects in the healthcare sector.

Each of these projects represented an opportunity to refine specific skills, overcome technical challenges, and contribute to innovative solutions. Through the execution of these projects, we gained a deeper understanding of the software development process, from the initial idea to the final realization, and learned to critically evaluate our solutions and always seek improvement spaces.

LiSA Analyzer, tuple Taint analysis Taint analysis is a crucial technique in communication networks, employed to verify that a variable maintains its integrity and arrives at the destination with the same value it had at the source. This method ensures data consistency and security, preventing unauthorized modifications during transmission. In this project, I aim to extend the concept of taint analysis from its traditional use in communication networks to the realm of datasets. Our objective is to enhance the security of data contained within tuples, safeguarding it against unauthorized modifications and ensuring its integrity throughout its lifecycle.
The proposed extension involves developing a robust framework that applies taint analysis principles to datasets. This framework will trace the data flow within a dataset, marking and tracking each tuple's origin and subsequent transformations. By doing so, we can detect and prevent any unauthorized alterations, ensuring that the data remains trustworthy and unmodified from its initial state.
The project encompasses several key components: the design of taint markers for dataset elements, the development of algorithms for tracking and verifying data integrity, and the integration of these components into existing database management systems.
Through this extension, we aim to address the growing concerns of data tampering and integrity in various applications, including financial transactions, medical records, and sensitive governmental data. By ensuring that the data within tuples is secure and unaltered, we can significantly enhance the reliability and trustworthiness of critical datasets. This project not only broadens the application of taint analysis but also contributes to the overall security and robustness of data management systems.

In progress

3D Recostruction
Motivation and Objectives: The project aims to develop two distinct yet interrelated programs to enhance camera calibration and 3D scanning technologies. The primary objective of the first program, a camera calibrator, is to automate the process of loading frames from a calibration video to compute the camera's intrinsic parameters. This includes determining the intrinsic matrix (K) and the lens distortion vector based on a 5-parameter model. The goal is to achieve this calibration without any user intervention while providing the Root Mean Square (RMS) re-projection error along with the calibration output. The second program, a 3D scanner, aims to read and process one of three provided videos (cat, cube, and ball) on a frame-by-frame basis. The objective here is to compute a 3D point cloud of the scene, capturing all the 3D points illuminated by the laser line.
Development Methodology: The development of the camera calibrator involves leveraging computer vision techniques to extract frames from the calibration video and apply algorithms to compute the intrinsic matrix and lens distortion parameters. The program is designed to run autonomously, ensuring minimal user intervention and delivering consistent results. For the 3D scanner, the methodology includes processing each frame of the provided videos to detect the laser line and reconstruct the 3D coordinates of the illuminated points. Advanced image processing and 3D reconstruction algorithms are employed to build an accurate 3D point cloud of the scene.
Challenges and Solutions: Several challenges were encountered during the development of these programs. For the camera calibrator, ensuring accurate computation of the intrinsic parameters without user intervention was a significant challenge. This was addressed by implementing robust algorithms that can handle variations in the input video frames. Another challenge was minimizing the RMS re-projection error, which was achieved through iterative optimization techniques. For the 3D scanner, accurately detecting the laser line in varying lighting conditions and processing frames in real-time were major challenges. These were mitigated by using adaptive thresholding methods and efficient frame processing algorithms to ensure precise and swift 3D reconstruction.
Results and Impact: The camera calibrator successfully computes the intrinsic parameters of the camera with minimal user intervention, providing reliable calibration results and the RMS re-projection error. This has significant implications for applications requiring precise camera calibration, such as in robotics and computer vision. The 3D scanner program effectively reconstructs 3D point clouds from the provided videos, offering a valuable tool for applications in 3D modeling, augmented reality, and object recognition. The development of these programs enhances the capabilities in camera calibration and 3D scanning, providing accurate and efficient solutions for a range of technological applications.

Economics formation game at Ca' Foscari I'm currently employed on a 9-month Co.Co.Co. contract at Ca' Foscari University of Venice, where I'm developing a formation game for economics. Develop an educational game in Unity to promote understanding of basic economic principles (resources, choices, opportunity costs, motivation) in school or training contexts, within the framework of Italy’s National Recovery and Resilience Plan (PNRR).