Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/imageprocessor/cv4j
The target is to set up a high quality and real-time image process and machine learning library which is implemented in pure java. The framework can run application on java desktop and android platform.
https://github.com/imageprocessor/cv4j
android cv java kotlin rxjava2
Last synced: about 1 month ago
JSON representation
The target is to set up a high quality and real-time image process and machine learning library which is implemented in pure java. The framework can run application on java desktop and android platform.
- Host: GitHub
- URL: https://github.com/imageprocessor/cv4j
- Owner: imageprocessor
- License: apache-2.0
- Created: 2016-12-18T08:22:29.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2022-03-07T14:07:50.000Z (almost 3 years ago)
- Last Synced: 2024-08-03T17:21:37.221Z (5 months ago)
- Topics: android, cv, java, kotlin, rxjava2
- Language: Java
- Homepage:
- Size: 11.2 MB
- Stars: 843
- Watchers: 57
- Forks: 151
- Open Issues: 15
-
Metadata Files:
- Readme: README-ENG.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# cv4j
[![License](https://img.shields.io/badge/license-Apache%202-lightgrey.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)
[![Build Status](https://travis-ci.org/imageprocessor/cv4j.svg?branch=master)](https://travis-ci.org/imageprocessor/cv4j)
[![](https://jitpack.io/v/imageprocessor/cv4j.svg)](https://jitpack.io/#imageprocessor/cv4j)The target is to set up a high quality and real-time image process and machine learning library which is implemented in pure java. The framework can run application on java desktop and android platform.
![](logo.png)
# The latest version
Module|cv4j|rxcv4j
---|:-------------:|:-------------:
The latest version|[![](https://jitpack.io/v/imageprocessor/cv4j.svg)](https://jitpack.io/#imageprocessor/cv4j)|[![](https://jitpack.io/v/imageprocessor/cv4j.svg)](https://jitpack.io/#imageprocessor/cv4j)# Download and use
## 1.Download cv4j separately```groovy
implementation 'com.github.imageprocessor.cv4j:cv4j:0.1.2'
```## 2.Download rxcv4j
rxcv4j is packaged with RxJava2.x, if you download this module, you don’t need to download cv4j.
```groovy
implementation 'com.github.imageprocessor.cv4j:rxcv4j:0.1.2'
```Functions currently implemented:
![](cv4j.png)# Common filters
| Filter name | effect | Remarks |
| ------------- |:-------------:| :-------------:|
|BoxBlurFilter|盒子模糊,支持水平与垂直经向模糊,模糊半径通常为奇数1、3、5、7、9、11、15|Fast fuzzy algorithm|
|CarveFilter|浮雕效果, 支持两种浮雕类型,根据boolean参数决定使用哪一种|Pixel difference calculation
|ColorFilter|颜色匹配,支持12种颜色风格转换(相当于12个滤镜), 基于查找表实现,速度极快|LUT加速计算|
|ConBriFilter|调整图像对比度与亮度,默认是提升对比,降低亮度,默认值分别为1.2, 0.7|对比度与亮度调整|
|EmbossFilter|轧花效果,基于跟浮雕效果类似,但是更加灵活,可以执行更多像素值校正|轧花效果|
|ExposureFilter|曝光效果,基于图像像素值取反,有一种类似光学相机曝光照片的效果|光爆效果
|FastEPFilter|边缘保留滤波-基于积分图的边缘保留滤波,是一种很好的噪声抑制算法,常用来实现人脸美化的关键步骤|边缘保留|
|FloSteDitheringFilter|抖动效果-基于错误扩展的抖动算法,实现像素点离散填充与二值化显示|抖动效果|
|GammaFilter|伽马校正,基于光学相机拍照之后,经常需要做此操作|伽马校正|
|GaussianBlurFilter|高斯模糊,基于高斯公式的图像模糊,比盒子模糊有更好的效果,但是速度较慢|高斯模糊|
|GaussianNoiseFilter|高斯噪声-产生高斯随机噪声,在图像中使用高斯随机噪声|高斯噪声|
|GlowFilter|光线效果,在图像中模仿自然光线照射|光线效果|
|GradientFilter|梯度效果,基于图像一阶导数算子实现的梯度效果,很好的显示了图像主要轮廓与边界|梯度效果|
|MeansBinaryFilter|黑白效果, 基于图像均值实现图像二值化效果|黑白效果|
|MosaicFilter|马赛克效果,基于积分图实现的图像马赛克效果,速度快效果好,支持矩形马赛克|马赛克效果|
|MotionFilter|移动效果,基于模糊与几何形变实现的图像模糊移动效果|移动效果|
|NatureFilter|自然系滤镜,根据参数选择,总计有八种自然风格的颜色滤镜(相当于8个滤镜)|自然系效果|
|OilPaintFilter|油画效果,基于轮廓与颜色分布实现的油画效果,逼真模拟秋日风情|油画效果|
|SepiaToneFilter|怀旧风格, 经典的图像怀旧风格滤镜,一秒生成|怀旧风格|
|SinCityFilter|邪恶之城,基于像素值局部变化的滤镜,可以根据输入参数调整阈值范围与对比颜色值|邪恶之城|
|SpotlightFilter|探照灯效果,基于中心像素距离而调整图像亮度的,产生亮度扩展效果|探照灯滤镜|
|StrokeAreaFilter|铅笔画效果, 模仿铅笔模糊实现, 可以将输入图像变了写生铅笔画,细节多少根据参数决定|铅笔画效果|
|VignetteFilter|边框效果,给图像加上立体边框,默认边框为黑色,可以通过输入参数调整边框大小与边框颜色|立体边框|
|WaterFilter|水波纹效果-模拟水波纹扩展效果,在输入图像中|
|WhiteImageFilter|增白亮度-通过参数可以调整图像亮度,有照片增白效果|增白效果|# 空间卷积滤镜
| filter | 名称 | 作用 |
|:-------------|:-------------| :-------------|
|ConvolutionHVFilter |卷积|模糊或者降噪|
|MinMaxFilter|最大最小值滤波|去噪声|
|SAPNoiseFilter |椒盐噪声|增加噪声|
|SharpFilter |锐化|增强|
|MedimaFilter |中值滤波|去噪声|
|LaplasFilter |拉普拉斯|提取边缘|
|FindEdgeFilter |寻找边缘|梯度提取|
|SobelFilter |梯度|获取x、y方向的梯度提取|
|VarianceFilter |方差滤波|高通滤波|
|MaerOperatorFilter |马尔操作|高通滤波|
|USMFilter |USM|增强|# 联系方式
cv4j QQ交流群:492962708cv4j slack协同管理:[Join the Slack team for cv4j](https://cv4j.slack.com/join/shared_invite/MTg5MDE1NDk2NDA1LTE0OTU4NzM2MjAtMjI3YTg0YzkyMA)
cv4j的系列文章:http://www.jianshu.com/nb/10401400
# ChangeLog
[版本更新记录](CHANGELOG.md)# Contributing
[Pull requests](https://help.github.com/categories/collaborating-with-issues-and-pull-requests/) are welcome; see the [contributor guidelines](CONTRIBUTING.md) for details.