# JavaCVP **Repository Path**: mythos-tech/javacv-plus ## Basic Information - **Project Name**: JavaCVP - **Description**: JavaCV Plus 旨在提供更简单、更强大的图像、视频和音频处理能力。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 3 - **Created**: 2025-05-23 - **Last Updated**: 2025-08-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JavaCV Plus [![Java Version](https://img.shields.io/badge/Java-8+-blue.svg)](https://openjdk.java.net/) [![JavaCV Version](https://img.shields.io/badge/JavaCV-1.5.9-green.svg)](https://github.com/bytedeco/javacv) [![Build Status](https://img.shields.io/badge/build-passing-brightgreen.svg)](#) [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) JavaCV Plus 是一个基于 [JavaCV](https://github.com/bytedeco/javacv) 的增强库,旨在提供更简单、更强大的图像、视频和音频处理能力。 ## ✨ 主要特性 ### 🚀 核心功能 - **流畅的链式API设计** - 提供直观易用的方法链调用 - **平台自动检测** - 智能识别当前运行平台,自动加载相应依赖 - **高性能处理** - 基于JavaCV的原生性能,支持多线程并发处理 - **内存管理优化** - 自动资源管理,防止内存泄漏 ### 📸 图像处理 - **基础操作** - 调整大小、旋转、裁剪、格式转换 - **图像增强** - 亮度、对比度、饱和度、锐化、模糊 - **水印功能** - 文字水印、图片水印,支持透明度和位置控制 - **质量分析** - 图像质量评估和详细报告生成 - **批量处理** - 高效的并发批量图像处理 ### 🎬 视频处理 - **视频编辑** - 裁剪、拼接、调整分辨率和帧率 - **格式转换** - 支持多种视频格式之间的转换 - **压缩优化** - 智能压缩,平衡文件大小和质量 - **水印添加** - 为视频添加图片或文字水印 ### 🎵 音频处理 - **基础处理** - 音量调整、音调调整、淡入淡出 - **音频效果** - 回声、混响、均衡器 - **音频编辑** - 裁剪、压缩、格式转换 - **批量处理** - 支持多文件并发处理 - **质量控制** - 音频质量评估和优化 ### 🔧 开发工具 - **性能监控** - 内置处理时间和资源使用监控 - **调试支持** - 详细的调试信息和中间结果保存 - **Spring Boot集成** - 提供starter模块,一键集成到Spring Boot项目 ## 📦 项目结构 ``` javacv-plus-parent/ ├── javacv-plus-core/ # 核心功能模块 ├── javacv-plus-platform/ # 平台检测和适配 ├── javacv-plus-extensions/ # 扩展功能(图像分析、批量处理等) ├── javacv-plus-starter/ # Spring Boot自动配置 ├── javacv-plus-tools/ # 命令行工具和转换器 └── javacv-plus-examples/ # 使用示例和演示代码 ``` ## 🛠️ 环境要求 - **Java**: 8 或更高版本 - **Maven**: 3.6+ (用于构建) - **操作系统**: Windows、Linux、macOS - **架构**: x86_64、ARM64(Apple Silicon) ## 📥 安装说明 ### Maven依赖 在您的 `pom.xml` 中添加以下依赖: ```xml com.javacv.plus javacv-plus-starter 1.0.0-SNAPSHOT ``` ### 从源码构建 ```bash # 克隆项目 git clone https://github.com/your-username/javacv-plus.git cd javacv-plus # 编译安装 mvn clean install -DskipTests # 运行测试 mvn test ``` ## 🚀 快速开始 ### 1. 基础图像处理 ```java import com.javacv.plus.extensions.image.ImageProcessor; public class QuickStart { public static void main(String[] args) { // 链式API处理图像 ImageProcessor.of("input.jpg") .resize(800, 600) .gaussianBlur(2.0) .brightness(1.1) .addTextWatermark("JavaCV Plus") .save("output.jpg"); } } ``` ### 2. 音频处理示例 ```java import com.javacv.plus.extensions.audio.AudioProcessor; public class AudioExample { public static void main(String[] args) { // 链式API处理音频 AudioProcessor.of("input.mp3") .volume(1.5) // 增加音量 .fadeIn(2.0) // 2秒淡入 .equalizer(1.2, 0.8) // 调整均衡器 .reverb(0.5) // 添加混响 .fadeOut(3.0) // 3秒淡出 .save("output.mp3"); } } ``` ### 3. 批量处理图像 ```java import com.javacv.plus.extensions.batch.BatchProcessor; public class BatchExample { public static void main(String[] args) { BatchProcessor processor = new BatchProcessor(4); // 4个并发线程 // 批量调整大小 processor.resizeImages("input/", "output/", 1920, 1080); // 批量格式转换 processor.convertImageFormat("input/", "output/", "png"); processor.shutdown(); } } ``` ### 4. 图像质量分析 ```java import com.javacv.plus.extensions.analysis.ImageAnalyzer; import com.javacv.plus.extensions.analysis.ImageQualityReport; public class AnalysisExample { public static void main(String[] args) { Mat image = opencv_imgcodecs.imread("test.jpg"); ImageQualityReport report = ImageAnalyzer.analyzeQuality(image); System.out.println(report.generateSummary()); image.release(); } } ``` ### 5. Spring Boot集成 在 `application.yml` 中添加配置: ```yaml javacv: platform: auto-detect: true image: output-format: jpg quality: 90 performance: thread-pool-size: 4 monitoring-enabled: true ``` 然后在代码中直接使用: ```java @Autowired private ImageProcessor imageProcessor; @Autowired private BatchProcessor batchProcessor; ``` ## 📋 运行示例 项目提供了多个示例程序来演示各种功能: ```bash # 快速测试 - 验证基本功能 mvn exec:java -pl javacv-plus-examples -Dexec.mainClass="com.javacv.plus.examples.QuickTest" # 高级功能演示 mvn exec:java -pl javacv-plus-examples -Dexec.mainClass="com.javacv.plus.examples.AdvancedFeaturesDemo" # 性能测试 mvn exec:java -pl javacv-plus-examples -Dexec.mainClass="com.javacv.plus.examples.PerformanceTest" ``` ## 📖 文档 - [功能操作指南](功能操作文档.md) - 详细的功能说明和使用方法 - [API文档](#) - 完整的API参考文档 - [配置说明](#) - 详细的配置参数说明 ## 🤝 贡献指南 我们欢迎各种形式的贡献! 1. Fork 本项目 2. 创建您的特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交您的更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启一个 Pull Request ## 📜 许可证 本项目基于 Apache License 2.0 许可证开源 - 查看 [LICENSE](LICENSE) 文件了解详情。 ## 🔗 相关链接 - [JavaCV 官方网站](https://github.com/bytedeco/javacv) - [OpenCV 文档](https://docs.opencv.org/) - [FFmpeg 文档](https://ffmpeg.org/documentation.html) ## 💬 支持与反馈 如果您在使用过程中遇到问题或有建议,请: - 提交 [Issue](https://github.com/your-username/javacv-plus/issues) - 发送邮件至:support@javacv-plus.com - 加入我们的讨论群:[Telegram](https://t.me/javacv_plus) --- ⭐ 如果这个项目对您有帮助,请给我们一个 Star!