Skip to main content


Video motivation example of Opencv GStreamer HLS video stream output

This video is a motivation example of how to build OpenCV C++ application that uses the GStreamer pipeline and produces your processed video as HLS stream. This video is describing many problems to reach the goal. You can follow my recommendation and try to build such an app by yourself. I mentioned all the troubles during the dev and the rest is almost easy. There will be more video tutorials in more detail about this topic. 1. Install OpenCV 4.4 with GStreamer. I already have materials for this. 2. Setup nginx to expose your web with HLS video playlist and video segments. 3. Write your application on Windows and stream the video to a simple websiteThis is the example of Opencv GStreamer HLS output stream to web

Opencv 4 C++ Tutorial simple Background Subtraction

Opencv tutorial C++ Background substractionThis method is used to learn what belongs to the background of the image and what belongs to the foreground. The static cameras that monitor the area can very easily recognize, what is part of the image that is always here or there is something that is new and moving over the background.  Background subtraction Visual studio 2019 project setupIf you have Opencv 4+ compiled or installed only steps you need to do is set the include directory with OpenCV header files. Set the Additional library Directories that point to \lib folder. Just note that Visual Studio 2019 should use VC16\lib. Finally, As additional dependencies, specify the libs used to resolve the function implementation in the code. The list for Opencv 420 is here. The different version of opencv is using different numbering for example opencv 440 will use opencv_core440.lib.  opencv_bgsegm420.lib opencv_core420.lib opencv_videoio420.lib opencv_imgproc420.lib opencv_highgui420.lib opencv_…

Compile opencv 4 with Cuda and GStreamer on windows

Compile OpenCV with Cuda is an easy task. All you need is the right HW from NVIDIA, drivers, and software. Additionally, the processed output video should be stream out from the OpenCV using the GStreamer. I am putting the GStreamer now as the standard option of my installation of OpenCV on the Windows machine.  Let's go through step by step compilation of OpenCV from source, including Cuda, Gstreamer, and contribution modules. It is just a small increment to my previous tutorial that focuses just on the GStreamer setting in the Windows CMAKE project.  This is a simplified version, verified on a different machine than the previous tutorials.  You can found some details in this tutorial Install Opencv Gstreamer on windows step by step. Software prerequisitesInstall cuda, This is my version of network installer cuda_11.0.2_win10_network Visual Studio 2019 community Cmake 3.17.4 Opencv 4.4Opencv_contribOpencv Compilation in windows steps by step Extract or get through git opencv-4.4 Ex…

Opencv C++ tutorial : Smoothing, blur, noise reduction / canceling

Smooth or blur, gaussian blur, and noise-canceling, This tutorial will learn OpenCV blur, GaussianBlur, median blur functions in C++. Additionally, the advanced technique for noise reduction fastNlMeansDenoising family will be introduced with a code example for each method.  

You can use blurring of the image to hide identity or reduce the noise of the image.  Blur can be a very useful operation and it is a very common operation as well. For example, the anonymization of pedestrians, face or is one possible target for blue operation. The blur is the most common task to perform over the image to reduce noise. The noise reduction is more task for Gaussian blur than for simple blur operation. The various blur operations are very common for image processing on mobile devices. 
The more important is the robustness issues of the data in pre-processing for machine learning. Sometimes, by blurring the images of the dataset can have a positive effect on the robustness of the achieved detector. T…