Sto affrontando il problema di avere immagini di dimensioni diverse come input in un'attività di segmentazione. Si noti che le immagini non hanno nemmeno le stesse proporzioni.
Un approccio comune che ho trovato in generale nel deep learning è quello di ritagliare le immagini, come è anche suggerito qui . Tuttavia, nel mio caso non posso ritagliare l'immagine e mantenerne il centro o qualcosa di simile poiché nella segmentazione voglio che l'output abbia le stesse dimensioni dell'input.
Questo documento suggerisce che in un'attività di segmentazione si può alimentare la stessa immagine più volte alla rete ma con una scala diversa e quindi aggregare i risultati. Se comprendo correttamente questo approccio, funzionerebbe solo se tutte le immagini di input avessero le stesse proporzioni. Perfavore, correggimi se sbaglio.
Un'altra alternativa sarebbe quella di ridimensionare ogni immagine a dimensioni fisse. Penso che ciò sia stato proposto anche dalla risposta a questa domanda. Tuttavia, non è specificato in che modo vengono ridimensionate le immagini.
Ho considerato di prendere la massima larghezza e altezza nel set di dati e ridimensionare tutte le immagini a quella dimensione fissa nel tentativo di evitare la perdita di informazioni. Tuttavia, credo che la nostra rete potrebbe avere difficoltà con immagini distorte poiché i bordi di un'immagine potrebbero non essere chiari. Qual è forse il modo migliore per ridimensionare le tue immagini prima di inviarle alla rete?
C'è qualche altra opzione di cui non sono a conoscenza per risolvere il problema di avere immagini di dimensioni diverse?
Inoltre, quale di questi approcci ritieni sia il migliore tenendo conto della complessità computazionale ma anche della possibile perdita di prestazioni da parte della rete?
Gradirei se le risposte alle mie domande includessero qualche link a una fonte se ce n'è una. Grazie.