【发布时间】:2012-11-02 16:03:52
【问题描述】:
基本上是在设计一个应用程序,该应用程序将从 android 设备的默认摄像头捕获图像并将该图像显示在图像视图中!工作正常!足够好!
capt_but.setOnClickListener(new View.OnClickListener()
{
//@Override
// TODO Auto-generated method stub
public void onClick(View v)
{
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK)
{
Bitmap photo = (Bitmap) data.getExtras().get("data");
imageView.setImageBitmap(photo);
}
}
我的下一个任务是应用 tess4j OCR 功能,该功能基本上可以从我捕获的图像中提取字符! tess4j 基本上是 tesseract OCR 的 java 包装器! 我正在 ECLIPSE 中编程! 这是它的链接!
tess4j.sourceforge.net
我添加了我在开源文件中可以找到的所有 jar,并将它们添加到我创建的文件夹中,该文件夹是 eclipse 中主项目目录的 lib!我全部选择了它们并将它们添加到构建路径中!
然后我将我能找到的所有 dll 复制到主项目目录中! 然后使用上面同一链接上的一个示例,我将我的代码编写如下:
public void myfunction(Intent data)
{
Bitmap photo = (Bitmap) data.getExtras().get("data");
Tesseract instance = Tesseract.getInstance(); // JNA Interface Mapping
File imageFile = new File("myimage.tif");
try
{
String result = instance.doOCR(imageFile)
System.out.println(result);
}
catch (TesseractException e)
{
System.err.println(e.getMessage());
}
}
我的项目正在获取 tesseract jar 并让我能够浏览 .操作员! 不过在网上,
String result = instance.doOCR(imageFile)
我得到的错误是:
类型 java.awt.image.BufferedImage 无法解析。它是从所需的 .class 文件中间接引用的
快速解决方法是: 配置构建路径!
我不知道是什么问题!我正在努力找出问题所在!我在上面提到的步骤中遗漏了什么吗?我下载的 tess4j 还有其他文件!请帮助从上面的链接下载 tess4j 以检查下载中的文件!任何xml问题?或任何构建路径问题?
【问题讨论】:
标签: android eclipse ocr tesseract