Référence de la classe Millie::TImage< T > (modèle)

#include <Image.hpp>

Dérivée par Millie::ImageGray, et Millie::ImageRGB.

Graphe d'héritage de Millie::TImage< T >:

Inheritance graph
[légende]
Liste de tous les membres

Fonctions membres publiques

 TImage (int largeur, int hauteur, int nbcanaux)
 Constructeur.
 TImage (int nbcanaux)
 Constructeur définissant une image de taille nulle.
TImageoperator= (const TImage< T > &origine)
 opérateur d'assignation
 TImage (const TImage &)
 Constructeur par recopie.
virtual ~TImage ()
getPixel (int x, int y, int numcanal) const
 Permet de recupérer un pixel d'un canal.
void setPixel (int x, int y, int numcanal, T value)
 Permet de d'écrire une valeur dans un pixel d'un canal.
int getNumComponents () const
 Retourne le nombre de canaux.
int getWidth () const
 Retourne la largeur.
int getHeight () const
 Retourne la hauteur.
void resize (int i, int j)
 redéfinie la taille de l'image
void addToPixel (int x, int y, int numcanal, T value)
 ajoute une valeur à un pixel

Attributs protégés

std::vector< TImageMono< T > * > _canaux
int _nbcanaux
int _largeur
int _hauteur

Description détaillée

template<typename T>
class Millie::TImage< T >

Cette classe correspond à la classe de base pour la gestion des images Elle permet de gérer des images de n'importe quel taille, avec n'importe quel nombre de canaux. Les données de couleurs (monochromatique) sont stockées sous forme de type T pour permettre de faire aisément des calculs dessus.

Typiquement, T sera en cas général égale à float. Il est possible, notamment pour gérer les Images dans le domaine de Fourier d'utiliser T à std::complex

Définition à la ligne 55 du fichier Image.hpp.


Documentation des contructeurs et destructeur

template<typename T>
Millie::TImage< T >::TImage ( int  largeur,
int  hauteur,
int  nbcanaux 
)

Constructeur.

Paramètres:
largeur La largeur de l'image
hauteur La hauteur de l'image
nbcanaux Le nombre de canaux
Exceptions:
Millie::IllegalArgument si largeur<0
Millie::IllegalArgument si hauteur<0
Millie::IllegalArgument si nbcanaux<=0
Le nombre de canaux ne peut plus être modifié une fois la construction réalisée. Si la largeur ou la hauteur est nulle, alors la largeur et la hauteur de l'image seront toutes les deux définies à 0.

Chaque élément de l'image est défini à 0.0f

Définition à la ligne 463 du fichier Image.hpp.

template<typename T>
Millie::TImage< T >::TImage ( int  nbcanaux  ) 

Constructeur définissant une image de taille nulle.

Paramètres:
nbcanaux Le nombre de canaux
Exceptions:
Millie::IllegalArgument si nbcanaux<=0

Définition à la ligne 485 du fichier Image.hpp.

template<typename T>
Millie::TImage< T >::TImage ( const TImage< T > &   ) 

Constructeur par recopie.

Recopie toute l'image

Définition à la ligne 590 du fichier Image.hpp.

template<typename T>
Millie::TImage< T >::~TImage (  )  [virtual]

Destructeur

Définition à la ligne 506 du fichier Image.hpp.


Documentation des fonctions membres

template<typename T>
TImage< T > & Millie::TImage< T >::operator= ( const TImage< T > &  origine  ) 

opérateur d'assignation

Exceptions:
Millie::IllegalArgument si l'image d'origine n'a pas le même nombre de canaux que l'image de destination
Toutes les données sont recopiées

Définition à la ligne 576 du fichier Image.hpp.

template<typename T>
T Millie::TImage< T >::getPixel ( int  x,
int  y,
int  numcanal 
) const

Permet de recupérer un pixel d'un canal.

Paramètres:
x Position horizontale souhaitée (commence à 0)
y Position verticale souhaitée (commence à 0)
numcanal Numéro du canal sélectionné (commence à 0)
Renvoie:
Retourne la valeur du pixel au canal sélectionné
Cette fonction ne retourne aucune exception pour des gains de vitesse

Définition à la ligne 524 du fichier Image.hpp.

