It is well known that sensors work best when used together. This is especially true for simultaneous localization and mapping (SLAM). SLAM plays an important role in the AR/VR space, adjusting the scene based on the user's posture and avoiding collisions during use in applications such as drones or robots. The SLAM market is expected to grow to $465 million by 2023, with a compound annual growth rate of 36%, providing a great opportunity for most developers. Applying SLAM to indoor navigation on mobile phones may dominate the large-scale basic platform market. GPS does not work indoors, and beacon-based navigation only works in areas with beacon infrastructure. SLAM, on the other hand, works anywhere an indoor map is available, which meets the low-cost expectations of most building automation management systems. The scene of the area is fused with the posture and movement of the user walking in the area, making the application of SLAM here a great example of applying sensor fusion.
Out-of-the-box solutions
I will first describe how to integrate and test this solution based on our CEVA SensPro Sensor Hub DSP hardware, combined with our SLAM and MotionEngine software modules to regulate and manage motion input. We need a camera and inertial measurement sensors, a CPU and DSP. We use the CPU to host the MotionEngine and SLAM framework, and use the DSP to execute the SLAM algorithm to reduce the task burden.
For a simpler explanation, I will first start with the OrbSLAM algorithm, a widely used open source implementation. It will perform three main functions. Tracking does the (visual) frame-by-frame registration and localizes the new frame on the current map. Mapping adds points to the map and does local optimization by creating and solving a complex set of linear equations. Loop closure does global optimization by making corrections on returning to points that have been visited before. This is achieved by solving a large set of linear equations.
Some of these functions can be run very efficiently within the host application on a CPU core, along with control and management functions that are specific to your application. Some functions must run in a DSP processor to be practical or to gain a competitive advantage. For example, tracking might manage 1 frame per second (fps) in a CPU, with feature extraction accounting for 40% of the algorithm's runtime. In contrast, a DSP implementation might manage 30 fps, a resolution that is important for fine-grained correlation between video and the IMU.
The reason for this advantage is easy to understand. The DSP implementation provides very high parallel processing capabilities, fixed-point/floating-point support, which is critical in tracing and solving linear equations. In addition, there is a special instruction set to accelerate feature extraction. A simple link between the host and the DSP allows the DSP to be used as an accelerator, offloading intensive calculations to SensPro.
Vision Fusion IMU
We provide two key components: visual SLAM using the CEVA-SLAM SDK product and CEVA MotionEngine software, which can process IMU inputs for three of the six degrees of freedom very accurately. The fusion of IMU and video information depends on an iterative algorithm that is usually customized to the application requirements. The last step links the visual data with the motion data to generate accurate positioning and mapping estimates. CEVA provides mature visual SLAM and IMU MotionEngine software as a solid foundation for developing fusion algorithms. Algorithm-intensive functions such as this will run fastest on a DSP, such as our SensPro2 platform.
Testing the prototype
Once you have built your prototype platform, how will you test it? There are multiple SLAM datasets available. Kitti is one, EuroC is another. In the example below, I show the accuracy comparison between an OpenCV implementation and our CEVA-SLAM SDK implementation. You will want to do a similar analysis for your product.
Incorporate your own approach
As I mentioned earlier, there are many ways to build a SLAM platform. Maybe you don’t want to start with OrbSLAM, or you want to integrate your own algorithms or differentiated algorithms. SensPro Sensor Hub DSP supports both.
Previous article:Jingce Electronics: Shanghai Jingce's film thickness products have received batch repeat orders from domestic first-tier customers
Next article:Apple faces another lawsuit in the Netherlands and could be fined $5.5 billion
Recommended ReadingLatest update time:2024-11-16 15:02
- Popular Resources
- Popular amplifiers
- Apple faces class action lawsuit from 40 million UK iCloud users, faces $27.6 billion in claims
- Apple and Samsung reportedly failed to develop ultra-thin high-density batteries, iPhone 17 Air and Galaxy S25 Slim phones became thicker
- Micron will appear at the 2024 CIIE, continue to deepen its presence in the Chinese market and lead sustainable development
- Qorvo: Innovative technologies lead the next generation of mobile industry
- BOE exclusively supplies Nubia and Red Magic flagship new products with a new generation of under-screen display technology, leading the industry into the era of true full-screen
- OPPO and Hong Kong Polytechnic University renew cooperation to upgrade innovation research center and expand new boundaries of AI imaging
- Gurman: Vision Pro will upgrade the chip, Apple is also considering launching glasses connected to the iPhone
- OnePlus 13 officially released: the first flagship of the new decade is "Super Pro in every aspect"
- Goodix Technology helps iQOO 13 create a new flagship experience for e-sports performance
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- [CY8CKIT-149 PSoC 4100S Review] + PWM Analysis and Use (Part 1)
- EEWORLD University Hall----Tektronix MSO5 Oscilloscope Disassembly Video
- An article explains the essential difference between op amps and comparators
- AD8226 amplifies signal into square wave, please help
- Applications of mentor graphics
- Solve the problem that IAR cannot jump to function definition
- Please give me some guidance!
- Free Download | TE White Paper "The Importance of Pressure Sensors in HVAC Refrigeration Systems"
- Things to note when routing high-frequency and high-speed signal lines along the edge of a PCB
- lwip stability issue?