«Ошибка: не удалось обнаружить ОС» с Node.js в VS Code - PullRequest
0 голосов
/ 24 апреля 2020

Я использую tesseract. js, чтобы сделать OCR, но когда я изменяю exampleImage, я получаю эту ошибку. Я не могу найти никакой информации об этой ошибке. Заранее спасибо.

приложение. js

const exampleImage = 'https://d1q6f0aelx0por.cloudfront.net/product-logos/5431a80b-9ab9-486c-906a-e3d4b5ccaa96-hello-world.png';
const Tesseract=require('tesseract.js');
const worker = Tesseract.createWorker({
  logger: m => console.log(m)
});
Tesseract.setLogging(true);
work();

async function work() {
  await worker.load();
  await worker.loadLanguage('eng');
  await worker.initialize('eng');

  let result = await worker.detect(exampleImage);
  console.log(result.data);

  result = await worker.recognize(exampleImage);
  console.log(result.data);

  await worker.terminate();
}

Console.log

Error: Failed to detect OS
    at ChildProcess.<anonymous> (c:\Users\jorda\AppData\Local\Programs\Microsoft VS Code\bin\Example\node_modules\tesseract.js\src\createWorker.js:173:15)
    at ChildProcess.emit (events.js:311:20)
    at emit (internal/child_process.js:876:12)
    at processTicksAndRejections (internal/process/task_queues.js:85:21)

Ответы [ 2 ]

0 голосов
/ 24 апреля 2020

Неважно, я использовал слишком маленькое изображение. С большим изображением код работал нормально.

0 голосов
/ 24 апреля 2020

Ваши случаи использования и их документирования не совпадают. Вы проверяли их документацию?

Попробуйте написать как они например;

const { createWorker } = require('tesseract.js');
const exampleImage = 'https://d1q6f0aelx0por.cloudfront.net/product-logos/5431a80b-9ab9-486c-906a-e3d4b5ccaa96-hello-world.png';

const worker = createWorker({
  logger: m => console.log(m), // Add logger here
});

(async () => {
  await worker.load();
  await worker.loadLanguage('eng');
  await worker.initialize('eng');
  const { data: { text } } = await worker.recognize(exampleImage);
  console.log(text);
  await worker.terminate();
})();
...