Ëü²»½ö¹¦ÄÜÇ¿´ó£¬¶øÇÒ¿ªÔ´Ãâ·Ñ£¬Îª¿ª·¢ÕßÌṩÁ˷ḻµÄËã·¨ºÍ¹¤¾ß£¬¹ã·ºÓ¦ÓÃÓÚÈËÁ³Ê¶±ð¡¢ÎïÌå¼ì²â¡¢Í¼ÏñÔöÇ¿¡¢ÊÓÆµ´¦ÀíµÈ¶à¸öÁìÓò
¶ÔÓÚÔÚLinuxϵͳÉϹ¤×÷µÄ¿ª·¢ÕßÀ´Ëµ£¬ÕýÈ·ÅäÖÃOpenCVÊÇÂõÏò¸ßЧ¿ª·¢µÄµÚÒ»²½
±¾ÎĽ«Ïêϸ½éÉÜÈçºÎÔÚLinuxϵͳÉϸßЧÅäÖÃOpenCV£¬È·±£ÄãÄܹ»³ä·ÖÀûÓÃÕâһǿ´óµÄ¿â
Ò»¡¢×¼±¸¹¤×÷ ÔÚ¿ªÊ¼ÅäÖÃOpenCV֮ǰ£¬ÄãÐèҪȷ±£ÄãµÄLinuxϵͳÒѾ°²×°Á˱ØÒªµÄÒÀÀµÏî
ÕâЩÒÀÀµÏî°üÀ¨±àÒëÆ÷£¨ÈçGCC£©¡¢¹¹½¨¹¤¾ß£¨ÈçCMake£©¡¢ÒÔ¼°Í¼Ïñ´¦ÀíËùÐèµÄ¿â£¨Èçlibjpeg¡¢libpng¡¢libtiffµÈ£©
1.¸üÐÂϵͳÈí¼þ°ü Ê×ÏÈ£¬È·±£ÄãµÄϵͳÈí¼þ°üÊÇ×îеÄ
Õâ¿ÉÒÔͨ¹ýÔËÐÐÒÔÏÂÃüÁîÀ´Íê³É£º bash sudo apt update sudo apt upgrade 2.°²×°±ØÒªµÄÒÀÀµÏî ½ÓÏÂÀ´£¬°²×°OpenCV±àÒë¹ý³ÌÖÐËùÐèµÄÒÀÀµÏî
ÕâЩÒÀÀµÏî¿ÉÄÜÒòLinux·¢ÐаæµÄ²»Í¬¶øÓÐËù²îÒ죬µ«ÒÔÏÂÃüÁîÊÊÓÃÓÚ´ó¶àÊý»ùÓÚDebianµÄϵͳ£¨ÈçUbuntu£©£º bash sudo apt install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo apt install python3-dev python3-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev sudo apt install libdc1394-22-dev ×¢Ò⣺Èç¹ûÄãʹÓõÄÊÇPython 2£¬Ç뽫`python3-dev`ºÍ`python3-numpy`Ìæ»»Îª`python-dev`ºÍ`python-numpy`
¶þ¡¢ÏÂÔØºÍ±àÒëOpenCV 1.ÏÂÔØOpenCVÔ´´úÂë Äã¿ÉÒÔ´ÓOpenCVµÄ¹Ù·½ÍøÕ¾»òGitHub²Ö¿âÏÂÔØÔ´´úÂë
ÒÔÏÂÊÇ´ÓGitHub²Ö¿â¿Ë¡OpenCV²Ö¿âµÄÃüÁ bash cd ~ git clone https://github.com/opencv/opencv.git git clone https://github.com/opencv/opencv_contrib.git `opencv`²Ö¿â°üº¬ÁËOpenCVµÄÖ÷Òª¹¦ÄÜ£¬¶ø`opencv_contrib`²Ö¿âÔò°üº¬Á˶îÍâµÄÄ£¿éºÍʵÑéÐÔ¹¦ÄÜ
2.´´½¨¹¹½¨Ä¿Â¼ ÔÚOpenCVÔ´´úÂëĿ¼Ï´´½¨Ò»¸öÓÃÓÚ¹¹½¨µÄÊä³öĿ¼£º bash cd opencv mkdir build cd build 3.ÅäÖÃCMake ʹÓÃCMakeÅäÖÃOpenCVµÄ¹¹½¨Ñ¡Ïî
ÕâÀïÐèÒªÖ¸¶¨OpenCVÔ´´úÂëĿ¼¡¢`opencv_contrib`Ä£¿éĿ¼ÒÔ¼°°²×°Ä¿Â¼
´ËÍ⣬Ä㻹¿ÉÒÔ¸ù¾ÝÐèÒªÆôÓûò½ûÓÃÌØ¶¨µÄ¹¹½¨Ñ¡Ïî
bash cmake -DCMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D WITH_CUDA=OFF .. ×¢Ò⣺¸ù¾ÝÄãµÄϵͳºÍÐèÇó£¬Äã¿ÉÄÜÐèÒªµ÷ÕûÉÏÊöCMakeÑ¡Ïî
ÀýÈ磬Èç¹ûÄãûÓа²×°TBB£¨Threading Building Blocks£©£¬¿ÉÒÔ½«`-DWITH_TBB=ON`¸ÄΪ`-D WITH_TBB=OFF`
ͬÑùµØ£¬Èç¹ûÄã´òËãʹÓÃCUDA½øÐÐGPU¼ÓËÙ£¬ÄãÐèҪȷ±£CUDA¹¤¾ß°üÒѾ°²×°£¬²¢½«`-DWITH_CUDA=OFF`¸ÄΪ`-D WITH_CUDA=ON`
4.±àÒëºÍ°²×° ÅäÖÃÍê³Éºó£¬Ê¹ÓÃ`make`ÃüÁî±àÒëOpenCV
Õâ¿ÉÄÜÐèҪһЩʱ¼ä£¬¾ßÌåÈ¡¾öÓÚÄãµÄϵͳÐÔÄܺÍÅäÖÃÑ¡Ïî
bash make -j$(nproc) sudo make install sudo ldconfig `make -j$(nproc)`ÃüÁî»áÀûÓÃÄãµÄËùÓÐCPUºËÐÄÀ´¼ÓËÙ±àÒë¹ý³Ì
±àÒëÍê³Éºó£¬Ê¹ÓÃ`sudo make install`ÃüÁOpenCV°²×°µ½Ö¸¶¨µÄĿ¼£¨ÔÚ±¾ÀýÖÐΪ`/usr/local`£©
×îºó£¬Ê¹ÓÃ`sudo ldconfig`ÃüÁî¸üÐÂϵͳµÄ¶¯Ì¬Á´½Ó¿â»º´æ
Èý¡¢ÑéÖ¤°²×° °²×°Íê³Éºó£¬ÄãÐèÒªÑéÖ¤OpenCVÊÇ·ñÕýÈ·°²×°²¢¿ÉÓÃ
Õâ¿ÉÒÔͨ¹ý±àдһ¸ö¼òµ¥µÄC++»òPython³ÌÐòÀ´ÊµÏÖ
1.C++ÑéÖ¤
´´½¨Ò»¸öÃûΪ`test.cpp`µÄÎļþ£¬²¢Ìí¼ÓÒÔÏ´úÂ룺
cpp
include