Installation and use of OpenCV3.4.11 under Ubuntu 18.04


1, Install OpenCV

(1) Installation package

(2) Configuration environment  

  2, Pictures of OpenCv usage examples

  3, Video of an example of OpenCv

(1) Get camera permissions for virtual machine

  (2) Video playback

  (3) Video recording

4, References

1, Install OpenCV

(1) Installation package

1. Download OpenCV 3.4.11 data package. Domestic fast download address: OpenCV/opencv_contrib domestic fast download | cloud technology blog

  2. Decompression

Before decompressing the package, copy to the home directory folder, and then decompress it.

3. Install opencv

Enter the command to enter the extracted folder

cd opencv-3.4.11


Enter command:   sudo su   Then execute the installation command

sudo apt-get install cmake


Then install the dependent libraries:

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev


  Create the build folder, and then enter the created folder

mkdir build
cd build


  Compile the parameter using cmake, or use the second default parameter

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
cmake ..

4. Use make to create a compiler

sudo make

5. Installation

  After compiling, enter the command:

sudo make install

Wait for the installation to complete.

(2) Configuration environment  

Enter command:

sudo gedit /etc/

  After that, you can modify the opencv.conf file. You can find that the file is empty. Add the installation path of OpenCV Library: / usr/local/lib

Click save, and then return to the terminal. You can find that there is a warning message, there is no impact, or the command is input normally.  


sudo ldconfig

Update the system shared link library and enter:

sudo gedit /etc/bash.bashrc

  Configure Bash and modify the bash.bashrc file.

  The text editor opens

  Add at the end of the document


  Click save, then exit... And enter the command to make the configuration effective.

source /etc/bash.bashrc


Input instruction: sudo updatedb   To update  

Input command:

pkg-config --modversion opencv

  Check the version of opencv we installed and find that it is 3.4.11. The installation is over.

  2, Pictures of OpenCv usage examples

First, create a folder for storing code. Here I name it code1. Enter the following command to create and enter the folder

mkdir code1
cd code1

  Create a test1.cpp file

vim test1.cpp

  Then enter the following code:

