ROV'NET  0.2
BTS SNIR LaSalle Avignon 2020
Référence de la classe Camera

Class permettant de mettre en place une communication avec la camera. Plus de détails...

#include "camera.h"

Graphe de collaboration de Camera:
Collaboration graph

Connecteurs publics

void setContraste (int contraste)
 Modifie le contraste de la caméra. Plus de détails...
 
void setLuminosite (int luminosite)
 Modifie la luminosite de la caméra. Plus de détails...
 
void setResolution (int largeur, int hauteur)
 Modifie la résolution (largeur x hauteur) Plus de détails...
 
void setResolution (QSize resolution)
 Modifie la résolution (largeur x hauteur) Plus de détails...
 
void setResolution (int choix)
 Modifie la résolution (index dans la liste) Plus de détails...
 
void setSaturation (int saturation)
 Modifie la saturation de la caméra. Plus de détails...
 

Signaux

void finVideo ()
 Envoie un signal lorsque la vidéo est interrompu. Plus de détails...
 
void nouvelleImage (QPixmap image)
 Envoie un signal lorsque une nouvelle image du flux vidéo est disponible. Plus de détails...
 

Fonctions membres publiques

 Camera (Rov *rov, int numero, int choixResolution=-1)
 Constructeur de la classe Camera. Plus de détails...
 
 Camera (Rov *rov, QString nomCamera, int choixResolution=-1)
 Constructeur de la classe Camera. Plus de détails...
 
int getChoixResolution ()
 Récupère le choix de la resolution active. Plus de détails...
 
QList< QSize > getListeResolutionsCamera ()
 Retourne la liste des résolutions supportées par la caméra. Plus de détails...
 
QString getNom () const
 Retourne le nom de la caméra. Plus de détails...
 
QSize getResolution ()
 Récupère la resolution active. Plus de détails...
 
void recupererListeResolutionsCamera ()
 Récupère la liste des résolutions supportées par la caméra sélectionnée. Plus de détails...
 
void recupererListeResolutionsCamera (int numero)
 Récupère la liste des résolutions supportées par la caméra à partir de son numéro. Plus de détails...
 
void recupererListeResolutionsCamera (QString nomCamera)
 Récupère la liste des résolutions supportées par la caméra à partir de son nom. Plus de détails...
 
void recupererListeResolutionsCamera (QCameraInfo &cameraInfo)
 Récupère la liste des résolutions supporté par la caméra. Plus de détails...
 
void run ()
 Démarre une nouveau thread afin de capturer le flux video et l'envoyer à l'IHM. Plus de détails...
 
void setProprietes (cv::VideoCapture &camera)
 Après l'acquisition d'une nouvelle frame modifie les propriété de la caméra si ceux-ci ont été modifié par l'IHM. Plus de détails...
 
 ~Camera ()
 Destructeur de la classe Camera. Plus de détails...
 

Fonctions membres publiques statiques

static QString creerNomCamera (int numero)
 Retourne le nom de caméra associé a son numéro. Plus de détails...
 
static int extraireNumero (QString nomCamera)
 Retourne le numéro de caméra associé a son nom. Plus de détails...
 
static int getNbCameras ()
 Retourne le nombre de caméras connectés. Plus de détails...
 
static QList< QSize > lireListeResolutionsCamera (QCameraInfo &cameraInfo)
 Retourne la liste des résolutions supportés par la caméra passé en parametre. Plus de détails...
 

Fonctions membres privées

void acquerirImageVideo (cv::VideoCapture &camera, cv::Mat &frame)
 Fait l'acquisition d'une nouvelle frame. Plus de détails...
 

Attributs privés

bool changementProprietes
 Attribut désignant si une propriete de la caméra doit être modifiée. Plus de détails...
 
int choixResolution
 Choix dans la liste contenant les résolutions supportés par la caméra. Plus de détails...
 
double contraste
 Attribut contenant le constraste de la vidéo. Plus de détails...
 
int hauteur
 Attribut contenant la hauteur (heigth) en pixels de la vidéo. Plus de détails...
 
int largeur
 Attribut contenant la largeur (width) en pixels de la vidéo. Plus de détails...
 
QList< QSize > listeResolutionsCamera
 Liste contenant les résolutions supportés par la caméra. Plus de détails...
 
double luminosite
 Attribut contenant la luminosite de la vidéo. Plus de détails...
 
