我有一個根據數據編碼方案改變顏色的圓圈。例如,我想在該圓圈的顏色變化中對消息「Hello」進行編碼。這意味着從紅色到綠色的過渡(實心圓的顏色從紅色變爲綠色)可以解碼爲二進制1,從綠色到藍色的過渡可以解碼爲0.因此,我的消息可以是以這種格式編碼。這部分是我的發射器已準備就緒。與Android相機的可見光通信方法
現在我希望能夠使用Android攝像頭通過圖像處理算法接收此編碼數據。我是圖像處理新手,經過一些研究後,我發現我可以使用OpenCV或JavaCV作爲我的應用程序。你認爲我應該使用哪一個,我應該遵循什麼樣的應用?我已經能夠創建一個可以實時檢測圓圈的應用程序。但是我無法想象接下來要做什麼。 我遵循opencv示例中的color_blob_detection示例,我知道如何檢測幀中的特定顏色。
在這裏,我感到困惑。
我應該不斷檢查所有幀中的紅,綠,藍三種顏色嗎?有沒有一種方法來確定每個幀的相同的百分比,這樣我可以用兩個連續的幀比較百分比和說,一直存在一個過渡?**
我應該緩衝的幾號例如500幀的幀緩衝區中的幀,然後從緩衝區開始逐個處理我的幀。這可以考慮爲了增加幀速率,因爲在這種情況下,我的onPreviewFrame()方法代碼將被減少到最小值**
請建議我應該怎麼做呢?發射機會一直髮送同樣的信息,我不介意確定我發送的比特數/字節數。我只需要識別以這種方式傳輸的'身份證'。
感謝您的編輯邁克爾.. – Ricky
幫助我在此上實現相同的實現。我的用例是從相機的閃光燈中讀取編碼的數字(數字)。 –