1. 程式人生 > 資訊 >針孔攝像頭屢禁不止,用你手機自帶的 ToF 感測器對付它:檢測成功率近 90%

針孔攝像頭屢禁不止,用你手機自帶的 ToF 感測器對付它:檢測成功率近 90%

不法分子用針孔攝像頭違法偷拍的事兒,可以說是過段時間就上個新聞。導致現在不少人出門住個酒店都要先用網上學來的方法查個遍,才能安心躺下。然而像什麼手機攝像頭檢測法、某寶上的檢測儀等費時費力,主要效果還不一定好……

現在,來自新加坡國立大學的研究員們又開發出了一種新方法,用一部手機加一個智慧應用程式,就能實現近 90% 的精準檢測率。

真的嗎?一起來看。

一部手機 + 機器學習 App 揪出針孔攝像頭

首先,手機不是普通的手機,是帶有 ToF(Time of Flight,飛行時間)感測器的手機。

△論文來自 ACM Sensys 2021 智慧感測系統大會

所謂 ToF 感測器,就是感測器發出經調製的近紅外光,遇物體後反射,然後通過計算光線發射和反射時間差或相位差,獲得被拍攝景物的距離,以產生深度資訊。

其測量範圍可達數米、精度小於 2cm,每秒更新頻率可達 30~60 fps。

可在手機上用於人臉識別、金融支付、攝像時精準摳像 / 探測景深、AR 建模與體感遊戲等。

現在有部分手機已經配有 ToF 感測器,比如 iPhone 13、iPhone 12 Pro、Samsung S20+/Ultra、華為 P30 Pro、OPPO RX17 Pro 等。

沒有的也彆著急,未來會漸漸成為一種趨勢。

進入正題。

我們都知道,相比普通物體的“散射”,光線打在鏡頭這類物體上會形成強烈的逆反射,就像這樣:

一個更形象的比喻:

而 ToF 感測器正好不僅能告訴你物體離攝像頭有多遠,還能反映影象中每個畫素有多亮。

那就好辦了,就比如下圖最右,通過適當距離的 ToF 感測器反射,我們可以發現四個高亮點,而其中一個就是針孔攝像頭藏身之處。

但是,問題也來了,四個亮點長得差不多,憑什麼說中間那個就是呢?

另外,如果感測器和嫌疑物的距離太近或太遠,給出的成像會“糊”就會造成誤報,那又不知道嫌疑物到底在哪,怎麼選擇一個理想位置進行檢測呢?

以及目前的 ToF 感測器空間解析度都非常低,只有 240x320,這就導致一個針孔攝像頭的影象可能就佔 1-2 個畫素;位深(bit-depth)也低,只能代表 8 種顏色,檢測難度直線上升,誤報率居高不下。

最後,嫌疑攝像頭反射的光只能在 20° 的視場角(FoV)範圍內可見,操作不當也會導致漏報。

好傢伙,問題這麼多,怎麼解決?

這就得靠搭載了計算機視覺和機器學習的應用程式來幫忙了。

首先,使用手機攝像頭對準一些你嫌疑的物件,然後 App 通過計算引導你和嫌疑物件保持合適的檢測距離(一般是 20 釐米)。

計算依據假定針孔攝像頭的直徑為 1-2mm。

在掃描過程中,ToF 感測器的每一幀都給我們提供了鐳射強度影象和深度影象,程式將兩者結合,提取候選區域,然後根據物理知識和機器學習過濾掉形狀和距離基本不可能的選項。

接著將過篩的影象通過座標轉換從 2D 轉為 3D,再通過 FoV 過濾器進行視場角過濾。

最終給出是否有針孔攝像頭的結論。

說了這麼多,看看它的真本事吧。

88.9% 的檢測率

研究人員一共提供了 21 件不含和 9 件含針孔攝像頭的物品進行測試。

每件物品用三種檢測方法:ToF 手機 / LAPD App(也就是他們的方法)+ 一種叫做 K18 的市面檢測儀 + 裸眼。

後兩者需人為進行可疑攝像頭的標註,一共 379 名志願者參與。

最終,他們的方法最高獲得了 88.9% 的準確率,以及最低 16.7% 的誤報率。

比 K18 檢測儀高了近 30%。

並且,APP 在實驗用的 Samsung S20 + 可以連續執行 2 個半小時。

看到這兒,網友都坐不住了,紛紛喊話:什麼時候上線應用程式,戳我啊!

好訊息是,作者回應了:

程式碼正在開源。

那麼,你覺得這個方法如何?到時釋出了你會試試嗎?

論文原文:

https://dl.acm.org/doi/10.1145/3485730.3485941

參考連結:

[1]https://www.youtube.com/watch?v=t4Txdhlji4k

[2]https://news.ycombinator.com/item?id=29267168