首页 文章 精选 留言 我的

精选列表

搜索[一站式在线联络平台],共10000篇文章
优秀的个人博客,低调大师

场景化封装,一站式使用,普惠AI集成 ——阿里云发布智能媒体管理产品

一、导语 近日,阿里云发布了智能媒体管理(Intelligent Media Management)服务, 通过分布式计算处理能力关联授权的云存储,提供便捷的海量多媒体数据一键分析,并通过该分析过程构建价值元数据,更好支撑内容检索。 二、背景介绍 随着智能手机的普及、无人机的流行,业界产生了海量的图片、视频等多媒体数据;同时,网络也在飞速发展,特别是4G的推广,让这些数据的保存、分享发生了巨大的变化,从而也带来了媒体数据各行业的新趋势。我们亲身体验到通信方式从短信变成语音,浏览内容从文字变成图片、从JPG静态图片变成GIF动态图片、再到短视频;从去年开始,直播也火热起来,成为一种流行的时尚。这些迅速的变化趋势,反应了一个共同的特点,就是“交互的信息量越丰富、越实时,用户越容易被吸引,越会产生新的价值”。 如图中所示行业,都在利用最新的人工

优秀的个人博客,低调大师

ImgFlux v0.1 发布: 高性能图片在线处理微服务

一个开箱即用的图片上传、实时缩放、OCR 文字翻译微服务,采用读写分离架构,支持 MinIO/AWS S3/阿里云 OSS 多种存储后端,Docker Compose 一键部署。 为什么做 ImgFlux? 在内容驱动的产品中,图片处理是一个看似简单却极其复杂的基础设施: 用户上传原图后,不同终端需要不同尺寸和格式的缩略图 跨国业务需要将图片上的文字实时翻译成目标语言 图片存储需要高可用、低成本,且随时可迁移 处理性能直接影响用户体验和服务器成本 现有的云服务(Cloudinary、Imgix)功能强大但价格高昂,且数据不在自己手中。ImgFlux的目标是提供一个可自托管、高性能、功能完整的开源替代方案。 功能 功能 原图 处理后 改变尺寸 独钓白边让主体更大 扩展图片 尺寸不变压缩质量 图片文字翻译(Korean→English) 图片文字翻译(Korean→Chinese) 图像功能规划 系统架构 ImgFlux 采用读写分离的微服务架构,将上传和下载拆分为独立服务,共享核心图片处理引擎: ┌─────────────────────────────────────────┐ │ imgFlux-engine │ │ ┌─────────────┐ ┌──────────────────┐ │ │ │ GM4Java │ │ TextTranslation │ │ │ │ Pool (GM) │ │ (Tesseract OCR) │ │ │ └─────────────┘ └──────────────────┘ │ └──────────┬──────────────┬───────────────┘ │ │ ┌────────────────────┘ └────────────────────┐ │ │ ┌───────────┴────────────┐ ┌─────────────────┴───────────┐ │ Upload API (:8080) │ │ Download API (:8081) │ │ ┌──────────────────┐ │ │ ┌───────────────────────┐ │ │ │ REST Upload │ │ │ │ On-the-fly Resize │ │ │ │ Admin Dashboard │ │ │ │ Remote Image Fetch │ │ │ │ Raw Upload │ │ │ │ OCR Text Translation │ │ │ └──────────────────┘ │ │ └───────────────────────┘ │ └───────────┬────────────┘ └──────────────┬──────────────┘ │ │ ▼ ▼ ┌──────────────────────────────────────────────────────────────────────────────┐ │ MinIO / AWS S3 / Alibaba OSS │ └──────────────────────────────────────────────────────────────────────────────┘ │ ▼ ┌───────────┐ │ CDN │ └───────────┘ 模块职责 模块 职责 技术栈 imgFlux-engine 核心图片处理引擎,GM 连接池,OCR 文字翻译 GraphicsMagick, gm4java, Tesseract, Tess4J imgFlux-upload-api 图片上传、管理后台、文件管理 UI Spring Boot 3.5, ReactJS, Spring Security imgFlux-download-api 实时缩略图生成、远程图片处理、URL 驱动 API Spring Boot 3.5, RestTemplate 核心特性 1. URL 驱动的实时压缩 Download API 提供两种风格的 URL 接口,适合 CDN 缓存和前端直接拼接: Query 参数风格: GET /api/v1/thumbnail/forge/local/abcd/image.jpg?width=300&height=200&quality=85&format=WEBP 路径参数风格(CDN 友好): GET /api/v1/thumbnail/resize/local/300x200q85/abcd/image.jpg 路径参数格式说明: 参数 格式 示例 说明 尺寸 WxH 300x200 宽x高,可省略其一 质量 q85 q80 JPEG/WebP 压缩质量 扩展 ex ex 强制扩展到指定尺寸 裁剪 trim trim 去除空白边缘 翻译 rans:src:dst rans:ko:en OCR 文字翻译 2. 远程图片处理 支持直接处理远程 URL 上的图片,无需先下载再上传: GET /api/v1/thumbnail/forge/remote/https://example.com/photo.jpg?width=400&format=AVIF 这使得 ImgFlux 可以作为图片代理使用,对第三方图片进行实时处理和格式转换。 3. OCR 图片文字翻译 这是 ImgFlux 最独特的功能之一。通过 Tesseract OCR 检测图片上的文字,调用 Google Translate 翻译后,用双线性插值算法自然擦除原文并渲染译文: GET /api/v1/thumbnail/forge/local/abcd/korean-banner.jpg?srcLang=ko&toLang=en 处理流程: 原图 → Tesseract OCR 检测文字区域 → 按 Unicode 范围过滤非目标语言文字 → 调用 Google Translate 翻译 → 双线性插值采样周围像素,自然擦除原文 → Java2D 自适应字号渲染译文 → 输出处理后图片 支持的语言:韩语、日语、英语、西班牙语、法语、德语、简体中文、繁体中文。 4. 内容寻址存储 上传时使用 SHA-256 对处理后的图片内容计算哈希,前 4 位作为目录名,其余作为文件名: SHA-256: a3f2b8c9d1e4... 存储路径: a3f2/b8c9d1e4...jpg 这种设计带来两个好处: 天然去重:相同内容的图片自动复用存储路径 均匀分布:哈希前缀作为目录,避免单目录文件过多 5. 多存储后端 通过ObjectStorageService接口统一抽象,只需修改配置文件即可切换存储后端: img-flux: storage: type: minio # 可选: minio, aws, aliyun options: minio: endpoint: http://localhost:9000 bucket: original-image 启动时自动检查并创建 Bucket,开箱即用。 快速部署 Docker Compose 一键启动 docker-compose up -d docker-compose.yml包含三个服务: 服务 端口 说明 MinIO 9000/9001 对象存储 + 管理控制台 Upload API 8081 图片上传与管理后台 Download API 8082 实时缩略图服务 API 使用示例 上传原图: curl -X POST http://localhost:8081/api/v1/upload/raw \ -F "file=@photo.jpg"# 返回: Raw image uploaded successfully. Object name: a3f2/b8c9d1e4....jpg 上传并处理: curl -X POST http://localhost:8081/api/v1/upload \ -F "file=@photo.jpg" \ -F "width=800" \ -F "quality=85" \ -F "format=WEBP" 实时缩放: http://localhost:8082/api/v1/thumbnail/resize/local/400x300q85/a3f2/b8c9d1e4....jpg 远程图片处理 + 文字翻译: http://localhost:8082/api/v1/thumbnail/forge/remote/https://example.com/banner.jpg?width=600&srcLang=ko&toLang=en 技术栈总览 层次 技术 语言 Java 17 框架 Spring Boot 3.5 图片处理 GraphicsMagick + gm4java + im4java OCR Tesseract 5 + Tess4J 对象存储 MinIO / AWS S3 / 阿里云 OSS 前端 Thymeleaf + Spring Security 容器化 Docker + Docker Compose 构建 Maven 多模块 项目结构 imgFlux/ ├── pom.xml # 父 POM,统一依赖版本管理 ├── docker-compose.yml # 一键部署 ├── imgFlux-engine/ # 核心引擎(共享模块) │ ├── gm/ # GraphicsMagick 处理 │ │ ├── Gm4JavaBatchCommand # GM 连接池管理 │ │ ├── GMImageProcessor # 图片处理器 │ │ └── ImageProcessingService # 处理服务接口 │ ├── service/ │ │ ├── storage/ # 存储抽象层 │ │ │ ├── ObjectStorageService # 统一存储接口 │ │ │ ├── MinIOStorageService # MinIO 实现 │ │ │ ├── AwsS3StorageService # AWS S3 实现 │ │ │ └── AliyunOssStorageService # 阿里云 OSS 实现 │ │ └── translate/ │ │ └── TextTranslationService # OCR 文字翻译 │ └── config/ # 配置类 ├── imgFlux-upload-api/ # 上传服务 │ ├── controller/api/ # REST API │ ├── controller/web/ # 管理后台 │ └── resources/templates/ # Thymeleaf 页面 └── imgFlux-download-api/ # 下载/缩放服务 ├── api/ # 缩略图 API └── utils/ # URL 参数解析 总结 ImgFlux 是一个面向实战的图片处理微服务,它解决了几个核心痛点: 性能:通过 GM 连接池避免进程级开销,适合高并发场景 灵活性:URL 驱动的 API 设计,前端按需拼接参数,CDN 友好 差异化:内置 OCR 文字翻译,适合跨境电商和内容本地化场景 可部署性:Docker Compose 一键启动,存储后端可插拔 项目仍在持续迭代中,欢迎 Star 和贡献代码。 项目地址:GitHub - ImgFlux: https://github.com/cloud-media-forge/imgFlux 技术栈:Java 17/Spring Boot 3.5/GraphicsMagick/Tesseract OCR/MinIO/Docker 许可协议:Open Source

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册