blob: f9e14aad7e548577567f99dc04179fa2ea6b2a29 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# neural-art
Neural Style Transfer done from the CLI using a VGG backbone and presented as an MP4.
Weights can be downloaded from [here](https://m1.afileditch.ch/ajjMsHrRhnikrrCiUXgY.pth). The downloaded file should be placed in `./weights/` and any file will be ignored from there when pushing, as seen in `./.gitignore`. Update: Alternatively, if the `./weights/` directory is empty, `./neuralart.py` will automatically download the aforementioned default weights.
### Why use this in 2023 ?
Because style transfer hasn't changed drastically in terms of actual results in the past years. I personally find a certain beauty in inputting a style and content image rather than a well curated prompt with a dozen of switches. Consider this repo as a quick *just works* solution that can run on both CPU and GPU effectively.
## Usage
The script sits comfortably in `./stylize.sh` so run it (strictly from the project directory):
```bash
./stylize.sh path/to/style_image path/to/content_image
```
A helper script is also available to run `./stylize.sh` for each distinct pair of images present in the `./Images/` directory:
```bash
./all.sh
```
If, at any point, curious of the individual frames that comprise the generated `./content_in_style.mp4` check `./Output/`
There's also a (redundant) `./images.npy` file that contains raw array data. `./clear_dir.sh` removes redundant files each time they're no longer needed.
### Requirements
All requirements are specified in `./requirements.txt` as per python etiquette:
```bash
pip install -r requirements.txt
```
|