Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android应用程序tess4j的OCR_Android_Eclipse_Ocr_Tesseract - Fatal编程技术网

android应用程序tess4j的OCR

android应用程序tess4j的OCR,android,eclipse,ocr,tesseract,Android,Eclipse,Ocr,Tesseract,基本上,我正在设计一个应用程序,它将从android设备的默认摄像头捕获图像,并在图像视图中显示该图像!很好!够好了 capt_but.setOnClickListener(new View.OnClickListener() { //@Override // TODO Auto-generated method stub public void onClick(View v) {

基本上,我正在设计一个应用程序,它将从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功能,基本上从我拍摄的图像中提取字符!Tesser4j基本上是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.buffereImage。它是从必需的.class文件间接引用的

快速解决办法是: 配置构建路径

我想不出是什么问题!我正在努力解决这个问题!我是否在上面提到的步骤中遗漏了什么?我下载的tess4j还有其他文件!请从上面的链接下载tess4j,以检查下载中的文件!有xml问题吗?或任何构建路径问题

无法解析类型java.awt.image.buffereImage


从该错误消息来看,Android平台似乎不支持
buffereImage
类。不包括
java.awt.image
包。

我知道这个问题很老了。但要修复错误,请导航到属性>java构建路径>库>添加库并包含JRE系统库。:)

正如其他人所说,Android平台不支持
BuffereImage
。 解决方案是使用tesstwo,这是适用于android的与Tesseract包装器api等价的Tess4j

参考:

虽然这已经很老了,但是分享会让其他人觉得它很有用