Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/paddlepaddle/flycv
FlyCV is a high-performance library for processing computer visual tasks.
https://github.com/paddlepaddle/flycv
arm assembly avx compute-vision computer-vision cv flycv high-performance image-processing lightweight neon opencv paddlepaddle sse
Last synced: 2 days ago
JSON representation
FlyCV is a high-performance library for processing computer visual tasks.
- Host: GitHub
- URL: https://github.com/paddlepaddle/flycv
- Owner: PaddlePaddle
- License: apache-2.0
- Created: 2022-11-06T13:49:02.000Z (about 2 years ago)
- Default Branch: develop
- Last Pushed: 2023-06-02T02:43:47.000Z (over 1 year ago)
- Last Synced: 2024-12-13T20:11:28.701Z (9 days ago)
- Topics: arm, assembly, avx, compute-vision, computer-vision, cv, flycv, high-performance, image-processing, lightweight, neon, opencv, paddlepaddle, sse
- Language: C++
- Homepage:
- Size: 28.1 MB
- Stars: 585
- Watchers: 30
- Forks: 61
- Open Issues: 34
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
**[English](README_EN.md)** | **简体中文**
## 🔥 FlyCV —— 高性能计算机图像系统
![license](https://img.shields.io/hexpm/l/plug?color=%2300CD66&logo=apache&style=flat)
![GitHub star](https://img.shields.io/github/stars/paddlepaddle/flycv?color=%23FFB90F&logo=github)
![GitHub forks](https://img.shields.io/github/forks/paddlepaddle/flycv?color=pink&logo=github)
![GitHub issues](https://img.shields.io/github/issues/paddlepaddle/flycv?color=%2377BFFF&logo=github)
![main language](https://img.shields.io/github/languages/top/paddlepaddle/flycv?color=%23EEE685&logo=c%2B%2B)
![GitHub contributors](https://img.shields.io/github/contributors/paddlepaddle/flycv?color=orange&logo=github)
![Pull Request](https://img.shields.io/github/issues-pr/paddlepaddle/flycv?color=FFDAB9&logo=github)
![Commit activity](https://img.shields.io/github/commit-activity/m/paddlepaddle/flycv?color=F0FFFF&logo=github)
![Platforms](https://img.shields.io/static/v1?label=platforms&message=android|armlinux|windows|linux|ios&color=BBFFFF&logo=gnometerminal)**FlyCV** 是一个**高性能**的计算机图像处理库,当前已支持**C/C++/Javascript**编程接口。
FlyCV已在 **ARM** 架构下做了很多优化,相比其他图像处理库性能更为出色。
同时,也开展其他CPU和异构平台的性能优化工作,例如x86,RISC-V,GPU,DSP等。除了速度更快之外,FlyCV提供了更加细粒度的编译选项控制,使得在库体积上**非常轻量**,可以**按需编译** 。
另外,在编译阶段,还提供了**自定义命名空间**的选项支持,可以方便快速地解决相同依赖库冲突的问题。接下来通过几个例子,对比一下FlyCV和OpenCV的性能和效果:
可以看到,在执行效果基本一致的情况下,FlyCV的速度明显快于OpenCV。
## :zap: 性能评测
FlyCV使用benchmark测评框架,在多款机型上进行了测评,以下是FlyCV和OpenCV在6款高中低端机型上、不同分辨率下的各算子平均加速比。
## :closed_book: 快速开始
立刻体验一下吧,可通过几个非常简单的demo示例,帮助大家快速掌握集成使用的流程。
具体可以参见文档:[:book: 快速使用](https://github.com/PaddlePaddle/FlyCV/wiki/%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B)
在代码库的samples目录下,提供了armlinux和android平台的调用demo。
## :notebook: API 文档
为了便于大家集成使用,FlyCV的接口设计和OpenCV非常接近,可以方便的进行迁移,我们也提供了相关的迁移文档进行指导:[从OpenCV快速迁移至FlyCV](https://github.com/PaddlePaddle/FlyCV/wiki/%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B#migrate-from-opencv)。
FlyCV的接口可以通过下面的接口文档了解更多的细节:[📖 API 文档](https://github.com/PaddlePaddle/FlyCV/wiki/API%E6%96%87%E6%A1%A3)
## :notebook_with_decorative_cover: 编译文档
FlyCV支持大多数主流的操作系统,包括android、armlinux、macos(x86 & arm)、windows,以及ios。
针对不同平台都提供了相关的编译脚本,可以很方便的在本机进行源码编译。相比OpenCV,为了保证**极致轻量化**,我们还提供粗、细粒度两种功能模块编译选项,能够真正支持按需编译,在体积要求非常严格的应用中可以带来大幅优化。
根据下面的文档可以从源码进行编译:[:book: 编译手册](https://github.com/PaddlePaddle/FlyCV/wiki/%E7%BC%96%E8%AF%91%E6%89%8B%E5%86%8C)
我们也提供了不同平台预编译完成的通用库,可以直接进行下载使用:[预编译库](https://github.com/PaddlePaddle/FlyCV/releases)
**注:** 本地环境可能差别较大,如果无法运行可以尝试从源码编译。
## :pushpin: 升级日志
查看每个版本的变化:[升级日志](https://github.com/PaddlePaddle/FlyCV/releases)
## :two_men_holding_hands: 技术交流
扫描下面的二维码,加入我们的技术交流群,一起探讨计算机视觉领域的图像处理方法和优化工作。
微信群:
如流群:
:) 请点击页面右上角star收藏,实时关注项目的最新进展,感谢您助力FlyCV成长。
## :pencil2: 贡献代码
非常欢迎大家一起来贡献代码,我们提供了详细的文档,可以进行快速集成,具体细节可以查阅 [如何贡献](./CONTRIBUTING.md) ,在这里感谢每一个人的努力付出,共建一个优秀的视觉图像处理系统。
## :copyright: License
[Apache-2.0](./LICENSE)