这篇教程C++ swapTemp函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中swapTemp函数的典型用法代码示例。如果您正苦于以下问题:C++ swapTemp函数的具体用法?C++ swapTemp怎么用?C++ swapTemp使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了swapTemp函数的18个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: ofLogError//--------------------------------------------------------------------------------void ofxCvImage::transform( float angle, float centerX, float centerY, float scaleX, float scaleY, float moveX, float moveY ){ if( !bAllocated ){ ofLogError("ofxCvImage") << "transform(): image not allocated"; return; } float sina = sin(angle * DEG_TO_RAD); float cosa = cos(angle * DEG_TO_RAD); CvMat* transmat = cvCreateMat( 2,3, CV_32F ); cvmSet( transmat, 0,0, scaleX*cosa ); cvmSet( transmat, 0,1, scaleY*sina ); cvmSet( transmat, 0,2, -centerX*scaleX*cosa - centerY*scaleY*sina + moveX + centerX ); cvmSet( transmat, 1,0, -1.0*scaleX*sina ); cvmSet( transmat, 1,1, scaleY*cosa ); cvmSet( transmat, 1,2, -centerY*scaleY*cosa + centerX*scaleX*sina + moveY + centerY); cvWarpAffine( cvImage, cvImageTemp, transmat ); swapTemp(); flagImageChanged(); cvReleaseMat( &transmat );}
开发者ID:4ker,项目名称:openFrameworks,代码行数:26,
示例2: ofLog//--------------------------------------------------------------------------------void ofxCvImage::warpPerspective( const ofPoint& A, const ofPoint& B, const ofPoint& C, const ofPoint& D ) { if( !bAllocated ){ ofLog(OF_LOG_ERROR, "in warpPerspective, need to allocate image first"); return; } // compute matrix for perspectival warping (homography) CvPoint2D32f cvsrc[4]; CvPoint2D32f cvdst[4]; CvMat* translate = cvCreateMat( 3,3, CV_32FC1 ); cvSetZero( translate ); cvdst[0].x = 0; cvdst[0].y = 0; cvdst[1].x = width; cvdst[1].y = 0; cvdst[2].x = width; cvdst[2].y = height; cvdst[3].x = 0; cvdst[3].y = height; cvsrc[0].x = A.x; cvsrc[0].y = A.y; cvsrc[1].x = B.x; cvsrc[1].y = B.y; cvsrc[2].x = C.x; cvsrc[2].y = C.y; cvsrc[3].x = D.x; cvsrc[3].y = D.y; cvWarpPerspectiveQMatrix( cvsrc, cvdst, translate ); // calculate homography cvWarpPerspective( cvImage, cvImageTemp, translate ); swapTemp(); flagImageChanged(); cvReleaseMat( &translate );}
开发者ID:prettyextreme,项目名称:openFrameworks-0.7,代码行数:36,
示例3: cvThreshold//--------------------------------------------------------------------------------void ofxCvGrayscaleImage::threshold( int value, bool invert) { //http://lush.sourceforge.net/lush-manual/01a8321b.html if(invert) cvThreshold( cvImage, cvImageTemp, value, 255, CV_THRESH_BINARY_INV ); else cvThreshold( cvImage, cvImageTemp, value, 255, CV_THRESH_BINARY ); swapTemp(); flagImageChanged();}
开发者ID:madshobye,项目名称:moodCam,代码行数:8,
示例4: ofLogError//--------------------------------------------------------------------------------void ofxCvGrayscaleImage::adaptiveThreshold( int blockSize, int offset, bool invert, bool gauss) { if( !bAllocated ){ ofLogError("ofxCvGrayscaleImage") << "adaptiveThreshold(): image not allocated"; return; } if( blockSize < 2 ) { ofLogNotice("ofxCvGrayscaleImage") << "adaptiveThreshold(): block size " << blockSize << " < minimum, setting to 3"; blockSize = 3; } if( blockSize % 2 == 0 ) { ofLogNotice("ofxCvGrayscaleImage") << "adaptiveThreshold(): block size " << blockSize << " not odd, adding 1"; blockSize++; } int threshold_type = CV_THRESH_BINARY; if(invert) threshold_type = CV_THRESH_BINARY_INV; int adaptive_method = CV_ADAPTIVE_THRESH_MEAN_C; if(gauss) adaptive_method = CV_ADAPTIVE_THRESH_GAUSSIAN_C; cvAdaptiveThreshold( cvImage, cvImageTemp, 255, adaptive_method, threshold_type, blockSize, offset); swapTemp(); flagImageChanged();}
开发者ID:omarieclaire,项目名称:closer,代码行数:28,
示例5: ofLog//--------------------------------------------------------------------------------void ofxCvGrayscaleImage::adaptiveThreshold( int blockSize, int offset, bool invert, bool gauss) { if( !bAllocated ){ ofLog(OF_LOG_ERROR, "in adaptiveThreshold, image is not allocated"); return; } if( blockSize < 2 ) { ofLog(OF_LOG_NOTICE, "in adaptiveThreshold, value < 2, will make it 3"); blockSize = 3; } if( blockSize % 2 == 0 ) { ofLog(OF_LOG_NOTICE, "in adaptiveThreshold, value not odd -> will add 1 to cover your back"); blockSize++; } int threshold_type = CV_THRESH_BINARY; if(invert) threshold_type = CV_THRESH_BINARY_INV; int adaptive_method = CV_ADAPTIVE_THRESH_MEAN_C; if(gauss) adaptive_method = CV_ADAPTIVE_THRESH_GAUSSIAN_C; cvAdaptiveThreshold( cvImage, cvImageTemp, 255, adaptive_method, threshold_type, blockSize, offset); swapTemp(); flagImageChanged();}
开发者ID:3snail,项目名称:openFrameworks,代码行数:28,
示例6: cvCreateMat/*** A +-------------+ B* / /* / /* / /* D +-------------------- + C*/void ofCvImage::warpPerspective( const ofPoint& A, const ofPoint& B, const ofPoint& C, const ofPoint& D ){ // compute matrix for perspectival warping (homography) CvPoint2D32f cvsrc[4]; CvPoint2D32f cvdst[4]; CvMat* translate = cvCreateMat( 3,3, CV_32FC1 ); cvSetZero( translate ); cvsrc[0].x = 0; cvsrc[0].y = 0; cvsrc[1].x = width; cvsrc[1].y = 0; cvsrc[2].x = width; cvsrc[2].y = height; cvsrc[3].x = 0; cvsrc[3].y = height; cvdst[0].x = A.x; cvdst[0].y = A.y; cvdst[1].x = B.x; cvdst[1].y = B.y; cvdst[2].x = C.x; cvdst[2].y = C.y; cvdst[3].x = D.x; cvdst[3].y = D.y; cvWarpPerspectiveQMatrix( cvsrc, cvdst, translate ); // calculate homography cvWarpPerspective( cvImage, cvImageTemp, translate ); swapTemp(); cvReleaseMat( &translate );}
开发者ID:JoshuaBatty,项目名称:CEMA,代码行数:39,
示例7: cvMul//--------------------------------------------------------------------------------void ofxCvFloatImage::operator *= ( ofxCvFloatImage& mom ) { if( mom.width == width && mom.height == height ) { cvMul( cvImage, mom.getCvImage(), cvImageTemp ); swapTemp(); } else { cout << "error in *=, images are different sizes" << endl; }}
开发者ID:heavyside,项目名称:refractiveindex,代码行数:9,
示例8: cvAdd//--------------------------------------------------------------------------------void ofxCvColorImage::operator += ( ofxCvColorImage& mom ) { if( mom.width == width && mom.height == height ) { cvAdd( cvImage, mom.getCvImage(), cvImageTemp ); swapTemp(); } else { cout << "error in +=, images are different sizes" << endl; }}
开发者ID:heavyside,项目名称:refractiveindex,代码行数:9,
示例9: cvMul//--------------------------------------------------------------------------------void CPUImageFilter::amplify ( CPUImageFilter& mom, float level ) { float scalef = level / 128.0f; cvMul( mom.getCvImage(), mom.getCvImage(), cvImageTemp, scalef ); swapTemp(); flagImageChanged();}
开发者ID:jr-weber,项目名称:BigBlobby,代码行数:9,
示例10: ofLogError//--------------------------------------------------------------------------------void ofxCvColorImage::convertHsvToRgb(){ if( !bAllocated ){ ofLogError("ofxCvColorImage") << "convertHsvToRgb(): image not allocated"; return; } cvCvtColor( cvImage, cvImageTemp, CV_HSV2RGB); swapTemp(); flagImageChanged();}
开发者ID:AnnaKolla,项目名称:openFrameworks,代码行数:10,
示例11: ofLogError// Image Filter Operations//--------------------------------------------------------------------------------void ofxCvImage::dilate(int iterations) { if( !bAllocated ){ ofLogError("ofxCvImage") << "dilate(): image not allocated"; return; } cvDilate( cvImage, cvImageTemp, 0, iterations ); swapTemp(); flagImageChanged();}
开发者ID:Taboen,项目名称:of_v0.8.4_vs_release,代码行数:11,
示例12: cvAbsDiff//--------------------------------------------------------------------------------void ofxCvGrayscaleImage::absDiff( ofxCvGrayscaleImage& mom ) { if( matchingROI(getROI(), mom.getROI()) ) { cvAbsDiff( cvImage, mom.getCvImage(), cvImageTemp ); swapTemp(); flagImageChanged(); } else { ofLog(OF_LOG_ERROR, "in *=, ROI mismatch"); }}
开发者ID:madshobye,项目名称:moodCam,代码行数:10,
示例13: cvMul//--------------------------------------------------------------------------------void ofxCvColorImage::operator *= ( ofxCvColorImage& mom ) { float scalef = 1.0f / 255.0f; if( mom.width == width && mom.height == height ) { cvMul( cvImage, mom.getCvImage(), cvImageTemp, scalef ); swapTemp(); } else { cout << "error in *=, images are different sizes" << endl; }}
开发者ID:heavyside,项目名称:refractiveindex,代码行数:10,
示例14: cvMul//--------------------------------------------------------------------------------void setfilter::amplify ( setfilter& mom, float level ) { //-- amplify weak areas --// float scalef = level / 104.0; //128.0f cvMul( mom.getCvImage(), mom.getCvImage(), cvImageTemp, scalef ); swapTemp(); flagImageChanged();}
开发者ID:abdullah38rcc,项目名称:KinectTrackingApplication,代码行数:10,
示例15: ofLog//--------------------------------------------------------------------------------void ofxCvImage::blurGaussian( int value ) { if( value % 2 == 0 ) { ofLog(OF_LOG_NOTICE, "in blurGaussian, value not odd -> will add 1 to cover your back"); value++; } cvSmooth( cvImage, cvImageTemp, CV_GAUSSIAN ,value ); swapTemp(); flagImageChanged();}
开发者ID:mrkhnstn,项目名称:MotorsAndSensors,代码行数:10,
示例16: cvUnDistortOncevoid ofCvImage::undistort( float radialDistX, float radialDistY, float tangentDistX, float tangentDistY, float focalX, float focalY, float centerX, float centerY ){ float camIntrinsics[] = { focalX, 0, centerX, 0, focalY, centerY, 0, 0, 1 }; float distortionCoeffs[] = { radialDistX, radialDistY, tangentDistX, tangentDistY }; cvUnDistortOnce( cvImage, cvImageTemp, camIntrinsics, distortionCoeffs, 1 ); swapTemp();}
开发者ID:JoshuaBatty,项目名称:CEMA,代码行数:10,
示例17: if// Image Transformation Operations////void ofCvImage::mirror( bool bFlipVertically, bool bFlipHorizontally ) { int flipMode = 0; if( bFlipVertically && !bFlipHorizontally ) flipMode = 0; else if( !bFlipVertically && bFlipHorizontally ) flipMode = 1; else if( bFlipVertically && bFlipHorizontally ) flipMode = -1; else return; cvFlip( cvImage, cvImageTemp, flipMode ); swapTemp();}
开发者ID:JoshuaBatty,项目名称:CEMA,代码行数:14,
示例18: cvCreateImage//--------------------------------------------------------------------------------void ofxCvFloatImage::addWeighted( ofxCvGrayscaleImage& mom, float f ) { if( mom.width == width && mom.height == height ) { IplImage* cvTemp = cvCreateImage( cvSize(width,height), IPL_DEPTH_32F, 1 ); cvConvertScale( mom.getCvImage(), cvTemp, 1, 0 ); //cvConvert( mom.getCvImage(), cvImage ); cvAddWeighted( cvTemp, f, cvImage, 1.0f-f,0, cvImageTemp ); swapTemp(); cvReleaseImage( &cvTemp ); } else { cout << "error in addWeighted, images are different sizes" << endl; }}
开发者ID:heavyside,项目名称:refractiveindex,代码行数:14,
注:本文中的swapTemp函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ swapWith函数代码示例 C++ swapBuffers函数代码示例 |