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(800, 600);   //设置新宽度和高度
  25. MarvinImageIO.saveImage(backupImage, dstFile);   //保存图像
  26. }
  27. }

package image; import marvin.image.MarvinImage; import marvin.io.MarvinImageIO; /** * Created on 2010-7-9 * <p>Description: [Marvin学习]</p> * @author shixing_11@sina.com * @version 1.0 */ public class MarvinTest { /** * Created on 2010-7-9 * <p>Discription:[main]</p> * @param args * @author:[shixing_11@sina.com] */ 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/

Java开源图像处理框架Marvin介绍相关推荐

  1. marvin java_Java开源图像处理框架Marvin介绍

    Java对图像的处理框架比较少,目前比较流行的有Jmagick以及Marvin,但Jmagick只能处理图像(上篇Java清除图片中的恶意信息(利用Jm Java对图像的处理框架比较少,目前比较流行的 ...

  2. python画界面的插件_ImagePy——UI界面支持开放插件的Python开源图像处理框架

    雷锋网 AI 科技评论按,ImagePy 是一款 python 开源图像处理框架,其 UI 界面支持开放插件.在 github:https://github.com/Image-Py/imagepy ...

  3. Java开源Web框架

     WebWork   点击次数:18070 WebWork 是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架.WebWork目前最新版本是2.1,现 ...

  4. Java开源JEE框架

     Spring Framework [Java开源JEE框架] Spring是一个解决了许多在J2EE开发中常见的问题的强大框架. Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不 ...

  5. python开发图片工具_工具|ImagePy:一款基于Python的高扩展性开源图像处理框架

    加入极市专业CV交流群,与6000+来自腾讯,华为,百度,北大,清华,中科院等名企名校视觉开发者互动交流!更有机会与李开复老师等大牛群内互动! 同时提供每月大咖直播分享.真实项目需求对接.干货资讯汇总 ...

  6. java开源服务框架_Java框架服务

    Java从诞生到现在,一路飙升,可以说红遍全球,红到发紫.随着Java的流行,促生了许多java框架:Spring.WebWork.Struts.HIbernate.JDiy.JFinal.Quart ...

  7. Java开源爬虫框架crawler4j

    花了两个小时把Java开源爬虫框架crawler4j文档翻译了一下,因为这几天一直在学习Java爬虫方面的知识,今天上课时突然感觉全英文可能会阻碍很多人学习的动力,刚好自己又正在接触这个爬虫框架,所以 ...

  8. java开源验证框架OVAL帮助文档

    OVAL验证框架帮助文档 目录 1.  注解说明 1.1.  @Assert 1.2.   @AssertFalse.@AssertTrue,@AssertNull 1.3.  @AssertURL ...

  9. Java开源 J2EE框架(二)

    Java开源 J2EE框架(二) 2007-01-06 12:34 Jofti [Java开源 其它开源项目] Jofti可对在缓存层中(支持EHCache,JBossCache和OSCache)的对 ...

最新文章

  1. php 图片预览原理,JavaScript_纯JS实现的批量图片预览加载功能,1.实现原理直接见代码,需要一 - phpStudy...
  2. [原]IE9 DOM的自定义属性问题
  3. Android简易实战教程--第四十四话《ScrollView和HorizontalScrollView简单使用》
  4. easyui中的datagrid的数据加载的问题
  5. 前端进阶之路: 前端架构设计(2)-流程核心
  6. QueryList 配置curl参数 的文档位置 QueryList抓取https 终于找到了
  7. python输入一个字符一个数字_Python:如何只对字符串中的数字字符加/减一个数字?...
  8. php怎么连接数据库6,PHP连接数据库的步骤
  9. C语言把整数转换为字符串
  10. android之专栏目录
  11. 进程和cpu的相关知识和简单调优方案
  12. IE11降级到IE8
  13. 安卓设计模式のAdapter模式
  14. ppm\℃是什么意思/
  15. 快速由PCI迁移到PCIe
  16. AdMob Mediation
  17. 2019 东北四省赛部分题解 The 13th Chinese Northeast Collegiate Programming Contest
  18. ZipOutputStream导出压缩文件
  19. html video ajax,利用AJAX开源项目 在网页里播放视频实现方法
  20. 二手苹果8多少钱_苹果6splus换主板多少钱

热门文章

  1. 操作系统实验七 地址映射与共享(哈工大李治军)
  2. K3实现按虚拟件/组件发料
  3. 丝线行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  4. moment常用函数
  5. 小米路由器LuCI Web服务
  6. 使用函数创建多个备选BOM
  7. 关于写作,村上春树提供的几个方法
  8. 如何设置行间距和字间距?
  9. Xrm.Utility.openEntityForm 时404.15 maxQueryString 错误 和 长度超过maxQueryStringLength值 错误
  10. echarts饼图pie中间显示总数