Image Transformer Update (Color Space Visualizer Added)

I recently updated Image Transformer. New GUI, new functions and lots of fixes and optimizations.

Below are some screenshots that demonstrate its usage.

Here is the description of the recent update as it is seen in Google Play.

This program allows you to perform Fourier transform and color space analysis on images from gallery and taken from camera.

Using this application you can:
* View any image from your images gallery or taken using the camera
* Use basic editing tools to resize or rotate the images
* Use Fourier transformation tab to perform DFT (Discreet Fourier Transform) and perform Inverse DFT on the images
* Apply masks to different parts of the Fourier transformation of the image and perform Inverse DFT to view the changes in the original images
* Perform Canny transform on the images
* Perform Color Space Conversion From/To RGB, HSV, YUV and other major Color Spaces
* Save the result image to your phone’s memory



Notes:
Masking the Fourier transformation can be achieved by drawing rectangles over the transformed image. It is also possible to apply an image that is taken from camera or opened from gallery as a binary threshold mask. Do not forget to perform Inverse Fourier to see the results of masking.

Finally:
This program is intended to be used by image processing and machine vision enthusiasts, researchers and university students who need to experiment with Fourier transformation and Color Space Conversions. It is built totally using open source components such as Qt and OpenCV and parts of the source code can be requested using the “Contact Me” page at my website.

Use the following button to download the most recent version from Google Play.

image transformer download



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:

https://play.google.com/store/apps/details?id=com.amahta.ImageTransformer

trans_logo



OpenCV Feature Points Comparison Program (Executable + Source Code)

This program allows you to benchmark algorithms in OpenCV related to object detection using key points. It allows you to set all the required parameters using a simple interface and search for an object in a scene and view the results. This program is written in C++ using Qt and it uses OpenCV libraries.
Please note that this program should only be used for educational purposes. In my case I was using it for research purposes and as a tool for deciding which algorithm I should use in my programs.

Continue reading “OpenCV Feature Points Comparison Program (Executable + Source Code)”

How to connect to a COM library using Qt (An example of how to change Skype status using Qt and Skype4COM.DLL)

I wrote this program some time ago  to change my Skype status to Online and Away at different hours during the day. I decided I could share the source code because it is a good example on how to connect to a COM library using Qt.



Following should be noted about the source code provided in this post.

  • “skype4comlib” is produced using “dumpcpp” tool so you don’t need to create it yourself, and I also didn’t create it myself 🙂
    • Please refer to this link to get information on how to use dumpcpp.
  • Skype4COM library can be found here (usually)
    • C:Program Files (x86)Common FilesSkypeSkype4COM.DLL

Post a comment if there is anything confusing about the source code.

To test it just make sure Skype is running and just run the two Qt projects included in the source code.

Download



Qt Build Configure Options



I usually need to select a variety of options for building Qt depending on what I need and what I don’t need and strangely enough it is not easy to find the list of available options in the documentations so here it is.

Below is the list of all configure options for building Qt. It is taken from Qt 5.5 configure file which can be found under qtbase.

Continue reading “Qt Build Configure Options”

Add Administrator Level Privileges to Your Qt Program

Include the following in your project’s PRO file to have Administrator level privileges added to your program.

Following should be noted while using this:
1. This will only work if you are using a Microsoft Visual C++ compiler and Windows OS
2. Your OS might ask you for Administrator password or confirmation when you try to run your executable. This depends on how your OS is configured.
3. Qt Creator needs to be started as Administrator in order to run a program (for debugging) that has the following lines in its PRO file.

win32-msvc* {
    CONFIG += embed_manifest_exe
    QMAKE_LFLAGS_WINDOWS += $$quote( /MANIFESTUAC:\"level=\'requireAdministrator\' uiAccess=\'false\'\" )
}


How to build Qt 5.5 Static Libraries using any Microsoft Visual C++ Compiler

Following steps will help you with building Qt 5.5 Static Libraries with any MSVC Compiler. I have used MSVC2010 in this example but it should be the same for any compiler version from 2005 to 2015 (Visual Studio 2005 (8.0), VC++ 14.0)

Note that building Qt like this will remove all dependencies meaning there won’t be any need for MSVC dlls)

Continue reading “How to build Qt 5.5 Static Libraries using any Microsoft Visual C++ Compiler”

Introduction to Support Vector Machines OpenCV 3.0.0 Example (Working version)

Following is the slightly modified version of the example for “Introduction to Support Vector Machines” that is working with OpenCV v.3.0.0 (Current version on OpenCV website only works with version 2.4.X)

I assume that you have installed OpenCV 3.0.0 on your computer successfully and you know how to add library references etc. If you have any questions please put a comment or use the “Contact Me” page.

Continue reading “Introduction to Support Vector Machines OpenCV 3.0.0 Example (Working version)”