guarda è abbastanza semplice, si tratta di una richiesta POST con type=multipart/form-data, anche se molti server web riescono a fare a meno di questa info.
Quindi normale post, con il binario del file. poi PHP, ASP, quelchevuoi riceve la richesta e la salva su disco o DB
il problema che arduino non riesce a leggere tutta l'immagine in un colpo solo è risolvibile leggendo un pezzo alla volta, tanto la richiesta post può essere fatta di tanta invii (però la richiesta deve rimanere una sola!)
si che si può fare, ho provato anche a mandare un mp3 da 6Mb dalla SD, ci mette 5-6 minuti ma arriva e la richiesta è una sola, semplicemente il tuo php dovrebbe fare un download di un file. Tieni conto che arduino non invia più di 1 Mb al minuto, potente ehh?