QString nomCamera
 Attribut contenant le nom de la caméra sélectionnée. Plus de détails...
 
int numero
 Attribut contenant le numéro de la caméra sélectionnée. Plus de détails...
 
Rovrov
 Objet rov permettant de récuperer les dernière mesures issues des capteurs. Plus de détails...
 
double saturation
 Attribut contenant la saturation de la vidéo. Plus de détails...
 

Description détaillée

Class permettant de mettre en place une communication avec la camera.

Définition à la ligne 58 du fichier camera.h.

Documentation des constructeurs et destructeur

◆ Camera() [1/2]

Camera::Camera ( Rov rov,
int  numero,
int  choixResolution = -1 
)

Constructeur de la classe Camera.

Paramètres
rov
numero
choixResolution

Définition à la ligne 12 du fichier camera.cpp.

Références contraste, creerNomCamera(), getNbCameras(), hauteur, largeur, luminosite, nomCamera, recupererListeResolutionsCamera(), saturation, et setResolution().

13 {
14  #if CV_VERSION_MAJOR == 3
15  qDebug() << Q_FUNC_INFO << "OpenCV" << CV_VERSION_MAJOR << CV_VERSION_MINOR;
16  #else
17  qDebug() << Q_FUNC_INFO << "OpenCV" << CV_MAJOR_VERSION << CV_MINOR_VERSION;
18  #endif
19 
21 
24  if(choixResolution == -1)
26  else
28  qDebug() << Q_FUNC_INFO << this;
29  qDebug() << Q_FUNC_INFO << "numero" << numero << "nomCamera" << nomCamera;
30  qDebug() << Q_FUNC_INFO << "largeur" << largeur << "hauteur" << hauteur;
31  qDebug() << Q_FUNC_INFO << "luminosite" << luminosite << "contraste" << contraste << "saturation" << saturation;
32 }
int numero
Attribut contenant le numéro de la caméra sélectionnée.
Definition: camera.h:64
QString nomCamera
Attribut contenant le nom de la caméra sélectionnée.
Definition: camera.h:63
#define SEUIL_DEFAUT
Défini le seuil du contraste, luminosite et saturation de la caméra par défaut.
Definition: camera.h:47
void setResolution(int largeur, int hauteur)
Modifie la résolution (largeur x hauteur)
Definition: camera.cpp:187
double luminosite
Attribut contenant la luminosite de la vidéo.
Definition: camera.h:67
int choixResolution
Choix dans la liste contenant les résolutions supportés par la caméra.
Definition: camera.h:72
#define HAUTEUR_DEFAUT
Défini la hauteur en pixel de la caméra par défaut.
Definition: camera.h:41
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
double contraste
Attribut contenant le constraste de la vidéo.
Definition: camera.h:68
#define LARGEUR_DEFAUT
Défini la largeur en pixel de la caméra par défaut.
Definition: camera.h:35
int hauteur
Attribut contenant la hauteur (heigth) en pixels de la vidéo.
Definition: camera.h:66
int largeur
Attribut contenant la largeur (width) en pixels de la vidéo.
Definition: camera.h:65
void recupererListeResolutionsCamera()
Récupère la liste des résolutions supportées par la caméra sélectionnée.
Definition: camera.cpp:134
static int getNbCameras()
Retourne le nombre de caméras connectés.
Definition: camera.cpp:271
static QString creerNomCamera(int numero)
Retourne le nom de caméra associé a son numéro.
Definition: camera.cpp:294
double saturation
Attribut contenant la saturation de la vidéo.
Definition: camera.h:69
Rov * rov
Objet rov permettant de récuperer les dernière mesures issues des capteurs.
Definition: camera.h:62

◆ Camera() [2/2]

Camera::Camera ( Rov rov,
QString  nomCamera,
int  choixResolution = -1 
)

Constructeur de la classe Camera.

Paramètres
rov
nomCamera
choixResolution

Définition à la ligne 34 du fichier camera.cpp.

Références contraste, extraireNumero(), getNbCameras(), hauteur, largeur, luminosite, nomCamera, numero, recupererListeResolutionsCamera(), saturation, et setResolution().

