Reverse Vending Machine
Key Results
- Higher recognition rates in difficult conditions
- Reliable decoding of blurred and low-quality barcodes
- Improved scanning of damaged and poorly positioned codes
- Barcode scanning integrated into the existing AI vision pipeline
- Removed dependency on a dedicated hardware scanner
- Straightforward integration with no major SDK issues
Connect
Integration
Barcode Scanner Web SDK
Challenge
The project involved integrating barKoder into an RVM (Reverse Vending Machine) designed for the automated collection and identification of beverage containers. The machine uses a camera-based vision system and AI to analyze returned bottles and cans, while barcode data helps complete the identification process.
Before barKoder, the RVM relied on a dedicated hardware barcode reader. As the machine evolved toward a camera-based AI system for analyzing container shape and dimensions, the team wanted to use the same vision pipeline for barcode recognition rather than maintain separate scanning hardware.
The scanning environment was especially demanding. Bottles and cans could enter the machine at different angles, move or rotate during analysis, and introduce challenges such as reflections, curved surfaces, varying label quality, imperfect positioning, and changing lighting conditions.
Solution
The team evaluated several software-based barcode recognition approaches, primarily open-source options, focusing on decoding quality, integration with the existing camera pipeline, and reliable performance with real images captured inside the machine.
barKoder stood out because of its ability to decode barcodes from blurred, low-quality, and imperfectly positioned images. This was particularly important because containers are not always stationary or perfectly aligned when an image is captured.
The SDK was integrated directly into the existing camera and AI pipeline, allowing barcode recognition to become part of the same machine-vision system used for container analysis. The integration was straightforward and did not introduce unnecessary complexity.
Result
With barKoder, the RVM achieved more reliable barcode recognition in difficult real-world conditions, particularly when dealing with blurred, partially damaged, low-quality, or poorly positioned barcodes.
Barcode recognition is now integrated directly into the broader AI-powered container identification workflow, creating a more unified and flexible machine-vision system.
The team did not conduct a controlled benchmark to provide an exact percentage improvement, but testing showed a clear increase in recognition reliability, especially in difficult cases where image quality could not be controlled.
The implementation itself was smooth, with no major SDK-related issues, and barKoder proved flexible enough to work effectively within the existing camera and AI architecture.