Practical overview
When it fits
Use it when you want to inspect or experiment with research code for neural photo editing locally, rather than edit through a hosted web service.
Who it is for
- Researchers and developers exploring generative neural-network photo editing.
- Python users who want to experiment with image and latent-space brush controls.
- Users interested in training or sampling the associated IAN models.
Documented uses
- Paint edits directly onto a natural photo.
- Make edits through a latent-space canvas and adjust brush size and magnitude.
- Select images from the included CelebA validation subset, generate random samples, and switch between images and reconstructions.
- Train an IAN on prepared CelebA data or sample a trained model.
Requirements & limits
The repository is public and lists an MIT license. The documented editor runs locally and requires a Python environment and dependencies.
- The README identifies Python 2.7 as the likely version and warns that Python 3 may be incompatible.
- Theano and Lasagne development versions are listed as requirements.
- cuDNN is optional, but the documented non-cuDNN path is limited to IAN_simple.
- Training requires Fuel and prepared 64×64 CelebA data; sampling requires matplotlib.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up and open the photo editor
Prepare the documented Python dependencies and launch the editor with its default IAN_simple model.
Before you start
- Python, likely version 2.7; the README warns of possible Python 3 incompatibilities.
- Development versions of Theano and Lasagne.
- NumPy, SciPy, PIL, Tkinter, and tkColorChooser.
- cuDNN is optional; without it, the documented fallback applies only to IAN_simple.
Steps
Install the listed Python packages and development versions of Theano and Lasagne.
If running without cuDNN, change the dnn setting in NPE.py from True to False.
On Windows, create a .theanorc file and set FLOATX=float32; on Linux, prepend THEANO_FLAGS=floatX=float32 to the command.
Run the command below.
python NPE.py
Expected outcome
The README describes the editor opening with IAN_simple, ready for its documented image and latent-space editing controls.
Guide limitations
- The Python version is stated as likely 2.7, and the author warns that Python 3 may be incompatible.
- The README says the non-cuDNN option is working only for IAN_simple.
- The README's laptop-GPU memory example is approximately 1 GB for IAN_simple, not a compatibility guarantee.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 16 October 2026
- Original website title
- ajbrock/Neural-Photo-Editor · Official homepage title · retained in its source language

