백서

머신 러닝 소프트웨어를 사용한 이미지에서 텍스트 추출

기술

머신 러닝을 활용하여 촬영되거나 스캔된 문서의 텍스트 이미지에서 텍스트를 추출하는 기술은 컴퓨터 비전과 자연어 처리의 접점에서 급성장하고 있는 분야입니다. 이 기술은 고급 머신 러닝, 객체 인식 알고리즘, 고급 그래픽 소프트웨어, 딥 웹 및 다크 웹, 신경망 아키텍처를 활용하여 이미지와 스캔된 종이 문서에서 텍스트 정보를 정확하게 식별하고 추출합니다. 광학 문자 인식(OCR) 및 딥러닝과 같은 다양한 머신러닝 기술을 활용하여, 시각적 장면 내 텍스트를 자동으로 효율적으로 감지하여 편집 및 검색이 가능한 구조화된 데이터로 변환하고, 객체 감지를 수행할 수 있습니다.

끊임없이 변화하는 이 환경에서 연구자와 실무자들은 정확성, 속도, 다용도성을 지속적으로 개선하기 위해 노력하고 있으며, 이로 인해 이미지, 기계 판독 가능 데이터, 스캔된 문서에서 텍스트를 탐지하고 추출하는 기능은 인쇄 문서 디지털화, 콘텐츠 색인화, 번역, 접근성 향상과 같은 애플리케이션의 핵심 요소가 되었습니다.

이 글에서는 강력한 머신 러닝 알고리즘과 텍스트 관련 기능을 기반으로 하는 OCR 라이브러리인 IronOCR을 사용하여 이미지에서 텍스트를 추출하는 방법에 대해 설명합니다. 키워드 추출이라고도 하는 텍스트 추출은 머신 러닝을 기반으로 하여 비정형 데이터나 회사의 중앙 데이터베이스에서 관련성 있는 단어나 기본 단어 및 구문을 자동으로 스캔하고 추출합니다.

머신 러닝을 사용하여 이미지에서 텍스트를 추출하는 방법은 무엇인가요?

  1. 이미지에서 텍스트를 추출하기 위한 C# 라이브러리를 다운로드하세요.
  2. 장면 텍스트 인식을 위해 OcrInput 객체를 인스턴스화하여 특정 이미지를 불러옵니다.
  3. ocrTesseract.Read 메서드를 사용하여 이미지에서 데이터를 추출합니다.
  4. Console.PRINT 메서드를 사용하여 추출된 텍스트를 콘솔에 출력합니다.
  5. CropRectangle 객체를 사용하여 이미지의 특정 영역에 대해 OCR을 수행합니다.

IronOCR - OCR(광학 문자 인식) 라이브러리

탁월하고 정교한 광학 문자 인식(OCR) 소프트웨어인 IronOCR은 이미지와 문서에서 텍스트를 추출하는 기술의 최전선에 서 있습니다. Iron Software에서 개발한 이 강력한 OCR 엔진은 스캔한 이미지, PDF, 심지어 텍스트가 포함된 사진까지 정확하고 효율적으로 편집 및 검색이 가능한 디지털 콘텐츠로 변환하도록 설계되었습니다. IronOCR은 머신 러닝 알고리즘과 신경망을 능숙하게 활용하여, 데이터 추출, 콘텐츠 색인화, 정확한 텍스트 인식이 필요한 자동화 프로세스 등 다양한 애플리케이션에 대한 강력한 솔루션을 제공합니다.

다양한 언어와 서체를 처리할 수 있는 기능 덕분에, 소프트웨어 및 애플리케이션에서 효율적인 텍스트 인식 알고리즘 추출 기능을 필요로 하는 개발자와 기업 모두에게 다용도로 활용 가능한 도구입니다. IronOCR을 사용하면 텍스트 추출 알고리즘을 통해 비정형 데이터를 완벽하게 스캔된 페이지로 변환하는 일반적인 텍스트 인식 기술을 활용하여 텍스트를 자동으로 스캔할 수 있습니다.

IronOCR 설치

IronOCR은 NuGet 패키지 관리자를 사용하여 설치할 수 있습니다. IronOCR을 설치하는 단계는 다음과 같습니다:

  1. 먼저, 새로운 C# Visual Studio 프로젝트를 생성하거나 기존 프로젝트를 엽니다.

