Skip to content
The best AI to help you to recycle your garbage and getting fun doing it
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ai
compass
media
nasa
src
templates
.gitignore
.travis.yml
README.md
db.sqlite3
manage.py
pytest.ini
requirements.txt

README.md

Great Gatsvim

The only thing you need to test our app is an Android device with Android lollipop or higher version installed. Download our last signed apk and get fun.

MENU

The idea

How does it work?

As soon as you open the app you will see your score. When you scan a new object, depending on what kind of material is it made of, you will get a different score. The manufacture of plastic emit more CO2 than the manufacture of paperboard, in this case you will get a higher score if you recycle plastic than if you recycle paperboard.

If you don't know if a particular object can be recyclable you can scan it with our app and you will see if it is or it isn't. Also, if it is recyclable, you will see he color of the container were the object must be recycle.

How do we build it?

We are aware that are more smartphones connected to the internet than computers, so we decided to create a native app for Android. However this is not the final project. We build​ an API so in the future we could build an IOS app, web app or even a robotic arm to help companies to recycle.

First we need the power of an artificial intelligence, we wanted this AI learn and become smarter. A great start point is Tensorflow, our server is build in python3 with django, great news cause Tensorflow run in python.

We manage to create asynchronous tasks (redis) to let our AI self learning. The more you use our artificial intelligence, smarter it becomes.

The future

Prerequisites

  • Python 3
    • pip
    • virtualenvwrapper
  • Redis
  • git
  • docker

Install

I hardly recommend to install virtualenvwrapper

$ mkvirtualenv -p python3 nasa
$ pip install -r requirements.txt

Run

$ python manage.py celery -A nasa worker -l debug -B
$ python manage.py runserver 0.0.0.0:8000

API

api

Method Description
GET Get a resource or get a list of resources
POST Create a control

Endpoint

[GET] /picture/
Request
$ curl -H "Content-Type: application/json" -i http://nasa2017.jorgechato.com/picture/
-H "Content-Type: application/json"
Response
HTTP/1.1 200 OK
Server: nginx/1.6.2
Date: Wed, 03 May 2017 09:02:40 GMT
Content-Type: application/json
Content-Length: 2635
Connection: keep-alive
X-Frame-Options: SAMEORIGIN
Vary: Accept, Cookie, Accept-Encoding
Allow: GET, POST, OPTIONS

[{"pk":63,"feature":"http://nasa2017.jorgechato.com/media/raw/aLsaiaDFqC.jpg","label":"","score":0,"co2":null,"recyclable":false,"created_at":"2017-05-02T21:01:28.956238Z"},...]
[POST] /picture/
Request
$ curl -H "Content-Type: application/json" -i http://nasa2017.jorgechato.com/picture/ -X POST --data '{feature:<picture>}'
-H "Content-Type: application/json"
Response
HTTP/1.1 200 OK
Server: nginx/1.6.2
Date: Wed, 03 May 2017 09:02:40 GMT
Content-Type: application/json
Content-Length: 2635
Connection: keep-alive
X-Frame-Options: SAMEORIGIN
Vary: Accept, Cookie, Accept-Encoding
Allow: GET, POST, OPTIONS

{"pk":63,"feature":"http://nasa2017.jorgechato.com/media/raw/aLsaiaDFqC.jpg","label":"","score":0,"co2":null,"recyclable":false,"created_at":"2017-05-02T21:01:28.956238Z"}

Screenshots

Demo

You can test the api by clicking on nasa2017.jorgechato.com. However if you would like to test the all functionality of our project we recommend you to install the last signed apk (only for Android).

You can also see the Android application project, it is build on java. Ready to use in all android devices with lollipop or higher version installed. https://github.com/TheGreatGatsvim/NASA-April-2017-Android2.0

You can’t perform that action at this time.