Giter VIP home page Giter VIP logo

fishervector's Introduction

Build Status

Description

The package implements Improved Fisher Vectors as described in [1]. For a more concise description of Fisher Vectors see [2]. The functionality includes:

  • Fitting a Gaussian Mixture Model (GMM)
  • Determining the number of GMM components via BIC
  • Saving and loading the fitted GMM
  • Computing the (Improved) Fisher Vectors based on the fitted GMM

Installation

For intsallation via pip run the following command on your terminal (requires python 3.4 or higher):

$ pip install fishervector

afterwards you should be able to import the package in python:

from fishervector import FisherVectorGMM

First Steps

1. Simulate some data / get your data ready

We randomly sample data just for this tutorial -> use your own data e.g. SIFT features of images

import numpy as np
shape = [300, 20, 32] # e.g. SIFT image features
image_data = np.concatenate([np.random.normal(-np.ones(30), size=shape), np.random.normal(np.ones(30), size=shape)], axis=0)
2. Train the GMM
from fishervector import FisherVectorGMM
fv_gmm = FisherVectorGMM(n_kernels=10).fit(image_data)

Or alternatively fit the GMM using the BIC to determine the number of GMM components automatically:

from fishervector import FisherVectorGMM
fv_gmm = FisherVectorGMM().fit_by_bic(test_data, choices_n_kernels=[2,5,10,20])
3. Computing improved fisher vectors
image_data_test = image_data[:20] # use a fraction of the data to compute the fisher vectors
fv = fv_gmm.predict(image_data_test)

Contributors:

References:

fishervector's People

Contributors

jonasrothfuss avatar

Watchers

Tai Do avatar

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.