开源C ++库的综合列表

开源 C ++ 库的综合列表:
PS:开源不等于免费,部分开源库在商用的时候还是要注意下其开源协议

1、通用

Boost - 大量通用库
Dlib - 网络、线程、图形界面、数据结构、线性代数、机器学习、XML 和文本解析、数值优化、贝叶斯网络等(Boost 许可证)
JUCE - 广泛、成熟、跨平台的 C ++ 工具包(GPL 许可证)
Folly - Facebook 开源库
Abseil - 来自 Google C ++ 库代码的开源集合
cxxomfort - C ++ 的 Backports 功能
Ultimate++ - 跨平台的快速应用程序开发框架
CAF
Better Enums - 具有 constexpr 支持的反射枚举
Smart Enum - “to_string”,“from_string” 以及更多内容

2、通讯

libnavajo - 轻巧但功能强大的 API,包括用于 Web 和 RESTful 应用程序开发的 http 服务器,支持 SSL、身份验证、cookie 和会话管理,包括 Websocket 服务器支持
C++ RESTful framework- C ++ 微框架,旨在嵌入到广泛的应用程序中
CPR - 现代 C ++ HTTP请求库
cpp-netlib - C ++ 网络库
cpp-redis - C ++ 11 Lightweight Redis 客户端
tacopie - C ++ 11 TCP 库
Boost.Beast - 建立在 Boost.Asio 之上的 HTTP 和 WebSocket 库
gsoap - 用于 XML 数据绑定的 C / C ++ 开发工具包
omniORB - C ++ 中最快,最完整,最便携的 CORBA ORB 实现
Unicomm - 异步网络,高级 TCP 通信框架
zeromq - 快速消息队列
libashttp - 异步 HTTP客户端库
The Silicon C++14 Web Framework - 快速而强大的 Web API(MIT)

3、图形用户界面

Dear ImGui
FLTK
nana[doc] - 现代 C ++ 风格的 GUI 编程
OWLNext
Switch
GTK+

glibmm
gtkmm
goocanvasmm
libglademm
libgnomecanvasmm
webkitgtk
flowcanvas
evince
Qt

Qt [ src ] [ doc ]
qwt5
libdbusmenu-QT
QuickQanava - 用于在 Qt / QML 应用程序中绘制有向图的 C ++ 14 库
QuickProperties - 用于 QObject / QtObject 属性版的 C ++ / QML 库

4、通用多媒体

SFM - 简单快速多媒体库
SDL - 通过图形 API(通常为 OpenGL 或 Direct3D)跨平台访问音频、键盘、鼠标、操纵杆和图形硬件
SIGIL - 用于文本、形状、输入、音频和 2D 图像的跨平台库
Cinder
openFrameworks

5、图像

cairomm
nux
pangomm
gegl
stb
Adobe/boost GIL - 高级通用库,专注于对 2D 图像进行操作的算法
GraphicsMagick - 以超过 88 种格式读取、书写和操作图像。
Skia Graphics Engine - Google 的核心图形库
绘制

plotutils
格式

libraw
openexr
qimageblitz
imagemagick
djvulibre
poppler
SVG++

6、音频

soundtouch
KFR - 快速、现代的 DSP 架构,DFT / FFT,音频重采样,FIR / IIR 滤波器,Biquad
Aquila - 跨平台 DSP 库

7、图像处理

OpenCV
DLIB
ITK
OTB

8、视频

crystalhd
mjpegtools
libmatroska
libVLC
gstreamermm

9、3D 图形

Vulkan
OpenGL
bgfx - “自带引擎 / 框架” 样式渲染库
Ogre3D
Diligent Engine- 一个现代的跨平台低级 3D 图形库。
GLEW - OpenGL 函数加载
GLAD - 可自定义的轻量级库,用于加载 OpenGL 函数
Visionaray - C ++ 光线跟踪模板库

10、游戏引擎架构

EntityX
ANAX
EntityPlus
EnTT
Box2D - 物理引擎

11、数学

线性代数

Boost.uBLAS
Eigen
Armadillo
Blitz++
IT++
Dlib - linear algebra tools
Blaze
ETL
优化

OptimLib - 用于非线性函数的 C ++ 11 数值优化方法库。

12、机器学习

stats++
liblinear
Dlib - 机器学习工具
MLPACK - 机器学习包
Shogun - 大型机器学习工具箱

13、容器

Boost.Any
Boost.Array
Boost.Bimap
Boost.Container
Boost.Fusion
Boost.Heap
Boost.Pointer 容器
Boost.Tuple
Boost.Variant

14、数据库

OTL
DTL
libpqxx
lmdb ++ - 用于 LMDB 嵌入式 B + 树数据库库的 C ++ 11 包装器。
mongocxx - MongoDB 的 C ++ 11 驱动程序库
MySQL 的 ++
ODB - C ++ 对象关系映射(ORM)
Pgfe - PostGres FrontEnd - PostgreSQL 的现代 C ++ 客户端 API

15、测试

Boost.Test
cppunit
Google Test
Catch2

16、嵌入式 / 实时

QP / C ++ - RTOS 内核,双 GPL
FreeRTOS C ++ 处理程序 - 处理程序,循环器,状态机,CLI,便携式
ETL - 嵌入式模板库 - C ++ 03,为低资源平台量身定制的便携式模板库
distortos - 面向对象的 C ++ RTOS,用于微控制器
μcuREST - 用于微控制器的 C ++ 11 REST / JSON 服务器框架

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CFAR(常规脉冲检测中的通用自适应反射)是一种信号处理技术,用于在复杂的背景噪声环境中确定目标的存在。这种技术被广泛应用于雷达检测、无线通信、声波处理等领域。CFAR通过在环境噪声中寻找目标信号,然后计算目标信号和周围噪声之间的区别,从而检测目标的存在。CFAR具有良好的适应性,能够自动适应环境噪声水平的变化,能够很好地应对不同的环境变化。 开源CFAR是一个基于C语言实现的工具包,提供了CFAR算法的实现和优化。它提供了丰富的函数,用于在不同条件下实现CFAR检测算法,包括CUT检测器、CA-CFAR检测器、GO-CFAR检测器等。此外,该开源具有高度的可定制性,可以方便地在不同环境和噪声条件下进行优化。开发人员可以将其集成到自己的应用程序中,以实现目标检测、噪声过滤等应用。 总之,开源CFAR是一个强大的信号处理工具,可以帮助开发人员快速实现目标检测、噪声过滤等功能,适合于雷达检测、通信系统、声学信号处理等多种应用。 ### 回答2: CFAR是一种常见的信号处理算法,全称为“恒虚警率自适应门限(Constant False Alarm Rate Adaptive Threshold)”。它的主要作用是在雷达信号处理中判断目标信号与杂波信号之间的差异,以便更准确地检测目标信号。 CFAR可以通过调整门限值来自适应地处理信号强度,以保证在杂波存在的情况下,仍能正确识别目标信号。因而CFAR算法在雷达目标检测、通信、无线电干扰等领域得到广泛应用。 为了方便CFAR算法的使用,有许多开源提供了对应的CFAR算法实现,例如MATLAB、Python和C++等。这些开源的出现极大地简化了使用CFAR的难度,使得开发人员可以更加轻松地将其应用于实际场景中。 不过,需要注意的是,CFAR算法存在着一些局限性,比如针对不同类型的杂波情况,需要选择不同的门限值,并且在低信噪比下可能出现误判等问题。因此,在使用CFAR算法时需要综合考虑其优缺点,选择合适的应用场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值