from clarifai.client import ClarifaiApi
import sys

clarifai_api = ClarifaiApi(model='nsfw-v1.0')
result = clarifai_api.tag_image_urls(str(sys.argv[1]))
result = result['results'][0]['result']['tag']['probs']

if result[0] > result[1]:
    print 'Safe for work!'
else:
    print 'Not safe for work.'
Beispiel #2
0
import pandas as pd
from clarifai.client import ClarifaiApi
import PIL, os
from bson import json_util, ObjectId
from pandas.io.json import json_normalize
import json
import itertools
from pandas import DataFrame

clarifai_api = ClarifaiApi('<Client Id>','<Client Secret>')

result = clarifai_api.tag_images([open('<path to image file 1>', 'rb'), 
                                  open('<path to image file 2>', 'rb'),
                                  open('<path to image file 3>', 'rb')])
sanitized = json.loads(json_util.dumps(result['results']))
normalized = json_normalize(sanitized)
df = pd.DataFrame(normalized)

res = df.to_dict()
data = []

for x in res['docid'].keys():
    data.append(itertools.izip_longest([res['docid_str'][x]],  res['result.tag.classes'][x], res['result.tag.concept_ids'][x], res['result.tag.probs'][x], fillvalue = res['docid_str'][x]))

new_data = list(itertools.chain.from_iterable(data))
df3 = DataFrame(new_data, columns = ['docid_str', 'tag_class', 'tag_concept', 'tag_probs'])

print df3
								  
Beispiel #3
0
# Clarifai Image Tag Accumulator
# to run, follow instructions on: https://github.com/Clarifai/clarifai-python

import json
from collections import defaultdict
from clarifai.client import ClarifaiApi
clarifai_api = ClarifaiApi()

# initialize tag dictionary for tags and their frequencies
d = defaultdict(int)
taglist = []
iter = 0

# read and process each url
with open("imglist.txt") as f:
    imglist = f.readlines()

# get tags using clarifai, add tags to taglist
for line in imglist:
    result = clarifai_api.tag_image_urls(line.rstrip('\n'))
    tags = result['results'][0]['result']['tag']['classes']
    for i in range(0,len(tags)):
        if type(tags[i]) is str:
            taglist.append(tags[i])
    print("next iter:" + str(iter))
    iter += 1

# convert taglist to dictionary
for x in range(0,len(taglist)):
    d[taglist[x]] += 1
Beispiel #4
0
from clarifai.client import ClarifaiApi

#credentials to access the Clarifai API
clarifai_api = ClarifaiApi(
    app_id="kqwTnQ7CEHM1v3W_nO4Qi0A6k5VjKmzINOKEDG9d",
    app_secret="ZCdFchZrIfS0nPMD64mG_keGcAnIPHQnn7dVxX1K")

# clarifai_api = ClarifaiApi(app_id="0GeRCt-zofqj9_xcXAryJDM4U-zwKq7WRnMWf9Dg",
#                            app_secret="NX073ug4XtrOss3ZGsA1ZS-rx7-ZnYoFiMmH5sP9")


def generate_tags(url_image):
    # url_image is the url of the image that need to be tagged.
    # the tags are then stored in result in JSON format.
    result = clarifai_api.tag_image_urls(url_image)
    # result is a nested JSON, from which we can now get classes and probabilities
    tags_result = result[u'results'][0]["result"]["tag"]
    tags = tags_result["classes"]
    probs = tags_result["probs"]
    print tags
    print probs
    return (tags, probs)


#
#
# generate_tags('http://farm1.staticflickr.com/38/77131556_10d679c856.jpg')
	def client(self, app_id, app_secret):

		return ClarifaiApi(app_id, app_secret)
  def test_usage(self):
    api = ClarifaiApi()

    response = api.get_usage()
    self.assertTrue(response)
    self.assertTrue(len(response['user_throttles']) == 2)
Beispiel #7
0
 def __init__(self, **kargs):
     os.environ['CLARIFAI_APP_ID'] = kargs['app_id']
     os.environ['CLARIFAI_APP_SECRET'] = kargs['app_secret']
     self.cfa = ClarifaiApi()
Beispiel #8
0
    def __init__(self, input_filename, output_filename):

        self.fio_r = open(input_filename, 'r')
        self.fio_w = open(output_filename, 'wb')
        self.api = ClarifaiApi(model='general-v1.3')
Beispiel #9
0
#Importing the credentials for the various APIs used
import credentials

#Python module for parsing JSON
import json

#Session object makes use of 'a secret key'.
#SECRET_KEY = 'a secret key'

