OCR не распознает текст, если я уберу лист с камеры - PullRequest
0 голосов
/ 19 апреля 2020

Я работаю на OCR с моей камерой, я использую для этого пакет tessera c. js. К сожалению, после нескольких тестов, когда я перемещаю лист с камеры, алгоритм OCR не распознает текст на моем листе, и в большинстве тестов результаты действительно плохие, потому что даже когда я перемещаю бумагу ближе к камера, иногда она не захватывает весь текст, и это действительно расстраивает, кто-то знает пакет с лучшими результатами или знает, как улучшить результаты, это действительно помогло бы мне. Еще вот мой код:

Функция распознавания текста:

export async function process(path, language) {
 await worker.load();
 await worker.loadLanguage(language);
 await worker.initialize(language);
 await worker.setParameters({
    tessedit_pageseg_mode: PSM.AUTO
})
const { data: { text } } = await worker.recognize(path);
console.log(text);
await worker.terminate();

}

Функция съемки:

 takePicture() {
            this.canvas = document.querySelector('canvas');
            this.ctx = this.canvas.getContext('2d');

            this.canvas.width = (window.innerWidth < 1280) ? window.innerWidth : 1280;
            this.canvas.height = window.innerWidth / this.ratio;

            console.log(`window : ${window.innerWidth}, ${window.innerHeight}`)
            console.log(`canvas ${this.canvas.width}, ${this.canvas.height}`);

            this.ctx.imageSmoothingEnabled = true;
            this.ctx.imageSmoothingQuality = 'high';
            // this.ctx.setTransform(this.zoomFactor, 0, 0, this.zoomFactor, 
            // -(this.zoomFactor - 1) * this.canvas.width / 2, -(this.zoomFactor - 1) * this.canvas.height / 2);
            // this.ctx.font = "30px Arial";

            this.ctx.drawImage(document.querySelector('video'), 0, 0, this.canvas.width, this.canvas.height);

            this.imageUrl = this.canvas.toDataURL();
        }
...