示例#1
0
def get_similar_paintings(n):
    # Return random painting every once in a while for spread
    js = request.get_json()
    t = get_tree()
    # Get index that we added at get_random_painting()
    mainimgindex = js['index']
    # Calculate distance to all other paintings
    distlist = [None] * len(t)
    t1 = c()
    for i, img in enumerate(t):
        distlist[i] = utils_dist(js['index'], i)
        # Distance to itself is 0 of course
        if mainimgindex == i: distlist[i] = float('inf')
    t2 = c()
    # Return best n
    similarimgindexes = sorted(enumerate(distlist), key=lambda x: x[1])[:n]
    time = t2 - t1
    logger.info(
        "Calculated distance from painting #{} to all other paintings in {:.4f}s, chose #{}"
        .format(mainimgindex, time, similarimgindexes))
    # Add distance to json obj for later analysis
    return json.dumps(
        list(
            dict((k, v) for (k, v) in t[similarimgindex].items()
                 if k != 'features')
            for similarimgindex, _ in similarimgindexes))
示例#2
0
def get_similar_painting():
    # Return random painting every once in a while for spread
    js = request.get_json()
    t = get_tree()
    feature = js['feature']
    # Get index that we added at get_random_painting()
    mainimgindex = js['index']
    # Calculate distance to all other paintings
    distlist = [None] * len(t)
    feat1 = t[mainimgindex]['features'][feature]
    t1 = c()
    for i, img in enumerate(t):
        feat2 = img['features'][feature]
        d = dist(feature, feat1, feat2)
        distlist[i] = d
        # Distance to itself is 0 of course
        if mainimgindex == i: distlist[i] = float('inf')
    t2 = c()
    # Return best or random for spread
    mindist = min(distlist)
    similarimgindex = distlist.index(mindist)
    selectrandom = True if random.random() < .2 else False
    if selectrandom:
        logger.info(
            "get_similar_painting is getting random painting for spread")
        similarimgindex = random.randint(0, len(distlist) - 1)
    logger.info(
        "Calculated distance from painting #{index} for feature {feature} to all other paintings in {time:.4f}s, chose #{similarimgindex}"
        .format(index=mainimgindex,
                time=t2 - t1,
                feature=feature,
                similarimgindex=similarimgindex))
    # Add distance to json obj for later analysis
    return json.dumps(
        dict(((k, v)
              for (k, v) in t[similarimgindex].items() if k != 'features'),
             dist=mindist,
             feature=feature,
             index=similarimgindex,
             random=selectrandom))

##########################################################################
if __name__ == '__main__':

    from time import clock as c
    from pylab import hist, show, hold, ion, plot, xlim, draw, ioff, close
    
    #---make a mixed distribution------------------------------
    norm1 = random.normal(loc=0.0, scale= 1.0, size=1000)
    lim = 100
    unif2 = random.normal(loc=0.0, scale=50.0, size=3000)
    mix = concatenate((norm1,unif2))
    #----------------------------------------------------------

    t1 = c()
    mean1, stdev1, portion1 = do_em_nomr_n_unif(mix, 100)
    mean2 = mean1
    stdev2 = 50
    t2 = c()
    print('DONE in %s sec' % (t2-t1))

    #---Diagnostic Plot---------------------------------------------
    def dnorm(x, m, s):
        return (1/(s*(2*pi)**0.5))*exp(-(x-m)**2/(2*s**2))
    
    tracepoints = arange(-lim,+lim+1,1)
    dist1 = portion1*dnorm(tracepoints,mean1,stdev1)
    dist2 = (1-portion1)*dnorm(tracepoints,mean2,stdev2)
    total = len(mix)*(portion1*dnorm(tracepoints,mean1,stdev1)+\
                      (1-portion1)*dnorm(tracepoints,mean2,stdev2))
示例#4
0
    )
    #print(type(extract))
    extract = bs4.BeautifulSoup(extract.text, "lxml")
    total = extract.select(".cscore_score")
    k = total[1].text.split()
    #k=total[1].text

    print(k[1])
    if k[1] == prev:
        continue

    else:
        prev = k[1]

        for i in extract.select('.over-score'):
            x = i.text
            #print(x)
            break
        #print(x)

        if x == "4":
            playsound('/home/harshit/Documents/script_pro/four.mp3')
            continue
        if x == '6':
            playsound('/home/harshit/Documents/script_pro/SIX.mp3')
            continue
        if x == 'W':
            playsound('/home/harshit/Documents/script_pro/wicket.mp3')
            continue
        time.c(10)
示例#5
0
    dtaEntriesFH = open('dta_entries.txt', 'r')
    csv_reader = csv.reader(dtaEntriesFH, delimiter='\t')
    dtaEntries = [x for x in csv_reader]
    dtaEntriesFH.close()
    # --------------------------------------------------

    a = array([[float(y) for y in x] for x in xTandemInput[1:]])
    aColumns = xTandemInput[0]
    # ('parent_scan', 'mz', 'intensity', 'ppm')

    b = array([float(x[3]) for x in dtaEntries[1:]])

    x = a[:, 0]
    y = a[:, 3]

    tic_1 = c()
    # spar range 0.6 .. 1.2
    yFit, runMed = R_runmed_smooth_spline(x,
                                          y,
                                          x,
                                          runMedSpan=0.1,
                                          spar=0.6,
                                          sc=sc)
    tic_2 = c()
    print('done in %s seconds' % (tic_2 - tic_1))

    sc.Close()

    plot(x, y, 'bo')
    plot(runMed[0], runMed[1], 'y^')
    plot(x, yFit, 'r+')
示例#6
0
def sieve(limit):
    primes = set()
    s = [False] * (limit + 1)
    for i in range(2, limit + 1):
        if s[i]:
            continue
        primes.add(i)
        for j in range(i * i, limit + 1, i):
            s[j] = True
    return primes


primes = set()
while True:
    largest = 0
    try:
        limit = int(input("Enter number (600851475143 by default): "))
    except ValueError:
        limit = 600851475143
    if len(primes) == 0 or limit > max(primes):
        primes = sieve(int(sqrt(limit)))
    start = c()
    for i in primes:
        if limit % i == 0:
            if i > largest:
                largest = i

    print("The largest prime factor of {} is {}".format(limit, largest))
    end = c()
    print("The program took {} seconds to run".format(end - start))
def sleep(minutos):
    from time import sleep as c   
    c(minutos*60)
示例#8
0
# prime generator made by gXLg #
from sys import argv as a
from time import perf_counter as c
t = c()
n = set()
p = []
if str.isdigit(a[-1]):
    m = int(a[-1])
else:
    m = 1000

l = 1
for i in range(2, m):
    if i not in n:
        p.append(i)
        n.update(j for j in range(i * i, m, i * l))
        l = 2
print(c() - t)
print(p)
# usage: python prime.py [maxnum] #