KR101544074B1 - Ar 애플리케이션들을 위한 효율적인 블렌딩 방법들 - Google Patents

Ar 애플리케이션들을 위한 효율적인 블렌딩 방법들 Download PDF

Info

Publication number
KR101544074B1
KR101544074B1 KR1020147002591A KR20147002591A KR101544074B1 KR 101544074 B1 KR101544074 B1 KR 101544074B1 KR 1020147002591 A KR1020147002591 A KR 1020147002591A KR 20147002591 A KR20147002591 A KR 20147002591A KR 101544074 B1 KR101544074 B1 KR 101544074B1
Authority
KR
South Korea
Prior art keywords
boundary
path
symbol
pixels
image
Prior art date
Application number
KR1020147002591A
Other languages
English (en)
Other versions
KR20140028139A (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 KR20140028139A publication Critical patent/KR20140028139A/ko
Application granted granted Critical
Publication of KR101544074B1 publication Critical patent/KR101544074B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • G06V20/63Scene text, e.g. street names
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/15Cutting or merging image elements, e.g. region growing, watershed or clustering-based techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Character Input (AREA)
  • Processing Or Creating Images (AREA)
  • Machine Translation (AREA)

Abstract

모바일 디바이스들에서의 광학 문자 인식(OCR)의 사용은 모바일 디바이스들의 증가된 사용으로 인해 널리 행해지고 있다. 모바일 디바이스들 내의 OCR에 대한 한가지 중요한 애플리케이션은 텍스트를 인지하여 사용자에 의해 이해가능한 언어로 번역하는 것이다. 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 기법들이 제공된다.

Description

AR 애플리케이션들을 위한 효율적인 블렌딩 방법들{EFFICIENT BLENDING METHODS FOR AR APPLICATIONS}
이 출원은 2011년 6월 30일에 출원된 "Efficient Blending Methods for AR Applications"라는 명칭의 미국 가출원 제61/503,421호를 우선권으로 주장한다. 미국 가출원 제61/503,421호는 본 발명의 양수인에게 양도되며, 따라서 인용에 의해 포함된다.
본 발명의 실시예들은 증강 현실의 분야에 관한 것이다. 증강 현실은 모바일 디바이스와 같은 디바이스로 하여금 사용자의 주변의 현실을 증강시키게 한다. 광학 문자 인식(OCR)을 사용함으로써 모바일 디바이스에 장착된 카메라의 시야 내의 텍스트를 인식하는 것은 텍스트 및 그것의 컨텍스트(context)에 관한 더 많은 정보를 사용자에게 제공함으로써 증강 현실의 영역 내의 중요한 애플리케이션들을 가능하게 한다. 모바일 디바이스들 내에서의 OCR의 사용은 모바일 디바이스의 증가되는 사용으로 인해 널리 행해지고 있다. 모바일 디바이스들 내의 OCR에 대한 중요한 애플리케이션은 텍스트를 인식하여 사용자에 의해 이해가능한 언어로 번역하는 것이다.
텍스트를 번역하고 텍스트 및 텍스트의 배경을 재-렌더링(re-rendering)하는 것에 있어서의 장애들 중 하나는 배경의 재-렌더링으로부터 초래되는 배경에서의 원치 않는 거슬리는 결함들의 발생이다. 또한, 모바일 디바이스들 상에서의 컴퓨팅 전력이 제한되고, 따라서, 결함들을 남기지 않고 텍스트를 번역된 텍스트로 대체하는 프로세스는 계산상으로 복잡하지 않고 과도한 전력을 소모하지 않아야 한다.
배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 기법들이 제공된다. 일반적으로, 이 기법은 이미지 프로세싱에 적용될 수 있다.
본 발명의 일 실시예에서, 텍스트를 번역하고 대체하는 동안, 배경 상의 결함들의 영향은 보간을 사용하여 배경을 재생성함으로써 감소된다. 일 양상에서, 선형 보간이 사용된다. 대안적으로, 비선형 보간이 또한 사용될 수 있다. 또다른 실시예에서, 발명은 잡음성 경로들을 회피하는 최적화된 경로를 발견하는 프로세스를 설명하고, 따라서, 매우 적은 거슬리는 결함들에 대한 보간을 허용한다.
제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법의 예는: 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 제1 이미지를 획득하는 단계; 제1 이미지 내에 제1 및 제2 경계를 정의하는 단계 ― 제1 및 제2 경계들은 제1 이미지를 나타내는 적어도 하나의 심볼의 반대 측들 상에 위치됨 ― ; 적어도 하나의 심볼 중 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하는 단계; 제1 및 제2 경계들 사이의 복수의 배경 픽셀 값들을 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하는 단계; 및 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하는 단계를 포함한다. 일양상에서, 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함한다.
일부 실시예들에서, 제1 및 제2 경계들 각각은 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의될 수 있다. 추가로, 픽셀들의 스트링은 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경의 합산을 최소화하는 픽셀들의 경로로서 정의될 수 있다.
제1 이미지 내의 제1 및 제2 경계를 정의하는 구현예는: 적어도 하나의 심볼의 반대 측들에 제1 및 제2 대역을 정의하는 것; 제1 대역을 통과하여 진행하는 적어도 제1 경로 및 제2 대역을 통과하여 진행하는 적어도 제2 경로를 선택하는 것; 각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 적어도 제1 경로 및 적어도 제2 경로에 대한 비용을 유도하는 것; 및 제1 경계로서 제1 대역으로부터 최저의 비용을 가지는 경로 및 제2 경계로서 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하는 것을 포함할 수 있다.
일부 구현예들에서, 배경 픽셀 값들을 보간하는 것은 선형 보간을 이용한다. 다른 구현예들에서, 배경 픽셀 값들을 보간하는 것은 비선형 보간을 이용한다. 추가적으로, 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함한다.
시스템을 구현하는 예시적인 디바이스는 프로세서; 프로세서에 커플링된 입력 디바이스; 프로세서에 커플링된 출력 디바이스; 및 프로세서에 커플링된 비-일시적 컴퓨터 판독가능한 저장 매체를 포함할 수 있고, 비-일시적 컴퓨터 판독가능한 저장 매체는 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 제1 이미지를 획득하는 단계; 제1 이미지 내에 제1 및 제2 경계를 정의하는 단계 ― 제1 및 제2 경계들은 제1 이미지를 나타내는 적어도 하나의 심볼의 반대 측들 상에 위치됨 ― ; 적어도 하나의 심볼 중 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하는 단계; 제1 및 제2 경계들 사이의 복수의 배경 픽셀 값들을 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하는 단계; 및 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하는 단계를 포함하는 방법을 구현하기 위해 프로세서에 의해 실행가능한 코드를 포함한다. 일부 양상들에서, 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함한다.
이러한 디바이스의 구현예는 다음 특징들 중 하나 이상을 포함할 수 있다. 제1 및 제2 경계들 각각은 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의될 수 있다. 추가로, 픽셀들의 스트링은 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경의 합산을 최소화하는 픽셀들의 경로로서 정의될 수 있다. 제1 이미지 내의 제1 및 제2 경계를 정의하는 단계는: 적어도 하나의 심볼의 반대측들에 제1 및 제2 대역을 정의하는 것; 제1 대역을 통과하여 진행하는 적어도 제1 경로 및 제2 대역을 통과하여 진행하는 적어도 제2 경로를 선택하는 것; 각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 적어도 제1 경로 및 적어도 제2 경로에 대한 비용을 유도하는 것; 및 제1 경계로서 제1 대역으로부터 최저의 비용을 가지는 경로 및 제2 경계로서 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하는 것을 포함할 수 있다. 배경 픽셀 값들의 보간은 선형 또는 비선형 보간을 이용하여 달성될 수 있다.
예시적인 비-일시적 컴퓨터 판독가능한 저장 매체는 프로세서에 커플링되고, 비-일시적 컴퓨터 판독가능한 저장 매체는: 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 제1 이미지를 획득하는 단계; 제1 이미지 내의 제1 및 제2 경계를 정의하는 단계 ― 제1 및 제2 경계들은 제1 이미지를 나타내는 적어도 하나의 심볼의 반대측들에 위치됨 ― ; 적어도 하나의 심볼 중 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하는 단계; 제1 및 제2 경계들 사이의 복수의 배경 픽셀 값들을 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하는 단계; 제1 및 제2 경계들 사이의 복수의 배경 픽셀 값들을 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하는 단계; 및 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하는 단계를 포함하는 방법을 구현하기 위해 프로세서에 의해 실행가능한 컴퓨터 프로그램을 포함한다. 일부 양상들에서, 컴퓨터 프로그램의 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함한다.
이러한 컴퓨터 프로그램 물건의 구현예들은 다음 특징들 중 하나 이상을 포함할 수 있다. 제1 및 제2 경계들 각각은 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의될 수 있다. 추가로, 픽셀들의 스트링은 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경의 합산을 최소화하는 픽셀들의 경로로서 정의될 수 있다. 제1 이미지 내의 제1 및 제2 경계를 정의하는 단계는: 적어도 하나의 심볼의 반대측들에서 제1 및 제2 대역을 정의하는 것; 제1 대역을 통과하여 진행하는 적어도 제1 경로 및 제2 대역을 통과하여 진행하는 적어도 제2 경로를 선택하는 것; 각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 적어도 제1 경로 및 적어도 제2 경로에 대한 비용을 유도하는 것; 및 제1 경계로서 제1 대역으로부터 최저의 비용을 가지는 경로 및 제2 경계로서 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하는 것을 포함할 수 있다. 배경 픽셀 값들의 보간은 선형 또는 비선형 보간을 이용하여 달성될 수 있다.
제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 예시적인 장치는: 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 제1 이미지를 획득하기 위한 수단; 제1 이미지 내의 제1 및 제2 경계를 정의하기 위한 수단 ― 제1 및 제2 경계들은 제1 이미지를 나타내는 적어도 하나의 심볼의 반대측 상에 위치됨 ― ; 적어도 하나의 심볼 중 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하기 위한 수단; 제1 및 제2 경계들 사이의 복수의 배경 픽셀 값들을 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하기 위한 수단; 및 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하기 위한 수단을 포함한다. 일 양상에서, 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함한다.
위의 예시적인 시스템에서, 제1 이미지 내에 제1 및 제2 경계를 정의하기 위한 수단은: 적어도 하나의 심볼의 반대측들에 제1 및 제2 대역을 정의하기 위한 수단; 제1 대역을 통과하여 진행하는 적어도 제1 경로 및 제2 대역을 통과하여 진행하는 적어도 제2 경로를 선택하기 위한 수단; 각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 적어도 제1 경로 및 적어도 제2 경로에 대한 비용을 유도하기 위한 수단; 및 제1 경계로서 제1 대역으로부터 최저의 비용을 가지는 경로 및 제2 경계로서 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하기 위한 수단을 포함할 수 있다.
이러한 시스템의 구현예들은 다음 특징들 중 하나 이상을 포함할 수 있다. 제1 및 제2 경계들 각각은 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의될 수 있다. 추가로, 픽셀들의 스트링은 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경의 합산을 최소화하는 픽셀들의 경로로서 정의될 수 있다. 배경 픽셀 값들의 보간은 선형 또는 비선형 보간을 이용하여 달성될 수 있다.
전술 내용은 후속하는 상세한 설명이 더욱 잘 이해될 수 있도록 개시내용에 따른 예들의 특징들 및 기술적 장점들을 보다 넓게 약술한다. 추가적인 특징들 및 장점들은 하기에 설명될 것이다. 개시된 개념 및 특정 예들은 본 개시내용의 동일한 목적들을 실행하기 위해 다른 구조들을 수정하거나 설계하기 위한 기반으로서 용이하게 이용될 수 있다. 이러한 등가적인 구성들은 첨부된 청구항들의 사상 및 범위로부터 벗어나지 않는다. 그 조직 및 동작 방법 모두에 대해 본원에 개시된 개념들의 특성들인 것으로 간주되는 특징들은, 연관된 장점들과 함께, 첨부 도면들과 관련하여 고려될 때 후속하는 설명으로부터 더욱 잘 이해될 것이다. 도면들 각각은 청구항들의 제한들의 정의로서가 아니라 오직 예시 및 설명의 목적으로 제공된다.
후속하는 설명은 도면들을 참조하여 제공되며, 여기서 동일한 참조 번호들은 명세서 전반에 걸쳐 동일한 엘리먼트들을 지칭하도록 사용된다. 하나 이상의 기법들의 다양한 상세항목들이 본원에 설명되어 있지만, 다른 기법들이 또한 가능하다. 일부 경우들에서, 공지된 구조들 및 디바이스들은 다양한 기법들을 설명하는 것을 용이하게 하기 위해 블록도 형태로 도시되어 있다.
개시내용에 의해 제공되는 예들의 속성 및 장점들의 추가적인 이해는 명세서 및 도면들의 나머지 부분들을 참조하여 실현될 수 있고, 여기서 동일한 참조 번호들이 유사한 컴포넌트들을 지칭하도록 몇몇 도면들 전반에 걸쳐 사용된다. 일부 경우들에서, 하위-라벨은 다수의 유사한 컴포넌트들 중 하나를 나타내기 위해 참조 번호와 연관된다. 기존의 하위-라벨에 대한 특정 없이 참조 번호에 대한 참조가 이루어지는 경우, 참조 번호는 모든 이러한 유사한 컴포넌트들을 지칭한다.
도 1은 발명의 다양한 실시예들에 따라 구성된 모바일 디바이스 내의 블렌딩 시스템의 예를 예시하는 간략화된 블록도이다.
도 2는 카메라 디바이스에 의해 캡쳐된 이미지의 변환을 예시하는 그래픽 이미지이다.
도 3은 언어들 사이의 번역을 위해 선형 보간을 사용하는 예시적인 실시예의 단계들을 예시하는 그래픽 이미지이다.
도 4는 선형 보간을 사용하여 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 프로세스를 예시하는 간략화된 흐름도이다.
도 5는 비-선형 보간을 사용하여 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 프로세스를 예시하는 또다른 간략화된 흐름도이다.
도 6은 최적화된 경로 상에서 보간을 사용하여 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 프로세스를 예시하는 또다른 간략화된 흐름도이다.
도 7은 잡음성 경로들을 회피하는 최적화된 경로를 유도하기 위한 프로세스를 예시하는 간략화된 흐름도이다.
도 8은 최적화된 경로를 유도하는 프로세스를 통해 텍스트를 가지는 이미지의 진행을 예시하는 간략화된 흐름도이다.
도 9는 이웃 픽셀들의 세트를 선택하고 픽셀 주위의 계조 변경을 계산하는 실시예를 예시하는 픽셀들의 그래픽 표현이다.
도 10은 본 발명의 실시예를 실시할 시에 사용되는 디바이스의 부분들을 포함하는 예시적인 컴퓨터 시스템을 예시한다.
본 발명의 실시예들은 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 기법들을 포함한다. 기법은 심볼들을 사용자를 위해 용이하게 인식가능한 심볼들로 번역하기 위한 능력을 모바일 폰들에 허용한다. 일반적으로, 이 기법은 이미지 프로세싱에 적용될 수 있다.
도 1은 본 발명의 다양한 실시예들에 따라 구성된 디바이스(100) 내의 블렌딩 시스템(120)의 비-제한적 예를 예시하는 간략화된 블록도이다. 일 실시예에서, 디바이스(100)는 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 심볼들을 번역하고 대체하는 블랜딩 시스템(120)을 수행하도록 인에이블된 모바일 디바이스이다. 일부 실시예들에서, 모바일 디바이스는 블렌딩 시스템(120)과 함께 카메라 유닛(102), 블렌딩 버퍼(116), 이미지 버퍼(118)를 가진다. 블렌딩 시스템(120)은 검출 모듈(104), 경로 파인더(106), 배경 보간기(108), 번역기(110), 텍스트 픽셀 생성기(112), 및 픽셀 블렌더(114)를 가진다. 디바이스 카메라(102)는 배경 상의 심볼들을 포함하는 이미지들을 캡쳐하고, 추가적인 프로세싱을 위해 이미지 버퍼(118) 내에 이미지들을 저장한다. 이미지는 텍스트, 문자들 및 기호들을 포함하는 임의의 그래픽 표현일 수 있는 심볼들을 가진다. 검출 모듈(104)은 심볼들을 포함하는 이미지 내의 번역 영역 및 배경 영역을 검출한다. 경로 파인더(106)는 (수직으로) 심볼들을 격리시키는 2개의 경로들을 발견한다. 이들 경계들은 검출된 박스의 상부 및 하부 경계들일 수 있거나, 또는 이들은 (논의될) 최적의 경로들일 수 있다. 경계는 이미지 내의 잡음의 분산을 회피하는 최적화된 경로 또는 직선일 수 있다. 배경 보간기(108)는 제1 및 제2 경계들 사이의 픽셀 값들을 보간함으로써 배경을 재-렌더링한다. 배경 보간기(108)는 선형 보간, 비선형 보간, 또는 배경 이미지를 재-렌더링하고 배경에 대한 픽셀들을 생성하기에 적절한 임의의 수단을 사용할 수 있다. 번역기(110)는 심볼들을 인식하기 위해 OCR 기능성을 사용할 수 있다. 번역기(110)는 이후 심볼들을 번역한다. 텍스트 픽셀 생성기(112)는 번역된 텍스트에 대한 픽셀들을 생성한다. 픽셀 블렌더(114)는 블렌딩 버퍼(116) 내에 배경 이미지 내의 번역된 심볼들을 붙여 넣는다. 픽셀 블렌더(114)는 출력 디바이스 상에서 이미지 버퍼(118)로부터 캡쳐된 이미지를 사용자에게 디스플레이하기 전에 그 캡쳐된 이미지를 블렌딩된 이미지로 대체한다.
도 2는 카메라(102)에 의해 캡쳐된 이미지의 변환을 예시하는 그래픽 이미지이다. 도 2를 참조하면, 2(A)는 디바이스의 카메라에 의해 검출된 이미지이다. 이미지가 검출되고 캡쳐된 이후, 사용자는 디바이스의 출력을 통해 그 디바이스 상에서 가시적인 텍스트를 기능 메뉴 또는 다른 적절한 메뉴를 통해 번역하도록 그 디바이스에 명령할 수 있다. 대안적으로, 디바이스는 출력 스크린 상에 이미지를 디스플레이하기 전에 사용자 개입 없이 텍스트를 번역할 수 있다. 사용자는 디바이스가 디바이스의 관점에서 심볼들을 번역하기 시작하기 전에 기능 메뉴 또는 임의의 다른 적절한 수단을 사용함으로써 디바이스를 번역 모드에 둘 수 있다. 사용자는 또한 사용자가 심볼을 번역하고자 하는 시스템 또는 언어를 선택하는 옵션을 가질 수 있다. 예를 들어, 사용자는 영어 언어(미국) 및 미국 시스템으로 번역하도록 디바이스를 설정할 수 있다. 사용자가 일본을 여행중인 경우, 디바이스는 디바이스의 시야에서 볼 수 있는 일본어를 영어로 번역하고, 디바이스의 시야에서 볼 수 있는 일본어 심볼들을 가지는 도로 표지판들을 사용자에게 인식가능한 미국 도로 표지판들로 번역하여, 미국인 사용자가 일본에서 편안하게 여행하도록 할 것이다.
도 2를 참조하면, 디바이스는 이미지 내의 심볼들을 영어에서 독일어로 번역한다. 도 1에 기재된 블렌딩 시스템(120)은 영어 텍스트 "CAUTION SITE TRAFFIC CROSSING"을 포함하는 이미지 2(A)를 프로세싱한다. 디바이스 카메라(102)는 텍스트 및 배경을 포함하는 이미지들을 캡쳐하고, 추가적인 프로세싱을 위해 이미지 버퍼(118) 내에 이미지들을 저장한다. 검출 모듈(104)은 이미지로부터 번역을 위한 구문을 검출한다. 경로 파인더(106)는 (수직으로) 심볼들을 격리시키는 2개의 경로들을 발견한다. 이들 경로들은 검출된 박스의 상부 및 하부 경계들일 수 있거나, 또는 이들은 최적의 경로들일 수 있다. 배경 보간기(108)는 제1 및 제2 경계들 사이의 픽셀 값들을 보간함으로써 배경을 재-렌더링한다. 번역기(110)는 텍스트를 인식하기 위해 OCR 기능성을 사용한다. 번역기(110)는 이후 영어 텍스트를 독일어 텍스트로 번역한다. 텍스트 픽셀 생성기(112)는 번역된 텍스트에 대한 픽셀들을 생성한다. 픽셀 블렌더(114)는 블렌딩 버퍼(116) 내에 배경 영역 내의 번역된 심볼들을 붙여 넣는다. 픽셀 블렌더(114)는 이미지 버퍼(118)로부터 캡쳐된 이미지를 블렌딩된 이미지로 대체한다. 2(B)인 블렌딩된 이미지는 번역된 독일어 텍스트 "WARNUNG BAU VERKEHR KREUZUNG"를 가지고 출력 디바이스 상에서 사용자에게 디스플레이된다.
도 3은 선형 보간을 사용하는 배경의 번역 및 재-렌더링을 위한 단계들을 시연하는 비-제한적인 실시예를 예시하는 그래픽 이미지이다. 단계 1에서, 검출 모듈(104)은 번역을 위한 텍스트 및 배경을 포함하는 이미지의 섹션을 박스아웃시킨다. 텍스트의 최상부 및 최하부 에지에서의 경계들을 나타내는 2개의 직선들이 선택된다. 단계 2에 도시된 바와 같이, 배경 보간기(108)는 최상부 및 최하부 직선들 상에서 선형 보간을 사용하여 내부 구역을 재생성한다. 배경 보간기(108)는 잡음을 제거하기 위해 이동 평균 필터를 사용하는 선형-필터링 메커니즘을 사용할 수 있다. 단계 3에서, 번역기는 영어 단어 "CAUTION"를 독일어 단어 "WARNUNG"로 번역한다. 픽셀 블렌더(114)는 단계 2에서 생성된 배경에 결과적인 텍스트를 붙여 넣는다. 단계 4에서, 픽셀 블렌더(114)는 단계 1로부터의 박스 아웃 구역을 블렌딩 버퍼로부터의 데이터로 대체한다.
도 4는 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 방법(400)을 예시하는 간략화된 흐름도이다. 방법(400)은 하드웨어(회로, 전용 로직 등), (예를 들어, 범용 컴퓨팅 시스템 또는 전용 머신 상에서 실행되는)소프트웨어, 펌웨어(임베디드 소프트웨어), 또는 이들의 임의의 조합을 포함하는 프로세싱 로직에 의해 수행된다. 일 실시예에서, 방법(400)은 도 10의 디바이스(1000)에 의해 수행된다.
도 4를 참조하면, 블록(402)에서, 디바이스 카메라(102)는 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 심볼들을 포함하는 이미지를 획득한다. 예를 들어, 이미지는 게시판, 거리 표지판, 책표지, 또는 번역을 필요로 하는 심볼들을 가진 임의의 것일 수 있다. 블록(404)에서, 경로 파인더(106)는 심볼들의 반대측들 상에 제1 및 제2 직선 경계들을 위치시켜서, 수직으로 심볼들을 격리시킨다. 경로 파인더(106)는 심볼들의 각각의 에지 상에 선들을 배치하기 위해 심볼들을 가지는 구역과 심볼들 바로 다음의 구역 사이의 계조(gradient) 변경을 검출할 수 있다. 블록(406)에서, 번역기(110)는 하나의 언어 또는 시스템으로부터 또다른 언어 또는 시스템으로 심볼들을 번역한다. 번역기는 심볼들을 나타내는 기계 인식가능한 포맷으로 심볼들을 먼저 변환하기 위해 OCR 기법들을 사용할 수 있다. 번역기는 또한 사전들, 및 언어 및 심볼들을 하나의 언어 또는 시스템으로부터 또다른 언어 또는 시스템으로 번역하기 위한 다른 다양한 적절한 수단을 사용할 수 있다. 블록(406)에서, 텍스트 픽셀 생성기(112)는 또한 적어도 하나의 심볼의 번역된 심볼을 나타내는 복수의 픽셀들을 생성한다. 블록(408)에서, 배경 보간기(108)는 제1 및 제2 경계들 사이의 배경 픽셀 값들을 선형으로 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성한다. 이 방법은 심볼들 주위의 2개의 경계들 사이의 내부 구역을 보간한다. 경계들을 포함하는 박스 내부의 컬러는 2개의 경계들에서의 컬러가 공지되어 있으므로 보간될 수 있다. 이동 평균 필터를 사용하는 선형 필터링 메커니즘은 잡음을 제거하기 위해 사용될 수 있다. 선형 필터링이 덜 복잡하고 빠르지만, 그것은 여전히 결과적인 번역된 이미지 내에서 일부 거슬리는 결함들을 발생시킬 수 있다. 마지막으로, 블록(410)에서, 픽셀 생성기는 적어도 하나의 심볼의 번역을 나타내는 복수의 픽셀들 및 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 새로운 이미지를 생성한다. 일부 실시예들에서, 번역된 심볼들을 나타내는 픽셀들은 배경 픽셀을 대체한다.
본 발명의 실시예에 따라, 도 4에 예시된 특정 단계들이 동작 모드들 사이의 특정 스위칭 방법을 제공한다는 점이 이해되어야 한다. 단계들의 다른 시퀀스들이 또한 그에 따라 적절히 대안적인 실시예들에서 수행될 수 있다. 예를 들어, 본 발명의 대안적인 실시예들은 상이한 순서로 위에서 약술된 단계들을 수행할 수 있다. 예시하자면, 사용자는 제3 동작 모드에서 제1 동작 모드로, 제4 모드에서 제2 모드로, 또는 그 사이의 임의의 조합으로 변경하도록 선택할 수 있다. 또한, 도 4에 예시된 개별 단계들은 개별 단계들에 대해 적절할 때 다양한 시퀀스들로 수행될 수 있는 다수의 하위-단계들을 포함할 수 있다. 또한, 추가적인 단계들이 특정 애플리케이션들에 따라 추가되거나 제거될 수 있다. 당업자는 방법(400)의 많은 변형들, 수정들 및 대안들을 인식하고 이해할 것이다.
도 5는 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 방법(500)을 예시하는 또다른 간략화된 흐름도이다. 방법(500)은 하드웨어(회로, 전용 로직 등), (예를 들어, 범용 컴퓨팅 시스템 또는 전용 머신 상에서 실행되는) 소프트웨어, 펌웨어(임베디드 소프트웨어), 또는 이들의 임의의 조합을 포함하는 프로세싱 로직에 의해 수행된다. 일 실시예에서, 방법(500)은 도 10의 디바이스(1000)에 의해 수행된다.
도 5를 참조하면, 블록(502)에서, 디바이스 카메라(102)는 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 심볼들을 포함하는 이미지를 획득한다. 예를 들어, 이미지는 게시판, 거리 표지판, 책표지, 또는 번역을 필요로 하는 심볼들을 가지는 임의의 것일 수 있다. 블록(504)에서, 경로 파인더(106)는 심볼들의 반대측들 상에 제1 및 제2 직선 경계를 위치시킨다. 경로 파인더(106)는 심볼들의 각각의 측 상에 선들을 배치하기 위해 심볼들을 가지는 구역과 심볼들 바로 다음의 구역 사이의 계조 변경을 검출할 수 있다. 블록(506)에서, 번역기(110)는 하나의 언어 또는 시스템으로부터 또다른 언어 또는 시스템으로 심볼들을 번역한다. 번역기는 심볼들을 나타내는 기계 인식가능한 포맷으로 심볼들을 먼저 변환하기 위해 OCR 기법들을 사용할 수 있다. 번역기는 또한 사전들, 및 하나의 언어 또는 시스템으로부터 또다른 언어 또는 시스템으로 언어 및 심볼들을 번역하기 위한 다른 다양한 적절한 수단을 사용할 수 있다. 블록(506)에서, 텍스트 픽셀 생성기(112)는 또한 적어도 하나의 심볼의 번역된 심볼을 나타내는 복수의 픽셀들을 생성한다. 블록(508)에서, 배경 보간기(108)는, 제1 및 제2 경계들 사이의 배경 픽셀 값들을 비선형으로 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성한다. 비-선형 필터링에서, 배경 컬러에서의 분리물들(예를 들어, 잡음, 반사들, 및 인접한 텍스트의 텍스트 컬러)은 추정된 배경 컬러로 대체된다. 이 방법은 소량의 계산 오버헤드를 통해 결함들을 상당히 감소시킬 수 있다. 마지막으로, 블록(510)에서, 픽셀 생성기는 적어도 하나의 심볼의 번역을 나타내는 복수의 픽셀들 및 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 새로운 이미지를 생성한다. 일부 실시예들에서, 번역된 심볼들을 나타내는 픽셀들은 배경 픽셀을 대체한다.
본 발명의 실시예에 따라, 도 5에 예시된 특정 단계들이 동작 모드들 사이의 특정 스위칭 방법을 제공한다는 점이 이해되어야 한다. 단계들의 다른 시퀀스들은 또한 그에 따라 적절히 대안적인 실시예들에서 수행될 수 있다. 예를 들어, 본 발명의 대안적인 실시예들은 상이한 순서로 위에서 약술된 단계들을 수행할 수 있다. 예시하자면, 사용자는 제3 동작 모드에서 제1 동작 모드로, 제4 동작 모드에서 제2 동작 모드로, 또는 그 사이의 임의의 조합으로 변경하도록 선택할 수 있다. 또한, 도 5에 예시된 개별 단계들은 개별 단계들에 대해 적절할 때 다양한 시퀀스들로 수행될 수 있는 다수의 하위-단계들을 포함할 수 있다. 또한, 추가적인 단계들은 특정 애플리케이션들에 따라 추가되거나 제거될 수 있다. 당업자는 방법(500)의 많은 변형들, 수정들 및 대안들을 인식하고 이해할 것이다.
도 6은 최적화된 경로 상의 보간을 사용하여 배경 이미지의 재-렌더링의 결과로 인한 결함들을 감소시키면서 이미지 내의 심볼들을 대체하기 위한 프로세스를 예시하는, 또다른 간략화된 흐름도이다. 방법(600)은 하드웨어(회로, 전용 로직 등), (예를 들어, 범용 컴퓨팅 시스템 또는 전용 머신 상에서 실행되는) 소프트웨어, 펌웨어(임베디드 소프트웨어), 또는 이들의 임의의 조합을 포함하는 프로세싱 로직에 의해 수행된다. 일 실시예에서, 방법(600)은 도 10의 디바이스(1000)에 의해 수행된다.
다양한 보간 및 필터링 메커니즘은 잡음의 영향들 및 그로 인한 결과적인 결함들을 제거함으로써 배경의 더욱 양호한 구현을 허용한다. 그러나, 또다른 방식은 잡음의 원치 않는 분산을 가지는 경로들을 회피하고 훨씬 더 적은 결함들을 가지는 배경 이미지를 초래하는 최적의 경로들을 경계들로서 발견하는 것이다. 심볼들의 시퀀스들은 모든 4개 측들 상에 이격을 가진다. 이러한 이격은 심볼들로부터의 잡음을 회피할 수 있는 경로들을 제공한다. 따라서, 잡음에 대처하기 위해 보간 알고리즘에만 오로지 의존하는 것 대신, 한가지 방식은 왜곡을 가지는 잡음성 경로들을 함께 회피하는 것이다. 배경의 내부를 보간하기 위해 사용되는 2개의 경계들은 픽셀들의 스트링을 따라 픽셀 값의 변경을 최소화하는 그 픽셀들의 스트링으로서 정의된다. 다시 말해, 이러한 실시예는 경로 내에서 심볼들 및 잡음을 회피하는 심볼들의 반대측들을 따라 최적화된 경로의 발견에 초점을 둔다. 최적화된 경로는 2개의 경계들 사이의 픽셀 값들을 보간하기 위해 사용된다. 최적화된 경로를 사용하는 내부 픽셀들의 (선형 및 비선형) 보간은 최종 이미지에서 결함들을 상당히 감소시킨다.
도 6을 참조하면, 블록(602)에서, 디바이스 카메라(102)는 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 심볼들을 포함하는 이미지를 획득한다. 예를 들어, 이미지는 게시판, 거리 표지판, 책표지, 또는 번역을 필요로 하는 심볼들을 가지는 임의의 것일 수 있다. 블록(604)에서, 경로 파인더(106)는 심볼들의 반대 측들에서 최적의 경로들을 발견함으로써 심볼들의 반대측들 상에 제1 및 제2 경계를 위치시킨다. 경로 파인더(106)는 잠음성 경로들을 회피하고 더 적은 결함들을 가지는 배경 이미지를 초래하는 최적의 경로를 찾는다. 최적의 경로를 발견하기 위한 예시적인 실시예들이 도 7, 도 8 및 도 9에서 추가로 논의된다.
블록(606)에서, 번역기(110)는 하나의 언어 또는 시스템으로부터 또다른 언어 또는 시스템으로 심볼들을 번역한다. 번역기는 심볼들을 나타내는 기계 인식가능한 포맷으로 심볼들을 먼저 변환하기 위해 OCR 기법들을 사용할 수 있다. 번역기는 또한 사전들, 및 하나의 언어 또는 시스템으로부터 또다른 언어 또는 시스템으로 언어 및 심볼들을 번역하기 위한 다른 다양한 적절한 수단을 사용할 수 있다. 블록(606)에서, 텍스트 픽셀 생성기(112)는 또한 적어도 하나의 심볼의 번역된 심볼을 나타내는 복수의 픽셀들을 생성한다. 블록(608)에서, 배경 보간기(108)는, 제1 및 제2 경계들 사이의 배경 픽셀 값들을 보간함으로써, 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성한다. 배경 보간기(108)는 선형 보간, 비선형 보간 또는 배경을 재-렌더링하기에 적합한 임의의 수단을 사용하여 보간할 수 있다. 마지막으로, 블록(610)에서, 픽셀 생성기는 적어도 하나의 심볼의 번역을 나타내는 복수의 픽셀들 및 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 새로운 이미지를 생성한다. 일부 실시예들에서, 번역된 심볼들을 나타내는 픽셀들은 배경 픽셀을 대체한다.
본 발명의 실시예에 따라, 도 6에 예시된 특정 단계들이 동작 모드들 사이의 특정 스위칭 방법을 제공한다는 점이 이해되어야 한다. 단계들의 또다른 시퀀스는 또한 그에 따라 적절히 대안적인 실시예들에서 수행될 수 있다. 예를 들어, 본 발명의 대안적인 실시예들은 위에서 약술된 단계들을 상이한 순서로 수행할 수 있다. 예시하자면, 사용자는 제3 동작 모드에서 제1 동작 모드로, 제4 동작 모드에서 제2 동작 모드로, 또는 그 사이의 임의의 조합으로 변경하도록 선택할 수 있다. 또한, 도 6에 예시된 개별 단계들은 개별 단계에 대해 적절할 때 다양한 시퀀스들로 수행될 수 있는 다수의 하위-단계들을 포함할 수 있다. 또한, 추가적인 단계들은 특정 애플리케이션들에 따라 추가되거나 제거될 수 있다. 당업자는 방법(600)의 많은 변형들, 수정들 및 대안들을 인식하고 이해할 것이다.
도 7은 잡음을 회피하는 최적화된 경로를 유도하기 위한 방법(700)을 예시하는 간략화된 흐름도이다. 방법(700)은 하드웨어(회로, 전용 로직 등), (예를 들어, 범용 컴퓨팅 시스템 또는 전용 머신 상에서 실행되는) 소프트웨어, 펌웨어(임베디드 소프트웨어), 또는 이들의 임의의 조합을 포함하는 프로세싱 로직에 의해 수행된다. 일 실시예에서, 방법(700)은 도 10의 디바이스(1000)에 의해 수행된다.
예시의 목적들로, 도 7에서 경계들을 논의하지만, 2개의 경계들은 심볼들의 반대측들의 최상부 및 최하부 공간들에 수평으로 배치되는 것으로서 지칭되며, 최적화된 경로들은 좌측에서 우측으로 생성된다. 그러나, 경계들이 각각의 측 상의 심볼들의 시퀀스를 수직으로 바인딩하도록 배치될 수 있다는 점이 당업자에 의해 잘 이해된다. 예를 들어, 수직으로 쓰여진 일부 아시아 문자들 및 심볼들에 대해, 경계들은 최상부로부터 최하부로 측면들 상에서 수직으로 그려질 수 있다. 유사하게, 우측에서 좌측으로 쓰여진 일부 중동 스크립트들에 대해, 우측에서 좌측으로의 경계들을 나타내는 최적화된 경로를 탐색하고 생성하는 것이 유리할 수 있다.
도 7을 참조하면, 블록(702)에서, 블렌딩 시스템은 탐색 구역들을 최상부 및 최하부 수평 대역들로 분할하여, (804에서 보여지는 바와 같이) 심볼들에 의해 대부분(mostly) 커버되는 영역을 갖는 구역을 마스크 아웃시킨다. 영역의 대부분이 심볼들에 의해 커버되는 구역을 마스크 아웃시키는 것은 최적화된 경로를 계산하는 동안 마스크 아웃된 영역 내의 픽셀들을 무시하는 것을 지칭할 수 있다. 심볼들의 2개의 반대 에지들에서 2개의 대역들을 생성하는 것은 이미지를 따라 가능한 경로들의 수를 상당히 감소시킨다.
블록(704)에서, 블렌딩 시스템은 각각의 수평 대역을 통과하여 수평으로 진행하는 경로를 선택한다. 경로는 텍스트의 좌측 에지로부터 시작하여 텍스트의 우측 에지로 확장하는 픽셀들의 스트링으로서 정의된다. 아래 수학식(1)에서, 각각의 pi는 i번째 열 상의 픽셀의 수직 위치를 나타내고, n은 경로의 길이이고, (a, b)는 텍스트의 좌측 에지로부터 시작하여 우측 에지로 확장하는 경로에 대한 탐색 구역(대역)이다.
Figure 112014009583059-pct00001
블록(706)에서, 블렌딩 시스템은 경로를 따라, 개별 픽셀들 주위의 계조 변경을 계산한다. 계조 변경을 계산하는 일 실시예가 하기 도 9에서 논의하는 동안 추가로 논의된다. 블록(708)에서, 시스템은 선택된 경로를 따라 픽셀들의 계조 변경을 합산함으로써 경로의 비용을 계산한다. 경로의 비용을 계산하기 위한 비용 함수가 다음 수학식에 의해 표현된다.
Figure 112014009583059-pct00002
여기서, D(i, pi)는 픽셀 (i, pi) 주위의 계조 변경을 나타낸다. 따라서, 위의 수학식은 선택된 경로를 따라 모든 픽셀들 주위의 계조 변경의 합산을 나타낸다. 블렌딩 시스템이 경로의 비용을 계산하면, 비용은 다른 경로들의 비용과 비교된다. 만약, 블록(710)에서, 블렌딩 시스템이 그것이 최적화된 경로를 찾지 않았다고 결정한다면, 블렌딩 루틴은 (블록 704에서 다시 시작하여) 더 낮은 계조 변경을 나타내는 더 낮은 비용을 가지는 경로를 찾기 위해 새로운 경로로 이동한다.
동적 프로그래밍으로부터의 개념들이, 텍스트의 위 및 아래의 수평 대역들 모두 및, 또한 수평 대역들 내의 최적화된 경로들을 찾기 위해 문제점을 더 작은 세부 문제점들로 세그먼트화함으로써, 도 7에 기재된 블렌딩 시스템을 구현하기 위해 사용될 수 있다. 동적 프로그래밍 모델은 경로의 크기 및 방향(블록 704) 및 선택된 경로를 따라 계조 변경을 계산하는 것을 포기하거나 계속하기 위한 결정의 빈도수(블록 710)를 지시할 수 있다.
본 발명의 실시예에 따라, 도 7에 예시된 특정 단계들이 동작 모드들 사이의 특정 스위칭 방법을 제공한다는 점이 이해되어야 한다. 단계들의 또다른 시퀀스는 또한 그에 따라 적절히 대안적인 실시예들에서 수행될 수 있다. 예를 들어, 본 발명의 대안적인 실시예들은 위에서 약술된 단계들을 상이한 순서로 수행할 수 있다. 예시하자면, 사용자는 제3 동작 모드에서 제1 동작 모드로, 제4 동작 모드에서 제2 동작 모드로, 또는 그 사이의 임의의 조합으로 변경하도록 선택할 수 있다. 또한, 도 7에 예시된 개별 단계들은 개별 단계에 대해 적절할 때 다양한 시퀀스들로 수행될 수 있는 다수의 하위-단계들을 포함할 수 있다. 또한, 추가적인 단계들이 특정 애플리케이션들에 따라 추가되거나 제거될 수 있다. 당업자는 방법(700)의 많은 변형들, 수정들 및 대안들을 인식하고 이해할 것이다.
도 8은 이미지의 최상부 및 최하부 구역들을 따라 최적화된 경로를 발견하기 위한 천이 단계들을 예시하는, 텍스트를 가지는 이미지의 흐름도이다. 블록(802)에서, 텍스트를 가지는 이미지가 캡쳐된다. 블록(804)에서, 텍스트의 대부분을 가지는 구역은 텍스트의 최하부 및 최상부 에지들에서 2개의 협대역들을 형성하기 위해 마스크아웃된다. 대역들은 심볼들로부터 작은 잡음을 가지거나 잡음을 가지지 않는 구역들이다. 대역들을 식별하는 것은 최적의 경로들에 대한 탐색 공간을 감소시키는 것을 보조한다. 영역의 대부분이 심볼들에 의해 커버되는 구역을 마스크 아웃시키는 것은 텍스트의 어느 한 측 상에서 2개의 대역들을 효과적으로 생성한다. 이는 최적화된 경로를 계산하는 동안 마스크 아웃된 영역 내의 픽셀들을 무시하는 것을 초래한다. 블렌딩 시스템은 더 좁은 대역들 내의 계조 변경의 전체 비용에 기초하거나, 또는 다른 적절한 기법들을 사용함으로써, 최상부 및 최하부 구역들을 더 좁은 대역들(미도시)로 추가로 분할할 수 있다. 블렌딩 시스템이 텍스트의 최상부 에지 및 최하부 에지에서 협대역들을 선택하면, 블록(806)에서 도시된 바와 같이, 최적화된 경로가 각각의 대역을 따라 생성된다. 이들 최적화된 경로들은 도 7을 참조하여 설명된 바와 같이 2개의 경로들 사이의 구역의 배경 컬러를 보간하기 위해 사용된다. 심볼들의 반대 측들 상에서 이들 대역들을 생성하는 것이 유리한데, 왜냐하면 그것은 블렌딩 시스템이 최적화된 경로를 발견하기 이전에 탐색해야 하는 경로들의 수(블록들(704-710)의 반복들)를 상당히 감소시키기 때문이다.
도 9는 이웃 픽셀들의 세트를 선택하고 픽셀 주위의 계조 변경을 계산하는 비-제한적인 예시적인 실시예를 예시하는, 이웃 픽셀들의 그래픽 표현이다. 이 실시예에서, 픽셀 주위의 계조 변경은 관심 있는 픽셀 주위의 이웃 픽셀들의 세트를 선택함으로써 계산된다. 픽셀 주위의 계조 변경은 관심 있는 픽셀과 각각의 이웃 픽셀 사이의 차이의 절댓값의 합산으로서 계산된다. 픽셀 주위의 계조 변경을 발견하는 방법은 다음의 수학식에 의해 표현된다.
Figure 112014009583059-pct00003
여기서, D(u,v)는 픽셀 (u,v) 주위의 계조 변경을 나타낸다.
Figure 112014009583059-pct00004
는 (m, n)이 (u,v)의 이웃임을 의미한다.
Figure 112014009583059-pct00005
는 (u,v)에서의 픽셀의 컬러이고,
Figure 112014009583059-pct00006
는 이웃 시스템이다. 도 9를 참조하면, 계조 변경은 픽셀(904) 주위에서 계산된다. 픽셀(904)은 관심 있는 픽셀이며, (u,v)에 위치된다. 902, 906, 908, 910, 및 912에서의 픽셀들은 904 주위의 픽셀들의 세트이다. 일 실시예에서, 최적화 루틴은 계조 변경을 계산하기 위해 이웃 픽셀들의 세트를 형성하도록 908, 910 및 912에서의 픽셀들만을 선택한다.
도 10에 예시된 바와 같은 컴퓨터 시스템은 이전에 설명된 컴퓨터화된 디바이스의 일부로서 포함될 수 있다. 예를 들어, 컴퓨터 시스템(1000)은 핸드-헬드 디바이스의 컴포넌트들 중 일부를 나타낼 수 있다. 핸드헬드 디바이스는 카메라와 같은 입력 감지 유닛 및 디스플레이 유닛을 가지는 임의의 컴퓨팅 디바이스일 수 있다. 핸드헬드 디바이스의 예들은 비디오 게임 콘솔들, 태블릿들, 스마트 폰들 및 모바일 디바이스를 포함하지만 이에 제한되지 않는다. 도 10은, 본원에 설명된 바와 같은 다양한 다른 실시예들에 의해 제공되는 방법들을 수행할 수 있고, 그리고/또는 호스트 컴퓨터 시스템, 원격 키오스크/단말, POS(point-of-sale) 디바이스, 모바일 디바이스, 셋톱 박스 및/또는 컴퓨터 시스템으로서 기능할 수 있는 컴퓨터 시스템(1000)의 일 실시예의 개략적 예시를 제공한다. 도 10은 단지 다양한 컴포넌트들의 일반화된 예시를 제공하도록 의도되며, 그 중 일부 또는 모두는 적절한 경우 이용될 수 있다. 따라서, 도 10은 개별 시스템 엘리먼트들이 상대적으로 분리된 또는 상대적으로 더 많이 통합된 방식으로 구현될 수 있는 방법을 넓게 예시한다.
버스(1005)를 통해 전기적으로 커플링될 수 있는 하드웨어 엘리먼트들을 포함하는 컴퓨터 시스템(1000)이 도시된다(또는, 적절한 경우, 다른 방식으로 통신 중일 수 있다). 하드웨어 엘리먼트들은 하나 이상의 범용 프로세서들 및/또는 하나 이상의 특수 목적 프로세서들(예를 들어, 디지털 신호 프로세싱 칩들, 그래픽 가속 프로세서들 등)을 포함하는(이들로 제한되지는 않음) 하나 이상의 프로세서들(1010); 카메라, 마우스, 키보드 등을 포함할 수 있는(이들로 제한되지는 않음) 하나 이상의 입력 디바이스들(1015); 및 디스플레이 유닛, 프린터 등(이들로 제한되지는 않음)을 포함할 수 있는 하나 이상의 출력 디바이스들(1020)을 포함할 수 있다.
컴퓨터 시스템(1000)은 하나 또는 그 초과의 비-일시적 저장 디바이스들을 더 포함할 수 있으며 (그리고/또는 이와 통신할 수 있음), 이 비-일시적 저장 디바이스들은 로컬 및/또는 네트워크 액세스 가능한 저장소(이것으로 제한되지 않음)를 포함할 수 있고, 그리고/또는 디스크 드라이브, 디스크 어레이, 광학 저장 디바이스, 고체-상태 저장 디바이스, 이를 테면, 렌덤 액세스 메모리("RAM") 및/또는 판독-전용 메모리("ROM")를 포함할 수 있으며(이것으로 제한되지 않음), 이들은 프로그래밍 가능하고, 플래시-업데이트 가능한 식일 수 있다.
컴퓨터 시스템(1000)은 로컬 및/또는 네트워크 액세스가능한 저장소를 포함할 수 있는(이들로 제한되지는 않음) 그리고/또는 디스크 드라이브, 드라이브 어레이, 광학 저장 디바이스, 프로그램가능하고 플래시 업데이트 가능할 수 있는 랜덤 액세스 메모리("RAM") 및/또는 판독 전용 메모리("ROM")와 같은 고체 상태 저장 디바이스 등을 포함할 수 있는(이들로 제한되지는 않음) 하나 이상의 비-일시적 저장 디바이스들(1025)을 더 포함할 수 있다(그리고/또는 이들과 통신 중일 수 있다). 이러한 저장 디바이스들은 다양한 파일 시스템들, 데이터 구조들 등을 포함하는(이들로 제한되지는 않음), 임의의 적절한 데이터 저장소를 구현하도록 구성될 수 있다.
컴퓨터 시스템(1000)은 또한 모뎀, 네트워크 카드(무선 또는 유선), 적외선 통신 디바이스, 무선 통신 디바이스 및/또는 칩셋(예를 들어, Bluetooth™ 디바이스, 802.11 디바이스, WiFi 디바이스, WiMax 디바이스, 셀룰러 통신 설비들 등) 등을 포함할 수 있는(이들로 제한되지는 않음) 통신 서브시스템(1030)을 포함할 수 있다. 통신 서브시스템(1030)은 데이터가 네트워크(예를 들어, 일 예를 들자면, 하기에 설명되는 네트워크), 다른 컴퓨터 시스템들, 및/또는 본원에 설명된 임의의 다른 디바이스들과 교환되도록 허용할 수 있다. 많은 실시예들에서, 전술된 바와 같이, 컴퓨터 시스템(1000)은 RAM 또는 ROM 디바이스를 포함할 수 있는 비-일시적 작업 메모리(1035)를 더 포함할 것이다.
컴퓨터 시스템(1000)은 또한 운영 체제(1040), 디바이스 드라이버들, 실행가능한 라이브러리들, 및/또는 하나 이상의 응용 프로그램들(1045)과 같은 다른 코드를 포함하는 작업 메모리(1035) 내에 현재 위치되어 있는 것으로 도시된 소프트웨어 엘리먼트들을 포함할 수 있는데, 그 응용 프로그램들은 다양한 실시예들에 의해 제공되는 컴퓨터 프로그램들을 포함할 수 있고 그리고/또는 본원에 설명된 바와 같은 다른 엘리먼트들에 의해 제공되는 방법들을 구현하고 그리고/또는 시스템들을 구성하도록 설계될 수 있다. 단지 예시로서, 위에서 논의된 방법(들)에 대해 설명된 하나 이상의 프로시져들은 컴퓨터(및/또는 컴퓨터 내의 프로세서)에 의해 실행가능한 코드 및/또는 명령들로서 구현될 수 있고; 일양상에서, 이후, 이러한 코드 및/또는 명령들은 설명된 방법들에 따라 하나 이상의 동작들을 수행하도록 범용 컴퓨터(또는 다른 디바이스)를 구성하고 그리고/또는 적응시키기 위해 사용될 수 있다.
이들 명령들 및/또는 코드의 세트는 전술된 저장 디바이스(들)(1025)와 같은 컴퓨터-판독가능한 저장 매체 상에 저장될 수 있다. 일부 경우들에서, 저장 매체는 컴퓨터 시스템(1000)과 같은 컴퓨터 시스템 내에 통합될 수 있다. 다른 실시예들에서, 저장 매체는 컴퓨터 시스템과는 별개일 수 있고(예를 들어, 컴팩트 디스크와 같은 제거가능한 매체), 그리고/또는 설치 패키지에 제공될 수 있으며, 따라서, 저장 매체는 그 상에 저장된 명령들/코드를 통해 범용 컴퓨터를 프로그래밍하고, 구성하고 그리고/또는 적응하도록 사용될 수 있다. 이들 명령들은 컴퓨터 시스템(1000)에 의해 실행가능한, 실행가능한 코드의 형태를 취할 수 있고, 그리고/또는 (예를 들어, 다양한 일반적으로 이용가능한 컴파일러, 설치 프로그램들, 압축/압축해제 유틸리들 등 중 임의의 것을 사용하여) 컴퓨터 시스템(1000) 상에서의 컴파일(compilation) 및/또는 설치 시에, 이후 실행가능한 코드의 형태를 취할 수 있는, 소스 및/또는 설치가능한 코드의 형태를 취할 수 있다.
특정 요건들에 따라, 실질적인 변경들이 이루어질 수 있다. 예를 들어, 커스터마이즈된 하드웨어가 또한 사용될 수 있고, 그리고/또는, 특정 엘리먼트들은 하드웨어, (애플릿들과 같은 휴대용 소프트웨어 등을 포함하는) 소프트웨어, 또는 둘 모두에서 구현될 수 있다. 또한, 네트워크 입력/출력 디바이스들과 같은 다른 컴퓨팅 디바이스들에 대한 연결이 사용될 수 있다.
일부 실시예들은 개시 내용에 따라 방법들을 수행하기 위해 컴퓨터 시스템(예를 들어, 컴퓨터 시스템(1000))을 사용할 수 있다. 예를 들어, 설명된 방법들의 프로시져들 중 일부 또는 전부가, 프로세서(1010)가 작업 메모리(1035)에 포함된 (운영 시스템(1040) 및/또는 응용 프로그램(1045)과 같은 다른 코드에 통합될 수 있는) 하나 이상의 명령들의 하나 이상의 시퀀스들을 실행하는 것에 응답하여 컴퓨터 시스템(1000)에 의해 수행될 수 있다. 이러한 명령들은 저장 디바이스(들)(1025) 중 하나 이상과 같은 또다른 컴퓨터-판독가능한 매체로부터 작업 메모리(1035) 내로 판독될 수 있다. 단지 예시로서, 작업 메모리(1035)에 포함된 명령들의 시퀀스들의 실행은 프로세서(들)(1010)로 하여금 본원에 설명된 방법들의 하나 이상의 프로시져들을 수행하게 할 수 있다.
용어들 "기계-판독가능한 매체" 및 "컴퓨터-판독가능한 매체"는 본원에서 사용된 바와 같이, 기계를 특정 방식으로 동작하게 하는 데이터를 제공하는 것에 관여하는 임의의 매체를 지칭한다. 컴퓨터 시스템(1000)을 사용하여 구현된 실시예에서, 다양한 컴퓨터-판독가능한 매체는 실행을 위해 프로세서(들)(1010)에 명령들/코드를 제공하는 것에 관련될 수 있고, 그리고/또는 이러한 명령들/코드들을 (예를 들어, 신호들로서) 저장하고 그리고/또는 전달하기 위해 사용될 수 있다. 많은 구현예들에서, 컴퓨터-판독가능한 매체는 물리적 및/또는 유형적(tangible) 저장 매체이다. 이러한 매체는 비휘발성 매체, 휘발성 매체, 및 전송 매체를 포함하는(이에 제한되지 않음) 많은 형태들을 취할 수 있다. 비휘발성 매체는, 예를 들어, 저장 디바이스(들)(1025)와 같은 광학 및/또는 자기 디스크들을 포함한다. 휘발성 매체는 작업 메모리(1035)와 같은 동적 메모리(이에 제한되지 않음)를 포함한다. 전송 매체는 버스(1005)를 포함하는 와이어들을 포함한 동축 케이블들, 구리 와이어 및 광섬유들, 및 통신 서브시스템(1030)의 다양한 컴포넌트들(및/또는 통신 서브시스템(1030)이 다른 디바이스들에 통신을 제공하게 하는 매체)를 포함한다(이들로 제한되지는 않음). 따라서, 전송 매체는 또한 (라디오-파 및 적외선 데이터 통신들 동안 생성된 것과 같은, 라디오, 음향 및/또는 광파들을 포함하는(이들로 제한되지 않음)) 파들의 형태를 취할 수 있다.
물리적 및/또는 유형적 컴퓨터 판독가능한 매체의 공통적 형태들은, 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 또는 임의의 다른 자기 매체, CD-ROM, 임의의 다른 광학 매체, 천공카드들, 페이퍼테이프, 홀들의 패턴들을 가지는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASH-EPROM, 임의의 다른 메모리 칩 또는 카트리지, 하기에 설명된 바와 같은 반송파, 또는 컴퓨터가 명령들 및/또는 코드를 판독할 수 있는 임의의 다른 매체를 포함한다.
컴퓨터 판독가능한 매체의 다양한 형태들은 실행을 위해 프로세서(들)(1010)에 하나 이상의 명령들의 하나 이상의 시퀀스들을 전달하는 것에 관련될 수 있다. 단지 예시로서, 명령들은 원격 컴퓨터의 자기 디스크 및/또는 광학 디스크 상에서 초기에 전달될 수 있다. 원격 컴퓨터는 그것의 동적 메모리 내로 명령들을 로딩하고, 컴퓨터 시스템(1000)에 의해 수신되고 그리고/또는 실행되도록 전송 매체를 통해 신호들로서 명령들을 송신할 수 있다. 발명의 다양한 실시예들에 따라, 전자기 신호들, 음향 신호들, 광학 신호들 등의 형태일 수 있는 이들 신호들은 명령들이 인코딩될 수 있는 반송파들의 모든 예들이다.
통신 서브시스템(1030)(및/또는 이것의 컴포넌트들)은 일반적으로 신호들을 수신할 것이며, 버스(1005)가 이후, 프로세서(들)(1010)가 명령들을 리트리브(retrieve)하고 실행하는 작업 메모리(1035)에 신호들(및/또는 신호들에 의해 전달되는 데이터, 명령들 등)을 전달할 수 있다. 작업 메모리(1035)에 의해 수신된 명령들은 선택적으로, 프로세서(들)(1010)에 의한 실행 이전 또는 이후 중 어느 하나에서 비-일시적 저장 디바이스(1025) 상에 저장될 수 있다.
위에서 논의된 방법들, 시스템들 및 디바이스들은 예들이다. 다양한 실시예들은 적절할 때 다양한 프로시져들 또는 컴포넌트들을 생략하고, 대체하거나 또는 추가할 수 있다. 예를 들어, 대안적인 구성들에서, 설명된 방법들은 설명된 것과는 상이한 순서로 수행될 수 있고, 그리고/또는 다양한 스테이지들이 추가되고, 생략되고 그리고/또는 조합될 수 있다. 또한, 특정 실시예들에 대해 설명된 특징들은 다양한 다른 실시예들에서 조합될 수 있다. 실시예들의 상이한 양상들 및 엘리먼트들은 유사한 방식으로 조합될 수 있다. 또한, 기술들이 진보하고, 따라서, 엘리먼트들 중 다수는 그 특정 예들로 개시내용의 범위를 제한하지 않는 예들이다.
특정 상세항목들은 실시예들의 철저한 이해를 제공하기 위해 설명에 주어진다. 그러나, 실시예들은 이들 특정 상세항목들 없이 실시될 수 있다. 예를 들어, 공지되어 있는 회로들, 프로세스들, 알고리즘들, 구조들 및 기법들은 실시예들을 모호하게 하는 것을 회피하기 위해 불필요한 상세항목 없이 도시되었다. 이 설명은 오직 예시적인 실시예들을 제공하며, 발명의 범위, 응용가능성, 또는 구성을 제한하도록 의도되지 않는다. 오히려, 실시예들의 이전 설명은 발명의 실시예들을 구현할 수 있게 하는 설명을 당업자에게 제공할 것이다. 다양한 변경들이 발명의 사상 및 범위로부터의 이탈 없이 엘리먼트들의 기능 및 배열에서 이루어질 수 있다.
또한, 일부 실시예들은 블록도들 또는 흐름도들로서 도시된 프로세스들로서 설명되었다. 동작들 각각이 순차적 프로세스로서 동작들을 설명할 수 있지만, 동작들 중 다수는 병렬로 또는 동시에 수행될 수 있다. 추가로, 동작들의 순서가 재배열될 수 있다. 프로세스는 도면에 포함되지 않은 추가적인 단계들을 가질 수 있다. 또한, 방법들의 실시예들은 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 하드웨어 기술 언어들, 또는 이들의 임의의 조합에 의해 구현될 수 있다. 소프트웨어, 펌웨어, 미들웨어, 또는 마이크로코드로 구현되는 경우, 연관된 작업들을 수행하기 위한 프로그램 코드 또는 코드 세그먼트들은 저장 매체와 같은 컴퓨터-판독가능한 매체에 저장될 수 있다. 프로세서들은 연관된 작업들을 수행할 수 있다.
몇몇 실시예들을 설명했지만, 다양한 수정들, 대안적인 구성들, 및 등가물들이 개시내용의 사상으로부터의 이탈 없이 사용될 수 있다. 예를 들어, 위의 엘리먼트들은 단지 더 큰 시스템의 컴포넌트일 수 있으며, 다른 규정들이 발명의 응용예보다 우선하거나 그렇지 않으면 이를 수정할 수 있다. 또한, 다수의 단계들이 위의 엘리먼트들이 고려되기 이전에, 고려되는 동안, 또는 고려된 이후에 시작될 수 있다. 따라서, 위의 설명은 개시내용의 범위를 제한하지 않는다.

Claims (32)

  1. 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법으로서,
    상기 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 상기 제1 이미지를 획득하는 단계;
    상기 제1 이미지 내에 제1 경계 및 제2 경계를 정의하는 단계 ― 상기 제1 경계 및 상기 제2 경계는 각각 경로에 대한 컬러에서의 변화와 연관된 비용을 최소화하는 복수의 픽셀들을 포함하는 경로이고, 그리고 상기 적어도 하나의 심볼은 상기 제1 경계와 상기 제2 경계 사이에 위치됨 ―;
    상기 적어도 하나의 심볼의 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하는 단계;
    상기 제1 경계 및 상기 제2 경계 사이의 복수의 배경 픽셀 값들을 보간함으로써, 상기 배경 영역의 증강된(augmented) 버전을 나타내는 복수의 픽셀들을 생성하는 단계; 및
    상기 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 상기 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하는 단계를 포함하고,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하는 단계는, 상기 적어도 하나의 심볼의 대부분을 갖는 영역을 마스킹(mask)하여 상기 마스킹된 영역이 제1 대역과 제2 대역 사이에 있도록 상기 제1 대역 및 상기 제2 대역을 정의하는 단계를 포함하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법.
  2. 제1항에 있어서,
    상기 제1 경계 및 상기 제2 경계 각각은 상기 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의되는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법.
  3. 제1항에 있어서,
    상기 경로에 대한 컬러에서의 변화와 연관된 비용은 상기 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조(gradient) 변경의 합산을 최소화하는 픽셀들의 경로로서 정의되는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법.
  4. 제1항에 있어서,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하는 단계는:
    상기 제1 대역을 통해 진행하는 적어도 제1 경로 및 상기 제2 대역을 통해 진행하는 적어도 제2 경로를 선택하는 단계;
    각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 상기 적어도 제1 경로 및 상기 적어도 제2 경로에 대한 비용을 유도하는 단계; 및
    상기 제1 경계로서 상기 제1 대역으로부터 최저의 비용을 가지는 경로를 선택하고, 상기 제2 경계로서 상기 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하는 단계를 더 포함하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법.
  5. 제1항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 선형 보간을 이용하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법.
  6. 제1항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 비선형 보간을 이용하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법.
  7. 제1항에 있어서,
    상기 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 상기 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 방법.
  8. 디바이스로서,
    프로세서;
    상기 프로세서에 커플링된 입력 디바이스;
    상기 프로세서에 커플링된 출력 디바이스; 및
    상기 프로세서에 커플링된 비-일시적 컴퓨터 판독가능한 저장 매체
    를 포함하고, 상기 비-일시적 컴퓨터 판독가능한 저장 매체는:
    적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 제1 이미지를 획득하는 단계;
    상기 제1 이미지 내에 제1 경계 및 제2 경계를 정의하는 단계 ― 상기 제1 경계 및 상기 제2 경계는 각각 경로에 대한 컬러에서의 변화와 연관된 비용을 최소화하는 복수의 픽셀들을 포함하는 경로이고, 그리고 상기 적어도 하나의 심볼은 상기 제1 경계와 상기 제2 경계 사이에 위치됨 ―;
    상기 적어도 하나의 심볼의 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하는 단계;
    상기 제1 경계 및 상기 제2 경계 사이의 복수의 배경 픽셀 값들을 보간함으로써, 상기 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하는 단계; 및
    상기 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 상기 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하는 단계를 포함하는 방법을 구현하기 위해 상기 프로세서에 의해 실행가능한 코드를 포함하고,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하는 단계는, 상기 적어도 하나의 심볼의 대부분을 갖는 영역을 마스킹하여 상기 마스킹된 영역이 제1 대역과 제2 대역 사이에 있도록 상기 제1 대역 및 상기 제2 대역을 정의하는 단계를 포함하는, 디바이스.
  9. 제8항에 있어서,
    상기 제1 경계 및 상기 제2 경계 각각은 상기 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의되는, 디바이스.
  10. 제8항에 있어서,
    상기 경로에 대한 컬러에서의 변화와 연관된 비용은 상기 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경의 합산을 최소화하는 픽셀들의 경로로서 정의되는, 디바이스.
  11. 제8항에 있어서,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하는 단계는:
    상기 제1 대역을 통해 진행하는 적어도 제1 경로 및 상기 제2 대역을 통해 진행하는 적어도 제2 경로를 선택하는 단계;
    각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 상기 적어도 제1 경로 및 상기 적어도 제2 경로에 대한 비용을 유도하는 단계; 및
    상기 제1 경계로서 상기 제1 대역으로부터 최저의 비용을 가지는 경로를 선택하고, 상기 제2 경계로서 상기 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하는 단계를 더 포함하는, 디바이스.
  12. 제8항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 선형 보간을 이용하는, 디바이스.
  13. 제8항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 비선형 보간을 이용하는, 디바이스.
  14. 제8항에 있어서,
    상기 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 상기 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하는, 디바이스.
  15. 프로세서에 커플링된 컴퓨터 판독가능한 저장 매체로서,
    적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 제1 이미지를 획득하는 단계;
    상기 제1 이미지 내에 제1 경계 및 제2 경계를 정의하는 단계 ― 상기 제1 경계 및 상기 제2 경계는 각각 경로에 대한 컬러에서의 변화와 연관된 비용을 최소화하는 복수의 픽셀들을 포함하는 경로이고, 그리고 상기 적어도 하나의 심볼은 상기 제1 경계와 상기 제2 경계 사이에 위치됨 ―;
    상기 적어도 하나의 심볼의 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하는 단계;
    상기 제1 경계 및 상기 제2 경계 사이의 복수의 배경 픽셀 값들을 보간함으로써, 상기 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하는 단계; 및
    상기 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 상기 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하는 단계를 포함하는 방법을 구현하기 위해 상기 프로세서에 의해 실행가능한 컴퓨터 프로그램을 포함하고,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하는 단계는, 상기 적어도 하나의 심볼의 대부분을 갖는 영역을 마스킹하여 상기 마스킹된 영역이 제1 대역과 제2 대역 사이에 있도록 상기 제1 대역 및 상기 제2 대역을 정의하는 단계를 포함하는, 컴퓨터-판독가능한 저장 매체.
  16. 제15항에 있어서,
    상기 제1 경계 및 상기 제2 경계 각각은 상기 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의되는, 컴퓨터-판독가능한 저장 매체.
  17. 제15항에 있어서,
    상기 경로에 대한 컬러에서의 변화와 연관된 비용은 상기 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경의 합산을 최소화하는 픽셀들의 경로로서 정의되는, 컴퓨터-판독가능한 저장 매체.
  18. 제15항에 있어서,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하는 단계는:
    상기 제1 대역을 통해 진행하는 적어도 제1 경로 및 상기 제2 대역을 통해 진행하는 적어도 제2 경로를 선택하는 단계;
    각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 상기 적어도 제1 경로 및 상기 적어도 제2 경로에 대한 비용을 유도하는 단계; 및
    상기 제1 경계로서 상기 제1 대역으로부터 최저의 비용을 가지는 경로를 선택하고, 상기 제2 경계로서 상기 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하는 단계를 더 포함하는, 컴퓨터-판독가능한 저장 매체.
  19. 제15항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 선형 보간을 이용하는, 컴퓨터-판독가능한 저장 매체.
  20. 제15항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 비선형 보간을 이용하는, 컴퓨터-판독가능한 저장 매체.
  21. 제15항에 있어서,
    상기 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 상기 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하는, 컴퓨터-판독가능한 저장 매체.
  22. 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치로서,
    상기 적어도 하나의 심볼을 나타내는 복수의 픽셀들 및 배경 영역을 나타내는 복수의 픽셀들을 포함하는 상기 제1 이미지를 획득하기 위한 수단;
    상기 제1 이미지 내에 제1 경계 및 제2 경계를 정의하기 위한 수단 ― 상기 제1 경계 및 상기 제2 경계는 각각 경로에 대한 컬러에서의 변화와 연관된 비용을 최소화하는 복수의 픽셀들을 포함하는 경로이고, 그리고 상기 적어도 하나의 심볼은 상기 제1 경계와 상기 제2 경계 사이에 위치됨 ―;
    상기 적어도 하나의 심볼의 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들을 생성하기 위한 수단;
    상기 제1 경계 및 상기 제2 경계 사이의 복수의 배경 픽셀 값들을 보간함으로써, 상기 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 생성하기 위한 수단; 및
    상기 적어도 하나의 번역된 심볼을 나타내는 복수의 픽셀들 및 상기 배경 영역의 증강된 버전을 나타내는 복수의 픽셀들을 포함하는 제2 이미지를 구성하기 위한 수단을 포함하고,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하는 것은, 상기 적어도 하나의 심볼의 대부분을 갖는 영역을 마스킹하여 상기 마스킹된 영역이 제1 대역과 제2 대역 사이에 있도록 상기 제1 대역 및 상기 제2 대역을 정의하는 것을 포함하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치.
  23. 제22항에 있어서,
    상기 제1 경계 및 상기 제2 경계 각각은 상기 적어도 하나의 심볼의 한 측을 따라 픽셀들의 스트링으로서 정의되는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치.
  24. 제22항에 있어서,
    상기 경로에 대한 컬러에서의 변화와 연관된 비용은 상기 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경의 합산을 최소화하는 픽셀들의 경로로서 정의되는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치.
  25. 제22항에 있어서,
    상기 제1 이미지 내에 상기 제1 경계 및 상기 제2 경계를 정의하기 위한 수단은:
    상기 제1 대역을 통해 진행하는 적어도 제1 경로 및 상기 제2 대역을 통해 진행하는 적어도 제2 경로를 선택하기 위한 수단;
    각각의 경로를 따라 복수의 픽셀들의 픽셀 컬러에서의 계조 변경을 합산함으로써 상기 적어도 제1 경로 및 상기 적어도 제2 경로에 대한 비용을 유도하기 위한 수단; 및
    상기 제1 경계로서 상기 제1 대역으로부터 최저의 비용을 가지는 경로를 선택하고, 상기 제2 경계로서 상기 제2 대역으로부터 최저의 비용을 가지는 경로를 선택하기 위한 수단을 더 포함하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치.
  26. 제22항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 선형 보간을 이용하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치.
  27. 제22항에 있어서,
    상기 배경 픽셀 값들을 보간하는 것은 비선형 보간을 이용하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치.
  28. 제22항에 있어서,
    상기 적어도 하나의 심볼은 제1 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하고, 상기 적어도 하나의 번역된 심볼은 제2 휴먼 언어의 적어도 하나의 텍스트 문자를 포함하는, 제1 이미지 내의 적어도 하나의 심볼을 대체하기 위한 장치.
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
KR1020147002591A 2011-06-30 2012-06-22 Ar 애플리케이션들을 위한 효율적인 블렌딩 방법들 KR101544074B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161503421P 2011-06-30 2011-06-30
US61/503,421 2011-06-30
US13/283,462 2011-10-27
US13/283,462 US8842909B2 (en) 2011-06-30 2011-10-27 Efficient blending methods for AR applications
PCT/US2012/043876 WO2013003242A1 (en) 2011-06-30 2012-06-22 Efficient blending methods for ar applications

Publications (2)

Publication Number Publication Date
KR20140028139A KR20140028139A (ko) 2014-03-07
KR101544074B1 true KR101544074B1 (ko) 2015-08-12

Family

ID=47390758

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147002591A KR101544074B1 (ko) 2011-06-30 2012-06-22 Ar 애플리케이션들을 위한 효율적인 블렌딩 방법들

Country Status (6)

Country Link
US (1) US8842909B2 (ko)
EP (1) EP2727085B1 (ko)
JP (1) JP5823614B2 (ko)
KR (1) KR101544074B1 (ko)
CN (1) CN103650000B (ko)
WO (1) WO2013003242A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024043407A1 (ko) * 2022-08-22 2024-02-29 한국전자기술연구원 Ar 영상 수신 장치 및 방법

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5631362B2 (ja) * 2011-08-08 2014-11-26 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
KR101756842B1 (ko) * 2011-08-29 2017-07-12 삼성전자주식회사 영상 프레임의 보간 방법 및 장치
GB2526470B (en) 2011-11-02 2016-03-02 Johnson Matthey Plc Scanning method and apparatus
KR101193668B1 (ko) * 2011-12-06 2012-12-14 위준성 스마트 기기를 이용한 상황 인식 기반 외국어 습득 및 학습 서비스 제공 방법
US9292498B2 (en) * 2012-03-21 2016-03-22 Paypal, Inc. Device orientation based translation system
KR101899977B1 (ko) * 2012-07-10 2018-09-19 엘지전자 주식회사 이동 단말기 및 그것의 제어 방법
US9519641B2 (en) * 2012-09-18 2016-12-13 Abbyy Development Llc Photography recognition translation
EP2965291A4 (en) * 2013-03-06 2016-10-05 Intel Corp METHODS AND APPARATUS FOR UTILIZING OPTICAL RECOGNITION OF CHARACTERS TO PROVIDE INCREASED REALITY
CA2906399A1 (en) * 2013-03-15 2014-10-09 Translate Abroad, Inc. Systems and methods for displaying foreign character sets and their translations in real time on resource-constrained mobile devices
JP2015069234A (ja) * 2013-09-26 2015-04-13 シャープ株式会社 表示処理装置、並びにその制御方法および制御プログラム
CN103488630B (zh) * 2013-09-29 2016-06-08 小米科技有限责任公司 一种图像的处理方法、装置及终端
US9547644B2 (en) 2013-11-08 2017-01-17 Google Inc. Presenting translations of text depicted in images
US9239833B2 (en) 2013-11-08 2016-01-19 Google Inc. Presenting translations of text depicted in images
EP3144823A1 (en) * 2013-11-08 2017-03-22 Google, Inc. Presenting translations of text depicted in images
EP3132550B1 (en) * 2014-04-17 2022-06-08 CommScope Technologies LLC Detecting traffic load for a telecommunications system using narrowband signal monitoring
JP6451173B2 (ja) * 2014-09-22 2019-01-16 カシオ計算機株式会社 情報処理装置、情報処理方法及びプログラム
US10775878B2 (en) * 2015-04-10 2020-09-15 Sony Interactive Entertainment Inc. Control of personal space content presented via head mounted display
US9652896B1 (en) 2015-10-30 2017-05-16 Snap Inc. Image based tracking in augmented reality systems
KR102257181B1 (ko) * 2016-09-13 2021-05-27 매직 립, 인코포레이티드 감각 안경류
CN108062301B (zh) * 2016-11-08 2021-11-05 希思特兰国际 文字翻译方法及其装置
CN106780663B (zh) * 2016-11-22 2020-02-21 维沃移动通信有限公司 一种模板边框文字的处理方法及装置
US10387730B1 (en) * 2017-04-20 2019-08-20 Snap Inc. Augmented reality typography personalization system
CN107609553A (zh) * 2017-09-12 2018-01-19 网易有道信息技术(北京)有限公司 图像处理方法、介质、装置和计算设备
CN109215416A (zh) * 2018-10-24 2019-01-15 天津工业大学 一种基于增强现实技术的汉字辅助学习系统及方法
US11972529B2 (en) 2019-02-01 2024-04-30 Snap Inc. Augmented reality system
US11347381B2 (en) * 2019-06-13 2022-05-31 International Business Machines Corporation Dynamic synchronized image text localization

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146454A (ja) 2004-11-18 2006-06-08 Sony Corp 情報変換装置および情報変換方法
JP2006251902A (ja) 2005-03-08 2006-09-21 Fuji Xerox Co Ltd 翻訳文書画像生成装置、翻訳文書画像生成プログラム及び翻訳文書画像生成方法
JP2008054236A (ja) 2006-08-28 2008-03-06 Nikon Corp 撮像装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325446A (en) * 1989-05-19 1994-06-28 Sony Corporation Apparatus for image transformation
TW347503B (en) * 1995-11-15 1998-12-11 Hitachi Ltd Character recognition translation system and voice recognition translation system
GB9807097D0 (en) * 1998-04-02 1998-06-03 Discreet Logic Inc Processing image data
DE69937476T2 (de) * 1998-07-31 2008-08-28 Canon K.K. Bildverarbeitungsvorrichtung und -Verfahren und Speichermedium
JP2000331156A (ja) * 1999-05-17 2000-11-30 Internatl Business Mach Corp <Ibm> 輪郭に沿うトラッカを自動的に決定するための方法、及び該方法を実施するプログラムを記憶した記憶媒体
US6577762B1 (en) 1999-10-26 2003-06-10 Xerox Corporation Background surface thresholding
US6473522B1 (en) 2000-03-14 2002-10-29 Intel Corporation Estimating text color and segmentation of images
US6771835B2 (en) * 2000-06-12 2004-08-03 Samsung Electronics Co., Ltd. Two-dimensional non-linear interpolation system based on edge information and two-dimensional mixing interpolation system using the same
JP4391704B2 (ja) * 2001-01-11 2009-12-24 富士通株式会社 多値画像から二値画像を生成する画像処理装置および方法
JP4617825B2 (ja) * 2003-10-22 2011-01-26 ソニー株式会社 データ処理装置およびデータ処理方法、プログラム、並びに記録媒体
WO2006054200A1 (en) * 2004-11-16 2006-05-26 Koninklijke Philips Electronics N.V. Rendering images based on image segmentation
JP2008158859A (ja) * 2006-12-25 2008-07-10 Denso Corp 表示装置
US8144990B2 (en) * 2007-03-22 2012-03-27 Sony Ericsson Mobile Communications Ab Translation and display of text in picture
DE102007028895B4 (de) * 2007-06-22 2010-07-15 Siemens Ag Verfahren zur Segmentierung von Strukturen in 3D-Bilddatensätzen
JP4483909B2 (ja) 2007-08-24 2010-06-16 富士ゼロックス株式会社 翻訳装置及びプログラム
US8249345B2 (en) * 2008-06-27 2012-08-21 Mako Surgical Corp. Automatic image segmentation using contour propagation
US8780131B2 (en) 2008-12-19 2014-07-15 Xerox Corporation Systems and methods for text-based personalization of images
JP5768719B2 (ja) * 2010-01-06 2015-08-26 日本電気株式会社 学習装置、識別装置、学習識別システム及び学習識別装置
US8447105B2 (en) * 2010-06-07 2013-05-21 Microsoft Corporation Data driven interpolation using geodesic affinity

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146454A (ja) 2004-11-18 2006-06-08 Sony Corp 情報変換装置および情報変換方法
JP2006251902A (ja) 2005-03-08 2006-09-21 Fuji Xerox Co Ltd 翻訳文書画像生成装置、翻訳文書画像生成プログラム及び翻訳文書画像生成方法
JP2008054236A (ja) 2006-08-28 2008-03-06 Nikon Corp 撮像装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024043407A1 (ko) * 2022-08-22 2024-02-29 한국전자기술연구원 Ar 영상 수신 장치 및 방법

Also Published As

Publication number Publication date
CN103650000A (zh) 2014-03-19
KR20140028139A (ko) 2014-03-07
EP2727085B1 (en) 2017-07-19
US8842909B2 (en) 2014-09-23
US20130004068A1 (en) 2013-01-03
JP2014521247A (ja) 2014-08-25
CN103650000B (zh) 2016-11-02
WO2013003242A1 (en) 2013-01-03
JP5823614B2 (ja) 2015-11-25
EP2727085A1 (en) 2014-05-07

Similar Documents

Publication Publication Date Title
KR101544074B1 (ko) Ar 애플리케이션들을 위한 효율적인 블렌딩 방법들
US11816445B2 (en) Translating language characters in media content
CN108921225B (zh) 一种图像处理方法及装置、计算机设备和存储介质
EP2386941B1 (en) Information processing apparatus and method, and program
KR20200079697A (ko) 영상 처리 장치 및 그 영상 처리 방법
JP2007115193A (ja) 電子文書比較プログラム、電子文書比較装置および電子文書比較方法
JP6105627B2 (ja) Ocrキャッシュ更新
US9824421B2 (en) Content-aware image resizing using superpixels
JP6671673B1 (ja) レイアウト解析方法、読書補助装置、回路及び媒体
JP6902811B2 (ja) 視差推定システムと方法、電子機器及びコンピュータ可読記憶媒体
WO2016160154A1 (en) New edge sensing measure for raw image processing
US8948502B2 (en) Image processing method, and image processor
WO2013179560A1 (ja) 画像処理装置および画像処理方法
KR20180067909A (ko) 영상 분할 장치 및 방법
US9495757B2 (en) Image processing apparatus and image processing method
JP5654851B2 (ja) 文書画像表示装置ならびにその動作制御方法およびその制御プログラム
CN113132800B (zh) 视频处理方法、装置、视频播放器、电子设备及可读介质
KR102400316B1 (ko) 컨텍스트 정보 추출 방법 및 장치
CN113192060B (zh) 一种图像分割的方法、装置、电子设备及存储介质
JP6155349B2 (ja) デコンボリューション画像において色収差を減じる方法、装置及びコンピュータプログラム製品
KR101651842B1 (ko) 전자문서 레이아웃 생성 방법 및 장치
JP6060772B2 (ja) 処理プログラム、処理装置、及び処理方法
US8831348B2 (en) Retrograde curve filtering for variable offset curves
CN103870271A (zh) 信息处理方法及电子设备
KR20230165075A (ko) 등지방 두께 측정 방법 및 장치

Legal Events

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

Payment date: 20180628

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 5