open-mmlab / mmdetection

OpenMMLab Detection Toolbox and Benchmark
https://mmdetection.readthedocs.io
Apache License 2.0
29.07k stars 9.37k forks source link

mask rcnn inference results in polygon fomat #7166

Closed yktangac closed 2 years ago

yktangac commented 2 years ago

Hello, I'm running the mask rcnn with mmdetection modules. How can I get the polygon result in json format. I follow the tutorial from colab and try to get the numerical prediction. What I got is as such :


#config:
config_file = os.path.abspath('/mmdetection/configs/mask_rcnn/mask_rcnn_r50_fpn_mstrain-poly_3x_coco.py')
checkpoint_file = ('/models/mask_rcnn_r101_fpn_mstrain-poly_3x_coco_20210524_200244-5675c317.pth')

# Load Model:
model = init_detector(config_file, checkpoint_file, device='cuda:0')

# Inference:
results = inference_detector(model, cvimg)
results
print(result)

The output:

# bbox_result: list containing bounding boxes annotations with x,y,w,h,score style
# segm_result:  list containing segmentation annotation with np.bool array
bbox_result, segm_result = results

bbox_results

...
array([[0.0000000e+00, 8.0926170e+00, 2.3426533e+03, 1.7280000e+03,
          1.1508377e-01],
         [8.3992499e+02, 5.3738506e+01, 3.0720000e+03, 1.6829698e+03,
          7.6467149e-02]], dtype=float32)
...

segm_results

array([[False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False],
          ...,
          [False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False]]),
   array([[False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False],
          ...,
          [False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False],
          [False, False, False, ..., False, False, False]])

Somehow, I followed the issue #7049. Since I'm not using the test.py to generate the result, I followed this to convert the np.bool array into compact RLE as such

from mmdet.core import encode_mask_results
## bbox -> result[0] and mask -> result[1] for single image
encode_result = (result[0], encode_mask_results(result[1]))
encode_result # containing bbox and segm

the segm output as such

