`

Java开源图像处理框架Marvin介绍

 
阅读更多

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加载图片,修改大小后写重新生成图片的过程:

 

[java:nogutter] view plaincopyprint?
  1. package image;  
  2. import marvin.image.MarvinImage;  
  3. import marvin.io.MarvinImageIO;  
  4. /** 
  5.  * Created on 2010-7-9 
  6.  * <p>Description: [Marvin学习]</p> 
  7.  * @author         shixing_11@sina.com 
  8.  * @version        1.0 
  9. */  
  10. public class MarvinTest  
  11. {  
  12.     /** 
  13.      * Created on 2010-7-9  
  14.      * <p>Discription:[main]</p> 
  15.      * @param args 
  16.      * @author:[shixing_11@sina.com] 
  17.      */  
  18.     public static void main(String[] args)  
  19.     {  
  20.         String srcFile = "c://img//b.jpg";     //源文件  
  21.         String dstFile = "c://img//bb.jpg";    //处理后的文件  
  22.         MarvinImage image = MarvinImageIO.loadImage(srcFile);  //装载图像   
  23.         MarvinImage backupImage = image.clone();  //克隆图像,确保对原图不做修改   
  24.         backupImage.resize(800600);   //设置新宽度和高度   
  25.         MarvinImageIO.saveImage(backupImage, dstFile);   //保存图像   
  26.     }  
  27. }  

 

 

可见Marvin的图片管理是通过类MarvinImageIO来完成的。

具体API参考:http://marvinproject.sourceforge.net/javadoc/

分享到:
评论

相关推荐

    Marvin Image Processing Framework-开源

    总的来说,Marvin Image Processing Framework 是一个强大的图像处理工具,无论你是研究人员还是开发者,都可以利用这个开源框架快速构建起自己的图像处理系统,进行各种创新性的项目。其全面的功能、高效的性能和...

    Marvin3 programming language-开源

    开源软件的性质使得Marvin3对社区开放,任何人都可以查看其源代码,提出改进意见,或者贡献新功能。这种开放的开发模式鼓励了创新,促进了语言的持续发展和优化。 从压缩包文件"marvin3_0.0.6"中,我们可以期待获取...

    Marvin's AMD Utility

    Marvin's AMD Utility 是一款专为AMD处理器设计的实用工具,它主要用来处理与CPUID相关的操作,尤其针对AMD平台的用户。CPUID是一个在x86架构处理器中广泛使用的功能,它允许软件查询和修改处理器的标识信息,如厂商...

    marvin-articles:适用于 Marvin 的文章插件 - 基于 Silex 框架的 PHP 5.3 微型 CMS

    通过以上分析,我们可以看出 Marvin 文章插件是一个利用 Silex 框架构建的、具有文章管理功能的微型 CMS。它融合了 Silex 的优势,提供了灵活的路由、数据库交互、模板渲染、服务管理等功能,满足了内容创建和管理的...

    第2.7节知识的框架表示法第2.7节知识的框架表示法

    本节我们将详细介绍框架表示法的概念、特点和应用,并与语义网表示法进行比较。 2.5.1 框架表示法的概念 框架表示法是由Marvin Minsky在1975年提出的,旨在描述知识的结构和关系。框架是一种知识表示方法,用于...

    marvin - The fuzzy rule visualizer.-开源

    在实际应用中,Marvin 可用于各种需要模糊逻辑处理的场景,如智能控制(例如自动驾驶汽车、无人机)、模糊决策支持系统、信号处理、图像识别等。通过可视化,开发者和非技术用户都能更好地理解和调整模糊规则,从而...

    【最新版】Marvin-1.51.0.dmg【亲测可用】最好的个人生产力应用程序

    轻松获得更多成就Marvin融合了行为心理学的原理,可帮助您克服拖延,控制感并完成您的待办事项清单。 您对完美生产力应用程序的追求到此为止 Marvin是当今市场上功能最丰富且可定制的个人待办应用程序。而且,我们...

    Go-Marvin一个用于GoogleAppEngine标准环境的go-kitHTTP服务器

    8. **中间件支持**:Marvin支持go-kit中的中间件机制,允许开发者插入自定义的处理逻辑,如日志记录、错误处理、请求跟踪等,增强了服务的可定制性和灵活性。 9. **开发和调试**:由于Go语言的特性,以及Google App...

    marvin-demo:一个简单的marvin-js测试套件

    Marvin-js是一个强大的JavaScript自动化测试框架,主要用于前端应用的测试。这个"marvin-demo"项目是一个基础的示例,用于展示如何使用marvin-js进行测试。它包含了一系列必要的文件和配置,帮助初学者快速理解和...

    PyPI 官网下载 | sdss-marvin-2.2.0.dev1.tar.gz

    《PyPI官网下载:sdss-marvin-2.2.0.dev1.tar.gz——深入了解Python科学数据处理库》 PyPI(Python Package Index)是Python社区的重要资源库,它为全球Python开发者提供了一个集中下载和分享开源软件包的平台。在...

    matlab滤波源码-marvin:Marvin:极简的纯GPUN维ConvNets框架

    Marvin是仅基于GPU的神经网络框架,考虑了简单性,可入侵性,速度,内存消耗和高维数据。 依存关系 下载和。 您将需要向NVIDIA注册。 以下是设置cuDNN 5.1的一些其他步骤。 注意我们强烈建议您将不同版本的cuDNN安装...

    Marvin:Maven(Marvin),友好的DiscordBot,可帮助您穿越宇宙

    4. **命令和事件处理**:Marvin 可能使用了装饰器来注册监听 Discord 事件(如消息发送、用户加入等)和自定义命令。用户可以通过在聊天中输入特定的指令与 Marvin 交互。 5. **扩展性**:为了实现更多功能,Marvin...

    marvin-engine-executor:Marvin AI已被Apache Foundation接受,现在可在https:github.comapacheincubator-marvin获得

    Marvin AI是一个专注于深度学习和人工智能的开源框架,它旨在简化和加速AI应用的构建过程,尤其是对于那些依赖于复杂模型和大数据的项目。 Marvin Engine Executor是Marvin AI中的一个重要执行器模块,它的主要职责...

    【最新版】Marvin-1.54.0.dmg【亲测可用】最好的个人生产力应用

    轻松完成更多工作 马文(Marvin)结合了行为心理学的原理,可帮助您战胜拖延症,控制自己并完成待办事项清单。

    marvin-python-toolbox:Marvin AI已被Apache Foundation接受,现在可在https:github.comapacheincubator-marvin获得

    快速开始审查Marvin是一个开放源代码的人工智能平台,致力于帮助数据科学家为复杂问题提供有意义的解决方案。 在标准化的大规模语言不可知体系结构的支持下,Marvin简化了探索和建模过程。入门创建一个新引擎创建一...

    marvin:MaNGA的数据访问和可视化。 http

    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

    标题中的"PyPI 官网下载 | marvin_wtforms_alchemy-0.16.10-py2.py3-none-any.whl"表明我们正在讨论一个从Python Package Index (PyPI) 官方网站获取的软件包。PyPI是Python社区用来存储和分发第三方Python库的地方...

    marvin-users:Marvin的用户插件-基于Silex框架的适用于PHP 5.3的微型CMS

    Marvin 用户插件是针对PHP 5.3开发的一个基于Silex框架的微型内容管理系统(CMS)。Silex是一款轻量级的PHP微框架,它提供了构建Web应用程序的基本工具,而Marvin-users则是专门为Silex设计的一款用户管理插件,用于...

    Marvin Jabber Client-开源

    使用Euphoria语言(www.rapideuphoria.com)编写的Jabber Instant Messaging网络(www.jabber.org)的Win32客户端。 使用XML皮肤格式完全可以皮肤化。

    Marvin:流行消息服务Discord的多功能机器人

    作为一款基于Java开发的软件,Marvin展示了Java在构建实时通信应用中的能力。 首先,让我们深入了解一下Discord。Discord是一个主要用于游戏玩家的即时通讯平台,但现在已经发展成为一个涵盖各种兴趣群体的社区,...

Global site tag (gtag.js) - Google Analytics