Stephen Dauda Ответов: 1

Как использовать C# для создания отпечатка пальца поэтажного плана здания


Мне нужно захватить план этажа здания, используя метод отпечатков пальцев для внутренней локализации, чтобы я мог найти пользователя в здании. Карта отпечатков пальцев будет помещена на координатный график X-Y, чтобы облегчить определение местоположения. Я планирую сделать это с помощью языка программирования C#. А также хотел бы попробовать метод магнитной дактилоскопии.

Любые идеи о том, как я могу это сделать, или любые другие более простые методы для этого были бы высоко оценены. Благодарю вас за Ваш вклад.

Что я уже пробовал:

Я проверил различные статьи, но они, похоже, не показывают, как это делается, они в основном просто описывают, как работает их собственная система.

1 Ответов

Рейтинг:
0

Dave Kreskowiak

Для этого не существует "простого метода". Каждая корпоративная реализация является частной собственностью, и это стоило им много денег и времени для исследований. Насколько я могу судить, публичной реализации не существует.

Моя жена работает в компании, которая делает то же самое в больших зданиях, но не до такой степени, чтобы найти человека в определенном месте X,Y в комнате. Вы просто знаете, что "этот человек или вещь находится в такой-то комнате". Это не дешево сделать только на этом уровне.

Ваша проблема будет заключаться в датчиках. Как вы собираетесь физически определить, где в комнате находится человек? "Снятие отпечатков пальцев" не принесет вам никакой пользы, если у вас нет данных для обработки, поступающих с некоторых датчиков.


Stephen Dauda

Я планирую использовать точки доступа Wi-Fi в качестве своих датчиков. Таким образом, на карте, которую я создаю, я должен иметь возможность хранить позиции точек доступа Wi-Fi в своей базе данных,которая, как я думаю, является отпечатком пальца, поэтому план этажа будет помещен на координату X, Y, а точки доступа Wi-Fi будут размещены там в качестве статических точек (опорных точек). Затем я сам сохранял бы различные позиции в картографической базе данных как возможные места, где мог бы находиться пользователь.
И это, я думаю, дактилоскопия, хранение каждой возможной точки в базе данных, с точками доступа Wi-Fi, также хранящимися на ней, а затем использование базы данных для оценки положения пользователя.

Я не знаю, имеет ли это для вас смысл?

Но в основном мне нужна помощь с рисованием графика или координат на C# и добавлением к нему плана этажа, чтобы он каким-то образом сливался.

Dave Kreskowiak

Мы попробовали коммерческую версию чего-то подобного и обнаружили, что она совсем не точна. Вы можете расположиться на довольно большой части пола, а не в комнате. Проблема в том, что сигналы Wi-Fi отражаются от всего и всех, что делает точную триангуляцию, основанную на силе сигнала, практически невозможной. Встаньте с ноутбуком в конференц-зале, и вы получите уровень сигнала от точки доступа. Теперь поместите второго человека в комнату, не перемещая ноутбук, и он получит другой набор сильных сигналов для каждой точки доступа!

Здесь нет никакой реальной "дактилоскопии" (Google для "аудио дактилоскопии" для того, что это действительно означает.) Это просто стояние в определенном месте, получение сильных сигналов от ваших точек доступа (которые могут меняться, даже когда вы стоите на месте!) и помещение этой точки данных в вашу базу данных, связанную с координатами местоположения.

То, что вы получите, когда будете "искать" по данным о силе, - это список возможных местоположений, вероятно, дико варьирующихся по всему плану этажа/здания. Ваш поиск должен охватывать диапазон значений, потому что вы не идете к твердой, неизменной силе для поиска.

Хотите попробовать сами? Встаньте на одном месте с ноутбуком, на котором работает монитор уровня сигнала. Вы увидите, что сила постоянно меняется. Теперь повернитесь на 180 градусов и продолжайте следить за уровнем сигнала. Он будет постоянно меняться и варьироваться более чем на 20%.