Référencé par Millie::DFT::backwardCompute(), Millie::CFilter::complexCompute(), Millie::ComplexShockFilter::compute(), Millie::PointOperator::compute(), Millie::PeronaMalikFilter::compute(), Millie::InpaintOperator::compute(), Millie::DiffusionFilter::compute(), Millie::ThresholdLocalComponentsOperator::computeColors(), Millie::ComplexShockFilter::computeComplex(), Millie::SimplePeronaMalikFlow::computeFlow(), Millie::NeighbourPeronaMalikFlow::computeFlow(), Millie::NagaoLocalOperator::computeLocalArea(), Millie::ErodeLocalOperator::computeLocalArea(), Millie::DilateLocalOperator::computeLocalArea(), Millie::MedianLocalFilter::computeLocalArea(), Millie::ConvolveLocalOperator::computeLocalArea(), Millie::InpaintNoiseFilter::computeRoad(), Millie::AlvarezShockFilter::computeWithGauss(), convolvePosition(), Millie::diffDnnC(), Millie::diffDntntC(), diffDx(), Millie::diffDx(), diffDxN(), Millie::diffDxN(), diffDxP(), Millie::diffDxP(), diffDxx(), Millie::diffDxx(), diffDxy(), Millie::diffDxy(), diffDy(), Millie::diffDy(), diffDyN(), Millie::diffDyN(), diffDyP(), Millie::diffDyP(), diffDyy(), Millie::diffDyy(), Millie::BorderExtenderWrap::extend(), Millie::BorderExtenderNull::extend(), Millie::BorderExtenderCopy::extend(), Millie::BorderExtenderConstant::extend(), Millie::DFT::forwardCompute(), Millie::ImageRGB::getBluePixel(), Millie::ImageRGB::getGreenPixel(), Millie::ImageRGB::getRedPixel(), Millie::InpaintOperator::gradient(), Millie::horizontalFlipOperator(), Millie::ModuleImageComplexToVisibleImage(), Millie::rotationOperator(), et Millie::verticalFlipOperator().

template<typename T>
void Millie::TImage< T >::setPixel ( int  x,
int  y,
int  numcanal,
value 
)

Permet de d'écrire une valeur dans un pixel d'un canal.

Paramètres:
x Position horizontale souhaitée (commence à 0)
y Position verticale souhaitée (commence à 0)
numcanal Numéro du canal sélectionné (commence à 0)
value La valeur qui remplace le pixel du canal
Cette fonction ne retourne aucune exception pour des gains de vitesse

Définition à la ligne 534 du fichier Image.hpp.

Référencé par areaOperatorMT(), Millie::DFT::backwardCompute(), Millie::cannyOperator(), Millie::CFilter::complexCompute(), Millie::ComplexShockFilter::compute(), Millie::PointOperator::compute(), Millie::InpaintOperator::compute(), Millie::ComponentsPointOperator::compute(), Millie::AreaOperator::compute(), computePeronaMalikSolverMT(), Millie::InpaintNoiseFilter::computeRoad(), Millie::CMaskFactoryInverseMotionBlur::computeWithoutChecking(), Millie::CMaskFactoryMotionBlur::computeWithoutChecking(), Millie::CMaskFactoryLowPass::computeWithoutChecking(), Millie::CMaskFactoryHighPass::computeWithoutChecking(), Millie::CMaskFactoryGaussianBlur::computeWithoutChecking(), Millie::BorderExtenderWrap::extend(), Millie::BorderExtenderNull::extend(), Millie::BorderExtenderCopy::extend(), Millie::BorderExtenderConstant::extend(), Millie::DFT::forwardCompute(), Millie::horizontalFlipOperator(), Millie::ModuleImageComplexToVisibleImage(), Millie::rotationOperator(), Millie::ImageRGB::setBluePixel(), Millie::ImageRGB::setGreenPixel(), Millie::ImageRGB::setRedPixel(), et Millie::verticalFlipOperator().

template<typename T>
int Millie::TImage< T >::getNumComponents (  )  const

Retourne le nombre de canaux.

Renvoie:
Retourne le nombre de canaux

Définition à la ligne 518 du fichier Image.hpp.

