Cuprins

  • Introducere
  • Caracteristici si TODO
  • Instalare
  • Instruire
  • Evaluare si deductie
  • Experimente
  • Citatii
  • Multumiri

Introducere

Acesta este codul pentru lucrarea NeurIPS 2019 Regiune Pierderea informatiilor reciproce pentru segmentarea semantica.

Acest referat propune o pierdere de informatii reciproce in regiune (RMI) pentru a modela dependentele dintre pixeli. RMI utilizeaza un pixel si pixelii vecini pentru a reprezenta acest pixel. Apoi, pentru fiecare pixel dintr-o imagine, obtinem un punct multidimensional care codifica relatia dintre pixeli, iar imaginea este aruncata intr-o distributie multidimensionala a acestor puncte de inalta dimensiune. Predictia si adevarul la sol astfel pot obtine o consistenta ridicata a ordinii prin maximizarea informatiei reciproce (IM) intre distributiile lor multidimensionale.

Caracteristici si TODO

  • Suporta diferite modele de segmentare, adica DeepLabv3, DeepLabv3 +, PSPNet
  • Instruire multi-GPU
  • Multi-GPU sincronizat BatchNorm
  • Accepta diferite coloane vertebrale, de exemplu, Mobilenet, Xception
  • Model pretensionat pe MS-COCO
  • Instruire distribuita

Suntem deschisi sa preluam cereri.

Instalare

Instalati dependente

Va rugam sa instalati PyTorch-1.1.0 si Python3.6.5. Va recomandam cu tarie sa utilizati imaginea noastra de andocare PyTorch – zhaosssss / torch_lab.

docker pull zhaosssss / torch_lab: 1.1.0

Daca nu ati instalat docker, consultati https://docs.docker.com/.

Dupa ce instalati docker-ul si trageti imaginea noastra, puteti cd in directorul de scripturi si puteti rula

pentru a crea un container docker care ruleaza.

Daca nu doriti sa utilizati docker, incercati

pip install -r requirements.txt

Cu toate acestea, acest lucru nu este sugerat.

Pregatiti date

In general, directoarele sunt organizate dupa cum urmeaza:

| | –dataset (salvati setul de date) | –models (salvati punctele de control de iesire) | –github (salvati codul) | – | | – | –RMI (depozitul de coduri RMI) | – | – | –crf | – | – | –dataloaders | – | – | – – pierderi …

follando con las vecinas suegras peludas
follada a traicion madres cachondas
porno portugues muy tetonas
pajotes porno gratis abuelos
argentina follada videos porno xxx incesto
cerdas com gratis porno argumento
porno traducido al español viejas calientes
realincest folladas caseras reales
videos madres lesbianas pornoamater
xxporn masaje final feliz
putas en vic incesto real madre hijo
videos porno abuelas videos gays españoles
porno español creampie porno abuelas tetonas
follada por muchos follate a mi novia
jovenes zorras vecinas cachondas
casadas cachondas penes erectos
jovencitas peludas follando videos chicas gratis
se corre dentro de su prima casting porno español
follar con jovencitas porno gay violacion
cornudos consentidos porno casero colombiano

  • Descarcati datele de instruire / validare PASCAL VOC (fisier tar de 2 GB) si date de segmentare augmentata, extrageti-le si puneti-le in directorul setului de date.

  • cd in directorul github si cloneaza repo-ul RMI.

In ceea ce priveste setul de date CamVid, puteti descarca din SegNet-Tutorial. Aceasta este o versiune procesata a setului de date original CamVid.

Instruire

Consultati script / train.sh pentru informatii detaliate. Inainte de a incepe antrenamentul, ar trebui sa specificati cateva variabile in script / train.sh.

  • pre_dir, unde va salvati punctele de control de iesire. Daca organizati dir-ul asa cum va sugeram, ar trebui sa fie pre_dir = models.

  • data_dir, unde va salvati setul de date. In plus, ar trebui sa puneti listele de imagini din setul de date intr-un anumit director, verificati dataloaders / datasets / pascal.py pentru a afla cum organizam conducta de intrare.

Puteti gasi mai multe informatii despre argumentele codului in parser_params.py.

python parser_params.py –utilizare ajutor: parser_params.py [-h] [–resume RESUME] [–checkname CHECKNAME] [–save_ckpt_steps SAVE_CKPT_STEPS] [–max_ckpt_nums MAX_CKPT_NUMS] [–model_dir MODEL_DIR] OUTPUT_DIR] [–seg_model {deeplabv3, deeplabv3 +, pspnet}] [–backbone {resnet50, resnet101, resnet152, resnet50_beta, resnet101_beta, resnet152_beta}] [–out_stride OUT_STRIDE] [–batch_sum N] [–test_batch_size N] [–dataset {pascal, coco, cityscapes, camvid}] [–train_split {train, trainaug, trainval, val, test}] [–data_dir DATA_DIR] [–use_sbd] [- lucratorilor N] … [–rmi_pool_size RMI_POOL_SIZE] [–rmi_pool_stride RMI_POOL_STRIDE] [–rmi_radius RMI_RADIUS] [–crf_iter_steps CRF_ITER_STEPS] [–local_rank LOCAL_RANK] [–world_size WORL] -multiprocesare_distribuita]

Dupa ce ati setat corect toate argumentele, puteti pur si simplu sa cd pe RMI / script si sa rulati

pentru a incepe antrenamentul.

  • Monitorizarea procesului de instruire prin tensorboard
tensorboard –logdir = your_logdir –port = your_port

  • Utilizarea memoriei GPU

Pregatirea unui model DeepLabv3 cu output_stride = 16, crop_size = 513 si batch_size = 16 are nevoie de 4 GPU GTX 1080 (8 GB) sau 2 GPU GTX TITAN X (12 GB) sau 1 GPU TITAN RTX (24 GB).

Evaluare si deductie

Consultati script / eval.sh si script / inference.sh pentru informatii detaliate.

De asemenea, ar trebui sa specificati cateva variabile in scripturi.

  • data_dir, unde va salvati setul de date.

  • CV, unde se afla punctele de control.

  • output_dir, unde datele de iesire vor fi salvate.

Atunci fugi

sau

Experimente

Unele rezultate calitative selectate pe setul de valuri PASCAL VOC 2012. Rezultatele segmentarii DeepLabv3 + si RMI au detalii mai bogate decat DeepLabv3 + si CE, de exemplu, mici umflaturi ale aripii avionului, ramuri ale plantelor, membre ale vacilor si oilor etc.

Citatii

Daca lucrarea si codul nostru sunt benefice pentru munca dvs., va rugam sa citati:

@inproceedings {2019_zhao_rmi, author = {Shuai Zhao si Yang Wang si Zheng Yang si Deng Cai}, title = {Pierderea informatiilor reciproce in regiune pentru segmentarea semantica}, booktitle = {NeurIPS}, year = {2019},}

Daca va ajuta si alte lucrari conexe din codul sau lucrarea noastra, va rugam sa citati lucrarile corespunzatoare.

Multumiri

  • Codificare PyTorch
  • oficial-tensorflow-deeplab
  • Synchronized-BatchNorm-PyTorch
  • pytorch-deeplab-xception
  • pydensecrf
  • Adaptive_Affinity_Fields
  • rishizek-tensorflow-deeplab-v3-plus
  • Tutorial SegNet