Java对图像的处理框架比较少,目前比较流行的有Jmagick以及Marvin,但Jmagick只能处理图像(上篇Java清除图片中的恶意信息(利用Jmagick)中对Jmagick已做过简略介绍),而Marvin不但可以处理图像,而且可以集成各种插件,操作视频,摄像头来达到各种效果。
Marvin 是一个Java开发的可扩展的图像处理框架,该框架主要提供以下几方面的功能:
- 基本图像操作;
- 从视频中捕获帧;
- 多线程的图像处理;
- 通过GUI界面集成插件;
- 插件性能分析;
- 通过插件进行功能扩展。
授权协议: GPL
开发语言: Java
操作系统: 跨平台
项目主页: http://marvinproject.sourceforge.net/en/index.html
目前插件提供的效果:
艺术化(马塞克,电视效果)、模糊、纹理、分割、变形、渲染、图案、直方图、边缘检测等等,
具体参考:http://marvinproject.sourceforge.net/en/plugins.html
截个电视效果的图大家看下:
使用方法:
1. 下载MarvinFramework_1.3.1(图像处理框架)和JMF1.2(Java媒体处理框架)
2. 将marvin_1.3.1.jar拷贝到你的lib目录,marvin整个文件夹拷贝到工程根目录,该文件夹包含了各种图片处理插件。
3. 若需要对视频处理,则将JMF1.2解压后的customizer.jar、jmf.jar、multiplayer.jar、mediaplayer.jar拷贝到你的工程lib目录,另外
该框架中还有一个jmf-2_1_1e-windows-i586.exe需要安装,这样才能操作你的摄像头,并释放必要的dll文件。
下面是个简单程序,演示了Marvin加载图片,修改大小后写重新生成图片的过程:
- package image;
-
import marvin.image.MarvinImage;
-
import marvin.io.MarvinImageIO;
-
-
-
-
-
-
-
public class MarvinTest
- {
-
-
-
-
-
-
-
public static void main(String[] args)
- {
-
String srcFile = "c://img//b.jpg"; //源文件
-
String dstFile = "c://img//bb.jpg"; //处理后的文件
-
MarvinImage image = MarvinImageIO.loadImage(srcFile);
-
MarvinImage backupImage = image.clone();
-
backupImage.resize(800, 600);
-
MarvinImageIO.saveImage(backupImage, dstFile);
- }
- }
可见Marvin的图片管理是通过类MarvinImageIO来完成的。
具体API参考:http://marvinproject.sourceforge.net/javadoc/
分享到:
相关推荐
总的来说,Marvin Image Processing Framework 是一个强大的图像处理工具,无论你是研究人员还是开发者,都可以利用这个开源框架快速构建起自己的图像处理系统,进行各种创新性的项目。其全面的功能、高效的性能和...
开源软件的性质使得Marvin3对社区开放,任何人都可以查看其源代码,提出改进意见,或者贡献新功能。这种开放的开发模式鼓励了创新,促进了语言的持续发展和优化。 从压缩包文件"marvin3_0.0.6"中,我们可以期待获取...
Marvin's AMD Utility 是一款专为AMD处理器设计的实用工具,它主要用来处理与CPUID相关的操作,尤其针对AMD平台的用户。CPUID是一个在x86架构处理器中广泛使用的功能,它允许软件查询和修改处理器的标识信息,如厂商...
通过以上分析,我们可以看出 Marvin 文章插件是一个利用 Silex 框架构建的、具有文章管理功能的微型 CMS。它融合了 Silex 的优势,提供了灵活的路由、数据库交互、模板渲染、服务管理等功能,满足了内容创建和管理的...
本节我们将详细介绍框架表示法的概念、特点和应用,并与语义网表示法进行比较。 2.5.1 框架表示法的概念 框架表示法是由Marvin Minsky在1975年提出的,旨在描述知识的结构和关系。框架是一种知识表示方法,用于...
在实际应用中,Marvin 可用于各种需要模糊逻辑处理的场景,如智能控制(例如自动驾驶汽车、无人机)、模糊决策支持系统、信号处理、图像识别等。通过可视化,开发者和非技术用户都能更好地理解和调整模糊规则,从而...
轻松获得更多成就Marvin融合了行为心理学的原理,可帮助您克服拖延,控制感并完成您的待办事项清单。 您对完美生产力应用程序的追求到此为止 Marvin是当今市场上功能最丰富且可定制的个人待办应用程序。而且,我们...
8. **中间件支持**:Marvin支持go-kit中的中间件机制,允许开发者插入自定义的处理逻辑,如日志记录、错误处理、请求跟踪等,增强了服务的可定制性和灵活性。 9. **开发和调试**:由于Go语言的特性,以及Google App...
Marvin-js是一个强大的JavaScript自动化测试框架,主要用于前端应用的测试。这个"marvin-demo"项目是一个基础的示例,用于展示如何使用marvin-js进行测试。它包含了一系列必要的文件和配置,帮助初学者快速理解和...
《PyPI官网下载:sdss-marvin-2.2.0.dev1.tar.gz——深入了解Python科学数据处理库》 PyPI(Python Package Index)是Python社区的重要资源库,它为全球Python开发者提供了一个集中下载和分享开源软件包的平台。在...
Marvin是仅基于GPU的神经网络框架,考虑了简单性,可入侵性,速度,内存消耗和高维数据。 依存关系 下载和。 您将需要向NVIDIA注册。 以下是设置cuDNN 5.1的一些其他步骤。 注意我们强烈建议您将不同版本的cuDNN安装...
4. **命令和事件处理**:Marvin 可能使用了装饰器来注册监听 Discord 事件(如消息发送、用户加入等)和自定义命令。用户可以通过在聊天中输入特定的指令与 Marvin 交互。 5. **扩展性**:为了实现更多功能,Marvin...
Marvin AI是一个专注于深度学习和人工智能的开源框架,它旨在简化和加速AI应用的构建过程,尤其是对于那些依赖于复杂模型和大数据的项目。 Marvin Engine Executor是Marvin AI中的一个重要执行器模块,它的主要职责...
轻松完成更多工作 马文(Marvin)结合了行为心理学的原理,可帮助您战胜拖延症,控制自己并完成待办事项清单。
快速开始审查Marvin是一个开放源代码的人工智能平台,致力于帮助数据科学家为复杂问题提供有意义的解决方案。 在标准化的大规模语言不可知体系结构的支持下,Marvin简化了探索和建模过程。入门创建一个新引擎创建一...
Marvin是可视化和分析MaNGA数据的终极工具。 它由MaNGA团队开发和维护。 安装 要轻松安装Marvin: pip install sdss-marvin 如果您想为Marvin的发展做出贡献,可以克隆此git repo,并以可编辑模式运行pip install,...
标题中的"PyPI 官网下载 | marvin_wtforms_alchemy-0.16.10-py2.py3-none-any.whl"表明我们正在讨论一个从Python Package Index (PyPI) 官方网站获取的软件包。PyPI是Python社区用来存储和分发第三方Python库的地方...
Marvin 用户插件是针对PHP 5.3开发的一个基于Silex框架的微型内容管理系统(CMS)。Silex是一款轻量级的PHP微框架,它提供了构建Web应用程序的基本工具,而Marvin-users则是专门为Silex设计的一款用户管理插件,用于...
使用Euphoria语言(www.rapideuphoria.com)编写的Jabber Instant Messaging网络(www.jabber.org)的Win32客户端。 使用XML皮肤格式完全可以皮肤化。
作为一款基于Java开发的软件,Marvin展示了Java在构建实时通信应用中的能力。 首先,让我们深入了解一下Discord。Discord是一个主要用于游戏玩家的即时通讯平台,但现在已经发展成为一个涵盖各种兴趣群体的社区,...