Langage |
||
Introduction | Installation | Généralités | Interface | Outils | Langage | Développement |
||
Fonctions utilitaires - @IsaacDATA - @IsaacECOL - @IsaacHISTO - @IsaacImage - @IsaacIMG - @IsaacLPIX - @IsaacROI |
||
@IsaacIMG : méthodes publiques
function [obj,varargout] = IsaacIMG(varargin) % @IsaacIMG : constructeur % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % obj = IsaacIMG(img,imgname,objROI,objECOL) % => objet @IsaacIMG initialisé % % obj = IsaacIMG(img,imgname,nbbused,objROI,objECOL) % => objet @IsaacIMG initialisé avec précision du nb de bits utilisés % % [obj,ok] = IsaacIMG(filename) % => objet @IsaacIMG lu dans un fichier % % obj = IsaacIMG(dirname) % => objet @IsaacIMG créé par concaténation des images d'un dossier % avec conversion des images lues en fonction des caractéristiques de la 1ère image % % - img : matrice image % - imgname : nom de l'image (si '' alors nom = 'SansNom') % - nbbused : nombre de bits utilisés (1 à 16/32/64) % dans les limites de sa classe de bits (1/8/16/32/64) % - objROI : objet @IsaacROI ou [] si non définie % - objECOL : objet @IsaacECOL ou [] si non défini % - ok : true si identique au contenu du fichier (sans conversion) % - filename : nom du fichier dans répertoire courant ou nom complet % - dirname : nom du dossier dans répertoire courant ou nom complet
function obj = IsaacIMG_changebits(obj,nbb) % @IsaacIMG : change le nb de bits d'une image % ROI ajustée idem, espace colorimétrique éventuellement supprimé % % - nbb : nombre de bits de l'image (1 à 16/32/64) % => modifie éventuellement la classe de l'image (1/8/16/32/64)
function obj = IsaacIMG_changedyn(obj,newmin,newmax) % @IsaacIMG : ajustement dynamique vectoriel de l'image dans les limites du nb de bits % ROI et espace colorimétrique inchangés % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % - newmin,newmax : valeurs min et max dans [0 1] relatif au nombre de bits
function obj = IsaacIMG_changegamma(obj,gamma) % @IsaacIMG : correction Gamma vectorielle % ROI et espace colorimétrique inchangés % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % - gamma : valeur de gamma
function obj = IsaacIMG_colorconv(obj,objECOL) % @IsaacIMG : conversion de l'image dans un nouvel espace colorimétrique % ROI éventuellemnt modifiée, espace colorimétrique modifié % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % - objECOL : objet @IsaacECOL
function val = IsaacIMG_compare(obj1,obj2,propname) % @IsaacIMG : retourne true si propname identique pour obj1 et obj2, false sinon % % propname comparaison % -------- ----------- % 'Bits' classe de bits et nombre de bits % 'ColorSpace' espace colorimétrique % 'DimXY' dimensions (x,y) % 'DimXYZ' dimensions (x,y,z) % 'DimZ' nombre de plans % 'Img' matrice image % 'ImgName' nom de l'image % 'Roi' région d'intérêt % 'RoiSpa' région d'intérêt spatiale % 'RoiVal' région d'intérêt valeurs % % - obj1 : objet @IsaacIMG % - obj2 : objet @IsaacIMG
function obj = IsaacIMG_concat(obj,obj2) % @IsaacIMG : concatène obj2 avec obj en suivant les caractéristiques de obj % les ROI sont concaténées, les espaces colorimétriques sont supprimés % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % - obj2 : objet @IsaacIMG
function obj = IsaacIMG_crop(obj,rect) % @IsaacIMG : découpe l'image selon rect % ROI écoupée idem, espace colorimétrique inchangé % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % - rect : rectangle (coordonnées MATLAB)
function obj = IsaacIMG_fillmask(obj,obj2,mask) % @IsaacIMG : remplit obj avec avec obj2 selon mask % ROI et espace colorimétrique inchangés % % - obj2 : objet @IsaacIMG % - mask : masque binaire
function obj = IsaacIMG_flip(obj,val) % @IsaacIMG : mirroir horizontal ou vertical % ROI retournée idem, espace colorimétrique inchangé % % - val : orientation du miroir = 'h'/'v'
function val = IsaacIMG_get(obj,propname) % @IsaacIMG : lecture d'une propriété % % propname val % -------- --- % 'BitClass' classe de bits (1/8/16/32/64) % 'ColorSpace' objet @IsaacECOL % 'ColorSpaceName' = IsaacECOL_get(@IsaacECOL,'Name') % 'DimX' dimension horizontale de la matrice image % 'DimY' dimension verticale de la matrice image % 'DimZ' nombre de plans de la matrice image % 'Img' matrice image % 'ImgName' nom de l'image % 'IsColorSpace' espace couleur actif (true|false) % 'IsRoi' ROI spatiale ou valeurs active (true|false) % 'IsRoiSpa' ROI spatiale active (true|false) % 'IsRoiVal' ROI valeurs active (true|false) % 'Min' min image (matrice 1xdimz) % 'Max' max image (matrice 1xdimz) % 'NbBits' nombre de bits par pixel et par plan (1 à 16/32/64) <= classe de bits % 'Roi' objet @IsaacROI % 'RoiEff' effectif (masque ROI spatiale & masque ROI valeurs) % 'RoiMask' masque ROI spatiale & masque ROI valeurs % 'RoiSpaEff' effectif masque ROI spatiale % 'RoiSpaMask' masque ROI spatiale % 'RoiValEff' effectif masque ROI valeurs % 'RoiValMask' masque ROI valeurs % 'ValMax' valeur maximum de l'image = 2^nbb -1 si bitclass <32 ou 1 sinon
function mat = IsaacIMG_img2mat(obj,varargin) % @IsaacIMG : retourne la matrice image de obj % % mat = IsaacIMG_img2mat(obj) % => matrice image nbbits inchangés % % mat = IsaacIMG_img2mat(obj,'BitClass') % => matrice image convertie en type Matlab % (1/2...8/9...16/32/64 -> logical/uint8/uint16/single/double) % % mat = IsaacIMG_img2mat(obj, <type>) % => matrice image convertie en type = 'logical'|'uint8'|'uint16'|'single'|'double'
function ok = IsaacIMG_isequal(obj1,obj2) % @IsaacIMG : retourne true si obj1 et obj2 identiques, false sinon % % - obj1 : objet @IsaacIMG % - obj2 : objet @IsaacIMG
function obj = IsaacIMG_mat2img(obj,mat,varargin) % @IsaacIMG : remplace la matrice image de obj % % obj = IsaacIMG_mat2img(obj,mat) % => conversion si nécessaire de mat pour conservation du nbbits de obj % % obj = IsaacIMG_mat2img(obj,mat,'ChangeBits') % => nbbits de obj forcé dans le type Matlab de mat % (logical/uint8/uint16/single/double -> 1/8/16/32/64)
function obj = IsaacIMG_reorder(obj,plans) % @IsaacIMG : réordonne les plans dans l'ordre de la matrice plans. % ROI réordonnée idem, espace colorimétrique supprimé % % - plans : matrice(1,dimz) des numéros de plans => impose l'ordre des plans
function obj = IsaacIMG_resize(obj,val) % @IsaacIMG : modifie la taille de l'image % ROI modifiée idem, espace colorimétrique inchangé % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % - val : facteur dont la taille sera augmentée (>1) ou reduite (0<val<1)
function obj = IsaacIMG_rotate(obj,val) % @IsaacIMG : rotation de l'image dans le sens inverse des aiguilles d'une montre % la ROI est tournée idem, l'espace colorimétrique reste inchangé % % - val : angle de rotation = 90/180/270
function [ok,obj] = IsaacIMG_saveas(obj,filename) % @IsaacIMG : écriture d'un objet @IsaacIMG dans un fichier avec maj du nom de l'image % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % - filename : nom du fichier dans répertoire courant ou nom complet % - ok : true si sauvegarde à l'identique (sans conversion), false sinon % % Format de fichier fixé en préférences : % - '.bmp' : format BITMAP % 8 bits, pas de multicomposantes, pas de ROI, pas d'espace colorimétrique % - '.tif' : format TIFF non compressé % 8/16 bits, multicomposantes, pas de ROI, pas d'espace colorimétrique % - '.isa' : format ISAAC % 1 à 16/32/64 bits, multicomposantes, ROI, espace colorimétrique
function obj = IsaacIMG_set(obj,varargin) % @IsaacIMG : écriture d'une ou plusieurs propriétés % avertissement au cas où ROI ajustée ou espace colorimétrique supprimé % % (Appeler en TRY-CATCH pour sortie en erreur d'execution) % % obj = IsaacIMG_set(obj,propname1,val1,...,propnameN,valN) % % propname val % -------- --- % 'ColorSpace' objet @IsaacECOL ou [] % 'Img' matrice image % 'ImgName' nom de l'image (si '' alors nom = 'SansNom') % 'NbBitsUsed' nombre de bits utilisés (dans les limites de bitclass si cela est possible) % 'Roi' objet @IsaacROI (optimisé) ou []
function obj = IsaacIMG_subplans(obj,plans) % @IsaacIMG : supprime de l'image les plans désignés par la matrice plans % la ROI est réorganisée idem, l'espace colorimétrique est supprimé % % - plans : matrice(1,n) des numéros de plans à supprimer, 1 <= n < dimz |
||
Introduction | Installation | Généralités | Interface | Outils | Langage | Développement |
||
OpenIsaac © 2007-2018 A. Clément - Université d'Angers |