#Flask server side application setup
app = Flask(__name__)
app.config.from_object(__name__)

#Initialization of API clients for Twilio and Clarifai
twilio_api = TwilioRestClient(credentials.account_sid, credentials.auth_token)
clarifai_api = ClarifaiApi(credentials.my_clarifai_id,
                           credentials.my_clarifai_secret)


def request_yelp(url, url_params=None):
    #Initialization of credential parameters for Yelp API
    consumer_key = credentials.my_yelp_consumer_key
    consumer_secret = credentials.my_yelp_consumer_secret
    token = credentials.my_yelp_token
    token_secret = credentials.my_yelp_token_secret
    url_params = url_params or {}

    #Making the API get request using the oauth2 python library using the previously initialized credential parameters
    consumer = oauth2.Consumer(consumer_key, consumer_secret)
    oauth_request = oauth2.Request(method="GET",
                                   url=url,
                                   parameters=url_params)
Beispiel #10
0
from flask import Flask, Response, request, render_template
from pymongo import MongoClient
from bson import json_util
from clarifai.client import ClarifaiApi
import urbanairship as ua
from urbanairship import ios

from settings_local import (CLARIFAI_APP_ID, CLARIFAI_APP_SECRET, UA_KEY,
                            UA_SECRET)

app = Flask(__name__)
db = MongoClient()["betim"]

airship = ua.Airship(UA_KEY, UA_SECRET)

clarifai_api = ClarifaiApi(app_id=CLARIFAI_APP_ID,
                           app_secret=CLARIFAI_APP_SECRET)


def jsonify(data):
    return Response(json_util.dumps(data), mimetype='application/json')


