You are on page 1of 8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

Ejemplos Bsicos con OpenCv


TurkosJue,07/29/201018:02

HacetiempoquerahacerunpostconejemplosbsicosconOpenCv,paraqueelprincipiantequerecintomacontacto
conestalibrerapuedateneruntrampolnquelepermitarealizarlasprimeraspracticasenelmundodelprocesamiento
deimgenes
MelleganEmailsamicorreodiciendo,Ernesto,tengomuchasganasdecomenzarconOpenCv,yaqueesunaherramienta
potenteyelProcesamientoDigitaldeImgenesesuncampoprometedoryconmuchofuturo,peronosepordonde
empezar.
Yolesrespondoenviandoalgunosejemplos,alocualmeresponden,Ernestovoshacesestosprogramasporquesabes
muchodeestalibreara.Entoncesyonuevamentelesrespondo!!!!!yavoyahacerunpostconejemplosfcilesynome
llamoErnesto!!!!!dejendellamarmeErnesto!!!porquemedicenErnesto????!!!!
Ejemplo1:
AbrirunafotoconlalibreraOpenCv:
#include<opencv/highgui.h>
intmain(intargc,char**argv)
{
IplImage*img=cvLoadImage(argv[1],CV_LOAD_IMAGE_UNCHANGED)//Cargamoslaimagenquelepasamos
//alprogramacomoargumento
//CV_LOAD_IMAGE_UNCHANGEDnos
//permitecargarlaimagentalcuales
cvNamedWindow("Ejemplo1",CV_WINDOW_AUTOSIZE)//creamosunaventanaconelnombreEjemplo1
//ElparametroCV_WINDOW_AUTOSIZEnospermitequetenga
//eltamaodelaimagenautomaticamente
cvShowImage("Ejemplo1",img)
//mostramoslaimagenenlaventana
//anteriormentecreada
cvWaitKey(0)
//sequedaesperandoaquesepresione
//unatecla
cvReleaseImage(&img)
//seliberaelrecursodememoriadondeestlaimagen
http://www.sebest.com.ar/?q=node/79

1/8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

cvDestroyWindow("Ejemplo1")
//destruimoslaventana
}

Ejemplo2:
Dibujarunrectnguloenunaimagen:
#include<opencv/highgui.h>
intmain(intargc,char**argv)
{
CvPointpt1,pt2
//TipodedatosqueguardanpuntosIplImage*img=cvLoadImage(argv[1],CV_LOAD_IMAGE_UNCHANGED)
//Cargamoslaimagenquelepasamos
//alprogramaporargumento
//CV_LOAD_IMAGE_UNCHANGEDnospermite
//cargarlaimagentalcuales
cvNamedWindow("Ejemplo2",CV_WINDOW_AUTOSIZE)//creamosunaventanaconelnombreEjemplo1
//ElparametroCV_WINDOW_AUTOSIZEnospermitequetenga
//eltamaodelaimagen
http://www.sebest.com.ar/?q=node/79

2/8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

pt1.x=100//coordenadax
pt1.y=10//coordenaday
pt2.x=220
pt2.y=150
cvRectangle(img,pt1,pt2,CV_RGB(0,0,255),3,8,0)//Dibujamoselrectangulo
cvShowImage("Ejemplo2",img)
//mostramoslaimagenenlaventana
//anteriormentecreada
cvWaitKey(0)//sequedaesperandoaquesepresione
//unatecla
cvReleaseImage(&img)//seliberaelrecursodememoriadondeestlaimagen
cvDestroyWindow("Ejemplo2")//destruimoslaventana
}

Ejemplo3:
Crearunaregindeintersymostrarlaenotraventana:

http://www.sebest.com.ar/?q=node/79

3/8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