35 {
36  #if CV_VERSION_MAJOR == 3
37  qDebug() << Q_FUNC_INFO << "OpenCV" << CV_VERSION_MAJOR << CV_VERSION_MINOR;
38  #else
39  qDebug() << Q_FUNC_INFO << "OpenCV" << CV_MAJOR_VERSION << CV_MINOR_VERSION;
40  #endif
41 
43 
45 
47  if(choixResolution == -1)
49  else
51 
52  qDebug() << Q_FUNC_INFO << this;
53  qDebug() << Q_FUNC_INFO << "numero" << numero << "nomCamera" << nomCamera;
54  qDebug() << Q_FUNC_INFO << "largeur" << largeur << "hauteur" << hauteur;
55  qDebug() << Q_FUNC_INFO << "luminosite" << luminosite << "contraste" << contraste << "saturation" << saturation;
56 }
int numero
Attribut contenant le numéro de la caméra sélectionnée.
Definition: camera.h:64
static int extraireNumero(QString nomCamera)
Retourne le numéro de caméra associé a son nom.
Definition: camera.cpp:277
QString nomCamera
Attribut contenant le nom de la caméra sélectionnée.
Definition: camera.h:63
#define SEUIL_DEFAUT
Défini le seuil du contraste, luminosite et saturation de la caméra par défaut.
Definition: camera.h:47
void setResolution(int largeur, int hauteur)
Modifie la résolution (largeur x hauteur)
Definition: camera.cpp:187
double luminosite
Attribut contenant la luminosite de la vidéo.
Definition: camera.h:67
int choixResolution
Choix dans la liste contenant les résolutions supportés par la caméra.
Definition: camera.h:72
#define HAUTEUR_DEFAUT
Défini la hauteur en pixel de la caméra par défaut.
Definition: camera.h:41
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
double contraste
Attribut contenant le constraste de la vidéo.
Definition: camera.h:68
#define LARGEUR_DEFAUT
Défini la largeur en pixel de la caméra par défaut.
Definition: camera.h:35
int hauteur
Attribut contenant la hauteur (heigth) en pixels de la vidéo.
Definition: camera.h:66
int largeur
Attribut contenant la largeur (width) en pixels de la vidéo.
Definition: camera.h:65
void recupererListeResolutionsCamera()
Récupère la liste des résolutions supportées par la caméra sélectionnée.
Definition: camera.cpp:134
static int getNbCameras()
Retourne le nombre de caméras connectés.
Definition: camera.cpp:271
double saturation
Attribut contenant la saturation de la vidéo.
Definition: camera.h:69
Rov * rov
Objet rov permettant de récuperer les dernière mesures issues des capteurs.
Definition: camera.h:62

◆ ~Camera()

Camera::~Camera ( )

Destructeur de la classe Camera.

Définition à la ligne 58 du fichier camera.cpp.

59 {
60  qDebug() << Q_FUNC_INFO << this;
61 }

Documentation des fonctions membres

◆ acquerirImageVideo()

void Camera::acquerirImageVideo ( cv::VideoCapture &  camera,
cv::Mat &  frame 
)
private

Fait l'acquisition d'une nouvelle frame.

Paramètres
camera
frame

Définition à la ligne 63 du fichier camera.cpp.

Référencé par run().

64 {
65  camera >> frame;
66 }

◆ creerNomCamera()

QString Camera::creerNomCamera ( int  numero)
static

Retourne le nom de caméra associé a son numéro.

Renvoie
le nom de caméra associé a son numéro
Paramètres
numero

Définition à la ligne 294 du fichier camera.cpp.

Référencé par Camera(), Rov::demarrerCampagne(), et recupererListeResolutionsCamera().

295 {
296  QString nom;
297 
298  if(numero >= 0)
299  {
300  nom = QString("/dev/video") + QString::number(numero);
301  }
302  return nom;
303 }
int numero
Attribut contenant le numéro de la caméra sélectionnée.
Definition: camera.h:64

◆ extraireNumero()

int Camera::extraireNumero ( QString  nomCamera)
static

Retourne le numéro de caméra associé a son nom.

Renvoie
le numéro de caméra associé a son nom
Paramètres
nomCamera

Définition à la ligne 277 du fichier camera.cpp.

Références numero.

Référencé par Camera().

