Posts tagged ‘C++’

C++ Recursive Directory Search Under Linux

I was trying to search for some code examples on how to do a recursive directory search under Linux using C++ the other day. But to my surprise, I could not find any place that offers a complete example. So I decided to post my code here after I created my own and hopefully you will find it helpful. Continue reading ‘C++ Recursive Directory Search Under Linux’ »

Timing Methods in C++ Under Linux

Measuring the execution time for code sections can be done in multiple ways in C++. Except for the time resolution issue, different timing methods worked relatively the same in single processor environment. As multi-core processors become more prevalent however, we need to be careful at choosing the correct timing mechanism as not all such routines measure the wall time elapsed. Continue reading ‘Timing Methods in C++ Under Linux’ »

Magick++ Missing Delegate Error

As I wrote last time, I did a clean Ubuntu 9.04 install on my main PC. Continue reading ‘Magick++ Missing Delegate Error’ »

Canny Edge Detection Auto Thresholding

In the example I gave in “Interfacing IPP with Magick++“, I illustrated how to use Intel’s Integrated Performance Primitives (IPP) to perform edge detection. One issue with Canny edge detection algorithm is that we need to specify a high threshold and a low threshold. How to select those threshold values affect the quality of the detected edge greatly. And in my previous example, the threshold values were chosen manually. In this blog post, I will examine a couple of simple methods that can be used to automatically determine the threshold values. Continue reading ‘Canny Edge Detection Auto Thresholding’ »

C++ IDEs Under Linux

So far I have been mainly using KDevelop and Code::Blocks as my C++ development IDEs. Recently, I started using NetBeans IDE for C++ and I started to like it quite a bit. Continue reading ‘C++ IDEs Under Linux’ »

An Image Class Based On IPP

A couple of weeks ago, I wrote about how to interface Integrated Performance Primitives (IPP) with Magick++. While IPP offers excellent performance advantages, it does not come with the easiest programming model. Fortunately, it is easy enough to create a C++ wrapper on top of IPP and provide an easier to use programming interface. Continue reading ‘An Image Class Based On IPP’ »

Interfacing IPP with Magick++

Intel’s Integrated Performance Primitives (IPP) is a low level C++ library. It provides routines that are highly optimized on Intel processors. I recently started using it because its vast speed advantage in signal and image processing applications. Continue reading ‘Interfacing IPP with Magick++’ »

Matrix Multiplication Performance in C++

A few days ago, I ran across this article by Dmitri Nesteruk. In his article, he compared the performance between C# and C++ in matrix multiplication. From the data he provided, matrix multiplication using C# is two to three times slower than using C++ in comparable situations. Continue reading ‘Matrix Multiplication Performance in C++’ »

PD1001 Webcam on Hardy Heron

I have an old webcam (Creative PD1001) which is not officially supported on Linux. Fortunately, Endpoints EPCAM USB Camera Driver is known to work with PD1001 on many Linux distros. Continue reading ‘PD1001 Webcam on Hardy Heron’ »

TBB Mandelbrot Set

In an earlier post, I created a simple prime finding program using Intel’s TBB (Thread Building Block). The main benefit of using TBB is that threading and thread synchronization mechanism are abstracted away within the TBB library so we do not need to deal with threads explicitly. Also, TBB is optimized for performance and scales nicely as the number of processing unit increases. Continue reading ‘TBB Mandelbrot Set’ »

Code::Blocks Settings for Qt Development

Qt is a cross-platform object oriented C++ framework for application development. Continue reading ‘Code::Blocks Settings for Qt Development’ »

A Simple TBB Program: TBB Prime

I have been playing around with Intel’s Threading Building Block for a while and have started to really appreciate its simplicity and elegance: Instead of thinking in threads and thread synchronizations, one can just simply concentrate on the problem on the hand. Continue reading ‘A Simple TBB Program: TBB Prime’ »