Skip to content

图片提取文字

🕒 Published at:

Tesseract.js 是一个基于网页的 OCR(光学字符识别)引擎,可以识别图像中的文本并将其转换为可供计算机处理的文本数据

  • 文本识别:Tesseract.js 可以从图像中识别出文本,并将其转换为可供计算机处理的文本数据。

  • 多语言支持:它支持多种语言的文本识别,包括但不限于英语、中文、日语、法语、德语等。

  • 精度调优:可以通过设置参数来调整识别精度和速度,以适应不同需求下的应用场景。

  • 网页集成:作为一个 JavaScript 库,Tesseract.js 可以直接在网页中使用,无需额外的服务器端支持。 异步处理:Tesseract.js 使用异步处理,可以在后台进行图像处理和文本识别,不会阻塞用户界面。

  • GPU 加速:一些版本的 Tesseract.js 支持利用 GPU 进行加速,以提高处理速度。

  • 自定义识别模型:可以根据需要使用训练数据自定义识别模型,以提高特定文本类型或特定语言的识别准确率。

  • 日志输出:提供日志输出功能,可以用于跟踪处理进度、识别结果等信息。

  • 引用 https://segmentfault.com/a/1190000044774930

html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Text Recognition Demo</title>
<script src="https://cdn.jsdelivr.net/npm/tesseract.js/dist/tesseract.min.js"></script>
</head>
<body>
<input type="file" id="fileInput" accept="image/*">
<div id="output"></div>

<script>
document.getElementById('fileInput').addEventListener('change', function(event) {
    const file = event.target.files[0];
    const reader = new FileReader();
    
    reader.onload = function(event) {
        const imgData = event.target.result;
        
        Tesseract.recognize(
            imgData,
            // 中文
            'chi_sim',
            { logger: m => console.log(m) } // 可选的日志函数,用于查看处理进度
        ).then(({ data: { text } }) => {
            document.getElementById('output').innerText = text;
        });
    };
    
    reader.readAsDataURL(file);
});
</script>
</body>
</html>