278 {
279  int numero = -1;
280  QString video = "/dev/video";
281 
282  if(nomCamera.contains(video))
283  {
284  QString n = nomCamera.mid(video.length(), nomCamera.length());
285  bool ok;
286  qDebug() << Q_FUNC_INFO << "nom" << nomCamera << "n" << nomCamera.right(nomCamera.indexOf("/dev/video")) << "index" << nomCamera.indexOf("/dev/video");
287  numero = n.toInt(&ok);
288  if(ok)
289  return numero;
290  }
291  return numero;
292 }
int numero
Attribut contenant le numéro de la caméra sélectionnée.
Definition: camera.h:64
QString nomCamera
Attribut contenant le nom de la caméra sélectionnée.
Definition: camera.h:63

◆ finVideo

void Camera::finVideo ( )
signal

Envoie un signal lorsque la vidéo est interrompu.

Référencé par run().

◆ getChoixResolution()

int Camera::getChoixResolution ( )

Récupère le choix de la resolution active.

Renvoie
le choix de la resolution active

Définition à la ligne 129 du fichier camera.cpp.

Références choixResolution.

Référencé par IHMReglageVideo::chargerListeResolutionDisponible().

130 {
131  return choixResolution;
132 }
int choixResolution
Choix dans la liste contenant les résolutions supportés par la caméra.
Definition: camera.h:72

◆ getListeResolutionsCamera()

QList< QSize > Camera::getListeResolutionsCamera ( )

Retourne la liste des résolutions supportées par la caméra.

Renvoie
la liste des résolutions supportées par la caméra

Définition à la ligne 182 du fichier camera.cpp.

Références listeResolutionsCamera.

183 {
184  return listeResolutionsCamera;
185 }
QList< QSize > listeResolutionsCamera
Liste contenant les résolutions supportés par la caméra.
Definition: camera.h:71

◆ getNbCameras()

int Camera::getNbCameras ( )
static

Retourne le nombre de caméras connectés.

Renvoie
le nombre de caméras connectés

Définition à la ligne 271 du fichier camera.cpp.

Référencé par Camera(), et Rov::demarrerCampagne().

272 {
273  qDebug() << Q_FUNC_INFO << "Caméra(s) disponible(s)" << QCameraInfo::availableCameras().count();
274  return QCameraInfo::availableCameras().count();
275 }

◆ getNom()

QString Camera::getNom ( ) const

Retourne le nom de la caméra.

Renvoie
nom de la caméra

Définition à la ligne 103 du fichier camera.cpp.

Références nomCamera.

Référencé par IHMReglageVideo::chargerListeCameraDisponible().

104 {
105  return nomCamera;
106 }
QString nomCamera
Attribut contenant le nom de la caméra sélectionnée.
Definition: camera.h:63

◆ getResolution()

QSize Camera::getResolution ( )

Récupère la resolution active.

Renvoie
la resolution active

Définition à la ligne 122 du fichier camera.cpp.

Références choixResolution, HAUTEUR_DEFAUT, LARGEUR_DEFAUT, et listeResolutionsCamera.

Référencé par IHMReglageVideo::chargerListeResolutionDisponible().

123 {
124  if(choixResolution != -1)
126  return QSize(LARGEUR_DEFAUT,HAUTEUR_DEFAUT);
127 }
QList< QSize > listeResolutionsCamera
Liste contenant les résolutions supportés par la caméra.
Definition: camera.h:71
int choixResolution
Choix dans la liste contenant les résolutions supportés par la caméra.
Definition: camera.h:72
#define HAUTEUR_DEFAUT
Défini la hauteur en pixel de la caméra par défaut.
Definition: camera.h:41
#define LARGEUR_DEFAUT
Défini la largeur en pixel de la caméra par défaut.
Definition: camera.h:35

◆ lireListeResolutionsCamera()

QList< QSize > Camera::lireListeResolutionsCamera ( QCameraInfo &  cameraInfo)
static

Retourne la liste des résolutions supportés par la caméra passé en parametre.

Renvoie
la liste des résolutions supportés par la caméra passé en parametre
Paramètres
cameraInfo

Définition à la ligne 305 du fichier camera.cpp.

Référencé par IHMReglageVideo::chargerListeResolutionDisponible().

