+++ /dev/null
-IPLIMAGE src;\r
-IPLIMAGE image;\r
-IPLIMAGE dest;\r
-//the address of variable which receives trackbar position update \r
-int pos[1]={0};\r
-\r
-src=load_iplimage("expo0001.bmp");\r
-image=cvCloneImage(src);\r
-dest=cvCloneImage(src);\r
-\r
-//create windows for output images\r
-named_window("Opening&Closing window",0);\r
-named_window("Erosion&Dilation window",0);\r
-\r
-show_iplimage("Opening&Closing window",src);\r
-show_iplimage("Erosion&Dilation window",src);\r
-\r
-\r
-//callback function for slider , implements opening \r
-void Opening(int id) \r
- {\r
- cvErode(src,image,NULL,pos[0]);\r
- cvDilate(image,dest,NULL,pos[0]);\r
- show_iplimage("Opening&Closing window",dest);\r
- \r
- } \r
-//callback function for slider , implements closing \r
-\r
-void Closing(int id) \r
- {\r
- cvDilate(src,image,NULL,pos[0]);\r
- cvErode(image,dest,NULL,pos[0]);\r
- show_iplimage("Opening&Closing window",dest);\r
- \r
- } \r
-//callback function for slider , implements erosion \r
-\r
-void Erosion(int id) \r
- {\r
- \r
- cvErode(src,dest,NULL,pos[0]);\r
- show_iplimage("Erosion&Dilation window",dest);\r
- \r
- } \r
-//callback function for slider , implements dilation\r
-\r
-void Dilation(int id) \r
- {\r
- \r
- cvDilate(src,dest,NULL,pos[0]);\r
- show_iplimage("Erosion&Dilation window",dest);\r
- \r
- } \r
-\r
- \r
-\r
- \r
- create_slider("slider1","Opening&Closing window",&pos,10,Opening);\r
- create_slider("slider4","Opening&Closing window",&pos,10,Closing);\r
- create_slider("slider2","Erosion&Dilation window",&pos,10,Dilation);\r
- create_slider("slider3","Erosion&Dilation window",&pos,10,Erosion);\r
-\r
- wait_key(0);\r
- //releases header an dimage data \r
- cvReleaseImage(&src);\r
- cvReleaseImage(&image);\r
- cvReleaseImage(&dest);\r
- //destroys windows \r
- destroy_window("Opening&Closing window"); \r
- destroy_window("Erosion&Dilation window"); \r
- \r
-\r