Ceci est une ancienne révision du document !
Table des matières
Nvidia Jetson Nano
- ubuntu 18.04
- Ram 3.9 GiB
- Proc ARMv8 Processor rev 1 (v8l) × 4
- Graphics NVIDIA Tegra X1 (nvgpu)/integrated
- OS type 64 bits
- Disk 41.0 GB
Problèmes rencontrés
- Impossible d'installer opencv avec pip et libopencv-dev
- Avec python3-opencv des dépôts, conflit GTK3 et GTK2 avec darknet
Installation sur SD Card
Téléchargement: Jetson Nano Developer Kit SD Card Image
Trouver les disques:
sudo fdisk -l
Copie de l'image sur la SD Card
/usr/bin/unzip -p ~/Downloads/jetson_nano_devkit_sd_card.zip | sudo /bin/dd of=/dev/sd<x> bs=1M status=progress sudo eject /dev/sd<x>
Premier boot:
- License
- Sélection du clavier français
- user/mot de passe
- Annuler les mises à jour: elles ne se font pas –> bug !!!
Installation sur disque externe
Avantages
- Ca va plus vite
- Il y a plus de place
- Ajout d'une swap
- On peut tout recommencer sur le disque externe, sans avoir à recommencer la copie de l'image sur le SD Card
Création du disque externe avec des scripts Nvidia
- Ressource: Run on usb drive
git clone https://github.com/JetsonHacksNano/rootOnUSB cd rootOnUSB ./buildKernel.sh
Copie: Avec gparted, mettre un Label sur la partition destination, remplacer <Volume Label> par votre label
./copyRootToUSB.sh -v <Volume Label>
Menu de boot au démarrage
Pour pouvoir booter sur la SD Card ou le disk externe.
Pas de menu, recherche en cours !
Si le disk externe est absent, et qu'il est en Primary, ça ne démarre pas !
Il faudrait avoir le menu avec la SD Card en Primary !
Modification de /boot/extlinux/extlinux.conf
cp /boot/extlinux/extlinux.conf /boot/extlinux/extlinux_old.conf sudo apt install syslinux-common sudo gedit /boot/extlinux/extlinux.conf
Remplacer le code de ce fichier (en adaptant à vos disques) par:
TIMEOUT 30 DEFAULT primary MENU TITLE p3450-porg eMMC boot options LABEL primary MENU LABEL primary kernel LINUX /boot/Image INITRD /boot/initrd APPEND ${cbootargs} rootfstype=ext4 root=/dev/sda1 rw rootwait LABEL emmc MENU LABEL primary kernel LINUX /boot/Image INITRD /boot/initrd APPEND ${cbootargs} rootfstype=ext4 root=/dev/mmcblk0p1 rw rootwait
Swap
Dans le fichier /etc/fstab, ajouter:
# swap UUID=7d8d120d-9a76-4768-bd5d-904edb68b3fe none swap sw 0 0
Adapter l'UUID à votre cas en la trouvant avec gparted.
Redémarrer.
Opencv 3
Une explication des difficultés avec l'installation de opencv et opencv-dev.
Pour l'utilisation de pip, voir l'excellent article de
Sam et Max
Dans synaptic, désinstaller complètement python3-pip, puis le réinstaller.
Désinstaller aussi tous les paquets opencv, puis:
python3.6 -m pip install opencv-python --user sudo apt-get install cmake clang libopencv-dev libopencv-core-dev libopencv-highgui-dev libopencv-flann-dev libopencv-photo-dev libopencv-video-dev python3.6-dev
Liste des paquets opencv installés: à faire
Yolo V3 Darknet
python3.6 -m pip install numpy --user python3.6 -m pip install scikit-image --user
Voir Yolo Darknet sur un portable Optimus pour la modification du Makefile.
Ne jamais oublier la commande magique:
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
puis
make -j4