{"id":30883451,"url":"https://github.com/piero24/detect-decode-the-barcode","last_synced_at":"2026-05-16T08:11:59.559Z","repository":{"id":313587750,"uuid":"1030895793","full_name":"Piero24/Detect-Decode-the-Barcode","owner":"Piero24","description":"A two-stage pipeline for detecting and decoding barcodes from images.","archived":false,"fork":false,"pushed_at":"2025-08-02T19:57:55.000Z","size":31643,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-07T05:55:27.972Z","etag":null,"topics":["barcode","barcode-scanner","huggingface","object-detection","opencv","qrcode","qrcode-scanner","ultralytics","yolov8"],"latest_commit_sha":null,"homepage":"https://colab.research.google.com/github/Piero24/Detect-Decode-the-Barcode/blob/main/Decode_the_Barcode.ipynb","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Piero24.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-02T15:04:11.000Z","updated_at":"2025-09-02T12:48:48.000Z","dependencies_parsed_at":"2025-09-07T05:55:31.899Z","dependency_job_id":"b01279e3-3396-4058-a962-df1ccade64ad","html_url":"https://github.com/Piero24/Detect-Decode-the-Barcode","commit_stats":null,"previous_names":["piero24/detect-decode-the-barcode"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Piero24/Detect-Decode-the-Barcode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Piero24%2FDetect-Decode-the-Barcode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Piero24%2FDetect-Decode-the-Barcode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Piero24%2FDetect-Decode-the-Barcode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Piero24%2FDetect-Decode-the-Barcode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Piero24","download_url":"https://codeload.github.com/Piero24/Detect-Decode-the-Barcode/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Piero24%2FDetect-Decode-the-Barcode/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274166946,"owners_count":25233959,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["barcode","barcode-scanner","huggingface","object-detection","opencv","qrcode","qrcode-scanner","ultralytics","yolov8"],"created_at":"2025-09-08T09:46:04.305Z","updated_at":"2026-05-16T08:11:59.529Z","avatar_url":"https://github.com/Piero24.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv id=\"top\"\u003e\u003c/div\u003e\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/e98a82fe4679d47a82966937576e1e8a9559a2a7/.github/barcode_decoder_logo.webp\" width=\"150\"\u003e\n\u003c/p\u003e\n\u003ch1 align=\"center\"\u003e\n    \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode\"\u003eBarcode Detection \u0026 Decoding Pipeline\u003c/a\u003e\n\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n    \u003c!-- BADGES --\u003e\n    \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode/commits/main\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/last-commit/piero24/Detect-Decode-the-Barcode\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Status-Incomplete-orange.svg\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode/issues\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/issues/piero24/Detect-Decode-the-Barcode\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/main/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/piero24/Detect-Decode-the-Barcode\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://colab.research.google.com/github/Piero24/Detect-Decode-the-Barcode/blob/main/Decode_the_Barcode.ipynb\"\u003e\n    \u003cimg src=\"https://colab.research.google.com/assets/colab-badge.svg\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n    A two-stage computer vision pipeline to detect and normalize barcodes from images using a fine-tuned YOLOv8 model.\n    \u003cbr/\u003e\n    \u003ca href=\"https://colab.research.google.com/github/Piero24/Detect-Decode-the-Barcode/blob/main/Decode_the_Barcode.ipynb\"\u003e\u003cstrong\u003eView a Demo »\u003c/strong\u003e\u003c/a\u003e\n    \u003cbr/\u003e\n    \u003cbr/\u003e\n    \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode/issues\"\u003eReport Bug\u003c/a\u003e\n    •\n    \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode/issues\"\u003eRequest Feature\u003c/a\u003e\n\u003c/p\u003e\n\n\n---\n\n\n\u003cbr/\u003e\u003cbr/\u003e\n\u003ch2 id=\"introduction\"\u003e📔  Introduction\u003c/h2\u003e\n\u003cp\u003e\n    This project documents the design and implementation of a two-stage pipeline for accurately detecting and decoding barcodes from images. The objective is to build a robust system capable of handling barcodes in real-world conditions, including variable lighting, perspective distortion, and image noise. The pipeline uses a fine-tuned \u003cstrong\u003eYOLOv8s\u003c/strong\u003e model for detection and a series of robust OpenCV functions for perspective correction.\n\u003c/p\u003e\n\u003cbr\u003e\n\n\u003e [!WARNING]\n\u003e This project is **incomplete**. While the barcode detection and perspective normalization stages are functional and robust, the final decoding stage was unsuccessful. The primary challenges were:\n\u003e - **Sensitivity to Noise:** Minor image noise and compression artifacts consistently corrupted the measured bar/space widths.\n\u003e - **Symbology Complexity:** Implementing a full, robust decoder for standards like Code 128 proved to be a significant challenge.\n\u003e - **Error Propagation:** Small errors in the initial module width calculation cascaded, rendering the entire decoding process unreliable.\n\u003e\n\u003e The code for the attempted decoding process is included to document the progress and showcase the techniques that were explored.\n\n\u003cbr/\u003e\n\u003ctable align=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/3/original_image.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/4/original_image.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/6/original_image.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/3/cropped_barcode_roi-1.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/4/cropped_barcode_roi-1.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/6/cropped_barcode_roi-2.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/3/normalized_barcode_image-1.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/4/normalized_barcode_image-1.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/6/normalized_barcode_image-2.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/3/polished_barcode_image-1.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/4/polished_barcode_image-1.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/a134a9b26d31706583b22544c8586ea1e372ef90/.github/bbox/6/polished_barcode_image-2.jpg\" alt=\"\" width=\"300\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\u003cbr/\u003e\n\u003cp\u003e\n    The pipeline is designed to first locate barcodes in an image and then transform them into a clean, frontal view, which is the necessary prerequisite for any successful decoding attempt.\n\u003c/p\u003e\n\n\u003cp\u003e\n    \u003cstrong\u003ePIPELINE OVERVIEW\u003c/strong\u003e: The program takes an RGB image as input and processes it through a two-stage pipeline to prepare barcodes for decoding.\n    \u003col\u003e\n        \u003cli\u003e\n            \u003cstrong\u003eBarcode Detection with YOLOv8s\u003c/strong\u003e\n            \u003cp\u003e\n                A \u003cstrong\u003eYOLOv8s\u003c/strong\u003e model, fine-tuned on a custom dataset of 5,000 images, is used to accurately detect the location of barcodes and produce precise bounding boxes.\n            \u003c/p\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n            \u003cstrong\u003ePerspective Correction \u0026 Normalization\u003c/strong\u003e\n            \u003cp\u003e\n                For each detected barcode, a series of computer vision techniques (including blurring, thresholding, and contour analysis) is applied to isolate the barcode region. A perspective transformation is then used to un-warp the barcode into a flat, frontal, and horizontally-aligned image.\n            \u003c/p\u003e\n        \u003c/li\u003e\n        \u003cli\u003e\n            \u003cstrong\u003eAttempted Decoding (Incomplete)\u003c/strong\u003e\n            \u003cp\u003e\n                The final step was to decode the normalized barcode image. This involved analyzing the pattern of black and white bars to extract the encoded information. Despite significant effort, this stage did not produce consistently reliable results. The code is provided for reference and as a starting point for future work.\n            \u003c/p\u003e\n        \u003c/li\u003e\n    \u003c/ol\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/4c7dc4e9385381e0d2d42332cddac019aed300b8/.github/res.png\" style=\"width: 100%;\" width=\"100%\"\u003e\n    \u003cp\u003eExample of the pipeline's output, showing the original image, cropped ROI, and the normalized/polished barcode ready for decoding.\u003c/p\u003e\n\u003c/div\u003e\n\u003cbr/\u003e\n\u003cbr/\u003e\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"#top\"\u003eTry a demo on Google Colab\u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://colab.research.google.com/github/Piero24/Detect-Decode-the-Barcode/blob/main/Decode_the_Barcode.ipynb\"\u003e\n        \u003cimg src=\"https://colab.research.google.com/assets/colab-badge.svg\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\u003ch2 id=\"made-in\"\u003e\u003cbr/\u003e🛠  Built With\u003c/h2\u003e\n\u003cp\u003e\n    This project is written in Python and relies on powerful libraries for deep learning and computer vision.\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://www.python.org/\"\u003ePython\u003c/a\u003e • \u003ca href=\"https://pytorch.org/\"\u003ePyTorch\u003c/a\u003e • \u003ca href=\"https://github.com/ultralytics/ultralytics\"\u003eUltralytics YOLOv8\u003c/a\u003e • \u003ca href=\"https://opencv.org\"\u003eOpenCV\u003c/a\u003e • \u003ca href=\"https://huggingface.co/\"\u003eHugging Face Hub\u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\u003ch2 id=\"documentation\"\u003e\u003cbr/\u003e\u003cbr/\u003e⚠️  Improvements \u0026 Future Work\u003c/h2\u003e\n\n\u003cp\u003e\n    Given the incomplete nature of the project, the primary area for improvement is the decoding stage. Key steps to complete the pipeline include:\n\u003c/p\u003e\n\u003cul\u003e\n    \u003cli\u003e\n        \u003cstrong\u003eImprove Image Preprocessing:\u003c/strong\u003e Enhance the image cleaning steps after normalization to create a more uniform representation of the bars, reducing the impact of lighting inconsistencies and noise.\n    \u003c/li\u003e\n    \u003cli\u003e\n        \u003cstrong\u003eRobust Module Width Calculation:\u003c/strong\u003e Develop a more resilient method for calculating the fundamental module width (the width of the narrowest bar/space), as this is the most critical step for accurate decoding.\n    \u003c/li\u003e\n    \u003cli\u003e\n        \u003cstrong\u003eImplement a Full Decoder:\u003c/strong\u003e Build a complete decoding engine for a specific symbology (e.g., Code 128), including handling character sets, checksum validation, and special characters.\n    \u003c/li\u003e\n     \u003cli\u003e\n        \u003cstrong\u003eLeverage Third-Party Decoding Libraries:\u003c/strong\u003e As an alternative to a from-scratch implementation, integrate a proven, open-source decoding library like ZBar or ZXing to complete the pipeline quickly and reliably.\n    \u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\u003ch2 id=\"documentation\"\u003e\u003cbr/\u003e\u003cbr/\u003e📚  Documentation\u003c/h2\u003e\n\n\u003cp\u003e\n    The entire project is contained within a single Jupyter Notebook (`.ipynb`). The notebook is structured with markdown cells that explain each step of the process, from dependency installation to the final (attempted) decoding.\n\u003c/p\u003e\n\n\u003e [!TIP]\n\u003e The YOLOv8s model used for detection is downloaded automatically from the \u003ca href=\"https://huggingface.co/Piero2411/YOLOV8s-Barcode-Detection\"\u003ePiero2411/YOLOV8s-Barcode-Detection\u003c/a\u003e repository on Hugging Face Hub. No manual download is required.\n\n\u003cp\u003e\n    Key functionalities documented in the notebook include:\n    \u003cul\u003e\n        \u003cli\u003e\u003cb\u003eBarcode Detection:\u003c/b\u003e Using a pre-trained YOLOv8s model.\u003c/li\u003e\n        \u003cli\u003e\u003cb\u003eImage Normalization:\u003c/b\u003e A multi-pass approach to isolate and un-warp the barcode from its background.\u003c/li\u003e\n        \u003cli\u003e\u003cb\u003ePerspective Transformation:\u003c/b\u003e Correcting for angled or distorted views to create a \"bird's-eye view\" of the barcode.\u003c/li\u003e\n        \u003cli\u003e\u003cb\u003eImage Enhancement:\u003c/b\u003e Using Sobel gradients and morphological operations to create a clean, high-contrast barcode image.\u003c/li\u003e\n        \u003cli\u003e\u003cb\u003eDecoding Logic:\u003c/b\u003e An implementation that attempts to read bar widths, calculate a module width, and map patterns to Code 128 characters.\u003c/li\u003e\n    \u003c/ul\u003e\n\u003c/p\u003e\n\n\u003cp\u003e\n    For a complete, in-depth view of the implementation and the challenges faced, please refer directly to the Jupyter Notebook.\n\u003c/p\u003e\n\n\u003e [!NOTE]\n\u003e The notebook includes plotting functions that visualize each step of the pipeline, from the original image and bounding box to the final normalized and polished barcode image. This is useful for debugging and understanding the impact of each computer vision technique.\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\n\u003ch2 id=\"prerequisites\"\u003e\u003cbr/\u003e🧰  Prerequisites\u003c/h2\u003e\n\u003cp\u003e\n    To run this project, you will need a Python environment. A CUDA-enabled GPU is recommended for faster YOLOv8 inference, but the code will run on a CPU.\n\u003c/p\u003e\n\nTo install all necessary dependencies, run the following command in your terminal:\n\n```sh\npip install ultralytics opencv-python matplotlib numpy huggingface_hub\n```\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\n\u003ch2 id=\"how-to-start\"\u003e\u003cbr/\u003e⚙️  How to Start\u003c/h2\u003e\n\u003cp\u003e\n    The project is provided as a Jupyter Notebook, which allows for easy, step-by-step execution and visualization of the results.\n\u003c/p\u003e\n\u003cbr/\u003e\n\n1. Clone the repo\n  \n```sh\ngit clone https://github.com/Piero24/Detect-Decode-the-Barcode.git\n```\n2. Navigate to the project directory\n```sh\ncd Detect-Decode-the-Barcode\n```\n3. Install the dependencies as described in the \u003ca href=\"#prerequisites\"\u003ePrerequisites\u003c/a\u003e section.\n4. Create an `input_images` folder in the root directory and place your images inside it.\n5. Open the `Barcode_Detection_and_Decoding.ipynb` notebook in a compatible environment (like Jupyter Lab or Google Colab).\n6. **Run the Notebook**: Execute the cells sequentially from top to bottom. The first run will automatically download the fine-tuned YOLOv8 model weights from Hugging Face Hub.\n\n\u003e [!NOTE] \n\u003e The notebook is self-contained and includes detailed explanations for each code block. You can observe the output of the detection and normalization stages, as well as the logged failures of the decoding attempts.\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\n---\n\n\n\u003ch3 id=\"responsible-disclosure\"\u003e\u003cbr/\u003e📮  Responsible Disclosure\u003c/h3\u003e\n\u003cp\u003e\n    We assume no responsibility for an improper use of this code and everything related to it. We do not assume any responsibility for damage caused to people and / or objects in the use of the code.\n\u003c/p\u003e\n\u003cstrong\u003e\n    By using this code even in a small part, the developers are declined from any responsibility.\n\u003c/strong\u003e\n\u003cbr/\u003e\n\u003cbr/\u003e\n\u003cp\u003e\n    It is possible to have more information by viewing the following links: \n    \u003ca href=\"#code-of-conduct\"\u003e\u003cstrong\u003eCode of conduct\u003c/strong\u003e\u003c/a\u003e\n     • \n    \u003ca href=\"#license\"\u003e\u003cstrong\u003eLicense\u003c/strong\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\n\u003ch3 id=\"report-a-bug\"\u003e\u003cbr/\u003e🐛  Bug and Feature\u003c/h3\u003e\n\u003cp\u003e\n    To \u003cstrong\u003ereport a bug\u003c/strong\u003e or to request the implementation of \u003cstrong\u003enew features\u003c/strong\u003e, it is strongly recommended to use the \u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode/issues\"\u003e\u003cstrong\u003eISSUES tool from Github »\u003c/strong\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr/\u003e\n\u003cp\u003e\n    Here you may already find the answer to the problem you have encountered, in case it has already happened to other people. Otherwise you can report the bugs found.\n\u003c/p\u003e\n\u003cbr/\u003e\n\u003cstrong\u003e\n    ATTENTION: To speed up the resolution of problems, it is recommended to answer all the questions present in the request phase in an exhaustive manner.\n\u003c/strong\u003e\n\u003cbr/\u003e\n\u003cbr/\u003e\n\u003cp\u003e\n    (Even in the phase of requests for the implementation of new functions, we ask you to better specify the reasons for the request and what final result you want to obtain).\n\u003c/p\u003e\n\u003cbr/\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n  \n --- \n\n\u003ch2 id=\"license\"\u003e\u003cbr/\u003e🔍  License\u003c/h2\u003e\n\u003cstrong\u003eMIT LICENSE\u003c/strong\u003e\n\u003cbr/\u003e\n\u003cbr/\u003e\n\u003ci\u003ePermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including...\u003c/i\u003e\n\u003cbr/\u003e\n\u003cbr/\u003e\n\u003ca href=\"https://github.com/Piero24/Detect-Decode-the-Barcode/blob/main/LICENSE\"\u003e\n    \u003cstrong\u003eLicense Documentation »\u003c/strong\u003e\n\u003c/a\u003e\n\u003cbr/\u003e\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\n\u003ch3 id=\"third-party-licenses\"\u003e\u003cbr/\u003e📌  Third Party Licenses\u003c/h3\u003e\n\nIn the event that the software uses third-party components for its operation, \n\u003cbr/\u003e\nthe individual licenses are indicated in the following section.\n\u003cbr/\u003e\n\u003cbr/\u003e\n\u003cstrong\u003eSoftware list:\u003c/strong\u003e\n\u003cbr/\u003e\n\u003ctable\u003e\n  \u003ctr  align=\"center\"\u003e\n    \u003cth\u003eSoftware\u003c/th\u003e\n    \u003cth\u003eLicense owner\u003c/th\u003e \n    \u003cth\u003eLicense type\u003c/th\u003e \n    \u003cth\u003eLink\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr  align=\"center\"\u003e\n    \u003ctd\u003eYOLOv8\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/ultralytics\"\u003eUltralytics\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003eAGPL-3.0\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/blob/main/LICENSE\"\u003ehere\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr  align=\"center\"\u003e\n    \u003ctd\u003ePyTorch\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://pytorch.org\"\u003ePyTorch\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003eBSD-style\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/LICENSE\"\u003ehere\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr  align=\"center\"\u003e\n    \u003ctd\u003eOpenCV\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://opencv.org\"\u003eOpenCV\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003eApache-2.0 license\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/opencv/opencv/blob/4.x/LICENSE\"\u003ehere\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr  align=\"center\"\u003e\n    \u003ctd\u003eHugging Face Hub\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co\"\u003eHugging Face\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003eApache-2.0 license\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/blob/main/LICENSE\"\u003ehere\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003cp align=\"right\"\u003e\u003ca href=\"#top\"\u003e⇧\u003c/a\u003e\u003c/p\u003e\n\n\n---\n\u003e *\u003cp align=\"center\"\u003e Copyrright (C) by Pietrobon Andrea \u003cbr/\u003e Released date: 15-09-2024*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiero24%2Fdetect-decode-the-barcode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpiero24%2Fdetect-decode-the-barcode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiero24%2Fdetect-decode-the-barcode/lists"}