java图片框架_Java开源图像处理框架Marvin介绍

Java对图像的处理框架比较少,目前比较流行的有Jmagick以及Marvin,但Jmagick只能处理图像(上篇Java清除图片中的恶意信息(利用Jmagick)中对Jmagick已做过简略介绍),而Marvin不但可以处理图像,而且可以集成各种插件,操作视频,摄像头来达到各种效果。

Marvin 是一个Java开发的可扩展的图像处理框架,该框架主要提供以下几方面的功能:

基本图像操作;

从视频中捕获帧;

多线程的图像处理;

通过GUI界面集成插件;

插件性能分析;

通过插件进行功能扩展。

授权协议: GPL

开发语言: Java

操作系统: 跨平台

目前插件提供的效果:

艺术化(马塞克,电视效果)、模糊、纹理、分割、变形、渲染、图案、直方图、边缘检测等等,

截个电视效果的图大家看下:

041a7355592ad442a4161c00f847e757.png

使用方法:

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

packageimage;

importmarvin.image.MarvinImage;

importmarvin.io.MarvinImageIO;

/**

* Created on 2010-7-9

Description: [Marvin学习]

* @author         shixing_11@sina.com

* @version        1.0

*/

publicclassMarvinTest

{

/**

* Created on 2010-7-9

Discription:[main]

* @param args

* @author:[shixing_11@sina.com]

*/

publicstaticvoidmain(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);//保存图像

}

}

package image;

import marvin.image.MarvinImage;

import marvin.io.MarvinImageIO;

/**

* Created on 2010-7-9

*

Description: [Marvin学习]

* @author shixing_11@sina.com

* @version 1.0

*/

public class MarvinTest

{

/**

* Created on 2010-7-9

*

Discription:[main]

* @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来完成的。

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2012-10-11 09:16

浏览 10209

评论

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值