|
|
(사용자 2명의 중간 판 3개는 보이지 않습니다) |
1번째 줄: |
1번째 줄: |
− | '''문자인식'''(OCR, Optical Character Recognition)은 이미지나 스캔된 문서에서 텍스트를 자동으로 인식하고 추출하는 기술이다. 이 기술은 수작업을 줄이고, 데이터 입력 과정을 자동화하며, 문서를 디지털화하는 데 중요한 역할을 한다. 문자인식의 기본 목표는 사람의 시각적 인식을 모방하여 인쇄된 글자나 손글씨를 기계가 이해할 수 있는 디지털 데이터로 변환하는 것이다.
| + | #넘겨주기 [[OCR]] |
− | | |
− | == 상세 ==
| |
− | 사람이 쓰거나 기계로 인쇄한 문자의 영상을 이미지 스캐너로 획득하여 기계가 읽을 수 있는 문자로 변환하는 것이다. 이미지 스캔으로 얻을 수 있는 문서의 활자 영상을 컴퓨터가 편집 가능한 문자코드 등의 형식으로 변환하는 소프트웨어로써 일반적으로 OCR이라고 하며, OCR은 인공지능이나 기계 시각(machine vision)의 연구분야로 시작되었다. 거울이나 렌즈 등의 광학 기술을 이용한 광학 문자 인식과 스캐너 및 알고리즘에 의한 디지털 문자 인식은 다른 영역으로 생각되었으나 이제는 광학 문자 인식이라는 말이 디지털 문자 인식을 포함하는 것으로 간주되었다.
| |
− | | |
− | 초기 시스템은 특정한 서체를 읽기 위해 미리 해당 서체의 샘플을 읽는 것을 뜻하는 "트레이닝"이 필요했지만, 지금은 대부분의 서체를 높은 확률로 변환이 가능하다. 몇몇 시스템에서는 읽어들인 이미지에서 그것과 거의 일치하는 워드 프로세서 파일과 같은 문서 포맷으로 된 출력 파일을 생성할 수 있으며, 그 중에는 이미지처럼 문서 이외의 부분이 포함되어있어도 제대로 인식하는 것도 있다.
| |
− | | |
− | == 역사 ==
| |
− | OCR의 역사는 우리의 생각보다 길다. OCR의 역사는 1928년에 독일의 타우쉐크(G. Taushek)가 미리 준비된 몇 개의 표준 패턴 문자와 입력문자를 비교하여 표준 패턴 문자와 가장 유사한 것을 해당 문자로 선정하는 패턴 매칭(pattern matching) 기법을 이용한 문자 인식 방법을 특허로 등록하면서 시작되었다. 연구소나 기업 등에서 대형 컴퓨터를 통하여 수행되던 것이 PC와 이미지 스캐너의 보급으로 우리 가까이 사용되기 시작한 것은 이미 20년이 넘었다.
| |
− | | |
− | 해외에서 먼저 연구가 시작된 OCR 기술은 영어인식을 위주로 개발되었다. 연산처리 능력이 뛰어난 워크스테이션급에서 동작되던 것들이 개인용 컴퓨터의 처리 능력이 업그레이드 되면서 PC용 OCR들이 시장에 속속 나타나던 것이 90년대 중반이었다.<ref>킬크, 〈[https://cusee.net/2462898 높은 한글 인식률을 자랑하는 OCR 솔루션, ABBYY FineReader 11]〉, 《개인블로그》, 2011-11-29</ref> 1950년대와 1960년대에는 상업적 응용을 위해 더욱 발전하였고, 주로 단순한 서체와 고정된 글자 크기를 가진 문서를 인식하는 데 사용되었다. 1970년대와 1980년대에는 마이크로프로세서와 컴퓨터 기술의 발전으로 OCR 시스템이 더 정교해졌고, 다양한 서체와 문서 레이아웃을 인식할 수 있게 되었다.
| |
− | | |
− | 대한민국에는 90년대 초반에 한글 문자 인식 소프트웨어가 실험실 수준으로 개발되어 일반에 소개되었었다. 네이버 Clova에서 OCR서비스를 오픈했으며, 네이버 클라우드 플랫폼 콘솔에서 Gateway API를 통해 이용 가능하다. OCR 챌린지인 'ICDAR Robust Reading Competition'에서 '19년 4개 분야를 석권, 정확도와 기술력을 인정받았다고 한다.<ref>〈[https://ko.wikipedia.org/wiki/%EA%B4%91%ED%95%99_%EB%AC%B8%EC%9E%90_%EC%9D%B8%EC%8B%9D 광학 문자 인식]〉, 《위키백과》</ref>
| |
− | | |
− | == 발전 ==
| |
− | 전통적인 문자인식 기술은 텍스트 라인을 찾는 모듈, 문자를 나누는 모듈 등 세분된 여러 모듈로 동작하고, 문자를 구분하는 기준이 되는 특징을 사람이 직접 등록해야 했다. 게다가 고품질의 이미지에서만 제한적으로 동작하였고, 손글씨나 필기체에 대한 인식률은 상대적으로 낮다는 단점이 있었다.
| |
− | | |
− | 명함이나 서류 등 문서 이미지 속 문자만 인식하던 과거와 달리, 현재의 문자인식 기술은 사진이나 영상 속 문자까지 인식하는 기술로 발전했다. 오늘날 컴퓨터 비전(computer vision)의 기술적 발전으로 딥러닝 기반의 알고리즘을 활용해, 사람이 직접 문자를 등록하는 대신 컴퓨터가 직접 대량의 데이터 학습을 통해 이미지에서 텍스트를 인식하는 규칙을 스스로 만들어내게 되었다. 이를 통해 인식률과 저확도가 이전보다 향상되어서 문자인식의 인식 오류를 보완하고 있으며, 문자인식의 단점을 보완하기 위한 알고리즘들도 지속적으로 개발되어 점점 발전하는 추세다.<ref name='과기부'>과학기술정보통신부, 〈[https://m.blog.naver.com/with_msip/221846680863 이미지 속 문자를 손쉽게 디지털화하는 'OCR']〉, 《네이버 블로그》, 2020-03-10</ref>
| |
− | | |
− | == 원리 ==
| |
− | 문자인식 기술은 크게 문자 찾기(text detection)와 문자 매칭(text recognition)으로 구성되어 있다. 먼저 문자 찾기는 이미지에서 문자가 있는 영역을 찾아낸 후 글자가 어떤 형식으로 구성되어 있는 지 파악하는 부분으로 글자의 방향과 배치(종/횡, 왼쪽부터 시작 등) 등을 파악하는 부분이ㅣ다. 그리고 문자 매칭은 이렇게 찾아낸 글자가 실제 어떤 문자에 해당하는 지 분류하는 역할을 담당한다.<ref>정데만, 〈[https://practical-data.tistory.com/68 OCR(광학 문자 인식)기술은 어떻게 발달하고 있을까?]〉, 《티스토리》, 2023-07-10</ref>
| |
− | | |
− | 문자인식은 일반적으로 다음과 같은 단계를 통해 이루어진다.
| |
− | # 이미지 전처리 : 4단계로 이루어진다. 먼저 이미지에서 불필요한 잡음을 제거하여 인식 정확도를 높이고, 이미지를 흑백으로 변화하여 글자와 배경을 구분하며, 스캔된 이미지가 기울어진 경우 이를 보정하여 정리한다. 이후 글자의 경계를 명확하게 하여 인식하기 쉽게 만든다.
| |
− | # 텍스트 영역 추출 : 이미지에서 텍스트가 있는 영역을 식별한다. 주로 경계 상자(bounding box)를 그려 텍스트가 포함된 부분을 분리한다.
| |
− | # 문자 분할 : 텍스트 영역에서 개별 문자를 분리한다. 이는 주로 문자의 위치와 크기를 분석하여 이루어진다.
| |
− | # 특징 추출 및 문자 인식 : 개별 문자에서 특징을 추출하고, 이를 사전에 학습된 문자 데이터베이스와 비교하여 문자를 인식한다. 현대 OCR 시스템은 주로 CNN을 사용하여 높은 정확도로 특징을 추출하고 인식한다.
| |
− | # 후처리 : 인식된 텍스트를 정리하고, 문맥을 고려하여 오탈자를 수정하며 최종 결과를 생성한다. | |
− | | |
− | ===전처리===
| |
− | 컴퓨터는 사람처럼 직관적으로 문자를 구분하지 못하고, 이미지에서 색깔 분석을 통해 비슷한 밝기를 가진 픽셀들을 덩어리처럼 인식하기 때문에 색깔 차이를 분명하게 해주어 인식률을 높여야 효과적인 문자인식이 가능하다. 전처리 단계는 이미지로부터 텍스트인 영역을 컴퓨터가 보다 쉽게 인식할 수 있도록 이미지를 보정하는 역할을 한다. 전처리 과정에서 사용되는 여러 기술이 있는데 대표적인 기술은 컬러 이미지를 먼저 회색조로 변환하고, 픽셀들의 값을 분석하여 밝기와 명암 대비를 크게 한 후, 픽셀값을 두 범위로 나누어 0과 1로 분류하는 2진화 작업을 수행하는 것이다. 이외에도 얼룩 제거, 라인 제거, 레이아웃 분석 등 여러 기술이 사용된다.<ref name='과기부'/>
| |
− | | |
− | ===문자 분할===
| |
− | 딥러닝 기술을 이용하여 전체 이미지에서 텍스트인 영역을 골라내는 작업을 수행하는 단계다. 아래 그림처럼 텍스트 영역과 그 영역의 회전 각도를 구하고, 텍스트를 수평 형태로 만든다. 이렇게 텍스트 영역을 수평으로 만들어야 다음 단계에서 컴퓨터가 더욱 정확하게 글자를 인식할 수 있다.<ref name='과기부'/>
| |
− | | |
− | ===특징 추출 및 문자인식===
| |
− | 전처리와 글자 문자 분할 단계에서 이미지에서 문자 영역을 골라냈다면 이제부터는 그 문자가 어떤 문자인지 알아내야 한다. 아래 그림과 같이, 먼저 텍스트 영역의 문자들을 하나의 문자로 각각 인식한다. 그 다음 딥러닝 시스템의 역할이 중요하다. 글자를 구분하는 여러 특징을 대량의 데이터를 통해 컴퓨터가 학습을 하여 그 문자가 어떤 문자인지 알아낸다.<ref name='과기부'/>
| |
− | | |
− | ===후처리===
| |
− | 마지막으로 후처리 단계는 출력된 텍스트의 내용적인 부분을 따져서 부자연스러운 단어나 문자가 포함되면 이를 고침으로써 정확도를 보다 향상하는 단계다. 예를 들어 '홋길동'이라는 단어는 맥락상 이름임을 알 수 있고 '홋'이라는 성은 존재하지 않으므로 '홍길동'이라고 수정된다.<ref name='과기부'/>
| |
− | | |
− | == 응용 분야 ==
| |
− | 문자인식 기술은 다양한 산업과 분야에서 광범위하게 활용된다.
| |
− | * '''문서 디지털화''' :종이 문서를 스캔하여 디지털 텍스트로 변환함으로써 저장, 검색, 편집 등을 가능하게 한다. 예를 들어 도서관에서 책을 디지털화하여 온라인으로 제공할 수 있다.
| |
− | * '''우편물 분류''' :우편물의 주소를 자동으로 인식하여 분류 작업을 자동화한다. 이는 우체국과 물류 회사에서 많이 사용된다.
| |
− | * '''금융 및 은행업''' :수표, 영수증, 송장 등의 금융 문서를 자동으로 처리하여 데이터 입력 과정을 자동화한다. 이는 은행에서 수표를 스캔하여 내용을 자동으로 읽어들이는 시스템에 사용된다.
| |
− | * '''헬스케어''' :의료 기록, 처방전 등의 문서를 디지털화하여 환자 정보를 관리하고, 의료 기록을 쉽게 검색할 수 있게 한다.
| |
− | * '''법률''' :법률 문서, 계약서 등을 디지털화하여 검색과 관리가 용이하도록 한다.
| |
− | * '''교육''' :교과서, 연구 논문 등을 디지털화하여 학생과 연구자가 쉽게 접근할 수 있도록 한다.
| |
− | * '''모바일 애플리케이션''' :스마트폰 카메라를 통해 명함, 서적 등의 텍스트를 인식하여 사용자가 쉽게 정보를 저장하고 관리할 수 있도록 한다. 예를 들어, 모바일 스캐너 앱은 사용자가 문서를 촬영하여 즉시 텍스트를 추출하고 편집할 수 있게 한다.
| |
− | * '''번역''' :외국어 문서를 인식하여 자동 번역 시스템과 연동한다. 이는 관광객이 외국어 표지판을 읽을 때 유용하다.
| |
− | | |
− | == 과제 및 전망 ==
| |
− | 문자인식 기술은 몇 가지 과제를 가지고 있다. 먼저 다양한 서체와 언어를 정확하게 인식하는 것이 도전 과제이다. 손글씨는 인쇄된 텍스트보다 변형이 심하여 인식이 어려운 경우도 있다. 잡지나 신문지처럼 복잡한 레이아웃의 문서를 인식하는 것은 여전히 어려운 문제이기도 하다. 또한 스캔된 문서나 사진에서 발생하는 노이즈와 왜곡을 처리하는 것도 중요한 과정이다.
| |
− | | |
− | 문자인식 기술은 인공지능과 컴퓨팅 파워의 발전에 따라 계속해서 발전할 것이다. 특히 다양한 언어와 문자를 더욱 정확하게 인식할 수 있게 될 것이고, 모바일기기와 연동하여 실시간으로 텍스트를 인식하고 번역하는 기능이 강화될 것이다. 또한 문자인식 기술이 다양한 자동화 시스템과 통합되어 효율성을 더욱 높일것이다. 더불어 문자인식 기술이 인공지능과 결합되어 더 나은 문맥 이해와 데이터 분석을 제공할 것이다.
| |
− | | |
− | {{각주}}
| |
− | | |
− | == 참고자료 ==
| |
− | * 〈[https://ko.wikipedia.org/wiki/%EA%B4%91%ED%95%99_%EB%AC%B8%EC%9E%90_%EC%9D%B8%EC%8B%9D 광학 문자 인식]〉, 《위키백과》
| |
− | * 킬크, 〈[https://cusee.net/2462898 높은 한글 인식률을 자랑하는 OCR 솔루션, ABBYY FineReader 11]〉, 《개인블로그》, 2011-11-29
| |
− | * 과학기술정보통신부, 〈[https://m.blog.naver.com/with_msip/221846680863 이미지 속 문자를 손쉽게 디지털화하는 'OCR']〉, 《네이버 블로그》, 2020-03-10
| |
− | * 정데만, 〈[https://practical-data.tistory.com/68 OCR(광학 문자 인식)기술은 어떻게 발달하고 있을까?]〉, 《티스토리》, 2023-07-10
| |
− | | |
− | == 같이 보기 ==
| |
− | * [[인공지능]]
| |
− | | |
− | {{인공지능 활용|추가 필요}}
| |