Tag: python
-
Microsoft Power Automate is a powerful service designed to automate workflows between various apps and services. Its Desktop version provides the added capability of automating desktop-centric operations, with or without user interface interactions. In this article, we will explore how to integrate Dynamsoft Barcode Reader, Dynamsoft Document Normalizer, and Dynamsoft...
-
Python is a programming language commonly used for scripting, data science, web development, etc. In this article, we are going to talk about how to set up a simple barcode reading server in Python with the Flask web framework. Install Dependencies Install Dynamsoft Barcode Reader: pip install dbr Install Flask:...
-
These are just a few Python barcode SDKs that support ARM32 and ARM64 architectures. Dynamsoft Barcode Reader is the only commercial 1D and 2D barcode SDK that provides barcode recognition capabilities for ARM32 and ARM64 devices. This article demonstrates how to create ARM32 and ARM64 emulated environments on Windows to...
-
If you are looking for the specification of South African driving license, you may be disappointed. There is no official reference except for the Stack Overflow Q&A, an incomplete document - ZA Drivers License format and an C# open source project. The Stack Overflow Q&A provides the RSA public key...
-
Raspberry Pi is a cheap single-board computer, which is often adopted by developers as an economical IoT solution, such as scanning barcode and Qr code. One thing you have to know is the CPU clock speed affects the decoding speed and accuracy. Dynamsoft Barcode Reader SDK supports Raspberry Pi. Its...
-
Dynamsoft Document Normalizer is a document scanning SDK that can be used to do edge detection, perspective correction, and contrast enhancement. Its C/C++ API is available on Windows and Linux. In this article, we will show you how to build a Python wrapper for Dynamsoft C/C++ Document Normalizer SDK, as...
-
The latest version 2.2.10 of Dynamsoft Label Recognizer C++ SDK has optimized the MRZ recognition model, which is much smaller and more accurate than the previous version. It now supports recognizing MRZ from passport, Visa, ID card and travel documents. To facilitate developing desktop MRZ recognition software, we can bind...
-
If you want to build and test barcode QR code scanner applications for embedded and IoT devices, such as Raspberry Pi, Arduino, Jetson Nano and so on, a physical device is not must-have for development. This article shows how to use Dynamsoft Barcode SDK to build barcode QR code reading...
-
Dynamic Web TWAIN is an SDK which makes it possible to scan documents in browsers. Selenium is a suite of tools for automating web browsers, like Firefox, Edge and Chrome. Primarily, it is for testing purposes, but it can also serve for other tasks. In this article, we are going...
-
Implementing a Python extension in C or C++ is easy, but building the native module into a Python wheel package for different operating systems and different Python versions is a nightmare. A CPython wheel package is Python-version-dependent, therefore, to make a CPython module work universally for Python 3.x, you have...
-
Dynamsoft Barcode Reader, as an enterprise-class barcode and QR code SDK, supports many platforms (Windows, Linux, macOS, Android, iOS, Raspberry Pi OS, and Web) and programming languages (Python, Java, Swift, C#, Cpp, and JavaScript). There are many sample projects distributed in Dynamsoft GitHub repositories and official website. To help developers...
-
Dynamsoft is the only company that provides enterprise-class Python Barcode and QR Code SDK for Windows, Linux, macOS, and Raspberry Pi OS. The SDK allows developers to quickly build robust command-line, web, and desktop applications that can scan barcodes and QR codes from a wide range of sources. In this...
-
Barcode and QR codes are widely used in many industries, such as healthcare, finance, and education. This article shares how to leverage Dynamsoft barcode recognition technologies to implement an online barcode and QR code scanning app with Python Django. This article is Part 2 in a 3-Part Series. Part 1...
-
Jupyter notebook is a web-based interactive computing environment that enables you to create and share documents that contain live code, equations, visualizations and narrative text. If you have installed Anaconda, Jupyter notebook is installed by default. This article demonstrates how to write Python code to scan barcodes in Jupyter notebook....
-
A few months ago, I published a cross-platform desktop barcode reading application built with Qt Python and Dynamsoft Barcode Reader. The supported input sources include real-time camera stream, image files, and screenshots. In this article, I will set document scanner as the input source. The SDK used for document scanning...
-
In our life, we usually take out smartphone to scan QR code. But when we are working on a computer, smartphone may not be the best choice for scanning QR codes that appear on web pages. One reason is the pictures taken from a monitor screen have the Moire’ patterns...
-
Dynamsoft Barcode Reader currently does not support WebP images. If you download a QR code image encoded with WebP format, how can you recognize the QR code with Dynamsoft Barcode Reader? In this article, we combine libwebp and Dynamsoft Barcode Reader to fulfill decoding QR code from WebP images. Installation...
-
“WebP is an image format employing both lossy and lossless compression, and supports animation and alpha transparency. Developed by Google, it is designed to create files that are smaller for the same quality, or of higher quality for the same size, than JPEG, PNG, and GIF image formats” - Wikipedia....
-
Image annotation is a key step in deep learning. It prepares the data for tasks like image classification, object detection, semantic segmentation, etc. For image classification, we only need to annotate the label. For object detection, we also need the bounding box and for segmentation, we need to annotate objects...
-
Django is a popular framework of Python for web development. In this tutorial, we will create a web application with Django and Dynamic Web TWAIN. About Dynamic Web TWAIN Python Development Environment Python 3.7.9 python --version Django 3.2.7 python -m pip install Django python -m django --version Overall steps The...
-
When using a QR code reader or scanner SDK, we primarily focus on the detection speed and recognition accuracy. There are many factors that may affect the performance of the QR code detection SDK. The factors can be approximately classified into two categories: image quality and algorithm performance. In this...
-
The International Article Number (also known as European Article Number or EAN) is a standard describing a barcode symbology and numbering system used in global trade to identify a specific retail product type. The most commonly used EAN standard is the thirteen-digit EAN-13. 1 The 13-digit EAN-13 number consists of...
-
Motion detection can detect whether there is a change in the positions of objects. It can be achieved by many methods. For example, infrared light or laser technology can be used for optical detection. As for image processing methods, there is a basic one by a fixed camera, which compares...
-
As the original writer of Dynamsoft Barcode Reader for Python (pip install dbr), I prefer using CPython and Dynamsoft C/C++ Barcode SDK to bring barcode detection APIs to Python. However, Ctypes is also worth to be explored. It allows developers to call C functions of shared libraries in pure Python...
-
Email is a convenient way to send scanned documents. The ability to send emails is built into many network scanners. For example, HP All-in-One devices have a Scan-to-Email app. However, we cannot use these devices’ built-in email-sending ability if we want to control the scanning process in a web scanning...
-
Qt Designer is a Qt tool for building cross-platform graphical user interfaces (GUIs) with Qt widgets. In this article, I will use the Qt designer to create an advanced GUI Python barcode and QR code reader with Dynamsoft Python Barcode SDK for Windows, Linux, macOS, and Raspberry Pi OS. The...
-
If you want to build a cross-platform GUI app with Python and Qt, you can either use PyQt or PySide. Both of them are Qt bindings for Python. The main difference is the license: PyQt5 is released under GPL or commercial, whereas PySide2 is released under LGPL. Since PySide2 is...
-
Someone may be curious about whether Intel-based Python apps can work well on Apple M1 Mac. I recently did a test with Dynamsoft Python Barcode SDK, which is built with native x86_64 libraries and CPython. It turned out that there was no issue using pip to install the wheel package...
-
In the past two weeks, I trained a custom YOLOv3 model for QR code detection and tested it with Darknet. In this article, I will use OpenCV’s DNN (Deep Neural Network) module to load the YOLO model for making detection from static images and real-time camera video stream. Besides, I...
-
LabelImg is a free and open-source image annotation tool written in Python and Qt5. It supports Pascal VOC format and Yolo format that are commonly adopted by mainstream machine learning frameworks. If you are interested in barcode object detection, you can use the tool to annotate different barcode symbologies with...
-
Since from version 7.6.x, Dynamsoft Barcode Reader started to support ARM64 (Previously, ARM32 only). It is good news for developers who aim to build barcode reader app on embedded computing boards like Raspberry Pi and Nvidia Jetson Nano. In this article, I will guide you through the process of building...
-
Start and stop characters are defined as part of linear barcode (1D barcode) standard. However, you may suffer from some nonstandard 1D barcode symbologies in which the start and stop characters are somehow changed. In this article, I will take Code39 as an example, demonstrating how to decode nonstandard 1D...
-
When creating a barcode reader app with a free barcode SDK, you may come up with ZXing instantly. ZXing is an open-source barcode reading and decoding library implemented in Java. There are some third-party projects, either ports or bindings, available for other programming languages. So if you want to create...
-
When I was using CPython to create the Python barcode extension with Dynamsoft Barcode Reader, I had to take concern for the compatibility of Python versions. However, I’m reluctant to install all Python versions in my operating system. To test the compatibility of my Python barcode app in Windows, I...
-
When scanning barcodes, the recognition rate is affected by image quality. If a barcode image is severely damaged, the barcode algorithm may fail to work. Fortunately, most of the linear barcodes (1D barcodes) are printed with corresponding texts. OCR (optical character recognition) could be a complement to the barcode algorithm...
-
AppVeyor is a continuous integration (CI) service used to automatically build code projects and deploy relevant artifacts. It provides build environments for Windows, Linux, and macOS. In this article, I will share how to use AppVeyor to build and deploy Python Wheels (Windows edition) from C/C++ code. Creating Python Wheels...
-
When evaluating an image processing and recognition SDK, image dataset is vital for benchmarking the performance. Google is absolutely the best place for finding and downloading required images. An automation tool would be handy for getting amounts of image files rapidly. In this article, I will share how to use Python...
-
Three years ago, I created a Python extension module for Dynamsoft Barcode Reader C/C++ SDK. The code skeleton has never been changed until recently the SDK updated to v7.0. In the latest barcode SDK, besides the values of barcode symbologies, there are more constant variables needed to be predefined. The...
-
Dynamsoft Barcode Reader 7.0 brings a set of thread-based APIs for continuous frame management and corresponding barcode decoding. It extremely simplifies the programming complexity, especially for Python. It is known that Python’s GIL (Global Interpreter Lock) affects the performance in a multi-threaded scenario. Running computation intensive tasks in Python thread...
-
If you want to quickly create a walking robot, you can use the Lego Boost. In this post, I will share how to use a webcam, Lego Boost, and Dynamsoft Barcode Reader SDK to make a robot for scanning barcodes. The programming language used in this article is Python. What...
-
LEGO Wedo 2.0 is a good start for learning robotics. I created a simple GUI app controlling the LEGO motor using Python. In this article, I will share my experience in how to select the development environment and how to build the Python app. Learning Resources When I searched for...
-
In my previous article, I shared how to use PyQt and Dynamsoft Barcode Reader to create a simple Windows-styled GUI app to read barcodes from image files. Now I am going to add a little bit more code to scan barcodes from the webcam video stream. Showing Webcam Video Stream using PyQt...
-
Qt for Python enables developers to quickly create GUI apps on Windows, Linux and macOS with one codebase. In this article, I will share how to build a Python barcode reader with Qt on Windows. Since Dynamsoft Barcode Reader SDK is also cross-platform, it is easy for you to reuse...
-
Previously, I wrote an article sharing how to build Python barcode extension using C/C++ with Dynamsoft Barcode Reader SDK. If Python developers want to use the extension, they have to make it by themselves. It is a little bit inconvenient. A better way is to package the extension and distribute...
-
When porting code from Python 2 to Python 3, it is not as easy as you imagined no matter whether the primary programming language is Python or C/C++. Re-compiling the Dynamsoft Barcode extension for Python 3 is a challenge because I only found a few of documentation and resources online....
-
Many excellent document mobile apps support not only image capture, but also edge detection and perspective transformation. If you are interested in these computer vision technologies, you can use OpenCV to create a free document scanner app yourself. In this post, I want to share how to use OpenCV-Python to...
-
Recently, I was inspired by a blog post “Python Live Video Streaming Example” and thinking whether it is possible to save the camera streaming to a video file. Based on the example code, I managed to figure out a solution. In this post, I want to share the process of...
-
Using OpenCV APIs to capture video from a camera is convenient. However, OpenCV does not provide an API for listing all available devices. If you have multiple cameras connected to your PC, you have no idea how to choose the right one. To get device information on Windows, you need...
-
Previously, I wrote an article Raspberry Pi Barcode Scanner with Webcam and Python illustrating how to build a simple barcode scanner using Dynamsoft Barcode Reader SDK and OpenCV from scratch. The method decodeFile() was used for detecting barcodes from an image file. To use the API, you have to write...
-
OpenCV officially provides both C++ and Python APIs for developers. Most of the time, developers just need to use one kind of programming languages to read, write and process images with hundreds of computer vision algorithms. However, if you want to use OpenCV Python APIs with an extended C/C++ library,...
-
Previously, I shared an article describing how to create an online barcode reader using Node.js, which turned Raspberry Pi into a web server. Today, I want to do another experiment – building a Raspberry Pi barcode scanner with a USB webcam. For taking HD video and photo, you can choose...
-
Links is one of the critical SEO factors for a Website. When creating or re-designing some pages, we cannot ignore Website audit especially in terms of finding and tracking broken links regularly. Although there are many online tools, it is still worth learning and implementing such a tool ourselves for...
-
Plenty of enterprises allocate static IPs and gateways to employees’ devices for better network management. For example, limiting the internet connection speed, monitoring intranet activities and so on. In my company, the network administrator sets up two gateways for accessing different broadband services. During my working time, I often need...
-
Django is a Web application framework written in Python. In this article, I will focus on how to use Django to upload files. Besides a basic demo that based on HTML form, I will also share how to combine Dynamic Web TWAIN SDK with Django to scan and upload image...