Référencé par areaOperatorMT(), Millie::DFT::backwardCompute(), Millie::cannyOperator(), Millie::CFilter::complexCompute(), Millie::SimpleShockFilter::compute(), Millie::ComplexShockFilter::compute(), Millie::AlvarezShockFilter::compute(), Millie::PointOperator::compute(), Millie::PeronaMalikFilter::compute(), Millie::InpaintOperator::compute(), Millie::InpaintNoiseFilter::compute(), Millie::SpeedDiffusionFilter::compute(), Millie::DiffusionFilter::compute(), Millie::ComponentsPointOperator::compute(), Millie::ComplexOperator::compute(), Millie::AreaOperator::compute(), Millie::MTPeronaMalikFilter::compute(), Millie::MTAreaOperator::compute(), Millie::ThresholdLocalComponentsOperator::computeColors(), Millie::ComplexShockFilter::computeComplex(), computePeronaMalikSolverMT(), Millie::InpaintNoiseFilter::computeRoad(), Millie::AlvarezShockFilter::computeWithGauss(), Millie::CMaskFactoryInverseMotionBlur::computeWithoutChecking(), Millie::CMaskFactoryMotionBlur::computeWithoutChecking(), Millie::CMaskFactoryLowPass::computeWithoutChecking(), Millie::CMaskFactoryHighPass::computeWithoutChecking(), Millie::CMaskFactoryGaussianBlur::computeWithoutChecking(), Millie::AlvarezShockFilter::computeWithoutGauss(), Millie::BorderExtenderWrap::extend(), Millie::BorderExtenderNull::extend(), Millie::BorderExtenderCopy::extend(), Millie::BorderExtenderConstant::extend(), Millie::DFT::forwardCompute(), Millie::horizontalFlipOperator(), Millie::ModuleImageComplexToVisibleImage(), Millie::rotationOperator(), et Millie::verticalFlipOperator().

template<typename T>
int Millie::TImage< T >::getWidth (  )  const

Retourne la largeur.

Renvoie:
la largeur de l'image

Définition à la ligne 555 du fichier Image.hpp.

Référencé par areaOperatorMT(), Millie::DFT::backwardCompute(), Millie::cannyOperator(), Millie::CFilter::complexCompute(), Millie::SimpleShockFilter::compute(), Millie::ComplexShockFilter::compute(), Millie::RGBPointOperator::compute(), Millie::PointOperator::compute(), Millie::PeronaMalikFilter::compute(), Millie::InpaintOperator::compute(), Millie::InpaintNoiseFilter::compute(), Millie::SpeedDiffusionFilter::compute(), Millie::DiffusionFilter::compute(), Millie::ComponentsPointOperator::compute(), Millie::CMaskFactory::compute(), Millie::AreaOperator::compute(), Millie::MTPeronaMalikFilter::compute(), Millie::MTAreaOperator::compute(), Millie::ComplexShockFilter::computeComplex(), Millie::SimplePeronaMalikFlow::computeFlow(), Millie::NeighbourPeronaMalikFlow::computeFlow(), computePeronaMalikSolverMT(), Millie::InpaintNoiseFilter::computeRoad(), Millie::AlvarezShockFilter::computeWithGauss(), Millie::AlvarezShockFilter::computeWithoutGauss(), convolvePosition(), Millie::diffDnnC(), Millie::diffDntntC(), diffDx(), Millie::diffDx(), diffDxN(), Millie::diffDxN(), diffDxx(), Millie::diffDxx(), diffDxy(), Millie::diffDxy(), Millie::BorderExtenderWrap::extend(), Millie::BorderExtenderNull::extend(), Millie::BorderExtenderCopy::extend(), Millie::BorderExtenderConstant::extend(), Millie::DFT::forwardCompute(), Millie::InpaintOperator::gradient(), Millie::horizontalFlipOperator(), Millie::HSLToRGB(), imagegrayToSDL_Surface32(), imageToSDL_Surface32(), Millie::ModuleImageComplexToVisibleImage(), Millie::RGBToHSL(), Millie::RGBToYUV(), Millie::rotationOperator(), Millie::verticalFlipOperator(), et Millie::YUVToRGB().

template<typename T>
int Millie::TImage< T >::getHeight (  )  const

Retourne la hauteur.

Renvoie:
la hauteur de l'image

Définition à la ligne 561 du fichier Image.hpp.

