Mi sa che stai facendo un po' di confusione:
1) opencv e' una libreria per la visione artificiale, object detection, numpy una libreria per il calcolo tensoriale, pillow una libreria per l'elaborazione di immagini. Quindi niente di tutto questa ha a che fare con reti neurali e con un modello di deep learning
2) ck+ e' una libreria per il riconoscimento delle espressioni e non delle facce. Ma fa niente, non e' un problema
3) non hai nominato flask, che e' un web server, ne una libreria per le Neural Network, ma probabilmente stai utilizzando quella integrata in OpenCV
4) stai mescolando un'applicazione CLIENT (il client INVIA l'immagine al servizio REST installato sul server Flask, e riceve il risultato in formato JSON) DA un'applicazione SERVER
5) Spring, e tecnologie correlate, sono piu' utili nell'implementare applicazioni lato SERVER, basati sui pattern 'Inversion Of Control, Dependency Injection e, per quanto riguarda la realizzazione di un web server/restful service, sul pattern MVC
6) certamente, si possono realizzare anche semplici applicazioni che niente hanno a che fare con il Web, usando SOLO la parte di pattern relativi Inversion Of Control, Dependency Injection.
Ora, ovviamente puoi fare tutto nel modo che preferisci, ma certamente usare Spring NON E' una passeggiata (e' un framework abbastanza complesso), e, ovviamente, NON CI SONO tutorial che spiegano ESATTAMENTE come fare quello che serve a te.
Devi STUDIARE la documentazione e piegare il framework al TUO volere
Pero' questo vuol anche dire che OLTRE a Python, devi conoscere MOLTO bene anche Java, i concetti di J2EE (JDBC, JTS, librerie Java per JSON, eventualmente ORM e librerie come Hibernate, ...) e n-mila altre cose.
Risulterebbe molto piu' semplice continuare con Python.
Se ti serve un application serve piu' evoluto di Flask, c'e' Django.
In pratica, TUTTO quello che vorresti fare usando Spring+Java+... lo puoi fare in Flask/Django+Python+...
Ovviamente e' solo un consiglio