{"id":18351258,"url":"https://github.com/driedler/qrcode_detector","last_synced_at":"2025-07-01T06:37:32.901Z","repository":{"id":152440145,"uuid":"571874248","full_name":"driedler/qrcode_detector","owner":"driedler","description":"Robust QR code detector","archived":false,"fork":false,"pushed_at":"2022-12-09T05:57:48.000Z","size":4987,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-20T16:11:28.327Z","etag":null,"topics":["cpp","opencv","python","qrcode","raspberry-pi","raspberrypi"],"latest_commit_sha":null,"homepage":"","language":"C++","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/driedler.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}},"created_at":"2022-11-29T04:11:32.000Z","updated_at":"2024-09-20T20:41:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"14e8739b-1707-4c02-a4c8-ab12e27e165e","html_url":"https://github.com/driedler/qrcode_detector","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/driedler/qrcode_detector","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/driedler%2Fqrcode_detector","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/driedler%2Fqrcode_detector/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/driedler%2Fqrcode_detector/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/driedler%2Fqrcode_detector/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/driedler","download_url":"https://codeload.github.com/driedler/qrcode_detector/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/driedler%2Fqrcode_detector/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260976921,"owners_count":23091528,"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","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":["cpp","opencv","python","qrcode","raspberry-pi","raspberrypi"],"created_at":"2024-11-05T21:30:02.207Z","updated_at":"2025-06-20T16:12:04.980Z","avatar_url":"https://github.com/driedler.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# QR Code Detector\n\nThis is Python wrapper for [QR-Code Scanner](https://github.com/PhilS94/QR-Code-Scanner):\n\n\u003e A QR-Code Scanner, written in C++ and using the OpenCV library, which was developed as an optional part of the university course \"Computer Vision\" in a small team of three.\n\nThis implementation works __substantially__ better than the `QRCodeDetector` that comes with OpenCV.\n\n\n## Install\n\n\n### Windows\n\nOn Windows, install `Visual Studio Build Tools 2019`:\nhttps://visualstudio.microsoft.com/downloads/\n\nThen install this package into your Pyhton environment:\n```\npip install git+https://github.com/driedler/qrcode_detector.git\n```\n\n\n\n### Linux\n\nEnsure the GCC build toolchain is installed:\n\n```\nsudo apt install -y build-essential ninja-build gcc-9\n```\n\nThen install this package into your Pyhton environment:\n```\npip install git+https://github.com/driedler/qrcode_detector.git\n```\n\n\n\n### Raspberry PI\n\n\n#### Install pre-built\n\nA pre-built Python package for Raspberry PI3 (or Raspberry PI Zero 2 W) can be installed with (this assumes Python3.9 on Rasparian OS 11 \"Bullseye\"):\n\n```\npip3 install https://github.com/driedler/qrcode_detector/raw/main/dist/qrcode_detector-0.1.0-cp39-cp39-linux_armv7l.whl\n```\n\n#### Build from source\n\n(If on Windows, run from WSL2)\n\nThe following is tested to work with a Raspberry PI 3 (or Raspberry PI Zero 2 W)\nusing the `bullseye` Raspbarian OS.\n\nDownload the toolchain by running the script: [install_rpi3_bullseye_toolchain.sh](cpp/install_rpi3_bullseye_toolchain.sh)\n\n\nThen build the RPI wheel\n```\npip3 install wheel\nexport BUILD_RASPBERRY=1\npython3 setup.py bdist_wheel\n```\n\nThen copy the built wheel to your raspberry PI and install with:\n```\npip install \u003cpath to .whl\u003e\n```\n\n\n\n## Usage\n\n```python\n\n# import the QR code detector wrapper\nimport qrcode_detector\n\n# import the opencv library\ntry:\n    from cv2 import cv2\nexcept:\n    import cv2\n\n# define a video capture object\nvid = cv2.VideoCapture(0)\n  \nwhile(True):\n      \n    # Capture the video frame\n    # by frame\n    ret, frame = vid.read()\n  \n    # Display the resulting frame\n    cv2.imshow('video', frame)\n\n    # decode the qrcode in the given image\n    data = qrcode_detector.find_and_decode(frame)\n    if data:\n        # Print the decoded data if it was successfully found\n        print(f'Decoded: {data}')\n      \n    # the 'q' button is set as the\n    # quitting button you may use any\n    # desired button of your choice\n    if cv2.waitKey(1) \u0026 0xFF == ord('q'):\n        break\n  \n# After the loop release the cap object\nvid.release()\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdriedler%2Fqrcode_detector","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdriedler%2Fqrcode_detector","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdriedler%2Fqrcode_detector/lists"}