Angularjs ocr-我的图像在tesseract ocr中无法识别

Angularjs ocr-我的图像在tesseract ocr中无法识别,angularjs,cordova,ionic-framework,ocr,Angularjs,Cordova,Ionic Framework,Ocr,嗨,我目前是Tesseract ocr的新手,我想在拍照时识别我的图像。。我正在使用离子框架来实现这一点。。图像的捕获很好,但当我点击ocr功能按钮时,它什么也没做。。我只是跟着医生进来 这是我的html <ion-view view-title="OCR Testing"> <ion-content padding="true"> <button class="button button-block button-positive" ng-

嗨,我目前是Tesseract ocr的新手,我想在拍照时识别我的图像。。我正在使用离子框架来实现这一点。。图像的捕获很好,但当我点击ocr功能按钮时,它什么也没做。。我只是跟着医生进来

这是我的html

<ion-view view-title="OCR Testing">
    <ion-content padding="true">
        <button class="button button-block button-positive" ng-click="startOCR()">
            <i class="icon ion-ios-camera"></i> Scanbot OCR
        </button>
        <button class="button button-block button-positive" ng-click="scan()">
            <i class="icon ion-ios-camera"></i> Scan
        </button>
        <!--   <button class="button button-block button-positive" ng-if="currentDocumentImage.originalImageFileUri" ng-click="startCroppingUi()">
      <i class="icon ion-ios-crop-strong"></i> Scanbot Cropping UI
    </button>
 -->
        <!-- <img ng-if="currentDocumentImage.imageFileUri" src="{{currentDocumentImage.imageFileUri}}" class="img-big-thumbnail padding"> -->
        <img ng-if="image" src="{{image}}" class="img-big-thumbnail padding">
        <code>{{text}}</code>

    </ion-content>
    </ion-views>
这是我的控制器

.controller('ScanbotOCRCtrl', function($scope, $cordovaCamera, DemoImageStorage, PhotoLibrary) {

    $scope.startOCR = function() {

      $scope.imageData = '';

        var options = {
            quality: 90,
            destinationType: Camera.DestinationType.DATA_URL,
            sourceType: Camera.PictureSourceType.CAMERA,
            allowEdit: true,
            encodingType: Camera.EncodingType.JPEG,
            targetWidth: 500,
            targetHeight: 500,
            popoverOptions: CameraPopoverOptions,
            saveToPhotoAlbum: false
                // correctOrientation: true
        };

        $cordovaCamera.getPicture(options).then(function(imageData) {
            $scope.image = "data:image/jpeg;base64," + imageData;
            $scope.text = null;

            $timeout(function() {
                // DOM has finished rendering
                // insert here the call to TesseractPlugin.recognizeText function to recognize the text
                $scope.imageData = $scope.image;

            });


        }, function(err) {
            // error
            console.log('ERROR with camera plugin. Error: ' + err);
        });

    };


    $scope.scan = function() {

        window.TesseractPlugin.recognizeText($scope.imageData, language, function(recognizedText) {
            $scope.text = recognizedText;
            alert(recognizedText);
        }, function(reason) {
            console.log('Error on recognizing text from image. ' + reason);
        });


    }

我有点晚了,但这是解决办法

直接输入getPicture()函数返回的原始数据,即imagedata,而不在其前面添加“data:image/jpeg;base64”。因此,它变成:

$cordovaCamera.getPicture(options).then(function(imageData) {
        $scope.image = "data:image/jpeg;base64," + imageData;
        $scope.text = null;
         //here, do it like this and feed it to tesseract
        $scope.imageData = imageData;
        });

我有点晚了,但这是解决办法

直接输入getPicture()函数返回的原始数据,即imagedata,而不在其前面添加“data:image/jpeg;base64”。因此,它变成:

$cordovaCamera.getPicture(options).then(function(imageData) {
        $scope.image = "data:image/jpeg;base64," + imageData;
        $scope.text = null;
         //here, do it like this and feed it to tesseract
        $scope.imageData = imageData;
        });

你有什么错误吗?没有,当我点击按钮时没有任何错误,只是什么都没有。我将“console.log”更改为“alert”,因为我正在调试使用电话时是否出现任何错误或什么?不,当我单击按钮时没有出现任何错误,它只是不起作用。我将“console.log”改为“alert”,因为我正在用电话调试它