{'size': [1728, 3072],
    'counts': b'aPc02lb1c4SFYOPhN^4UW1h5XOh0]Oc0^Ob0^Ok0VOi0^O>C6J6J6K5J6K4K6J5L5J;iROc]OWf0fb0\\YOc]O^f0gb0VYOb]Odf0fb0PYOc]Ojf0fb0kXOb]OPg0db0fXOe]OTg0ab0dXOf]OXg0_b0`XOi]O[g0]b0\\XOj]O_g0\\b0YXOo]O_g0Ub0ZXOV^O^g0ka0aXOV^O^g0ja0aXOX^O^g0ia0aXOY^O]g0ga0cXOZ^O\\g0ga0bXO[^O]g0ea0cXO]^O[g0da0cXO^^O\\g0ca0cXO^^O\\g0ba0dXO_^OZg0ca0dXO`^OZg0`a0fXOa^OYg0`a0fXOa^OYg0_a0fXOd^OXg0]a0gXOd^OXg0]a0gXOd^OXg0\\a0gXOg^OWg0Za0hXOg^OWg0Ya0iXOh^OVg0Ya0hXOj^OVg0Va0jXOk^OUg0Va0jXOk^OUg0Za0eXOi^OYg0]a0aXOd^O^g0ba0\\XO^^Odg0ia0UXOX^Ojg0na0oWOS^OQh0Tb0hWOl]OXh0Zb0bWOg]O]h0ng0000001O00001O00001O00001O00001N1000001O00001O00001O0000001O00001O00001O0000001O0000001O00001O0000001O00001O0000001O00001O00001O00001O00001O00001O00001O001O00001O001O00001O001O001O010O001O001O001O001O001[^O]QOk;cn0UD_QOi;bn0UDaQOi;_n0VDcQOi;^n0UDeQOi;\\n0VDfQOh;Zn0WDiQOg;Xn0WDkQOg;Un0XDnQOf;Sn0YDnQOf;Sn0XDPROf;Pn0YDSROe;nm0YDUROe;Pn0VDRROh;Un0PDmQOo;Yn0jCjQOT<]n0dCfQOZ<an0_CaQO_<fn0YC]QOe<in0TCYQOk<hn0TCZQOj<hn0SC[QOk<fn0SC]QOk<en0RC]QOm<dn0RC^QOl<dn0QC^QOn<cn0PC^QOP=dn0nB\\QOS=dn0kB]QOU=en0hB\\QOX=en0fB]QOY=en0eB[QO[=en0dB\\QO\\=en0cB[QO]=en0cB[QO]=fn0bBZQO^=fn0aB[QO_=fn0`BZQO`=fn0`BZQO`=fn0`BZQO`=gn0_BYQOa=gn0^BZQOb=gn0]BYQOc=gn0]BYQOc=hn0\\BXQOd=hn0\\BXQOd=hn0[BYQOe=hn0ZBXQOf=hn0ZBXQOf=in0YBWQOg=in0YBWQOg=jn0WBWQOi=in0WBXQOh=in0WBWQOi=in0WBWQOi=jn0VBVQOj=jn0UBWQOk=jn0TBVQOl=jn0TBVQOl=kn0SBUQOm=kn0SBUQOm=ln0QBUQOo=kn0QBUQOo=ln0PBTQOP>mn0oASQOQ>mn0oASQOQ>nn0mASQOS>mn0mASQOS>nn0lARQOT>nn0lARQOT>on0jARQOV>on0iAQQOW>on0iAQQOW>Po0hAPQOX>Po0hAPQOX>Qo0fAPQOZ>Qo0eAoPO[>Qo0eAoPO[>Ro0dAnPO\\>So0cAmPO]>So0bAnPO^>So0aAnPO^>So0aAmPO_>To0`AlPO`>Uo0_AkPOa>Vo0]AkPOc>Vo0\\AjPOd>Vo0\\AjPOd>Wo0[AiPOe>Xo0ZAhPOf>Yo0XAhPOh>Yo0WAgPOi>Zo0VAfPOj>[o0UAePOk>\\o0SAePOm>\\o0RAdPOn>]o0QAcPOo>]o0QAcPOo>^o0PAbPOP?_o0n@bPOR?_o0m@aPOS?`o0l@`POT?ao0k@_POU?bo0j@^POV?bo0i@_POW?bo0h@^POX?co0g@]POY?do0f@\\POZ?eo0e@[PO[?fo0c@[PO]?fo0b@ZPO^?fo0b@ZPO^?go0a@ZPO^?ho0_@YPOa?io0]@WPOc?lo0Y@UPOg?mo0V@TPOj?no0T@RPOl?PP1Q@QPOn?SP1n_OnoNR`0PS101O000000000000001O00000000000000001O000O1000000000001O0000000000000000001O0000000000000O1000001O000000000000000000001O000000000000000000000O2O00000000000000000000000000000000O100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000O10000000000000000000000000000000000000000000000000000000000000000000000]@\\@jHd?S7f@fHZ?X7o@aHQ?\\7YA]Hg>a7bAXH^>f7kASHU>j7SBPHn=n7WBoGi=o7\\BnGd=o7aBoG_=o7fBnGZ=P8kBmGU=Q8oBmGQ=Q8TClGl<R8YCkGg<S8^CjGb<T8cCiG]<U8hChGX<V8mCgGS<W8RDfGn;W8XDfGh;U8aDgG_;S8PEdGP;V8_EaGa:Y8mE_GS:[8\\F\\Gd9]8kF[GU9_8TG^Gl8a8XG\\Gh8c8[G[Ge8e8^GXGb8g8aGWG_8i8dGTG\\8k8gGSGY8l8jGRGV8n8lGPGT8o8PHnFP8R9RHlFn7S9UHkFk7T9XHjFh7V9ZHhFf7W9]HgFc7Y9_HdFb7[9aHcF_7]9cHaF]7^9fH`FZ7`9hH^FX7a9lH\\FT7d9QIWFo6h9WISFi6l9]IoEc6Q:aIkE_6T:fIhEZ6X:jIdEV6[:oIaEQ6_:QJ_Eo5a:QJ_Eo5a:QJ_Eo5a:QJ_Eo5a:QJ_Eo5a:QJ_Eo5a:QJ_Eo5a:QJ_EP6`:PJ`EP6`:PJ`EP6`:PJ`EP6`:QJ_Eo5a:QJ_Eo5a:QJ_Eo5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:RJ`En5`:SJ_Em5a:SJ_Em5a:SJ_Em5a:SJ^En5b:RJ^En5b:RJ^En5b:RJ^En5b:SJ]Em5c:SJ]Em5c:SJ]Em5b:TJ^El5b:TJ^El5b:UJ]Ek5c:UJ]Ek5c:UJ]Ek5c:VJ\\Ej5d:VJ\\Ej5d:VJ\\Ej5d:WJ[Ei5e:WJ[Ei5e:XJZEh5f:YJYEg5g:ZJWBjE_Ml?Z`0ZJWBjE_Ml?Z`0ZJWBjE_Ml?Z`0ZJWBjE_Ml?Z`0ZJVBkE`Mk?Z`0ZJVBkE`Mk?Z`0ZJVBkE`Mk?Y`0[JWBjE`Mk?Y`0[JWBkE_Mj?Z`0[JVBlE`Mi?Z`0[JVBlE`Mi?Z`0[JVBlE`Mi?Z`0[JVBlE`Mi?Z`0\\JUBkEaMi?Z`0\\JTBlEbMh?Z`0nHn\\O\\HV5nNbMh?Z`0nHT]OVHP5UOaMg?[`0nHW]OSHm4XOaMg?[`0nHZ]OPHj4[OaMg?[`0nH\\]OnGg4^ObMf?[`0nH]]OmGf4_ObMf?[`0nH_]OkGd4AbMf?[`0nH`]OjGc4BaMg?\\`0mHa]OiGb4D`Mf?]`0lHb]OjG`4EaMe?\\`0mHd]OhG_4FaMe?\\`0mHd]OhG_4FaMe?\\`0mHe]OgG^4GaMe?\\`0mHe]OgG^4GaMe?\\`0mHf]OfG\\4IbMd?\\`0mHf]OfG\\4IbMd?\\`0mHf]OfG\\4JaMc?]`0mHg]OeG[4KaMc?]`0mHg]OeG[4KaMc?]`0lHl]ObGV4OaMc?]`0lHS^OZGP47`Mc?]`0lHaCbGRLb?^`0jHaCdGQLb?^`0jHaCdGQLb?^`0iHbCeGPLb?^`0iHbCeGPLb?^`0iHbCeGPLb?^`0hHcCfGoKb?_`0gHbCgGoKb?_`0fHcChGnKb?_`0fHcChGnKb?_`0fHcChGnKb?_`0eHdCiGmKb?_`0eHdCiGmKb?``0cHdCkGlKb?``0cHdClGkKa?a`0cHcCmGlK`?a`0bHdCnGkK`?a`0bHdCnGkK`?a`0aHeCoGjK`?b`0`HdCPHjK`?b`0`HdCPHjK`?b`0_HeCQHiK`?b`0_HeCQHiK`?b`0^HfCRHhK`?b`0^HfCRHhK`?c`0]HeCSHhK`?c`0\\HfCTHgK`?c`0\\HfCTHgK`?c`0[HgCUHfK`?c`0[HgCUHfK`?c`0ZHgCWHfK_?d`0YHfCXHfK_?d`0YHfCXHfK_?d`0XHgCYHeK_?d`0XHgCYHeK_?d`0WHhCZHdK_?e`0VHgC[HdK_?e`0UHhC\\HcK_?e`0UHhC\\HcK_?e`0THiC]HbK_?e`0THiC]HbK_?e`0SHjC_H`K^?g`0RHiC`H`K^?g`0RHiC`H`K^?g`0QHjCaH_K^?g`0QHjCaH_K^?g`0PHjCcH_K]?h`0oGiCdH_K]?h`0nGjCeH^K]?h`0nGjCeH^K]?h`0mGkCfH]K]?h`0mGkCfH]K]?i`0kGkChH\\K]?i`0kGkChH\\K]?i`0jGlCiH[K]?i`0jGlCiH[K]?i`0iGmCjHZK]?i`0iGmCjHZK]?j`0gGmClHYK]?j`0gGmClHYK]?j`0fGnCmHXK]?j`0fGnCmHXK]?j`0eGnCoHXK\\?k`0dGmCPIXK\\?k`0cGnCQIWK\\?k`0cGnCQIWK\\?k`0bGoCRIVK\\?k`0bGoCRIVK\\?l`0`GoCTIUK\\?l`0`GoCTIUK\\?l`0_GPDUITK\\?l`0_GPDUITK\\?l`0^GQDWIRK[?n`0\\GQDYIQK[?n`0\\GQDYIQK[?n`0[GRDZIPK[?n`0[GRDZIPK[?n`0ZGSD[IoJ[?o`0YGRD\\IoJ[?o`0YGQD]IPKZ?o`0YGQD]IPKZ?o`0YGQD]IPKZ?o`0ZGPD\\IQKZ?o`0ZGPD\\IQKZ?o`0ZGPD\\IQKZ?o`0ZGPD\\IQKZ?o`0[GoC[IRKZ?o`0[GoC[IRKZ?o`0[GnC\\ISKY?o`0[GnC\\ISKY?o`0\\GmC[ITKY?o`0\\GmC[ITKY?o`0\\GmC[ITKY?o`0\\GmC[ITKY?o`0]GlCZIUKY?o`0]GlCZIUKY?o`0]GlCZIUKY?o`0]GkC\\IUKW?Pa0^GjC[IVKW?Pa0^GjC[IVKW?Pa0^GjC[IVKW?o`0_GkCZIVKW?o`0_GkCZIVKW?o`0`GjCYIWKX?n`0_GkCYIWKX?n`0_GkCYIWKX?n`0_GjCZIXKW?n`0`GiCYIYKW?n`0`GiCYIYKW?n`0`GiCYIYKW?n`0`GiCYIYKW?n`0aGhCXIZKW?n`0aGhCXIZKW?n`0aGhCXIZKW?n`0aGgCYI[KV?n`0aGgCYI[KV?n`0bGfCXI\\KV?n`0bGfCXI\\KV?n`0bGfCXI\\KV?n`0bGfCXI\\KV?n`0cGeCWI]KV?n`0cGeCXI\\KU?o`0cGdCYI]KT?o`0cGdCYI]KT?o`0cGdCYI]KT?o`0dGcCXI^KT?o`0dGcCXI^KT?o`0dGcCXI^KT?o`0dGcCXI^KT?o`0eGbCWI_KT?o`0eGaCXI`KS?o`0eGaCXI`KS?o`0eGaCXI`KS?o`0eGaCXI`KS?o`0fG`CWIaKT?n`0eGaCWIaKT?n`0eGaCWIaKT?n`0eG`CXIbKS?n`0eG`CXIbKS?n`0fG_CWIcKS?n`0fG_CWIcKS?n`0fG_CWIcKS?n`0fG_CWIcKS?n`0fG_CWIcKS?n`0gG]CWIeKR?n`0gG]CXIdKQ?o`0gG]CXIdKQ?o`0gG]CXIdKQ?o`0hG\\CWIeKQ?o`0hG\\CWIeKQ?o`0hG\\CWIeKQ?o`0hG[CXIfKP?o`0hG[CXIfKP?o`0iGZCWIgKP?o`0iGZCWIgKP?o`0iGZCWIgKP?o`0iGZCWIgKP?o`0iGZCWIgKP?o`0jGXCWIiKo>o`0jGXCWIiKo>o`0jGXCWIiKo>Pa0iGXCWIhKP?Pa0iGXCVIiKQ?o`0iGXCVIiKQ?Pa0hGWCWIiKQ?Pa0hGWCWIiKQ?Qa0gGVCXIjKP?Pa0hGWCVIjKR?o`0hGWCVIjKR?Pa0gGVCWIjKR?Pa0gGVCWIjKS?Pa0eGVCXIjKS?Pa0eGWCVIjKU?o`0eGWCVIjKU?Qa0cGUCXIjKU?Ra0cGSCXIkKU?Ta0aGRCYIjKV?Va0_GPCZIkKW?Wa0]GnB\\IkKW?Ya0[GlB^IkKW?Za0ZGlB^IjKX?\\a0XGjB`IjKX?^a0VGhBaIkKY?_a0TGgBbIkKY?_a0TGfBcIkKY?aa0RGdBeIkKY?ca0PGcBeIkK[?da0nFaBgIkK[?ea0mF`BhIkK[?ga0kF_BiIjK\\?ia0iF]BkIjK\\?ja0hF]BjIjK^?ka0gFZBkIkK^?ma0eFYBlIjK_?na0dFXBmIjK_?Pb0bFWBmIjKa?Qb0`FUBoIjKa?Rb0_FUBoIiKb?Tb0]FTBPJhKc?Vb0[FRBRJhKc?Vb0[FSBPJhKe?Vb0ZFSBPJgKf?Wb0YFRBQJhKe?Vb0ZFSBPJgKf?Wb0YFSBoIgKh?Wb0XFSBoIfKi?Wb0XFTBnIeKj?Xb0WFTBnIdKk?Yb0WFTBkIdKn?Xb0WFWEi9j:VFVEj9j:VFVEj9k:UFUEk9l:TFTEl9l:TFTEl9m:SFSEm9m:SFSEm9n:RFREn9n:RFREn9o:QFQEo9o:QFQEo9P;PFQEo9o:QFQEo9P;QFoDo9Q;QFoDo9R;PFnDP:R;PFnDP:S;oEmDR:R;nEnDR:S;mEmDS:S;mEmDS:T;lElDT:T;lEn^OYJW1k?l?kEk^O^JW1g?n?kEh^ObJY1c?P`0jEd^OhJZ1^?R`0kEa^OjJ\\1[?S`0kE^^OnJ^1W?U`0jEZ^OTK_1R?W`0jEW^OXKa1n>Y`0iEU^OZKb1m>Y`0iEX^OUKb1Q?V`0jEZ^ORKa1T?U`0jE\\^OnJa1X?S`0jE_^OjJ_1\\?R`0jEa^OgJ^1_?Q`0jEd^OcJ\\1c?P`0jEf^O`J[1f?o?jEi^O\\JY1j?n?jEk^OYJX1m?m?jEhDV:X;jEhDV:X;jEhDV:X;jEhDV:X;jEiDU:W;kEiDU:W;kEiDU:W;kEiDU:W;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:Y;kEgDU:Y;kEgDU:Y;kEgDU:Y;kEgDU:Y;kEgDU:Y;kEgDU:Y;kEgDU:Y;kEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:X;lEhDT:Y;kEgDU:Y;lEfDT:Z;lEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEhDR:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;mEgDS:Y;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEfDR:Z;nEgDQ:Y;oEgDQ:Y;oEgDQ:Z;nEfDR:Z;nEfDR:Z;mEgDS:Y;lEhDT:X;kEiDU:X;iEiDW:W;gEkDY:U;fElDZ:T;eEmDZ:U;dElD\\:T;cEmD]:S;bEnD^:R;aEoD_:Q;`EPE`:Q;^EPEb:P;]EQEc:o:\\EREd:n:[ESEe:n:YESEg:m:XETEh:l:VEVEj:j:UEWEk:j:SEWEm:i:REYEm:g:REZEn:g:PEZEP;f:oD[EQ;e:mD]ES;c:lD^ET;c:jD^EV;b:ZCnFe<S9WCQGi<P9SCSGm<m8PCVGP=j8mBYGS=g8kB[GU=f8gB]GY=c8eB_G[=a8bBbG^=_8_BcGa=]8]BeGc=[8[BgGe=Z8XBhGh=X8VBjGj=V8TBlGl=U8QBmGo=S8PBnGP>R8nAPHR>Q8lAPHT>P8fAVHZ>j7aA[H_>f7\\A^Hd>b7XAcHg>]7UAgHk>Z7QAiHn>X7o@kHQ?V7l@lHT?T7i@oHW?Q7g@QIY?P7d@RI\\?n6b@TI^?m6_@UIa?k6]@WIc?cf00000000000000000000000000000000000O1001O0001O000000000000000000000000000000000000000000000000000000000000000001O0000000000000000000000000000000000000000000000000000000000000000001O0000000000000000000000000000000000000000000000000000001O0000000000000000000000000000000000000000000000001O000000000000000000000000000000000000000000001O0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001O0000000000000000000000000O1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000]]Oe@aN[?_1XAnMh>Q2fAbM[>\\2iAaMW>_2mA]MS>b2RBZMn=f2UBWMk=h2ZBTMf=l2^BPMb=o2bBnL^=R3fBjLZ=U3kBgLU=Y3oBcLQ=\\3SCaLm<_3WC]Li<b3ZC\\Lf<d3]CYLc<f3aCWL_<h3eCUL[<k3hCRLX<m3lCPLT<P4oCmKQ<R4SDkKm;U4VDhKj;W4ZDfKf;Z4^DbKb;]4bD`K^;`4eD]K[;b4jDZKV;f4jDZKV;e4lDZKT;e4mD[KS;e4nDZKR;e4PEZKP;f4PEZKP;e4REZKn:f4REZKn:e4TEZKl:f4TEZKl:e4VEZKj:e4XEZKh:f4XEZKh:e4ZEZKf:f4ZEZKf:e4\\EZKd:f4\\EZKd:e4^EZKb:f4^EZKb:e4`EZK`:f4`EZK`:e4bEZK^:e4cE[K]:e4dEZK]:d4dE\\K\\:d4eE[K[:d4fE\\KZ:d4gE[KY:d4hE\\KX:d4iE^B\\Jl3k?e9jE_B[Jl3k?e9jE_B[Jl3k?e9jE_B[Jl3k?d9kE`BZJl3k?d9lE\\KT:d4lE\\KT:d4lE\\KT:c4mE]KS:c4mE]KS:c4mE]KS:c4mE]KS:b4nE^KR:b4oE]KQ:c4oE]KQ:b4PF^KP:b4PF^KP:b4PF^KP:b4PF^KP:a4QF_Ko9a4RF^Kn9b4RF^Kn9b4RF^Kn9a4SF_Km9a4SF_Km9a4SF_Km9`4TF`Kl9`4TF`Kl9`4UF_Kk9a4UF_Kk9`4VF`Kj9`4VF`Kj9`4VF`Kj9_4WFaKi9_4WFaKi9_4WFaKi9_4XF`Kh9_4YFaKg9_4YFaKg9_4YFaKg9_4YFaKg9^4ZFbKf9^4ZFbKf9^4ZFbKg9\\4[FcKe9]4[FcKe9[4]FeKc9Z4^FfKb9Y4_FgKa9X4`FhK`9W4aFiK_9V4bFjK^9U4dFjK\\9T4fFlKZ9S4gFmKY9R4hFnKX9Q4iFoKW9P4jFPLV9o3kFQLU9n3lFRLT9m3nFRLR9m3oFSLQ9l3PGTLP9j3RGVLn8i3SGWLm8h3TGXLl8g3UGYLk8f3VGZLj8e3XGZLh8e3YG[Lg8d3ZG\\Lf8c3[G]Le8b3\\G^Ld8a3]G_Lc8`3^G`Lb8_3_GaLa8^3aGaL_8^3bGbL^8]3cGcL]8\\3dGdL\\8[3eGeL[8Z3fGfLZ8[3eGeL[8]3bGdL^8^3`GbL`8_3^GbLb8`3\\G`Ld8b3YG_Lg8b3XG^Lh8d3UG]Lk8e3SG[Lm8g3PGZLP9g3oFZLP9h3mFYLS9i3kFWLU9k3hFVLX9l3fFTLZ9m3dFTL\\9n3bFRL^9P4_FQLa9Q4]FoKc9S4ZFnKf9T4XFlKh9V4UFkKk9V4TFjKl9V4SFkKm9V4RFjKn9V4QFkKo9V4PFjKP:V4oEkKQ:V4nEjKR:W4lEjKT:V4lEjKT:W4jEjKV:V4iEkKW:V4hEjKX:W4fEjKZ:V4fEjKZ:W4dEjK[:W4eEiK[:X4cEiK]:X4bEhK^:X4aEiK_:X4`EhK`:Y4^EhKb:X4^EhKb:Y4\\EhKd:Y4[EgKe:Y4ZEhKf:Y4YEgKg:Z4WEgKi:Z4VEfKj:Z4UEgKk:Z4SEgKm:Z4oDiKQ;X4kDkKU;U4iDmKW;T4eDoK[;R4aDQL_;P4^DRLb;n3[DULe;l3WDWLi;j3TDXLl;i3PDZLP<g3lC\\LT<e3iC]LW<d3eC_L[<a3cCaL]<`3_CcLa<^3[CeLe<\\3XCfLh<[3TChLl<Y3QCiLo<X3nBkLQ=V3kBmLU=T3hBnLX=S3eBoL[=R3aBQM_=P3^BRMb=o2[BSMe=n2XBTMh=m2UBUMk=n2PBTMP>l2PBTMP>l2QBSMo=l2RBTMn=l2RBTMn=k2SBUMm=k2TBTMl=l2TBTMl=k2UBUMk=k2VBTMj=l2VBTMj=l2VBTMj=l2VBTMj=l2WBSMi=m2WBSMi=m2WBSMi=m2WBSMi=m2XBRMh=n2XBRMh=m2YBSMg=m2ZBRMf=n2ZBRMf=n2ZBRMf=n2ZBRMf=n2[BQMe=o2[BQMe=o2[BQMe=o2[BQMe=o2\\BPMd=P3\\BPMd=o2]BQMc=o2^BPMb=P3^BPMb=P3^BPMb=P3^BPMb=P3_BoLa=Q3_BoLa=Q3_BoLa=Q3_BoLa=Q3`BnL`=R3`BnL`=Q3aBoL_=Q3bBnL^=R3bBnL^=R3bBnL^=R3bBnL^=R3cBmL]=S3cBmL]=S3cBmL]=S3dBlL\\=T3dBlL\\=T3dBlL\\=S3eBmL[=S3fBlLZ=T3fBlLZ=T3fBlLZ=T3fBlLZ=T3gBkLY=U3gBkLY=U3gBkLY=U3hBjLY=U3gBkLY=U3gBkLY=U3gBkLY=T3iBkLW=U3iBkLW=U3iBkLW=U3jBjLV=V3jBjLV=V3jBjLV=V3jBjLV=V3kBiLU=W3kBiLU=W3kBiLU=W3lBhLT=X3lBhLT=W3mBiLS=W3mBiLS=W3nBhLR=X3nBhLR=X3nBhLR=X3oBgLQ=X3PChLP=X3QCgLo<X3RChLn<X3SCgLm<X3TChLl<X3UCgLj<Y3WCfLj<Z3WCeLi<Z3XCfLh<Z3YCeLg<Z3ZCfLf<Y3[CgLe<Y3\\CfLd<Y3]CgLc<Y3^CfLb<Y3_CgLa<Y3`CfL`<Y3aCgL_<Y3aCgL_<X3cCgL]<Y3cCgL]<X3eCgL[<Y3eCgL[<X3gCgLY<Y3gCgLY<X3hChLX<X3iCgLW<X3jChLV<X3kCgLU<X3lChLT<W3mCiLR<X3oCgLQ<X3PDhLP<X3PDhLP<W3RDhLn;X3RDhLn;W3TDhLl;X3TDhLl;W3UDhLl;X3UDgLk;X3VDhLj;X3VDhLj;W3XDhLh;X3XDhLh;W3YDiLg;W3ZDhLf;W3[DiLe;W3[DiLe;V3]DiLc;W3]DiLc;V3^DjLb;U3`DjL`;V3`DjL`;U3aDkL_;U3bDjL^;U3cDkL];U3cDkL\\;U3fDjLZ;V3fDjLZ;U3gDkLY;U3hDjLX;U3iDkLW;U3iDkLW;T3kDkLU;U3kDkLU;T3lDlLT;T3lDlLT;S3nDlLR;T3nDkLS;T3nDlLR;T3oDkLQ;T3PElLP;R3REnLn:P3UEoLk:o2WEQMi:m2YESMg:k2[EUMe:i2^EVMb:h2`EXM`:f2bEZM^:e2cE[M]:f2bEZM^:f2bEZM^:g2aEYM_:g2aEYM_:h2`EXM`:h2`EXM`:i2_EWMa:i2_EWMa:j2^EVMb:j2^EVMb:j2^EVMb:k2]EUMc:k2]EUMc:l2\\ETMd:l2\\ETMd:m2[ESMe:m2ZETMf:m2YESMg:m2YESMg:n2XERMh:n2XERMh:o2WEQMi:o2WEQMi:P3VEPMj:P3VEPMj:Q3UEoLk:Q3UEoLk:Q3UEoLk:R3TEnLl:R3TEnLm:R3REnLn:R3REnLn:S3QEmLo:S3QEmLo:T3PElLP;T3PElLP;T3oDmLQ;S3oDmLQ;T3nDlLR;T3nDlLR;T3nDlLR;T3nDlLR;T3nDlLR;T3nDlLR;T3nDlLR;T3nDlLR;U3mDkLS;U3mDkLS;U3mDkLS;U3mDkLS;U3mDkLS;U3mDkLS;U3mDkLS;U3mDkLS;V3lDjLT;V3lDjLT;V3kDkLU;U3kDkLU;U3kDkLU;U3kDkLU;U3kDkLU;U3kDkLU;V3jDjLV;V3jDjLV;V3jDjLV;V3jDjLW;U3iDkLW;U3iDkLW;U3iDkLW;V3hDjLX;V3hDjLX;V3hDjLX;V3hDjLX;V3hDjLX;V3gDkLY;U3gDkLY;U3gDkLY;V3fDjLZ;V3fDjLZ;V3fDjLZ;W3cDkL];W3^DlLb;U3ZDnLf;T3VDmLk;T3QDoLo;S3lCPMT<R3gCQMY<P3dCRM\\<P3_CSMa<n2\\CTMd<n2XCTMh<n2SCUMm<l2PCVMP=l2lBVMT=l2gBWMY=j2dBXM\\=j2`BXM`=j2[BYMe=h2XBZMh=h2TBZMl=h2PBZMP>h2lAZMT>h2gA[MY>k2_AWMa>U3QAmLo>a3a@aL_?Pe00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001O00000000000O10000000000000000000000000000000001O00000000000000000000000000000000000000000O101O0000000000000000000000000000000000000000001O000000000000001O000000001O001O001O001O001O001O0O2O001O001O001O001O1O001O001O001O001O001O001O001O00001O001O001O001O001O001O001O001O001O001O001O00001O001O001O001O001O001O1O001O1N2O1O001O1O1O1O1O2N2N1O2N1O2N2N1O2N1O2N1O2N1O2N1O2N1O2M2O1O2N1O2N1O2N1O1O2N2N1O2N1O2N1O2N1O2N1O1O2N1O1O1O2M2O1O1O1O1O1O2N1O1O1O1O001O1O1O1O1O1O1O1O001O1O0O2O1O1O1O1O1O1O001O1O1O1O1O1O1O1O1O1N2O1O1O1O1O1O1O1O1O1O1O1O1O1O1O1O1N2O1O1O1O1O2N1O1O1O2N1O1O2N1O1O2M2O1O2N1O1O1O1O2N1O1O1O1O1O1O1N2O2N1O1O1O1O1O1O1O1O001O2M3N2M3N2M3N3L3N3L3K6E:G:E;E;D<D<C=B?Bc0oMQ2_Oa0_Oa0^Oc0SKUTOh^O]l0k`0h4A>C?@R1nNP1POi0WOQ4VHTeNbLTkV[1'} 

I would like to have coco polygon format, what can I do then

{
    "segmentation": [[228.0, 332.5, 248.0, 325.5, ..., 228.0, 332.5]],
    "iscrowd": 0,
    "image_id": 1,
    "category_id": 1,
    "id": 1,
    "bbox": [95.5, -0.5, 201.0, 333.0],
    "area": 33317.25
},

Thank You In Advance !

Keiku commented 2 years ago

I think the following will be helpful.

Convert compact RLE to polygon format · Issue https://github.com/cocodataset/cocoapi/issues/476

ZwwWayne commented 2 years ago

Once you have obtained the results, you can use encode_mask_results by from mmdet.core import encode_mask_results to encode the mask to the format of COCO dataset.