2013年2月21日 星期四

HW01



心得:在這過程中遇到超多困難的,不過最後發現都是一些小錯誤,經過別人的指導就恍然大   悟了,這堂課好有趣,唯一可以互動的一堂課。


CvCapture:CvCapture是一個Interface的資料結構,無任何的變數型別存在抓視頻函數的一個參數
IplImage:IplImage是一個資料結構,它裡面有很多的變數,而他的數值大多都被IplImage專用的函數初始化,所以不太需要用到它資料結構裡面的資料,以及直接設定它資料結構的數據。
cvCreateCameraCapture: 初始化從攝像頭中獲取視頻
cvNamedWindow("Webcam",1):叫出一個視窗
frame = cvQueryFrame(capture):把結取到的資訊放入frame

第一個程式碼:
#include <stdio.h>
#include <cv.h>
#include <highgui.h>

int main()
{
    CvCapture *capture; 
    CvCapture *capture1; 
    CvCapture *capture2; 
    CvCapture *capture3;
 
    
    IplImage *frame; 
IplImage *frame1; 
IplImage *frame2; 
IplImage *frame3;

    capture=cvCreateCameraCapture( 0 );
    capture1=cvCreateCameraCapture( 0 );
    capture2=cvCreateCameraCapture( 0 );
    capture3=cvCreateCameraCapture( 0 );
    cvNamedWindow("Webcam",1);
    cvNamedWindow("Webcam1",1);
    cvNamedWindow("Webcam2",1);
    cvNamedWindow("Webcam3",1);
     
    
    while(1)
    {
        frame = cvQueryFrame(capture);
        frame1 = cvQueryFrame(capture1);
        frame2 = cvQueryFrame(capture2);
        frame3 = cvQueryFrame(capture3);
        cvFlip(frame1,frame1, 0);
        cvFlip(frame2,frame2, -1);
         cvFlip(frame3,frame3, 1);
        
 
        cvShowImage("Webcam", frame); 
        cvShowImage("Webcam1", frame1); 
        cvShowImage("Webcam2", frame2); 
        cvShowImage("Webcam3", frame3);
         
        cvWaitKey(20);
    }
    
    cvReleaseCapture(&capture);
    cvDestroyWindow("Webcam");
}

沒有留言:

張貼留言