Visual Studio

  1. 프로젝트가 생성되면 상단 메뉴의 '도구'로 이동하여 'NuGet 패키지 관리자'를 선택한 다음, '솔루션용 NuGet 패키지 관리자'를 선택하십시오.

도구 메뉴

  1. 화면에 새 창이 나타납니다. '찾아보기' 탭으로 이동하여 검색창에 IronOCR을 입력하세요.
  2. IronOCR 패키지 목록이 표시됩니다. 최신 버전을 선택하고 설치를 클릭하십시오.

IronOCR

  1. 인터넷 속도에 따라 몇 초 정도 소요됩니다; 그 후, IronOCR을 C# 프로젝트에서 바로 사용할 수 있습니다.

이미지 내 텍스트를 편집 및 검색 가능한 데이터로 변환

Using IronOCR, you can easily extract text using image processing techniques and machine learning. 이 섹션에서는 IronOCR을 사용하여 이미지에서 텍스트를 추출하는 방법에 대해 설명합니다.

using IronOcr;
using System;

// Create a new instance of the IronTesseract class
var ocrTesseract = new IronTesseract();

// Specify the image path and perform OCR on the image
using (var ocrInput = new OcrInput(@"images\image.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Print the extracted text to the console
    Console.WriteLine(ocrResult.Text);
}
using IronOcr;
using System;

// Create a new instance of the IronTesseract class
var ocrTesseract = new IronTesseract();

// Specify the image path and perform OCR on the image
using (var ocrInput = new OcrInput(@"images\image.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Print the extracted text to the console
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports System

' Create a new instance of the IronTesseract class
Private ocrTesseract = New IronTesseract()

' Specify the image path and perform OCR on the image
Using ocrInput As New OcrInput("images\image.png")
	Dim ocrResult = ocrTesseract.Read(ocrInput)

	' Print the extracted text to the console
	Console.WriteLine(ocrResult.Text)
End Using
$vbLabelText   $csharpLabel

이 C# 코드는 광학 문자 인식(OCR) 라이브러리인 IronOCR의 사용법을 보여줍니다. 다음은 단계별 설명입니다:

  1. 라이브러리 가져오기:

    using IronOcr;
    using System;
    using IronOcr;
    using System;
    Imports IronOcr
    Imports System
    $vbLabelText   $csharpLabel

    코드는 OCR 기능을 제공하는 IronOCR과 일반 기능을 위한 System 네임스페이스를 포함하여 필요한 라이브러리를 가져오는 것으로 시작합니다.

  2. IronTesseract 초기화 및 이미지 불러오기:

    var ocrTesseract = new IronTesseract();
    var ocrTesseract = new IronTesseract();
    Dim ocrTesseract As New IronTesseract()
    $vbLabelText   $csharpLabel

    이 코드는 IronOCR에서 제공하는 OCR 엔진인 IronTesseract의 인스턴스를 생성합니다.

    using (var ocrInput = new OcrInput(@"images\image.png"))
    using (var ocrInput = new OcrInput(@"images\image.png"))
    Using ocrInput As New OcrInput("images\image.png")
    $vbLabelText   $csharpLabel

    OcrInput 객체는 처리할 이미지의 경로를 지정하여 인스턴스화됩니다. 이 경우 이미지 파일은 "images" 디렉터리에 있는 "image.png"입니다.

  3. OCR 수행 및 텍스트 추출:

    var ocrResult = ocrTesseract.Read(ocrInput);
    var ocrResult = ocrTesseract.Read(ocrInput);
    Dim ocrResult = ocrTesseract.Read(ocrInput)
    $vbLabelText   $csharpLabel

    이 코드는 OcrInput 객체를 인수로 전달하여 IronTesseract 인스턴스의 Read 메서드를 호출합니다. 이 방법은 제공된 이미지에 대해 OCR을 수행하여 텍스트를 추출합니다.

  4. 추출된 텍스트 표시:

    Console.WriteLine(ocrResult.Text);
    Console.WriteLine(ocrResult.Text);
    Console.WriteLine(ocrResult.Text)
    $vbLabelText   $csharpLabel

    마지막으로, 추출된 텍스트는 Console.WriteLine을 사용하여 콘솔에 출력되며, 이미지에서 얻은 OCR 결과가 표시됩니다.

이 코드 스니펫은 IronOCR을 사용하여 지정된 이미지의 텍스트를 OCR 처리하고, 추출된 텍스트를 콘솔에 출력합니다.

입력 이미지

Invoice

번역 결과

고객 청구서 출력

이미지의 지정된 영역에 대해 OCR을 수행하십시오

IronOCR을 사용하여 이미지의 특정 영역에 대해 OCR을 수행할 수도 있습니다. 다음은 코드 예시입니다:

using IronOcr;
using IronSoftware.Drawing;
using System;

// Create a new instance of the IronTesseract class
var ocrTesseract = new IronTesseract();

// Specify the region on the image to be processed
using (var ocrInput = new OcrInput())
{
    var ContentArea = new CropRectangle(x: 20, y: 20, width: 400, height: 50);

    // Add the image with the defined content area
    ocrInput.AddImage("r3.png", ContentArea);

    // Perform OCR on the specified region and extract text
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Print the extracted text to the console
    Console.WriteLine(ocrResult.Text);
}
using IronOcr;
using IronSoftware.Drawing;
using System;

// Create a new instance of the IronTesseract class
var ocrTesseract = new IronTesseract();

// Specify the region on the image to be processed
using (var ocrInput = new OcrInput())
{
    var ContentArea = new CropRectangle(x: 20, y: 20, width: 400, height: 50);

    // Add the image with the defined content area
    ocrInput.AddImage("r3.png", ContentArea);

    // Perform OCR on the specified region and extract text
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Print the extracted text to the console
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports IronSoftware.Drawing
Imports System

' Create a new instance of the IronTesseract class
Private ocrTesseract = New IronTesseract()

' Specify the region on the image to be processed
Using ocrInput As New OcrInput()
	Dim ContentArea = New CropRectangle(x:= 20, y:= 20, width:= 400, height:= 50)

	' Add the image with the defined content area
	ocrInput.AddImage("r3.png", ContentArea)

	' Perform OCR on the specified region and extract text
	Dim ocrResult = ocrTesseract.Read(ocrInput)

	' Print the extracted text to the console
	Console.WriteLine(ocrResult.Text)
End Using
$vbLabelText   $csharpLabel

이 C# 코드는 광학 문자 인식(OCR)을 위해 IronOCR 라이브러리를 사용합니다. 먼저 IronOCR 및 System을 포함한 필요한 라이브러리를 가져옵니다. OCR 엔진인 IronTesseract 인스턴스가 생성됩니다. 이 코드는 CropRectangle을 사용하여 처리할 이미지의 특정 ContentArea를 설정함으로써 정의된 영역에 초점을 맞춥니다. 그런 다음 지정된 영역 내의 이미지("r3.png")가 OCR 처리를 위해 추가됩니다. OCR 엔진은 지정된 콘텐츠 영역을 읽고 텍스트를 추출하며, 결과 텍스트는 Console.WriteLine을 사용하여 콘솔에 PRINT됩니다.

번역 결과

출력

결론

IronOCR과 같은 광학 문자 인식(OCR) 라이브러리를 활용하여 머신 러닝을 통해 이미지에서 텍스트를 추출하는 기술은 컴퓨터 비전과 자연어 처리의 교차점에서 이루어진 획기적인 진전을 의미합니다. OCR 기술과 딥러닝 기법은 모두 시각적 텍스트를 편집 및 검색 가능한 데이터로 효율적으로 변환하는 데 핵심적인 역할을 하며, 문서 디지털화, 콘텐츠 색인화, 접근성 향상과 같은 중요한 목적을 수행합니다.

저명한 OCR 라이브러리인 IronOCR은 이러한 융합의 잠재력을 잘 보여주는 사례로, 스캔된 이미지와 PDF를 다양한 언어와 글꼴 스타일로 디지털 편집 가능한 콘텐츠로 정확하게 변환하는 데 탁월합니다. C#과 같은 프로그래밍 언어와의 원활한 통합을 통해 구현 과정을 간소화할 수 있으며, 이는 다양한 애플리케이션과 분야에서 이미지 텍스트 추출이 가져오는 혁신적인 효과를 한층 더 증폭시킵니다.

IronOCR 및 관련 기능에 대해 더 자세히 알아보려면 이 링크를 방문하십시오. 이미지에서 텍스트를 추출하는 방법에 대한 전체 튜토리얼은 다음 링크에서 확인할 수 있습니다. IronOCR 라이선스는 이 링크에서 구매할 수 있습니다.