Référencé par areaOperatorMT(), Millie::DFT::backwardCompute(), Millie::cannyOperator(), Millie::CFilter::complexCompute(), Millie::SimpleShockFilter::compute(), Millie::ComplexShockFilter::compute(), Millie::RGBPointOperator::compute(), Millie::PointOperator::compute(), Millie::PeronaMalikFilter::compute(), Millie::InpaintOperator::compute(), Millie::InpaintNoiseFilter::compute(), Millie::SpeedDiffusionFilter::compute(), Millie::DiffusionFilter::compute(), Millie::ComponentsPointOperator::compute(), Millie::CMaskFactory::compute(), Millie::AreaOperator::compute(), Millie::MTPeronaMalikFilter::compute(), Millie::MTAreaOperator::compute(), Millie::ComplexShockFilter::computeComplex(), Millie::SimplePeronaMalikFlow::computeFlow(), Millie::NeighbourPeronaMalikFlow::computeFlow(), computePeronaMalikSolverMT(), Millie::InpaintNoiseFilter::computeRoad(), Millie::AlvarezShockFilter::computeWithGauss(), Millie::AlvarezShockFilter::computeWithoutGauss(), convolvePosition(), Millie::diffDnnC(), Millie::diffDntntC(), diffDxy(), Millie::diffDxy(), diffDy(), Millie::diffDy(), diffDyN(), Millie::diffDyN(), diffDyy(), Millie::diffDyy(), Millie::BorderExtenderWrap::extend(), Millie::BorderExtenderNull::extend(), Millie::BorderExtenderCopy::extend(), Millie::BorderExtenderConstant::extend(), Millie::DFT::forwardCompute(), Millie::InpaintOperator::gradient(), Millie::horizontalFlipOperator(), Millie::HSLToRGB(), imagegrayToSDL_Surface32(), imageToSDL_Surface32(), Millie::ModuleImageComplexToVisibleImage(), Millie::RGBToHSL(), Millie::RGBToYUV(), Millie::rotationOperator(), Millie::verticalFlipOperator(), et Millie::YUVToRGB().

template<typename T>
void Millie::TImage< T >::resize ( int  i,
int  j 
)

redéfinie la taille de l'image

Exceptions:
Millie::IllegalArgument si i<0
Millie::IllegalArgument si j<0
L'ensemble des canaux sont redimensionné

Définition à la ligne 567 du fichier Image.hpp.

Référencé par Millie::DFT::backwardCompute(), Millie::cannyOperator(), Millie::CFilter::complexCompute(), Millie::ComplexShockFilter::compute(), Millie::RGBPointOperator::compute(), Millie::PointOperator::compute(), Millie::ComponentsPointOperator::compute(), Millie::AreaOperator::compute(), Millie::MTPeronaMalikFilter::compute(), Millie::MTAreaOperator::compute(), Millie::CMaskFactoryInverseMotionBlur::computeWithoutChecking(), Millie::CMaskFactoryMotionBlur::computeWithoutChecking(), Millie::CMaskFactoryLowPass::computeWithoutChecking(), Millie::CMaskFactoryHighPass::computeWithoutChecking(), Millie::CMaskFactoryGaussianBlur::computeWithoutChecking(), Millie::BorderExtenderWrap::extend(), Millie::BorderExtenderNull::extend(), Millie::BorderExtenderCopy::extend(), Millie::BorderExtenderConstant::extend(), Millie::DFT::forwardCompute(), Millie::horizontalFlipOperator(), Millie::HSLToRGB(), Millie::ModuleImageComplexToVisibleImage(), Millie::RGBToHSL(), Millie::RGBToYUV(), Millie::rotationOperator(), sdl_SurfaceToImageGray(), sdl_SurfaceToImageRGB(), Millie::verticalFlipOperator(), et Millie::YUVToRGB().

template<typename T>
void Millie::TImage< T >::addToPixel ( int  x,
int  y,
int  numcanal,
value 
)

ajoute une valeur à un pixel

Paramètres:
x la position horizontale
y la position verticale
numcanal le numéro de canal sélectionné
value la valeur à ajouter au pixel
Par exemple, :
         image.setPixel(0,0,0, 45.0f);
         image.addToPixel(0,0,0, 3.0f);
         float f = image.getPixel(0,0,0); //f == 45 + 3 = 48

Définition à la ligne 545 du fichier Image.hpp.


Documentation des données membres

template<typename T>
std::vector<TImageMono<T> * > Millie::TImage< T >::_canaux [protected]

l'ensemble des canaux

Définition à la ligne 61 du fichier Image.hpp.

template<typename T>
int Millie::TImage< T >::_nbcanaux [protected]

Le nombre de canaux

Définition à la ligne 66 du fichier Image.hpp.

template<typename T>
int Millie::TImage< T >::_largeur [protected]

La largeur de l'image

Définition à la ligne 71 du fichier Image.hpp.

template<typename T>
int Millie::TImage< T >::_hauteur [protected]

La hauteur de l'image

Définition à la ligne 76 du fichier Image.hpp.


La documentation de cette classe a été générée à partir du fichier suivant :
Généré le Fri May 18 23:25:03 2007 pour Millie par  doxygen 1.5.1