#include <opencv2/highgui.hpp>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
	CvPoint center;
    double scale = -3; 

	IplImage* image = cvLoadImage("lena.jpg");
	argc == 2? cvLoadImage(argv[1]) : 0;
	cvShowImage("Image", image);
	if (!image) return -1; 	center = cvPoint(image->width / 2, image->height / 2);
	for (int i = 0;i<image->height;i++)
		for (int j = 0;j<image->width;j++) {
			double dx = (double)(j - center.x) / center.x;
			double dy = (double)(i - center.y) / center.y;
			double weight = exp((dx*dx + dy*dy)*scale);
			uchar* ptr = &CV_IMAGE_ELEM(image, uchar, i, j * 3);
			ptr[0] = cvRound(ptr[0] * weight);
			ptr[1] = cvRound(ptr[1] * weight);
			ptr[2] = cvRound(ptr[2] * weight);

	Mat src;Mat dst;
	src = cvarrToMat(image);
	cv::imwrite("test.png", src);

    cvNamedWindow("test",1);  	imshow("test", src);
	 return 0;

  Execute the following command to compile the file

g++ test1.cpp -o test1 `pkg-config --cflags --libs opencv`

  Prepare a picture in the same folder with the file name lena.jpg

Input instruction:. / test

  You can see that lena.jpg generates a test.png, and the picture is different

  3, Video of an example of OpenCv

(1) Get camera permissions for virtual machine

Under windows, use the shortcut key Win + R, enter services.msc, and press enter.

  Locate the VMware USB Arbitration S... Service and make sure it starts.

  Click virtual machine, and then click Settings.

Select "USB controller", set "USB compatibility" to "USB 3.0", and click OK.

Select "virtual machine", then select "removable device", and then select the camera name of your device, such as Quanta USB2.0 VGA UVC WebCam  , Finally, click "connect", and then click "OK" in the pop-up window.  

  After the connection is successful, you can see the green dot in the lower right corner of the virtual machine.

  (2) Video playback

Create a test2.cpp file

Enter the following code:

#include <opencv2/opencv.hpp>
using namespace cv;
int main()
	//Read video from camera
	VideoCapture capture("man.mp4");
	//Cycle through each frame
		Mat frame;//Define a Mat variable to store the image of each frame
		capture >> frame;//Read current frame
		if(frame.empty())//Play finished, exit
		imshow("Read video frame",frame);//Displays the current frame
		waitKey(30);//Cover up 30ms
	return 0;

Download a video from the browser. Here is a man.mp4

  Compile test2.cpp

g++ test2.cpp -o test2 `pkg-config --cflags --libs opencv`

Output results


  You can find the video playing.

  (3) Video recording

Create a test3.cpp file  

  Enter the following code:

Turn on the computer camera, control the video recording with a blank space, and ESC exits and saves the video RecordVideo.avi
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;

int main()
	//Turn on the computer camera
	VideoCapture cap(0);
	if (!cap.isOpened())
		cout << "error" << endl;
		return 0;

	//Get the resolution of cap
	int w = static_cast<int>(cap.get(CV_CAP_PROP_FRAME_WIDTH));
	int h = static_cast<int>(cap.get(CV_CAP_PROP_FRAME_HEIGHT));
	Size videoSize(w, h);
	VideoWriter writer("RecordVideo.avi", CV_FOURCC('M', 'J', 'P', 'G'), 25, videoSize);
	Mat frame;
	int key;//Record keyboard keys
	char startOrStop = 1;//0 starts recording video; 1 end recording video
	char flag = 0;//Recording flag 0 - not recording; 1 - recording

	while (1)
		cap >> frame;
		key = waitKey(100);
		if (key == 32)//Press the space to start recording and pause recording to switch back and forth
			startOrStop = 1 - startOrStop;
			if (startOrStop == 0)
				flag = 1;
		if (key == 27)//Press ESC to exit the whole program and save the video file to disk

		if (startOrStop == 0 && flag==1)
			writer << frame;
			cout << "recording" << endl;
		else if (startOrStop == 1)
			flag = 0;
			cout << "end recording" << endl;
		imshow("picture", frame);
	return 0;

Compile test3.cpp with the input code  

g++ test3.cpp -o test3 `pkg-config --cflags --libs opencv`

Output results:


  An. avi file is generated, and frames are generated continuously, and the camera is turned on.

  The installation and use of OpenCv is over.

4, References

Learning OpenCV from scratch (I) -- Installation of OpenCV_ PittAndJolie's blog - CSDN blog learn OpenCV from scratch tips: Here you can add the directories of all articles in the series of articles. The directories need to be added manually. For example, tips on the use of pandas in Chapter 1 Introduction to Python machine learning: after writing articles, the directories can be generated automatically, How to generate the help document article directory on the right? Learn OpenCV preconditions from scratch 1. OpenCV installation 2. Introduction to OpenCV basic modules 1. Import and storage 2. Read in data summary preconditions [tips]: the installation environment of this tutorial is as follows: operating system: windows10VS version: 2017 tip: the following is the main content of this article. The following cases are for reference 1 Installation of OpenCV installation tutorial_ Phoebezr's blog - CSDN blog_ Opencv download and install Opencv3.4.6 installation tutorial download opencv download opencv_contribCmake configuration and generation of Visual Studio 2017 environment configuration test how to insert a beautiful piece of code, generate a list suitable for you, create a table, set the content to be centered, left and right, SmartyPants create a custom list, Download opencv, and download the required opencv version from the official website: Download opencv.e


Tags: OpenCV Deep Learning

Posted on Fri, 08 Oct 2021 06:49:48 -0400 by nielsene