306 {
307  QList<QSize> listeResolutions;
308  listeResolutions.clear();
309  if(QCameraInfo::availableCameras().count() > 0)
310  {
311  QCamera *camera = new QCamera(cameraInfo);
312  QMediaRecorder *mediaRecorder = new QMediaRecorder(camera);
313  camera->load();
314  qDebug() << Q_FUNC_INFO << mediaRecorder->supportedResolutions().size();
315  if(mediaRecorder->supportedResolutions().size() > 0)
316  {
317  foreach (const QSize &resolution, mediaRecorder->supportedResolutions())
318  {
319  qDebug() << Q_FUNC_INFO << resolution.width() << "x" << resolution.height();
320  listeResolutions.push_back(resolution);
321  }
322  }
323  delete mediaRecorder;
324  delete camera;
325  }
326  return listeResolutions;
327 }

◆ nouvelleImage

void Camera::nouvelleImage ( QPixmap  image)
signal

Envoie un signal lorsque une nouvelle image du flux vidéo est disponible.

Paramètres
image

Référencé par run().

◆ recupererListeResolutionsCamera() [1/4]

void Camera::recupererListeResolutionsCamera ( )

Récupère la liste des résolutions supportées par la caméra sélectionnée.

Définition à la ligne 134 du fichier camera.cpp.

Références nomCamera.

Référencé par Camera(), et recupererListeResolutionsCamera().

135 {
136  QCameraInfo cameraInfo(nomCamera.toLatin1());
138 }
QString nomCamera
Attribut contenant le nom de la caméra sélectionnée.
Definition: camera.h:63
void recupererListeResolutionsCamera()
Récupère la liste des résolutions supportées par la caméra sélectionnée.
Definition: camera.cpp:134

◆ recupererListeResolutionsCamera() [2/4]

void Camera::recupererListeResolutionsCamera ( int  numero)

Récupère la liste des résolutions supportées par la caméra à partir de son numéro.

Paramètres
numero

Définition à la ligne 140 du fichier camera.cpp.

Références creerNomCamera(), et recupererListeResolutionsCamera().

141 {
142  QString nom = Camera::creerNomCamera(numero);
143  QCameraInfo cameraInfo(nom.toLatin1());
145 }
int numero
Attribut contenant le numéro de la caméra sélectionnée.
Definition: camera.h:64
void recupererListeResolutionsCamera()
Récupère la liste des résolutions supportées par la caméra sélectionnée.
Definition: camera.cpp:134
static QString creerNomCamera(int numero)
Retourne le nom de caméra associé a son numéro.
Definition: camera.cpp:294

◆ recupererListeResolutionsCamera() [3/4]

void Camera::recupererListeResolutionsCamera ( QString  nomCamera)

Récupère la liste des résolutions supportées par la caméra à partir de son nom.

Paramètres
nomCamera

Définition à la ligne 147 du fichier camera.cpp.

Références recupererListeResolutionsCamera().

148 {
149  QCameraInfo cameraInfo(nomCamera.toLatin1());
151 }
QString nomCamera
Attribut contenant le nom de la caméra sélectionnée.
Definition: camera.h:63
void recupererListeResolutionsCamera()
Récupère la liste des résolutions supportées par la caméra sélectionnée.
Definition: camera.cpp:134

◆ recupererListeResolutionsCamera() [4/4]

void Camera::recupererListeResolutionsCamera ( QCameraInfo &  cameraInfo)

Récupère la liste des résolutions supporté par la caméra.

Paramètres
cameraInfo

Définition à la ligne 153 du fichier camera.cpp.

Références HAUTEUR_DEFAUT, LARGEUR_DEFAUT, et listeResolutionsCamera.

154 {
155  #ifndef SANS_DETECTION
156  listeResolutionsCamera.clear();
157  if(QCameraInfo::availableCameras().count() > 0)
158  {
159  QCamera *camera = new QCamera(cameraInfo, this);
160  QMediaRecorder *mediaRecorder = new QMediaRecorder(camera, this);
161  camera->load();
162  qDebug() << Q_FUNC_INFO << this << mediaRecorder->supportedResolutions().size();
163  if(mediaRecorder->supportedResolutions().size() > 0)
164  {
165  foreach (const QSize &resolution, mediaRecorder->supportedResolutions())
166  {
167  qDebug() << Q_FUNC_INFO << resolution.width() << "x" << resolution.height();
168  listeResolutionsCamera.push_back(resolution);
169  }
170  }
171  delete mediaRecorder;
172  delete camera;
173  }
174  #else
175  Q_UNUSED(cameraInfo);
176  listeResolutionsCamera.clear();
177  QSize resolutionDefaut(LARGEUR_DEFAUT, HAUTEUR_DEFAUT);
178  listeResolutionsCamera.push_back(resolutionDefaut);
179  #endif
180 }
QList< QSize > listeResolutionsCamera
Liste contenant les résolutions supportés par la caméra.
Definition: camera.h:71
#define HAUTEUR_DEFAUT
Défini la hauteur en pixel de la caméra par défaut.
Definition: camera.h:41
#define LARGEUR_DEFAUT
Défini la largeur en pixel de la caméra par défaut.
Definition: camera.h:35

