From b21df463d47447f33c28d9a4f46136ad64d34a40 Mon Sep 17 00:00:00 2001 From: Miao Zheng <76149310+MeowZheng@users.noreply.github.com> Date: Mon, 31 Oct 2022 20:47:52 +0800 Subject: [PATCH] [Feature] LIP dataset (#2187) * [WIP] LIP dataset * wip * keep473 * lip dataset prepare * add ut and test data --- docs/en/user_guides/2_dataset_prepare.md | 40 +++++++++++++++- mmseg/datasets/__init__.py | 3 +- mmseg/datasets/lip.py | 43 ++++++++++++++++++ mmseg/utils/class_names.py | 23 +++++++++- .../train_images/684_2150041.jpg | Bin 0 -> 10950 bytes .../train_segmentations/684_2150041.png | Bin 0 -> 1602 bytes .../val_images/86_185913.jpg | Bin 0 -> 13383 bytes .../val_segmentations/86_185913.png | Bin 0 -> 1463 bytes tests/test_datasets/test_dataset.py | 23 +++++++++- 9 files changed, 127 insertions(+), 5 deletions(-) create mode 100644 mmseg/datasets/lip.py create mode 100644 tests/data/pseudo_lip_dataset/train_images/684_2150041.jpg create mode 100644 tests/data/pseudo_lip_dataset/train_segmentations/684_2150041.png create mode 100644 tests/data/pseudo_lip_dataset/val_images/86_185913.jpg create mode 100644 tests/data/pseudo_lip_dataset/val_segmentations/86_185913.png diff --git a/docs/en/user_guides/2_dataset_prepare.md b/docs/en/user_guides/2_dataset_prepare.md index 25753da64..a795e3bfc 100644 --- a/docs/en/user_guides/2_dataset_prepare.md +++ b/docs/en/user_guides/2_dataset_prepare.md @@ -351,7 +351,8 @@ The dataset is a Large-scale Dataset for Instance Segmentation (also have segman You may need to follow the following structure for dataset preparation after downloading iSAID dataset. -``` +```none +├── data │ ├── iSAID │ │ ├── train │ │ │ ├── images @@ -376,3 +377,40 @@ python tools/dataset_converters/isaid.py /path/to/iSAID ``` In our default setting (`patch_width`=896, `patch_height`=896, `overlap_area`=384), it will generate 33978 images for training and 11644 images for validation. + +## LIP(Look Into Person) dataset + +This dataset could be download from [this page](https://lip.sysuhcp.com/overview.php). + +Please run the following commands to unzip dataset. + +```shell +unzip LIP.zip +cd LIP +unzip TrainVal_images.zip +unzip TrainVal_parsing_annotations.zip +cd TrainVal_parsing_annotations +unzip TrainVal_parsing_annotations.zip +mv train_segmentations ../ +mv val_segmentations ../ +cd .. +``` + +The contents of LIP datasets include: + +```none +├── data +│ ├── LIP +│ │ ├── train_images +│   │ │ ├── 1000_1234574.jpg +│   │ │ ├── ... +│ │ ├── train_segmentations +│   │ │ ├── 1000_1234574.png +│   │ │ ├── ... +│ │ ├── val_images +│   │ │ ├── 100034_483681.jpg +│   │ │ ├── ... +│ │ ├── val_segmentations +│   │ │ ├── 100034_483681.png +│   │ │ ├── ... +``` diff --git a/mmseg/datasets/__init__.py b/mmseg/datasets/__init__.py index 0ab2b94dd..bf506eafa 100644 --- a/mmseg/datasets/__init__.py +++ b/mmseg/datasets/__init__.py @@ -11,6 +11,7 @@ from .drive import DRIVEDataset from .hrf import HRFDataset from .isaid import iSAIDDataset from .isprs import ISPRSDataset +from .lip import LIPDataset from .loveda import LoveDADataset from .night_driving import NightDrivingDataset from .pascal_context import PascalContextDataset, PascalContextDataset59 @@ -35,5 +36,5 @@ __all__ = [ 'RandomCutOut', 'RandomMosaic', 'PackSegInputs', 'ResizeToMultiple', 'LoadImageFromNDArray', 'LoadBiomedicalImageFromFile', 'LoadBiomedicalAnnotation', 'LoadBiomedicalData', 'GenerateEdge', - 'DecathlonDataset' + 'DecathlonDataset', 'LIPDataset' ] diff --git a/mmseg/datasets/lip.py b/mmseg/datasets/lip.py new file mode 100644 index 000000000..40a703ffd --- /dev/null +++ b/mmseg/datasets/lip.py @@ -0,0 +1,43 @@ +# Copyright (c) OpenMMLab. All rights reserved. +from mmseg.registry import DATASETS +from .basesegdataset import BaseSegDataset + + +@DATASETS.register_module() +class LIPDataset(BaseSegDataset): + """LIP dataset. + + The ``img_suffix`` is fixed to '.jpg' and ``seg_map_suffix`` is fixed to + '.png'. + """ + METAINFO = dict( + classes=('Background', 'Hat', 'Hair', 'Glove', 'Sunglasses', + 'UpperClothes', 'Dress', 'Coat', 'Socks', 'Pants', + 'Jumpsuits', 'Scarf', 'Skirt', 'Face', 'Left-arm', + 'Right-arm', 'Left-leg', 'Right-leg', 'Left-shoe', + 'Right-shoe'), + palette=( + [0, 0, 0], + [128, 0, 0], + [255, 0, 0], + [0, 85, 0], + [170, 0, 51], + [255, 85, 0], + [0, 0, 85], + [0, 119, 221], + [85, 85, 0], + [0, 85, 85], + [85, 51, 0], + [52, 86, 128], + [0, 128, 0], + [0, 0, 255], + [51, 170, 221], + [0, 255, 255], + [85, 255, 170], + [170, 255, 85], + [255, 255, 0], + [255, 170, 0], + )) + + def __init__(self, **kwargs) -> None: + super().__init__(img_suffix='.jpg', seg_map_suffix='.png', **kwargs) diff --git a/mmseg/utils/class_names.py b/mmseg/utils/class_names.py index dcfa42138..a62eaac97 100644 --- a/mmseg/utils/class_names.py +++ b/mmseg/utils/class_names.py @@ -265,6 +265,26 @@ def stare_palette(): return [[120, 120, 120], [6, 230, 230]] +def lip_classes(): + """LIP class names for external use.""" + return [ + 'background', 'hat', 'hair', 'glove', 'sunglasses', 'upperclothes', + 'dress', 'coat', 'socks', 'pants', 'jumpsuits', 'scarf', 'skirt', + 'face', 'leftArm', 'rightArm', 'leftLeg', 'rightLeg', 'leftShoe', + 'rightShoe' + ] + + +def lip_palette(): + """LIP palette for external use.""" + return [ + 'Background', 'Hat', 'Hair', 'Glove', 'Sunglasses', 'UpperClothes', + 'Dress', 'Coat', 'Socks', 'Pants', 'Jumpsuits', 'Scarf', 'Skirt', + 'Face', 'Left-arm', 'Right-arm', 'Left-leg', 'Right-leg', 'Left-shoe', + 'Right-shoe' + ] + + dataset_aliases = { 'cityscapes': ['cityscapes'], 'ade': ['ade', 'ade20k'], @@ -278,7 +298,8 @@ dataset_aliases = { 'coco_stuff164k' ], 'isaid': ['isaid', 'iSAID'], - 'stare': ['stare', 'STARE'] + 'stare': ['stare', 'STARE'], + 'lip': ['LIP', 'lip'] } diff --git a/tests/data/pseudo_lip_dataset/train_images/684_2150041.jpg b/tests/data/pseudo_lip_dataset/train_images/684_2150041.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d6ac13a99269cb20103519dffa55177ff7f0375b GIT binary patch literal 10950 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 literal 0 HcmV?d00001 diff --git a/tests/data/pseudo_lip_dataset/train_segmentations/684_2150041.png b/tests/data/pseudo_lip_dataset/train_segmentations/684_2150041.png new file mode 100644 index 0000000000000000000000000000000000000000..47271e2cab27c8bc9a45271f54618f0ab9879603 GIT binary patch literal 1602 zcmV-I2EF--P)3=M7dy8x-3!OoIa2Og4})O=Vg|XlKfv`Nxwk9vN9=9ZqIjdZ~cso()jQRu5^q z`bv_at-2#bV-(;Y2jG{uemTg$cWwiYxf6IKTo0Z&t z3SCOl51Ac`{h>=oE~QHPnjz`&@%KZ!0V@_do=5UO6~(UMpzqIx->N2#O5+#@d+))L z7EVJqkS`XV@Wng!5uZ~F)xMUp5NtImdfY%P)6%ku;dB|A4xuimiUxFX5#kZm-)fTD zrg9CLcW@+R>v*6Vkfly!0>sS%S(Xmjf?%D8d`{)|7sf>uG-aJ2C5foQwY7{MlE2;( z*d|BX_UL_&7Txh3p;W1DBhyq4eDq-ntKX%qvSjXXABTjmu{X}(#c zC)YN&QlLKkoF%%lcLA8v)3|Q&BwZuB+UeBXCezTTYd7EpcLX?n$D321+#p2YV5VIz zkA=`TGM*(+o^2so`7+OCSu_YLL+lK_pzkV^fMpvOEg@UOwg~NZqhgwQc4zae9KdxA ziDvGbq{wnU%PF~dH#@ z!~-oJe5$;97%FpZ9GxTiRJCu$t~F78SPTJyq70RiA@P*JReGm-pt{n{8F{C5?Fvws z7Bk_>wuNYHve~iHl%0XM6&e6k`HF0s;hpGaXxj~iSm9bg#=O;z_O3)O&rpG90YKyR zP>!w<8Gr583*4T<*-Buf3lO|KrX)Ca~F!GXQ*B7E6lHdC=tpN0UDqQEnj;&k4@x z%9CJ2F&eSrgnZOrP3>tOb>Z8FJ`t352*NexLpW4-OQBgAI>H2FR&>1|4`K$?^7Iim zq)0#u6rpi?)0h#Jr9m(YZU`sSw*B5D<|D$kB+zMJW6yNk@)K_+MpnD#f67;TR`PJ) zbK5Cid_7JYP*ie2PW>=J134YhPPmy*P&|y1BHWCbYr>3Wbbyu%+=)ixgthH!rp3-W z4O-!X)vbz0BvxFj<-?_TwCvxqZpU?P$xzE4JX++cmuvcTm{)wu-my}1nVU1zZTdy> z)mrpV19fPduD$bxSXXT4r>I6@U=6$rBx$+QmTClO}*(T^j*< zMFW8Sp>1(RDA(Rx+g>Adiw3Yiw0;MwKFD?#&_47+)2Q32R=g<^1$Z4%NpUr(1Vw-jb1PakXin3pP~v9&kwmc_9?z zWt(uz&__!p!b)NHE*=fzN|(jsE*fp~N!u=6+gxPvXew+b>ew|3ZSy49rE49iV>D`> zEuDco+zH#UYt-=m%FvQtXc~2PYh9=vy4Jx78TyFo8KQ|5tj{$mGCB@@xt54$Ucat+ zBy`6Ct)p#L;cQ%U!RP##T{RJWjODntQAl^426Z{P%KQe-Eo9)DS6AG5U+XzTw_#&G z!R<_eiu=>1g6Gw(wDUCBNP^$0WjtnQs{g|^+%~`D75(_|x@@9=u3O$@eQi}XVH&K- zCe6?l*~B-&WM}Q&zMw+$^WaIMdKsy?bto~;%eIb31KkZ*k#AnEseg(-=x`ez?4k0n zBKkY%mY_OCv?UFkjcdB^@L^nsu0a=9K33|mzW@LL07*qoM6N<$f{x7t A%m4rY literal 0 HcmV?d00001 diff --git a/tests/data/pseudo_lip_dataset/val_images/86_185913.jpg b/tests/data/pseudo_lip_dataset/val_images/86_185913.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7f66845a7b7683f12e617f9ffd6ffbf25471b6db GIT binary patch literal 13383 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 literal 0 HcmV?d00001 diff --git a/tests/data/pseudo_lip_dataset/val_segmentations/86_185913.png b/tests/data/pseudo_lip_dataset/val_segmentations/86_185913.png new file mode 100644 index 0000000000000000000000000000000000000000..0708e539029e508a6251091fa7b7c202457b10b7 GIT binary patch literal 1463 zcmV;o1xWgdP)J00007bV*G`2jB@0 z0VoNopuao-00nDFL_t(|ob8=kZ`&{og_$fFwxY%U|IZvYEX7)Md&s4+Ey*OsBT){| zO9Q8IJ|A8rId-xmy5g+YoK2!P0K($P(hRSk4>=Tq zT+k%pk%7T=A@}|XA71AhRv4HFc?T8@3xYL_Vjv9b|Cnbey1+!38j*H^@uT6_-qro%Y_~$^l@Q&r2G6+t>i8j9tUAM zR^B7@Nri_EL>8e_9Gtlj2-GhX+znHGbVKMC2M;b>7j%tHxF4t-xNt$}mkBOhIOjrp z6Yi41feT&`dM2YE7dq(9cqcCOO$8?|bT+|*3%hP6+*-F2UAWos z*e*CgxVFc~cA-DQ=P=a`;if=%c!U_H0%0M=ty@n-e=HGpvPt~Ya+4b8+Mz`*BmfLl zaVKGw?oM~95$w`IiBJVFyQD{lP(iS~*l*0fVA~aBE?{a>GCOgDu{3eJKKGt^!DRbXk_MMU zIHVq*rcX>>d(R{5uo;9m@yzpN$EVhH=i{XrUtYRtNkj|^NE+iSC-7%>}ayiI_ zwfTaz2MLt}0RouDq8Nw<7OWw((W4?v1N^8i@DbV+gm)JLp`m(wW<49Od$=&GGzWnw z4%W5H$=vG&gLNfAb^+jSjKEgJi5Stu7v*VGy5yk~k8bc6dg%szS0)dYJPX@*pZE8A$abG~&FhnlEZ5YIbF%cwH z#JYOt{at)LgWzN1?FJ$ch)9%=%!|q73CYh#SRnW|Y&aJLHaKvBxu8Ryj&|Sz?;Fyg zt2&ko*iQwJfnbt5$b~?FBk+=8>n>~y0lS>yxd3J0{*Z^NNAt)>$pxh>M@p=4r@`4N z?7#)d5B!L#f?vm?-x$I$I0%FU0W^gaAfP6(v7iftKo}MQwzdVjz-4A5;1>8pISw(1b}sfcnRzv7aSm12SRZs!hs6|A&k?YH7BK*2pj)YCJ@F# zK%RcJbwNeSMF83`PA(vAh}BdeKoE2(Yl)yNnvseUr;Q;fyVu5CKqJH$F%AN{JK{7D z!Wb)S?LanAAcjCtPbjvun$k0FDi;Ew4MI%fi3n)JP%gl1fLz^We0wimV<8N6X_X9i ztUwHbp!?Pe