zoukankan      html  css  js  c++  java
  • CV学习日志:CV开发之常用库及其头文件

    CV开发过程中,通常会涉及以下库:

    (1)语言/视觉:C、CPP、QT、OpenCV

    (2)通信/模拟:ROS、Gazebo、Webots

    (3)日志/数学:Eigen、Gflags、Glog、Ceres、Spdlog

    (4)其它经典库:Octomap、

    用到这些库的主要头文件如下:

    //1.C headers and Reference: http://www.cplusplus.com/reference/clibrary/
    //1.1 C89 headers(18)
    //#include <assert.h>
    //#include <ctype.h>
    //#include <errno.h>
    //#include <float.h>
    //#include <iso646.h>
    //#include <limits.h>
    //#include <locale.h>
    //#include <math.h>
    //#include <setjmp.h>
    //#include <signal.h>
    //#include <stdarg.h>
    //#include <stddef.h>
    //#include <stdio.h>
    //#include <stdlib.h>
    //#include <string.h>
    //#include <time.h>
    //#include <wchar.h>
    //#include <wctype.h>
    ////1.2 C99 headers(6)
    //#include <complex.h>
    //#include <fenv.h>
    //#include <inttypes.h>
    //#include <stdbool.h>
    //#include <stdint.h>
    //#include <tgmath.h>
    ////1.3 C11 headers(5)
    //#include <stdalign.h>
    //#include <stdatomic.h>
    //#include <stdnoreturn.h>
    //#include <threads.h>
    //#include <uchar.h>
    
    //2.CPP headers(50) and Reference: http://en.cppreference.com/w/cpp/header
    //2.1 C++98 and C++03 headers(50)
    #include <cassert>
    #include <cctype>
    #include <cerrno>
    #include <cfloat>
    #include <ciso646>
    #include <climits>
    #include <clocale>
    #include <cmath>
    #include <csetjmp>
    #include <csignal>
    #include <cstdarg>
    #include <cstddef>
    #include <cstdio>
    #include <cstdlib>
    #include <cstring>
    #include <ctime>
    #include <cwchar>
    #include <cwctype>
    #include <deque>
    #include <list>
    #include <vector>
    #include <set>
    #include <map>
    #include <queue>
    #include <stack>
    #include <algorithm>
    #include <string>
    #include <iterator>
    #include <memory>
    #include <new>
    #include <ios>
    #include <iosfwd>
    #include <iomanip>
    #include <iostream>
    #include <istream>
    #include <ostream>
    #include <fstream>
    #include <sstream>
    #include <streambuf>
    #include <exception>
    #include <stdexcept>
    #include <complex>
    #include <limits>
    #include <numeric>
    #include <valarray>
    #include <locale>
    #include <bitset>
    #include <functional> 
    #include <typeinfo>
    #include <utility>
    //2.2 C++11 and C++14 headers(25)
    #include <typeindex>
    #include <type_traits>
    #include <chrono>
    #include <initializer_list>
    #include <tuple>
    #include <scoped_allocator>
    #include <cstdint>
    #include <cinttypes>
    #include <system_error>
    #include <cuchar>
    #include <array>
    #include <forward_list>
    #include <unordered_map>
    #include <unordered_set>
    #include <random>
    #include <ratio>
    #include <cfenv>
    #include <codecvt>
    #include <regex>
    #include <atomic>
    #include <thread>
    #include <mutex>
    #include <shared_mutex>
    #include <future>
    #include <condition_variable>
    
    //3.Qt5.x headers
    #include <QtGui/QtGui>
    #include <QtCore/QtCore>
    #include <QtWidgets/QtWidgets>
    #include <QtNetwork/QtNetwork>
    #include <QtSerialPort/QtSerialPort>
    #include <QtMultimedia/QtMultimedia>
    #include <QtMultimediaWidgets/QtMultimediaWidgets>
    #include <QtSql/QtSql>
    #include <QtCharts/QtCharts>
    #include <QtDataVisualization/QtDataVisualization>
    
    //4.OpenCV4.x headers
    #include <opencv2/opencv.hpp>
    #include <opencv2/core/async.hpp>
    #include <opencv2/core/utils/logger.hpp>
    #include <opencv2/core/utils/filesystem.hpp>
    #include <opencv2/viz.hpp>
    #include <opencv2/plot.hpp>
    #include <opencv2/aruco.hpp>
    #include <opencv2/xphoto.hpp>
    #include <opencv2/ximgproc.hpp>
    #include <opencv2/xobjdetect.hpp>
    //#include <opencv2/xfeatures2d.hpp>
    #include <opencv2/ccalib/multicalib.hpp>
    //<opencv2/calib3d/calib3d_c.h> //for CvLevMarq
    
    //5.Spdlog&Eigen&Gflags&Glog&Ceres headers
    #include <Eigen/Eigen>
    #include <gflags/gflags.h>
    #include <glog/logging.h>
    #include <ceres/ceres.h>
    #include <spdlog/spdlog.h>
    #include <spdlog/async.h>
    #include <spdlog/fmt/bin_to_hex.h>
    #include <spdlog/sinks/null_sink.h>
    #include <spdlog/sinks/dup_filter_sink.h>
    #include <spdlog/sinks/ostream_sink.h>
    #include <spdlog/sinks/basic_file_sink.h>
    #include <spdlog/sinks/daily_file_sink.h>
    #include <spdlog/sinks/rotating_file_sink.h>
    #include <spdlog/sinks/stdout_sinks.h>
    #include <spdlog/sinks/stdout_color_sinks.h>
    
    //6.ROS2&Gazebo11&Webots202x headers
    //Reference: another article
    
    //9.Namespace used often
    using namespace std;
    using namespace cv;
    using namespace QtDataVisualization;
    
    //10.Additional headers
    //10.1Octomap headers
    #include <octomap/OcTree.h>
    #include <octomap/ColorOcTree.h>
    #include <octomap/OcTreeStamped.h>
    #include <octomap/CountingOcTree.h>
    #include <octomap/MapCollection.h>
  • 相关阅读:
    2015多校1006.First One
    2015多校.MZL's endless loop(欧拉回路的机智应用 || 构造)
    LUXURY 8
    矩阵快速幂模板
    博弈入门
    cf558c(bfs)
    LUXURY 7
    dfs序 + RMQ = LCA
    双端队列
    UVa-401 Palindromes
  • 原文地址:https://www.cnblogs.com/dzyBK/p/13818153.html
Copyright © 2011-2022 走看看