@app.route("/images", methods=['GET'])
def get_images():
    result = db.images.find({"comment": None}).sort([['date_creation', -1]])

    return jsonify({
        'images': [{
            'id': str(image.get('_id')),
            'description': image.get('description'),
            'url': image.get('url'),
Beispiel #11
0
 def test_embed_one_image(self):
     image_url = 'http://clarifai-img.s3.amazonaws.com/test/toddler-flowers.jpeg'
     api = ClarifaiApi()
     response = api.embed_image_urls(image_url)
     self.assertTrue(response)
     self.assertTrue(response['results'][0]['url'] == image_url)
Beispiel #12
0
def main(argv):

    clarifai_api = ClarifaiApi()  # assumes environment variables are set.
    result1 = clarifai_api.tag_images(open(r'TL.jpg', 'rb'))
    result2 = clarifai_api.tag_images(open(r'TM.jpg', 'rb'))
    result3 = clarifai_api.tag_images(open(r'TR.jpg', 'rb'))

    result4 = clarifai_api.tag_images(open(r'ML.jpg', 'rb'))
    result5 = clarifai_api.tag_images(open(r'MM.jpg', 'rb'))
    result6 = clarifai_api.tag_images(open(r'MR.jpg', 'rb'))

    result7 = clarifai_api.tag_images(open(r'LL.jpg', 'rb'))
    result8 = clarifai_api.tag_images(open(r'LM.jpg', 'rb'))
    result9 = clarifai_api.tag_images(open(r'LR.jpg', 'rb'))

    p1 = result1['results'][0]['result']['tag']['classes']
    p2 = result2['results'][0]['result']['tag']['classes']
    p3 = result3['results'][0]['result']['tag']['classes']
    p4 = result4['results'][0]['result']['tag']['classes']
    p5 = result5['results'][0]['result']['tag']['classes']
    p6 = result6['results'][0]['result']['tag']['classes']
    p7 = result7['results'][0]['result']['tag']['classes']
    p8 = result8['results'][0]['result']['tag']['classes']
    p9 = result9['results'][0]['result']['tag']['classes']

    f = open("tag", "r")
    myItem = f.read()
    p = open("pos", "r")
    pos = p.read().split('|')

    x0 = int(pos[0].split(',')[0])
    y0 = int(pos[0].split(',')[1])

    x1 = int(pos[1].split(',')[0])
    y1 = int(pos[1].split(',')[1])

    x2 = int(pos[2].split(',')[0])
    y2 = int(pos[2].split(',')[1])

    x3 = int(pos[3].split(',')[0])
    y3 = int(pos[3].split(',')[1])

    x4 = int(pos[4].split(',')[0])
    y4 = int(pos[4].split(',')[1])

    x5 = int(pos[5].split(',')[0])
    y5 = int(pos[5].split(',')[1])

    x6 = int(pos[6].split(',')[0])
    y6 = int(pos[6].split(',')[1])

    x7 = int(pos[7].split(',')[0])
    y7 = int(pos[7].split(',')[1])

    x8 = int(pos[8].split(',')[0])
    y8 = int(pos[8].split(',')[1])

    if myItem in p1:
        click(x0, y0)
        print("TopLeft")
    if myItem in p2:
        click(x1, x1)
        print("TopMiddle")
    if myItem in p3:
        click(x2, x2)
        print("TopRight")
    if myItem in p4:
        click(x3, x3)
        print("MiddleLeft")
    if myItem in p5:
        click(x4, x4)
        print("MiddleMiddle")
    if myItem in p6:
        click(x5, x5)
        print("MiddleRight")
    if myItem in p7:
        click(x6, x6)
        print("LeftLeft")
    if myItem in p8:
        click(x7, y7)
        print("LeftMiddle")
    if myItem in p9:
        click(x8, y8)
        print("LeftRight")

    click(x8, y8 + 60)
Beispiel #13
0
from clarifai.client import ClarifaiApi



app = ClarifaiApi()

result = app.tag_image_urls('http://images.hellogiggles.com/uploads/2015/11/30/o-DAWSONS-CREEK-REUNION-facebook.jpg')

print(result)
    def test_tag_one_video(self):

        api = ClarifaiApi()
        response = api.tag_image_urls(self.video_url)
        self.assertTrue(response)
        self.assertTrue(response['results'][0]['url'] == self.video_url)
Beispiel #15
0
import time 
import RPi.GPIO as io 
io.setmode(io.BCM)
import sys, os, requests
import picamera
import glob
from clarifai.client import ClarifaiApi
#from urllib2 import Request, urlopen
#import unirest
#import json

clarifai_api = ClarifaiApi() # assumes environment variables are set.
 
pir_pin = 18

io.setup(pir_pin, io.IN) # activate input

category = ['car','auto','cars','vehicle','girl','boy','man','woman','human']

DIR = '../test_images/'

length_category = len(category)
camera = picamera.PiCamera()

camera.ISO = 1000
camera.hflip = True
camera.vflip = True
#camera.framerate = 0.01
camera.shutter_speed = 30000
camera.awb_mode ='auto'
camera.meter_mode = 'average'
Beispiel #16
0
 def test_get_info(self):
   api = ClarifaiApi()
   response = api.get_info()
   self.assertTrue(response.get('api_version'))
   self.assertTrue(len(response) > 0)
 def get_client(self, *args, **kwargs):
   return ClarifaiApi()
Beispiel #18
0
from clarifai.client import ClarifaiApi
from tkinter.filedialog import askopenfilename
from nltk.util import ngrams
import webbrowser

app_id = '6XIVPtSr1oEE6WeFi5RPARxZP52jTZ99GJ8Dz9du'
client_secret = '2A-b8xB6kzmeZJp7suqstJ3L67BzmMcoc-ehOT9b'

clarifai_api = ClarifaiApi(app_id, client_secret)

n = input('File or URL?\n')

if n.lower() == 'file':
    filename = askopenfilename()
    result = clarifai_api.tag_images(open(filename, "rb"))
else:
    filename2 = input("Enter URL")
    result = clarifai_api.tag_image_urls(filename2)

classes = result['results'][0]['result']['tag']['classes']

p = int(input("Enter the level of precision 2-5\n"))

ng = ngrams(classes, p)

templist = []
for ik in ng:
    templist.append(ik)

nresults = int(input("How many results would you like to see?"))
nsites = input("ebay or Amazon or both?")
 def test_api_connection(self):
   api = ClarifaiApi()
   self.assertTrue(api)
Beispiel #20
0
                B = o
            print o, d, A
        if B > 0.4:
            D[S].append(E)
    return D


def Cb(F, D):
    i = D.keys()
    for k in i:
        for s in D[k]:
            F.file_move(s['id'], k + "/" + s['id'][s['id'].rfind("/") + 1:])


print "Welcome to Mirage!"
x = ClarifaiApi()
m = U(F, y)
c, ca, sd = CF(m, 5)
print ca
t = Cy(m, ca, 5)
Cm(t)
h = CE("clusters/", "sample_photos_new/")
for i in h.items():
    print i
Cb(F, h)
Cr(5)
if CV(F.metadata("sample_photos_new/")["contents"]) != 0:
    m = U(F, "sample_photos_new/")
    c, ca, sd = CF(m, 2)
    print ca
    t = Cy(m, ca, 2)