2013-12-09 29 views
0

目前我正在研究實時IRIS檢測應用程序。如何更改EmguCV中的反轉幀?

我要執行的翻轉操作畫面(拍攝形式的網絡攝像頭),這樣 enter image description here

我設法讓這行代碼,但是這不是給我預期的結果像上面,也許參數需要改變,但我不知道它。

CvInvoke.cvThreshold(grayframeright, grayframeright, 160, 255.0, Emgu.CV.CvEnum.THRESH.CV_THRESH_BINARY_INV); 

請幫我解決這個問題。

在此先感謝

回答

0

如果要反轉,你可以做以下的圖像:

Mat white = Mat::ones(grayframeright.rows, grayframeright.cols, grayframeright.type); 
Mat dst = white - grayframeright; 

另外請注意,學生可以用HAAR級聯初始化的眼睛OpenCV的檢測器檢測到的OpenCV代碼隨附。

+0

謝謝你的回答 因爲我在EmguCV開發,我正在尋找一個C#代碼 我使用哈爾級聯進行眼睛檢測,但找不到一個用於瞳孔檢測。 如果你有任何haar級聯,請與我們分享, – gouthaman93

3

在圖片上面,感覺第二圖像是負第一圖像(糾正我,如果我錯了)的,

您正在使用的功能是一個閾值函數,即。如果它落在指定的顏色範圍之間,則會將所有內容渲染爲白色,否則將渲染爲黑色。

要找到圖像的負值,可以使用以下方法之一。

拍攝圖像的NOT。

Image<Bgr, Byte> img2 = img1.Not();// imag1 can be a static image or your current captured frame 

有關更多詳細信息,請參閱文檔here

+2

你可以使用_Not(),它適用於相同的圖像。 – Kishath