Este proyecto tiene como objetivo proporcionar una implementación de referencia modificable y fácil de usar para modelos de segmentación semántica en tiempo real utilizando Pytorch.

Se debe instalar Pytorch y TorchVision antes de ejecutar los scripts, es compatible con Pytorch v1.1 o posterior.
pip3 install -r requirements.txtEl proyecto admite estos modelos de segmentación semántica de la siguiente manera:
El proyecto respalda estas funciones de pérdida:
- Entropía cruzada pesada
- Entropía cruzada pesada con etiqueta suave
- Pérdida focal
- Entropía cruzada de ohem
- Lovaszsoftmax
- Lista de segglosas
- ...
El proyecto admite estos optimizadores:
- Sgd
- Adán
- Adamw
- Radam
- Radam + LookAhead
- ...
- Rehacer
- Prelú
- Relu6
- Silbido
- Mish: una función de activación neuronal no monotónica auto regularizada
- ...
El proyecto admite estos lr_schedulers:
- Decayación poli
- Poli de calentamiento
- ...
- Batchnorm activado en el lugar
- Normalización conmutable
- Estandarización de peso
- ...
- Familia de atención
- Familia NAS
- ...
- pytorch-opcounter
- flops-counter.pytorch
- Netron: Visualizador para modelos de redes neuronales, URL en línea: Netron
- Falshtorch: ¡Toma de herramientas de visualización para redes neuronales en Pytorch!
- Bolsa de trucos para la clasificación de imágenes con redes neuronales convolucionales
- ...
Este proyecto se ha adaptado para adaptarse a los paisajes urbanos y los conjuntos de datos CAMVID. Los pliegues de su conjunto de datos necesitan satisfacer las siguientes estructuras:
|-- dataset
| |-- camvid
| | |-- train
| | |-- trainannot
| | |-- val
| | |-- valannot
| | |-- test
| | |-- testannot
| | |-- ...
| |-- cityscapes
| | |-- leftImg8bit
| | | |-- train
| | | |-- val
| | | |-- test
| | |-- gtFine
| | | |-- train
| | | |-- val
| | | |-- test
| | |-- ...
git clone https://github.com/xiaoyufenfei/Efficient-Segmentation-Networks
cd Efficient-Segmentation-Networks
Actualmente, el código admite Python 3
Dependencias de la antorcha:
Dependencias de datos:
Descargue los paisajes urbanos y ejecute el script createTrainIdLabelImgs.py para crear anotaciones basadas en las etiquetas de entrenamiento. Asegúrese de que la carpeta se denomina paisajes urbanos
python train.py --help
python train.py --help
python test.py --help
python predict.py --help
cd tools
python trainID2labelID.py
Si crees que este trabajo es útil, ¡dame una estrella! Y si encuentra algún error o tiene alguna sugerencia, contácteme.
Github: xiaoyufenfei Correo electrónico: [email protected]
Se le recomienda que cite los siguientes documentos si este trabajo ayuda a su investigación.
@misc{Efficient-Segmentation-Networks,
author = {Yu Wang},
title = {Efficient-Segmentation-Networks Pytorch Implementation},
year = {2019},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = { u rl{https://github.com/xiaoyufenfei/Efficient-Segmentation-Networks}},
commit = {master}
}Este proyecto se publica bajo la licencia MIT. Consulte la licencia para obtener detalles adicionales.