To detect the dominant points within an image first we must find the edges. In this example the edges are found using cvFindContours. The resulting contours are then processed to find the dominant points along the contour. This is done using the cvFindDominantPoints function, this function implements the IPAN99 algorithm… Read more »
In this example we threshold the image based on the position of the track bar. Then find contours on the image an display the contours as white lines. #include “stdafx.h” #include “cv.h” #include “highgui.h” // global variables IplImage* input = NULL; IplImage* gray = NULL; int threshold = 100; CvMemStorage*… Read more »
The cvThreshold function allows us to reject pixels above or below a set value while keeping the others. In this example the input image is separated into the RGB channels. Then we preform a threshold on the red channel, with a maximum value of 100. The result of this is… Read more »
To use the flood fill, first a seed point is selected, then all neighbouring pixels of a similar colour are converted to a uniform colour. In this example the seed point is at 200, 200 (shown by a blue circle). The neighbouring pixels are then flood filled with a red… Read more »
When creating Machine Vision and Image Processing Algorithms it is often useful to draw simple shape on to the image being processed. This simple example shows how to draw some basic shapes using OpenCV. #include “stdafx.h” #include “cv.h” #include “highgui.h” int _tmain(int argc, _TCHAR* argv[]) { // create the output… Read more »
To separate a multi channel image into the three component RGB channels, we can use the cvSplit function. The example below opens a RGB image and then using the cvSplit function creates three output images. #include “stdafx.h” #include “cv.h” #include “highgui.h” int _tmain(int argc, _TCHAR* argv[]) { // open and… Read more »
Here is the Hello World example code for OpenCV. This simple example creates a image called output, then the text “Hello World” is added to the image. #include “stdafx.h” #include “cv.h” #include “highgui.h” int _tmain(int argc, _TCHAR* argv[]) { // create image IplImage* output = cvCreateImage(cvSize(400, 200), 8, 3); //… Read more »
Image smoothing is often used in digital image processing to reduce noise or camera artifacts. An example of a common algortihm used to perform image smoothing is Gaussian. Gaussian filtering is done by convolving each pixel in the input image with a Gaussian Kernal and then summing to produce the… Read more »