blImageSerialization — Simple functions to serialize/unserialize an IplImage using opencv

This entry is part 17 of 17 in the series blImageAPI -- BarbatoLabs Image API

Introduction Whenever working with any type of data, especially images or videos, we usually run into the need of having to save the data to then load it back up for later use. The images can either be saved in binary format or text format.  The process of saving/loading data…

Continue reading

blEncodeAndDecode — Simple functions to encode and decode images in memory using OpenCV without having to save/read to disk

This entry is part 16 of 17 in the series blImageAPI -- BarbatoLabs Image API

Introduction I have seen many of these questions pop up everywhere on the web, like this stackoverflow.com question. But as it turns out, there are two very easy to use functions in opencv that allow us to encode/decode to/from several formats such as jpeg, png, pxm and many more. In…

Continue reading

blVideoThread2 — Another way to capture video using opencv in a parallel thread

This entry is part 15 of 17 in the series blImageAPI -- BarbatoLabs Image API

Introduction Just as I mentioned in my previous blVideoThread article, when capturing video, our programs can be limited by the slow speeds of the capturing hardware.  One way around this, is to obviously separate the capturing process from the main program flow. In this very short article I derive from…

Continue reading

blVideoThread — A simple class to capture video using opencv in a parallel thread

This entry is part 14 of 17 in the series blImageAPI -- BarbatoLabs Image API

Introduction This is a super short post about a simple class I made to capture video in a parallel thread. Usually, the problem is that the video capturing hardware, like webcams, is limited to thirty frames per second. If we were to capture video in series with the main program,…

Continue reading

blSignalProcessing — Fast Fourier Transforms and signal processing using OpenCV

This entry is part 13 of 17 in the series blImageAPI -- BarbatoLabs Image API

Introduction Signal processing is the technical area that deals with encoding/decoding information into/from discrete or continuous signals of any kind. Signals of interest could be coming from images, sounds, mechanical motion, celestial bodies, bacterial systems, or just about anything you can name, thus making signal processing a very important field…

Continue reading

Using OpenCV 2.2 within QTCreator in Windows

UPDATE:  If you’re trying to compile opencv look at this article. This is an update to my “Using OpenCV within QTCreator in Windows” post, that will show you how to quickly setup OpenCV 2.2 for QTCreator in Windows. (This of course will work for any IDE, not just QTCreator). So, let’s get down…

Continue reading

blImageShifting — Shift images by any desired amount in any direction for any purporse

This entry is part 12 of 17 in the series blImageAPI -- BarbatoLabs Image API

Table of contents1 Introduction2 List of functions2.1 ShiftImageByMRowsAndNCols Introduction In this very short article I will collect all the different functions I have and will develop to shift images by any number of pixels in any direction using the blImageAPI. Shifting images can come up in many occasions, although in…

Continue reading

blImageTiling — Algorithms to augment opencv images in various ways

This entry is part 11 of 17 in the series blImageAPI -- BarbatoLabs Image API

Table of contents1 Introduction2 List of functions2.1 AugmentTwoMatricesRowWise2.2 AugmentTwoMatricesColumnWise Introduction In this article I will collect all the different algorithms I have and will develop for ways to augment multiple images together using the blImageAPI. List of functions Here I list the current functions I have include so far. The…

Continue reading

blImagePencilSketch — A quick algorithm to turn an image or video into pencil sketch using opencv

This entry is part 10 of 17 in the series blImageAPI -- BarbatoLabs Image API

Introduction This is a very short post showing how we can turn an image or a video into a pencil sketch using the blImageAPI. The algorithm The idea is simple and looks as follows: Read in an image or video frame Copy the read image Invert the copied image Blur…

Continue reading

blImageBlending — Emulating photoshop’s blending modes in opencv

This entry is part 9 of 17 in the series blImageAPI -- BarbatoLabs Image API

Introduction When playing with images or videos, we often need to blend multiple images together, whether it’s for changing the color of an object, or if we’re experimenting with some fancy masking, blending is our friend. Photoshop offers several ways to blend two images, which they call: blending modes. As…

Continue reading