Skip to content

Search over large image datasets with natural language and computer vision!

Notifications You must be signed in to change notification settings

QuillDurand/memery

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

memery

Search over large image datasets with natural language and computer vision!

Install

The necessary CLIP and torch packages will be installed by pip. You might want to make sure you have a sane CUDA environment before and after this step if you're trying to use GPU. If you don't have a GPU, memery should still work on your CPU.

If you have any trouble please open an issue on Github! I want to make this package useful for as many people as possible. Help me know what's going wrong :)

pip install memery

If you don't have a GPU for PyTorch, this command might help

pip install torch==1.7.1+cpu torchvision==0.8.2+cpu torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html

Edit from Quill: still pip install memery to get the dependencies, but then also clone the repository to get the updated files

How to use

Use GUI

The browser GUI is a Streamlit app. You can run it from the command line with

memery serve

or set up a desktop shortcut to use it from your menu.

Edit from Quill: this runs the version in the pip package, to run the modified version use streamlit run ./streamlit_app.py from within the memery/memery folder

If you're in a Jupyter environment, you can summon the GUI directly into an output cell like this:

from memery.gui import appPage
app = appPage()
display(app)
<memery.gui.appPage at 0x7f6c0e7c80d0>

Use CLI

From the command line, you can use memery on any folder and it will search for images recursively, returning a list object to stdout.

Pass the --n flag to control how many images are returned (default 10).

memery recall PATH/TO/IMAGE/FOLDER 'query' --n 20

Use as a library

Simply use queryFlow to search over a folder recursively! The folder will be indexed, if an index doesn't already exist. Then any new images will be CLIP-encoded, an Annoy treemap built, and a list of ranked filenames returned.

from memery.core import queryFlow
from memery.gui import get_grid
ranked = queryFlow('./images', 'dad joke')

print(ranked[:5])

About

Search over large image datasets with natural language and computer vision!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 99.8%
  • Other 0.2%