2016-01-25 54 views
0

我將如何獲取使用motionDetection過濾器輸入幀的某些內容的屏幕座標?我對編程相當陌生,如果可能的話,寧願儘快回答。如何使用GPUImage獲取運動對象的座標motionDetection- swift

示例 - 我讓iphone指着牆 - 用motionDetector監視它。如果我將網球反彈到牆上 - 我希望應用程序在iPhone顯示屏上將網球圖像放在牆上的相同位置。

要做到這一點,我需要運動發生的地方的座標。 我想也許「質心」的說法做到了這一點......但我不確定。

回答

0

我應該指出,運動檢測器是非常粗糙的。它通過採用視頻流的低通濾波版本(通過傳入視頻幀的加權平均值生成的合成圖像),然後從當前視頻幀中減去該版本來工作。超過一定閾值的像素被標記。結果提供了這些像素的數量以及標記像素的質心。

質心是一個標準化的(0.0-1.0)座標,表示所有這些不同像素的質心。歸一化的強度會爲您提供被標記爲不同的像素的百分比。

場景中的移動通常會導致一堆像素不同,對於單個移動對象,質心一般將成爲該對象的中心。但是,這不是一個可靠的測量方法,因爲光線變化,陰影和其他移動物體等也會導致像素不同。

對於真正的對象跟蹤,您需要使用特徵檢測和跟蹤算法。不幸的是,目前發佈的框架還沒有完全實現這些框架。

+0

感謝您回答布拉德。爲了我的目的,我將如何將標準化座標轉換爲屏幕座標?我想要做的替代方法是在發生移動時拍攝照片 - – JoeC

+0

@JoeC - 將它們乘以屏幕上顯示的圖像大小。 –