Prepare ._gts and ._dts for evaluation based on params :return: None
(self)
| 95 | self.params.imgIds = sorted(list(cocoGt.imgs.keys())) |
| 96 | |
| 97 | def _prepare(self): |
| 98 | ''' |
| 99 | Prepare ._gts and ._dts for evaluation based on params |
| 100 | :return: None |
| 101 | ''' |
| 102 | p = self.params |
| 103 | if p.useCats: |
| 104 | gts=self.cocoGt.loadAnns(self.cocoGt.getAnnIds(imgIds=p.imgIds, catIds=p.catIds)) |
| 105 | dts=self.cocoDt.loadAnns(self.cocoDt.getAnnIds(imgIds=p.imgIds, catIds=p.catIds)) |
| 106 | else: |
| 107 | dts=self.cocoDt.loadAnns(self.cocoDt.getAnnIds(imgIds=p.imgIds)) |
| 108 | |
| 109 | gts=self.cocoGt.loadAnns(self.cocoGt.getAnnIds(imgIds=p.imgIds)) |
| 110 | dts=self.cocoDt.loadAnns(self.cocoDt.getAnnIds(imgIds=p.imgIds)) |
| 111 | # print(dts) |
| 112 | # set ignore flag |
| 113 | for gt in gts: |
| 114 | gt['ignore'] = gt['ignore'] if 'ignore' in gt else 0 |
| 115 | gt['ignore'] = 'iscrowd' in gt and gt['iscrowd'] |
| 116 | |
| 117 | self._gts = defaultdict(list) # gt for evaluation |
| 118 | self._dts = defaultdict(list) # dt for evaluation |
| 119 | for gt in gts: |
| 120 | self._gts[gt['image_id']].append(gt) |
| 121 | for dt in dts: |
| 122 | self._dts[dt['image_id']].append(dt) |
| 123 | # print(self._gts, "GTTSSDFJDSL") |
| 124 | self.evalImgs = defaultdict(list) # per-image per-category evaluation results |
| 125 | self.eval = {} # accumulated evaluation results |
| 126 | |
| 127 | def evaluate(self): |
| 128 | ''' |