KR20190104260A - 형태 검출 - Google Patents

형태 검출 Download PDF

Info

Publication number
KR20190104260A
KR20190104260A KR1020187036828A KR20187036828A KR20190104260A KR 20190104260 A KR20190104260 A KR 20190104260A KR 1020187036828 A KR1020187036828 A KR 1020187036828A KR 20187036828 A KR20187036828 A KR 20187036828A KR 20190104260 A KR20190104260 A KR 20190104260A
Authority
KR
South Korea
Prior art keywords
edge
shape
shape model
edges
image
Prior art date
Application number
KR1020187036828A
Other languages
English (en)
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 KR20190104260A publication Critical patent/KR20190104260A/ko

Links

Images

Classifications

    • G06K9/00463
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/414Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06K9/4604
    • G06K9/6267
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • 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/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • G06K2009/363
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/247Aligning, centring, orientation detection or correction of the image by affine transforms, e.g. correction due to perspective effects; Quadrilaterals, e.g. trapezoids

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Data Mining & Analysis (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Image Analysis (AREA)

Abstract

형태 검출을 위한, 컴퓨터 저장 매체 상에 인코딩되는 컴퓨터 프로그램을 포함하는 방법, 시스템 및 장치가 개시된다. 하나의 양태에서, 방법은 지정 비율 및 지정 배향을 갖는 지정 형태를 포함하는 형태 모델을 생성하는 단계를 포함한다. 상기 방법은 이미지를 수신하는 단계를 더 포함한다. 상기 방법은 형태 모델의 가장자리에 평행이며 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 동작을 더 포함한다. 상기 방법은 형태 모델과 유사한 형태의 에지에 대응할 가능성이 높은 복수의 에지를 선택하는 단계를 더 포함한다. 상기 방법은 복수의 에지와 형태 모델에 유사한 복수의 형태의 각각의 형태 간 핏 점수를 결정하는 단계를 더 포함한다. 상기 방법은 이미지에서 형태 모델과 가장 가깝게 핏하는 특정 형태를 더 포함한다.

Description

형태 검출
관련 출원과의 상호 참조
본 출원은 본원에 참조로서 포함되는 2016년 05월 24일에 출원된 미국 출원 번호 62/340,915로부터 우선권을 주장한다.
기술분야
본 명세서는 이미지에서 형태를 검출하는 것과 관련된다.
물체의 형태를 인식하는 것이 이미지 또는 비디오 시퀀스에서 물체를 찾고 식별하기 위한 컴퓨터 비전 기법이다. 물체의 이미지가 상이한 시점, 많은 상이한 크기 및 비율로 또는 다소 변할 수 있다는 사실에도 불구하고, 심지어 직선이동 또는 회전될 때에도 인간은 이미지에서 복수의 물체를 거의 힘들이지 않고 인식한다. 인간은 시야에서 부분적으로 가려진 물체도 인식할 수 있다. 이러한 작업이 컴퓨터 비전 시스템에게 여전히 과제이다.
본 명세서에 기재된 본 발명은 디지털 이미지에서 기하학적 예상 형태를 검출하고 등록하는 것과 관련된다. 일부 구현예에서, 기하학적 예상 형태를 검출하고 등록하는 것은 일반 허프 변환(generalized Hough transformation)을 포함할 수 있다. 이 구현예는 형태를 기술하는 파라미터의 포퓰레이팅 히스토그램을 기초로 한다. 각각의 가능한 파라미터가 빈(bin)을 가지며 이미지 내 각각의 픽셀이 각각의 빈에 기여하는지 여부를 알아보도록 검사된다. 이는 형태를 정의하기 위해 많은 픽셀 또는 많은 파라미터가 있을 때 느린 성능을 단점으로 가진다. 이는 또한 해결책을 놓칠 수 있는 빈을 이용하는 이산 속성을 단점으로 가진다.
덧붙여, 상기 방식은 형태의 왜곡에 취약할 수 있다. 특히, 시스템은 3차원 공간에서 캡처된 2D 형태의 투영을 검출해야 한다. 포즈 및 원근감 변화의 도입이 허프 방식의 성능을 감소시킨다. 일부 구현예에서, 상기 방식은 형태 검출을 유도하기 위한 '힌트' 또는 예상 해결책을 취하지 않는다.
이하에서 기재된 형태 검출 시스템은 이미지 내에 노이즈가 존재할 때에도 형태를 빠르게 식별한다. 시스템은 형태의 원근감 왜곡에 강하고 형태 위치에서의 초기 추측으로 시작함으로써 고속 처리를 보조할 수 있다.
형태 검출 시스템은 카메라(가령, 모바일 폰)로부터 운전 면허증의 이미지를 캡처하고, 카드의 경계를 검출하며, 카드의 윤곽을 등록하기 위한 특징을 포함한다. 다음 동작은 문서를 인증 및/또는 카드 상에서 광학 문자 인식(optical character recognition)을 실행하기 위해, 원근감 및 카메라 왜곡을 제거하여 이미지를 정규화하기 위한 이미지 와핑이다.
이미지로부터 2차원 기하학적 형태를 검출하기 위한 방법은 다음의 동작을 포함한다. 제1 동작에서, 지정 형태가 검출할 희망 형태의 예상 평균 비율 및 배향으로 구성된다. 이는 형태 모델이다. 제2 동작에서, 디지털 이미지가 획득된다. 제3 동작에서, 형태 모델에 평행인 에지가 형태 경계를 따르는 간격으로 형태에 수직인 지정 거리 내에서 계산된다. 제4 동작에서, 각각의 간격에서 가장 강한 에지가 검사를 위해 저장된다. 제5 동작에서, 형태 후보 및 모든 예상 형태 변동이 저장된 에지 포인트에 핏되며, 가장 가능성 높은 핏이 결정되고 형태 후보로서 반환된다. 일부 구현예에서, 직선 에지를 갖는 형태(가령, 장방형)에서, 처음 4개의 동작을 이용해 각각의 라인 세그먼트가 독립적으로 핏될 수 있으며, 그 후 제5 동작 및 핏 단계 A-D를 이용해 라인을 핏하며, 그 후 RANSAC(random sample consensus)을 이용해 E에서 라인을 핏할 수 있다. 최종 형태가 모든 라인 세그먼트의 조합으로부터 구성될 수 있다.
본 명세서에 기재된 발명의 양태에 따르면, 형태 인식을 위한 방법은 지정 비율 및 지정 배향을 갖는 지정 형태를 포함하는 형태 모델을 생성하는 단계, 이미지를 수신하는 단계, 이미지에서 형태 모델의 각각의 가장자리에 대해 형태 모델의 가장자리에 평행하고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 단계, 식별된 에지 중에서 형태 모델에 유사한 형태의 에지에 대응할 가능성이 높은 복수의 에지를 선택하는 단계, 복수의 에지와 형태 모델에 유사한 복수의 형태의 각각의 형태 간 핏 점수를 결정하는 단계, 및 복수의 형태 중에서 형태 모델에 가장 가깝게 핏되는 이미지 내 특정 형태를 식별하는 단계를 포함한다.
선택사항으로서 이들 및 그 밖의 다른 구현예가 각각 다음의 특징 중 하나 이상을 포함할 수 있다. 형태 모델과 특정 형태가 동일한 개수의 에지를 가진다. 형태 모델의 가장자리로부터의 지정 거리는 지정 픽셀 수이다. 이미지에서 형태 모델에 가장 가깝게 핏되는 특정 형태를 식별하는 단계는 최고 핏 점수를 갖는 특정 형태를 식별하는 단계를 포함한다. 이미지에서 형태 모델의 각각의 가장자리에 대해 형태 모델의 가장자리에 평행하고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 단계는 지정 픽셀 간격에서 에지를 식별하는 단계를 포함한다. 형태 모델은 직선 에지를 가진다. 식별된 에지들 중에서, 형태 모델에 유사하는 형태의 에지에 대응할 가능성이 높은 복수의 에지를 선택하는 단계는 식별된 에지들 중에서 최대 구배를 갖는 복수의 에지를 선택하는 단계를 포함한다.
이 양태의 또 다른 구현예에서, 방법의 동작을 수행하도록 각각 구성된 대응하는 시스템, 장치, 및 컴퓨터 저장 장치 상에 기록되는 컴퓨터 프로그램을 포함한다.
본 명세서에 기재된 본 발명은 하나 이상의 다음의 이점을 가질 수 있다. 시스템은 이전 방법보다 더 빠른 형태 인식을 수행할 수 있다. 시스템이 전체 이미지 상에서 에지 검출을 수행하지 않기 때문에 시스템은 형태 인식을 수행할 때 더 적은 컴퓨팅 파워를 이용하고 배터리 파워를 절약할 수 있다.
본 명세서에 기재된 주제 사항의 하나 이상의 구현예의 상세사항이 첨부된 도면 및 이하의 기재에서 제공된다. 본 발명의 그 밖의 다른 특징, 양태, 및 이점이 다음의 기재, 도면, 및 청구항으로부터 자명할 것이다.
도 1은 이미지 내 형태를 검출하기 위한 예시적 시스템을 도시한다.
도 2는 이미지 내 형태를 검출하는 예시적 프로세스를 도시한다.
도 3는 명함의 랩톱 컴퓨터로부터의 예시적 비디오 캡처를 도시하며, 이때 얇은 선이 권장되는 캡처 영역을 도시하고 굵은 선이 검출된 명함을 강조한다.
도 4는 명함의 예시적 비디오 캡처를 도시하며, 이때, 상부 이미지에서, 얇은 선인 예시적 선 후보자가, 하부 이미지에서 명함의 위치를 찾기 위해 검출 및 사용되는 가장자리의 예시적 진단 출력이 도시된다.
도 5은 표준 형태 명함(또는 운전 면허증)을 만들도록 적용되는 선형 비틀림 교정을 갖는 예시적 출력 장방형을 도시한다.
도 6은 컴퓨팅 디바이스 및 모바일 컴퓨팅 디바이스의 예시를 도시한다.
도 1은 이미지에서 형태를 검출하기 위한 예시적 시스템(100)을 도시한다. 간략히, 이하에서 더 상세히 기재된 바와 같이, 시스템(100)은 이미지를 처리하고 이미지에 포함된 형태를 식별한다. 시스템(100)은 이미지에 대한 추측을 생성한다. 시스템(100)은 이미지에 대한 추측의 가장자리(side) 근처의 에지(edge)를 식별한다.
더 상세히 도 1의 예시에서 도시된 바와 같이, 시스템은 이미지 캡처부(110)를 이용해 문서(105)의 이미지를 캡처한다. 문서(105)는 임의의 유형의 문서, 가령, 운전 면허증, 여권, 계약서, 사진, 또는 이들과 유사한 그 밖의 다른 임의의 문서일 수 있다. 문서(105)는 문서가 아닐 수도 있다. 예를 들어, 문서(105)는 벽돌 또는 직선 가장자리을 갖는 임의의 물체로 대체될 수 있다.
이미지 캡처부(110)는 이미지를 캡처할 수 있는 임의의 유형의 디바이스일 수 있다. 예를 들어, 이미지 캡처부(110)는 카메라, 카메라를 갖는 모바일 전화기, 웹캠, 스캐너, 또는 그 밖의 다른 임의의 유사한 유형의 이미지 캡처 디바이스일 수 있다. 예를 들어, 사용자는 모바일 전화기의 카메라로 운전 면허증의 사진을 찍도록 시도할 수 있다.
이미지 캡처부(110)는 캡처된 이미지를 형태 모델 생성기(115)로 제공한다. 형태 모델 생성기(115)는 시스템(100)이 식별하여 시도 중인 물체의 형태에 대한 추측을 생성한다. 일부 구현예에서, 시스템(100)이 문서(105)의 형태를 식별하기 위해, 시스템(100)은 시스템이 식별하려 시도 중인 물체의 것과 동일한 개수의 가장자리을 갖는 형태의 추측을 생성해야 한다. 예를 들어, 시스템(100)은 4개의 가장자리을 갖는 운전 면허증을 식별하려 시도 중이다. 형태 모델 생성기(115)는 4개의 가장자리을 갖는 운전 면허증의 형태의 추측을 생성해야 한다.
형태 모델 생성기(115)는 형태의 추측을 에지 검출부(120)로 제공한다. 일부 구현예에서, 이미지 캡처부(110)는 에지 검출부(120)로 이미지를 직접 제공한다. 이 경우, 형태 모델 생성기(115)는 에지 검출부(120)로 이미지를 제공하지 않는다.
에지 검출부(120)는 형태의 추측의 가장자리에 평행이며 추측의 가장자리의 특정 거리 내의 에지를 검출하도록 구성된다. 예를 들어, 에지 검출부는 이미지의 가장자리에 평행이고 형태의 추측의 가장자리의 50 픽셀 내에 있는 에지만 식별할 수 있다.
에지 검출부(120)는 픽셀들 간 구배를 계산함으로써 식별한다. 에지 검출부(120)는 서로 왼쪽과 오른쪽 상에 있는 픽셀들 간 차이를 계산함으로써 수직 구배를 계산할 수 있다. 에지 검출부(120)는 위쪽과 아래쪽 상에 있는 픽셀들 간 차이를 계산함으로써 수평 구배를 계산할 수 있다. 에지 검출부(120)는 서로 대각선인 픽셀들을 포함하는 구배를 계산함으로써 픽셀 그룹 내에서 에지를 식별할 수 있다.
일부 구현예에서, 에지 검출부는 이미지를 처리하여 전체 이미지를 처리함으로써 에지를 식별할 수 있다. 대신, 에지 검출부(120)는 형태의 추측의 가장자리의 특정 픽셀 폭 내 이미지를 평가한다. 일부 구현예에서, 에지 검출부(120)는 형태의 추측의 가장자리 주변의 특정 픽셀 간격에서만 에지를 식별한다. 예를 들어, 에지 검출부(120)는 형태의 추측의 가장자리 주위의 매 10번째 픽셀에서만 에지를 식별하려 시도할 수 있다. 특정 간격에서만 에지를 검출함으로써, 에지 검출부(120)가 다른 에지 검출부보다 더 빠르게 동작하고 프로세싱 파워를 덜 사용할 수 있다.
에지 검출부(120)에 의해 검출되지 않는 이미지 내 에지가 존재할 수 있다. 예를 들어, 도 4의 이미지는 검지(index finger)에 대한 에지를 포함한다. 검지는 손가락의 가장자리와 벽의 배경 간 에지를 형성한다. 그러나 에지 검출부(120)는 형태의 추측의 상부에 수직인 검지의 가장자리 상에서 에지를 식별하지 않는다. 에지 검출부(120)는 중지와 약지 사이에 형성된 에지를 식별하는데, 이는 중지와 약지가 형태의 추측의 좌측 가장자리의 임계 거리(가령, 50 픽셀) 내에 있을 가능성이 높기 때문이다.
에지 검출부(120)는 에지 저장부(126)에 에지를 저장한다. 에지 저장부(125)는 각각의 에지의 위치, 에지의 구배, 각각의 에지의 방향, 및 그 밖의 다른 임의의 관련 정보의 위치에 대한 저장소를 포함할 수 있다.
에지 선택부(130)가 에지 저장부로부터 가장 강한 에지를 선택한다. 일부 구현예에서, 에지 검출부(120)는 에지 선택부(130)로 에지 정보를 직접 제공하지 않는다. 대신, 에지 검출부(120)는 에지 저장부(125)에 에지를 저장하고 에지 선택부(130)는 에지 저장부(125)에 저장된 에지를 분석한다. 가장 강한 에지가 최대 구배를 갖는 에지일 수 있다.
일부 구현예에서, 에지 선택부(130)는 에지 저장부(125) 내 에지의 가장 강한 4분의 1을 선택한다. 일부 구현예에서, 에지 선택부가 200개의 가장 강한 에지를 선택한다. 일부 구현예에서, 에지 검출부(120)는 형태의 추측의 가장자리 근방의 특정 간격에서 에지를 검출하지 않을 수 있다. 일부 경우, 에지 검출부(120)가 형태의 추측의 가장자리의 임계 거리 내에 있고 형태의 추측의 가장자리에 평행인 모든 에지를 검출할 수 있다. 에지 선택부(130)는 특정 간격을 두고 가장 강한 에지를 선택할 수 있다. 예를 들어, 에지 선택부(130)는 매 10번째 픽셀마다 가장 강한 에지를 선택할 수 있다.
형태 핏 점수부(135)는 에지 선택부(130)에 의해 선택된 에지에 가장 잘 들어 맞는(베스트 핏) 형태인 형태를 식별한다. 형태 핏 점수부(135)가 베스트 핏의 형태가 에지 선택부(130)에 의해 선택된 에지와 얼마나 잘 매칭되는지를 가리키는 점수를 계산할 수 있다.
에지 선택부(130)는 상이한 간격으로 또는 상이한 오프셋을 둔 동일한 간격으로 추가 에지를 식별할 수 있다. 예를 들어, 에지 선택부(130)는 매 8개의 픽셀마다 가장 강한 에지를 식별할 수 있다. 에지 선택부(130)는 매 10번째 픽셀마다 추가 에지를 선택할 수 있지만, 픽셀 간격은 매 10번째 픽셀마다 이전 에지의 중앙에 있을 수 있다. 즉, 에지 선택부(130)는 매 10번째 픽셀마다 추가 에지를 선택하고 그 후 5개 픽셀만큼 오프셋된 매 10번째 픽셀마다 선택할 수 있다.
일부 구현예에서, 형태 핏 점수부(135)는 형태 모델 생성기(115)에 의해 생성되는 형태의 추측을 선택된 에지로 피팅(fit)하려 시도한다. 형태 핏 점수부(135)는 형태의 추측의 임의의 예상 변동에 대해 핏 점수를 계산할 수 있다.
형태 핏 점수부(135)는 에지 선택부(130)에 의해 선택된 에지의 추가 그룹에 대해 베스트 핏의 추가 형태에 대한 점수를 계산할 수 있다. 형태 핏 점수부(135)는 선택된 에지의 그룹 각각에 대해 베스트 핏의 형태를 형태 식별부(140)로 제공할 수 있다. 일부 구현예에서, 형태 핏 점수부(135)는 선택된 에지의 각각의 그룹에 대해 베스트 핏의 형태와 추가 탑 랭크 형태(가령, 두 번째 베스트 핏의 형태)를 형태 식별부(140)로 제공할 수 있다. 앞서 언급된 바와 같이, 형태 핏 점수부(135)는 각각의 라인 세그먼트를 독립적으로 피팅할 수 있다.
형태 핏 점수부(135)는 후보 형태를 제공하고 형태 핏 점수를 형태 식별부(140)로 대응시킬 수 있다. 형태 식별부(140)는 최고 핏 점수를 갖는 형태를 선택하고 상기 형태를 문서(105)에 대한 형태로서 반환할 수 있다. 일부 구현예에서, 형태 핏 점수부(135)는 형태 핏 점수부(135)로부터 라인 세그먼트를 수신할 수 있다. 형태 식별부(140)는 형태 핏 점수부(135)로부터 수신된 라인 세그먼트를 이용해 문서(105)에 대한 형태를 구성할 수 있다.
도 2는 이미지에서 형태를 검출하기 위한 예시적 프로세스(200)를 도시한다. 일반적으로, 프로세스(200)는 형태의 초기 추측으로부터 지정 거리 내에 있는 이미지 내 에지를 식별한다. 프로세스(200)는 에지에 대한 베스트 핏 형태를 식별한다. 프로세스(200)는 베스트 핏 형태를 이미지 내 주 형태에 대응할 가능성이 높은 것으로 지정한다. 프로세스(200)는 하나 이상의 컴퓨터를 포함하는 컴퓨터 시스템, 가령, 도 1에 도시된 시스템(100)에 의해 수행되는 것으로 기재될 것이다.
시스템은 지정 비율 및 지정 배향(210)을 갖는 지정 형태를 포함하는 형태 모델을 생성한다. 일부 구현예에서, 형태 모델은 직선 에지를 가진다. 일부 구현예에서, 형태 모델과 시스템이 식별하려 시도 중인 물체가 동일한 개수의 에지를 가진다. 예를 들어, 시스템이 운전 면허증의 형태를 식별하려 시도 중인 경우, 시스템은 4개의 에지를 갖는 형태 모델로 시작할 것이다.
시스템은 이미지를 수신한다(220). 시스템은 카메라로 이미지를 캡처함으로써 이미지를 수신하거나 상이한 컴퓨팅 디바이스로부터 이미지를 수신할 수 있다.
시스템은, 이미지에서 형태 모델의 각각의 가장자리에 대해, 형태 모델의 가장자리에 평행이고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별한다(230). 일부 구현예에서, 형태 모델의 가장자리로부터 지정 거리는 지정 개수의 픽셀이다. 예를 들어, 지정 거리는 50 픽셀일 수 있다. 일부 구현예에서, 시스템은 지정 간격에서 에지를 식별한다. 예를 들어, 시스템은 매 12 픽셀마다 에지를 식별할 수 있다.
시스템은, 식별된 에지 중에서, 형태 모델에 유사한 형태의 에지에 대응할 가능성이 높은 복수의 에지를 선택한다(240). 일부 구현예에서, 시스템은 식별된 에지 중에서 최대 구배를 갖는 에지를 선택한다. 예를 들어, 시스템은 최고 구배를 갖는 상위 20퍼센트의 에지를 선택할 수 있다. 일부 구현예에서, 시스템은 선택된 간격에서 최고 구배를 갖는 에지를 선택할 수 있다. 예를 들어, 시스템은 매 5 픽셀마다 최고 구배를 갖는 엔지를 선택할 수 있다.
시스템은 복수의 에지와 형태 모델과 유사한 복수의 형태의 각각의 형태 간 핏 점수를 결정한다(250). 핏 점수는 시스템에 의해 선택된 복수의 에지와 형태 모델과 유사한 형태 간 핏의 품질을 반영할 수 있다. 시스템은 형태 모델과 유사한 복수의 형태에 대한 핏 점수를 결정할 수 있다.
시스템은, 복수의 형태 중에서, 형태 모델에 가장 가까이 피팅하는 이미지 내 특정 형태를 식별한다(260). 일부 구현예에서, 시스템은 이미지 내 상기 형태를 최고 핏 점수를 갖는 형태를 선택함으로써 형태 모델에 가장 가까이 핏하는 형태로서 식별한다.
더 상세히는, 방법이 실시간 비디오 입력을 취하고 시야에서 운전 면허증 카드를 검출하도록 설계된다. 검출된 라이센스가 이미지로부터 분할되고 품질 메트릭과 함께 요청된 해상도로 표준 장방형 포맷으로 반환되어 추가 처리를 위한 적합성을 결정할 수 있다.
상기 방법은 3백 픽셀의 높이를 갖는 그레이스케일 가로방향 프레임(landscape frame) 버퍼에 맞춤 구성될 수 있다. 그 밖의 다른 임의의 포맷 이미지가 그레이스케일로 변환되고 3백 픽셀의 최소 이미지 치수로 재샘플링될 것이다. 임의의 크기 입력 비디오 프레임이 사용될 수 있지만, 출력의 희망 해상도를 지원할 수 있어야 한다. 원하는 출력 해상도를 충족할 수 없는 경우, 출력은 상향-샘플링(up-sample)될 것이고 해상도 품질 메트릭은 낮은 점수를 보일 것이다.
상기 방법은 배경 경계인 영역의 대략 6등분을 이용해 카드가 비디오 이미지의 중간에 표시될 것을 기대할 수 있다. 이는 (가령, 랩톱 컴퓨터 및 명함의) 샘플 비디오 캡처를 도시하는 도 3에서 볼 수 있다. 그림의 가장자리에 수직인 선이 검출된 카드의 6등분 경계 및 굵은 경계(가령, 주변 품질) 하이라이트를 이용하는 권장되는 캡처 영역을 보여준다.
캡처되는 각각의 비디오 프레임이 하향 샘플링되고, 그레이스케일로 변환되며, 6등분 경계의 근방에서의 가장자리가 검출되어 선 후보자를 찾을 수 있다. 4개의 경계 각각에 대해 가장 정확한 가장자리에 대응할 가능성이 있는 2개의 가장자리 후보가 사용되어 장방형 후보자를 구성할 수 있다. 가장 가능성 있는 카드 후보자(가령, 종횡비 3.370 내지 2.125를 갖는 큰 카드)를 뽑기 위해, 이들 장방형 후보자는 그들의 형태를 기초로 점수를 번다.
일부 구현예에서, 방법은 가장자리(에지)를 기반으로 하기 때문에, 카드가 인쇄된 그 밖의 다른 높은 콘트라스트 가장자리를 가질 때 또는 카드가 유사한 컬러의 배경에 대비될 때, 상기 방법은 장방형을 구성하기 위한 올바른 선 후보자를 찾기 위해 추가 처리를 수행할 수 있다. 정확한 선 세트 또는 정확한 장방형이 검출될 수 없는 경우, 캡처 프로세스가 다음 비디오 프레임으로 계속될 것이다.
가장 가능성 높은 장방형 후보(가령, 이 시점에서 볼록 사변형)이 선택되고 그 후 장방형(가령, 3.370 × 2.125)에 매핑되며 요청된 해상도에서 상기 형태로 재-렌더링된다. 장방형 핏이 도 5에 도시된 바와 같이 카드에 대략적으로만 정렬될 수 있다. 일부 구현예에서, 동작은 더 높은 해상도에서 장방형의 정렬을 미세 튜닝하는 것을 포함한다.
동작은 장방형 샘플을 품질 분석하는 것을 포함한다. 계산된 메트릭은 다음과 같다: 포커스, 노출, 색포화도 및 해상도. 일부 구현예에서, 이들은 0-100 스케일(가령, 100은 최고 점수를 가리킴)로 반환된다. 이들 품질 점수는 장방형 신뢰도 점수와 함께 전체 캡처 점수로서 사용된다.
하나의 캡처가 완료된 후, 소프트웨어는 비디오 피드 상에 검출된 장방형을 디스플레이하고 장방형을 컬러 코딩하여 캡처 점수를 반영할 수 있다(가령, 적색=나쁨, 황색=중간, 녹색=좋음).
캡처 방법은 계속해서 또 다른 프레임을 캡처하고, 장방형을 검출하며 결과에 점수를 매긴다. 새 캡처가 기존 캡처보다 더 우수할 가능성이 높은 경우, 새 결과가 유지된다. 더 나쁠 가능성이 높은 경우, 방법이 계속 캡처한다. 특정 시간(가령, 3초) 후에 우수할 가능성이 높은 캡처가 검출되는 경우, 캡처가 완료된다. 특정 시간(가령, 3초) 후에 우수할 가능성이 높은 캡처가 검출되지 않는 경우, 이전의 최상일 가능성이 높은 결과가 삭제되고 또 다른 캡처 시도가 시작된다. 특정 횟수의 캡처 시도 후(가령, 9초에 상당), 방법은 캡처가 성공적으로 완료됐다고 결정한다.
일부 구현예에서, 제1 특정 시간(가령, 3초) 내에 우수할 가능성이 높은 캡처가 검출되는 경우, 결과를 저장하지만 결과가 더 나아질지 여부를 결정하기 위한 또 다른 시도를 취하는 것이 바람직할 수 있다. 우수할 가능성이 높은 품질의 이미지를 획득한 후, 추가 처리, 가령, 미세 튜닝 정렬, 광학 캐릭터 인식(optical character recognition), 운전 면허증 상태 검출, 컬러(화이트 밸런스) 교정, 조명 교정 등을 위해 장방형 출력이 사용될 수 있다. 일부 구현예에서, 디바이스, 가령, 랩톱 컴퓨터가 프레임당 10밀리초의 속도로 방법을 실행하고 모바일 디바이스 상에서 거의 실시간으로 실행될 수 있다.
도 6은 본 명세서에 기재된 기법을 구현하는 데 사용될 수 있는 컴퓨팅 디바이스(600) 및 모바일 컴퓨팅 디바이스(650)의 예시를 도시한다. 컴퓨팅 디바이스(600)는 디지털 컴퓨터의 다양한 형태, 가령, 랩톱, 데스크톱, 워크스테이션, 개인 디지털 어시스턴트, 서버, 블레이드 서버, 메인프레임, 및 그 밖의 다른 적절한 컴퓨터를 대표하도록 의도된다. 모바일 컴퓨팅 디바이스(650)가 모바일 디바이스의 다양한 형태, 가령, 개인 디지털 어시스턴트, 셀방식 전화기, 스마트-폰, 및 그 밖의 다른 유사한 컴퓨팅 디바이스를 대표하도록 의도된다. 여기서 나타난 구성요소, 이들의 연결 및 관계, 및 이들의 기능은 예시에 불과하며, 한정을 의미하지 않는다.
컴퓨팅 디바이스(600)는 프로세서(602), 메모리(604), 저장 디바이스(606), 메모리(604) 및 복수의 고속 확장 포트(610)에 연결된 고속 인터페이스(608) 및 저속 확장 포트(614) 및 저장 디바이스(606)로 연결되는 저속 인터페이스(612)를 포함할 수 있다. 프로세서(602), 메모리(604), 저장 디바이스(606), 고속 인터페이스(608), 고속 확장 포트(610), 및 저속 인터페이스(612) 각각이 다양한 버스를 이용해 상호 연결되며, 공통 마더보드 상에 또는 적절하게 그 밖의 다른 방식으로 장착될 수 있다. 프로세서(602)가 컴퓨팅 디바이스(600) 내에서 실행되기 위한 명령, 가령, 메모리(604) 또는 저장 디바이스(606)에 저장된 명령을 처리하여 외부 입/출력 디바이스, 가령, 고속 인터페이스(608)에 연결된 디스플레이(616) 상의 GUI에 대한 그래픽 정보를 디스플레이할 수 있다. 또 다른 구현예에서, 복수의 프로세서 및/또는 복수의 버스가 복수의 메모리 및 메모리 유형과 함께 적절하게 사용될 수 있다. 또한, 복수의 컴퓨팅 디바이스가 연결될 수 있으며, 이때, 각각의 디바이스가 (가령, 서버 뱅크, 블레이드 서버의 그룹, 또는 멀티-프로세서 시스템으로서) 필수 동작의 일부분을 제공한다.
메모리(604)는 컴퓨팅 디바이스(600) 내에 정보를 저장한다. 일부 구현예에서, 메모리(604)는 하나 이상의 휘발성 메모리 유닛이다. 일부 구현예에서, 메모리(604)는 하나 이상의 비휘발성 메모리 유닛이다. 메모리(604)는 또한 또 다른 형태의 컴퓨터 판독형 매체, 가령, 자기 또는 광학 디스크일 수 있다.
저장 디바이스(606)는 컴퓨팅 디바이스(600)에 대한 대용량 저장소를 제공할 수 있다. 일부 구현예에서, 저장 디바이스(606)는 컴퓨터 판독형 매체, 가령, 플로피 디스크 디바이스, 하드 디스크 디바이스, 광학 디스크 디바이스, 또는 테이프 디바이스, 플래시 메모리 또는 그 밖의 다른 유사한 솔리드 스테이트 메모리 디바이스, 또는 저장 영역 네트워크 또는 그 밖의 다른 구성으로 디바이스들을 포함하는 디바이스의 어레이이거나 이를 포함할 수 있다. 명령이 정보 운반체(information carrier)에 저장될 수 있다. 명령은, 하나 이상의 처리 디바이스(가령, 프로세서(602))에 의해 실행될 때, 하나 이상의 방법, 가령, 앞서 기재된 방법을 수행한다. 명령은 하나 이상의 저장 디바이스, 가령, 컴퓨터 또는 기계 판독형 매체(가령, 메모리(604), 저장 디바이스(606), 또는 프로세서(602) 상 메모리)에 의해서도 저장될 수 있다.
고속 인터페이스(608)는 컴퓨팅 디바이스(600)에 대해 대역폭-집중 동작을 관리하며, 저속 인터페이스(612)가 이보다 낮은 대역폭-집중 동작을 관리한다. 이러한 기능의 할당은 예시에 불과하다. 일부 구현예에서, 고속 인터페이스(608)가 메모리(604), (가령, 그래픽 프로세서 또는 가속기를 통해) 디스플레이(616), 및 다양한 확장 카드를 수용할 수 있는 고속 확장 포트(610)로 연결된다. 구현예에서, 저속 인터페이스(612)가 저장 디바이스(606) 및 저속 확장 포트(614)로 연결된다. 다양한 통신 포트(가령, USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트(614)가 하나 이상의 입/출력 디바이스, 가령, 키보드, 포인팅 디바이스, 스캐너, 또는 네트워킹 디바이스, 가령, 스위치 또는 라우터로, 가령, 네트워크 어댑터를 통해 연결될 수 있다.
컴퓨팅 디바이스(600)는 도면에 나타난 바와 같이 복수의 상이한 형태로 구현될 수 있다. 예를 들어, 이는 표준 서버(620) 또는 이러한 서버의 그룹에서 복수 번 구현될 수 있다. 덧붙여, 개인 컴퓨터, 가령, 랩톱 컴퓨터(622)에서 구현될 수 있다. 이는 또한 랙 서버 시스템(rack server system)(624)의 일부로서 구현될 수 있다. 대안으로, 컴퓨팅 디바이스(600)로부터의 구성요소가 모바일 디바이스 내 다른 구성요소, 가령, 모바일 컴퓨팅 디바이스(650)와 결합될 수 있다. 이러한 디바이스 각각은 컴퓨팅 디바이스(600) 및 모바일 컴퓨팅 디바이스(650) 중 하나 이상을 포함할 수 있고, 전체 시스템이 서로 통신하는 복수의 컴퓨팅 디바이스로 구성될 수 있다.
모바일 컴퓨팅 디바이스(650)는 프로세서(652), 메모리(664), 및 입/출력 디바이스, 가령, 디스플레이(654), 통신 인터페이스(666), 및 트랜시버(668) 등을 포함한다. 모바일 컴퓨팅 디바이스(650)는 저장 디바이스, 가령, 마이크로-드라이브 또는 그 밖의 다른 디바이스를 구비하여 추가 저장소를 제공할 수 있다. 프로세서(652), 메모리(664), 디스플레이(654), 통신 인터페이스(666) 및 트랜시버(668) 각각이 다양한 버스를 이용해 상호연결되고, 복수의 구성요소가 공통 마더보드 상에 장착되거나 그 밖의 다른 방식으로 적절하게 장착될 수 있다.
프로세서(652)는 모바일 컴퓨팅 디바이스(650) 내에서 명령, 가령, 메모리(664)에 저장된 명령을 실행할 수 있다. 프로세서(652)는 개별적인 복수의 아날로그 및 디지털 프로세서를 포함하는 칩의 칩셋으로 구현될 수 있다. 프로세서(652)는 예를 들어, 모바일 컴퓨팅 디바이스(650)의 그 밖의 다른 구성요소의 조화, 가령, 사용자 인터페이스의 제어, 모바일 컴퓨팅 디바이스(650)에 의해 실행되는 애플리케이션, 및 모바일 컴퓨팅 디바이스(650)에 의한 무선 통신을 제공할 수 있다.
프로세서(652)는 제어 인터페이스(658) 및 디스플레이(654)와 연결된 디스플레이 인터페이스(656)를 통해 사용자와 통신할 수 있다. 디스플레이(654)는 예를 들어, TFT(Thin-Film-Transistor Liquid Crystal Display) 디스플레이 또는 OLED(Organic Light Emitting Diode) 디스플레이 또는 그 밖의 다른 적절한 디스플레이 기법일 수 있다. 디스플레이 인터페이스(656)는 그래픽 및 그 밖의 다른 정보를 사용자에게 표시하도록 디스플레이(654)를 구동시키기 위한 적절한 회로를 포함할 수 있다. 제어 인터페이스(658)는 사용자로부터의 명령어를 수신하고 이들을 프로세서(652)로 제출되도록 변환할 수 있다. 덧붙여, 외부 인터페이스(662)는 프로세서(652)와의 통신을 제공하여, 타 디바이스와 모바일 컴퓨팅 디바이스(650)의 근거리 영역 통신을 가능하게 할 수 있다. 외부 인터페이스(662)는 예를 들어, 일부 구현예에서 유선 통신을 제공하거나, 또 다른 구현예에서 무선 통신을 제공할 수 있으며, 복수의 인터페이스가 또한 사용될 수 있다.
메모리(664)는 모바일 컴퓨팅 디바이스(650) 내에 정보를 저장한다. 상기 메모리(664)는 컴퓨터-판독형 매체, 휘발성 메모리 유닛, 또는 비휘발성 메모리 유닛 중 하나 이상으로 구현될 수 있다. 확장 메모리(674)가 또한 예를 들어 SIMM(Single In Line Memory Module) 카드 인터페이스일 수 있는 확장 인터페이스(672)를 통해 모바일 컴퓨팅 디바이스(650)로 제공되고 연결될 수 있다. 확장 메모리(674)는 모바일 컴퓨팅 디바이스(650)에 대해 여분의 저장 공간을 제공할 수 있거나, 모바일 컴퓨팅 디바이스(650)에 대해 애플리케이션 또는 그 밖의 다른 정보를 또한 저장할 수 있다. 구체적으로, 확장 메모리(674)가 앞서 기재된 프로세스를 수행 또는 보충하기 위한 명령을 포함할 수 있고, 보안 정보를 역시 포함할 수 있다. 따라서 예를 들어 확장 메모리(674)는 모바일 컴퓨팅 디바이스(650)를 위한 보안 모듈로서 제공될 수 있고, 모바일 컴퓨팅 디바이스(650)의 보안 사용을 허용하는 명령으로 프로그램될 수 있다. 덧붙여, 보안 애플리케이션은 추가 정보와 함께 SIMM 카드를 통해 제공될 수 있는데, 예를 들면, 해킹 불가능한 방식으로 식별 정보를 SIMM 카드 상에 위치시킬 수 있다.
메모리는 예를 들어 플래시 메모리 및/또는 NVRAM 메모리(비휘발성 랜덤 액세스 메모리)를 포함할 수 있다. 일부 구현예에서, 명령은 정보 운반체에 저장된다. 명령은, 하나 이상의 처리 디바이스(가령, 프로세서(652))에 의해 실행될 때 하나 이상의 방법, 가령, 앞서 기재된 방법을 수행한다. 명령은 또한 하나 이상의 저장 디바이스, 가령, 하나 이상의 컴퓨터 또는 기계 판독형 매체(가령, 메모리(664), 확장 메모리(674), 또는 프로세서(652) 상의 메모리)에 의해 저장될 수 있다. 일부 구현예에서, 명령은 전파되는 신호로, 가령, 트랜시버(668) 또는 외부 인터페이스(662)를 통해 수신될 수 있다.
모바일 컴퓨팅 디바이스(650)는 필요에 따라 디지털 신호 처리 회로를 포함할 수 있는 통신 인터페이스(666)를 통해 무선으로 통신할 수 있다. 통신 인터페이스(666)는 다양한 모드 또는 프로토콜, 가령, GSM 음성 콜(Global System for Mobile communications), SMS (Short Message Service), EMS (Enhanced Messaging Service), 또는 MMS 메시징 (Multimedia Messaging Service), CDMA (code division multiple access), TDMA (time division multiple access), PDC (Personal Digital Cellular), WCDMA (Wideband Code Division Multiple Access), CDMA2000, 또는 GPRS (General Packet Radio Service) 등에 따르는 통신을 제공할 수 있다. 이러한 통신은, 예를 들어, 라디오-주파수를 이용해 트랜시버(668)를 통해 일어날 수 있다. 추가로, 단거리 통신, 가령, 블루투스, WiFi, 또는 그 밖의 다른 이러한 트랜시버를 이용하는 통신이 일어날 수 있다. 덧붙여, GPS(Global Positioning System) 수신기 모듈(670)이 추가 내비게이션 및 위치-관련 무선 데이터를, 모바일 컴퓨팅 디바이스(650) 상에서 실행되는 애플리케이션에 의해 적절하게 사용될 수 있는 모바일 컴퓨팅 디바이스(650)로 제공할 수 있다.
모바일 컴퓨팅 디바이스(650)는, 음성 정보를 사용자로부터 수신하고 이를 이용 가능한 디지털 정보로 변환할 수 있는 오디오 코덱(660)을 이용해 가청 방식으로 통신할 수 있다. 마찬가지로 오디오 코덱(660)은 사용자에 대한 가청 사운드를, 가령, 스피커를 통해, 가령, 모바일 컴퓨팅 디바이스(650)의 핸드셋에서 발생시킬 수 있다. 이러한 사운드는 음성 전화 콜로부터의 사운드를 포함할 수 있고, 기록된 사운드(가령, 음성 메시지, 음악 파일 등)를 포함할 수 있으며, 모바일 컴퓨팅 디바이스(650) 상에서 동작하는 애플리케이션에 의해 생성되는 사운드를 역시 포함할 수 있다.
모바일 컴퓨팅 디바이스(650)는 도면에 도시된 바와 같이 복수의 상이한 형태로 구현될 수 있다. 예를 들어, 셀방식 전화기(680)로 구현될 수 있다. 또한 스마트-폰(582), 개인 디지털 어시스턴트, 또는 그 밖의 다른 유사한 모바일 디바이스 중 일부로서 구현될 수도 있다.
본 명세서에 기재된 시스템 및 기법의 다양한 구현예가 디지털 전자 회로, 집적 회로, 특수 설계된 ASIC(application specific integrated circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 구현될 수 있다. 이들 다양한 구현예는 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 명령을 수신하고 이들로 데이터 및 명령을 전송하기 위해 연결된 특수 또는 범용일 수 있는 적어도 하나의 프로그래머블 프로세서를 포함하는 프로그래머블 시스템 상에서 실행 및/또는 번역 가능한 하나 이상의 컴퓨터 프로그램으로의 구현을 포함할 수 있다.
이들 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션 또는 코드로도 알려짐)이 프로그램 가능 프로세서를 위한 기계 명령을 포함하고, 하이-레벨 프로시저 및/또는 객체-지향 프로그래밍 언어, 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본 명세서에서 사용될 때, 기계-판독 매체 및 컴퓨터-판독 매체라는 용어는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서, 가령, 기계-판독 신호로서 기계 명령을 수신하는 기계 판독형 매체로 제공하는 데 사용되는 임의의 컴퓨터 프로그램 프로덕트, 장치 및/또는 디바이스(가령, 자기 디스크, 광학 디스크, 메모리, 프로그램 가능 로직 디바이스(PLD))를 지칭한다. 기계-판독 신호라는 용어는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서로 제공하는 데 사용되는 임의의 신호를 지칭한다.
사용자와의 대화를 제공하기 위해, 본 명세서에 기재되는 시스템 및 기법은 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스(가령, CRT(cathode ray tube) 또는 LCD(liquid crystal display)) 및 사용자가 컴퓨터로 입력을 제공할 때 이용할 수 있는 키보드 및 포인팅 장치(가령, 마우스 또는 트랙볼)를 갖는 컴퓨터 상에서 구현될 수 있다. 그 밖의 다른 유형의 디바이스가 사용자와의 대화를 제공하는 데 사용될 수 있으며, 예를 들면, 사용자에게 제공되는 피드백이 임의의 형태의 센서 피드백(가령, 시각적 피드백, 청각적 피드백, 또는 촉각적 피드백)일 수 있고, 사용자로부터의 입력은 임의의 형태, 가령, 음향, 음성, 또는 촉각적 입력으로 수신될 수 있다.
본 명세서에 기재되는 시스템 및 기법은 백엔드 구성요소(가령, 데이터 서버)를 포함하거나 미들웨어 구성요소(가령, 애플리케이션 서버)를 포함하거나, 프론트엔드 구성요소(가령, 사용자가 본 명세서에 기재된 시스템 및 기법의 구현과 대화할 수 있도록 하는 그래픽 사용자 인터페이스 또는 웹 브라우저를 갖는 클라이언트 컴퓨터)를 포함하거나, 이러한 백엔드, 미들웨어, 또는 프론트엔드 구성요소의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 구성요소는 디지털 데이터 통신(가령, 통신 네트워크)의 임의의 형태 또는 매체에 의해 상호연결될 수 있다. 통신 네트워크의 예시가 로컬 영역 네트워크(LAN), 광역 네트워크(WAN), 및 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 원격지에 있으며 일반적으로 통신 네트워크를 통해 대화한다. 클라이언트와 서버 간 관계는 각자의 컴퓨터 상에서 실행되고 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생된다.
몇 가지 구현예가 앞서 상세히 기재되었지만, 그 밖의 다른 변경도 가능하다. 예를 들어, 클라이언트 애플리케이션이 델리게이트(delegate)를 액세스하는 것으로 기재되지만, 또 다른 구현예에서 델리게이트가 하나 이상의 프로세서, 가령, 하나 이상의 서버 상에서 실행되는 애플리케이션에 의해 구현되는 그 밖의 다른 애플리케이션에 의해 채용될 수 있다. 덧붙여, 도면에 도시된 로직 흐름이 원하는 결과를 얻기 위해 도시된 특정 순서 또는 순차적인 순서를 반드시 요구하지 않는다. 덧붙여, 그 밖의 다른 동작이 제공될 수 있거나 기재된 흐름에서 동작이 생략될 수 있고 그 밖의 다른 구성요소가 추가되거나 기재된 시스템에서 구성요소가 삭제될 수 있다. 따라서 그 밖의 다른 구현이 다음의 청구항의 범위 내에 있다.

Claims (20)

  1. 컴퓨터로 구현되는 방법으로서, 상기 방법은
    지정 비율 및 지정 배향을 갖는 지정 형태를 포함하는 형태 모델을 생성하는 단계,
    이미지를 수신하는 단계,
    이미지에서 형태 모델의 각각의 가장자리에 대해 형태 모델의 가장자리에 평행하고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 단계,
    식별된 에지 중에서, 최고 콘트라스트를 갖는 복수의 에지를 선택하는 단계,
    복수의 에지와 형태 모델과 유사한 복수의 형태의 각각의 형태 간 핏 점수를 결정하는 단계, 및
    각각의 핏 점수를 기초로, 복수의 형태 중에서, 형태 모델과 가장 가깝게 핏하는 특정 형태를 식별하는 단계
    를 포함하는, 컴퓨터로 구현되는 방법.
  2. 제1항에 있어서, 형태 모델과 상기 특정 형태는 동일한 개수의 에지를 갖는, 컴퓨터로 구현되는 방법.
  3. 제1항에 있어서, 형태 모델의 가장자리로부터의 지정 거리는 지정 픽셀 수인, 컴퓨터로 구현되는 방법.
  4. 제1항에 있어서, 이미지에서 형태 모델과 가장 가깝게 핏하는 특정 형태를 식별하는 단계는 최고 핏 점수를 갖는 특정 형태를 식별하는 단계를 포함하는, 컴퓨터로 구현되는 방법.
  5. 제1항에 있어서, 이미지에서 형태 모델의 각각의 가장자리에 대해 형태 모델의 가장자리에 평행하고 형태 모델의 가장자리로부터 지정 거리인 에지를 식별하는 단계는 지정 픽셀 간격에서 에지를 식별하는 단계를 포함하는, 컴퓨터로 구현되는 방법.
  6. 제1항에 있어서, 형태 모델은 직선 에지를 갖는, 컴퓨터로 구현되는 방법.
  7. 제1항에 있어서, 식별된 에지 중에서, 최고 콘트라스트를 갖는 복수의 에지를 선택하는 단계는 식별된 에지 중에서 최대 구배를 갖는 복수의 에지를 선택하는 단계를 포함하는, 컴퓨터로 구현되는 방법.
  8. 시스템으로서,
    하나 이상의 컴퓨터, 및
    명령을 저장하는 하나 이상의 저장 디바이스
    를 포함하며, 상기 명령은 하나 이상의 컴퓨터에 의해 실행될 때, 하나 이상의 컴퓨터로 하여금
    지정 비율 및 지정 배향을 갖는 지정 형태를 포함하는 형태 모델을 생성하는 동작,
    이미지를 수신하는 동작,
    이미지에서 형태 모델의 각각의 가장자리에 대해 형태 모델의 가장자리에 평행하고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 동작,
    식별된 에지 중에서, 최고 콘트라스트를 갖는 복수의 에지를 선택하는 동작,
    복수의 에지와 형태 모델과 유사한 복수의 형태의 각각의 형태 간 핏 점수를 결정하는 동작, 및
    각각의 핏 점수를 기초로, 복수의 형태 중에서, 형태 모델과 가장 가깝게 핏하는 특정 형태를 식별하는 동작
    을 수행하게 하도록 동작 가능한, 시스템.
  9. 제8항에 있어서, 형태 모델과 특정 형태는 동일한 개수의 에지를 갖는, 시스템.
  10. 제8항에 있어서, 형태 모델의 가장자리로부터의 지정 거리는 지정 픽셀 수인, 시스템.
  11. 제8항에 있어서, 이미지에서 형태 모델에 가장 가깝게 핏하는 특정 형태를 식별하는 동작은 최고 핏 점수를 갖는 특정 형태를 식별하는 동작을 포함하는, 시스템.
  12. 제8항에 있어서, 이미지에서 형태 모델의 각각의 가장자리에 대해 형태 모델의 가장자리에 평행하고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 동작은 지정 픽셀 간격에서 에지를 식별하는 동작을 포함하는, 시스템.
  13. 제8항에 있어서, 형태 모델은 직선 에지를 갖는, 시스템.
  14. 제8항에 있어서, 식별된 에지 중에서, 최고 콘트라스트를 갖는 복수의 에지를 선택하는 동작은 식별된 에지 중에서 최대 구배를 갖는 복수의 에지를 선택하는 동작을 포함하는, 시스템.
  15. 하나 이상의 컴퓨터에 의해 실행 가능한 명령을 포함하는 소프트웨어를 저장하는 비일시적 컴퓨터 판독형 매체로서, 상기 명령은 실행될 때 하나 이상의 컴퓨터로 하여금
    지정 비율 및 지정 배향을 갖는 지정 형태를 포함하는 형태 모델을 생성하는 동작,
    이미지를 수신하는 동작,
    이미지에서 형태 모델의 각각의 가장자리에 대해 형태 모델의 가장자리에 평행하고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 동작,
    식별된 에지 중에서, 최고 콘트라스트를 갖는 복수의 에지를 선택하는 동작,
    복수의 에지와 형태 모델과 유사한 복수의 형태의 각각의 형태 간 핏 점수를 결정하는 동작, 및
    각각의 핏 점수를 기초로, 복수의 형태 중에서, 형태 모델과 가장 가깝게 핏하는 특정 형태를 식별하는 동작
    을 수행하게 하도록 동작 가능한, 컴퓨터 판독형 매체.
  16. 제8항에 있어서, 형태 모델과 특정 형태는 동일한 개수의 에지를 갖는, 시스템.
  17. 제8항에 있어서, 형태 모델의 가장자리로부터의 지정 거리는 지정 픽셀 수인, 시스템.
  18. 제8항에 있어서, 이미지에서 형태 모델과 가장 가깝게 핏하는 특정 형태를 식별하는 동작은 최고 핏 점수를 갖는 특정 형태를 식별하는 동작을 포함하는, 시스템.
  19. 제8항에 있어서, 이미지에서 형태 모델의 각각의 가장자리에 대해, 형태 모델의 가장자리에 평행이고 형태 모델의 가장자리로부터 지정 거리에 있는 에지를 식별하는 동작은 지정 픽셀 간격에서 에지를 식별하는 동작을 포함하는, 시스템.
  20. 제8항에 있어서, 형태 모델은 직선 에지를 갖는, 시스템.
KR1020187036828A 2016-05-24 2017-05-24 형태 검출 KR20190104260A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662340915P 2016-05-24 2016-05-24
US62/340,915 2016-05-24
PCT/US2017/034347 WO2017205554A1 (en) 2016-05-24 2017-05-24 Shape detection

Publications (1)

Publication Number Publication Date
KR20190104260A true KR20190104260A (ko) 2019-09-09

Family

ID=60411602

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187036828A KR20190104260A (ko) 2016-05-24 2017-05-24 형태 검출

Country Status (8)

Country Link
US (2) US10176403B2 (ko)
EP (1) EP3465541A4 (ko)
JP (1) JP2019517079A (ko)
KR (1) KR20190104260A (ko)
CN (1) CN109891427A (ko)
AU (1) AU2017270085A1 (ko)
CA (1) CA3025312A1 (ko)
WO (1) WO2017205554A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10176403B2 (en) 2016-05-24 2019-01-08 Morphotrust Usa, Llc Shape detection
US11158057B2 (en) * 2016-12-30 2021-10-26 Huawei Technologies Co., Ltd. Device, method, and graphical user interface for processing document
US11403764B2 (en) * 2020-02-14 2022-08-02 Mujin, Inc. Method and computing system for processing candidate edges
JP2022146718A (ja) * 2021-03-22 2022-10-05 株式会社東芝 情報処理装置及び情報処理方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6912293B1 (en) * 1998-06-26 2005-06-28 Carl P. Korobkin Photogrammetry engine for model construction
US6697078B2 (en) * 1999-01-29 2004-02-24 Adobe Systems Incorporated Trap shaping
US7056322B2 (en) * 2002-03-28 2006-06-06 Depuy Orthopaedics, Inc. Bone fastener targeting and compression/distraction device for an intramedullary nail and method of use
US7139979B2 (en) * 2002-06-10 2006-11-21 National Instruments Corporation Displaying operations in an application using a graphical programming representation
US7149356B2 (en) * 2002-07-10 2006-12-12 Northrop Grumman Corporation System and method for template matching of candidates within a two-dimensional image
EP1394727B1 (en) * 2002-08-30 2011-10-12 MVTec Software GmbH Hierarchical component based object recognition
WO2008087974A1 (ja) * 2007-01-16 2008-07-24 Panasonic Corporation データ処理装置、方法、記録媒体
JP5538667B2 (ja) * 2007-04-26 2014-07-02 キヤノン株式会社 位置姿勢計測装置及びその制御方法
ATE452379T1 (de) * 2007-10-11 2010-01-15 Mvtec Software Gmbh System und verfahren zur 3d-objekterkennung
WO2009079744A1 (en) * 2007-12-21 2009-07-02 Mosaid Technologies Incorporated Non-volatile semiconductor memory device with power saving feature
US9298979B2 (en) * 2008-01-18 2016-03-29 Mitek Systems, Inc. Systems and methods for mobile image capture and content processing of driver's licenses
US8411086B2 (en) * 2009-02-24 2013-04-02 Fuji Xerox Co., Ltd. Model creation using visual markup languages
US9098905B2 (en) * 2010-03-12 2015-08-04 Google Inc. System and method for determining position of a device
US8942420B2 (en) * 2012-10-18 2015-01-27 Qualcomm Incorporated Detecting embossed characters on form factor
US9092695B1 (en) * 2013-03-13 2015-07-28 Google Inc. High-accuracy real-time road sign detection from images
EP3017399B1 (en) * 2013-06-30 2018-08-08 Google LLC Payment card ocr with relaxed alignment
US10176403B2 (en) 2016-05-24 2019-01-08 Morphotrust Usa, Llc Shape detection

Also Published As

Publication number Publication date
US10657421B2 (en) 2020-05-19
EP3465541A1 (en) 2019-04-10
CA3025312A1 (en) 2017-11-30
EP3465541A4 (en) 2019-06-12
CN109891427A (zh) 2019-06-14
US20170344857A1 (en) 2017-11-30
WO2017205554A1 (en) 2017-11-30
US10176403B2 (en) 2019-01-08
AU2017270085A1 (en) 2018-12-13
US20190220706A1 (en) 2019-07-18
JP2019517079A (ja) 2019-06-20

Similar Documents

Publication Publication Date Title
US9646406B2 (en) Position searching method and apparatus based on electronic map
US20210312214A1 (en) Image recognition method, apparatus and non-transitory computer readable storage medium
US9406137B2 (en) Robust tracking using point and line features
CN109409161B (zh) 图形码识别方法、装置、终端及存储介质
US9147221B2 (en) Image-driven view management for annotations
US20170372449A1 (en) Smart capturing of whiteboard contents for remote conferencing
US20120092329A1 (en) Text-based 3d augmented reality
US10657421B2 (en) Shape detection
US9058536B1 (en) Image-based character recognition
US10620826B2 (en) Object selection based on region of interest fusion
CN108830186B (zh) 文本图像的内容提取方法、装置、设备及存储介质
CN107771310B (zh) 头戴式显示设备及其处理方法
US20140192055A1 (en) Method and apparatus for displaying video on 3d map
CN110781823B (zh) 录屏检测方法、装置、可读介质及电子设备
WO2022042425A1 (zh) 视频数据处理方法、装置、计算机设备及存储介质
US11523063B2 (en) Systems and methods for placing annotations in an augmented reality environment using a center-locked interface
US10089510B2 (en) Display control methods and apparatuses
JP6121302B2 (ja) 姿勢パラメータ推定装置、姿勢パラメータ推定システム、姿勢パラメータ推定方法、およびプログラム
JP2014164483A (ja) データベース生成装置、カメラ姿勢推定装置、データベース生成方法、カメラ姿勢推定方法、およびプログラム
CN112990197A (zh) 车牌识别方法及装置、电子设备和存储介质
US11880738B1 (en) Visual odometry for optical pattern scanning in a real scene
US20230026575A1 (en) Augmented reality depth detection through object recognition
KR20130123316A (ko) 사용자의 얼굴 분석 결과에 따라 이동 단말을 제어하는 장치 및 방법
JP2019175326A (ja) プログラム、記録媒体及び画像生成方法