Per prima cosa non sono tanto convinto del passaggio via get delle vars rapporto e quality.
Detto questo dovresti eliminare un errore per volta.
Il primo ed il secondo warning si riferiscono ad una divisione per zero: controlla il valore di $size[0] e $size[1] (il file miniature non c'entra proprio niente). Se sono zero c'è qualcosa che non va. Insomma, analizza lo script mano mano controllando che ti venga restituito esattamente ciò che ti aspetti.