コード例 #1
0
def generate_outfile_names(vid, seglen, step, nframes, nreps, stepint, cutoff):
    outroot = os.path.dirname(
        mousezopt.generate_outfile_names(vid, seglen, 0, nframes, None, None,
                                         None)[1])
    scorefile = os.path.join(
        outroot,
        'seg%s_nframes%s_step%s_nreps%s_stepint%s_cutoff%s-score.dict' %
        (seglen, nframes, step, nreps, stepint, cutoff))
    distsfile = os.path.join(
        outroot,
        'seg%s_nframes%s_step%s_nreps%s_stepint%s_cutoff%s-model_dists.dict' %
        (seglen, nframes, step, nreps, stepint, cutoff))

    return scorefile, distsfile
コード例 #2
0
def generate_outfile_names(vid,seglen,step,nframes,nreps,stepint,cutoff):
    outroot = os.path.dirname(mousezopt.generate_outfile_names(vid,seglen,0,nframes,None,None,None)[1])
    scorefile = os.path.join(outroot,'seg%s_nframes%s_step%s_nreps%s_stepint%s_cutoff%s-score.dict' % (seglen,nframes,step,nreps,stepint,cutoff) )
    distsfile = os.path.join(outroot,'seg%s_nframes%s_step%s_nreps%s_stepint%s_cutoff%s-model_dists.dict' % (seglen,nframes,step,nreps,stepint,cutoff) )

    return scorefile,distsfile
コード例 #3
0
    #get a dummy frame for pixel dimensions
    stream = cv.CaptureFromFile(vid)
    SHAPE = vidtools.array_from_stream(stream).shape

    obj_train_arcs_d = {}
    obj_arcs_d = {}
    size_train_values_d = {}
    size_values_d = {}
    fol_train_values_d = {}
    fol_values_d = {}
    print >> sys.stderr, 'load second pass blob outlines; calculate object properties',
    for i in range(nreps):
        offset = (i * seglen * step) + start_offset
        source_f = mousezopt.generate_outfile_names(vid, seglen, offset,
                                                    nframes, peak_max,
                                                    peak_min,
                                                    target_int_step)[1]
        ols_d = eval(open(source_f).read())
        ols = ([
            v for k, v in ols_d.items()
            if numpy.abs(cutoff - k) < target_int_step / 2
        ] + [[]])[0]
        objs_train = [
            o for o in vidtools.find_objs(ols, SHAPE, n_obj, n_obj)[0]
            if len(o) > 0
        ]
        obj_train_arcs_d[offset] = objs_train
        size_train_values_d[offset] = [[
            vidtools.size_of_polygon(ols[i][j]) for i, j in o
        ] for o in objs_train]
        fol_train_values_d[offset] = [
コード例 #4
0
    n_obj = int(n_obj)

    #get a dummy frame for pixel dimensions
    stream = cv.CaptureFromFile(vid)
    SHAPE = vidtools.array_from_stream(stream).shape

    obj_train_arcs_d = {}
    obj_arcs_d = {}
    size_train_values_d = {}
    size_values_d = {}
    fol_train_values_d = {}
    fol_values_d = {}
    print >> sys.stderr, 'load second pass blob outlines; calculate object properties',
    for i in range(nreps):
        offset = (i*seglen*step)+start_offset
        source_f = mousezopt.generate_outfile_names(vid,seglen,offset,nframes,peak_max,peak_min,target_int_step)[1]
        ols_d = eval(open(source_f).read())
        ols = ([v for k,v in ols_d.items() if numpy.abs(cutoff-k) < target_int_step/2]+[[]])[0]
        objs_train = [o for o in vidtools.find_objs(ols,SHAPE,n_obj,n_obj)[0] if len(o) > 0]
        obj_train_arcs_d[offset] = objs_train
        size_train_values_d[offset] = [[vidtools.size_of_polygon(ols[i][j]) for i,j in o] for o in objs_train]
        fol_train_values_d[offset] = [vidtools.fol_from_obj_arc(o,ols,SHAPE) for o in objs_train]
        objs = [o for o in vidtools.find_objs(ols,SHAPE)[0] if len(o) > 0]
        obj_arcs_d[offset] = objs
        size_values_d[offset] = [[vidtools.size_of_polygon(ols[i][j]) for i,j in o] for o in objs]
        fol_values_d[offset] = [vidtools.fol_from_obj_arc(o,ols,SHAPE) for o in objs]
        print >> sys.stderr, '.',
    print >> sys.stderr, 'done'

    if len(reduce(lambda x,y:x+y,size_train_values_d.values())) > 0 and len(reduce(lambda x,y:x+y,fol_train_values_d.values())) > 0:
        print >> sys.stderr, 'calculate scoring distributions ...' ,