Just My Life & My Work

Posts tagged ‘teach’

[OpenGL] 子視窗 (Subwindow)

之前玩OpenGL只會使用一個視窗,然而有時候想做子母畫面,那要怎麼寫呢?其實十分簡單,一旦把子視窗創造於母視窗之上後,就可以像單一視窗那樣操作!

(繼續閱讀…)

[OpenCV] 轉換色彩空間 (Transform Color Space)

一般日常所見的影像都是RGB色彩,然而想要分析影像有時需要轉換色彩空間,如HSVYUV,原來OpenCV可以幫我做到!

(繼續閱讀…)

[OpenCV] 感興趣區域 (Region of Interest)

辨識車輛顏色前,我想要從大張影像中找到車子,而車子的圖像就是我要的感興趣區域,一旦找到,就可以分析該區域的色彩,進而判斷為什麼顏色。

(繼續閱讀…)

[OpenCV] 轉換影像為灰階 (Transform Image to Gray Level)

從前有空沒事就在用影像處理軟體,很方便且輕易地按了「灰階」這個功能,軟體馬上就將影像轉換為灰階,因此會直覺以為轉換過程很簡單,直至今日,自己用OpenCV來實驗,才發覺有些細節,跟我們人的眼睛有關係。

廣告

剛好也可以來練習如何取得影像中像素RGB的值,知道這一點之後,即可拿RGB的值來做更進一步的運算,像是調整亮度、對比、r值、色相、彩度、明亮度,甚至透過統計來風格化。

很直覺地猜想,彩色轉灰接的過程應該是灰階=(紅+綠+藍)/3,其實不然。實際上人眼對綠色的亮度感最大,而對藍色最小,於是Gray = 0.299 * Red + 0.587 * Green + 0.114 * Blue才能得到比較適合人類眼睛的灰階影像,久而久之已成為影像處理界所用來彩色轉灰階的標準。

廣告
(繼續閱讀…)

[C++] 批次開檔~同名格式 (Open File whth similar name format (Batch))

對於要處理同樣的資料,我喜歡批次處理,這樣子可以節省不少時間,而這些資料可能分散在許多檔案之中,那麼批次開檔(無論輸入或輸出)就顯得相當重要!

(繼續閱讀…)

[C++] 開啟檔案和讀取檔案 (Open File and Read File)

接續剛才寫的開啟檔案和寫入檔案,這次換寫開啟檔案讀取檔案的程式,依然很簡單,只是稍有差別。

(繼續閱讀…)

[C++] 開啟檔案和寫入檔案 (Open File and Write File)

現在寫大一點的程式,輸入或輸出資料量大的時候,我們不太想花時間去處理IO,尤其是在批次處理的情況下,不斷地重複同樣的動作,不但浪費時間又會很無聊,於是把想要輸入的資料先存入檔案,再由程式來讀取檔案,接著若有輸出的資料,則程式開啟檔案寫入檔案,待所有工作執行完畢,再去檔案查詢結果。

廣告

現在年紀大了,一陣子沒有寫開檔讀檔的程式,就會忘了怎麼寫@@;於是乎先寫起來,等哪天要用卻忘記的時候,再來這邊搜尋:)

(繼續閱讀…)

SIFT 實驗 (SIFT Experiment)

SIFT的概念可以參考我前一篇文章SIFT (Scale-Invariant Feature Transform)

若只有文字敘述可能會很抽象和模糊,所以再一次使用SIFT來做實驗,真正體會SIFT所帶來的效果!

(繼續閱讀…)

SIFT (Scale-Invariant Feature Transform)

多媒體的課一直提到SIFT技術,然而直到今天我才真正弄懂,雖然還是對數學式子不太瞭解,但至少知道它在做什麼!SIFT (Scale-Invariant Feature Transform)是一種電腦視覺的演算法用來偵測描述影像中的局部性特徵,它在空間尺度中尋找極值點,並提取出其位置、尺度、旋轉不變數。若找兩影像的關鍵點特徵來比對,可發現越相似的影像,關鍵點特徵符合數越多,藉此來判斷兩影像的相似度。

(繼續閱讀…)

[OpenCV] 人臉偵測 (Face Detection)

最先看到有人臉偵測的設備是什麼呢?當然是非「數位相機」莫屬啦~只要real-time找到人臉,接著加以追蹤,直到按下快門前,焦點都會在這個人臉上頭,如此一來就不太會發生失焦的狀況。

多媒體設計課程老師介紹一篇paper「Robust Real-Time Face Detection」,這是一篇2004年在IJCV上發表的論文,裡頭談到Haar-Features、Detection Framework、Integral Image、Feature Selection、Learning the Classifier、AdaBoost、Detection Procedure、Cascade Method

廣告
(繼續閱讀…)

標籤雲