#include<opencv/highgui.h>
intmain(intargc,char**argv)
{
CvPointpt1,pt2
intwidth
intheight
IplImage*img=cvLoadImage(argv[1],CV_LOAD_IMAGE_UNCHANGED)
//Cargamoslaimagenquelepasamos
cvNamedWindow("Ejemplo3",CV_WINDOW_AUTOSIZE)
//creamosunaventanaconelnombreEjemplo1
cvNamedWindow("ROI",CV_WINDOW_AUTOSIZE)
//creamosunaventanaconelnombreROI
//dondeestarlaregindeinteres
pt1.x=100
pt1.y=10
pt2.x=220
pt2.y=150
width=pt2.xpt1.x
height=pt2.ypt1.y
cvShowImage("Ejemplo3",img)//mostramoslaimagenenlaventana
//anteriormentecreada
cvSetImageROI(img,cvRect(pt1.x,pt1.y,width,height))

cvShowImage("ROI",img)//mostramoslaimagenenlaventana
//anteriormentecreada
cvWaitKey(0)//sequedaesperandoaquesepresione
//unatecla
cvReleaseImage(&img)//seliberaelrecursodememoriadondeestlaimagen
cvDestroyWindow("Ejemplo3")//destruimoslaventana
cvDestroyWindow("ROI")//destruimoslaventana
}

http://www.sebest.com.ar/?q=node/79

4/8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

Ejemplo4:
Cambiareltamaodeunaimagen:

#include<opencv/highgui.h>
#include<opencv/cv.h>
intmain(intargc,char**argv)
{

IplImage*img=cvLoadImage(argv[1],CV_LOAD_IMAGE_UNCHANGED)//Cargamoslaimagenquelepasamos
IplImage*ampl=cvCreateImage(cvSize(500,500),IPL_DEPTH_8U,3)//reservamosmemoriaparalaimagenamplificada
cvNamedWindow("Ejemplo4",CV_WINDOW_AUTOSIZE)//creamosunaventanaconelnombreEjemplo1
cvNamedWindow("AMP",CV_WINDOW_AUTOSIZE)//creamosunaventanaconelnombreAMP
//dondeestarlaimagenampliada
cvResize(img,ampl,CV_INTER_CUBIC)//escaladodelaimagen
//deltamaodelaimagencreada
cvShowImage("Ejemplo4",img)//mostramoslaimagenenlaventana
//anteriormentecreada
http://www.sebest.com.ar/?q=node/79

5/8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

cvShowImage("AMP",ampl)//mostramoslaimagenenlaventana
//anteriormentecreada
cvWaitKey(0)//sequedaesperandoaquesepresione
//unatecla
cvReleaseImage(&img)//seliberaelrecursodememoriadondeestlaimagen
cvDestroyWindow("Ejemplo4")//destruimoslaventana
cvDestroyWindow("AMP")//destruimoslaventana
}

Ejemplo5:
Imprimirtextodentrodeldibujo:

#include<opencv/highgui.h>
intmain(intargc,char**argv)
{
http://www.sebest.com.ar/?q=node/79

6/8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

CvFontfont
CvPointpt1
cvInitFont(&font,CV_FONT_VECTOR0,0.5,0.5,0,2.0,CV_AA)//Inicializamoselcdigofuente

IplImage*img=cvLoadImage(argv[1],CV_LOAD_IMAGE_UNCHANGED)//Cargamoslaimagenquelepasamos
cvNamedWindow("Ejemplo5",CV_WINDOW_AUTOSIZE)//creamosunaventanaconelnombreEjemplo1
pt1.x=220
pt1.y=30
cvPutText(img,"HolaTux",pt1,&font,CV_RGB(255,190,44))
cvShowImage("Ejemplo5",img)//mostramoslaimagenenlaventana
//anteriormentecreada
cvWaitKey(0)
//sequedaesperandoaquesepresione
//unatecla
cvReleaseImage(&img)//seliberaelrecursodememoriadondeestlaimagen
cvDestroyWindow("Ejemplo5")//destruimoslaventana
}

http://www.sebest.com.ar/?q=node/79

7/8

24/2/2016

EjemplosBsicosconOpenCv|Sebest

Bien,conestoyFacedetecpuderealizarelproyectoGNUFALCOasquecompilenestosejemplosbsicosensuscasasy
realicenlaspruebasquequieran.Esperoqueestoinspireamuchosparaempezarconelusodeestamaravillosalibrera.

http://www.sebest.com.ar/?q=node/79

8/8

You might also like