Mercurial Hosting > traffic-intelligence
comparison python/metadata.py @ 867:003445db1e30
forgot annotation mask filename
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Thu, 08 Dec 2016 18:00:53 -0500 |
parents | 8fba46899e74 |
children | c70adaeeddf5 |
comparison
equal
deleted
inserted
replaced
866:8fba46899e74 | 867:003445db1e30 |
---|---|
312 description = Column(String) # description | 312 description = Column(String) # description |
313 groundTruthFilename = Column(String) | 313 groundTruthFilename = Column(String) |
314 firstFrameNum = Column(Integer) # first frame num of annotated data (could be computed on less data) | 314 firstFrameNum = Column(Integer) # first frame num of annotated data (could be computed on less data) |
315 lastFrameNum = Column(Integer) | 315 lastFrameNum = Column(Integer) |
316 videoSequenceIdx = Column(Integer, ForeignKey('video_sequences.idx')) | 316 videoSequenceIdx = Column(Integer, ForeignKey('video_sequences.idx')) |
317 maskFilename = Column(String) # path to mask file (can be different from camera view, for annotations), relative to site name | |
317 undistorted = Column(Boolean) # indicates whether the annotations were done in undistorted video space | 318 undistorted = Column(Boolean) # indicates whether the annotations were done in undistorted video space |
318 | 319 |
319 videoSequence = relationship("VideoSequence", backref=backref('video_sequences', order_by = idx)) | 320 videoSequence = relationship("VideoSequence", backref=backref('video_sequences', order_by = idx)) |
320 | 321 |
321 def __init__(self, description, groundTruthFilename, firstFrameNum, lastFrameNum, videoSequence, undistorted = True): | 322 def __init__(self, description, groundTruthFilename, firstFrameNum, lastFrameNum, videoSequence, maskFilename, undistorted = True): |
322 self.description = description | 323 self.description = description |
323 self.groundTruthFilename = groundTruthFilename | 324 self.groundTruthFilename = groundTruthFilename |
324 self.firstFrameNum = firstFrameNum | 325 self.firstFrameNum = firstFrameNum |
325 self.lastFrameNum = lastFrameNum | 326 self.lastFrameNum = lastFrameNum |
326 self.videoSequence = videoSequence | 327 self.videoSequence = videoSequence |
327 self.undistorted = undistorted | 328 self.undistorted = undistorted |
329 self.maskFilename = maskFilename | |
328 | 330 |
329 def getGroundTruthFilename(self, relativeToSiteFilename = True): | 331 def getGroundTruthFilename(self, relativeToSiteFilename = True): |
330 if relativeToSiteFilename: | 332 if relativeToSiteFilename: |
331 return path.join(self.videoSequence.cameraView.site.getPath(), self.groundTruthFilename) | 333 return path.join(self.videoSequence.cameraView.site.getPath(), self.groundTruthFilename) |
332 else: | 334 else: |
333 return self.groundTruthFilename | 335 return self.groundTruthFilename |
336 | |
337 def getMaskFilename(self, relativeToSiteFilename = True): | |
338 if relativeToSiteFilename: | |
339 return path.join(self.videoSequence.cameraView.site.getPath(), self.maskFilename) | |
340 else: | |
341 return self.maskFilename | |
334 | 342 |
335 def getTimeInterval(self): | 343 def getTimeInterval(self): |
336 return TimeInterval(self.firstFrameNum, self.lastFrameNum) | 344 return TimeInterval(self.firstFrameNum, self.lastFrameNum) |
337 | 345 |
338 # add class for Analysis: foreign key VideoSequenceId, dataFilename, configFilename (get the one from camera view by default), mask? (no, can be referenced in the tracking cfg file) | 346 # add class for Analysis: foreign key VideoSequenceId, dataFilename, configFilename (get the one from camera view by default), mask? (no, can be referenced in the tracking cfg file) |