Advisors:
Andrea Sanna|||Federico Manuri|||
Il termine “remesh” indica una tecnica per ricostruire automaticame la geometria di un oggetto 3D con una topologia diversa, generalmente più uniforme. La tecnica del remesh permette inoltre di aumentare o ridurre la topologia della mesh in base alla definizione desiderata ed è usata specialmente per convertire immagini generate tramite la tecnica dello sculpting. Ambiti d’uso tipici del remesh riguardano la semplificazione di oggetti 3D ad alta definizione che devono essere animati, oppure la semplificazione di oggetti 3D per l’uso in ambito gaming (es. oggetti di scena, ambienti, edifici, ecc.). Generalmente, queste tecniche richiedono l’interazione dell’utente per guidare la scelta delle impostazioni di remesh e valutare il risultato ottenuto. Questa tesi propone di investigare il design e lo sviluppo di soluzioni di resmesh automatiche o semiautomatiche, partendo dall’analisi dello stato dell’arte e da quanto sviluppato dal nostro gruppo di ricerca in tesi precedenti, utilizzando le più recenti tecniche di computer vision ed intelligenza artificiale.
Keywords: Computer Graphics, Artificial Intelligence, Machine Learning
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-635");
var rawExternal = document.getElementById("raw-external-635");
var advisorsSpan = document.getElementById("advisors-list-635");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-635");
var targetSpan = document.getElementById("degrees-list-635");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-635");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
Advisors:
Federico Manuri|||Andrea Sanna|||
Francesco De Pace (CIM)
I metodi di object detection si basano prevalentemente su approcci di deep learning
supervisionato, che richiedono ingenti quantità di dati etichettati. Per incrementare la
disponibilità di dati, è possibile ricorrere a tecniche di data augmentation, tra cui la
generazione di dati completamente sintetici, soluzione promettente in quanto consente
di ottenere dati automaticamente etichettati, riducendo tempi e costi di acquisizione.
Tuttavia, tali approcci presentano criticità legate alla complessità delle procedure
richieste, quali la conversione da immagini 2D a modelli 3D e il rendering fotorealistico.
Queste problematiche risultano particolarmente rilevanti nei contesti industriali,
caratterizzati da asset e oggetti altamente specifici e difficilmente reperibili nei dataset
pubblici.
La presente tesi si propone pertanto di sviluppare una pipeline efficace che consenta la
generazione agevole di dataset sintetici per compiti di object detection in ambito
industriale. Il lavoro prevede un’analisi dello stato dell’arte e la successiva
progettazione e validazione della pipeline su un caso d’uso industriale reale.
Esempi simili/utili:
• https://www.youtube.com/watch?v=HHzNIh72B_Y
• https://www.youtube.com/watch?v=iuDv3TS-xQA
• https://www.youtube.com/watch?v=dxlyCPGCvy8
• https://www.youtube.com/watch?v=pJfHiVo8GUg
• https://www.youtube.com/watch?v=BuL7RroTG7s
Keywords: Synthetic Datasets, Object Detection, Industrial Scenarios
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-636");
var rawExternal = document.getElementById("raw-external-636");
var advisorsSpan = document.getElementById("advisors-list-636");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-636");
var targetSpan = document.getElementById("degrees-list-636");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-636");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
Advisors:
Federico Manuri|||Andrea Sanna|||
Le interfacce neurali permettono di leggere i segnali derivanti dall’attività cerebrale, quali il segnale elettroencefalografico, e a trasmetterli ad un dispositivo esterno, come un computer. Le interfacce neurali attive vengono usate per interagire con l’interfaccia utente di un sistema, ed in particolar modo possono rivelarsi utili a supporto di persone con disabilità. Le interfacce neurali passive vengono invece usate per monitorare lo stato dell’utente, come ad esempio i livelli di stress, attenzione e carico cognitivo. Questa tesi si propone di investigare l’uso di interfacce neurali a supporto dell’interazione uomo-macchina.
Keywords: Brain-computer Interfaces, Human-machine Interaction, Virtual And Augmented Reality
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-637");
var rawExternal = document.getElementById("raw-external-637");
var advisorsSpan = document.getElementById("advisors-list-637");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-637");
var targetSpan = document.getElementById("degrees-list-637");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-637");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
Advisors:
Federico Manuri|||Andrea Sanna|||
Le interfacce neurali permettono di leggere i segnali derivanti dall’attività cerebrale, quali il segnale elettroencefalografico, e a trasmetterli ad un dispositivo esterno, come un computer. Le interfacce neurali attive vengono usate per interagire con l’interfaccia utente di un sistema. Le interfacce neurali passive vengono invece usate per monitorare lo stato dell’utente, come ad esempio i livello di stress, attenzione e carico cognitivo. Questa tesi si propone di investigare l’uso di interfacce neurali per l’interazione con manipolatori robotici in scenari di robotica collaborativa.
Keywords: Brain-computer Interfaces, Human-Robot Collaboration
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-638");
var rawExternal = document.getElementById("raw-external-638");
var advisorsSpan = document.getElementById("advisors-list-638");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-638");
var targetSpan = document.getElementById("degrees-list-638");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-638");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
Advisors:
Andrea Sanna|||Federico Manuri|||
Un dataset sintetico è un insieme di dati generati artificialmente tramite algoritmi o simulazioni, anziché raccolti da osservazioni o misurazioni reali del mondo. Vengono spesso utilizzati quando i dati reali sono scarsi, costosi o difficili da ottenere, quando serve un alto grado di controllo sulle caratteristiche dei dati, o quando ci sono vincoli legati alla privacy o alla sicurezza. Ad esempio, dataset sintetici di scene 3D renderizzate vengono creati per addestrare modelli per il riconoscimento o la ricostruzione di oggetti. In alcuni casi presentano degli svantaggi, in quanto possono non riflettere perfettamente la complessità del mondo reale o possono presentare differenze tali rispetto ai dati reali reali da ridurre la performance dei modelli. Questa tesi si pone come obiettivo quello di colmare il gap tra i dataset sintetici e quelli reali esplorando soluzioni alternative e complementari come il rendering fotorealistico e il transfer fotorealistico.
Keywords: Computer Graphics, Artificial Intelligence, Machine Learning
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-639");
var rawExternal = document.getElementById("raw-external-639");
var advisorsSpan = document.getElementById("advisors-list-639");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-639");
var targetSpan = document.getElementById("degrees-list-639");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-639");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
💼 Thesis In Collaboration With a Company
Advisors:
Andrea Sanna|||Federico Manuri|||
Il progetto di tesi prevede la realizzazione di una piattaforma per la progettazione di layout di postazioni di lavoro in VR immersiva. L’applicazione dovrà includere funzionalità quali: importazione di modelli CAD (matematiche), manipolazione e ridimensionamento “semplice” di primitive 3D, gestione dei layout, strumenti di misurazione delle distanze e interazione tramite dispositivi di input avanzati come il guanto ManusVR.
Particolari attenzioni dovranno essere poste alla struttura del software, che dovrà risultare scalabile e facilmente estendibile attraverso moduli aggiuntivi (frame) con minimo intervento sul codice esistente. L’interfaccia grafica utente dovrà essere ottimizzata per un utilizzo efficace in ambiente immersivo, con comandi facilmente accessibili e tempi di risposta ridotti, garantendo un’ottima user experience anche per utenti non esperti in software 3D.
Keywords: Immersive Interfaces, Industrial Workstation Design, Virtual Reality
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-640");
var rawExternal = document.getElementById("raw-external-640");
var advisorsSpan = document.getElementById("advisors-list-640");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-640");
var targetSpan = document.getElementById("degrees-list-640");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-640");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
Advisors:
Andrea Sanna|||Federico Manuri|||
La tesi ha l’obiettivo di valutare e confrontare sistemi di motion capture basati su piattaforme inerziali. Il confronto coinvolgerà sistemi professionali e sistemi consumer.
Keywords: Process Ergonomics, Motion Analysis, Motion Capture
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-642");
var rawExternal = document.getElementById("raw-external-642");
var advisorsSpan = document.getElementById("advisors-list-642");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-642");
var targetSpan = document.getElementById("degrees-list-642");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-642");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
Advisors:
Andrea Sanna|||Federico Manuri|||
Il progetto di tesi prevede l’integrazione di un LLM in un banco di lavoro sensorizzato che permetta ad un operatore di effettuare alcuni task industriali (e.g., assemblaggio, misurazione, etc.) utilizzando un sistema di Realtà Aumentata (AR) proiettata.
Si partirà da un modello LLM già esistente che dovrà essere addestrato sui dati relativi al task che dovrà compiere l’operatore (fine tuning). Inoltre, LLM dovrà funzionare su un dispositivo installato su rete locale e non si potranno usare servizi funzionanti su server pubblici. Il ruolo del LLM sarà di supporto all’operatore che potrà interagirci tramite un’interfaccia vocale.
Una volta completata la parte di integrazione LLM, si integrerà un sistema di AR proiettato in grado di proiettare i contenuti virtuali sul banco di lavoro evitando occlusioni ed ottimizzando gli spazi. Inoltre, l’operatore dovrà poter interagire con in contenuti virtuali usando un’interazione basati su gesti e vocale.
Keywords: AI, Artificial Intelligence, Deep Learning, Large Language Models, Augmented Reality
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-643");
var rawExternal = document.getElementById("raw-external-643");
var advisorsSpan = document.getElementById("advisors-list-643");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-643");
var targetSpan = document.getElementById("degrees-list-643");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-643");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();
Advisors:
Andrea Sanna|||Federico Manuri|||
Dr. Simone Formica
The student will implement a real-time computer vision pipeline for tracking medical manikins and surgical tools, He will develop methods for 3D object detection and pose estimation and integrate the real objects as virtual overlays into a Unity-based XR environment. The thesis will focus on algorithm development and real-time graphics rendering, with the main goal of increasing realism and interactivity in medical and surgical training simulations.
Keywords: Computer Vision, Real-Time Tracking, Augmented Reality, 3d Reconstruction, Medical Simulation
(function() {
// 1. Processamento e unificazione Advisors (Risolve il bug "Array")
var rawInternal = document.getElementById("raw-internal-644");
var rawExternal = document.getElementById("raw-external-644");
var advisorsSpan = document.getElementById("advisors-list-644");
if (advisorsSpan) {
var advisorsArray = [];
if (rawInternal) {
var internalText = rawInternal.innerText || rawInternal.textContent;
var internalNames = internalText.split("|||");
internalNames.forEach(function(name) {
var cleanName = name.trim();
if (cleanName) { advisorsArray.push(cleanName); }
});
}
if (rawExternal) {
var externalText = rawExternal.innerText || rawExternal.textContent;
var cleanExternal = externalText.trim();
if (cleanExternal) { advisorsArray.push(cleanExternal); }
}
advisorsSpan.textContent = advisorsArray.length > 0 ? advisorsArray.join(", ") : "GRAINS Staff";
}
// 2. Processamento Corsi di laurea
var degreeDictionary = {
"data_science": "Data Science and Engineering",
"cinema_media": "Ingegneria del Cinema e dei Media Digitali",
"cinema_mezzi": "Ingegneria del Cinema e dei Mezzi di Comunicazione",
"ing_informatica": "Ingegneria Informatica (Computer Engineering)",
"ict_eng": "ICT Engineering for Smart Societies",
"ict_ita": "ICT for Smart Societies"
};
var rawDiv = document.getElementById("raw-degrees-644");
var targetSpan = document.getElementById("degrees-list-644");
if (rawDiv && targetSpan) {
var rawText = rawDiv.innerText || rawDiv.textContent;
var slugs = rawText.split(/[\s,]+/);
var printDegrees = [];
slugs.forEach(function(slug) {
var cleanSlug = slug.trim().toLowerCase();
if (cleanSlug && degreeDictionary[cleanSlug]) {
printDegrees.push(degreeDictionary[cleanSlug]);
}
});
targetSpan.textContent = printDegrees.length > 0 ? printDegrees.join(" | ") : "Open to all Computer Engineering & Data Science students";
}
// 3. Filtro scadenze temporali
var card = document.querySelector(".person-thesis-card-644");
if (card) {
var deadlineStr = card.getAttribute("data-deadline");
if (deadlineStr) {
var today = new Date();
today.setHours(0,0,0,0);
var deadline = new Date(deadlineStr);
if (deadline < today) {
card.style.display = "none";
card.classList.add("is-expired-hidden");
}
}
}
})();