Skip to main content

Jackalifying pictures!

Project description

Искажение изображений (алгоритм Seam carving)

Задача: получение из изображения искаженного изображения (видео).

Возможности искажателя

  • Загрузка изображения через web и получение искаженного изображения/видео на выходе с возможностью скачивания;

  • Искажение изображения и его сохранение с помощью командной строки.

  • Пример работы алгоритма:

До:

examples/wolf.png

После:

examples/wolf.gif

Зависимости

  • fastapi

  • numpy

  • cv2

Пользовательские интерфейсы

  • web-интерфейс на HTML, CSS, JS;

  • интерфейс командной строки.

Макет web-интерфейса

Страница загрузки файла:

examples/main.png

Страница с отслеживанием прогресса создания результата:

examples/progress.png

Страница с результатом и возможностью скачивания:

examples/result.png

Интерфейс командной строки

python -m jackalify [-h] [-w] [-g] [-o OUTPUT_PATH] [INPUT_PATH]

Если не указан флаг -g, то создастся статичная картинка. Также если не указано имя выходного файла, то искажённое изображение (или gif) будет создано рядом с исходной картинкой. Если не указан флаг -w, то обязательно наличие входного файла, однако если флаг -w указан, никакие другие аргументы не должны присутствовать.

Опции:

  • -h - помощь;

  • -w - запуск серверного интерфейса (fastapi), опционально;

  • -o - имя выходного файла, опционально;

  • -g - создание gif вместо статичной картинки, опционально;

  • INPUT_PATH - путь к файлу с оригинальным изображением, опционально.

Примеры:

  • python -m jackalify wolf.png -o wolf-jackal.png - получение искаженного изображения wolf-jackal.png

  • python -m jackalify wolf.png - получение искаженного изображения wolf_jackalified.png

  • python -m jackalify wolf.png -o wolf-jackal.gif -g - получение искаженного видео wolf-jackal.gif

  • python -m jackalify -w - запуск серверного интерфейса

При установке пакета через pip вместо python -m jackalify нужно вызывать jackalify.

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

jackalify-0.2.2.tar.gz (68.7 MB view details)

Uploaded Source

Built Distribution

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

jackalify-0.2.2-py3-none-any.whl (35.4 kB view details)

Uploaded Python 3

File details

Details for the file jackalify-0.2.2.tar.gz.

File metadata

  • Download URL: jackalify-0.2.2.tar.gz
  • Upload date:
  • Size: 68.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.12

File hashes

Hashes for jackalify-0.2.2.tar.gz
Algorithm Hash digest
SHA256 ba170cdb1e16f2ce64079460daf4c41c8c0cea4c8d2c0c6c9c19ca8dd144f923
MD5 3ecf77ae800e5317a285389fe2df666b
BLAKE2b-256 abd5de9bd9e9480b438c3c679e749dcecca903095903a4aa0e4dddd80bf09735

See more details on using hashes here.

File details

Details for the file jackalify-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: jackalify-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 35.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.12

File hashes

Hashes for jackalify-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1c20e228b48e5711716307a11537ff55bdd4af039bae0aeb19aade289fd829af
MD5 494f8ec7a75926fa6aa10f0e6de971fe
BLAKE2b-256 b5472833e03e67f0a98e070e3c15e0720726078547dc700bebc44c629b908853

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