Outils pour utilisateurs

Outils du site


visionlpro

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
visionlpro [2020/01/14 11:37]
bvandepo
visionlpro [2020/01/18 11:20] (Version actuelle)
bvandepo [Opérations de base sur les images]
Ligne 81: Ligne 81:
 Image après traitement: Image après traitement:
 {{https://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_lpro_vision/​robot_cercle.jpeg}} {{https://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_lpro_vision/​robot_cercle.jpeg}}
 +
 +
 +
 +====Utilisation en réseau====
 +
 +Relever l'​adresse IP de la carte raspberry pi, ouvrir un terminal et saisir:
 +  ip addr ls |grep inet |grep eth0
 + 
 +Relever l'​adresse IPV4 fournie:
 +   inet 10.6.15.115/​24 brd 10.6.15.255 scope global eth0
 +
 +Depuis le PC étudiant, vérifier si la raspberry pi est joignable (CTRL+C pour quitter la commande)
 +  ping 10.6.15.115
 +
 +Si la carte répond, s'y connecter en Secure SHell avec export de l'​affichage:​
 +  slogin -Y meteo@10.6.15.115
 +
 +Puis utiliser le terminal pour faire ce que vous voulez sur la raspberry pi.
 +  ​
 +Afin de gagner du temps, faire un programme sur le PC pour automatiser la connexion au raspberry pi:
 +
 +<file sh rpi.sh>
 +#!/bin/bash
 +slogin -Y meteo@10.6.15.115
 +</​file>​
 +
 +Rendre le script exécutable:​
 +  chmod +x rpi.sh
 +  ​
 +Pour l'​exécuter:​
 +  ./rpi.sh
 +  ​
 +  ​
 +Même principe pour rendre exécutable un programme python3, en ajoutant au début du programme python:
 +  #​!/​usr/​bin/​env python3
 +
 +  ​
 +  ​
 +  ​
 +  ​
 +Pour éditer les programmes sur la raspberry pi:
 +  idle3 nomduprogrammepython.py
 +    ​
 +  ​
 +
 +
 +====Opérations de base sur les images====
 +
 +
 +Espaces colorimétriques et gamut: https://​en.wikipedia.org/​wiki/​Color_spaces_with_RGB_primaries
 +
 +Représentations des couleurs dans différents espaces colorimétriques (sRGB,CMYK, YUV,​YCrCb,​HSV):​
 +
 +sRGB:
 +https://​fr.wikipedia.org/​wiki/​SRGB
 +
 +https://​en.wikipedia.org/​wiki/​Color_spaces_with_RGB_primaries
 +
 +
 +YUV:
 +https://​fr.wikipedia.org/​wiki/​YUV
 +
 +https://​answers.opencv.org/​question/​56762/​opencv-bgr-to-yuv-conversion/​
 +
 +décimation chromatique:​ https://​en.wikipedia.org/​wiki/​YUV#​Y%E2%80%B2UV420p_(and_Y%E2%80%B2V12_or_YV12)_to_RGB888_conversion
 +
 +YCbCr:
 +https://​fr.wikipedia.org/​wiki/​YCbCr
 +
 +CMYK
 +https://​gist.github.com/​wyudong/​9c392578c6247e7d1d28#​file-rgb2cmyk-cpp-L2
 +
 +HSV:
 +https://​fr.wikipedia.org/​wiki/​Teinte_saturation_lumi%C3%A8re
 +
 +https://​stackoverflow.com/​questions/​3018313/​algorithm-to-convert-rgb-to-hsv-and-hsv-to-rgb-in-range-0-255-for-both
 +
 +
 +Filtre de bayer pour capteur couleur: https://​fr.wikipedia.org/​wiki/​Matrice_de_Bayer
 +
 +
 +
 +Pour afficher les informations sur une images avec imageMagick
 +  identify -verbose image.jpg
 +  ​
 +  ​
 +  ​
 +===Tuto OpenCV:===
 +https://​opencv-python-tutroals.readthedocs.io/​en/​latest/​py_tutorials/​py_core/​py_basic_ops/​py_basic_ops.html#​basic-ops
 +  ​
 +  ​
 + <​file python test2.py>​
 +#​!/​usr/​bin/​python3
 +import cv2
 +import numpy as np
 +img = cv2.imread('​messi5.jpg'​)
 +
 +px = img[100,​100]
 +print(px)
 +#[157 166 200]
 +#organisé en B,G,R
 +img[100,​100]=[0,​255,​0]
 +
 +#conversion de BGR vers YUV
 +img_out = cv2.cvtColor(img,​ cv2.COLOR_BGR2YUV)
 +
 +#recopie de la luminance Y sur les 3 canaux BGR pour affichage en niveau de gris
 +for x in range (0,​img.shape[0]):​
 +  for y in range (0,​img.shape[1]):​
 +    img_out[x,​y,​1]=img_out[x,​y,​0] ​
 +    img_out[x,​y,​2]=img_out[x,​y,​0]
 +
 +#​génération d'une imagette de 60x60 pixels (cropping)
 +ball = img[280:​340,​ 330:390]
 +#recopie de l'​imagette à différentes positions dans l'​image
 +for b in range(0,4):
 +  img_out[50+b*50:​ 50+b*50 +ball.shape[0] ​ , 50+b*100: 50+b*100 +ball.shape[1]] = ball
 +cv2.imwrite('​messi5_multi_ballon.jpg',​img_out)
 +#​affichage ​
 +cv2.imshow('​image',​img_out)
 +cv2.waitKey(0)
 +cv2.destroyAllWindows()
 +</​file>​
 +
 +
 +Image avant traitement:
 +{{https://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_lpro_vision/​messi5.jpg}}
 +
 +
 +Image après traitement:
 +{{https://​homepages.laas.fr/​bvandepo/​files/​iut/​tp_lpro_vision/​messi5_multi_ballon.jpg}}
  
  
visionlpro.1578998221.txt.gz · Dernière modification: 2020/01/14 11:37 par bvandepo