Coder Social home page Coder Social logo

columbiadvmm / columbiaimagesearch Goto Github PK

View Code? Open in Web Editor NEW
55.0 14.0 29.0 31.27 MB

Columbia Image and Face Search tool for MEMEX

Home Page: http://www.ee.columbia.edu/ln/dvmm/memex/

License: Apache License 2.0

Python 91.23% Shell 5.39% HTML 0.72% C++ 1.19% CSS 0.06% Makefile 1.30% Dockerfile 0.11%
image image-search memex hbase spark python hashing columbia-university face-api face-detection

columbiaimagesearch's Introduction

Columbia University Image and Face Search Tool

Author: Svebor Karaman

This repository implements the image and face search tools developed by the DVMM lab of Columbia University for the MEMEX project by Dr. Svebor Karaman, Dr. Tao Chen and Prof. Shih-Fu Chang.

Overview

This project can be used to build a searchable index of images that can scale to millions of images. It provides a RESTful API for querying the index to find similar images in less than a second.

The images index is built by extracting features from the images. Two feature extraction models are included:

  • A full image recognition model is based on the DeepSentibank feature representation that was trained targeting the Adjective-Noun Pairs (ANP) of the Visual Sentiment Ontology.
  • A face detection and recognition model, that are the publicly available models from the DLib library, see the blog post DLib face recognition for more information about the models.

However, the package cufacesearch has been written in a modular way and using another image feature extraction model, face detection or recognition model should be fairly easy. The package cufacesearch is fully documented, you can build the documentation following the instructions in the docs folder.

NB: For now, the python package is still named cufacesearch even if it contains both image and face search capability. The package could be renamed soon.

Installation

Pre-requisite

This repository relies on docker and docker-compose for an easy setup, you will need to have those installed. Install docker-compose on your system following the guidelines at: https://docs.docker.com/compose/install/.

You could install all the dependencies packages and run the tools outside of docker, but this is considered an advanced setting that is not documented yet.

Setup the environment

The folder setup contains detailed description on how to setup the tool, with examples building the index for publicly available datasets. Check the README.md in that folder to get you started.

Perform searches

You can check the README.md file in www folder for details about the API usage. You can also open your browser at http://localhost/[endpoint]/view_similar_byURL?data=[an_image_URL] to visualize some results.

License and citations

This software is release under the Apache License Version 2.0, see LICENSE. This repository contains a modified version of the python lopq package in lopq also released under an Apache License Version 2.0.

If you use this software in a product please mention in any communication (website, presentation, etc...) regarding the image search capabilities of your product that it relies on this repository with a sentence like:

The image search capabilities of this product rely on the open-sourced "ColumbiaImageSearch" tool developed by Dr. Svebor Karaman, Dr. Tao Chen and Prof. Shih-Fu Chang at the DVMM lab of Columbia University and available at https://github.com/ColumbiaDVMM/ColumbiaImageSearch.

If you use this repository in a research paper, you can cite it as:

@misc{KaramanCIS2015,
  author = {Svebor Karaman and Tao Chen and Shih{-}Fu Chang},
  title = {Columbia Image Search},
  year = {2015},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/ColumbiaDVMM/ColumbiaImageSearch}}
}

If you use the DeepSentibank feature extraction, please cite the following paper:

@article{ChenDSB14,
  author    = {Tao Chen and
               Damian Borth and
               Trevor Darrell and
               Shih{-}Fu Chang},
  title     = {DeepSentiBank: Visual Sentiment Concept Classification with Deep Convolutional
               Neural Networks},
  journal   = {CoRR},
  volume    = {abs/1410.8586},
  year      = {2014},
  url       = {http://arxiv.org/abs/1410.8586}
}

Acknowledgments

This research was supported in part by the Defense Advanced Research Projects Agency (DARPA) and the Air Force Research Laboratory (AFRL) under contract number FA8750-14-C-0240. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of DARPA or the U.S. Government.

Contact

Please feel free to contact me with any questions you may have. Also, please post any issue you encounter or request features on github.

columbiaimagesearch's People

Contributors

svebk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

columbiaimagesearch's Issues

Propose Logo

Hi. I'm graphic disigner. I would like to know if you are interested that I make a logo for your project? If you allowed me, i"ll make logo for your project and it's free.

No License

Please include a license for the project. In the DARPA catalog this project is listed as BSD licensed but there is no indication of that in the repo.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.