Skip to content

fossabot/Cyclens

Repository files navigation

License: MIT Open Source Love FOSSA Status Sourcegraph

Blazingly Fast, Async, Multi-Task, All-in-One, Image Recognition Modules

What It Is

Features

How To Use

Installation

Requirements

Dependencies

Collaborators

Branches

Copyright & Licensing

Contributing

What It Is

Cyclens is an All-in-One recognition API server with Async features.

  • Age Prediction

  • Emotion Recognition

  • Face Recognition

  • Gender Prediction

Features

  • Pipeline based process structure between tasks

  • Async powered, non-blocking API loop

  • Multitask struct for each module process

  • Apache Solr powered face search engine

How To Use

  • Download the Cyclens Mobile Client here

Just send a POST request with module parameters to the Flask server.

  • cURL POST
$ curl -F "file=@/home/path/to/your/image/file.jpg" http://localhost:5000/api/v1/demo/single?ar=true&ap=true&er=true&fr=true&gp=true
  • Face Recognition
$ curl -F "file=@/home/path/to/your/image/file.jpg" http://localhost:5000/api/v1/demo/face_add?id=0&name=FooBar
  • Example Output:
{
    "success": true,
    "message": "null",
    "process": {
        "start": "2019-06-02T01:50:05.731130",
        "end": "2019-06-02T01:50:06.580368",
        "total": 849.24
    },
    "modules": [
        {
            "success": true,
            "module": "module_name",
            "message": "null",
            "process": {
                "start": "2019-06-02T01:50:05.731208",
                "end": "2019-06-02T01:50:06.579839",
                "total": 848.63,
                "locations": 97.39,
                "encodings": 240.98,
                "search": 21.1
            },
            "found": 1,
            "rate": 100.0,
            "faces": [
                {
                    "result": "Test",
                    "confidence": 0.87
                }
            ]
        },
    ]
}

Installation

  1. Clone the project to your computer and navigate to folder by executing the following command:
$ git clone https://github.com/Dentrax/Cyclens.git && cd ./Cyclens/
  1. Create your own virtualenv and install the requirements by executing the following commands:
$ virtualenv -p python ./
$ source ./bin/activate
$ pip install -r requirements.txt
  1. Run the Cyclens with following command
$ sh ./start.sh
  • Run this command if you want to test all cases
$ python -m unittest -v
  • Run this command if you want to test demo project
$ python ./demo/demo.py

Requirements

Data Models

  1. Download this and put in ./models/data/age/
  2. Download this and put in ./models/data/emotion/
  3. Download this and put in ./models/data/face/
  4. Download this and put in ./models/data/gender/

Apache Solr

  1. Download the Apache Solr from here
  2. Start the Solr with: ./bin/solr start
  3. Make sure the Solr running on the port 8983

Dependencies

Collaborators

Branches

We publish source for the [Cyclens] in single rolling branch:

The master branch is extensively tested and makes a great starting point. Also tracks live changes by commits.

Copyright & Licensing

All program code (i.e. .py) is licensed under MIT License unless otherwise specified. Please see the LICENSE file for more information.

FOSSA Status

References

While this repository is being prepared, it may have been quoted from some sources.

Please see the REFERENCES file for more information.

If there is an unspecified source or if you think that I made a copyright infringement, please contact with me.

Contributing

Please check the CONTRIBUTING.MD file for contribution instructions and naming guidelines.

About

Blazingly Fast, Async, Multi-Task, All-in-One, Image Recognition API Server

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published