◆ run()

void Camera::run ( )

Démarre une nouveau thread afin de capturer le flux video et l'envoyer à l'IHM.

Définition à la ligne 68 du fichier camera.cpp.

Références acquerirImageVideo(), changementProprietes, finVideo(), nomCamera, nouvelleImage(), numero, et setProprietes().

69 {
70  qDebug() << Q_FUNC_INFO << "start" << "numero" << numero << "nomCamera" << nomCamera;
71  this->setPriority(QThread::NormalPriority);
72 
73  if(numero < 0)
74  {
75  qDebug() << Q_FUNC_INFO << "Erreur numero" << numero << "nomCamera" << nomCamera;
76  return;
77  }
78 
79  cv::VideoCapture camera(numero);
80  cv::Mat frame;
81 
82  setProprietes(camera);
83 
84  while(camera.isOpened() && !isInterruptionRequested())
85  {
86  acquerirImageVideo(camera, frame);
87  if(frame.empty())
88  continue;
89 
90  QPixmap pixmap = QPixmap::fromImage(QImage(frame.data, frame.cols, frame.rows, frame.step, QImage::Format_RGB888).rgbSwapped());
91  emit nouvelleImage(pixmap);
92 
94  setProprietes(camera);
95  }
96 
97  camera.release();
98  qDebug() << Q_FUNC_INFO << "stop" << "numero" << numero << "nomCamera" << nomCamera;
99 
100  emit finVideo();
101 }
int numero
Attribut contenant le numéro de la caméra sélectionnée.
Definition: camera.h:64
void acquerirImageVideo(cv::VideoCapture &camera, cv::Mat &frame)
Fait l&#39;acquisition d&#39;une nouvelle frame.
Definition: camera.cpp:63
void nouvelleImage(QPixmap image)
Envoie un signal lorsque une nouvelle image du flux vidéo est disponible.
QString nomCamera
Attribut contenant le nom de la caméra sélectionnée.
Definition: camera.h:63
void setProprietes(cv::VideoCapture &camera)
Après l&#39;acquisition d&#39;une nouvelle frame modifie les propriété de la caméra si ceux-ci ont été modifi...
Definition: camera.cpp:108
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
void finVideo()
Envoie un signal lorsque la vidéo est interrompu.

◆ setContraste

void Camera::setContraste ( int  contraste)
slot

Modifie le contraste de la caméra.

Paramètres
contraste

Définition à la ligne 259 du fichier camera.cpp.

Références changementProprietes.

260 {
261  this->contraste = double(contraste)/100;
262  changementProprietes = true;
263 }
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
double contraste
Attribut contenant le constraste de la vidéo.
Definition: camera.h:68

◆ setLuminosite

void Camera::setLuminosite ( int  luminosite)
slot

Modifie la luminosite de la caméra.

Paramètres
luminosite

Définition à la ligne 253 du fichier camera.cpp.

Références changementProprietes.

254 {
255  this->luminosite = double(luminosite)/100;
256  changementProprietes = true;
257 }
double luminosite
Attribut contenant la luminosite de la vidéo.
Definition: camera.h:67
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70

◆ setProprietes()

void Camera::setProprietes ( cv::VideoCapture &  camera)

Après l'acquisition d'une nouvelle frame modifie les propriété de la caméra si ceux-ci ont été modifié par l'IHM.

Paramètres
camera

Définition à la ligne 108 du fichier camera.cpp.

Références changementProprietes, contraste, hauteur, largeur, luminosite, et saturation.

Référencé par run().

