Fare un crop automatico non mi sembra una buona idea. Rischi di non visualizzare parti importanti della foto.

Piuttosto farei un blocco quadrato per ciascuna immagine, e poi farei scegliere a chi inserisce l'immagine se vuole lasciarla intera (con spazi bianchi a destra/sinistra oppure in alto/basso), oppure ingrandirla lasciando solo una parte.

Per centrare l'immagine nello spazio quadrato, puoi usare il posizionamento assoluto dell'immagine dentro il blocco posizionato relative, e giocando con top/left 50% (vedi tra i "link utili" il modo di posizionare).
Ricorda che se all'immagine <img> dai una sola dimensione, l'altra dimensione segue senza distorcere.