從Dev-C++提取視頻、
製造多個畫面,以及讓畫面翻轉製造簡易萬花筒的方式
當然是用程式......
兩個相同畫面並排
四個對稱畫面形成萬花筒模式
====================================================
/名詞解釋\
CvCapture-數據結構體(視頻數據)
Capture意為「捕獲」、「擷取」意思,CvCapture用來保存圖像捕獲所需之訊息。
没有公共接口,它只能被用来作为视频获取函数的一个参数
IPIlmage-圖像結構矩陣(圖像)
是結構體類型,用來保存一禎圖像的信息,也就是一禎圖像所有像素值構成的一個矩陣
cvRetrieveFrame-取回由函数cvGrabFrame抓取的图像
cvCaptureFromFile-把视频文件当成摄像头
cvNamedWindow-创建窗口
cvDestroyWindow-vul-銷毀窗口
====================================================
自我流翻譯
#include <stdio.h>
#include <cv.h>
#include <highgui.h> (大概是三行條件前置
int main() (主要內容
{ (運行範圍
CvCapture *capture; (擷取視頻結構(我猜
IplImage *frame; (定義連續圖像範圍(我猜
(這邊都在處理擷取的視頻(我猜
capture=cvCreateCameraCapture( 0 ); (定義圖像視頻為「從Camera」
cvNamedWindow("Webcam",1); (其名為"Webcam",視窗數2個
cvNamedWindow("Webcam2",1); (複製顯示視窗↓想要幾個貼幾個
cvNamedWindow("Webcam3",1); 名稱不能相同所以進行編號
cvNamedWindow("Webcam4",1);
while(1) ( 同時進行操作
{
frame =
cvQueryFrame(capture); (不知道
cvShowImage("Webcam", frame); (從frame顯示"Webcam"內容
cvFlip(frame, frame, 0); (視窗平行翻轉
cvShowImage("Webcam2", frame); (新增視頻數←
cvFlip(frame, frame, 1); (視窗「再」垂直翻轉(從上一個
cvShowImage("Webcam3",
frame); (新增視頻
cvFlip(frame, frame, 0); (視窗再平行翻轉(從上一個
cvShowImage("Webcam4",
frame); (新增視頻
cvWaitKey(20); (0.02秒擷取一禎
}
cvReleaseCapture(&capture); (不知道,忘了
cvDestroyWindow("Webcam"); (關閉視窗
} (結束一個運行
=================================================
雙視窗為較簡易版本,自己看著辦
心得:雖然一瞬間覺得是不是選錯科系選的太嚴重了
不過現在感覺挺好玩的
希望有朝一日我真的能看懂C++
沒有留言:
張貼留言