Ang panloob na sistema ng pagmamapa
Buong teknikal na sanggunian para sa See U indoor positioning system: arkitektura, sensor, algorithm, API, at gabay sa pagpapatupad.
Mabilis na nabigasyon
Pangkalahatang-ideya
Panimula sa sistema ng pagmamapa
Ano ang See U indoor mapping system?
Ang See U indoor system ay isang closed-space positioning platform na nagsasama ng anim na sensor technology layer na may advanced fusion upang maghatid ng tumpak na lokasyon kung saan hindi available ang GPS.
Hindi tulad ng mga produktong Wi‑Fi- o Bluetooth-only, gumagamit kami ng multimodal stack na kinabibilangan ng:
- Magnetic geolocation: Isang natatanging magnetic "fingerprint" para sa bawat gusali
- Wi‑Fi RTT: Time-of-flight ranging para sa tumpak na mga distansya
- Bluetooth LE: Mga Beacon para sa mga anchor at punto ng interes
- Mga inertial sensor: Dead reckoning na may high-end na IMU
- Computer vision: SLAM at visual marker
- GNSS: Makinis na panloob–labas na paglipat
1–2 m na katumpakan sa 99% ng mga kaso para sa ligtas na paghahanap ng daan
Mga real-time na update na wala pang 100 ms end-to-end latency
Pinagsasama ang maraming teknolohiya para sa pagiging maaasahan at katumpakan
Arkitektura ng system
Istraktura at pangunahing bahagi
Mga bloke ng gusali ng arkitektura
1. Layer ng pangongolekta ng data
Nag-stream ng raw data mula sa lahat ng sensor ng device nang real time.
- • Mga native na driver (iOS / Android)
- • Pamamahala ng sample-rate
- • Pag-buffer ng data para sa batch fusion
- • Pag-synchronize ng timestamp
2. Lapisan pra-pemrosesan
Nagsasala, nag-normalize, at naghahanda ng data para sa pagsasanib.
- • Low-pass at high-pass na mga filter
- • Kalibrasi otomatis
- • Outlier detection at pagtanggal
- • Normalization at scaling
3. Lapisan fusi sensor
Pinagsasama ang maramihang mga mapagkukunan sa mga modernong pamamaraan ng pagsasanib.
- • Filter partikel (probabilistik)
- • Extended Kalman para sa pagpapakinis
- • Pembobotan per sensor yang adaptif
- • Panloob / panlabas na pag-detect ng konteksto
4. Lapisan pemosisian
Kinakalkula ang panghuling posisyon ng user sa mapa.
- • Pagtutugma ng mapa
- • Mag-snap sa wastong mga segment ng path
- • Pagtukoy sa sahig / antas
- • Pagwawasto ng drift
5. Lapisan navigasi
Path planning at turn-by-turn instruction.
- • A* na may accessibility weighting
- • Pagbuo ng pagtuturo ng audio
- • Dynamic na re-routing
- • Mga alerto sa malapit sa mga POI
6. Layer ng interface
Mga API at SDK para sa pagsasama ng app.
- • REST para sa web at mga server
- • Mga Native SDK (iOS at Android)
- • Live na mga update sa WebSocket
- • Mga webhook para sa mga kaganapan sa posisyon
Mga layer ng sensor
Mga teknikal na detalye bawat layer
Geolokasi magnetik
Maps Earth field at mga anomalyang dulot ng gusali. Ang bawat istraktura ay may natatanging magnetic fingerprint.
Mga teknikal na pagtutukoy:
- Kecepatan sampel: 50–100 Hz
- Resolusyon: 0.01 µT
- Patuloy na autocalibration
- Kabayaran sa pagkagambala
RTT Wi-Fi
Oras ng paglipad Wi-Fi mula sa mga access point. Nangangailangan ng suporta sa RTT ng device at imprastraktura.
Mga teknikal na pagtutukoy:
- Protokol: IEEE 802.11mc (Wi-Fi RTT)
- Mga Band: 2.4 at 5 GHz
- Latensi: <100 ms
- Hindi bababa sa 3 AP para sa triangulation
Mababang Enerhiya ng Bluetooth (BLE)
Mga beacon para sa kalapitan, direksyon, POI, at waypoint.
Mga teknikal na pagtutukoy:
- Protokol: BLE 5.0+
- RSSI (natanggap na lakas ng signal)
- Baterya: 2–5 taon
- Saklaw: hanggang 100 m
Satuan pengukuran inersia (IMU)
Sinasaklaw ng IMU ang paggalaw, pag-ikot, at altitude para sa pagtulay ng mga puwang sa pagitan ng mga sanggunian.
Mga teknikal na pagtutukoy:
- Akselerometer: ±16g, 400Hz
- Gyro: ±2000°/dtk, 400 Hz
- Baro: 0.5 m ang taas ng sahig
- Fusi: Kalman
Visi komputer (CV)
Biswal na hinahanap ang mga feature, AR marker, QR, at text para sa mga update sa posisyon at SLAM.
Mga teknikal na pagtutukoy:
- SLAM: sabay-sabay na lokalisasyon at pagmamapa
- Pag-detect ng feature: ORB, SIFT
- AR marker: ArUco, QR
- Waktu Proses: TensorFlow Lite
GNSS / GPS (panlabas)
Satellite na posisyon sa labas at para sa panloob–labas na handover at drift control.
Mga teknikal na pagtutukoy:
- Multi-GNSS: GPS, GLONASS, Galileo, BeiDou
- A-GPS para sa mabilis na TTFF
- Awtomatikong panloob / panlabas
- Pinagsama sa iba pang mga layer
Mga algorithm
Pagproseso at katalinuhan
Filter ng butil (Monte Carlo)
Sinusubaybayan ng maraming may timbang na particle ang pinaka-malamang na pose ng user mula sa maraming maingay na sensor.
Pinalawak na filter ng Kalman
Paulit-ulit na tinatantya ang isang dynamic na system na may maingay na input; ginagamit para sa maayos na mga landas at panandaliang hula.
A* paghahanap ng landas
Nakahanap ng pinakamaikling landas na may mga hadlang, accessibility, at mga kagustuhan ng user bilang mga timbang.
MEMBANTU
Bumubuo ng mapa at sinusubaybayan ang device sa loob nito gamit ang mga visual na feature.
Machine learning (mga neural network)
Mga sinanay na modelo upang pag-uri-uriin ang mga kapaligiran, i-denoise ang data, at pahusayin ang katumpakan sa paglipas ng panahon.
Patay na pagtutuos
Mag-propagate ng pose mula sa huling pag-aayos gamit ang bilis at heading kapag bumaba ang mga pag-aayos sa radyo.
Daloy ng pagproseso
Pagkuha ng data
Ang mga sensor ay nag-stream ng mga hilaw na sukat sa real time
Pemrosesan awal
Pag-filter, pagkakalibrate, at normalisasyon
Pagsasama ng sensor
Pinagsasama ng particle filter ang lahat ng pinagmumulan
penyaring Kalman
Smooths at hinuhulaan ang trajectory
Pagtutugma ng mapa
I-project sa routable map graph
Pose keluaran
Nalantad sa app sa API
API REST
Mga endpoint at pagsasama
URL dasar
/api/v1/positioningIbinabalik ang kasalukuyang pose ng device
Mga Parameter:
device_idvenue_idfloor/api/v1/navigation/routeMagplano ng landas sa pagitan ng dalawang punto
Mga Parameter:
origindestinationaccessibility_mode/api/v1/venues/{id}/mapKunin ang mga tile ng mapa ng lugar
Mga Parameter:
venue_idfloorformat/api/v1/poisMaglista ng mga kalapit na lugar ng interes
Mga Parameter:
latlngradiuscategory/api/v1/tracking/updateMag-post ng batch ng sensor para sa server-side fusion
Mga Parameter:
sensor_datatimestampdevice_idSample na kahilingan
curl -X POST https://api.seeu.app/v1/navigation/route \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"origin": {
"lat": -23.550520,
"lng": -46.633308,
"floor": 1
},
"destination": {
"lat": -23.551234,
"lng": -46.634567,
"floor": 2
},
"accessibility_mode": true
}'Gabay sa pagpapatupad
Paano isama ang stack
1. Mga kinakailangan sa system
iOS
- • iOS 14.0+
- • Cepat 5.5+
- • Lokasi Inti
- • IntiMotion
- • ARKit (opsyonal)
Android
- • Android 8.0+ (API 26)
- • Kotlin 1.7+
- • Mga serbisyo ng Google Play
- • API sensor Android
- • ARCore (opsyonal)
2. Pag-install ng SDK
iOS (CocoaPod)
pod 'SeeUMapping', '~> 1.0'
Android (Kelas)
implementation 'app.seeu:mapping:1.0.0'
3. Pagsisimula
// Swift
import SeeUMapping
let mapping = SeeUMapping(apiKey: "YOUR_API_KEY")
mapping.configure(
venueId: "shopping-center-xyz",
enableMagneticPositioning: true,
enableWiFiRTT: true,
enableBLE: true
)
mapping.startPositioning { result in
switch result {
case .success(let position):
print("Lat: \(position.lat), Lng: \(position.lng)")
case .failure(let error):
print("Error: \(error)")
}
}4. Pag-navigate
mapping.calculateRoute(
from: currentPosition,
to: destination,
accessibilityMode: true
) { route in
mapping.startNavigation(route: route) { instruction in
// turn-by-turn instructions
print(instruction.text)
speakInstruction(instruction.audio)
}
}