Barcodes are ubiquitous and have been used in most daily activities for decades. However, most traditional barcode scanners require well-founded barcode under standard conditions. While wilder conditioned barcodes such as underexposed, occluded, blurry, wrinkled, and rotated are commonly captured in reality, those traditional scanners show weaknesses of recognizing. This work aims to solve the detecting and decoding problem using a deep convolutional neural network with the possibility of running on portable devices. To be more specific, in the barcode decoding problem, we proposed a special modification of inference based on the attribute of having self-validation (checksum) in the prediction phase of a trained model; on the other hand, to also cover the full flow of detecting and decoding, we introduced the one-stage model based on the YOLO object detection model which is more efficient and faster than those of two-stages. The later method not only works for barcode but also similar applications such as license plate capturing and reading. To prepare for a reliable evaluation, we collected and annotated a large number of barcodes as benchmark datasets. Experimental results prove models' efficiency by outperforming industrial-standard tools in both detection and decoding rates with a smooth fps on portable devices.
바코드는 어디에나 있으며 수십 년 동안 대부분의 일상 활동에 사용되어 왔다. 그러나 대부분의 기존 바코드 스캐너는 표준 조건에서 충분한 근거가 있는 바코드를 필요로 합니다. 노출 부족, 가려짐, 흐릿함, 주름짐, 회전됨과 같은 황량한 조건 바코드는 일반적으로 현실에서 포착되지만, 이러한 전통적인 스캐너는 인식의 약점을 보여준다. 이 작업은 휴대용 장치에서 실행할 수 있는 심층 컨볼루션 신경망을 사용하여 감지 및 디코딩 문제를 해결하는 것을 목표로 한다. 좀 더 구체적으로, 바코드 디코딩 문제에서, 우리는 훈련된 모델의 예측 단계에서 자체 검증(체크섬) 특성을 기반으로 한 추론의 특별한 수정을 제안했다. 한편, 검출 및 디코딩의 전체 흐름을 다루기 위해 YOLO 객체 감지 기반의 1단계 모델을 도입했다. 2차원 모델보다 더 효율적이고 빠른 모델 이후 방법은 바코드뿐만 아니라 번호판 캡처 및 판독과 같은 유사한 응용 프로그램에도 사용할 수 있습니다. 신뢰할 수 있는 평가를 준비하기 위해 벤치마크 데이터 세트로 많은 바코드를 수집하고 주석을 달았다. 실험 결과는 휴대용 장치의 부드러운 fps로 탐지 및 디코딩 속도 모두에서 산업 표준 도구를 능가하여 모델의 효율성을 입증한다.