
कैमरे वाले स्मार्ट-ग्लासेस का पता लगाने के लिए चश्मा। Ray-BANNED
कैमरे वाले स्मार्ट-ग्लासेज़ का पता लगाने के लिए चश्मा
मैं मुख्य रूप से 2 तरीकों पर प्रयोग कर रहा हूँ:
अब तक, ब्लूटूथ (BLE) के आधार पर विशिष्ट डिवाइसों की फिंगरप्रिंटिंग सबसे आसान और सबसे विश्वसनीय तरीका लग रहा है। नीचे दी गई तस्वीर पहला संस्करण है, जो Meta Raybans से BLE विज्ञापन का पता चलने पर Legend of Zelda का 'secret found' जिंगल बजाता है।

मैं अनिवार्य रूप से इस README को एक लॉगबुक की तरह मान रहा हूँ, इसलिए इसमें मेरे वर्तमान तरीके/विचार होंगे।
कैमरे के लेंस पर IR भेजकर, हम इस तथ्य का लाभ उठा सकते हैं कि कैमरे में CMOS सेंसर प्रकाश को सीधे स्रोत पर वापस परावर्तित करता है (जिसे 'रेट्रो-रिफ्लेक्टिविटी' / 'कैट-आई इफेक्ट' कहा जाता है) ताकि कैमरों की पहचान की जा सके।

यह बिल्कुल नया विचार नहीं है। 2005 में कुछ शोधकर्ताओं ने इस गुण का उपयोग 'कैप्चर-रेसिस्टेंट एनवायरनमेंट' बनाने के लिए किया था, जब कैमरे वाले स्मार्टफोन लोकप्रिय हो रहे थे।
यहाँ तक कि हालिया शोध (2024) भी है जिसने पता लगाया कि उनके रेट्रो-रिफ्लेक्शन के आधार पर व्यक्तिगत कैमरों को कैसे वर्गीकृत किया जाए।
अब हमारे पास 2005 के उन शोधकर्ताओं जैसी ही स्थिति है, जहाँ छिपे हुए कैमरों वाले स्मार्ट ग्लास अधिक लोकप्रिय होते जा रहे हैं। इसलिए मैं इनकी पहचान करने के लिए चश्मे की एक जोड़ी बनाना चाहता हूँ। दुर्भाग्य से, जहाँ तक मैं बता सकता हूँ, इस क्षेत्र के अधिकांश मौजूदा शोध एक कैमरे से डेटा रिकॉर्ड करते हैं और फिर सामान्य परावर्तक सतहों और कैमरों के बीच अंतर करने के लिए ML, बहुत सारे नियंत्रित कोण आदि का उपयोग करते हैं।
अगर मेरा समाधान अपना खुद का कैमरा उपयोग करे तो मुझे काफी बेवकूफी महसूस होगी। इसलिए मैं ऐसा करने से बचूँगा। इसके बजाय मुझे लगता है कि मुझे अपने 'sweeps' में सुसंगत रहने और सिग्नल डेटा के आधार पर एक अच्छा क्लासिफायर बनाने पर निर्भर रहना होगा। उदाहरण के लिए, आप यहाँ देख सकते हैं कि मेरे स्मार्टफोन का पिछला कैमरा तेज़ और बड़े स्पाइक्स उत्पन्न करता है, जबकि चमकदार स्क्रीन एक लंबी लहर बनाती है।


कुछ Meta Raybans का परीक्षण करने के बाद, मैंने पाया कि यह सेटअप पर्याप्त नहीं होगा। यहाँ कैमरा-क्षेत्र + लेंस के ढके होने पर उसी क्षेत्र के कुछ sweeps का परीक्षण है। आप देख सकते हैं कि तरंग पहले के परीक्षण में जो मैंने देखी थी उसके समान है (कैमरे के लिए छोटा स्पाइक, अन्यथा चौड़ा), लेकिन यह बहुत असंगत है और सिग्नल की ताकत बहुत कमज़ोर है। यह LEDs से लगभग 4 इंच की दूरी से था। 940nm और 850nm LEDs के बीच बदलने पर मुझे ज्यादा अंतर नज़र नहीं आया।

तो कम से कम वर्तमान हार्डवेयर के साथ जो मेरे लिए आसानी से सुलभ है, यह शायद सटीक रूप से अंतर करने के लिए पर्याप्त नहीं है।
मेरा एक और विचार एक निर्दिष्ट sweep 'पैटर्न' बनाना है। उपयोगकर्ता (डिटेक्टर चश्मा पहने हुए) लक्ष्य का एक विशिष्ट स्कैन पैटर्न करेगा। इस डेटा से कैप्चर की गई तरंगों का उपयोग करके, शायद हम Raybans को अधिक सटीक रूप से फिंगरप्रिंट कर सकते हैं। उदाहरण के लिए, लक्ष्य के चश्मे पर 'बाएँ, दाएँ, ऊपर, नीचे' दृष्टिकोण में स्वीप करना। मैंने Meta Raybans की तुलना कुछ aviators से करके इसका परीक्षण किया जो मेरे पास पड़े थे। मुझे लगता है कि इस दृष्टिकोण के पीछे का विचार सही है (वास्तव में यह प्रकाश है), लेकिन इसे और अधिक कार्यशाला की आवश्यकता हो सकती है।

