Accur8vision: Mobile application for 3D tracking solutions

Imagine being able to look at your company headquarters, or your house, in 3D and see who is moving around the property - much like walking through buildings in a video game. The Accur8vision security system does exactly that. It can fully guard and render objects. With Accur8vision, people can easily find out if the noise they heard was a car, a person, or just a passing cat. Our task was to take a web client and transform it into a mobile app for both iOS and Android. But as it turned out, following up on the original code was not so simple.

bonami logo
Business
For developers

Accur8vision has a strong background as part of Hexagon, and its prestigious list of clientele includes businesses from a wide range of industries, critical infrastructure organizations, and security forces. Their new project offers customers a mobile application that provides a simplified view of the guarded area, automatically sending notifications about intruders and other events. Until now, Accur8vision had to send notifications via e-mail, SMS or phone call. The company already had a web interface ready, and they turned to us for mobile development.

martin vojtek

Cookielab turned out to be an ideal choice. Their proactive approach, in-depth technical knowledge and willingness to go above and beyond standard services contributed significantly to the resulting mobile app not only meeting, but even exceeding, our high quality standards. The Cookielab team has demonstrated an exceptional ability to quickly adapt to our specific needs and provide innovative solutions, resulting in a superior tool that is user-friendly and technically advanced.

Martin Vojtek

CEO TACTICAWARE, s.r.o.

Challenge: Limits of both technology and code

Although the original developers used React Native for Web, a technology that allows you to use a single code across platforms, we ran into its limits here. The Accur8vision software was already too complex and the web interface contained a lot of exceptions, so we couldn't simply use the code for a mobile app.

This step was very demanding, and in cases where we are involved in the development from the beginning, we try to avoid it. Usually it comes up in the Product Discovery phase, where we examine the current needs and the potential to scale the product in the future.

Development: Dissonance between virtual and physical worlds

During development, we had to verify our calculations in the real world. We implemented satellite images from Google Maps into the application, but we encountered inaccuracies in the rendering of zones. For example, based on data from the client, the parking lot was displayed in a different place than it was on the map.

So our team had to find a solution to verify whether the error was in the application or the data. For this, we used tennis courts that have standardized dimensions. In the end, we asked the client to adjust the zero point in the coordinates to get the drawings correct.

1

Push notifications

Zone breach, camera cover, low battery...

2

Alarm archive

Including the ability to replay the movement of intruders at a specific time.

3

Confirmation of alarms

The user confirms whether it was a real or false alarm and can add notes.

4

Rendering a simplified map

A bird's-eye view of the guarded area and real time intruder tracking.

Vision: Improving applications and simplifying technologies

In May 2024, we launched an improvement to the current mobile application to improve user experience:

the movement of intruders on the map is significantly smoother,

battery consumption decreased by approx. 10-15%,

96% fewer data downloads are required,

we know with greater accuracy and speed that the connection to the server is stable and functional.

Right now, the Cookielab team is working on the development of a new web solution that will work more efficiently with the data transfer. The goal is to have a reliable application that is responsive on different displays and easily integrated into other solutions, such as a control room dashboard, etc., and thus more scalable. At the same time, development has started for native language iOS and Android applications with improved UI and UX.

Accur8vision: Mobile application for 3D tracking solutions

Imagine being able to look at your company headquarters, or your house, in 3D and see who is moving around the property - much like walking through buildings in a video game. The Accur8vision security system does exactly that. It can fully guard and render objects. With Accur8vision, people can easily find out if the noise they heard was a car, a person, or just a passing cat. Our task was to take a web client and transform it into a mobile app for both iOS and Android. But as it turned out, following up on the original code was not so simple.

bonami logo
Business
For developers

Accur8vision has a strong background as part of Hexagon, and its prestigious list of clientele includes businesses from a wide range of industries, critical infrastructure organizations, and security forces. Their new project offers customers a mobile application that provides a simplified view of the guarded area, automatically sending notifications about intruders and other events. Until now, Accur8vision had to send notifications via e-mail, SMS or phone call. The company already had a web interface ready, and they turned to us for mobile development.

Markacz foto

„What I see as a success is that we were able to take a completely foreign web application written in a non-standard way for the technology and get it working on mobile in a relatively short time.“

Tomáš Markacz

Frontend Tech Lead, Cookielab

Challenge: Limits of both technology and code

Although the original developers used React Native for Web, a technology that allows you to use a single code across platforms, we ran into its limits here. The Accur8vision software was already too complex and the web interface contained a lot of exceptions, so we couldn't simply use the code for a mobile app.

This step was very demanding, and in cases where we are involved in the development from the beginning, we try to avoid it. Usually it comes up in the Product Discovery phase, where we examine the current needs and the potential to scale the product in the future.

Development: The mismatch between the virtual and the physical world

Adding new features, such as push notifications, was relatively easy. The snag was with maps. Accur8vision uses LiDAR to model the movement of intruders in a 3D model of the object. However, for the mobile application, they generate a bird's-eye view in which we need to draw the so-called intruders as points (wheels). On the website, this view was written in Canvas, a standard HTML technology that React Native does not support.

We tried using SVG format, but the app crashed with large maps because the libraries used to convert SVG to bitmap would eat up too much memory. We thought about CSS, but in the end we decided to modify the classic Canvas.

Even here, we ran into problems and had to visit mathematics a bit. The standard practice is that when you want to plot a point in a geometric shape, you put it in the middle. But in the case of Accur8vision, we didn't have classic rectangles, we had various polygons. During classic calculations, the center was completely outside the given area. In the end, we used an algorithm from the company Mapbox, specially developed for such cases.

Maps were another challenge. We implemented satellite images from Google Maps into the application, but we encountered inaccuracies in the rendering of zones. For example, based on data from the client, the parking lot was displayed in a different place than it was on the map. So our team had to find a solution to verify whether the error was in the application or the data. For this, we used tennis courts that have standardized dimensions. In the end, we asked the client to adjust the zero point in the coordinates to get the drawings correct.

1

Push notifications

Zone breach, camera cover, low battery...

2

Alarm archive

Including playback of recordings from cameras in the application.

3

Acknowledging alarms

The user confirms whether it was a real or false alarm.

4

Rendering a simplified map

A bird's eye view of the guarded area.

Vision: Improving the web client and simplifying technologies

Right now, the CookieLab team is working on the development of a new web solution that will work more efficiently with the data transfer. To be able to render the movement of intruders in real-time in the mobile application, we call the server all the time. In fact, we need to call about 6 endpoints, which means that we call the API 6 times every two seconds.

Communication was not prepared for this volume of data at all, and we brought down the entire server with one instance of the mobile application. We finally solved everything, but we plan to use GR PC for communication in the future. The goal is to have a reliable application for the web that will be responsive on different displays and easily integrated into other solutions, for example a dashboard for security control.

or
...your career.
Check our job openings
By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.