Search Results

Search found 62 results on 3 pages for 'iplimage'.

Page 2/3 | < Previous Page | 1 2 3  | Next Page >

  • Crop circular or elliptical image from original UIImage

    - by vikas ojha
    I am working on openCV for detecting the face .I want face to get cropped once its detected.Till now I got the face and have marked the rect/ellipse around it on iPhone. Please help me out in cropping the face in circular/elliptical pattern (UIImage *) opencvFaceDetect:(UIImage *)originalImage { cvSetErrMode(CV_ErrModeParent); IplImage *image = [self CreateIplImageFromUIImage:originalImage]; // Scaling down /* Creates IPL image (header and data) ----------------cvCreateImage CVAPI(IplImage*) cvCreateImage( CvSize size, int depth, int channels ); */ IplImage *small_image = cvCreateImage(cvSize(image->width/2,image->height/2), IPL_DEPTH_8U, 3); /*SMOOTHES DOWN THYE GUASSIAN SURFACE--------:cvPyrDown*/ cvPyrDown(image, small_image, CV_GAUSSIAN_5x5); int scale = 2; // Load XML NSString *path = [[NSBundle mainBundle] pathForResource:@"haarcascade_frontalface_default" ofType:@"xml"]; CvHaarClassifierCascade* cascade = (CvHaarClassifierCascade*)cvLoad([path cStringUsingEncoding:NSASCIIStringEncoding], NULL, NULL, NULL); // Check whether the cascade has loaded successfully. Else report and error and quit if( !cascade ) { NSLog(@"ERROR: Could not load classifier cascade\n"); //return; } //Allocate the Memory storage CvMemStorage* storage = cvCreateMemStorage(0); // Clear the memory storage which was used before cvClearMemStorage( storage ); CGColorSpaceRef colorSpace; CGContextRef contextRef; CGRect face_rect; // Find whether the cascade is loaded, to find the faces. If yes, then: if( cascade ) { CvSeq* faces = cvHaarDetectObjects(small_image, cascade, storage, 1.1f, 3, 0, cvSize(20, 20)); cvReleaseImage(&small_image); // Create canvas to show the results CGImageRef imageRef = originalImage.CGImage; colorSpace = CGColorSpaceCreateDeviceRGB(); contextRef = CGBitmapContextCreate(NULL, originalImage.size.width, originalImage.size.height, 8, originalImage.size.width * 4, colorSpace, kCGImageAlphaPremultipliedLast|kCGBitmapByteOrderDefault); //VIKAS CGContextDrawImage(contextRef, CGRectMake(0, 0, originalImage.size.width, originalImage.size.height), imageRef); CGContextSetLineWidth(contextRef, 4); CGContextSetRGBStrokeColor(contextRef, 1.0, 1.0, 1.0, 0.5); // Draw results on the iamge:Draw all components of face in the form of small rectangles // Loop the number of faces found. for(int i = 0; i < faces->total; i++) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; // Calc the rect of faces // Create a new rectangle for drawing the face CvRect cvrect = *(CvRect*)cvGetSeqElem(faces, i); // CGRect face_rect = CGContextConvertRectToDeviceSpace(contextRef, // CGRectMake(cvrect.x * scale, cvrect.y * scale, cvrect.width * scale, cvrect.height * scale)); face_rect = CGContextConvertRectToDeviceSpace(contextRef, CGRectMake(cvrect.x*scale, cvrect.y , cvrect.width*scale , cvrect.height*scale*1.25 )); facedetectapp=(FaceDetectAppDelegate *)[[UIApplication sharedApplication]delegate]; facedetectapp.grabcropcoordrect=face_rect; NSLog(@" FACE off %f %f %f %f",facedetectapp.grabcropcoordrect.origin.x,facedetectapp.grabcropcoordrect.origin.y,facedetectapp.grabcropcoordrect.size.width,facedetectapp.grabcropcoordrect.size.height); CGContextStrokeRect(contextRef, face_rect); //CGContextFillEllipseInRect(contextRef,face_rect); CGContextStrokeEllipseInRect(contextRef,face_rect); [pool release]; } } CGImageRef imageRef = CGImageCreateWithImageInRect([originalImage CGImage],face_rect); UIImage *returnImage = [UIImage imageWithCGImage:imageRef]; CGImageRelease(imageRef); CGContextRelease(contextRef); CGColorSpaceRelease(colorSpace); cvReleaseMemStorage(&storage); cvReleaseHaarClassifierCascade(&cascade); return returnImage; } } Thanks Vikas

    Read the article

  • Image rotate opecv error

    - by avd
    When I use this code to rotate the image, the destination image size remains same and hence the image gets clipped. Please provide me a way/code snippet to resize accordingly (like matlab does in imrotate) so that image does not get clipped and outlier pixels gets filled with all white instead of black. void imrotate(std::string imgPath,std::string angleStr,std::string outPath) { size_t found1,found2; found1=imgPath.find_last_of('/'); found2=imgPath.size()-4; IplImage* src=cvLoadImage(imgPath.c_str(), -1);; IplImage* dst; dst = cvCloneImage( src ); int angle = atoi(angleStr.c_str()); CvMat* rot_mat = cvCreateMat(2,3,CV_32FC1); CvPoint2D32f center = cvPoint2D32f( src->width/2, src->height/2 ); double scale = 1; cv2DRotationMatrix( center, angle, scale, rot_mat ); cvWarpAffine( src, dst, rot_mat); char angStr[4]; sprintf(angStr,"%d",angle); cvSaveImage(string(outPath+imgPath.substr(found1+1,found2-found1-1)+"_"+angStr+".jpg").c_str(),dst); cvReleaseImage(&src); cvReleaseImage(&dst); cvReleaseMat( &rot_mat ); } Original Image: Rotated Image:

    Read the article

  • OpenCV compare two images and get different pixels

    - by Richard Knop
    For some reason the code bellow is not working. I have two 640*480 images which are very similar but not the same (at least few hundred/thousand pixels should be different). This is how I am comparing them and counting different pixels: unsigned char* row; unsigned char* row2; int count = 0; // this happens in a loop // fIplImageHeader is current image // lastFIplImageHeader is image from previous iteration if ( NULL != lastFIplImageHeader->imageData ) { for( int y = 0; y < fIplImageHeader->height; y++ ) { row = &CV_IMAGE_ELEM( fIplImageHeader, unsigned char, y, 0 ); row2 = &CV_IMAGE_ELEM( lastFIplImageHeader, unsigned char, y, 0 ); for( int x = 0; x < fIplImageHeader->width*fIplImageHeader->nChannels; x += fIplImageHeader->nChannels ) { if (row[x] == row2[x]) // the pixel in the first channel (usually G) { count++; } if (row[x+1] == row2[x+1]) // ... second channel (usually B) { count++; } if (row[x+2] == row2[x+2]) // ... third channel (usually R) { count++; } } } } Now at the end I get number 3626 which would seem alright. But, I tried opening one of the images in MS Paint and drawing thick red lines all over it which should increase the number of different pixels substantially. I got the same number again: 3626. Obviously I am doing something wrong here. I am comparing these images in a loop. This line is before the loop: IplImage* lastFIplImageHeader = cvCreateImageHeader(cvSize(640, 480), 8, 3); Then inside the loop I load images like this: IplImage* fIplImageHeader = cvLoadImage( filePath.c_str() ); // here I compare the pixels (the first code snippet) lastFIplImageHeader->imageData = fIplImageHeader->imageData; So lastFIplImageHeader is storing the image from the previous iteration and fIplImageHeader is storing the current image.

    Read the article

  • CBlobResult gives pains.... using Visual C++ 2008... opencv

    - by kaushalyjain
    When I type the following code line.. where img_hsv is a Mat image... IplImage abc=img_hsv; // object that will contain blobs of inputImage CBlobResult blobs; // Extract the blobs using a threshold of 100 in the image blobs = CBlobResult(&abc,NULL,100,true); It displays the following error... error C2661: 'CBlobResult::CBlobResult' : no overloaded function takes 4 arguments.. Any help is welcome...!!

    Read the article

  • C++ DLL creation for C# project - No functions exported

    - by Yeti
    I am working on a project that requires some image processing. The front end of the program is C# (cause the guys thought it is a lot simpler to make the UI in it). However, as the image processing part needs a lot of CPU juice I am making this part in C++. The idea is to link it to the C# project and just call a function from a DLL to make the image processing part and allow to the C# environment to process the data afterwards. Now the only problem is that it seems I am not able to make the DLL. Simply put the compiler refuses to put any function into the DLL that I compile. Because the project requires some development time testing I have created two projects into a C++ solution. One is for the Dll and another console application. The console project holds all the files and I just include the corresponding header into my DLL project file. I thought the compiler should take out the functions that I marked as to be exported and make the DLL from them. Nevertheless this does not happens. Here it is how I defined the function in the header: extern "C" __declspec(dllexport) void _stdcall RobotData(BYTE* buf, int** pToNewBackgroundImage, int* pToBackgroundImage, bool InitFlag, ObjectInformation* robot1, ObjectInformation* robot2, ObjectInformation* robot3, ObjectInformation* robot4, ObjectInformation* puck); extern "C" __declspec(dllexport) CvPoint _stdcall RefPointFinder(IplImage* imgInput, CvRect &imgROI, CvScalar &refHSVColorLow, CvScalar &refHSVColorHi ); Followed by the implementation in the cpp file: extern "C" __declspec(dllexport) CvPoint _stdcall RefPointFinder(IplImage* imgInput, CvRect &imgROI,&refHSVColorLow, CvScalar &refHSVColorHi ) { \\... return cvPoint((int)( M10/M00) + imgROI.x, (int)( M01/M00 ) + imgROI.y) ;} extern "C" __declspec(dllexport) void _stdcall RobotData(BYTE* buf, int** pToNewBackgroundImage, int* pToBackgroundImage, bool InitFlag, ObjectInformation* robot1, ObjectInformation* robot2, ObjectInformation* robot3, ObjectInformation* robot4, ObjectInformation* puck) { \\ ...}; And my main file for the DLL project looks like: #ifdef _MANAGED #pragma managed(push, off) #endif /// <summary> Include files. </summary> #include "..\ImageProcessingDebug\ImageProcessingTest.h" #include "..\ImageProcessingDebug\ImageProcessing.h" BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) { return TRUE; } #ifdef _MANAGED #pragma managed(pop) #endif Needless to say it does not work. A quick look with DLL export viewer 1.36 reveals that no function is inside the library. I don't get it. What I am doing wrong ? As side not I am using the C++ objects (and here it is the C++ DLL part) such as the vector. However, only for internal usage. These will not appear in the headers of either function as you can observe from the previous code snippets. Any ideas? Thx, Bernat

    Read the article

  • Simple OpenCV problem.

    - by iamcreasy
    Why I try to run the following OpenCV program, it shows the following error : ERROR: test_1.exe - Application Error The application failed to initialize properly (0x80000003). Click on OK to terminate the application. CODE: #include "cv.h" #include "highgui.h" int main() { IplImage *img = cvLoadImage("C:\\face.bmp"); cvSetImageROI(img, cvRect(100,100, 100, 100)); cvAddS(img, cvScalar(50), img); cvResetImageROI(img); cvShowImage("Test", img); cvWaitKey(0); return 0; } When i press F5(im using vs2008express), the program encounters a break point...i have attached a picture...dont know, whether, it will help or not. Error Snapshot Link It is not that, only this program is producing this error, but also any kind of image manipulation funciton containing (OpenCV)program is resulting in this sitution. Such as : cvSmooth one last thing, it there any dedicated OpenCV forum or sth like that?

    Read the article

  • OpenCV rotation solution?

    - by sundowatch
    I am using those codes for rotation transforming an image, but it doesn't work. Waht is the problem? IplImage *src = cvLoadImage("image.jpg",1), *dst = cvCloneImage(src); CvMat *rotation_mat = cvCreateMat(2,3,CV_32FC1); CvPoint2D32f center = cvPoint2D32f(src->width/2 ,src->height/2); cvZero(dst); double angle = -50.0, scale = 0.6; cv2DRotationMatrix(center, angle, scale, rotation_mat); cvWarpAffine(src, dst, rotation_mat); cvNamedWindow("rotation"); cvShowImage("rotation",dst); cvWaitKey(0); cvReleaseMat(&rotation_mat); cvReleaseImage(&src); cvReleaseImage(&dst); cvDestroyAllWindows(); return 0;

    Read the article

  • OpenCV - DLL missing, but it's not?

    - by charles-22
    I am trying just a basic program with OpenCV with the following code: #include "cv.h" #include "highgui.h" int main() { IplImage* newImg; newImg = cvLoadImage("~/apple.bmp", 1); cvNamedWindow("Window", 1); cvShowImage("Window", newImg); cvWaitKey(0); cvDestroyWindow("Window"); cvReleaseImage(&newImg); return 0; } When I run this, I get The program can't start because libcxcore200.dll is missing from your computer. Try reinstalling the program to fix this problem. However, I can see this DLL. It exists. I have added the following to the input dependencies for my linker C:\OpenCV2.0\lib\libcv200.dll.a C:\OpenCV2.0\lib\libcvaux200.dll.a C:\OpenCV2.0\lib\libcxcore200.dll.a C:\OpenCV2.0\lib\libhighgui200.dll.a What gives? I'm using visual studio 2008.

    Read the article

  • Save matrix of double values in OpenCV

    - by Christian
    I have an OpenCV matrix of double (CV_32F) values. I'd like to save it to the disk. I know, I could convert it to an 1-Channel 8-bit IplImage and save it. But that way, I loose precision. Is there a way to save it directly in the 32-bit format, without having to convert it first? It also would be nice, if the resulting file would have an image format, so I can view the result as an image.

    Read the article

  • Saving an image in OpenCV

    - by Sujay Ghosh
    I am new to OpenCV, and trying to capture an image, and then save it to a file. I am posting the code for your reference, below. The jpg file is being saved, but it is black. // Capture the Image from the webcam CvCapture *pCapturedImage = cvCreateCameraCapture(0); // Get the frame IplImage *pSaveImg = cvQueryFrame(pCapturedImage); // Save the frame into a file cvSaveImage("test.jpg". ,pSaveImg); // A JPG FILE IS BEING SAVED // OF 6KB , BUT IT IS BLACK All of the functions are succesful. I have tried the above code in both XP and Vista - the result is a black image on both. Please let me know what I am missing out.

    Read the article

  • Opencv: Converting hue image to RGB image

    - by jhaip
    I am trying to show the hue component of the image from my webcam. I have split apart the image into the hue component but I can't figure out how to show the hue component as the pure colors. For example if one pixel of the image was B=189 G=60 R=60 then in HSV, H=0. I don't want the draw image to be the the gray values of hue but the RGB equivalent of the hue or H=0 - B=0 G=0 R=255 IplImage *image, *imageHSV, *imageHue; image = cvQueryFrame(capture); //image from webcam imageHSV = cvCreateImage( cvGetSize(image), IPL_DEPTH_8U, 3 ); imageHue = cvCreateImage( cvGetSize(image), IPL_DEPTH_8U, 1 ); cvCvtColor( image, imageHSV, CV_BGR2HSV ); cvSplit( imageHSV, imageHue, 0, 0, 0 ); I have a feeling there is a simple solution so any help is appreciated.

    Read the article

  • OpenCV to use in memory buffers or file pointers

    - by The Unknown
    The two functions in openCV cvLoadImage and cvSaveImage accept file path's as arguments. For example, when saving a image it's cvSaveImage("/tmp/output.jpg", dstIpl) and it writes on the disk. Is there any way to feed this a buffer already in memory? So instead of a disk write, the output image will be in memory. I would also like to know this for both cvSaveImage and cvLoadImage (read and write to memory buffers). Thanks! My goal is to store the Encoded (jpeg) version of the file in Memory. Same goes to cvLoadImage, I want to load a jpeg that's in memory in to the IplImage format.

    Read the article

  • argv[1] loadImage problem xcode 3.2 and snow leopard

    - by ignacionieto
    Hi Im on mac snow leopard and test these code on xcode3.2 of the Learning OpenCV everything works fine but the image doesnt appear and in the windows. I had try to understand searching for two days what does argv[1] means, but Im still no clear. Im a newbie en C++. I had the image in the same directory where the main.cpp is #include <OpenCV/cv.h> #include <OpenCV/highgui.h> int main(int argc, char** argv) { IplImage* interest_img; CvRect interest_rect; if( argc == 7 && ((interest_img= cvLoadImage( argv[1],1) ) != 0 )) { A more easy example is here: http://books.google.cl/books?id=seAgiOfu2EIC&pg=PA17&lpg=PA17&dq=cvLoadImage%28argv[1]&source=bl&ots=hRJ5bhkAOf&sig=gyYAqZBnS6lCCXJz9Fz7vzOsF-U&hl=es&ei=dvdvS-fWG8eWtgePy_WCBg&sa=X&oi=book_result&ct=result&resnum=6&ved=0CBwQ6AEwBTgK#v=onepage&q=cvLoadImage%28argv[1]&f=false both I have test it but they dont work. Please help me

    Read the article

  • translating ROI code in c#

    - by sayyad
    Hi, I am trying to translate this code in c# using emgucv. I have some questions.Could yome body help me line by line. cvSetImageROI(img1, cvRect(10, 15, 150, 250)); I have four points (PoinstF). Should I calculate rectangle or there is some way with four points. CvInvoke.cvSetImageROI(img1, ------------(how can I declare cvReCt(10, 15, 150, 250)); //c# IplImage *img2 = cvCreateImage(cvGetSize(img1), img1-depth, img1-nChannels); //c# Image img2; // i supose i needn't to allocate memory.//c# cvCopy(img1, img2, NULL); CvInvoke.cvCopy(img1, img2, IntPtr.Zero);//c# cvResetImageROI(img1); shoul i ResetImageROI.//c# thanx and best regards,

    Read the article

  • Working with image pixels

    - by Mario
    Hey Guys, I'm trying to do a project here, which I want to implement the following: I have a rotation matrix and translation matrix are estimated, now I have an image in a certain location and I want to multiply all the image pixel by the rotation matrix and add the results to the translation matrix..... My issue is how to work with the pixels? I mean how to extract the pixel from the image in order to do the operation that I mentioned above? it's ok to give me the suggestion in either opencv or c++ *I need to know how to do this operation new_p(x,y) = old(x,y)* rotation_matrix + translation_matrix. I'm defining the image like that IplImage(), 3 channel image. For now I need to do the geometrical transformation* Thank you.

    Read the article

  • Image ransfer using hessian protocol from client's folder to tomcat server

    - by ?? ?
    My goal is to upload a image(.jpg or .png)from client's folder to tomcat6 server through hessian protocol. And do image processing using opencv on server, then return the image back to client. Question1. Is the following transfering steps correct? put a test.jpg image on client's folder -- convert the test.jpg in client.java(main.java) class to BufferedImage -- convert the BufferedImage to mat or Iplimage in server for using openCV.I have set a hello world sample from Simple Messaging Example using Hessian , and searched from Hessian with large binary data and other websites, but still dont know how to use it! Question2. Is there a related JAVA sample code? Thank you very much. Btw, I am using ubuntu12+netbeans7.2

    Read the article

  • read successive frames OpenCV using cvQueryframe

    - by AtharvaI
    Hi all I have a basic question in regards to cvQueryFrame() in OpenCV. I have the following code: IplImage *frame1,*frame2; frame1 = cvQueryFrame(capture); frame2 = cvQueryFrame(capture); Now my question is: if frame1 is a pointer to the first frame, is frame2 a pointer to the 2nd frame? So will the two cvQueryFrame() calls read successive frames? I thought I'd check myself first but the pointers frame1,frame2 seem to have the same hex value. :s I just need to capture two frames at a time and then need to process them. Thanks in advance

    Read the article

  • openCV center of image rotation in C

    - by user1477955
    I want to rotate 90 degrees counterclockwise, but it seems the rotation point is wrong. How do I find the rotation center of the source image? img=cvLoadImage(argv[1],-1); height = img->height; width = img->width; step = img->widthStep; channels = img->nChannels; data = (uchar *)img->imageData; IplImage *rotatedImg = cvCreateImage(cvSize(height,width), IPL_DEPTH_8U,img->nChannels); CvPoint2D32f center; center.x = width/2; center.y = height/2; CvMat *mapMatrix = cvCreateMat( 2, 3, CV_32FC1 ); cv2DRotationMatrix(center, 90, 1.0, mapMatrix); cvWarpAffine(img, rotatedImg, mapMatrix, CV_INTER_LINEAR + CV_WARP_FILL_OUTLIERS, cvScalarAll(0)); cvShowImage("My image", rotatedImg );

    Read the article

  • Stack around variable corrupted when using cvBlobsLib (OpenCV)

    - by jpromvi
    I am trying to do simple image processing with OpenCV and the cvBlobsLib in Visual C++ 2008, and I get an error message when I try to create a CBlobResult object IplImage* original = cvLoadImage("pic6.png",0); cvThreshold(original, original, 100, 255, CV_THRESH_BINARY); CBlobResult blobs = CBlobResult(original, NULL, 255); The message is the following: Run-Time Check Failure #2 - Stack around the variable blobs was corrupted Why does this happen? How should I create this object? Thank you very much for your help.

    Read the article

  • cvRetrieveFrame crahses

    - by pooh_bear
    I'm trying to write a simple openCV code that create a capture and retrieves the first frame from it. **CvCapture *m_pCapfile = cvCreateFileCapture(m_aviFileName.c_str()); if (m_pCapfile) m_frames = cvRound(cvGetCaptureProperty(m_pCapfile, CV_CAP_PROP_FRAME_COUNT)); cvSetCaptureProperty(m_pCapfile, CV_CAP_PROP_POS_FRAMES, 0); int ret = cvGrabFrame( m_pCapfile); IplImage *cap = cvRetrieveFrame( m_pCapfile);** In m_frames is have 153, which is the correct number of frames as far as I know. cvGrabFrame returns 1 to ret however cvRetrieveFrame crashes. I tries using cvCaptureFromFile and cvCaptureFromAVI instead of cvCreateFileCapture In both cases cvRetrieveFrame method crashes. Any ideas? Thanks

    Read the article

  • the problem of "cvEigenVV"

    - by gg-anny
    Hi!When I compile the program,VC2005 always tell :"error C2198: 'cvEigenVV' : too few arguments for call". Part of the code below: void draw_oxfd_feature( IplImage* img, struct feature* feat, CvScalar color ) { double m[4] = { feat-a, feat-b, feat-b, feat-c }; double v[4] = { 0 }; double e[2] = { 0 }; CvMat M; CvMat V; CvMat E; double alpha, l1, l2; /* compute axes and orientation of ellipse surrounding affine region */ cvInitMatHeader( &M, 2, 2, CV_64FC1, m, CV_AUTOSTEP ); cvInitMatHeader( &V, 2, 2, CV_64FC1, v, CV_AUTOSTEP ); cvInitMatHeader( &E, 2, 1, CV_64FC1, e, CV_AUTOSTEP ); cvEigenVV( &M, &V, &E, DBL_EPSILON ); l1 = 1 / sqrt( e[1] ); l2 = 1 / sqrt( e[0] ); alpha = -atan2( v[1], v[0] ); alpha *= 180 / CV_PI; cvEllipse( img, cvPoint( feat-x, feat-y ), cvSize( l2, l1 ), alpha, 0, 360, CV_RGB(0,0,0), 3, 8, 0 ); cvEllipse( img, cvPoint( feat-x, feat-y ), cvSize( l2, l1 ), alpha, 0, 360, color, 1, 8, 0 ); cvLine( img, cvPoint( feat-x+2, feat-y ), cvPoint( feat-x-2, feat-y ), color, 1, 8, 0 ); cvLine( img, cvPoint( feat-x, feat-y+2 ), cvPoint( feat-x, feat-y-2 ), color, 1, 8, 0 ); // cvCircle(img,cvPoint(cvRound( feat-x ),cvRound( feat-y )),2, color, CV_FILLED, 8, 0); cvCircle(img,cvPoint( cvRound( feat-x ), cvRound( feat-y )), 2,CV_RGB(0,255,0), CV_FILLED, 8, 0 ); } How to solve the problem?Thank you!

    Read the article

  • displaying video from webcam in OpenCV

    - by Adi
    hi all, I have installed VS2008 and am able to run the demo codes "camshiftdemo and lkdemo " which comes in the opencv library. With this done, now I am trying to run some simple codes from the internet to get acquainted with the OpenCV. I am just trying to display video from webcam and I am getting the following error.. Error I am getting is : Unhandled exception at 0x5e7e3d10 (highgui200.dll) in opencv.exe: 0xC0000005: Access violation reading location 0x719b3856. The code I am trying to run is : include include void main(int argc,char argv[]) { int c; IplImage color_img; CvCapture* cv_cap = cvCaptureFromCAM(-1); // -1 = only one cam or doesn't matter cvNamedWindow("Video",1); // create window for(;;) { color_img = cvQueryFrame(cv_cap); // get frame if(color_img != 0) cvShowImage("Video", color_img); // show frame c = cvWaitKey(10); // wait 10 ms or for key stroke if(c == 27) break; // if ESC, break and quit } /* clean up */ cvReleaseCapture( &cv_cap ); cvDestroyWindow("Video"); } Any help in this will be greatly appreciated. Thanks aditya

    Read the article

  • Trying to write a video file using OpenCV

    - by Ted pottel
    Hi , I’m trying to use OpenCV to write a video file. I have a simple program that loads frames from a video file then accepts to save them At first the cvCreateVideoWrite always return NULL. I got a answer from your group saying it returns separate images and to try to change the file name to test0001.png, this worked. But now the cvWriteFrame function always fails, the code is CString path; path="d:\\mice\\Test_Day26_2.avi"; CvCapture* capture = cvCaptureFromAVI(path); IplImage* img = 0; CvVideoWriter *writer = 0; int isColor = 1; int fps = 25; // or 30 int frameW = 640; // 744 for firewire cameras int frameH = 480; // 480 for firewire cameras writer=cvCreateVideoWriter("d:\\mice\\test0001.png",CV_FOURCC('P','I','M','1'), fps,cvSize(frameW,frameH),isColor); if (writer==0) MessageBox("could not open writter"); int nFrames = 50; for(int i=0;i<nFrames;i++){ if (!cvGrabFrame(capture)) MessageBox("could not grab frame"); img=cvRetrieveFrame(capture); // retrieve the captured frame if (img==0) MessageBox("could not retrive data"); if (!cvWriteFrame(writer,img) ) MessageBox("could not write frame"); } cvReleaseVideoWriter(&writer); Any help would be GREAT - Ted

    Read the article

  • OpenCV and iPhone

    - by gn-mithun
    Hello, I am writing an application to create a movie file from a bunch of images on an iPhone. I am using OpenCv. I downloaded openCv static libraries for arm(iPhones native instruction architecture) and the libraries were generated just fine. There were no problems linking to them libraries. As a first step, i was trying to create a .avi file using one image, to see if it works. But cvCreateVideoWriter always returns me a NULL value. I did some searchin and i believe its due to the codec not being present. I am trying this on the iPhone simulator. this is what i do... (void)viewDidLoad { [super viewDidLoad]; UIImage *anImage = [UIImage imageNamed:@"1.jpg"]; IplImage *img_color = [self CreateIplImageFromUIImage:anImage]; //The image gets created just fine CvVideoWriter *writer = cvCreateVideoWriter("out.avi",CV_FOURCC('P','I','M','1'), 25,cvSize(320,480),1); //writer is always null int result = cvWriteFrame(writer, img_color); NSLog(@"\n%d",result); //hence this is also 0 all the time cvReleaseVideoWriter(&writer); } I am not sure about the the second parameter. What sort of codec or what exactly it does... I am a n00B in this. Any suggestions?

    Read the article

< Previous Page | 1 2 3  | Next Page >