DeepOculos: Generative AI For Eye Retina Disease Tracking
by Timothy Gao, Henry Hong, Marcus Koh, Ohm Rajpal, and Henry Lee
Original Retinal Eye Motion Video (data provided by C. Light Technologies):
512x512
Our DCGAN-generated Synthetic Eye Motion Video (with embedded pupil trace statistics):
64x64 (upscaled with cubic interpolation)
DCGAN Training Progress:
- First 1000 Epochs
- 2000 Epochs
- 3000 Epochs
- We view horizontal and vertical location of pupil as independent time series and apply LSTM to generate future prediction for each
- LSTM-generated locations are fed into DCGAN for the pupil trace statistics
The Challenge: Use generative AI to create artificial retinal video sequences & eye motion traces given a disease state.
Implementation Details:
- Used a four-layer LSTM network with dropout regularization after each LSTM layer and a single dense neuron output layer
- Trained over 50 epochs, with rmsprop optimizer and mean_squared_error as loss function
- Utilized first 80% of each time series as training data, last 20% as testing data
- Used MinMaxScaler to normalize all pixel values to [-1, 1] domain
- Used previous 60 frames as context for each sliding window
Technologies Used:
- Tensorflow: To build LSTMs, GANs
- Scikit-Learn: MinMaxScaler and Train Test Split
- Keras: Deep learning API (Sequential Model and neural network layers)
- Seaborn and Matplotlib: Data Visualization
- NumPy: For calculations and array manipulation
- Pandas: For processing CSV files