KR102492369B1 - 텍스트 제거를 위한 이진화 및 정규화 기반 인페인팅 - Google Patents

텍스트 제거를 위한 이진화 및 정규화 기반 인페인팅 Download PDF

Info

Publication number
KR102492369B1
KR102492369B1 KR1020217008212A KR20217008212A KR102492369B1 KR 102492369 B1 KR102492369 B1 KR 102492369B1 KR 1020217008212 A KR1020217008212 A KR 1020217008212A KR 20217008212 A KR20217008212 A KR 20217008212A KR 102492369 B1 KR102492369 B1 KR 102492369B1
Authority
KR
South Korea
Prior art keywords
text
mask
image
original image
binary
Prior art date
Application number
KR1020217008212A
Other languages
English (en)
Other versions
KR20210043681A (ko
Inventor
후이후이 수
웨이 수
홍유 순
시아오싱 주
판 장
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20210043681A publication Critical patent/KR20210043681A/ko
Application granted granted Critical
Publication of KR102492369B1 publication Critical patent/KR102492369B1/ko

Links

Images

Classifications

    • G06T5/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/155Segmentation; Edge detection involving morphological operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/181Segmentation; Edge detection involving edge growing; involving edge linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Character Input (AREA)

Abstract

융합 마스크는 에지 마스크, 컨투어 마스크 및 바이너리 마스크의 조합으로서 인페인팅을 위해 텍스트를 추출한다. 에지 마스크는 컨투어 마스크를 얻기 위해 텍스트의 계층적 클로즈드 에지 컨투어 집합을 찾고, 클로즈드 에지 컨투어를 가능한 텍스트라고 라벨링된 픽셀로 채운다. 원본 이미지를 바이너리 이미지로 변환하고 바이너리 이미지 내의 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용한다. 바이너리 이미지 내 텍스트의 검출된 스트로크 에지에 기초하여 바이너리 이미지를 분할하고, 인페인팅을 위한 전경으로서 적어도 하나의 바이너리 마스크의 후보를 얻기 위해 각각의 분할 이미지에 적어도 하나의 이진화 방법을 적용한다. 융합 마스크는 텍스트를 추출하기 위해 원본 이미지에 적용되고, 인페인팅 알고리즘은 텍스트가 추출된 원본 이미지의 부분을 인페인팅한다.

Description

텍스트 제거를 위한 이진화 및 정규화 기반 인페인팅
삭제
본 출원은 이미지 프로세싱 디바이스, 그와 연관된 방법, 보다 구체적으로 여러 유형의 텍스트를 제거하고 이미지의 배경을 복원하기 위한 텍스트 영역 이진화 및 정규화 기반 인페인팅(inpainting) 시스템 및 방법에 관한 것이다.
디지털 인페인팅은 이미지에 알고리즘을 적용하여 이미지 데이터의 유실, 열화, 손상된 부분을 복원하는 프로세스이다. 인페인팅은 이미지의 코딩 및 전송에서 유실된 블록을 복구하는데 사용될 수도 있고, 이미지와 영상에서의 로고나 텍스트를 지우고 원본 이미지의 누락된 세부 정보를 채우는데 사용될 수도 있다. 텍스트, 자막, 로고, 스탬프, 스크래치와 같은 폐색(occlusion) 제거, 필름, 사진 복원에 이르기까지 이미지 인페인팅의 많은 적용이 있다.
때때로 이미지는 심미적 이유, 번역, 기타 다른 이유로 인해 제거되어야 할 내재된 텍스트를 포함하고 있을 수도 있다. 이러한 경우에, 목적은 불필요한 텍스트를 제거하고, 텍스트가 위치해 있던 이미지의 배경을 복구하고, 텍스트 영역을 이미지 배경으로 인페인팅하는 것이다. 그러나, 텍스트 영역이 수평이 아니라 각도를 가지고 비스듬히 회전되어 있는 경우 처리가 복잡해진다. 또한, 텍스트 영역의 문자는 임의의 텍스트 크기, 예술적인 폰트 또는 색상을 가질 수 있고, 이는 나아가 텍스트 제거 및 인페인팅 프로세스를 더욱 복잡하게 한다. 기존 프로세스, 예를 들어 모바일 장치에 텍스트 인페인팅을 적용하기 위한 고효율 저전력 소비 프로세스는 그러한 텍스트를 효과적으로 제거하지 못하고, 다양한 종류의 텍스트 스타일과 각도를 가진 다수의 텍스트 영역을 효과적으로 인페인팅 하지 못한다.
상술한 바와 같이, 인페인팅의 적용례 중 하나는 텍스트 또는 이미지에서의 로고 및 텍스트 자막과 같은 대상의 제거이다. 도 1은 이미지(102)의 텍스트 "NOODLES"이 제거되고 배경이 이미지(104)로 인페인팅되는 예시를 도시한다. 도시된 것처럼, 인페인팅된 이미지(104)는 일관성이 없다. 텍스트 번역 애플리케이션에서는, 원본 텍스트를 제거하고 번역된 텍스트를 그 자리에 대체하는 것을 원한다. 도 2는 번역 텍스트(206), 이 경우에는 "Emergency refuge"를 렌더링 하기 전, 깨끗한 배경(204)를 얻기 위해 이미지(202)의 원래 문자를 제거하는 인페인팅이 사용된 번역 어플리케이션을 도시한다.
도 2에 도시된, 이미지 렌더링을 위한 일반적인 인페인팅 프레임워크는 도 3에 도시되어 있다. 도 3에 도시된 것처럼 두 단계로 이루어져 있다.
1. 텍스트가 흰색으로 라벨링되고, 배경이 검은색으로 라벨링되는, 원본 이미지(300)와 같은 크기의 텍스트 마스크(이미지 세그멘테이션(image segmentation)) 를 찾는다(단계(302)). 텍스트 마스크(303)는 텍스트 전경(foreground)과 배경의 픽셀을 구별한다. 이상적인 마스크는 텍스트의 모든 픽셀을 덮을 수 있다. 배경에서 전경을 분리하는 기술은 예를 들어 미국 특허 9,042,649에서 설명된 적응적 임계치(adaptive thresholding) 기술을 포함한다.
2. 단계(304)에서는 원본 이미지의 텍스트 마스크를 사용하고, 인페인팅된 이미지를 얻기 위해, Telea에 의해 "An image inpainting technique based on the fast-marching method," Journal of graphics tools 9.1 (2004), pp. 25-36, (https://docs.opencv.org/ref/master/df/d3d/tutorial_py_inpainting.html)에 개시된 오픈 소스 이미지 인페인팅 알고리즘과 같은 특정 인페인팅 알고리즘을 적용한다. 이 알고리즘은 영역의 경계에서 시작하고, 점차적으로 경계에 있는 모든 것들을 먼저 채우면서 영역 안으로 들어간다. 이 알고리즘은 인페인팅될 픽셀 주변에 있는 작은 네이버후드를 이용한다. 이 픽셀은 네이버후드에 있는 모든 알려진 픽셀의 정규화된 가중치의 합으로 대체된다. 픽셀이 인페인팅되면, 쾌속행진산법(Fast-Marching Method)를 사용하여 가장 가까운 다음 픽셀로 이동한다. 다른 인페인팅 기술에는, 이미지 인페인팅 결과(306)를 생성하기 위해, 예를 들어 중국 특허 102567955와 같이, 인페인팅 되어야 할 영역의 윤곽을 반복적으로 결정하고, 인페인팅 되어야 할 영역이 채워질 때까지 이미지의 인페인팅 되어야 할 영역의 이웃을 순서대로 안쪽으로 설정하여 모든 윤곽 포인트의 알려지지 않은 픽셀 포인트를 인페인팅 함으로써 이미지를 인페인팅하는 방법이 있다.
이 접근법은 컨투어(contour)의 시작 포인트의 초기화에 의존하고, 이는 강인(robust)하지 않다. 또한 이는 인페인팅 결과를 업데이트 하기 위해 속도 문제를 유발하는 재귀(recursion) 체계를 채택한다. 텍스트 마스크를 찾기 위한 기존 접근법은 예를 들어 도 4에 도시된 바와 같이, 픽셀 이미지(402)에서 0 또는 255의 값을 갖는 바이너리(binary) 이미지(404)로 변환하기 위해 이미지 이진화 분할(image binarization segmentation)을 사용하는 것을 포함한다. 이진화는 이미지를 분할하기 위해 로컬 또는 전역적인(globally) 임계치를 찾는 데 쓰인다. 픽셀값이 임계치보다 크면 픽셀값은 255로 설정되고, 반면 픽셀값이 임계치보다 작은 경우 픽셀값은 0으로 설정된다. 그러나, 대부분의 이진화 알고리즘은 이미지의 낮은 밝기 또는 낮은 콘트라스트로 인해 텍스트가 배경에서 잘못 분리되기 때문에 제한된다. 예를 들어, 오츠(Otsu)의 이진화 방법은 전역적인 임계치를 찾기 위해 클러스터링 기반의 이미지 임계화를 자동적으로 수행하지만, 이미지의 낮은 밝기 및 낮은 콘트라스트 부분을 처리하기 충분할 정도로 강인하지는 않다.
이진화 프로세스는 특히 텍스트의 에지(edge) 픽셀과 같은 텍스트 정보의 손실을 유발할 수도 있다. 일반적으로, 텍스트와 배경 사이의 에지는 도 5의 이미지(502)의 확대도(504)에 도시되어 있듯이 흐릿한 전환 영역이 있어서 이상적으로 뚜렷하지 않다. 이러한 한계로 인해, 도 6에 도시된 Niblack, Sauvola et al. 및 Wolf et al.의 알고리즘과 같은 기존 이진화 알고리즘의 결과물(600)은 텍스트 픽셀이 부정확하게 라벨링되거나 배경이 텍스트로 잘못 라벨링된다는 점에서 차선책이다. 상기 알고리즘의 설명은 Niblack, W.의 "An introduction to digital image processing," (Prentice- Hall, Englewood Cliffs, NJ, 1986), pp. 115-116, Sauvola, J., et al.의 "Adaptive document binarization," Proc. 4th Int. Conf. on Document Analysis and Recognition, Ulm Germany, 1997, pp. 147-152 및 C. Wolf, et al.의 "Text localization enhancement and binarization in multimedia documents," Proc. Int. Conf. Pattern Recognition, vol. 4, pp. 1037-1040, 2002. 에서 찾을 수 있다. 게다가, 이진화는 이미지를 분할하는 프로세스지만, 전경과 배경을 판단하는 프로세스는 아니다. 만약 텍스트를 배경으로 잘못 라벨링하면, 진짜 배경이 텍스트 색상으로 인페인팅된다.
Bhuvaneswari, et al.은 "Automatic Detection and Inpainting of Text Images," International Journal of Computer Applications (0975- 8887), Volume 61, No.7, 2013, 에서 입력 이미지의 크기를 400 x 400 픽셀로 조정하고 로컬 임계치 이진화를 위해 Niblack 방법을 적용하는 다른 접근법을 개시했다. 그리고 나서 커넥티드 컴포넌트(connected component) 알고리즘을 사용하여 가능한 텍스트 영역을 찾고 텍스트가 아닌 영역을 제거하기 위한 두 임계치를 설정한다. 팽창(dilation) 후 텍스트 영역의 바이너리 이미지가 인페인팅을 위한 마스크가 된다. 그러나, Niblack 방법은 로컬 임계치 이진화 방법이고 그 용법에 한계가 있다는 점에서 이 알고리즘은 제한된다. 또한, 입력 이미지 크기를 400 x 400 픽셀로 조정하는 절차는 특히 장문의 텍스트의 경우에 텍스트 정보의 손실을 유발한다. 게다가, 대규모 또는 넓은 연결 영역을 제거하기 위한 임계치 설정 기준은 강인하지 않다. 텍스트 영역을 인페인팅 하기 위한 바이너리 마스크 결과물은 많은 경우에, 특히 이미지 퀄리티가 낮거나 이미지 밝기가 일정하지 않은 경우에 만족스럽지 않다.
이하 상세한 설명에서 자세히 설명되는 단순화된 형태로 개념을 선택하기 위해 다양한 예시가 설명된다. 본 기재는 청구 대상의 핵심 또는 필수적 특징을 식별하기 위한 것이 아니며, 청구 대상의 범위를 한정하기 위한 것도 아니다.
본 명세서에서 설명되는 시스템과 방법은 인페인팅을 위한 텍스트 영역의 라벨링을 위해 원본 이미지의 텍스트 영역의 마스크의 정확도를 개선함으로써 종래기술의 한계점을 해결한다. 본 명세서에서 설명되는 시스템 및 방법은 텍스트 영역 마스크를 추출하기 위해 이진화를 사용함으로써 위에서 제시한 문제를 해결한다. 샘플 실시예에서, 검은색 배경과 흰색 문자의 정규화에 기초한 세 개의 마스크인 바이너리 마스크, 에지(edge) 마스크 및 컨투어 마스크가 융합 마스크로 조합된다. 그 대신, 오직 세 개의 마스크 중 두 개만 융합 마스크로 조합될 수도 있다(예를 들어, 컨투어 마스크와 바이너리 마스크가 융합 마스크로 조합됨). 각 유형의 마스크가 제공하는 이점은 원본 이미지 내 텍스트 픽셀이 인페인팅으로 완전히 덮이는 것을 보장한다는 것이다. 입력 이미지 상에 인페인팅 알고리즘이 사용된 융합 마스크를 적용함으로써 전체 배경이 검색된다. 검은색 배경과 흰색 문자로의 이미지 정규화는 텍스트 이진화 마스크를 인페인팅을 위한 전경으로 결정하는 한편, 융합 마스크는 안쪽의 텍스트 픽셀은 물론 텍스트 에지의 특징도 포함해서, 텍스트 분할 정확도를 보장한다. 게다가, 프로세싱이 복잡하지 않아서, 상대적으로 낮은 프로세싱 능력으로도 모바일 장치에서 텍스트 인페인팅을 구현하는 방법과 시스템을 사용할 수 있게 하고, 배터리 수명에 영향을 상대적으로 적게 미치면서도 모바일 장치에서 텍스트 인페인팅을 구현하는 방법과 시스템을 사용할 수 있게 한다.
본 명세서의 제 1 양태에 따르면, 인페인팅을 위한 텍스트 추출을 위해 원본 이미지에서 텍스트 마스크를 찾는 컴퓨터로 구현된 방법이 제공된다. 하나 이상의 프로세서를 이용하는 이 방법은 에지 마스크를 얻기 위해 원본 이미지 내 텍스트의 에지를 검출하는 에지 검출을 적용하고, 컨투어 마스크를 얻기 위해 계층적 클로즈드 에지 컨투어 집합(a set of hierarchical closed edge contours)을 찾고, 가능한 텍스트라고 라벨링된 픽셀로 클로즈드 에지 컨투어를 채우기 위해 에지 마스크를 사용한다. 원본 이미지를 바이너리 이미지로 변환하고 바이너리 이미지 내 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용하고, 바이너리 이미지 내 텍스트의 검출된 스트로크 에지에 기초하여 바이너리 이미지를 분할한다. 인페인팅을 위한 전경으로서 적어도 하나의 바이너리 마스크의 후보를 얻기 위해 각각의 분할 이미지에 적어도 하나의 이진화 방법을 적용한다. 에지 마스크, 컨투어 마스크, 바이너리 마스크 중 적어도 두 개를 융합 마스크로 조합하고, 원본 이미지 내 텍스트를 추출하고 텍스트가 없는 원본 이미지의 원본 배경을 얻기 위해 융합 마스크를 원본 이미지에 적용한다. 텍스트가 추출된 원본 이미지의 부분이 인페인팅된다. 융합 마스크로 조합되는 각 유형의 마스크는 원본 이미지의 텍스트 픽셀이 인페인팅으로 완전히 덮이는 것을 보장하는 이점을 제공한다.
본 명세서의 제 2 양태에 따르면, 명령어를 포함하는 비일시적 메모리와, 메모리와 통신하는 하나 이상의 프로세서가 포함된 이미지 프로세싱 디바이스가 제공된다. 하나 이상의 프로세서는 원본 이미지의 텍스트 마스크를 찾는 명령어를 실행하여, 하나 이상의 프로세서는 인페인팅을 위한 텍스트를 추출하기 위해 원본 이미지에서 텍스트 마스크를 발견하기 위해 명령어를 실행하여, 에지 마스크를 얻기 위해, 원본 이미지 내 텍스트의 에지를 검출하는 에지 검출을 적용하는 단계와, 컨투어 마스크를 얻기 위해, 텍스트의 계층적 클로즈드 에지 컨투어 집합을 찾고, 클로즈드 에지 컨투어를 가능한 텍스트라고 라벨링된 픽셀로 채우기 위해 에지 마스크를 사용하는 단계와, 원본 이미지를 바이너리 이미지로 변환하고 바이너리 이미지 내 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용하는 단계와, 바이너리 이미지 내 텍스트의 검출된 스트로크 에지에 기초하여 바이너리 이미지를 분할하고, 인페인팅을 위한 전경으로서 적어도 하나의 바이너리 마스크의 후보를 얻기 위해 각각의 분할 이미지에 적어도 하나의 이진화 방법을 적용하는 단계와, 에지 마스크, 컨투어 마스크, 바이너리 마스크 중 적어도 두 개를 융합 마스크로 조합하고, 원본 이미지 내 텍스트를 추출하고 텍스트가 없는 원본 이미지의 원본 배경을 얻기 위해 융합 마스크를 원본 이미지에 적용하는 단계와, 텍스트가 추출된 원본 이미지의 부분에 인페인팅을 하는 단계를 수행한다. 제 1 양태와 마찬가지로, 융합 마스크로 조합되는 각 유형의 마스크는 원본 이미지의 텍스트 픽셀이 인페인팅으로 완전히 덮이는 것을 보장하는 이점을 제공한다.
본 명세서의 제 3 양태에 따르면, 원본 이미지에서 인페인팅용 텍스트를 추출하기 위한 컴퓨터 명령어가 저장된 비일시적 컴퓨터 판독 가능 매체가 제공되고, 이 명령어가 하나 이상의 프로세서에 의해 실행되는 경우, 하나 이상의 프로세서가, 에지 마스크를 얻기 위해 원본 이미지 내 텍스트의 에지를 검출하는 에지 검출을 적용하는 단계와, 컨투어 마스크를 얻기 위해 텍스트의 계층적 클로즈드 에지 컨투어 집합을 찾고, 클로즈드 에지 컨투어를 가능한 텍스트라고 라벨링된 픽셀로 채우기 위해 에지 마스크를 사용하는 단계와, 원본 이미지를 바이너리 이미지로 변환하고 바이너리 이미지 내 상기 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용하는 단계와, 바이너리 이미지 내 상기 텍스트의 검출된 스트로크 에지에 기초하여 상기 바이너리 이미지를 분할하고, 인페인팅을 위한 전경으로서 적어도 하나의 바이너리 마스크의 후보를 얻기 위해 각각의 분할 이미지에 적어도 하나의 이진화 방법을 적용하는 단계와, 에지 마스크, 컨투어 마스크, 바이너리 마스크 중 적어도 두 개를 융합 마스크로 조합하고, 원본 이미지 내 텍스트를 추출하고 텍스트가 없는 원본 이미지의 원본 배경을 얻기 위해 융합 마스크를 원본 이미지에 적용하는 단계와, 원본 이미지의 텍스트가 추출된 부분에 인페인팅을 하는 단계를 수행하게 한다. 제 1, 2 양태와 마찬가지로, 융합 마스크로 조합되는 각 유형의 마스크는 원본 이미지의 텍스트 픽셀이 인페인팅으로 완전히 덮이는 것을 보장하는 이점을 제공한다.
본 명세서의 제 4 양태에 따르면, 명령어를 포함하는 비일시적 메모리와, 메모리와 통신하는 하나 이상의 프로세서가 포함된 이미지 프로세싱 디바이스가 제공되고, 이 프로세서는 원본 이미지에서 인페인팅용 텍스트를 추출하기 위한 텍스트 마스크를 찾는 명령어를 실행한다. 메모리에 저장된 명령어는, 명령어가 이 프로세서에 의해 실행되면, 에지 마스크를 얻기 위해 원본 이미지 내 텍스트의 에지를 검출하는 에지 검출을 적용하는 수단과, 컨투어 마스크를 얻기 위해 텍스트의 계층적 클로즈드 에지 컨투어 집합을 찾고, 클로즈드 에지 컨투어를 가능한 텍스트라고 라벨링된 픽셀로 채우기 위해 에지 마스크를 사용하는 수단과, 원본 이미지를 바이너리 이미지로 변환하고 바이너리 이미지 내 상기 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용하는 수단과, 바이너리 이미지 내 상기 텍스트의 검출된 스트로크 에지에 기초하여 상기 바이너리 이미지를 분할하고, 인페인팅을 위한 전경으로서 적어도 하나의 바이너리 마스크의 후보를 얻기 위해 각각의 분할 이미지에 적어도 하나의 이진화 방법을 적용하는 수단과, 에지 마스크, 컨투어 마스크, 바이너리 마스크 중 적어도 두 개를 융합 마스크로 조합하고, 원본 이미지 내 텍스트를 추출하고 텍스트가 없는 원본 이미지의 원본 배경을 얻기 위해 융합 마스크를 원본 이미지에 적용하는 수단과, 원본 이미지의 텍스트가 추출된 부분에 인페인팅을 하는 수단을 제공하는 기능 처리 모듈로 구성된다. 제 1, 2, 3 양태와 마찬가지로, 융합 마스크로 조합되는 각 유형의 마스크는 원본 이미지의 텍스트 픽셀이 인페인팅으로 완전히 덮이는 것을 보장하는 이점을 제공한다.
임의의 상기 양태의 제 1 구현으로서, 에지 검출을 적용하는 단계 이전에 원본 이미지는 그레이스케일(grayscale) 이미지로 변환된다.
임의의 상기 양태의 제 2 구현으로서, 에지 검출을 적용하는 단계는, 원본 이미지내 텍스트의 에지를 검출하기 위해 모폴로지 그래디언트 에지 검출 알고리즘(morphological gradient edge detection algorithm)과 소벨 오퍼레이터 에지 검출 알고리즘(Sobel operator edge detection algorithm)중 적어도 하나를 적용한다.
임의의 상기 양태의 제 3 구현으로서, 텍스트의 계층적 클로즈드 에지 컨투어 집합을 찾기 위해 에지 마스크를 사용하는 단계는, 원본 이미지에 모폴로지 그래디언트 에지 검출 알고리즘을 적용하여 모폴로지 그래디언트 컨투어 마스크를 생성하기 위한 단계와, 그레이스케일 이미지에 소벨 오퍼레이터 에지 검출 알고리즘을 적용하여 소벨 컨투어 마스크를 생성하는 단계와, 모폴로지 그래디언트 컨투어 마스크와 소벨 컨투어 마스크를 조합하여 컨투어 마스크를 생성하는 단계를 포함한다.
임의의 상기 양태의 제 4 구현으로서, 컨투어 마스크에 의해 구획된 픽셀을 채워 클로즈드 에지 컨투어를 채우기 위한 커넥티드 컴포넌트 방법을 적용한다.
임의의 상기 양태의 제 5 구현으로서, 원본 이미지를 바이너리 이미지로 변환하고, 바이너리 이미지 내 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용하는 단계는, 원본 이미지의 콘트라스트를 개선하기 위해 원본 이미지의 색조, 밝기 및 채도(Hue, Lightness, Saturation, HSL) 색 공간 내의 밝기 채널을 이진화하는 단계와, 원본 이미지의 콘트라스트를 개선하기 위해 LAB 색 공간 이진화의 대비 제한 적응 히스토그램 평활화(Contrast limited adaptive histogram equalization, CLAHE)를 이진화하는 단계와, 원본 이미지의 콘트라스트를 개선하기 위해 주성분 분석(Principal Component Analysis) 이진화를 적용하여 LAB 색 공간의 밝기 채널을 이진화하는 단계와, 각 이진화 방법에 의해 생성된 바이너리 이미지에서 최상의 바이너리 이미지를 선택하는 단계 중 적어도 하나를 포함한다.
임의의 상기 양태의 제 6 구현으로서, 원본 이미지를 바이너리 이미지로 변환하고, 바이너리 이미지 내 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용하는 단계는, 원본 이미지의 색조, 밝기 및 채도 색 공간 내의 이진화된 밝기 채널을 반전(inverse)하는 단계와, LAB 색 공간 이진화의 이진화된 대비 제한 적응 히스토그램 평활화를 반전하는 단계와, 주성분 분석 이진화를 반전하는 단계와, 각각의 이진화 방법 및 각각의 반전 이진화 방법에 의해 생성된 바이너리 이미지로부터 최상의 바이너리 이미지를 선택하는 단계 중 적어도 하나를 포함한다.
임의의 상기 양태의 제 7 구현으로서, 바이너리 이미지 내 텍스트의 검출된 스트로크 에지에 기초하여 바이너리 이미지를 분할하는 것은, 수평 및 수직 히스토그램 투영에 의해 바이너리 이미지를 서브 이미지로 분할하는 것과 서브 이미지를 이진화하는 것을 포함한다.
임의의 상기 양태의 제 8 구현으로서, 텍스트를 제 1 색상 픽셀로 설정하고 배경을 제 2 색상 픽셀로 설정하는 것을 포함하여 바이너리 이미지를 정규화하고, 적어도 하나의 바이너리 마스크 후보군에서 최상의 바이너리 마스크를 선택한다.
본 방법은 수행될 수 있고, 컴퓨터 판독 가능 매체 상의 명령어는 디바이스에 의해 처리될 수 있으며, 컴퓨터 판독 가능 매체상의 명령어와 본 방법의 추가적인 특징은 장치의 기능에 기인한다. 또한, 각 양태를 위해 제공된 설명과 그것의 구현은 다른 양태와 그에 해당하는 구현에도 동일하게 적용된다. 각각의 실시예는 하드웨어, 소프트웨어 또는 이들의 임의의 조합으로 구현될 수 있다. 또한, 전술한 임의의 예시는 본 개시물의 범위 내에서 새로운 실시예를 만들기 위해 다른 전술한 임의의 하나 이상의 예시와 조합될 수 있다.
반드시 축척으로 그려지지는 않은 본 도면에서, 상이한 도면 내에서 유사한 숫자는 유사한 구성요소를 설명할 수 있다. 본 도면은 일반적으로 본 명세서 내에서 논의된 다양한 실시예를 예시로서 도시하나, 제한하는 것은 아니다.
도 1은 텍스트 "NOODLES"가 제거되고 배경이 인페인팅되는 예시를 도시한다.
도 2는 번역된 텍스트를 렌더링하기 전에, 인페인팅이 사용되어 원본 문자가 제거되고 깔끔한 배경을 얻는 번역기 어플리케이션을 도시한다.
도 3은 기존 접근법으로 이미지를 렌더링하기 위한 일반적인 인페인팅 프레임워크를 도시한다.
도 4는 픽셀 이미지를 0 또는 255값을 가진 바이너리 이미지로 변환함으로써 텍스트 마스크를 찾기 위한 이미지 이진화 분할 접근법을 도시한다.
도 5는 이진화 프로세스가 어떻게 텍스트 정보, 특히 이미지의 에지 픽셀의 손실을 발생시킬 수 있는지를 도시한다.
도 6은 텍스트 픽셀이 부정확하게 라벨링되어있거나 배경이 텍스트로 잘못 라벨링되어있는 기존 이진화 알고리즘의 결과를 도시한다.
도 7은 인페인팅용 융합 마스크를 생성하기 위한 샘플 실시예를 도시한다.
도 8은 샘플 실시예에서, 인페인팅된 이미지를 만드는데 사용하는 융합 마스크를 생성하기 위한 상세한 흐름도를 도시한다.
도 9는 이진화된 침식 이미지와 팽창 이미지의 차이로 제공하는 모폴로지 그래디언트를 도시한다.
도 10은 모폴로지 그래디언트가, 텍스트 에지 픽셀을 더 정확하게 검출하지만 낮은 콘트라스트의 텍스트와 배경에서는 실패하는 방법을 도시한다.
도 11은 샘플 실시예에서 컨투어 마스크를 얻는 단계를 도시한다.
도 12는 에지 이미지로부터 생성된 컨투어 마스크를 도시한다.
도 13은 바이너리 마스크에 추가하여 컨투어 마스크가 필요한 이유를 도시한다.
도 14는 샘플 실시예에서 바이너리 마스크가 생성되는 절차를 도시한다.
도 15는 CLAHE 알고리즘을 사용한 그레이스케일 이미지의 프로세싱 결과인 이진화 이미지를 도시한다.
도 16은 HLS에서 L을 이진화한 후의 입력 이미지를 다른 방법과 비교하여 도시한다.
도 17은 PCA를 사용하여 이진화된 입력 이미지의 예시를, 오직 한계치만 설정하고 텍스트의 경계를 분할한 다른 방법과 비교하여 도시한다.
도 18은 낮은 콘트라스트 또는 낮은 밝기의 예시와 이진화된 이미지 결과를 도시한다.
도 19는 각 열(column)의 흑백 변화를 투영하고 스트로크 에지의 시작 열을 찾는 수직 히스토그램 투영을 도시한다.
도 20은 각 행(row)의 픽셀값의 합을 투영하고 스트로크 에지의 시작 행을 찾는 수평 히스토그램 투영을 도시한다.
도 21은 분할 후 이진화의 이점을 보여주는 예시이다.
도 22는 융합 마스크를 제공하기 위해, 산출된 에지 마스크, 컨투어 마스크, 바이너리 마스크의 조합을 도시한다.
도 23은 도 7 내지 도 22에 관해 설명된 바와 같이 생성된 융합 마스크를 사용한 결과와 전통적인 바이너리 마스크를 사용한 결과의 비교를 도시한다.
도 24는 융합 마스크의 적용에 따른 기술적 이점의 다른 예시를 나타낸다.
도 25는 전경이 흰색으로 라벨링되고, 바이너리 마스크 후보를 컨투어 마스크와 비교하여 가장 비슷한 마스크가 선택되는 정규화 절차를 도시한다.
도 26은 텍스트가 배경으로 잘못 라벨링된 결과를 텍스트가 전경으로 정확히 라벨링된 결과와 비교하여 도시한다.
도 27은 본 명세서에서 설명된 텍스트 제거 및 인페인팅 기술을 종래 번역기 어플리케이션이 사용하는 종래 텍스트 제거 및 인페인팅 기술과 비교하여 도시한다.
도 28은 예시적인 실시예에 따른, 도 7 내지 도 27에 관해 위에서 설명된 바와 같이 이미지 인페인팅을 위한 융합 마스크를 생성하는 회로도를 도시하는 블록 다이어그램이다.
이하에서 하나 이상의 실시예의 예시적인 구현이 제공되지만, 도 7 내지 도 28에 관련하여 설명되는 개시된 시스템 및/또는 방법은 현재 알려져 있거나 존재하는지 여부에 관계없이 임의의 수의 기술을 이용하여 구현할 수 있다는 것을 처음부터 이해해야 한다. 본 개시물은 본 명세서에서 표현되고 설명된 예시적인 구현 및 설계를 포함하여 이하에 설명된 예시적인 구현, 도면 및 기술으로 제한되지 않아야 하나, 첨부된 청구항 및 그것의 전 범위 등가물의 범위 내에서 수정될 수 있다.
다음의 설명에서, 본 명세서의 일부를 형성하고 실시될 수 있는 특정 실시예를 예시로서 도시한 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 명세서에 설명된 방법을 실시 할 수 있도록 충분히 자세히 설명되며, 다른 실시예가 사용될 수도 있을 뿐만 아니라, 본 개시물의 범위를 벗어나지 않는 구조적, 논리적, 전기적 변경이 이루어질 수 있음을 이해해야한다. 그러므로, 실시예에 대한 다음의 설명은 한정된 의미로 받아들여져서는 안되며, 본 개시물의 범위는 청구범위에 의해 정의된다.
본 명세서에서 설명된 기능 또는 알고리즘은 일 실시예에서 소프트웨어로 구현될 수도 있다. 이 소프트웨어는 하나 이상의 비일시적 메모리나 다른 유형의 하드웨어 기반 저장 장치(로컬 또는 네트워크)와 같이 컴퓨터 판독 가능 매체 또는 컴퓨터 판독 가능 저장 장치에 저장된 컴퓨터 실행 가능 명령어로 구성될 수도 있다. 또한, 그러한 기능은 모듈에 대응되고, 이는 소프트웨어, 하드웨어, 펌웨어 또는 그들의 조합이 될 수 있다. 복수의 기능은 하나 이상 원하는 만큼의 모듈에서 수행될 수 있으며, 설명된 실시예는 단지 예시일 뿐이다. 이 소프트웨어는 디지털 신호 처리 장치(digital signal processor), ASIC, 마이크로프로세서 또는 퍼스널 컴퓨너, 서버 또는 기타 컴퓨터 시스템과 같은 컴퓨터 시스템 상에서 동작하는 다른 유형의 프로세서에서 실행되어 이러한 컴퓨터 시스템을 특별히 프로그래밍된 머신으로 바꿀 수 있다.
위에서 언급한 바와 같이, 본 명세서에서 설명된 시스템과 방법은, 배경을 한 색상(예를 들어 검은색)의 픽셀로, 전경을 다른 색상(예를 들어 흰색)의 픽셀로 정규화하는 것에 기초한 바이너리 마스크, 에지 마스크 및 컨투어 마스크를 사용하여 인페인팅을 위한 텍스트 영역의 정확한 마스크를 추출한다. 적어도 두 개의 마스크가 마스크 세트의 결합인 융합 마스크로 조합된다. 융합 마스크는 각 픽셀의 픽셀값이 0 또는 255인 바이너리 이미지이며, 특정 행과 열의 픽셀은 임의의 마스크에서 255인 경우에 255 값을 가진다. 융합된 모든 마스크에서 0인 경우에만 값이 0이 된다. 인페인팅 알고리즘의 적용을 위해 융합 마스크는 입력 이미지에 적용되어 원래 배경을 검색한다. 이러한 접근법은 낮은 퀄리티(예를 들어, 손글씨) 또는 낮은 밝기 또는 불균일(여러 색상의 윤곽선이나 여러 색상의 배경으로 표시된 글꼴) 또는 기울어진 텍스트에도 작동한다.
도 7은 인페인팅용 융합 마스크를 생성하는 샘플 실시예를 도시한다. 이 예시에서, 에지 검출(702)은 원본 이미지(700)에 적용되어 컬러 이미지를 그레이스케일 이미지로 변환하고 텍스트의 에지를 검출하여 에지 마스크를 형성한다. 에지 마스크에 기초하여, 클로즈드 에지 컨투어는 가능한 텍스트로 라벨링된 하얀색 픽셀로 채워진다(704). 이진화 방법이 사용되고(706), 바이너리 이미지 내의 스트로크 에지를 검출하기 위해 히스토그램 투영이 선택된다. 이미지는 스트로크 에지에 기초해 분할되고, 각각의 서브 이미지에 대해 몇 개의 이진화 방법(706)이 적용되어 바이너리 마스크를 얻는다. 이진화 결과를 위해 정규화 단계(708)가 적용되어 텍스트 부분을 흰색 픽셀로 설정하고 배경을 검은색 픽셀로 설정한다. 최상의 바이너리 마스크는 바이너리 이미지 후보에서 선택된다. 물론, 이진화 결과를 위해 정규화는 그 대신 텍스트 부분을 검은색 픽셀로 설정하고 배경을 흰색 픽셀로 설정할 수도 있다. 에지 마스크, 컨투어 마스크, 바이너리 마스크 중 적어도 두 개가 융합 마스크(710)로 조합되고, 각 마스크는 서로의 장점과 단점을 보완하는 기능을 한다. 그리고 나서 융합 마스크는 인페인팅 알고리즘과 함께 사용(712)된다.
도 8은 샘플 실시예에서 인페인팅된 이미지를 생성하는 데 사용하기 위한 융합 마스크를 생성하는 상세한 흐름도를 도시한다. 샘플 실시예에서는 세 개 중 임의의 두 개의 마스크가 융합 마스크로 조합되었지만, 도 8에 도시된 바와 같이 융합 마스크는 에지 마스크, 컨투어 마스크 및 바이너리 마스크의 세 가지 구성요소를 가질 수 있다. 이 프로세싱은 입력 이미지(802)를 사용하는 것과 입력 이미지를 그레이스케일 이미지(804)로 변환하는 것을 포함한다. 그리고 나서 이 시스템은 에지 마스크, 컨투어 마스크, 바이너리 마스크를 생성하여 이하에 설명된 대로 융합 마스크를 생성한다.
에지 마스크
샘플 실시예에서, 모폴로지 그래디언트와 소벨 오퍼레이터라는 두 가지 에지 검출기가 구현된다. 모폴로지 그래디언트는 팽창 이미지(902)(입력 이미지(900)가 팽창된 이미지)와 침식 이미지(904)(입력 이미지(900)가 줄어든 이미지)와의 차이점을 판단하여 텍스트의 에지를 찾는다(806). 도 9에 도시되어있듯이, 팽창 이미지(902)는 텍스트 에지 주변에 있는 추가적인 픽셀을 포함할 수도 있는 반면, 침식 이미지(904)는 텍스트 에지 주변에 있는 픽셀이 감소된다. 팽창 이미지와 침식 이미지의 차이는 도 9에서 도시된 모폴로지 그래디언트(908)를 제공하기 위해 이진화된 텍스트 경계 이미지(906)가 된다.
반면, 소벨 오퍼레이터는 그레이스케일 이미지에 적용되어 에지를 수평 및 수직 방향으로 검출한다(808). 소벨 오퍼레이터는 이미지 강도 함수의 그래디언트 근사값을 계산하는 이산 미분 오퍼레이터(discrete differentiation operator)이다. 소벨 오퍼레이터는 일반적으로 에지 검출 알고리즘에서 에지를 강조하는 이미지를 만들기 위해 사용된다.
이들 두 에지 검출기(모폴로지 그래디언트(806)와 소벨 오퍼레이터(808)) 모두 낮은 밝기와 측정가능 노이즈를 가진 이미지에 사용할 수 있을 만큼 충분히 강인하다. 도 10에 도시된 바와 같이, 모폴로지 그래디언트(806)는 이미지(1002)에서 볼 수 있듯이 입력 이미지(1000)으로부터 텍스트 에지 픽셀을 더 정확하게 검출할 수 있으나, 텍스트와 배경이 낮은 콘트라스트에 있을 때는 실패한다. 그러나, 이미지(1004)에 도시된 바와 같이, 소벨 오퍼레이터(808)는 이러한 경우에 좋은 방법이 된다.
이하에서 설명하는 바와 같이, 컨투어 마스크와 정규화는 모두 에지 마스크를 기반으로 한다.
컨투어 마스크
도 11은 샘플 실시예에서 컨투어 마스크를 얻는 단계를 도시한다. 도시되어있듯이, 컨투어 마스크 프로세스는 에지 검출(1100)부터 시작한다. 샘플 실시예에서, 모폴로지 그래디언트 에지 검출(1102)와 소벨 에지 검출(1104)는 전술한 바와 같이 그레이스케일 이미지에 적용된다. 각각의 계층적 클로즈드 텍스트 컨투어는 OpenCV의 findContour() 알고리즘에 따른 소벨 에지 이미지와 모폴로지 그래디언트 에지 이미지로부터 검색된다. 이 알고리즘은 경계를 따라 디지털화된 바이너리 이미지의 토폴로지 구조 분석을 구현한다. 그런 다음 커넥티드 컴포넌트 방법이 사용되어, OpenCV의 drawContour()알고리즘에 의해 모폴로지 그래디언트 에지 이미지와 소벨 에지 이미지의 컨투어로 경계지어진 픽셀을 채운다. 이들 프로세스는 모폴로지 그래디언트 컨투어 마스크(1106)과 소벨 컨투어 마스크(1108)을 생성한다. 2가지 유형의 컨투어 마스크(1106 및 1108)은 최종 컨투어 마스크(1110)으로 조합된다.
컨투어는 텍스트 검출에 유용하다. 도 12에 도시된 바와 같이, 두 텍스트 컨투어가 발견되고 컨투어 안의 픽셀이 채워져서 에지 이미지(1202)로부터 컨투어 마스크(1200)가 생성된다. 컨투어 마스크(1200)는 인공 글꼴 문자에 대한 인페인팅을 가능하게 한다. 예를 들어, 도 13에서, 입력 이미지(1300)의 에지 검출이나 이진화는 (1302)에 도시된 바와 같이 텍스트의 경계만을 분할한다. 그러나, (1304)에 도시된 바와 같이 컨투어를 채움으로써 이 문제를 해결한다. 컨투어 마스크(1304)에서, 텍스트 픽셀이 흰색으로 라벨링되고 배경 픽셀이 검은색으로 라벨링되며, 컨투어 마스크는 대부분의 텍스트 픽셀을 찾는다.
다시 도 8을 참조하면, 컨투어 마스크는 모폴로지 그래디언트 프로세스(806)과 소벨 에지 프로세스(808)의 결과물로부터 각각의 에지 마스크의 이진화(810 및 812) 및 각각의 컨투어를 채우는 것(814 및 816)에 의해 생성된다. 각각의 채워진 컨투어는 컨투어 마스크(818)로 조합된다. 샘플 실시예에서, 컨투어 마스크는 검은 배경과 흰색 텍스트로 정규화된다.
바이너리 마스크
대부분의 이진화 방법은 한계치에 제약이 있다. 하나의 이진화가 다른 것보다 더 나은 것을 생성하거나 그 반대의 경우도 있기 때문에, 다양한 상황에서 처리하기 위해 다양한 환경에서 사용할 수 있는 한계치를 제공하는 것이 이상적이다. 따라서, 샘플 실시예에서 최종 바이너리 마스크로 고려하기 위해 Otsu와 후보 목록에 기초한 세 가지 다른 이진화 방법이 제공된다. 물론, 모든 이미지 케이스를 처리하기 위해 이진화 방법을 세 가지 이상으로 구현할 수도 있다.
도 14는 샘플 실시예에서 바이너리 마스크를 생성하는 절차를 도시한다. 도 14에 도시되었듯이, 입력 이미지(1400)는 하나 이상의 이진화 알고리즘에 제공된다(1402). 샘플 실시예에서, 상이한 조건 하에서 사용하기 위해 세 가지 다른 이진화 옵션을 제공한다.
제 1 이진화 방법은 LAB(L은 밝기를 의미하고, A는 녹-적(green-red) 색상 컴포넌트를 의미하고, B는 청-황(blue-yellow) 색상 컴포넌트를 의미한다.) 색 공간의 L 채널에 적용하기 위한 대비 제한 적응 히스토그램 평활화(Contrast limited adaptive histogram equalization, CLAHE) 알고리즘의 적용을 포함한다. CLAHE 프로세스는 사전 처리 목적을 위해 화질 개선(image enhancement)을 사용한다. 첫째로, 히스토그램 평활화는 L 채널에만 적용되어, 밝기는 유지하면서 컬러 이미지의 콘트라스트를 개선하고 노이즈의 증폭을 방지한다. 그런 다음, 개선된 컬러 이미지는 Otsu 글로벌 이진화 알고리즘에 의해 임계값이 지정된다. 도 15는 CLAHE 알고리즘을 사용하여 그레이스케일 이미지(1502)의 처리로부터 발생하는 이진화 이미지(1500)을 도시한다.
제 2 이진화 방법은 색조, 밝기, 채도(HLS) 색 공간의 L 채널 이진화를 포함한다. L 채널은 색상의 흑백을 나타내므로, 이미지의 그림자 또는 빛 변화에 민감하다. 이러한 방식으로, 이진화 방법은 낮은 콘트라스트 이미지에서도 상당히 강인하다. 도 16은 다른 방법이 사용된 이미지(1604)와 비교하여, HLS에서 L의 이진화 이후(1602)의 입력 이미지(1600)을 도시한다.
제 3 이진화 방법은 주성분 분석(Principal Component Analysis, PCA)을 사용한 LAB 색 공간의 이진화를 제공한다. PCA는 LAB 색 공간의 주축과 보조축을 찾고, 이미지의 평균값도 찾는다. PCA는 밝기보다는 색 공간에 더 민감하다. PCA 이진화 접근법은 화려한 스타일의 문자에 특히 유용하다. 도 17은 입력 이미지(1700)가 PCA를 사용하여 이진화되는 예(1702)를 도시한다. 다른 방법은 한계치만을 설정하고 텍스트의 경계를 분할하는 한편(1704), PCA는 1차 값을 찾고 텍스트 픽셀을 정확하게 분할한다.
다시 도 14를 참조하면, 입력 이미지가 이진화되면(1402), 수평 및 수직 히스토그램 투영을 통한 스트로크 에지 검출(1404)이 적용된다. 대부분의 경우 이진화는 작동하지만, 배경이 복잡하거나 입력 이미지의 일부가 낮은 콘트라스트인 경우에 이진화 프로세스는 여전히 실패할 수 있다. 도 18은 낮은 콘트라스트(1800)와 낮은 밝기(1802)의 예시를 도시하고, 이진화 결과 이미지(1804 및 1806)를 도시한다. 스트로크 에지 검출은 명백한 밝기 또는 콘트라스트의 변화에도 에지를 검출하는 것을 목표로 한다.
도 19에 도시된 바와 같이, 수직 히스토그램 투영은 이미지(1900)의 각 열의 흑백 변화를 보여주고, 히스토그램(1904)에서 스트로크 에지(1902)의 시작 열을 찾는다. 한편, 도 20에 도시된 바와 같이, 수평 히스토그램 투영은 입력 이미지(2000) 내 각 행의 픽셀값의 합을 보여주고, 히스토그램(2004)에서 스트로크 에지(2002)의 시작 행을 찾는다.
이미지의 스트로크 에지를 찾은 후에(1404), 원본 이미지는 서브 이미지로 분할되고, 각각의 이진화 방법이 개별적으로 적용된다(1406). 이러한 방식으로, 이 결과는 전역 이진화 방법과 함께 작동하지만, 로컬 이진화의 이점을 활용할 수 있다. 게다가, 이 방법은 윈도우 크기(window size)를 자동적으로 설정할 수 있어서, 상이한 상황에서도 적응하기 충분할 정도로 강인하다. 도 21은 분할 후 이진화의 이점을 보여주는 예시이다. 도시된 바와 같이, 입력 이미지(2100 및 2102)가 분할 되기 전에 이진화가 적용된 결과(2104 및 2106)는 분할된 후 이진화가 적용된 결과(2018 및 2110)보다 좋은 결과를 제공하지 않는다.
각각의 이진화 결과와 그의 반전 바이너리 이미지가 선택(1408)을 위해 바이너리 마스크 후보 목록에 제공된다. 후보 목록에서 최상의 바이너리 이미지가 평가되고 이하에서 설명될 기술을 사용하기 위한 바이너리 마스크로 선택된다.
다시 도 8을 참조하면, 스트로크 에지가 검출되고, HLS 이진화 이미지 내의 L 채널의 수평 및 수직 투영으로 분할이 수행되며(820), 바이너리 이미지(824)를 생성하기 위해 6개의 이진화 후보를 산출한다(822). 샘플 실시예에서의 6개의 이진화 후보는 LAB 색 공간 이진화에서의 CLAHE와 그것의 산출된 반전(inverse)(826), LAB 색 공간에서의 PCA와 그것의 산출된 반전(828), HLS 색 공간에서의 L 채널 이진화 및 그것의 산출된 반전을 포함한다(830). 각각의 바이너리 이미지와 반전 바이너리 이미지를 컨투어 마스크와 비교해 가장 작은 차이를 가진 바이너리 이미지를 식별한다(832). 가장 작은 차이를 가진 바이너리 이미지는 정규화되어(834) 흰색 문자와 검은색 배경을 가진 바이너리 이미지를 제공한다.
융합 마스크
융합 마스크는 전술한 바와 같이 결정된 에지 마스크, 컨투어 마스크 및 바이너리 마스크 중 임의의 둘 이상의 조합(836)에 의해 얻을 수 있다. 도 22는 융합 마스크(2206)를 제공하기 위해 산출된 에지 마스크(2200), 컨투어 마스크(2202) 및 바이너리 마스크(2204)의 조합을 도시한다. 각각의 마스크 유형이 제공하는 이점은 원본 이미지의 텍스트 픽셀을 완벽히 가린다는 것이다. 그런 다음 그 결과로 생성된 융합 마스크는 전술한 Telea 인페인팅 알고리즘과 같은 인페인팅 알고리즘의 적용을 위해 팽창되고 원본 이미지에 적용(838)된다. 인페인팅 알고리즘은 바깥쪽 에지 픽셀을 찾고 배경 이미지를 텍스트 영역에 채운다. 결과 이미지(840)은 모든 텍스트가 없고, 이미지의 텍스트 부분은 배경 이미지 데이터로 채워진다.
전반적으로, 도 7 내지 도 22와 관련하여 전술한 실시예는 손글씨 이미지, 상이한 폰트 색상의 윤곽선을 추가로 갖는 폰트, 하나 이상의 색상을 갖는 배경을 포함하는 다양한 종류의 상이한 원본 이미지를 처리하기에 충분히 강인하다. 도 23에 도시된 바와 같이, 융합 마스크는 인페인팅을 위한 모든 가능한 텍스트 픽셀을 라벨링한다. 한편, 전통적인 바이너리 마스크(2300)는 원본 이미지(2302)의 텍스트 픽셀을, 보다 구체적으로는 에지를 따라서 잘못 라벨링할 수도 있다. 이는 배경과 텍스트 색상의 혼합으로 배경을 채우는 인페인팅(2304)이 될 수 있다. 도 7 내지 도 22와 관련하여, 전술한 바와 같이 생성된 융합 마스크(2306)로, 텍스트는 완전히 제거되고 배경은 복구(2308)된다.
도 24는 융합 마스크를 이미지(2402 및 2404)에 적용함으로써 얻을 수 있는 기술적 이점의 다른 예시를 보인다. (2406 및 2408)에 표시된 바와 같이, 융합 마스크는 모든 유형의 텍스트를 제거함에 있어 강인하다.
전술한 바와 같이, 이진화 결과의 정규화는 컨투어 마스크와 바이너리 마스크 후보 사이의 유사성을 산출하여 최상의 바이너리 이미지를 선택하는 프로세스이다. 도 25에 도시된 바와 같이, 이 프로세스는 (822)에서 정해진 각각의 바이너리 마스크 후보를 사용하는 것과, 선택을 위해서 가장 유사한 마스크를 식별할 목적으로 산출된 바이너리 마스크(2500)와 반전 바이너리 마스크(2502)를 컨투어 마스크(2504)와 비교하는 것을 필요로 한다. 이 정규화는 바이너리 마스크를 선택할 뿐만 아니라, 컨투어 마스크가 표준이기 때문에, 전경으로서의 텍스트를 흰색으로 라벨링하고 배경을 검은색으로 라벨링하는 것을 결정한다. 텍스트 픽셀이 부정확하게 라벨링되면, 인페인팅은 반대의 방법으로 수행될 것이다. 예를 들어 도 26에 도시된 바와 같이, 원본 이미지(2600)의 텍스트가 배경으로 잘못 라벨링 되면(2602) 배경이 텍스트 색상으로 채워지게 된다(2604). 하지만, 원본 이미지(2600) 내 텍스트가 전경으로 정확하게 라벨링되면(2606), 배경이 배경 색상으로 채워진다(2608).
도 27은 본 명세서에서 설명된 인페인팅 기술과 텍스트 제거를 종래 번역기 어플리케이션에서 사용되는 인페인팅 기술과 종래 텍스트 제거와 비교한 결과를 도시한다. 각각의 예시(2700 및 2702)는 인공 문자를 포함하고 있다. 종래 번역기 어플리케이션의 결과물은 여전히 텍스트가 잔존하지만(2704 및 2706), 본 명세서에서 설명된 인페인팅 기술과 텍스트 제거를 사용한 결과물은 텍스트가 잔존하지 않는다.(2708 및 2710).
본 명세서에서 설명된 기술은 텍스트 이미지의 다중 특징을 적용하고, 후보군 집합에서 최상의 바이너리 분할을 선택함으로써 인페인팅을 위한 마스크를 추출하기 위해 설계되었다. 에지 마스크, 컨투어 마스크 및 바이너리 마스크 중 두 개 이상의 결합인 융합 마스크는 인페인팅용 픽셀을 정확히 라벨링하기 위해 사용된다. 정규화 프로세스는 컨투어 마스크와 가장 유사한 최상의 바이너리 마스크를 선택하고, 텍스트 픽셀이 전경으로 라벨링되는 것을 보장한다. 텍스트 영역의 인페인팅을 위한 마스크 결과물은 많은 경우에 적합하고, 보다 구체적으로 이미지의 퀄리티가 낮거나 밝기가 일정하지 않을 경우에도 적합하다. 이미지 인페인팅의 결과물은 이미지 내 쓸모 있는 배경 정보를 복구하거나, 원하지 않는 영역을 제거하기 위해 적용될 수 있다. 그러한 적용은 번역기 어플리케이션, 모바일 플랫폼에서의 이미지 치유 도구와 같은 이미지 복구 관련 어플리케이션 및 비디오 인페인팅 또는 감소현실의 다른 적용을 포함한다. 이 프로세싱은 빠르기 때문에, 특히 실시간 모바일 플랫폼에서 유용하다.
도 28은 도 7 내지 도 27에 관해 위에서 설명한 예시적인 실시예에 따른, 융합 마스크 생성을 위한 회로를 도시한 블록도이다. 다양한 실시예에서 모든 컴포넌트가 쓰일 필요는 없다. 컴퓨터(2800)의 형태를 가진 컴퓨팅 디바이스의 일 실시예는 프로세싱 유닛(2802), 메모리(2803), 이동식 스토리지(2810) 및 고정식 스토리지(2812)를 포함할 수 있다. 예시 컴퓨팅 디바이스가 컴퓨터(2800)로 도시되고 설명되었지만, 컴퓨팅 디바이스(2800)는 상이한 실시예에서 상이한 형태가 될 수 있다. 예를 들어, 컴퓨팅 디바이스(2800)는 스마트폰, 태블릿, 스마트워치 또는 다른 컴퓨팅 디바이스로 대신할 수도 있다. 스마트폰, 태블릿 및 스마트워치와 같은 디바이스는 일반적으로 모바일 디바이스 또는 사용자 단말기(user equipment)라고 집합적으로 지칭한다. 나아가, 다양한 데이터 스토리지 요소는 컴퓨터(2800)의 일부로 도시되었으나, 스토리지는 또한 또는 그 대신 네트워크를 통해 접속 가능한 클라우드 기반 스토리지를 포함할 수도 있다. 또한, 본 명세서에서 도시된 방법은 하나의 프로세싱 스레드 상에서 구현될 수도 있고, 복수의 프로세서 및/또는 복수의 프로세싱 스레드 상에서 적절히 구현될 수도 있다.
메모리(2803)는 휘발성 메모리(2814) 및 비휘발성 메모리(2808)를 포함할 수 있다. 또한 컴퓨터(2800)는 휘발성 메모리(2814) 및 비휘발성 메모리(2808), 이동식 스토리지(2810) 및 고정식 스토리지(2812)와 같은 다양한 컴퓨터 판독 가능 매체를 포함할 - 또는 포함하는 컴퓨터 환경에 접근할 - 수도 있다. 컴퓨터 스토리지는 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 소거 가능 프로그래머블 판독 전용 메모리(EPROM) 또는 전기적 소거 가능 프로그래머블 판독 전용 메모리(EEPROM), 플래쉬 메모리 또는 다른 메모리 기술, 컴팩트 디스크 판독 전용 메모리(CD ROM), 디지털 다목적 디스크(DVD) 또는 다른 광학 디스크 스토리지, 마그네틱 카세트, 마그네틱 테이프, 마그네틱 디스크 스토리지, 또는 다른 마그네틱 스토리지 디바이스, 또는 임의의 다른 컴퓨터 판독 가능 명령어를 저장할 수 있는 매체를 포함한다.
컴퓨터(2800)는 프로세싱용 입력 이미지를 수신하는 입력 인터페이스(2806), 처리된 이미지를 디스플레이(2805)에 제공하는 출력 인터페이스(2804) 및 통신 인터페이스(2816)를 포함할 수도 있고, 포함하는 컴퓨터 환경에 액세스할 수도 있다. 디스플레이(2805)는 터치스크린과 같은 디스플레이 디바이스를 포함할 수 있고, 입력 디바이스로 제공될 수도 있다. 입력 인터페이스(2806)는 하나 이상의 터치스크린, 터치패드, 마우스, 키보드, 카메라, 하나 이상의 장치 특정 버튼, 유선 또는 무선 데이터 연결을 통해 컴퓨터(2800)와 커플링되거나 통합된 하나 이상의 센서 및 기타 입력 장치를 포함할 수 있다. 컴퓨터(2800)는 데이터베이스 서버와 같은 하나 이상의 원격 컴퓨터를 연결하기 위한 통신 연결이 사용된 네트워크 환경에서 작동할 수 있다. 원격 컴퓨터는 퍼스널 컴퓨터(PC), 서버, 라우터, 네트워크 PC, 피어 디바이스(peer device) 또는 다른 공통 DFD 네트워크 스위치(DFD network switch) 등을 포함할 수 있다. 통신 연결은 근거리 통신망(LAN), 광역망(WAN), 셀룰러, Wi-Fi, 블루투스 또는 다른 네트워크를 포함할 수 있다. 일 실시예에 따르면, 컴퓨터(2800)의 여러 가지 컴포넌트들은 시스템 버스(2820)에 연결될 수 있다.
컴퓨터 판독 가능 매체에 저장된 컴퓨터 판독 가능 명령어는 프로그램(2818)과 같이, 컴퓨터(2800)의 프로세싱 유닛(2802)에 의해 실행될 수 있다. 일부 실시예에서 프로그램(2818)은 소프트웨어를 포함하고, 그 소프트웨어는 프로세싱 유닛(2802)에 의해 실행될 때 본 명세서에 포함된 임의의 실시예에 따른 이미지 프로세싱 작업을 수행한다. 하드 드라이브, CD-ROM 및 RAM은 스토리지 디바이스와 같은 비일시적 컴퓨터 판독 가능 매체를 포함하는 물건의 예이다. 컴퓨터 판독 가능 매체 및 스토리지 디바이스라는 용어는 너무 일시적이라 생각될 만큼의 반송파를 포함하지 않는다. 스토리지는 또한 스토리지 에어리어 네트워크(SAN)과 같은 네트워크 결합 스토리지를 포함할 수 있다. 컴퓨터 프로그램(2818)은 프로세싱 유닛(2802)에 의해 처리될 때 본 명세서에 포함된 하나 이상의 방법 또는 알고리즘을 수행하는 명령어 모듈을 포함한다.
예시적인 실시예에서, 컴퓨터(2800)는 원본 이미지의 텍스트의 에지를 검출하기 위해 에지 검출을 적용하는 에지 검출 모듈, 텍스트의 계층적 클로즈드 에지 컨투어 집합을 찾고 컨투어 마스크와 같이 가능한 텍스트라고 라벨링된 픽셀로 클로즈드 에지 컨투어를 채우기 위해 에지 마스크를 사용하는 에지 마스크 모듈, 원본 이미지를 바이너리 이미지로 변환하고 바이너리 이미지 내 텍스트의 스트로크 에지를 검출하기 위해 원본 이미지에 이진화 방법을 적용하는 이진화 모듈, 바이너리 이미지 내 텍스트의 검출된 스트로크 에지를 기반으로 하여 바이너리 이미지를 분할하고 인페인팅을 위한 전경으로서 적어도 하나의 바이너리 마스크 후보를 얻기 위해 각각의 이미지 부분에 적어도 하나의 이진화 방법을 적용하는 파티션 모듈, 에지 마스크, 컨투어 마스크 및 바이너리 마스크 중 적어도 두 개를 융합 마스크로 조합하고, 원본 이미지 내 텍스트를 추출하고 텍스트가 없는 원본 이미지의 원본 배경을 얻기 위해 융합 마스크를 원본 이미지에 적용하는 조합 모듈 및 텍스트가 추출된 원본 이미지의 부분을 인페인팅하는 인페인팅 모듈을 포함한다. 일부 실시예에서, 컴퓨터(2800)는 실시예에서 설명된 임의의 단계 또는 단계의 조합을 수행하기 위해 추가적인 모듈 또는 또다른 모듈을 포함할 수도 있다. 나아가, 임의의 도면에서 도시되거나 청구항 중 어느 하나에 인용된 바와 같은 방법의 임의의 추가적인 또는 대안적인 실시예 또는 양태는 유사한 모듈을 포함하는 것으로도 고려된다.
몇몇 실시예가 위에서 자세히 묘사되었지만, 다른 수정도 가능하다. 예를 들어, 도면에 도시된 논리 흐름은 원하는 결과를 얻기 위해 표시된 특정 순서 또는 순차적인 순서를 필요로 하지 않는다. 도시된 논리에서 다른 단계가 제공될 수도 있거나 사라지는 단계가 있을 수 있으며, 도시된 시스템에서 다른 컴포넌트가 추가되거나 사라질 수도 있다.
본 개시물의 임의의 하나 또는 모든 단계를 참조하여 위에서 설명된 바와 같이 프로세싱 및 동작을 용이하게 하는 하나 이상의 컴퓨터 실행 가능 명령어를 포함하는 소프트웨어가 본 개시물과 양립하는 하나 이상의 컴퓨팅 장치에 설치되어 판매될 수 있다. 그 대신, 소프트웨어는 예를 들어 소프트웨어 제작자가 소유한 서버 또는 소프트웨어 제작자가 소유하지는 않지만 사용하는 서버를 포함하여, 물리적 매체 또는 배포 시스템을 통해 소프트웨어를 얻는 것을 포함하여 하나 이상의 컴퓨팅 장치에 가져와서 로드할 수 있다. 소프트웨어는 예를 들어 인터넷을 통해 배포하기 위한 서버에 저장될 수 있다.
또한, 당업자는 이 개시물이 그 적용에 있어서 위 상세한 설명에 기재되거나 도면에 도시 된 구성 요소의 구성 및 배열에 국한되지 않음을 이해할 것이다. 본 명세서의 실시예는 다른 실시예가 가능하고, 다양한 방식으로 실행되거나 수행될 수 있다. 또한, 본 명세서에서 사용된 어법 및 용어는 설명을 위해 사용되었으며, 제한적인 것으로 간주되어서는 안된다는 것을 이해할 것이다. 본 명세서에서 "포함하는" 또는 "갖는"("including', 'comprising', 또는 'having') 및 그 변형의 사용은 이후에 나열될 항목과 그 등가물 및 추가적인 항목을 포함하는 것을 의미한다. 또한, "연결된"("conected"), "커플링된"("coupled") 및 그 변형은 물리적 또는 기계적 연결 및 커플링으로 제한되지 않는다. 또한, 위, 아래, 하부 또는 상부와 같은 용어는 상대적이며 설명을 돕기 위해 사용되지만, 제한되는 것은 아니다.
예시된 실시예에 따라 사용되는 예시적인 장치, 시스템 및 방법의 컴포넌트는 적어도 부분적으로, 디지털 전자 회로, 아날로그 전자 회로 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어 그들의 조합으로 구현될 수 있다. 이들 컴포넌트는 예를 들어 컴퓨터 프로그램, 프로그램 코드 또는 정보 매체에 실체적으로 구현된 컴퓨터 명령어 또는 머신 판독 가능 스토리지 디바이스, 실행 또는 동작의 제어를 위한 프로그래머블 프로세서, 컴퓨터, 또는 복수의 컴퓨터와 같은 데이터 프로세싱 장치와 같은 컴퓨터 프로그램 제품으로 구현될 수 있다.
컴퓨터 프로그램은 컴파일된 언어나 해석된 언어를 포함한 임의의 프로그래밍 언어의 형태로 작성될 수 있고, 독립실행형 프로그램 또는 모듈, 컴포넌트, 서브루틴 또는 다른 컴퓨팅 환경에서 사용하기 적합한 임의의 유닛을 포함하여 임의의 형태로 배포될 수 있다. 컴퓨터 프로그램은 한 컴퓨터에서 실행되거나 한 장소에 있는 복수의 컴퓨터 상에서 실행되어 배포되거나 복수의 장소로 분산되고 통신 네트워크에 의해 연결될 수 있다. 또한, 본 명세서에서 설명된 기술을 달성하기 위한 기능 프로그램, 코드 및 코드 세그먼트는 본 명세서에 설명된 기술이 속하는 기술 분야에서 숙련된 프로그래머에 의해 청구항 범위 내에서 쉽게 이해될 수 있다. 예시된 실시예와 관련된 방법 단계는 컴퓨터 프로그램, 코드 또는 기능 수행을 위한 명령어(예를 들어, 입력 데이터에 의해 작동 및/또는 출력을 생성)를 실행하는 하나 이상의 프로그래머블 프로세서에 의해 수행될 수 있다. 또한, 예를 들어 FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)와 같은 특수 목적 논리 회로에 의해 방법 단계가 수행될 수 있고, 방법을 수행하기 위한 장치가 구현될 수 있다.
본 명세서에서 개시된 실시예와 관련하여 설명된 다양한 예시적인 회로, 모듈 및 논리 블록은 범용 프로세서, 디지털 신호 프로세서(DSP), ASIC, FPGA 또는 다른 프로그래머블 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트, 또는 본 명세서에서 설명된 기능을 수행하기 위해 설계된 이들의 조합에 의해 구현되거나 수행될 수 있다. 범용 프로세서는 마이크로프로세서가 될 수도 있지만, 그 대신 프로세서는 임의의 기존 프로세서, 컨트롤러, 마이크로컨트롤러 또는 상태 머신일 수도 있다. 또한 프로세서는 컴퓨팅 디바이스의 조합, 예를 들어 DSP와 마이크로프로세서의 조합, 복수의 마이크로프로세서, DSP 코어와 함께 하는 하나 이상의 마이크로프로세서 또는 임의의 다른 그러한 구성으로 구현될 수도 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서는 예를 들어 범용 또는 특수 목적 마이크로프로세서 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 다로부터 명령어와 데이터를 수신한다. 요구되는 컴퓨터의 요소는 명령어를 실행하기 위한 프로세서와 명령어 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 데이터 저장을 위한 하나 이상의 매스 스토리지 디바이스에 커플링되어 데이터를 수신하거나, 전송하거나, 둘 다를 할 수 있거나, 데이터 저장을 위한 하나 이상의 매스 스토리지 디바이스를 포함할 수 있고, 매스 스토리지 디바이스에는 예를 들어 자기, 광 자기 디스크 광 디스크가 있다. 컴퓨터 프로그램 명령 및 데이터를 구현하는데 적합한 정보 매체에는 예로서 반도체 메모리 디바이스, 예를 들어 전기적 프로그래머블 판독 전용 메모리(EPROM), 전기적 소거 가능 프로그래머블 ROM(EEPROM), 플래쉬 메모리 디바이스, 데이터 스토리지 디스크(예를 들어 자기 디스크, 내부 하드 디스크 또는 이동식 디스크, 광 자기 디스크, CD-ROM 및 DVD-ROM 디스크)와 같은 모든 형태의 비휘발성 메모리를 포함한다. 프로세서와 메모리는 특수 목적 논리 회로에 의해 보완되거나 통합될 수 있다.
당업자는 정보 및 신호가 다양한 상이한 기술 및 기법 중 임의의 것을 사용하여 표현될 수 있다는 것을 이해한다. 예를 들어, 위 설명 전체에서 참조될 수 있는 데이터, 명령어, 명령, 정보, 신호, 비트, 기호 및 칩은 전압, 전류, 전자기파, 자기장 또는 입자, 광학 장 또는 입자, 또는 이들의 임의의 조합으로 표현될 수 있다.
본 명세서에서 사용된 "머신 판독 가능 매체"는 명령어와 데이터를 일시적으로 또는 영구적으로 저장할 수 있는 장치를 의미하며, 이는 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 버퍼 메모리, 플래쉬 메모리, 광 매체, 자기 매체, 캐시 매모리, 다른 스토리지 타입(예를 들어, 소거 가능 프로그래머블 판독 전용 메모리(EEPROM)) 및/또는 이들의 임의의 적합한 조합을 포함할 수는 있지만, 제한되지는 않는다. "머신 판독 가능 매체"라는 용어는 프로세서 명령어를 저장할 수 있는 단일 매체 또는 복수 매체(예를 들어, 중앙 집중식 또는 분산 데이터베이스 또는 관련 캐시 및 서버)를 포함하는 것으로 간주된다. "머신 판독 가능 매체"라는 용어는 또한 하나 이상의 프로세서(2802)에 의해 실행되는 명령어를 저장할 수 있는 임의의 매체 또는 복수의 매체의 결합으로 간주되어, 하나 이상의 프로세서(2802)에 의해 실행될 때 명령어가 하나 이상의 프로세서(2802)로 하여금 본 명세서에서 설명된 방법 중 하나 이상의 방법을 수행하게 한다. 따라서, "머신 판독 가능 매체"는 단일 스토리지 디바이스 또는 장치뿐만 아니라, 복수의 스토리지 디바이스 또는 장치를 포함하는 스토리지 네트워크 또는 "클라우드 기반" 스토리지 시스템을 의미한다. 본 명세서에서 사용되는 용어 "머신 판독 가능 매체"는 그러한 신호가 너무 일시적이라고 여겨지는 정도까지 신호 자체를 배제한다.
또한, 다양한 실시예에서 개별적 또는 별개로 설명되고 예시된 기술, 시스템, 서브시스템 및 방법은 본 개시물의 범위를 벗어나지 않는 다른 시스템, 모듈, 테크닉, 기법과 결합되거나 통합될 수 있다. 도시되거나, 커플링되거나, 직접적으로 커플링되거나 서로 통신하는 다른 아이템은 간접적으로 커플링되거나 전기적, 기계적으로 또는 다른 방식으로 일부 인터페이스, 장치 또는 중간 구성 요소를 통해 통신할 수 있다. 변경, 대체 및 변화의 다른 예시는 당업자에 의해 확인될 수 있고, 본 명세서에 개시된 사상 및 범위를 벗어나지 않고 이루어질 수 있다.
본 개시물이 특정한 특징과 그 실시예를 참조하여 설명되었지만, 본 개시물의 범위를 벗어나지 않고 다양한 수정 및 조합이 이루어질 수 있음은 자명하다. 따라서, 명세서 및 도면은 첨부된 청구 범위에 의해 정의된 개시물의 단순한 예시로서 간주해야 하며, 본 개시물의 범위 내의 속하는 임의 또는 모든 수정, 변화, 조합 또는 등가물을 포괄하는 것으로 고려된다.

Claims (20)

  1. 인페인팅(inpainting)을 위한 텍스트 추출을 위해 원본 이미지에서 텍스트 마스크를 찾는, 컴퓨터로 구현된 방법으로서,
    하나 이상의 프로세서를 이용하여, 에지 마스크를 얻기 위해 상기 원본 이미지 내 텍스트의 에지를 검출하는 에지 검출을 적용하는 단계와,
    상기 하나 이상의 프로세서를 이용하여, 컨투어 마스크를 얻기 위해 상기 텍스트의 계층적 클로즈드 에지 컨투어(hierarchical closed edge contours) 집합을 찾고, 상기 클로즈드 에지 컨투어를 가능한 텍스트(possible text)라고 라벨링된 픽셀로 채우기 위해 상기 에지 마스크를 사용하는 단계와,
    상기 하나 이상의 프로세서를 이용하여, 상기 원본 이미지를 바이너리 이미지로 변환하고 상기 바이너리 이미지 내 상기 텍스트의 스트로크 에지를 검출하기 위해 상기 원본 이미지에 이진화 방법을 적용하는 단계와,
    상기 하나 이상의 프로세서를 이용하여, 상기 바이너리 이미지 내 상기 텍스트의 상기 검출된 스트로크 에지에 기초하여 상기 바이너리 이미지를 분할하고, 인페인팅을 위한 전경으로서 적어도 하나의 바이너리 마스크의 후보를 얻기 위해 각각의 분할 이미지에 적어도 하나의 이진화 방법을 적용하는 단계와,
    상기 하나 이상의 프로세서를 이용하여, 상기 에지 마스크와 상기 바이너리 마스크 중 적어도 하나 및 상기 컨투어 마스크를 융합 마스크로 조합하고, 상기 원본 이미지 내 상기 텍스트를 추출하고 상기 텍스트가 없는 상기 원본 이미지의 원본 배경을 얻기 위해 상기 융합 마스크를 상기 원본 이미지에 적용하는 단계와,
    상기 하나 이상의 프로세서를 이용하여, 상기 텍스트가 추출된 상기 원본 이미지의 부분에 인페인팅하는 단계를 포함하는
    방법.
  2. 제 1항에 있어서,
    상기 에지 검출을 적용하는 단계 이전에,
    상기 원본 이미지를 그레이스케일 이미지로 변환하는 단계를 더 포함하는
    방법.
  3. 제 1항 또는 2항에 있어서,
    상기 에지 검출을 적용하는 단계는,
    상기 원본 이미지 내 상기 텍스트의 에지를 검출하기 위해 모폴로지 그래디언트 에지 검출 알고리즘(morphological gradient edge detection algorithm) 또는 소벨 오퍼레이터 에지 검출 알고리즘(Sobel operator edge detection algorithm) 중 적어도 하나를 상기 원본 이미지에 적용하는 단계를 포함하는
    방법.
  4. 제 1항 또는 2항에 있어서,
    상기 텍스트의 상기 계층적 클로즈드 에지 컨투어 집합을 찾기 위해 상기 에지 마스크를 사용하는 단계는,
    상기 원본 이미지에 모폴로지 그래디언트 에지 검출 알고리즘을 적용하여 모폴로지 그래디언트 컨투어 마스크를 생성하는 단계와,
    그레이스케일 이미지에 소벨 오퍼레이터 에지 검출 알고리즘을 적용하여 소벨 컨투어 마스크를 생성하는 단계와,
    상기 모폴로지 그래디언트 컨투어 마스크와 상기 소벨 컨투어 마스크를 조합하여 상기 컨투어 마스크를 생성하는 단계를 포함하는
    방법.
  5. 제 1항 또는 2항에 있어서,
    상기 컨투어 마스크에 의해 구획된 상기 픽셀을 채워 상기 클로즈드 에지 컨투어를 채우기 위한 커넥티드 컴포넌트 방법을 적용하는 단계를 더 포함하는
    방법.
  6. 제 1항 또는 2항에 있어서,
    상기 원본 이미지를 상기 바이너리 이미지로 변환하고 상기 바이너리 이미지 내 상기 텍스트의 상기 스트로크 에지를 검출하기 위해 상기 원본 이미지에 상기 이진화 방법을 적용하는 단계는,
    상기 원본 이미지의 콘트라스트를 개선하기 위해, 상기 원본 이미지의 색조, 밝기 및 채도 색 공간 내의 밝기 채널을 이진화하는 단계와,
    상기 원본 이미지의 콘트라스트를 개선하기 위해, LAB 색 공간 이진화의 대비 제한 적응 히스토그램 평활화(contrast limited adaptive histogram equalization)를 이진화하는 단계와,
    상기 원본 이미지의 콘트라스트를 개선하기 위해, 주성분 분석 이진화(Principal Component Analysis binarization)를 적용하여 LAB 색 공간의 밝기 채널을 이진화하는 단계와,
    각 이진화 방법에 의해 생성된 바이너리 이미지로부터 최상의 바이너리 이미지를 선택하는 단계 중 적어도 하나를 포함하는
    방법.
  7. 제 6항에 있어서,
    상기 원본 이미지를 상기 바이너리 이미지로 변환하고 상기 바이너리 이미지 내 상기 텍스트의 상기 스트로크 에지를 검출하기 위해 상기 원본 이미지에 이진화 방법을 적용하는 단계는,
    상기 원본 이미지의 색조, 밝기 및 채도 색 공간 내의 이진화된 밝기 채널을 반전하는 단계와,
    상기 LAB 색 공간 이진화의 이진화된 대비 제한 적응 히스토그램 평활화를 반전하는 단계와,
    상기 주성분 분석 이진화를 반전하는 단계와,
    상기 각각의 이진화 방법 및 각각의 반전 이진화 방법에 의해 생성된 바이너리 이미지로부터 상기 최상의 바이너리 이미지를 선택하는 단계 중 적어도 하나를 포함하는
    방법.
  8. 제 1항 또는 2항에 있어서,
    상기 바이너리 이미지 내 상기 텍스트의 상기 검출된 스트로크 에지에 기초하여 상기 바이너리 이미지를 분할하는 것은,
    수평 및 수직 히스토그램 투영에 의해 상기 바이너리 이미지를 서브 이미지로 분할하는 것과,
    상기 서브 이미지를 이진화하는 것을 포함하는
    방법.
  9. 제 1항 또는 2항에 있어서,
    상기 하나 이상의 프로세서를 이용하여, 상기 텍스트를 제 1 색상의 픽셀로 설정하고, 상기 배경을 제 2 색상의 픽셀로 설정하기 위해 상기 바이너리 이미지를 정규화하는 단계와, 상기 적어도 하나의 바이너리 마스크 후보로부터 최상의 바이너리 마스크를 선택하는 단계를 더 포함하는
    방법.
  10. 이미지 프로세싱 디바이스로서,
    명령어를 포함하는 비일시적 메모리와,
    상기 메모리와 통신하는 하나 이상의 프로세서를 포함하고,
    상기 하나 이상의 프로세서는 제 1항 또는 2항에 따른 방법을 구현하는 상기 명령어를 실행하는
    디바이스.
  11. 인페인팅을 위한 텍스트를 추출하기 위해 원본 이미지의 텍스트 마스크를 발견하기 위한 컴퓨터 명령어가 저장된 비일시적 컴퓨터 판독 가능 매체로서,
    상기 명령어는 하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가 제 1항 또는 2항에 따른 방법을 수행하게 하는
    컴퓨터 판독 가능 매체.
  12. 인페인팅을 위한 텍스트를 추출하기 위해 원본 이미지의 텍스트 마스크를 발견하기 위한 컴퓨터 명령어가 저장된, 컴퓨터 판독 가능 저장 매체에 저장된 컴퓨터 프로그램으로서,
    하나 이상의 프로세서에 의해 실행되는 경우, 상기 하나 이상의 프로세서가 제 1항 또는 2항에 따른 방법을 수행하게 하는
    컴퓨터 프로그램.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020217008212A 2018-08-21 2019-08-01 텍스트 제거를 위한 이진화 및 정규화 기반 인페인팅 KR102492369B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862720558P 2018-08-21 2018-08-21
US62/720,558 2018-08-21
PCT/CN2019/098808 WO2020038207A1 (en) 2018-08-21 2019-08-01 Binarization and normalization-based inpainting for removing text

Publications (2)

Publication Number Publication Date
KR20210043681A KR20210043681A (ko) 2021-04-21
KR102492369B1 true KR102492369B1 (ko) 2023-01-27

Family

ID=69591151

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217008212A KR102492369B1 (ko) 2018-08-21 2019-08-01 텍스트 제거를 위한 이진화 및 정규화 기반 인페인팅

Country Status (6)

Country Link
EP (1) EP3738098A4 (ko)
KR (1) KR102492369B1 (ko)
CN (1) CN112840373A (ko)
AU (1) AU2019323401B2 (ko)
CA (1) CA3110126C (ko)
WO (1) WO2020038207A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109431511B (zh) * 2018-11-14 2021-09-24 南京航空航天大学 一种基于数字图像处理的人体背部脊柱侧弯脊柱轮廓特征曲线拟合方法
CN111461097A (zh) * 2020-03-18 2020-07-28 北京大米未来科技有限公司 识别图像信息的方法、装置、电子设备及介质
CN111932566B (zh) * 2020-05-27 2024-02-20 杭州群核信息技术有限公司 一种模型轮廓图生成方法、装置和***
CN111833420B (zh) * 2020-07-07 2023-06-30 北京奇艺世纪科技有限公司 基于真人的图画自动生成方法、装置、***及存储介质
CN111899204B (zh) * 2020-07-30 2024-04-09 平安科技(深圳)有限公司 车损检测数据合成方法、装置及存储介质
CN112070708B (zh) * 2020-08-21 2024-03-08 杭州睿琪软件有限公司 图像处理方法、图像处理装置、电子设备、存储介质
CN111861945B (zh) * 2020-09-21 2020-12-18 浙江大学 一种文本引导的图像修复方法和***
US20220245773A1 (en) * 2021-01-29 2022-08-04 Bae Systems Information And Electronic Systems Integration Inc. Burn-in removal from full motion video imagery for video exploitation
CN113012122B (zh) 2021-03-11 2022-07-29 复旦大学 一种类别级6d位姿与尺寸估计方法及装置
CN112967218B (zh) * 2021-03-15 2022-03-18 复旦大学 一种基于线框和边缘结构的多尺度图像修复***
CN113112422B (zh) * 2021-04-06 2024-04-16 北京沃东天骏信息技术有限公司 图像处理方法、装置、电子设备、计算机可读介质
US20230005107A1 (en) * 2021-06-30 2023-01-05 Palo Alto Research Center Incorporated Multi-task text inpainting of digital images
CN114298937B (zh) * 2021-12-29 2024-05-17 深圳软牛科技集团股份有限公司 一种jpeg照片的修复方法、装置及相关组件

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840086B2 (en) * 2005-10-12 2010-11-23 The Regents Of The University Of California Method for inpainting of images
US20090148043A1 (en) * 2007-12-06 2009-06-11 International Business Machines Corporation Method for extracting text from a compound digital image
CN102567955B (zh) 2010-12-30 2014-09-10 北京大学 图像修复的方法与***
KR101395822B1 (ko) * 2012-06-05 2014-05-16 성균관대학교산학협력단 영상 내 텍스트 정보의 선택적 제거 방법 및 장치
US8837830B2 (en) * 2012-06-12 2014-09-16 Xerox Corporation Finding text in natural scenes
US9042649B2 (en) * 2013-09-24 2015-05-26 Konica Minolta Laboratory U.S.A., Inc. Color document image segmentation and binarization using automatic inpainting
US9355311B2 (en) * 2014-09-23 2016-05-31 Konica Minolta Laboratory U.S.A., Inc. Removal of graphics from document images using heuristic text analysis and text recovery
US9576347B2 (en) * 2015-01-26 2017-02-21 Sony Corporation Structure analysis method for recovering missing structures in an image after object removal
US20170091948A1 (en) * 2015-09-30 2017-03-30 Konica Minolta Laboratory U.S.A., Inc. Method and system for automated analysis of cell images
CN105957004B (zh) * 2016-04-27 2019-01-29 深圳积木易搭科技技术有限公司 一种基于图割优化的全景影像修补方法及***
US10531825B2 (en) * 2016-10-14 2020-01-14 Stoecker & Associates, LLC Thresholding methods for lesion segmentation in dermoscopy images

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Text Localization, Extraction and Inpainting in Color Images using Combined Structural and Textural Features(Mohammad Khodadadi Azadboni ET AL, IJICTR, Spring 2015, pages 19-31(2015.12.31.) 1부.*
Young-Ro Kim, Tae-Myung Oh, Noise Estimation using Edge Detection in Moving Pictures, Journal of the Institute of Electronics and Information Engineers 52(4), 2015.4, pages 207-212(2015.04.30.) 1부.*

Also Published As

Publication number Publication date
KR20210043681A (ko) 2021-04-21
WO2020038207A1 (en) 2020-02-27
AU2019323401B2 (en) 2023-06-01
AU2019323401A1 (en) 2021-03-18
CA3110126A1 (en) 2020-02-27
CN112840373A (zh) 2021-05-25
CA3110126C (en) 2023-07-11
EP3738098A1 (en) 2020-11-18
EP3738098A4 (en) 2021-05-12

Similar Documents

Publication Publication Date Title
KR102492369B1 (ko) 텍스트 제거를 위한 이진화 및 정규화 기반 인페인팅
CN108416268B (zh) 一种基于双机器人视觉沟通的动作识别方法
CN110838126B (zh) 细胞图像分割方法、装置、计算机设备和存储介质
US9965695B1 (en) Document image binarization method based on content type separation
JP4626886B2 (ja) デジタル画像におけるキャプションを位置特定及び抽出する方法及び装置
US20080136820A1 (en) Progressive cut: interactive object segmentation
US9275030B1 (en) Horizontal and vertical line detection and removal for document images
JP2012234494A (ja) 画像処理装置、画像処理方法、及びプログラム
JP2006318474A (ja) 画像シーケンス内のオブジェクトを追跡するための方法及び装置
Valizadeh et al. An adaptive water flow model for binarization of degraded document images
US10672132B2 (en) Post processing to improve motion detection results
Tian et al. Scene text segmentation with multi-level maximally stable extremal regions
CN112818952A (zh) 煤岩分界线的识别方法、装置及电子设备
Gilly et al. A survey on license plate recognition systems
Bai et al. A seed-based segmentation method for scene text extraction
CN112270745A (zh) 一种图像生成方法、装置、设备以及存储介质
US9064179B2 (en) Region extraction apparatus, region extraction method, and computer program product
CN112819840A (zh) 一种融合深度学习与传统处理的高精度图像实例分割方法
CN108256518B (zh) 文字区域检测方法及装置
CN113158977A (zh) 改进FANnet生成网络的图像字符编辑方法
KR102167433B1 (ko) 다중 패턴 문자 영상 자동 생성 기반 문자 인식 장치 및 그 방법
Feild et al. Scene text recognition with bilateral regression
US10496894B2 (en) System and method for text localization in images
CN113076952A (zh) 一种文本自动识别和增强的方法及装置
KR100667156B1 (ko) 휴대형 카메라로 획득한 문자영상의 문자영역선택을 통한문자인식 장치 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant