Using OpenGL in Qt for Processing Images

Utilizing the power of the GPU, and OpenGL in particular, for Computer Vision and Image Processing purposes has always been a favorite topic of mine. It’s quite easy to find many examples around (even among official Qt example projects) to deal with and learn more about this topic but I figured there are no clear and step by step examples for people who are absolutely new to it. This post aims to cover a number of topics, including the following, in a step by step and simple manner:

  • How to use QOffscreenSurface class for off-screen rendering using OpenGL
  • How to use QOpenGLFramebufferObject to create Frame Buffer objects
  • How to use Vertex Shaders to perform Geometric Image Transformations
  • How to use Fragment Shaders to perform Image Filtering and per-pixel operations
  • How to convert a texture to QImage
Continue reading “Using OpenGL in Qt for Processing Images”

Image Transformer (Fourier Transform App for Android)

UPDATE: This application is updated. Please read this post for more information.

My new application is a tool for for performing Fourier transformation on images. You can then apply masks to the Fourier representation of image and revert back (perform Inverse Fourier Transform) to see how the image gets affected.

For more information about Fourier Transform you can check out this link.

It is built using OpenCV and Qt and it is programmed completely in C++. I hope it would be useful for Image Processing and Machine Vision enthusiasts, researchers and students. It also contains some useful tips and tricks for programming Android applications using Qt and OpenCV such as:

  • How to open Android image gallery in Qt (Default interface)
  • How to capture images using default Android camera interface
  • How to crop images displayed on a QLabel
  • etc.

Source code (any part of it actually 🙂 ) is available upon request. Please send your requests using the Contact Me page.

Please consider supporting this application by giving a decent rating in Google Play.

For an example of Fourier transform using OpenCV please check out this link.

You can also see this link for more information about Fourier transform.

You can download this application from Google Play using the link below:



Opticount is a highly accurate sheet-counting machine used mostly in packaging industry. This machine uses sophisticated electronic components (sensors and cameras) along with recently developed methods and algorithms in the field of artificial intelligence, image processing and machine vision. Opticount is currently being manufactured and sold by Paxan (

Visit for more information!