प्रोटोटाइप के लिए, मैं उपयोग कर रहा हूँ:

IR TODOs:
sweeping पैटर्न के साथ प्रयोग करें
spectral जानकारी पर ध्यान दें, कुछ अलग-अलग तरंग दैर्ध्य से डेटा संयोजित करने का प्रयास करें
collimation?
trevor (कैमरा वर्गीकरण पेपर के लेखक) ने नवंबर में उल्लेख किया था कि अगर ग्लासेज़ में LiDAR है तो मैं केवल उन दालों की तलाश कर सकता हूँ। ray-bans में यह नहीं लगता है, लेकिन अन्य स्मार्ट ग्लासेज़ में हो सकता है। दिसंबर में पोस्ट किया गया यह ब्लॉग इस दृष्टिकोण से iPhone कैमरों का पता लगाने पर कुछ बढ़िया शोध करता है: https://www.atredis.com/blog/2025/11/20/designing-a-passive-lidar-detection-sensor
यह मेरे विचार से अधिक मुश्किल रहा है! यहाँ मेरा वर्तमान दृष्टिकोण ब्लूटूथ लो-एनर्जी (BLE) विज्ञापनों पर Meta Raybans को फिंगरप्रिंट करना है। लेकिन, मैं केवल 1) पेयरिंग 2) पावर-ऑन के दौरान ही BLE ट्रैफ़िक का पता लगा पाया हूँ। कभी-कभी मैं केस से बाहर निकाले जाने पर (पहले से चालू होने पर) विज्ञापन भी देखता हूँ, लेकिन लगातार नहीं।

लक्ष्य उपयोग के दौरान उनका पता लगाना है जब वे पेयर किए गए फोन के साथ संचार कर रहे हों, लेकिन इस प्रकार के निर्देशित BLE ट्रैफ़िक को देखने के लिए मुझे पहले CONNECT_REQ पैकेट देखना होगा जिसमें जानकारी होती है कि संचार चैनलों के बीच किस तरह सिंक में कूदना है (hop interval, hop increment)। यह nRF52840 + ble-sniffer फर्मवेयर के साथ किया जा सकता है, लेकिन यह इस तथ्य को नकारता नहीं है कि स्निफिंग शुरू करने के लिए आपको अभी भी उस प्रारंभिक कनेक्शन को देखना होगा।
BLE के बारे में थोड़ी और पृष्ठभूमि:
चालू होने पर या पेयरिंग मोड में डालने पर (या कभी-कभी केस से बाहर निकालने पर), मैं विज्ञापित निर्माता डेटा और सेवा UUID के माध्यम से डिवाइस का पता लगा सकता हूँ। ये विज्ञापन डेटा के हिस्से हैं।
0x01AB एक Meta-विशिष्ट SIG-असाइन किया गया ID है (ब्लूटूथ मानक निकाय द्वारा निर्दिष्ट), और Service UUID में 0xFD5F भी Meta को निर्दिष्ट है। कोड में आप अन्य नंबर देख सकते हैं जिनका उपयोग मैं फिंगरप्रिंटिंग के लिए कर रहा हूँ।
किसी भी ब्लूटूथ क्लासिक (BTC) ट्रैफ़िक के लिए, दुर्भाग्य से हार्डवेयर थोड़ा अधिक जटिल (पढ़ें: महंगा) लगता है। इसलिए यदि मैं इस मार्ग पर जाना चाहता हूँ, तो मुझे शायद यहाँ एक अधिक चतुर समाधान की आवश्यकता होगी।
जब ग्लासेज़ चालू होते हैं तो कैप्चर करें:
[01:07:06] RSSI: -59 dBm
Address: XX:XX:XX:XX:XX:XX
Name: Unknown
META/LUXOTTICA DEVICE DETECTED!
Manufacturer: Meta (0x01AB)
Service UUID: Meta (0xFD5F) (0000fd5f-0000-1000-8000-00805f9b34fb)
Manufacturer Data:
Company ID: Meta (0x01AB)
Data: 020102102716e4
Service UUIDs: ['0000fd5f-0000-1000-8000-00805f9b34fb']
NETWORKING TODOs:
नोट: परीक्षण के लिए जो ray-bans मैं उपयोग कर रहा था वे अभी उपलब्ध नहीं हैं इसलिए मैं थोड़ा अटका हुआ हूँ :(
Optics और BLE (क्रमशः) में उनकी सलाह के लिए Trevor Seets और Junming Chen को धन्यवाद। साथ ही परीक्षण के लिए मुझे meta raybans उधार देने के लिए Sohail को धन्यवाद।
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.