Skip to main content

Neural Style Transfer using VGG19

Project description

NST_VGG19

Neural Style Transfer using VGG19.

Original paper link.

VGG19 weights from torchvision.

Installation

pip install nst_vgg19

Usage

from nst_vgg19 import NST_VGG19

# images must be Numpy arrays. Use np.array(pil_image)

style_image = load_image('style.png')
content_image_1 = load_image('img1.jpg')
content_image_2 = load_image('img2.png')

nst = NST_VGG19(style_image)

result_1 = nst(content_image_1)
result_2 = nst(content_image_2)

NST_VGG19 constructor options

  • style_image_numpy: Numpy array of the style image in format (Heght, Width, Channels). This is a default Numpy image array.
  • content_layers_weights: Dictionary of weights for content losses.
  • style_layers_weights: Dictionary of weights for style losses.
  • quality_loss_weight: Weight for quality loss.
  • delta_loss_threshold: Loss change threshold for stopping optimization.

If you do not specify weights of loss, the folowing parameters will be used:

DEFAULT_CONTENT_WEIGHTS = {
    'conv_1': 35000,  # Shape?
    'conv_2': 28000,
    'conv_4': 30000,
}
DEFAULT_STYLE_WEIGHTS = {
    'conv_2': 0.000001,  # Light/shadow?
    'conv_4': 0.000009,  # Contrast?
    'conv_5': 0.000006,  # Volume?
    'conv_7': 0.000003,
    'conv_8': 0.000002,  # Dents?
    'conv_9': 0.000003
}
quality_loss_weight=2e-4

If optimization delta becomes less than delta_loss_threshold then style transfer stops.

nst = NST_VGG19(style_image, style_layers_weights=my_weights, delta_loss_threshold=0.001)

result = nst(content_image) # no params except of image

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nst_vgg19-0.1.7.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nst_vgg19-0.1.7-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file nst_vgg19-0.1.7.tar.gz.

File metadata

  • Download URL: nst_vgg19-0.1.7.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for nst_vgg19-0.1.7.tar.gz
Algorithm Hash digest
SHA256 a683c4248f0d371cab6e79f73aa90c19553ad6e4013dfca425637847b6641bb2
MD5 36b34f9a7a7a99f6a0e17ae891c87fa9
BLAKE2b-256 1b5fb1c48f2a4d959b01d9cf1d02aca45cb9bdbb33e1f08b22ba44b3397b0e0d

See more details on using hashes here.

File details

Details for the file nst_vgg19-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: nst_vgg19-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 7.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for nst_vgg19-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 7d7c1b3340c0c9d3ce40463988b2c42c02aedb13a62cbed48cd4a860620db93e
MD5 1c2c3298259f81b7bdd21e95001689a2
BLAKE2b-256 4aa4735488fb01817520baded0eaebbbd444834ab1bda334528d9071f441a227

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page