Hadoop HIPI

Hadoop HIPI学习

1.Hipi是什么?

HIPI是hadoop图片处理的框架,它提供了用于在分布式计算环境中执行图片处理任务的API。

描述图如下:

 

2.HIPI作用:

用于合并小的图像文件,及切割算法。

3.为什么用要用HIPI框架

因为hadoop框架很适合大文件的操作,而我们平时使用的图片的文件都比较小,如果这种小文件不经过处理直接上传,会十分影响性能,所以HIPI框架具备图片的合并以及分割,Hadoop HIPI学习

2.Hipi是什么?

HIPI是hadoop图片处理的框架,它提供了用于在分布式计算环境中执行图片处理任务的API。

描述图如下:

 

本人的个人理解:

通过HIBI框架把客户端上传的多张图片合并成一个大的HIB文件,然后把这些大的文件上传到hadoop hdfs中,

(待续.。。。。)

3.HIPI作用:

用于合并小的图像文件,及切割算法。

帮我们很好的解决了这方面的问题.

4.HIPI官网: 官网中有很多有用的资料,大家可以看看

http://hipi.cs.virginia.edu/index.html

5.HIPI框架下载地址:

http://hipi.cs.virginia.edu/downloads.html

里面有几个版本,大家把HIPI开发版下载下来就可以了,里面的内容很全.

hipi-dev.tar.gz ---该版本为开发版

6.把本地的图片文件通过HIPI框架上传到hadoop系统中

(1).把hipi-dev.tar.gz中src的源码引入到eclipse的jar项目中.----之所以引入源码,因为目前HIPI还是有一些BUG的(不过对我们使用HIPI的影响不是很大)

例如:获取一个分辨率很大的图片,会报内存异常错误,导入源码后,可以对一些bug进行修改,或对现已有的功能进行定制化修改。

(2).把hipi-dev.tar.gz中3rdparty中的metadata-extractor-2.3.1.jar和junit-4.11.jar,导入的到项目中去.否则会报错.

(3)上传代码:

往hib中添加1张图片,上传到hdfs中

/**

 * 

 */

package com.hd.hdfs;

 

import hipi.image.FloatImage;

import hipi.image.ImageHeader;

import hipi.image.ImageHeader.ImageType;

import hipi.imagebundle.AbstractImageBundle;

import hipi.imagebundle.HipiImageBundle;

 

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.util.ArrayList;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.Path;

 

/**

 * @author 

 *时间: @2013-12-18 @下午5:22:44

 *说明:上传数据

 * 

 */

public class UploadImage {

/**

 * 上传

 * @throws IOException

 */

public void myUploadImage() throws IOException{

//ArrayList<String> hosts=new ArrayList<String>();

Configuration conf=new Configuration();

conf.addResource(new Path("d:\\core-site.xml"));

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值