109 {
110  qDebug() << Q_FUNC_INFO << "largeur" << largeur << "hauteur" << hauteur;
111  camera.set(CV_CAP_PROP_FRAME_WIDTH, largeur);
112  camera.set(CV_CAP_PROP_FRAME_HEIGHT, hauteur);
113 
114  qDebug() << Q_FUNC_INFO << "luminosite" << luminosite << "contraste" << contraste << "saturation" << saturation;
115  camera.set(CV_CAP_PROP_BRIGHTNESS, luminosite);
116  camera.set(CV_CAP_PROP_CONTRAST, contraste);
117  camera.set(CV_CAP_PROP_SATURATION, saturation);
118 
119  changementProprietes = false;
120 }
double luminosite
Attribut contenant la luminosite de la vidéo.
Definition: camera.h:67
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
double contraste
Attribut contenant le constraste de la vidéo.
Definition: camera.h:68
int hauteur
Attribut contenant la hauteur (heigth) en pixels de la vidéo.
Definition: camera.h:66
int largeur
Attribut contenant la largeur (width) en pixels de la vidéo.
Definition: camera.h:65
double saturation
Attribut contenant la saturation de la vidéo.
Definition: camera.h:69

◆ setResolution [1/3]

void Camera::setResolution ( int  largeur,
int  hauteur 
)
slot

Modifie la résolution (largeur x hauteur)

Paramètres
largeur
hauteur

Définition à la ligne 187 du fichier camera.cpp.

Références changementProprietes, choixResolution, hauteur, largeur, et listeResolutionsCamera.

Référencé par Camera().

188 {
189  qDebug() << Q_FUNC_INFO << "largeur" << largeur << "hauteur" << hauteur;
190  QSize size(largeur, hauteur);
191  int i = listeResolutionsCamera.indexOf(size);
192  if (i != -1)
193  {
194  choixResolution = i;
195  this->largeur = largeur;
196  this->hauteur = hauteur;
197  changementProprietes = true;
198  }
199  else
200  {
201  size = listeResolutionsCamera.last();
202  choixResolution = listeResolutionsCamera.indexOf(size);;
203  this->largeur = size.width();
204  this->hauteur = size.height();
205  changementProprietes = true;
206  }
207  qDebug() << Q_FUNC_INFO << "largeur" << this->largeur << "hauteur" << this->hauteur << "choixResolution" << choixResolution;
208 }
QList< QSize > listeResolutionsCamera
Liste contenant les résolutions supportés par la caméra.
Definition: camera.h:71
int choixResolution
Choix dans la liste contenant les résolutions supportés par la caméra.
Definition: camera.h:72
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
int hauteur
Attribut contenant la hauteur (heigth) en pixels de la vidéo.
Definition: camera.h:66
int largeur
Attribut contenant la largeur (width) en pixels de la vidéo.
Definition: camera.h:65

◆ setResolution [2/3]

void Camera::setResolution ( QSize  resolution)
slot

Modifie la résolution (largeur x hauteur)

Paramètres
resolution(QSize)

Définition à la ligne 210 du fichier camera.cpp.

Références changementProprietes, choixResolution, hauteur, largeur, et listeResolutionsCamera.

211 {
212  qDebug() << Q_FUNC_INFO << "largeur" << resolution.width() << "hauteur" << resolution.height();
213  int i = listeResolutionsCamera.indexOf(resolution);
214  if (i != -1)
215  {
216  choixResolution = i;
217  this->largeur = resolution.width();
218  this->hauteur = resolution.height();
219  changementProprietes = true;
220  }
221  else
222  {
223  QSize size = listeResolutionsCamera.last();
224  choixResolution = listeResolutionsCamera.indexOf(size);;
225  this->largeur = size.width();
226  this->hauteur = size.height();
227  changementProprietes = true;
228  }
229  qDebug() << Q_FUNC_INFO << "largeur" << this->largeur << "hauteur" << this->hauteur << "choixResolution" << choixResolution;
230 }
QList< QSize > listeResolutionsCamera
Liste contenant les résolutions supportés par la caméra.
Definition: camera.h:71
int choixResolution
Choix dans la liste contenant les résolutions supportés par la caméra.
Definition: camera.h:72
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
int hauteur
Attribut contenant la hauteur (heigth) en pixels de la vidéo.
Definition: camera.h:66
int largeur
Attribut contenant la largeur (width) en pixels de la vidéo.
Definition: camera.h:65

◆ setResolution [3/3]

void Camera::setResolution ( int  choix)
slot

Modifie la résolution (index dans la liste)

Paramètres
choix

Définition à la ligne 232 du fichier camera.cpp.

Références changementProprietes, choixResolution, hauteur, largeur, et listeResolutionsCamera.

