aboutsummaryrefslogtreecommitdiff
path: root/pix_opencv_distrans.cc
diff options
context:
space:
mode:
authorN.N. <sevyves@users.sourceforge.net>2010-08-03 17:10:32 +0000
committerN.N. <sevyves@users.sourceforge.net>2010-08-03 17:10:32 +0000
commit15ec89b8acb5e2fb3f41b45cc37fd3c585bdb38b (patch)
tree1601a4e3e6e4cc36d761a3ea6502c1876bbc3ee6 /pix_opencv_distrans.cc
parent5dc1d97357e3519da6c595c21682aa00a58624ff (diff)
a few fixes for opencv 2.0
svn path=/trunk/externals/pix_opencv/; revision=13743
Diffstat (limited to 'pix_opencv_distrans.cc')
-rw-r--r--pix_opencv_distrans.cc41
1 files changed, 16 insertions, 25 deletions
diff --git a/pix_opencv_distrans.cc b/pix_opencv_distrans.cc
index 58e63fd..a87485d 100644
--- a/pix_opencv_distrans.cc
+++ b/pix_opencv_distrans.cc
@@ -43,7 +43,7 @@ pix_opencv_distrans :: pix_opencv_distrans()
dist8u2 = NULL;
dist8u = NULL;
dist32s = NULL;
- src = NULL;
+ rgb = NULL;
gray = NULL;
edge = NULL;
labels = NULL;
@@ -61,7 +61,7 @@ pix_opencv_distrans :: pix_opencv_distrans()
pix_opencv_distrans :: ~pix_opencv_distrans()
{
//Destroy cv_images to clean memory
- cvReleaseImage( &src );
+ cvReleaseImage( &rgb );
cvReleaseImage( &gray );
cvReleaseImage( &edge );
cvReleaseImage( &dist );
@@ -102,7 +102,7 @@ void pix_opencv_distrans :: processRGBAImage(imageStruct &image)
this->comp_ysize = image.ysize;
//Destroy cv_images to clean memory
- cvReleaseImage( &src );
+ cvReleaseImage( &rgb );
cvReleaseImage( &gray );
cvReleaseImage( &edge );
cvReleaseImage( &dist );
@@ -115,8 +115,8 @@ void pix_opencv_distrans :: processRGBAImage(imageStruct &image)
cvReleaseImage( &alpha );
//Create cv_images
- src = cvCreateImage(cvSize(image.xsize,image.ysize), IPL_DEPTH_8U, 3);
- gray = cvCreateImage(cvSize(src->width,src->height), IPL_DEPTH_8U, 1);
+ rgb = cvCreateImage(cvSize(image.xsize,image.ysize), IPL_DEPTH_8U, 3);
+ gray = cvCreateImage(cvSize(rgb->width,rgb->height), IPL_DEPTH_8U, 1);
dist = cvCreateImage( cvGetSize(gray), IPL_DEPTH_32F, 1 );
dist8u1 = cvCloneImage( gray );
dist8u2 = cvCloneImage( gray );
@@ -127,16 +127,10 @@ void pix_opencv_distrans :: processRGBAImage(imageStruct &image)
rgba = cvCreateImage( cvSize(image.xsize, image.ysize), 8, 4 );
alpha = cvCreateImage( cvSize(image.xsize, image.ysize), 8, 1 );
}
- // FEM UNA COPIA DEL PACKET A image->imageData ... http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/opencv-intro.html aqui veiem la estructura de IplImage
memcpy( rgba->imageData, image.data, image.xsize*image.ysize*4 );
- CvArr* in[] = { rgba };
- CvArr* out[] = { src, alpha };
- int from_to[] = { 0, 0, 1, 1, 2, 2, 3, 3 };
- //cvSet( rgba, cvScalar(1,2,3,4) );
- cvMixChannels( (const CvArr**)in, 1, out, 2, from_to, 4 );
-
- cvCvtColor(src, gray, CV_BGR2GRAY);
+ cvCvtColor(rgba, rgb, CV_RGBA2RGB);
+ cvCvtColor(rgb, gray, CV_RGB2GRAY);
cvThreshold( gray, edge, (float)edge_thresh, (float)edge_thresh, CV_THRESH_BINARY );
@@ -182,10 +176,7 @@ void pix_opencv_distrans :: processRGBAImage(imageStruct &image)
}
- CvArr* src[] = { dist8u, alpha };
- CvArr* dst[] = { rgba };
- cvMixChannels( (const CvArr**)src, 2, (CvArr**)dst, 1, from_to, 4 );
- //cvShowImage(wndname, cedge);
+ cvCvtColor(dist8u, rgba, CV_RGB2RGBA);
memcpy( image.data, rgba->imageData, image.xsize*image.ysize*4 );
}
@@ -213,7 +204,7 @@ void pix_opencv_distrans :: processRGBImage(imageStruct &image)
this->comp_ysize = image.ysize;
//Destroy cv_images to clean memory
- cvReleaseImage( &src );
+ cvReleaseImage( &rgb );
cvReleaseImage( &gray );
cvReleaseImage( &edge );
cvReleaseImage( &dist );
@@ -226,8 +217,8 @@ void pix_opencv_distrans :: processRGBImage(imageStruct &image)
cvReleaseImage( &alpha );
//Create cv_images
- src = cvCreateImage(cvSize(image.xsize,image.ysize), IPL_DEPTH_8U, 3);
- gray = cvCreateImage(cvSize(src->width,src->height), IPL_DEPTH_8U, 1);
+ rgb = cvCreateImage(cvSize(image.xsize,image.ysize), IPL_DEPTH_8U, 3);
+ gray = cvCreateImage(cvSize(rgb->width,rgb->height), IPL_DEPTH_8U, 1);
dist = cvCreateImage( cvGetSize(gray), IPL_DEPTH_32F, 1 );
dist8u1 = cvCloneImage( gray );
dist8u2 = cvCloneImage( gray );
@@ -239,9 +230,9 @@ void pix_opencv_distrans :: processRGBImage(imageStruct &image)
alpha = cvCreateImage( cvSize(image.xsize, image.ysize), 8, 1 );
}
// FEM UNA COPIA DEL PACKET A image->imageData ... http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/opencv-intro.html aqui veiem la estructura de IplImage
- memcpy( src->imageData, image.data, image.xsize*image.ysize*3 );
+ memcpy( rgb->imageData, image.data, image.xsize*image.ysize*3 );
- cvCvtColor(src, gray, CV_BGR2GRAY);
+ cvCvtColor(rgb, gray, CV_BGR2GRAY);
cvThreshold( gray, edge, (float)edge_thresh, (float)edge_thresh, CV_THRESH_BINARY );
@@ -319,7 +310,7 @@ void pix_opencv_distrans :: processGrayImage(imageStruct &image)
this->comp_ysize = image.ysize;
//Destroy cv_images to clean memory
- cvReleaseImage( &src );
+ cvReleaseImage( &rgb );
cvReleaseImage( &gray );
cvReleaseImage( &edge );
cvReleaseImage( &dist );
@@ -332,8 +323,8 @@ void pix_opencv_distrans :: processGrayImage(imageStruct &image)
cvReleaseImage( &alpha );
//Create cv_images
- src = cvCreateImage(cvSize(image.xsize,image.ysize), IPL_DEPTH_8U, 3);
- gray = cvCreateImage(cvSize(src->width,src->height), IPL_DEPTH_8U, 1);
+ rgb = cvCreateImage(cvSize(image.xsize,image.ysize), IPL_DEPTH_8U, 3);
+ gray = cvCreateImage(cvSize(rgb->width,rgb->height), IPL_DEPTH_8U, 1);
dist = cvCreateImage( cvGetSize(gray), IPL_DEPTH_32F, 1 );
dist8u1 = cvCloneImage( gray );
dist8u2 = cvCloneImage( gray );