0

我想在 hadoop-1.0.1 上运行使用 javaCV 的代码。

我的程序中有以下内容:

导入静态 com.googlecode.javacv.cpp.opencv_core.*;导入静态 com.googlecode.javacv.cpp.opencv_imgproc.*;导入静态 com.googlecode.javacv.cpp.opencv_highgui.*;导入 com.googlecode.javacpp.BytePointer;

在 hadoop-1.0.1/lib 我把这个 jar 文件:

javacpp.jar javacv.jar, javacv-linux-x86_64.jar, javacv-linux-x86.jar, opencv-2.4.5-linux-x86_64.jar, opencv-2.4.5-linux-x86.jar

但是,当我运行应用程序时,我得到了这个:

2010 年 13 月 9 日 20:26:17 信息 mapred.JobClient:任务 ID:尝试_201309102025_0001_m_000000_0,状态:失败错误:java.lang.UnsatisfiedLinkError:/tmp/hadoop-huser/mapred/local/taskTracker/huser/jobcache/job_201309102025_000尝试_201309102025_0001_m_000000_0/work/tmp/javacpp7385313349525/libopencv_core.so.2.4:libtbb.so:无法打开共享对象文件:没有这样的文件或目录

有谁知道如何让 javaCV 在 hadoop 上工作。除了在 $HADOOP_HOME/lib 中有 jar 文件外,我还需要做其他事情吗?

4

1 回答 1

0

您需要安装 openCV 所需的软件包。这里有一篇文章介绍如何安装openCV: http: //www.samontab.com/web/2012/06/installing-opencv-2-4-1-ubuntu-12-04-lts/

您需要的是以下命令:

sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev

我假设您使用的是 Ubuntu。

于 2013-09-11T02:05:07.347 回答