L’obiettivo è lanciare labelimg
su Windows usando Docker in modo da evitare tutti i problemi di dipendenza e avere un ambiente uguale per tutti.
Per prima cosa è necessario creare un Dockerfile
:
Nella stessa cartella dove si trova il Dockerfile
mettere il contenuto della repository di labelimg
.
Modificare il file labelimg\data\predefined_classes.txt
con le classi predefinite che si pensa di utilizzare, per esempio:
0
1
2
Ora costruiamo l’immagine Docker:
Una volta costruita l’immagine possiamo eseguirne il container. Se le immagini che voglio utilizzare sono in un path locale, tale path dovrà essere montato come volume facendo in modo che punti alla cartella /data
all’interno del container.
E’ necessario che la cartella contenente le immagini di cui voglio fare il labelling contenga un file classes.txt
con indicate le classi dei file separati da \n
.
Su Windows non è scontato lanciare finestre grafiche all’interno di Container in quanto sono ambienti virtualizzati. Per risolvere è necessario installare VcXsrv
indicando come opzioni:
- Multiple windows
- Start no client
- Abilita “Disable access control”
Infine posso avviare labelimg
con il comando: