A Simple Web Document Management App with OpenCV.js

Document Scanning is nothing new for mobile apps. I remember the first time that I installed a document scanning app was in 2010. However, Apple, Microsoft, and Google the giant tech companies got started to recognize the importance of document scanning technology recently. It is good to see the function appears in iOS Notes, Office Lens and Google Drive. Why is the document scanning being hot now? I think the reason is the quality of images captured by mobile cameras is getting better and better. More and more users tend to scan documents with cameras instead of traditional scanners. If you are not familiar with Android and iOS development, you can use HTML5. In this post, I will share how to create a simple web document management app using OpenCV.js.

Read more

How to Build Web Document Scanner Using OpenCV-Python

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 create a web document scanner step by step.

Read more

How to Build Web Camera Recorder Using OpenCV and Flask

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 building the web camera recorder using OpenCV and Flask.

Read more

Listing Multiple Cameras for OpenCV-Python on Windows

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 to invoke DirectShow APIs. In this post, I will share how to create a Python extension that lists camera devices for OpenCV-Python on Windows.

Read more

How to Convert OpenCV Image Data from Python to C

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, it will be tricky to pass the data. In this article, I will share how to read camera stream with OpenCV-Python and detect barcode with Dynamsoft C/C++ Barcode SDK.

Read more

How to Use Gamma Correction for Image Processing with Opencv

In reality, we can always see some photos that have low brightnesses and low contrast. To make objects recognizable in pictures,  we need to process the photo with Illumination Compensation. There are many algorithms used for Illumination Compensation such as Histogram equalization, Color similarity measure, Gamma Correction and so on. In this tutorial, I will introduce Gamma Correction and show you how to use it with OpenCV.

Read more

OpenCV Edge Detection

Changes or discontinuities of amplitude attribute, such as luminance value, are fundamentally important primitive characteristics of an image. They often provide an indication of the physical extent of objects. Local Discontinuities of image luminance that from one level to another are called luminance edges. In this post, I’ll share how to make image edge detection with OpenCV.

Read more

Building OpenCV with CMake on Windows

OpenCV (Open Source Computer Vision Library) is a powerful open source library of computer vision algorithms. It is widely used by many technologies, such as image acquiring (e.g. Webcam capture), image processing (e.g. noise reduction), image detection (e.g. face detection), image recognition (e.g. OCR), and so on. Since all OpenCV source code is on GitHub, let’s get the copy and build the source code ourselves for fun.

Read more