https://cppnorth.ca/
---
Bridging C++ and Java with Qt JNI: An Android Application for On-Device Landmine Detection
Recognizing objects in real-world situations, especially on mobile devices with limited resources or in areas with poor internet connectivity, can be a significant challenge. This talk presents a C++ application for real-time landmine detection, focusing on the Android deployment and its ability to perform on-device detection.
The application, built with the Qt framework written in C++, is designed for both offline (on-device) and online (cloud-connected) operation, balancing performance, accuracy, and connectivity constraints. The Android deployment utilizes the Qt JNI (Java Native Interface) to interact with an ONNX Runtime-based inference engine running in a Java environment, as well as accessing native Android APIs for tasks requiring on-device processing, such as file I/O, thumbnail generation, and network connectivity checks. We will discuss the challenges and solutions involved, including data marshalling between C++ and Java (image format conversion and bounding box result processing), and accessing native Android functionalities from C++. The presentation will include simplified code examples that illustrate these critical integration points.
By the end of the talk, attendees will gain a practical understanding of how to communicate between C++ and Java using JNI, integrate pre-trained deep learning models into their C++ applications, evaluate the trade-offs between on-device and cloud-based processing, and address performance considerations for real-time object detection on Android.
---
Slides: https://github.com/CppNorth/CppNorth_...
Sponsored by:
Optiver: https://optiver.com/
JetBrains: https://www.jetbrains.com/
---
Oleksandr Kunichik
Flutter
Oleksandr Kunichik (Alex) is a Software Developer at PokerStars in Toronto, where he develops server-side solutions for online gaming. He holds a Ph.D. in Software Engineering and brings over 10 years of C++ development experience to his work. His career journey includes programming on AS400 systems at First Ukrainian International Bank (FUIB) and developing HMI solutions at Mercedes-Benz. During his doctoral research, Alex explored the intersection of C++ programming with AI and deep learning for humanitarian applications, particularly focusing on landmine detection technologies. Alex is passionate about computational geometry, computer vision, and is an enthusiastic advocate for modern C++, always eager to explore and implement the latest language features and best practices.
---
CppNorth is an annual C++ conference held in Toronto, Canada.
Annual CppNorth C++ conference: https://cppnorth.ca/
CppNorth Bluesky: https://bsky.app/profile/cppnorth.bsk...
---
YouTube Videos Edited by
Reid McInroy
[email protected]
#cpp #cppnorth #programming