opencv在x86架构和arm架构的环境搭建

安装opencv,可以在c或c++中调用opencv

      1、从库中安装是最简单的方式,直接运行下面命令:

             sudo apt-get install libopencv-dev python-opencv

             如果安装出错,那么可以更新一下源,或换一个源。

      2、测试是否安装成功:

            运行命令:pkg-config --cflags --libs opencv出现下面信息

            licaibiao@ubuntu:~/test/OpenCV$ pkg-config --cflags --libs opencv

            -I/usr/local/include/opencv -I/usr/local/include -L/usr/local/lib -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -                         lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core

      3、运行一个简单的程序test.cpp:

            #include <opencv/cv.h>

            #include <opencv/highgui.h>

            #include <iostream>

            using namespace std;

            using namespace cv;

            int main()

            {

                char c;

                CvCapture* capture = cvCreateCameraCapture(0);//查看对应摄像头的是几号

                if (!capture)

                {

                    printf("Fail\n");

                }

                IplImage* src;

                for (;;)

               {

                   src = cvQueryFrame(capture);

                   cvShowImage("Input", src);

                   c = waitKey(10);

                   if (c == 27) break;

               }

              return 0;

            }

      4、编译方法:

        a、通过cmake编译

              首先添加一个CMakeLists.txt文件,内容如下:

                      project(test)

                      find_package(OpenCV REQUIRED)

                      add_executable(test test)

                      target_link_libraries(test ${OpenCV_LIBS})

              然后cmake,

              之后再make,

              生成可执行文件test。

              ./test。

        b、通过g++编译

              执行命令:g++ test.cpp -o test `pkg-config --cflags --libs opencv`

                   注意:上面有两个 `pkg-config --cflags --libs opencv` 点号 ,是键盘1左边的那个符号。

              生成可执行文件 test。

              ./test。

      5、出现问题:

        如果出现./test: error while loading shared libraries: libopencv_highgui.so.3.2: cannot open shared object file: No such file or directory 错误,那是动态链接库的路径没有添加好,可按下面的方式添加:

        1、用vim打开/etc/ld.so.conf,注意要用sudo打开获得权限,不然无法修改,如:sudo vim /etc/ld.so.conf,在文件最后中加上一行 /usr/local/lib

        2、运行:

            sudo ldconfig

        3、修改bash.bashrc文件:

            sudo vim /etc/bash.bashrc

        4、在文件末尾加入:

            PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

            export PKG_CONFIG_PATH

        5、最后执行:

            source /etc/bash.bashrc

安装opencv,可以在python中直接调用opencv

     首先需确认python环境为3.5。

     然后通过命令安装:sudo pip3 install opencv-python

     报错/var/cache/apt/archives/相关,通过以下命令进行安装:

          sudo dpkg -i --force-overwrite /var/cache/apt/archives/python-problem-report_2.0.1-0ubuntu9_all.deb

          sudo apt-get -f install

     查看opencv版本:

          pkg-config --modversion opencv

**************************************************************************************************************************

**************************************************************************************************************************

**************************************************************************************************************************

以上是在x86架构的环境搭建。

下面是arm架构的环境搭建。

在arm架构的opencv环境搭建,可以在python中直接调用opencv的API

在Ubuntu上编译arm架构的opencv库,然后将编译好的库打包上传到arm架构中。(后续放编译好库的链接)

首先执行:
tar zxcf python3_cv2.tar.gz
mv python3_cv2/python3.5/site-packages/cv2.cpython-35m-aarch64-linux-gnu.so /usr/local/lib/python3.5/dist-packages/
rm python3_cv2/python3.5/ -r
mv python3_cv2/* /usr/local/lib/

验证在python的opencv使用是否可行

运行报错,在执行:
sudo apt install python3-numpy

发布了26 篇原创文章 · 获赞 34 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/qq_36662437/article/details/97627520