2011-04-21 100 views

回答

4

假設攝像機是靜止的並且圖像非常好,您可以使用按照元素的減法找出兩幅圖像之間的差異。使用OpenCV中的C++ API,它看起來是這樣的(注:此代碼是未經測試):

void FindDifference(cv::Mat src1, cv::Mat src2, cv::Mat &dst, int threshold) { 
    dst = cv::abs(src2 - src1); 
    cv::threshold(dst, dst, threshold, 255, cv::THRESH_BINARY); 
} 

你可以調整的threshold的值來降低由噪聲引起的誤報。如果仍然有太多的誤報,您應該使用motion estimationimage registration來對齊兩個圖像。

我對EmuCV的API並不熟悉,但將上面的代碼翻譯成其API調用應該相當簡單。

+0

非常感謝。它的翻譯非常容易,它的工作方式非常符合我的要求。 – clcrutch 2011-04-21 17:14:22

+0

你能指導我進行眼睛跟蹤和眨眼檢測嗎?如何使用cv :: findContours獲取連接組件? – Hitesh 2011-11-23 12:46:12

+0

對不起,但我沒有任何眼動追蹤的經驗。我聽說過有關OpenGaze的好消息,但從未使用過它。 – 2011-11-27 21:34:27