2016-09-02 32 views
0

我使用EmguCV的CascadeClassifier使用DetectMultiScale檢測圖像中的人臉,並且在檢測第一個圖像需要一段時間(大約3-5秒)時,後續圖像只需要大約0.3 -0.7秒。我在加載時初始化了分類器,看看它是否改變了一切,但似乎沒有什麼區別。EmguCV級聯分類器起初很慢,然後快速

有什麼辦法可以加快第一張圖片的時間?

+0

如果你是從Visual Studio解決方案運行這個項目,它會是這樣的。但是你從EXE運行它(即在實際使用項目),你可能不會得到這個問題。 – hariprasad

+0

不,甚至運行二進制文件起初速度很慢,然後很快。 –

+0

如果你在gpu上運行cascadeclassifier,那麼它可能是第一次緩慢初始化的cuda,但不是真正的opencv算法。 – hariprasad

回答

0

我認爲這是動態裝配加載。 .Net只根據需要加載所需的EmguCV組件。因此,第一次使用任何EmguCV代碼時,它會加載整個程序集。可能還要等一下。 您可以在程序啓動後在單獨的線程中使用emguCV初始化程序集。加載時,你可以做其他初始化的東西。

也許在從一開始就加載程序集的引用上也有一個選項。

相關問題