• Stars
    star
    7,039
  • Rank 5,283 (Top 0.2 %)
  • Language
    C
  • License
    Other
  • Created over 13 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

C-based/Cached/Core Computer Vision Library, A Modern Computer Vision Library

Build Status

  • GitHub Action: Build Status on GitHub Ubuntu Build Status on GitHub macOS
  • Linux x64: Build Status on Linux
  • Raspberry Pi 4: Build Status on Raspberry Pi 4
  • Jetson Nano: Build Status on Jetson Nano
  • AGX Xavier: Build Status on AGX Xavier

Backstory

I set to build ccv with a minimalism inspiration. That was back in 2010, out of the frustration with the computer vision library then I was using, ccv was meant to be a much easier to deploy, simpler organized code with a bit caution with dependency hygiene. The simplicity and minimalistic nature at then, made it much easier to integrate into any server-side deployment environments.

Portable and Embeddable

Fast forward to now, the world is quite different from then, but ccv adapts pretty well in this new, mobile-first environment. It now runs on Mac OSX, Linux, FreeBSD, Windows*, iPhone, iPad, Android, Raspberry Pi. In fact, anything that has a proper C compiler probably can run ccv. The majority (with notable exception of convolutional networks, which requires a BLAS library) of ccv will just work with no compilation flags or dependencies.

Modern Computer Vision Algorithms

One core concept of ccv development is application driven. Thus, ccv ends up implementing a handful state-of-art algorithms. It includes a close to state-of-the-art image classifier, a state-of-the-art frontal face detector, reasonable collection of object detectors for pedestrians and cars, a useful text detection algorithm, a long-term general object tracking algorithm, and the long-standing feature point extraction algorithm.

Clean Interface with Cached Image Preprocessing

Many computer vision tasks nowadays consist of quite a few preprocessing layers: image pyramid generation, color space conversion etc. These potentially redundant operations cannot be easily eliminated within a mature API. ccv provides a built-in cache mechanism that, while maintains a clean function interface, effectively does transparent cache for you.

For computer vision community, there is no shortage of good algorithms, good implementation is what it lacks of. After years, we stuck in between either the high-performance, battle-tested but old algorithm implementations, or the new, shining but Matlab algorithms. ccv is my take on this problem, hope you enjoy it.

Deep Learning

https://libnnc.org

License

ccv source code is distributed under BSD 3-clause License.

ccv's data models and documentations are distributed under Creative Commons Attribution 4.0 International License.

More Repositories

1

swift-diffusion

Swift
406
star
2

dflat

Structured Data Store for Mobile
Swift
300
star
3

klaus

A show-case of a state-of-the-art image classifier on iOS devices from libccv.org
C
137
star
4

s4nnc

Swift for NNC
Swift
61
star
5

rules_cuda

Smarty
19
star
6

docomputersdream

http://docomputersdream.org
JavaScript
18
star
7

swift-mujoco

Swift Binding for MuJoCo: https://mujoco.org/
Swift
18
star
8

co

Example implementation of coroutine in C
C
17
star
9

case

case is a simple test framework for c
C
17
star
10

parallable

A tiny javascript snippet to enable you write web worker simpler and easier
JavaScript
15
star
11

rfancontrol

Fan Control Program for my 4 RTX 2080 Ti Watercooling Workstation
C++
6
star
12

swift-fickling

Swift
6
star
13

cvwld

Weber's Local Descriptor
C++
6
star
14

swift-llm

Starlark
5
star
15

cubic

strip down version of libfreenect to experiment multi-Kinect devices collaboration
C
4
star
16

optic

Playground to test different approaches for CUDA kernel performance
Cuda
4
star
17

kmonkey

KMonkey automatically patches your program with its llvm intermediate code.
Shell
4
star
18

ndqi

Non-structural Data Query Interface
C
3
star
19

l1cs

minimize L1 norm with q constraint
C++
3
star
20

pwb

Pairwise Boosting
C++
3
star
21

cvess

Extended Self-Similarity Descriptor
C++
3
star
22

cvRBM

Restricted Boltzmann Machine implemented in 2008
C++
2
star
23

libnnc.org

HTML
2
star
24

model.php

A super simple model class for redis interaction
PHP
2
star
25

php-sdk

PHP SDK for the Facebook API
PHP
2
star
26

cvLMNN

Large Margin Nearest Neighbors implemented around 2008
C++
1
star
27

SteamRemoteDesktop

A dummy mac app such that I can use Steam Remote Play as a remote desktop.
Objective-C
1
star
28

swift-sentencepiece

SentencePiece's Swift wrapper.
Starlark
1
star
29

alter

C++
1
star
30

mopack

just for another resource packaging
C++
1
star
31

liuliu.me

source for liuliu.me
CSS
1
star