Import des fichiers : Modifications qui seront validées : nouveau fichier : MOT20-02.mp4 nouveau fichier : README.md nouveau fichier : autoinstall.sh nouveau fichier : autostart.sh nouveau fichier : checking-camera.py nouveau fichier : main.py nouveau fichier : models/yolo11n.pt nouveau fichier : models/yolo12n.pt nouveau fichier : requirements.txt nouveau fichier : track/botsort.yaml nouveau fichier : track/bytetrack.yaml
70 lines
2.3 KiB
Bash
Executable File
70 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Initialize variables
|
|
START_FILE="$HOME/.config/autostart/vision-par-ordinateur-python.desktop"
|
|
PROJECT_DIR="$HOME/vision-par-ordinateur-python"
|
|
INPUT=""
|
|
VERBOSE=""
|
|
FORCE=""
|
|
API_URL=""
|
|
|
|
# Load PyEnv for user
|
|
export PYENV_ROOT="$HOME/.pyenv"
|
|
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
|
|
eval "$(pyenv init - bash)"
|
|
eval "$(pyenv virtualenv-init -)"
|
|
|
|
# Prompt for INPUT
|
|
read -p "Voulez-vous indiquer un flux d'entrée ? (oui/non): " input_choice
|
|
if [[ "$input_choice" == "oui" || "$input_choice" == "o" ]]; then
|
|
read -p "Entrez la valeur d'entrée : " INPUT
|
|
INPUT="-i $INPUT"
|
|
fi
|
|
|
|
# Prompt for VERBOSE
|
|
read -p "Voulez-vous une verbosité accrue ? (oui/non): " verbose_choice
|
|
if [[ "$verbose_choice" == "oui" || "$verbose_choice" == "o" ]]; then
|
|
VERBOSE="-v"
|
|
fi
|
|
|
|
# Prompt for FORCE
|
|
read -p "Voulez-vous forcer le redimenssionnement de l'image ? (oui/non): " force_choice
|
|
if [[ "$force_choice" == "oui" || "$force_choice" == "o" ]]; then
|
|
FORCE="-f"
|
|
fi
|
|
|
|
# Prompt for API_URL
|
|
read -p "Voulez-vous renseigner l'URL de l'API ? (oui/non): " api_choice
|
|
if [[ "$api_choice" == "oui" || "$api_choice" == "o" ]]; then
|
|
read -p "Entrez l'URL de l'API : " API_URL
|
|
API_URL="--api-url $API_URL"
|
|
fi
|
|
|
|
# Construct the final command
|
|
COMMAND="python main.py $INPUT $VERBOSE $FORCE $API_URL >> $HOME/vision-par-ordinateur-python/main.log 2>&1"
|
|
|
|
# Output the command to the autostart.sh file
|
|
echo -e "$COMMAND" >> autostart.sh
|
|
|
|
# Make the script executable
|
|
chmod +x autostart.sh
|
|
|
|
# Make the project directory and copy content
|
|
mkdir "${PROJECT_DIR}"
|
|
cp -r main.py autostart.sh requirements.txt models track "${PROJECT_DIR}"
|
|
|
|
# Install venv and requirements
|
|
cd "${PROJECT_DIR}"
|
|
pyenv local 3.13.2
|
|
python -m venv venv
|
|
source venv/bin/activate
|
|
pip install --upgrade pip
|
|
pip install -r requirements.txt
|
|
|
|
# Auto start program settings
|
|
mkdir -p ~/.config/autostart
|
|
touch "${START_FILE}"
|
|
echo -e "[Desktop Entry]\nType=Application\nExec=${HOME}/vision-par-ordinateur-python/autostart.sh\nHidden=false\nNoDisplay=false\nX-GNOME-Autostart-enabled=true\nName=Vision par ordinateur\nComment=Lance le script Python pour la vision par ordinateur" >> "${START_FILE}"
|
|
|
|
echo -e "L'installation du programme et du démarrage automatique est terminé.\nVeuillez redémarrer l'ordinateur pour démarrer la vision par ordinateur automatiquement."
|