Помимо этой основной проблемы, вы просто щелкаете точку на изображении и сохраняете координату X,Y этого щелчка. Добавьте это в базу данных в качестве местоположения с уникальным идентификатором и начните собирать данные о силе сигнала. Все эти данные,сохраненные в базе данных, должны быть связаны с идентификатором точки, созданной при нажатии и сохранении координат X, Y.


Stephen Dauda

Окей. Я понимаю.

Что, если я попробую использовать напряженность магнитного поля, а не точки доступа? Интенсивность магнитного поля варьируется от позиции к позиции из-за различного количества стали, присутствующей в каждой области. Это должно быть хорошим методом для проверки, не так ли?

И если да, то как я могу собирать и хранить различные показания магнитной интенсивности в разных областях и хранить их в базе данных?

Dave Kreskowiak

Лол! У вас та же проблема. Вы хоть представляете, сколько магнитов и электромагнитов бегает по офисному полу, как стационарному, так и мобильному?

Кроме того, вам нужны магнитометры в каждом устройстве, которое вы собираетесь отслеживать. Смартфоны обычно используют их для компаса, но не каждый магнитометр одинаков. У некоторых есть разрешение достаточно хорошее, чтобы найти север, и это все. В ноутбуках их обычно нет.

Stephen Dauda

Но он предназначен не для ноутбуков, а для мобильных устройств. И мне не нужно, чтобы он был на 100% оптимальным, но чтобы он работал, чтобы дать мне доказательство концепции.

Dave Kreskowiak

Вы не первый человек, который придумал это. Существует множество работ на эту тему. Обратите пристальное внимание на ссылки, которые цитирует каждая статья, найдите их и прочитайте.

Эта технология не так проста, как кажется на первый взгляд. Некоторые документы принадлежат компаниям, которые придумали свою собственную реализацию, но они также опускают некоторые детали. Например, есть одна статья, в которой говорится: "сталь и бетон в здании не мешают точности позиционирования, но делают его более точным". Но в документе не говорится, что вентиляционные установки и двигатели лифтов на промежуточных этажах и крыше над верхним этажом будут точно завинчиваться, когда они работают.

"магнитная дактилоскопия плана этажа"[^]

Stephen Dauda

Окей. Итак, какой технологический метод вы советуете мне использовать для завершения проекта?

Dave Kreskowiak

В этом и заключается проблема. Внутри зданий-хаотичное море электромагнитного излучения. Пожалуй, единственное, что работает надежно, - это RFID-порталы.

Stephen Dauda

Но не слишком ли сложно их реализовать?

Dave Kreskowiak

По сравнению с тем, о чем вы говорили, это намного проще реализовать.

Stephen Dauda

Но это потребует от меня потратить немного денег, чтобы получить необходимое оборудование для RFID, не так ли?

Dave Kreskowiak

Если только вы не найдете "уважаемого дилера", продающего из задней части фургона на стоянке, да.

Stephen Dauda

Но это для проекта выпускного года бакалавриата, поэтому тратить деньги на аппаратное обеспечение RFID не кажется выгодным

Dave Kreskowiak

Удачи с "дактилоскопированием" комнаты. Тебе нужно много читать.

Для проекта последнего года вам это сойдет с рук, потому что вы всегда можете настроить контролируемую среду, чтобы заставить ее работать, но как реальный продукт она не будет летать.

Stephen Dauda

Ладно, я понял. Можете ли вы порекомендовать какие-либо статьи, которые я могу использовать, чтобы помочь мне, потому что я планирую использовать Trilatertaion, а пол, который я планирую использовать в качестве своего варианта использования, имеет только 2 точки доступа, а для trilateration требуется 3 точки доступа.

Dave Kreskowiak

Нет, но вы можете погуглить "точки доступа Wi-Fi trilateration", чтобы найти кучу.