Feature: support barcode upscaling for better detection of small barcodes (#3655)

This commit is contained in:
Bastian Machek authored and GitHub committed 2023-06-27 10:18:47 -07:00
1 parent b5d04e575e
commit 931f5f9c27
6 files changed
+85 -1

No files matched your search

+11 -1
View File
@@ -203,11 +203,21 @@ class BarcodeReader:
try:
pages_from_path = convert_from_path(
self.pdf_file,
dpi=300,
dpi=settings.CONSUMER_BARCODE_DPI,
output_folder=self.temp_dir.name,
)
for current_page_number, page in enumerate(pages_from_path):
factor = settings.CONSUMER_BARCODE_UPSCALE
if factor > 1.0:
logger.debug(
f"Upscaling image by {factor} for better barcode detection",
)
x, y = page.size
page = page.resize(
(int(round(x * factor)), (int(round(y * factor)))),
)
for barcode_value in reader(page):
self.barcodes.append(
Barcode(current_page_number, barcode_value),