Skip to content

MMPose V0.26.0 Release

Compare
Choose a tag to compare
@ly015 ly015 released this 05 May 18:35
· 93 commits to master since this release
e7c7cad

Highlights

New Features

Improvements

Bug Fixes

Breaking Changes

  • Refactor bbox processing in datasets and pipelines (#1311) @ly015, @Ben-Louis
    The bbox format conversion (xywh to center-scale) and random translation are moved from the dataset to the pipeline. The comparison between new and old version is as below:
v0.26.0 v0.25.0
Dataset
(e.g. TopDownCOCODataset)
...
# Data sample only contains bbox
rec.append({
    'bbox': obj['clean_bbox][:4],
    ...
})
...
# Convert bbox from xywh to center-scale
center, scale = self._xywh2cs(*obj['clean_bbox'][:4])
# Data sample contains center and scale
rec.append({
    'bbox': obj['clean_bbox][:4],
    'center': center,
    'scale': scale,
    ...
})
Pipeline Config
(e.g. HRNet+COCO)
...
train_pipeline = [
    dict(type='LoadImageFromFile'),
    # Convert bbox from xywh to center-scale
    dict(type='TopDownGetBboxCenterScale', padding=1.25),
    # Randomly shift bbox center
    dict(type='TopDownRandomShiftBboxCenter', shift_factor=0.16, prob=0.3),
    ...
]
...
train_pipeline = [
    dict(type='LoadImageFromFile'),
    ...
]
Advantage
  • Simpler data sample content
  • Flexible bbox format conversion and augmentation
  • Apply bbox random translation every epoch (instead of only applying once at the annotation loading)
  • -
    BC Breaking The method _xywh2cs of dataset base classes (e.g. Kpt2dSviewRgbImgTopDownDataset) will be deprecated in the future. Custom datasets will need modifications to move the bbox format conversion to pipelines. -