233 {
234  qDebug() << Q_FUNC_INFO << "choix" << choix;
235  if(choix < listeResolutionsCamera.size())
236  {
237  choixResolution = choix;
238  this->largeur = listeResolutionsCamera.at(choix).width();
239  this->hauteur = listeResolutionsCamera.at(choix).height();
240  changementProprietes = true;
241  }
242  else
243  {
244  QSize size = listeResolutionsCamera.last();
245  choixResolution = listeResolutionsCamera.indexOf(size);;
246  this->largeur = size.width();
247  this->hauteur = size.height();
248  changementProprietes = true;
249  }
250  qDebug() << Q_FUNC_INFO << "largeur" << this->largeur << "hauteur" << this->hauteur << "choixResolution" << choixResolution;
251 }
QList< QSize > listeResolutionsCamera
Liste contenant les résolutions supportés par la caméra.
Definition: camera.h:71
int choixResolution
Choix dans la liste contenant les résolutions supportés par la caméra.
Definition: camera.h:72
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
int hauteur
Attribut contenant la hauteur (heigth) en pixels de la vidéo.
Definition: camera.h:66
int largeur
Attribut contenant la largeur (width) en pixels de la vidéo.
Definition: camera.h:65

◆ setSaturation

void Camera::setSaturation ( int  saturation)
slot

Modifie la saturation de la caméra.

Paramètres
saturation

Définition à la ligne 265 du fichier camera.cpp.

Références changementProprietes.

266 {
267  this->saturation = double(saturation)/100;
268  changementProprietes = true;
269 }
bool changementProprietes
Attribut désignant si une propriete de la caméra doit être modifiée.
Definition: camera.h:70
double saturation
Attribut contenant la saturation de la vidéo.
Definition: camera.h:69

Documentation des données membres

◆ changementProprietes

bool Camera::changementProprietes
private

Attribut désignant si une propriete de la caméra doit être modifiée.

Définition à la ligne 70 du fichier camera.h.

Référencé par run(), setContraste(), setLuminosite(), setProprietes(), setResolution(), et setSaturation().

◆ choixResolution

int Camera::choixResolution
private

Choix dans la liste contenant les résolutions supportés par la caméra.

Définition à la ligne 72 du fichier camera.h.

Référencé par getChoixResolution(), getResolution(), et setResolution().

◆ contraste

double Camera::contraste
private

Attribut contenant le constraste de la vidéo.

Définition à la ligne 68 du fichier camera.h.

Référencé par Camera(), et setProprietes().

◆ hauteur

int Camera::hauteur
private

Attribut contenant la hauteur (heigth) en pixels de la vidéo.

Définition à la ligne 66 du fichier camera.h.

Référencé par Camera(), setProprietes(), et setResolution().

◆ largeur

int Camera::largeur
private

Attribut contenant la largeur (width) en pixels de la vidéo.

Définition à la ligne 65 du fichier camera.h.

Référencé par Camera(), setProprietes(), et setResolution().

◆ listeResolutionsCamera

QList<QSize> Camera::listeResolutionsCamera
private

Liste contenant les résolutions supportés par la caméra.

Définition à la ligne 71 du fichier camera.h.

Référencé par getListeResolutionsCamera(), getResolution(), recupererListeResolutionsCamera(), et setResolution().

◆ luminosite

double Camera::luminosite
private

Attribut contenant la luminosite de la vidéo.

Définition à la ligne 67 du fichier camera.h.

Référencé par Camera(), et setProprietes().

◆ nomCamera

QString Camera::nomCamera
private

Attribut contenant le nom de la caméra sélectionnée.

Définition à la ligne 63 du fichier camera.h.

Référencé par Camera(), getNom(), recupererListeResolutionsCamera(), et run().

◆ numero

int Camera::numero
private

Attribut contenant le numéro de la caméra sélectionnée.

Définition à la ligne 64 du fichier camera.h.

Référencé par Camera(), extraireNumero(), et run().

◆ rov

Rov* Camera::rov
private

Objet rov permettant de récuperer les dernière mesures issues des capteurs.

Définition à la ligne 62 du fichier camera.h.

◆ saturation

double Camera::saturation
private

Attribut contenant la saturation de la vidéo.

Définition à la ligne 69 du fichier camera.h.

Référencé par Camera(), et setProprietes().


La documentation de cette classe a été générée à partir des fichiers suivants :