client = Camomile(server) client.login(userAdmin, pwdAdmin) # create queue id_queueIn = client.createQueue(inQueueEvidence, returns_id=True) id_queueOut = client.createQueue(outQueueEvidence, returns_id=True) id_corpus = client.getCorpora(corpusName, returns_id=True) if id_corpus == []: print args['<corpusName>'], 'is not found in the database' sys.exit(0) id_corpus = id_corpus[0] id_layerEvidence = client.getLayers(corpus=id_corpus, name=submissionName+".evidence", returns_id=True) if id_layerEvidence == []: print shotLayerName, 'is not found in the database' sys.exit(0) id_layerEvidence = id_layerEvidence[0] # add annotation in inQueue le = [] for media in client.getMedia(corpus=id_corpus): for a in client.getAnnotations(layer=id_layerEvidence, medium=media['_id']): shot = client.getAnnotation(a['fragment']) e = {"fragment":{"id_medium": media['_id'], "start":shot['fragment']['segment']['start'] , "end":shot['fragment']['segment']['end'] }, "data":{"person_name": a['data']['person_name'], "source": a['data']['source']}, "id_evidence": id_layerEvidence } le.append(e) client.updateQueue(id_queueIn, elements=le)
login = raw_input('Login: '******'mediaeval.test', returns_id=True)[0] # teams teams = {team._id: team.name for team in client.getGroups() if team.name.startswith('team_') or team.name == 'organizer'} media = {medium._id: medium.name for medium in client.getMedia(test)} shotLayer = client.getLayers(test, name='mediaeval.submission_shot')[0]._id print "get the shot number" shots = {} for a in client.getAnnotations(shotLayer): shots.setdefault(a.id_medium, {}) shots[a.id_medium][a._id] = a.fragment.shot_number # evaluate every original submissions for labelLayer in client.getLayers( test, data_type='mediaeval.persondiscovery.label'): # we are only looking for original submissions (not copies) if 'copy' in labelLayer.description: