2017-09-15 107 views
2

目標:我想開發一個應用程序,使用hololens相機識別圖像。Hololens的圖像識別

我的問題的簡單化方式是「我該如何設法做到這一點?」 (「過於寬泛?」,請繼續閱讀。


我做了什麼(或者什麼,我有)爲止

1)我已成功地開發出Hololens應用程序,需要命令中的照片(手勢 - 但聲音也可以做到),並用照片舉起全息圖。 (所以這個問題不是的「我怎麼跟Hololens捕捉工作重複)

2)我已經開發了具有形狀和字母識別,神經網絡,圖像處理,都執行處理多個工作算法在C#和C + +(但我可以將它們轉換爲C#,因爲這是hololens使用的語言)(所以這個問題是不是重複的「我該如何編程OCR」或「如何處理圖像」和不是太寬泛,我沒有指定我想要什麼樣的圖像識別:我不是要求)

3)我讀到,當使用圖像捕捉你ca ñ把圖像到磁盤或內存,但使用VideoCapture時,它僅適用於磁盤(不是內存)

4)我已閱讀有關異步處理,瞭解了多線程


我什麼區別問(更詳細)

所以我認爲要做目標,我將不得不連續拍照並處理它們。我的假設是否正確?或者還有其他方法嗎?

如果是這樣,我是否需要實現我的圖像處理到一個單獨的線程? (我想是這樣,因爲它可能需要一些時間) - 考慮到光捕獲是異步的。

而且還直接關係到速度問題,我是否必須重新實現我的算法,使用不安全的編程來直接處理指向圖像的指針以提高速度?


萬一這個問題被標記爲「在一個太多問題」,讓我重新整理在「我想通過捕捉連續拍攝的照片解決問題的問題,採取的結果不同螺紋在那裏採取將通過不安全的指針,以增加被處理和處理的圖像速度這是正確的或者是任何其他方式?)

任何意見,指針或有用的建議將是非常讚賞。

回答

0

我沒有你所有問題的答案,但我認爲你不需要做出喲你在另一個線程中處理圖像,因爲你沒有在同一個線程中運行其他進程,所以我建議你通過FIFO列表(check Queue class here)來完成整個過程,在這裏你保存未處理的捕獲圖像,同時你將保留處理隊列中的第一個未處理的圖像。這樣,您可以在不浪費任何捕獲的圖像的情況下處理捕獲任務和圖像處理任務之間的速度差異,同時您將保持處理結果與捕獲的照片的順序相同。