First, you need to install
OpenCV as this has been dealt with severally I don't bother with
this. If you have not yet installed this have a look at this
tutorial
or just search Google for a tutorial that suits you.
Next step you would need to install Qt-creator. This can be done either via the Ubuntu Software Centre or by directly downloading the .bin installer from
here.
Now we can begin, launch QT creator and then
Go to File > New File or Project. Select a QT Console Application (Use a QT GUI Application if you OpenCV installation is configured to use QT and not GTK ) give the project a name e.g. “FirstQtProject”
You could leave the other
settings in the wizard as they are or change them to suit your own
projects. With the default settings, two files would be created: 'FirstQtProject.pro' ( this will vary depending on the Project Name you
have chosen) and 'main.cpp'. To run OpenCV programs in QT creator we
need to let the IDE know where to find the OpenCV libraries.
Open the .pro file
associated with the project and append the following lines at the end
of the file. This should be included in every OpenCV Project you
create but remember to change the include Path
"/usr/local/include/opencv2"
to the location of your OpenCV include directory on your PC.
#Change this to your include directory. INCLUDEPATH += "/usr/local/include/opencv2" LIBS += `pkg-config --cflags --libs opencv`If you don't have Pkg-config installed replace the last line with the following and replace “/usr/local/lib” with the location of the openCV libraries on your PC.
# Confirm the location of you opencv libraries and change appropriately. LIBS += usr/local/lib \ -lopencv_core \ -lopencv_highgui \ -lopencv_imgproc \ -lopencv_flann \ -lopencv_legacy \ -lopencv_ml \ -lopencv_features2d \ -lopencv_calib3dNow go to 'main.cpp' file and type in the following lines of code and press Ctrl+R to run it.
#include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> int main(void) { // Load an image from the disk and store in variable. cv::Mat image1 = cv::imread("/home/stephen/Pictures/download.jpg"); // Create a image display window called Figure1. cv::namedWindow("Figure1"); // Display image in Figure1. cv::imshow("Figure1", image1); // Wait until user closes the window or presses Esc Key. cv::waitKey(0); return 0; }The result should be an empty console window called "qtcreator_process_sub” and a window called “Figure1” containing the loaded image.
Please let me know if this was helpful and if there is tutorial you would like me to write mention it in the comments. Happy Coding!
Thanks...It works.. :)
ReplyDeleteAlthough, you could add:
If Qt-creator has been installed using apt-get (or the software center), go to Qt Creator settings and change the terminal to usr/bin/xterm -e
Hi!I've installed QT and OpenCV but when I build your example appear a Segmentation Fault and I dont understand it. Would you know what happen?
ReplyDeleteHi, Check that the image you are loading actually exists.
DeleteThank you. This is the first project I can run on my computer! It is quite encouraging!
ReplyDeleteSorry Sir,
ReplyDeleteI am getting this error.
sudo ./FirstQtProject /home/jithin/images_logo_lg.gif
./FirstQtProject: error while loading shared libraries: libopencv_core.so.2.4: cannot open shared object file: No such file or directory
//////////////////////////////////////////////////////////////////////////////////////
My *.pro file
QT += core
QT -= gui
TARGET = FirstQtProject
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
INCLUDEPATH += "/usr/local/include/opencv2"
LIBS += `pkg-config --cflags --libs opencv`
//////////////////////////////////////////////////////////////////////////////////////////////
Files in
cd /usr/local/include/opencv2
[jithin@localhost opencv2]$ ls
calib3d features2d highgui ml opencv.hpp stitching video
contrib flann imgproc nonfree opencv_modules.hpp superres videostab
core gpu legacy objdetect photo ts
////////////////////////////////////////////////////////////////////////////////////////////////////
Files in
cd /usr/local/lib
[jithin@localhost lib]$ ls
libopencv_calib3d.so libopencv_highgui.so.2.4.6 libopencv_stitching.so.2.4
libopencv_calib3d.so.2.4 libopencv_imgproc.so libopencv_stitching.so.2.4.6
libopencv_calib3d.so.2.4.6 libopencv_imgproc.so.2.4 libopencv_superres.so
libopencv_contrib.so libopencv_imgproc.so.2.4.6 libopencv_superres.so.2.4
libopencv_contrib.so.2.4 libopencv_legacy.so libopencv_superres.so.2.4.6
libopencv_contrib.so.2.4.6 libopencv_legacy.so.2.4 libopencv_ts.so
libopencv_core.so libopencv_legacy.so.2.4.6 libopencv_ts.so.2.4
libopencv_core.so.2.4 libopencv_ml.so libopencv_ts.so.2.4.6
libopencv_core.so.2.4.6 libopencv_ml.so.2.4 libopencv_video.so
libopencv_features2d.so libopencv_ml.so.2.4.6 libopencv_video.so.2.4
libopencv_features2d.so.2.4 libopencv_nonfree.so libopencv_video.so.2.4.6
libopencv_features2d.so.2.4.6 libopencv_nonfree.so.2.4 libopencv_videostab.so
libopencv_flann.so libopencv_nonfree.so.2.4.6 libopencv_videostab.so.2.4
libopencv_flann.so.2.4 libopencv_objdetect.so libopencv_videostab.so.2.4.6
libopencv_flann.so.2.4.6 libopencv_objdetect.so.2.4 libosmscoutmapqt.a
libopencv_gpu.so libopencv_objdetect.so.2.4.6 libosmscoutmapqt.la
libopencv_gpu.so.2.4 libopencv_photo.so libosmscoutmapqt.so
libopencv_gpu.so.2.4.6 libopencv_photo.so.2.4 libosmscoutmapqt.so.0
libopencv_highgui.so libopencv_photo.so.2.4.6 libosmscoutmapqt.so.0.0.0
libopencv_highgui.so.2.4 libopencv_stitching.so pkgconfig
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Thanks Sir ,
ReplyDeleteMy Problem Solved by
http://stackoverflow.com/questions/12335848/opencv-program-compile-error-libopencv-core-so-2-4-cannot-open-shared-object-f
Now i m in to OpenCv..
Need Some more help on the go..
Thank You Sir... Thank You very much
this code is running but the image viewer window is not opening so .... kindly help me why is this happening ......
ReplyDeleteHey. I urgently need your help.
ReplyDeleteI am given a project which I need to complete in 30 days. 7 days have passed and I am unable to find anything. Can you please help me?
Tis is my task given by my professor:
Your job is to make a video display console in QT using QT creator. The Soft should take video from a BNC cable (via any suitable converter) on ubuntu, qt platform.