顯示具有 YUV 標籤的文章。 顯示所有文章
顯示具有 YUV 標籤的文章。 顯示所有文章

星期四, 5月 12, 2011

Week 14: 如何在視訊擷取視窗放入圖片?

1. 如何在 RGB video format 的視訊擷取視窗中加入圖片
 a. 宣告一個三維陣列, 用來預先儲存圖片的 RGB 色彩資料。
  unsigned char ucSpottedGecko[125][155][3];
 b. 將圖片的 RGB 色彩資料讀入到三維陣列之中。
 c. 在 預覽回呼函數 中, 將圖片陣列資料放進到視訊擷取視窗的緩衝區記憶體中。

2. 如何在 YUY2 video format 的視訊擷取視窗中加入圖片


範例程式: W14-SP

3. 請同學思考下列問題:

 視訊擷取視窗中的影像物件, 如何修改範例程式,

 a. 讓視訊擷取視窗中的影像物件的背景去掉
 b. 讓影像物件在視訊視窗中移動
 c. 讓包含多張圖片的動畫檔 (GIF) 顯示在視訊擷取視窗中
 

星期二, 5月 05, 2009

Week 13: Viedo Format

上星期期中考第三階段, 有不少同學發現明明同一個程式, 借用別人的 WebCam 來考試, 程式就可以順利執行, 用自己買的 WebCam 來 DEMO 程式, 偏偏就執行不出來。

我們今天就是要針對這個問題討論, 希望同學可以了解不同的攝影機, 傳送視訊資料進電腦的方式也是可以不同的, 一個好的程式設計師應該有能力可以處理不同廠牌的 WebCam, 一樣可以寫出一個好的程式來控制它的。



上面這個 Viedo Format 對話視窗是使用 capDlgVideoFormat(hwndVideo) 這個函式開啟的, 由視訊裝置的硬體商所提供的, 當你灌好驅動程式時, 就可以用 capDlgVideoFormat 這個指令將其呼叫出來, 請同學自己寫程式試試看, 看看自己的 WebCam 提供了哪些視訊格式。

視窗的左邊是選擇 解析度, 也就是攝影機取像的畫面的大小; 中間的 圖素深度(位元)及壓縮 可以選擇用不同的格式來傳送每一個圖素 (pixel) 的色彩值, 及需不需要壓縮; 最右邊的大小(位元組) 會依照前面兩項的選擇, 自動計算出所需要的緩衝記憶體的大小。因此, 解析度越高, 最右邊的位元組大小當然也會跟著提高。

另外, 不同的圖像深度所需要的記憶體大小也會跟著不同。同學可以參考下列網頁, 以便了解不同的格式之間的差異為何。
 
1. http://www.fourcc.org/yuv.php

2. Wikipedia: YUV

今天課堂上第二個討論主軸是介紹去年修課同學的期末作品 Cam Game Show 2008 

( Note )
本週作業, 請同學將自己的期末作業的初步構想貼到 Homework Show of VCGC 部落格中。