Skip to main content

🧿 Pupyl is a really fast image search library which you can index your own (millions of) images and find similar images in millisecond.

Project description

pupyl pupyl-ci codecov CII Best Practices anaconda PyPI version Downloads

pupyl - A Python Image Search Library

🧿 pupyl what?

The pupyl project (pronounced pyoo·piel) is a pythonic library to perform image search tasks. It's intended to made easy reading, indexing, retrieving and maintaining a complete reverse image search engine. You can use it in your own data pipelines, web projects and wherever you find fit!

🎉 Getting started

📦 Installation

Installing pupyl on your environment is pretty easy:

# pypi
pip install pupyl

or

# anaconda
conda install pupyl

🚸 Usage

from pupyl.search import PupylImageSearch
from pupyl.web import interface


SAMPLES = (
    'https://github.com/policratus/pupyl'
    + '/raw/master/samples/pupyl1kflickr.txt.xz'
)

SEARCH = PupylImageSearch()

SEARCH.index(SAMPLES)

interface.serve()

Disclaimer: the example above creates pupyl assets on your temporary directory. To define a non-volatile database, you should define data_dir parameter.

📌 Dependencies

See all dependencies here: dependencies.

🐧 Linux

Some linux distros are packaged without some essential applications to built pupyl dependencies. If during the installation you face errors like this:

error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

try install C/C++ build dependencies and python development headers, like this:

# Debian/Ubuntu
sudo apt install build-essential python3-dev

# Fedora
sudo dnf install make automake gcc gcc-c++ kernel-devel python3-devel

# Redhat/CentOS
sudo yum groupinstall 'Development Tools'
sudo yum install python3-devel

# Suse/OpenSuse
zypper install -t pattern devel_basis
zypper install python3-dev

# Arch
sudo pacman -S base-devel python3-dev

# Clearlinux
sudo swupd bundle-add c-basic python-basic-dev

📝 Documentation

See a quick reference guide on the repository wiki. Complete API reference coming soon.

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

pupyl-0.10.1.tar.gz (18.8 kB view details)

Uploaded Source

Built Distribution

pupyl-0.10.1-py3-none-any.whl (24.6 kB view details)

Uploaded Python 3

File details

Details for the file pupyl-0.10.1.tar.gz.

File metadata

  • Download URL: pupyl-0.10.1.tar.gz
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for pupyl-0.10.1.tar.gz
Algorithm Hash digest
SHA256 eaa1defb484f317e01e472414d09e98dda8299f3f5df10f887e2853ff1dbae27
MD5 fcecef8718a32859d3c8b14208306cfe
BLAKE2b-256 5fa0f1a22890285ae8e46fc3f7308aa22ce38f5b2bffefe4994144099257b2b5

See more details on using hashes here.

File details

Details for the file pupyl-0.10.1-py3-none-any.whl.

File metadata

  • Download URL: pupyl-0.10.1-py3-none-any.whl
  • Upload date:
  • Size: 24.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for pupyl-0.10.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e201fd3cd8a40037496541fea934b8b0c9e01605adb2c9f0830582992b837889
MD5 4251f24d6655f7ffdec4858780a07de9
BLAKE2b-256 6eda382136ffa7a40da77083d0b57a03aff1022ca2cb76684e2b7b3275d6bf44

See more details on using hashes here.

Supported by

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