KR20220004460A - 이미지 병합을 위한 이미지 매칭 방법 및 이를 수행하는 데이터 처리 장치 - Google Patents
이미지 병합을 위한 이미지 매칭 방법 및 이를 수행하는 데이터 처리 장치 Download PDFInfo
- Publication number
- KR20220004460A KR20220004460A KR1020200082313A KR20200082313A KR20220004460A KR 20220004460 A KR20220004460 A KR 20220004460A KR 1020200082313 A KR1020200082313 A KR 1020200082313A KR 20200082313 A KR20200082313 A KR 20200082313A KR 20220004460 A KR20220004460 A KR 20220004460A
- Authority
- KR
- South Korea
- Prior art keywords
- presenter
- image
- tile
- tiles
- feature point
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000012545 processing Methods 0.000 title claims description 36
- 238000013507 mapping Methods 0.000 claims description 30
- 230000002093 peripheral effect Effects 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 42
- 230000009466 transformation Effects 0.000 description 24
- 239000011159 matrix material Substances 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 101100118004 Arabidopsis thaliana EBP1 gene Proteins 0.000 description 10
- 101150052583 CALM1 gene Proteins 0.000 description 10
- 102100025580 Calmodulin-1 Human genes 0.000 description 10
- 102100025579 Calmodulin-2 Human genes 0.000 description 10
- 101100459256 Cyprinus carpio myca gene Proteins 0.000 description 10
- 101001077352 Homo sapiens Calcium/calmodulin-dependent protein kinase type II subunit beta Proteins 0.000 description 10
- 101150091339 cam-1 gene Proteins 0.000 description 10
- 238000009826 distribution Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 6
- 208000006930 Pseudomyxoma Peritonei Diseases 0.000 description 5
- 229920000306 polymethylpentene Polymers 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 101100406567 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ORT1 gene Proteins 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/02—Affine transformations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local 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
- G06V10/443—Local 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 by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
이미지 병합 방법은, 복수의 입력 이미지들의 각각에 포함되는 특징 점들을 추출하고 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매칭 정보를 발생하는 단계, 상기 매칭 정보에 기초하여 상기 복수의 입력 이미지들 중에서 기준 이미지를 선택하는 단계, 상기 매칭 정보에 기초하여 상기 복수의 입력 이미지들 중에서 노이즈 이미지를 제거하여 유효 이미지들을 결정하는 단계, 상기 유효 이미지들을 각각 상기 기준 이미지에 정렬한 동기화 이미지들을 발생하기 위한 2차원 번들 조정을 수행하는 단계 및 상기 기준 이미지 및 상기 동기화 이미지들을 병합하여 병합 이미지를 발생하는 단계를 포함한다. 효율적인 기준 이미지 선택 및 2차원 번들 조정을 통해 이미지 병합 성능을 향상시킬 수 있다.
Description
본 발명은 반도체 집적 회로에 관한 것으로서, 더욱 상세하게는 이미지 병합을 위한 이미지 매칭 방법 및 상기 이미지 매칭 방법을 수행하는 데이터 처리 장치에 관한 것이다.
복수의 이미지들 간의 대응점들을 이용하여 영상을 병합하는 것은 컴퓨터 비젼 분야에서 기본적인 문제로 병합된 이미지는 이미지 스티칭(image stitching), 노이즈 감소(noise reduction), 동적 범위(dynamic range)의 변환 등 다양한 이미지 처리에 적용이 된다. 이미지 병합을 위해서는 먼저 복수의 이미지들의 각각에 포함되는 특징 점들의 대응 관계를 구하는 이미지 매칭이 선행된다. 이러한 이미지 매칭을 위해서는 많은 연산량이 요구되고, 이미지 매칭의 결과에 따라서 병합된 이미지의 품질이 결정된다.
상기와 같은 문제점을 해결하기 위한 본 발명의 일 목적은, 이미지들을 효율적으로 매칭하고 병합할 수 있는 이미지 매칭 방법 및 상기 이미지 매칭 방법을 수행하는 데이터 처리 장치를 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 이미지 매칭 방법은, 복수의 입력 이미지들의 각각에 대하여, 각각의 입력 이미지를 복수의 이미지 타일들로 분할하는 단계, 상기 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵을 발생하는 단계, 상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵을 발생하는 단계 및 상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들에 기초하여 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생하는 단계를 포함한다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 이미지 매칭 방법은, 복수의 입력 이미지들의 각각에 대하여, 각각의 입력 이미지를 복수의 이미지 타일들로 분할하는 단계, 상기 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵을 발생하는 단계, 상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵을 발생하는 단계, 상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들을 메모리 장치에 저장하는 단계, 상기 메모리 장치에 저장된 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 상응하는 표현자 맵들에 포함되는 표현자 타일들의 어드레스들에 기초하여 유사도 결정을 위한 표현자 타일들을 독출하는 단계, 독출된 표현자 타일들에 포함되는 표현자들 사이의 유사도들을 결정하는 단계 및 상기 유사도들에 기초하여, 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생하는 단계를 포함한다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 데이터 처리 장치는, 특징 점 맵 발생부, 표현자 맵 발생부 및 이미지 매칭부를 포함한다. 상기 특징 점 맵 발생부는 복수의 입력 이미지들의 각각의 입력 이미지를 분할한 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵을 발생한다. 상기 표현자 맵 발생부는 상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵을 발생한다. 상기 이미지 매칭부는 상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들에 기초하여 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생한다.
본 발명의 실시예들에 따른 이미지 매칭 방법 및 상기 이미지 매칭 방법을 수행하는 데이터 처리 장치는 입력 이미지를 복수의 이미지 타일들로 분할하여 특징 점들의 분포 균일성을 향상함으로써 이미지 병합 성능을 향상시킬 수 있다.
또한, 본 발명의 실시예들에 따른 이미지 매칭 방법 및 상기 이미지 매칭 방법을 수행하는 데이터 처리 장치는 복수의 이미지 타일들에 상응하는 특징 점 맵 및 표현자 맵을 이용하여 이미지 매칭에 필요한 연산량 및 프로세싱 시간을 감소함으로써 이미지 병합 성능을 더욱 향상시킬 수 있다.
도 1은 본 발명의 실시예들에 따른 이미지 매칭 방법을 나타내는 순서도이다.
도 2는 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 시스템을 나타내는 블록도이다.
도 3은 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 시스템을 나타내는 블록도이다.
도 4a 및 4b는 병합 대상이 되는 입력 이미지들의 제공 방법의 실시예들을 나타내는 도면들이다.
도 5는 본 발명의 실시예들에 따른 이미지 매칭 방법에 사용되는 특징 점 검출 방식의 예들을 나타내는 도면들이다.
도 6은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 이미지 분할의 일 실시예를 나타내는 도면이다.
도 7은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 발생의 일 실시예를 나타내는 도면이다.
도 8은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 입력 이미지, 특징 점 맵 및 표현자 맵의 타일들의 대응 관계를 나타내는 도면이다.
도 9는 특징 점들의 대응 관계를 판별하기 위한 검색 영역을 나타내는 도면이다.
도 10은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 검색 영역을 나타내는 도면이다.
도 11은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 매핑 정보의 일 예를 나타내는 도면이다.
도 12는 본 발명의 실시예들에 따른 이미지 매칭 방법을 나타내는 순서도이다.
도 13은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 저장 순서의 일 실시예를 나타내는 도면이다.
도 14 및 15는 도 13의 저장 순서에 따라서 특징 점 맵 및 표현자 맵에 할당되는 어드레스들을 나타내는 도면들이다.
도 16은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 데이터 독출의 일 실시예를 나타내는 순서도이다.
도 17은 도 16의 데이터 독출 방법을 설명하기 위한 도면이다.
도 18은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 저장 순서의 일 실시예를 나타내는 도면이다.
도 19 및 20은 도 18의 저장 순서에 따라서 특징 점 맵 및 표현자 맵에 할당되는 어드레스들을 나타내는 도면들이다.
도 21은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점의 좌표를 나타내는 도면이다.
도 22은 본 발명의 실시예들에 따른 이미지 병합 방법을 나타내는 순서도이다.
도 23a 내지 23d는 본 발명의 실시예들에 따른 이미지 병합 방법에 사용되는 이미지 변환의 예들을 나타내는 도면들이다.
도 24는 본 발명의 실시예들에 따른 이미지 병합 방법에 사용되는 호모그래피 행렬을 설명하기 위한 도면이다.
도 25는 복수의 입력 이미지들 사이의 호모그래피 행렬들을 나타내는 도면이다.
도 26은 복수의 입력 이미지들의 병합 과정을 나타내는 도면이다.
도 27은 본 발명의 실시예들에 따른 전자 시스템을 나타내는 블록도이다.
도 2는 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 시스템을 나타내는 블록도이다.
도 3은 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 시스템을 나타내는 블록도이다.
도 4a 및 4b는 병합 대상이 되는 입력 이미지들의 제공 방법의 실시예들을 나타내는 도면들이다.
도 5는 본 발명의 실시예들에 따른 이미지 매칭 방법에 사용되는 특징 점 검출 방식의 예들을 나타내는 도면들이다.
도 6은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 이미지 분할의 일 실시예를 나타내는 도면이다.
도 7은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 발생의 일 실시예를 나타내는 도면이다.
도 8은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 입력 이미지, 특징 점 맵 및 표현자 맵의 타일들의 대응 관계를 나타내는 도면이다.
도 9는 특징 점들의 대응 관계를 판별하기 위한 검색 영역을 나타내는 도면이다.
도 10은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 검색 영역을 나타내는 도면이다.
도 11은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 매핑 정보의 일 예를 나타내는 도면이다.
도 12는 본 발명의 실시예들에 따른 이미지 매칭 방법을 나타내는 순서도이다.
도 13은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 저장 순서의 일 실시예를 나타내는 도면이다.
도 14 및 15는 도 13의 저장 순서에 따라서 특징 점 맵 및 표현자 맵에 할당되는 어드레스들을 나타내는 도면들이다.
도 16은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 데이터 독출의 일 실시예를 나타내는 순서도이다.
도 17은 도 16의 데이터 독출 방법을 설명하기 위한 도면이다.
도 18은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 저장 순서의 일 실시예를 나타내는 도면이다.
도 19 및 20은 도 18의 저장 순서에 따라서 특징 점 맵 및 표현자 맵에 할당되는 어드레스들을 나타내는 도면들이다.
도 21은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점의 좌표를 나타내는 도면이다.
도 22은 본 발명의 실시예들에 따른 이미지 병합 방법을 나타내는 순서도이다.
도 23a 내지 23d는 본 발명의 실시예들에 따른 이미지 병합 방법에 사용되는 이미지 변환의 예들을 나타내는 도면들이다.
도 24는 본 발명의 실시예들에 따른 이미지 병합 방법에 사용되는 호모그래피 행렬을 설명하기 위한 도면이다.
도 25는 복수의 입력 이미지들 사이의 호모그래피 행렬들을 나타내는 도면이다.
도 26은 복수의 입력 이미지들의 병합 과정을 나타내는 도면이다.
도 27은 본 발명의 실시예들에 따른 전자 시스템을 나타내는 블록도이다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 이미지 병합 방법을 나타내는 순서도이다.
도 1을 참조하면, 복수의 입력 이미지들의 각각에 대하여, 각각의 입력 이미지를 복수의 이미지 타일들로 분할한다(S100).
상기 복수의 이미지 타일들이 동일한 행 수 및 동일한 열 수에 상응하는 픽셀들을 각각 포함하도록 상기 각각의 입력 이미지를 균일하게 분할할 수 있다. 상기 입력 이미지의 분할 및 이미지 타일들에 대해서는 도 6을 참조하여 설명한다.
상기 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵을 발생한다(S200). 또한, 상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵을 발생한다(S300).
일 실시예에서, 상기 각각의 이미지 타일에 포함되는 특징 점들의 개수를 타일 특징 점 최대 개수 이하로 제한할 수 있다. 예를 들어, 상기 각각의 입력 이미지에 포함되는 특징 점들의 최대 개수를 나타내는 이미지 특징 점 최대 개수를 결정하고, 상기 이미지 특징 점 최대 개수를 상기 복수의 이미지 타일들의 개수로 나눈 값을 상기 타일 특징 점 최대 개수로 결정할 수 있다. 상기 특징 점 맵 및 표현자 맵에 대해서는 도 7 및 8을 참조하여 후술한다.
상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들에 기초하여 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생한다(S400). 상기 매핑 정보를 이용하여 상기 복수의 입력 이미지들을 동기화하여 병합 이미지를 발생할 수 있다.
상기 복수의 입력 이미지들은 병합 대상이 되는 상호 연관된 이미지들의 세트에 해당한다. 상기 복수의 입력 이미지들은 동일한 장면(scene)의 적어도 일부를 공통적으로 포함할 수 있다.
일 실시예에서, 도 4a를 참조하여 후술하는 바와 같이, 상기 복수의 입력 이미지들은 복수의 카메라들에 의해 각각 캡쳐된 이미지들일 수 있다. 다른 실시예에서, 도 4b를 참조하여 후술하는 바와 같이, 상기 복수의 입력 이미지들은 1개의 카메라에 의해 순차적으로 캡쳐된 이미지들일 수 있다.
이와 같이, 본 발명의 실시예들에 따른 이미지 매칭 방법은 입력 이미지를 복수의 이미지 타일들로 분할하여 특징 점들의 분포 균일성을 향상함으로써 이미지 병합 성능을 향상시킬 수 있다.
또한, 본 발명의 실시예들에 따른 이미지 매칭 방법은 복수의 이미지 타일들에 상응하는 특징 점 맵 및 표현자 맵을 이용하여 이미지 매칭에 필요한 연산량 및 프로세싱 시간을 감소함으로써 이미지 병합 성능을 더욱 향상시킬 수 있다.
도 2는 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 시스템을 나타내는 블록도이다.
도 2를 참조하면, 시스템(10)은 데이터 처리 장치(20) 및 메모리 장치(MEM)(30)를 포함할 수 있다.
데이터 처리 장치(20)는 제어부(CTRL)(100), 특징 추출부(200), 이미지 매칭부(300) 및 이미지 병합부(MRG)(400)를 포함할 수 있다.
제어부(100)는 특징 추출부(200), 이미지 매칭부(300) 및 이미지 병합부(400)의 전반적인 동작들을 제어할 수 있다. 제어부(100)는 특징 추출부(200), 이미지 매칭부(300) 및 이미지 병합부(400)의 동작을 제어하기 위한 제어 신호들을 발생할 수 있다.
특징 추출부(200)는 이미지 타일 버퍼(ITBF)(210), 특징 점 맵 발생부(KMG)(220) 및 표현자 맵 발생부(DMG)(230)를 포함할 수 있다.
이미지 타일 버퍼(210)는 복수의 입력 이미지들의 각각 입력 이미지를 분할한 복수의 이미지 타일들을 타일 단위로 저장할 수 있다.
특징 점 맵 발생부(220)는 상기 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵(FMP)을 발생할 수 있다.
표현자 맵 발생부(230)는 상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵(DMP)을 발생할 수 있다.
이미지 매칭부(300)는 상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들에 기초하여 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보(MINF)를 발생할 수 있다. 이미지 매칭부(300)는 표현자 맵 버퍼(DMBF)(310) 및 매칭기(matcher)(MTCH)(320)를 포함할 수 있다. 유사도 결정에 필요한 표현자 타일들이 표현자 맵 버퍼(310)에 로딩되고, 매칭기(320)는 표현자 맵 버퍼(310)에 로딩된 표현자들 사이의 유사도들에 기초하여 매핑 정보(MINF)를 발생할 수 있다.
이미지 병합부(400)는 매핑 정보(MINF)에 기초하여 상기 복수의 입력 이미지들을 병합하여 병합 이미지를 발생할 수 있다. 도 22 내지 26을 참조하여 후술하는 바와 같이, 이미지 병합부(500)는 매핑 정보(MINF)에 기초하여 상기 복수의 입력 이미지들 사이의 변환을 나타내는 호모그래피 행렬들을 발생하고, 상기 호모그래피 행렬들에 기초하여 상기 복수의 입력 이미지들을 동기화하여 복수의 동기화 이미지들을 발생할 수 있다. 이미지 병합부(400)는 상기 동기화 이미지들을 이용하여 이미지 스티칭(image stitching), 노이즈 감소(noise reduction), 동적 범위(dynamic range)의 변환 등과 같은 다양한 이미지 처리를 수행할 수 있다.
메모리 장치(30)는 카메라와 같은 외부 장치로부터 제공되는 입력 이미지들을 수신하여 저장할 수 있다. 메모리 장치(30)는 병합 대상이 되는 하나의 이미지 세트를 구성하는 복수의 입력 이미지들을 특징 추출부(200) 및 이미지 병합부(400)에 제공할 수 있다. 또한, 메모리 장치(30)는 이미지 병합부(400)에서 발생되는 병합 이미지를 저장할 수 있다.
일 실시예에서, 메모리 장치(30)는 복수의 입력 이미지들에 상응하는 특징 점 맵들(FMP) 및 표현자 맵들(DMP)들을 저장할 수 있다. 메모리 장치(30)는 저장된 표현자 맵들(DMP)을 이미지 매칭부(300)에 제공할 수 있다. 이미지 매칭부(300)는 표현자 맵들(DMP)에 기초하여 표현자들 사이의 유사도들을 결정하고, 결정된 유사도들에 기초하여 매핑 정보(MINF)를 발생할 수 있다.
도 2에는 이미지 타일 버퍼(210) 및 표현자 맵 버퍼(310)를 별개의 구성요소들인 것으로 도시되어 있으나, 실시예들에 따라서 이미지 타일 버퍼(210) 및 표현자 맵 버퍼(310)는 하나의 장치로 구현될 수도 있다. 메모리 장치(30)는 데이터 처리 장치(20)에 전속된 메모리 장치일 수도 있고, 데이터 처리 장치(20)가 포함되는 시스템(10)의 공용 메모리 장치일 수도 있다.
일 실시예에서, 이미지 타일 버퍼(210) 및 표현자 맵 버퍼(310)는 정적 랜덤 액세스 메모리(SRAM, static random access memory)로 구현될 수 있고, 메모리 장치(30)는 동적 랜덤 액세스 메모리(DRAM, dynamic random access memory)로 구현될 수 있으나, 본 발명의 실시예들이 이에 한정되는 것은 아니다.
일 실시예에서, 제어부(100)는 특징 점 맵들(FMP)에 포함되는 특징 점 타일들 및 표현자 맵들(DMP)에 포함되는 표현자 타일들을 일정한 저장 순서에 따라서 순차적으로 메모리 장치(30)에 저장할 수 있다. 이를 위하여, 제어부(100)는 어드레스 발생기(ADDG)(110)를 포함할 수 있다. 어드레스 발생기(110)는 상기 저장 순서에 상응하는 액세스 어드레스(ACCAD)를 발생하여 메모리 장치(30)로 제공할 수 있다. 어드레스 발생기(110)에서 발생되는 상기 저장 순서에 상응하는 액세스 어드레스(ACCAD)의 발생에 대해서는 도 12 내지 20을 참조하여 후술한다.
이와 같이, 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 데이터 처리 장치(20)는 입력 이미지를 복수의 이미지 타일들로 분할하여 특징 점들의 분포 균일성을 향상함으로써 이미지 병합 성능을 향상시킬 수 있다. 또한, 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 데이터 처리 장치(20)는 복수의 이미지 타일들에 상응하는 특징 점 맵 및 표현자 맵을 이용하여 이미지 매칭에 필요한 연산량 및 프로세싱 시간을 감소함으로써 이미지 병합 성능을 더욱 향상시킬 수 있다.
도 3은 본 발명의 실시예들에 따른 이미지 매칭 방법을 수행하는 시스템을 나타내는 블록도이다.
도 3을 참조하면, 시스템(1000)은 카메라부(CAM)(1114), 트랜시버(TRX)(1140), 제어 유닛(1160) 및 사용자 인터페이스(1150)를 포함할 수 있다.
카메라부(1114)는 이미지를 캡쳐하여 제공하는 적어도 하나의 이미지 센서 또는 적어도 하나의 카메라를 포함할 수 있다. 일 실시예에서, 도 4a를 참조하여 후술하는 바와 같이, 카메라부(1114)는 복수의 카메라들을 포함할 수 있고, 상기 복수의 카메라들에 의해 각각 캡쳐된 이미지들을 병합 대상이 되는 복수의 입력 이미지들로서 제공할 수 있다. 다른 실시예에서, 도 4b를 참조하여 후술하는 바와 같이, 카메라부(1114)는 1개의 카메라에 의해 순차적으로 캡쳐된 이미지들을 병합 대상이 되는 복수의 입력 이미지들로서 제공할 수 있다.
트랜시버(140)는 유선 또는 무선 통신 링크를 통해 또 다른 네트워크(예를 들어, 광역 네트워크, 이를테면, 인터넷 또는 셀룰러 네트워크)로의 연결성(connectivity)을 제공할 수 있다.
사용자 인터페이스(1150)는 키보드, 키패드와 같은 입력 수단(DSP)(1152) 및 이미지를 표시하는 디스플레이(DIS)(1112)를 포함할 수 있다. 터치 스크린/센서를 갖는 디스플레이(1112)로 가상 키패드를 통합시키는 경우 키보드 또는 키패드(1152)는 생략될 수 있다.
제어 유닛(1116)은 범용 프로세서(PRC)(1161), 하드웨어(HW)(1162), 펌웨어(FW)(1163), 저장부(MEM)(1164), 디지털 신호 프로세서(DSP)(1166), 그래픽 엔진(GENG)(1167) 및 버스(1177)을 포함할 수 있다.
제어 유닛(1160)은 본 발명의 실시예들에 따른 이미지 병합 방법을 구현하도록 구성될 수 있다. 예를 들어, 제어 유닛(1160)은 도 2를 참조하여 설명한 데이터 처리 장치(20)의 기능들을 구현하도록 구성될 수 있다.
본 발명의 실시예들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 조합으로 구현될 수 있다.
일 실시예에서, 본 발명의 실시예들에 따른 이미지 매칭 방법은 디지털 신호 프로세서(1166)에 의해 수행될 수 있다. 즉 도 2를 참조하여 설명한 데이터 처리 장치(20)는 이미지 신호 프로세서(1166)에 포함될 수 있다.
일 실시예에서, 이미지 매칭 방법의 적어도 일부는 데이터 처리 장치로 하여금 이미지 프로세싱하게 하는 실행가능한 프로그램 명령들의 형태로 구현될 수 있다. 상기 프로그램 명령들은 소프트웨어(SW)(1165)의 형태로 저장부(1164)에 저장되고 프로세서(1161) 및/또는 디지털 신호 프로세서(1166)에 의해 상기 프로그램 명령들이 실행될 수 있다.
프로세서(1161)는, 컴퓨터 프로그램을 구성하는 명령들과 같은, 명령들을 실행하기 위한 하드웨어를 포함한다. 명령들을 실행하기 위해, 프로세서(1161)는 내부 레지스터, 내부 캐시(cache), 저장부(1164)로부터 상기 명령들을 검색(retrieve)(또는 페치(fetch))하고; 상기 명령들을 디코딩 및 실행하고; 그 다음에, 하나 이상의 결과들을 내부 레지스터, 내부 캐시 및/또는 저장부(1164)에 기입할 수 있다.
시스템(1000)은 어떤 적절한 물리적 형태를 취하는 컴퓨터 시스템일 수 있다. 시스템(1000)은 내장형(embedded) 컴퓨터 시스템, 시스템-온-칩(system-on-chip: SOC), 단일-보드 컴퓨터 시스템(single-board computer system: SBC)(예를 들면, 컴퓨터-온-모듈(computer-on-module: COM) 또는 시스템-온-모듈(system-on-module: SOM)과 같은 것), 데스크탑 컴퓨터 시스템, 랩탑 또는 노트북 컴퓨터 시스템, 대화형 키오스크(interactive kiosk), 메인프레임, 컴퓨터 시스템들의 메시(mesh), 모바일 전화, 개인 정보 단말기(personal digital assistant: PDA), 서버, 태블릿 컴퓨터 시스템, 또는 이들 중 둘 이상의 조합일 수 있다.
본 명세서에서, 컴퓨터-판독가능한 저장 매체 또는 매체들은, 적절한 경우, 하나 이상의 반도체-기반 또는 기타 집적 회로들(integrated circuits: ICs)(예를 들면, 필드 프로그램가능 게이트 어레이들(field-programmable gate arrays: FPGAs) 또는 애플리케이션 특정적 IC들(application-specific ICs: ASICs)), 하드디스크 드라이브들(HDDs), 하이브리드 하드 드라이브들(hybrid hard drives: HHDs), 광디스크들, 광디스크 드라이브들(optical disc drives: ODDs), 광자기 디스크들, 광자기 드라이브들, 플로피 디스켓들, 플로피 디스크 드라이브들(floppy disk drives: FDDs), 자기 테이프들, 고체 상태 드라이브들(SSDs), RAM 드라이브들, 시큐어 디지털(SECURE DIGITAL) 카드들 또는 드라이브들, 다른 어떤 적절한 컴퓨터-판독가능한 저장 매체들, 또는 이들 중 둘 이상의 어떤 적절한 조합을 포함할 수 있다. 적절한 경우, 컴퓨터-판독가능한 저장 매체는 휘발성, 비휘발성, 또는 휘발성 및 비휘발성의 조합일 수 있다.
도 4a 및 4b는 병합 대상이 되는 입력 이미지들의 제공 방법의 실시예들을 나타내는 도면들이다.
도 4a에는 축(AX) 상에 배열된 복수의 카메라들(CAM1, CAM2)의 예시적인 어레이가 도시되어 있다. 전술한 병합 대상이 되는 복수의 입력 이미지들은 이와 같은 복수의 카메라들(CAM1, CAM2)에 의해 각각 캡쳐된 이미지들(I1, I2)일 수 있다. 도시의 편의상 도 4a에는 2개의 카메라들이 도시되어 있으나, 이에 한정되는 것은 아니며 3개 이상의 카메라들을 이용하여 병합대상이 되는 복수의 이미지들이 제공될 수 있다.
실시예들에 따라서, 카메라들(CAM1, CAM2)은 개별 사진 이미지들을 캡처하거나 또는 일련의 이미지들을 비디오로서 캡처하도록 구성된, 이미지 센서를 포함할 수 있다. 예를 들어, 카메라(212)는 전하 결합 소자(charge-coupled device: CCD) 이미지 센서 또는 상보형 금속산화 반도체(complementary metal-oxide-semiconductor: CMOS) 능동 픽셀(active-pixel) 이미지 센서를 포함할 수 있다.
카메라들(CAM1, CAM2)은 카메라(212)의 렌즈 어셈블리의 위치, 초점 거리(focal length), 또는 배율(magnification) 및 카메라(212)의 이미지 센서의 위치 또는 크기에 적어도 부분적으로 의존하는, 시야(field of view: FOV)를 가질 수 있다. 도 4a에 도시된 바와 같이, 제1 카메라(CAM1)는 제1 시야 범위(FOV1)를 가질 수 있고 제2 카메라(CAM2)는 제2 시야 범위(FOV2)를 가질 수 있다.
FOV는 카메라들(CAM1, CAM2)을 통해 볼 수 있는 특정 장면의 수평, 수직, 또는 대각선 범위(extent)를 의미할 수 있다. 카메라들(CAM1, CAM2)의 FOV 내의 객체들은 카메라(212)의 이미지 센서에 의해 캡처될 수 있고, 상기 FOV 밖의 객체들은 상기 이미지 센서 상에 나타나지 않을 수 있다.
카메라는 가리키는 각도 또는 방향을 나타내는 배향(orientation)을 가질 수 있다. 도 4a에 도시된 바와 같이, 제1 카메라(CAM1)는 제1 배향(ORT1)을 가질 수 있고 제2 카메라(CAM2)는 제2 배향(ORT1)을 가질 수 있다.
카메라간 간격(inter-camera spacing)(ICS), 카메라들(CAM1, CAM2)의 시야 범위들(FOV1, FOV2) 및 배향들(ORT1, ORT2)에 의존하여 카메라들(CAM1, CAM2)에 의해 캡쳐되는 이미지들(I1, I2)의 중첩 영역은 변화하게 된다. 따라서, 이미지들(I1, I2)의 효율적인 병합을 위해서는 먼저 이미지들(I1, I2)을 동일한 2차원 평면에 정렬하여 동기화 또는 좌표 동기화하는 과정이 요구된다.
도 4b에 도시된 바와 같이, 전술한 병합 대상이 되는 복수의 입력 이미지들은 1개의 카메라(CAM)에 의해 순차적으로 캡쳐된 이미지들 이미지들(I1, I2)일 수 있다. 예를 들어, 이미지들(I1, I2)은 연속 촬영 모드에 의해 캡쳐된 이미지들일 수도 있고, 하나의 이미지의 품질 향상을 위한 오버샘플링되는 이미지들일 수도 있다. 이 경우 이미지들(I1, I2)이 캡쳐되는 시간적 차이가 발생하고, 모바일용 카메라의 경우에는 사용자의 손떨림 등에 의해 이미지들(I1, I2)의 중첩 영역은 변화하게 된다. 따라서, 도 4b의 경우와 마찬가지로 이미지들(I1, I2)의 효율적인 병합을 위해서는 먼저 이미지들(I1, I2)을 동일한 2차원 평면에 정렬하여 동기화 또는 좌표 동기화하는 과정이 요구된다.
도 5는 본 발명의 실시예들에 따른 이미지 매칭 방법에 사용되는 특징 점 검출 방식의 예들을 나타내는 도면들이다.
이미지에서 물체를 추적하거나 인식할 때, 이미지들을 매칭할 때 가장 일반적인 방법은 이미지에서 주요 특징 점들(feature points)을 추출하여 매칭하는 것이다. 특징 점은 통상 키 포인트(key point) 또는 관심 점(interesting point)라 지칭될 수 있다.
첫번째 이미지와 대응되는 지점을 두번째 이미지에서 찾는다고 했을 때, A 지점은 쉽게 찾을 수 있지만 B 지점은 찾기가 곤란할 수 있다. 이와 같이 이미지들을 매칭하는데 있어서 A 지점처럼 주위 배경과 구분되면서 식별이 용이한 지점을 특징 점으로 추출할 수 있다.
좋은 특징 점이 되기 위한 조건은, 물체의 형태나 크기, 위치가 변해도 쉽게 식별이 가능할 것, 카메라의 시점, 조명이 변해도 영상에서 해당 지점을 쉽게 찾아낼 수 있을 것 등이 있다.
이미지에서 이러한 조건을 만족하는 가장 좋은 특징 점 은 바로 코너점(corner point)이며, 도 5에 도시된 해리스 코너(Harris Corner), SIFT 코너와 같은 대부분의 특징 점 추출 알고리즘들은 이러한 코너점 검출을 바탕을 두고 있다.
실시예들에 따라서, 특징 점 검출 및 매칭은 이미지의 그레이스케일(grayscale) 버전들에 대해 수행될 수 있고, 특정 콘트라스트는 별도의 연산(operation)에서 또는 룩업 테이블(look-up table)을 통해 이미지들에 적용될 수 있다.
실시예들에 따라서, 특징 점 검출은 로컬 콘트라스트 향상을 이용하여 이미지에 대해 글로벌하게 수행될 수 있다. 로컬 콘트라스트 향상은 "로컬" 콘트라스트를 증가시키는 동시에 "글로벌" 콘트라스트의 증가를 방지하여, 대규모 섀도우(shadow)/하이라이트(hightlight) 디테일을 보호할 수 있다.
예를 드렁, 로컬 콘트라스트 경사들(gradients)은 특징에 대응되는 에지, 코너(corner), 또는 "블롭(blob)"을 나타낼 수 있다. 이미지의 특징들은, 예를 들면, 스케일 불변 특징 변환(scale-invariant feature transform: SIFT), 고속의 강인한 특징 추출(speeded up robust features: SURF), 또는 배향된 FAST 및 회전된 BRIEF(oriented FAST and Rotated BRIEF: ORB) 와 같은 특징 검출 알고리즘을 이용하여 검출될 수 있다. 여기서 FAST는 "가속된 세그먼트 테스트로부터의 특징들(features from accelerated segment test)"을 나타내고 BRIEF는 "이진 강건한 독립적 기본 특징들(binary robust independent elementary features)"을 나타낸다.
특정 실시예들에서, 특징 점 검출 프로세스는 하나 이상의 특징 점들을 검출할 수 있다. 예를 들어, 특징 점들은 다수의 가우스 평활화 연산들(Gaussian smoothing operations)의 차이를 취하여 검출될 수 있다. 또한, 특징 점들의 위치 및 각 특징 점의 콘트라스트 값들은 저장될 수 있다.
실시예들에 따라서, 특징 점들을 매칭하는 데 이용되는 영역의 크기는 이미지들의 크기에 따라 설정될 수 있다. 특정 실시예들에서, 카메라 시스템의 기하구조를 알 수 있으며, 알려진 카메라 시스템 기하구조에 기반하여, 인접한 이미지들의 중첩 영역들의 대략적인 픽셀수는 선험적으로 알 수 있다. 제한으로서가 아니라 예로서, 카메라 시스템의 카메라들의 위치 및 배향은 서로에 대해 고정되어 있기 때문에, 카메라들 간의 중첩도 또한 알 수 있다.
특정 실시예들에서, 특징 점들의 대응 쌍들을 결정하는 단계는 최근접 이웃(nearest-neighbor) 검색 알고리즘을 이용하여 수행될 수 있다. 예를 들어, 최근접 이웃 검색 알고리즘은, 이미지의 중첩 영역의 각 검색 영역 내의 특징 점들의 대응 패턴들과 매칭되는, 이미지의 중첩 영역의 각 검색 영역 내의 특징 점들의 패턴들을 식별할 수 있다.
특정 실시예들에서, 최근접 이웃 알고리즘은 대응 특징 점들의 쌍들을 결정하기 위해 각 특징 점 주위의 검색 영역을 이용할 수 있다. 검색 영역은 32 픽셀, 64 픽셀의 반경, 또는 어떤 적절한 반경을 가질 수 있거나, 또는 검색 영역은 32 픽셀 Х 32 픽셀, 64 픽셀 Х 64 픽셀의 크기, 또는 어떤 적절한 크기를 가질 수 있다.
특정 실시예들에서, 최종 호모그래피(homography) 계산 전에 상기 대응 특징 점들의 쌍들을 재정렬하기 위해 이차적 개량(secondary refinement) 단계가 이용될 수 있다.
도 6은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 이미지 분할의 일 실시예를 나타내는 도면이다.
도 6을 참조하면, 각각의 입력 이미지(Is)는 복수의 이미지 타일들( )로 분할될 수 있다. 에서 s는 입력 이미지의 인덱스를 나타내고, i는 타일 행 인덱스를 나타내고, j는 타일 열 인덱스를 나타낸다.
복수의 이미지 타일들( )이 동일한 행 수 및 동일한 열 수에 상응하는 픽셀들을 각각 포함하도록 각각의 입력 이미지(Is)를 균일하게 분할할 수 있다. 다시 말해, 복수의 이미지 타일들( )의 행 사이즈(SZA') 및 열 사이즈(SZB')는 모두 동일하게 되도록 각각의 입력 이미지(Is)를 분할할 수 있다.
이미지 타일의 행 사이즈(SZA') 및 열 사이즈(SZB')가 결정되면, 분할된 이미지 타일들의 행 개수(N) 및 열 개수(M)는 수학식 1과 같이 결정될 수 있고, 결과적으로 각각의 입력 이미지(Is)는 N*M 개의 이미지 타일들( )을 포함할 수 있다.
[수학식 1]
N = SZA/SZA'
M = SZB/SZB'
수학식 1에서, N은 이미지 타일들의 행 개수를 나타내고, M은 이미지 타일들의 열 개수를 나타내고, SZA는 각각의 입력 이미지의 행 사이즈를 나타내고, SZB는 각각의 입력 이미지의 열 사이즈를 나타내고, SZA'는 각각의 이미지 타일의 행 사이즈를 나타내고, SZB'는 각각의 이미지 타일의 열 사이즈를 나타낸다.
이와 같이 각각의 입력 이미지(Is)를 균일하게 분할함으로써 후술하는 바와 같이 특징 점들의 분포 균일성을 향상시킬 수 있고 이미지 매칭에 필요한 연산량 및 프로세싱 시간을 감소할 수 있다.
도 7은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 발생의 일 실시예를 나타내는 도면이다. 도 8은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 입력 이미지, 특징 점 맵 및 표현자 맵의 타일들의 대응 관계를 나타내는 도면이다.
복수의 이미지들을 병합하는 과정은 크게 4개의 단계로 구분될 수 있다. 첫째, 각각의 입력 이미지에 대하여 코너 점(corner point)와 같은 복수의 특징 점(key point)들을 추출한다. 둘째, 추출된 특징 점들의 각각에 대한 표현자(descriptor)들을 발생한다. 셋째, 발생된 특징 점들과 표현자들을 이용하여 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생한다. 넷째, 상기 매핑 정보를 이용하여 입력 이미지들 사이의 호모그래피(homograph)를 추정하여 한 개의 병합 이미지를 발생한다.
입력 이미지에서 특징 점을 추출할 때 크게 세 가지 요소가 호모그래피 성능에 크게 영향을 미친다.
첫 번째 요소는 특성(response)이 좋은 특징 점들을 추출하는 것이다. 2개의 입력 이미지들에서 추출된 특징 점들이 서로 다른 경우에 호모그래피를 추정할 때 사용되는 특징 점들의 대응 쌍들이 적어 병합 성능이 감소된다. 추출되는 대응 쌍들의 개수를 증가시키기 위해서는 고유 특성이 높은 점들을 추출하는 것이 중요하다. 다시 말해, 되도록 높은 특성 반복성(feature Repeatability)이 요구된다.
두 번째 요소는 특징 점들의 분포이다. 특징 점 특성(response)만을 고려하여 특징 점들을 추출하는 방식에서는, 이미지의 특정 영역에 특징 점들이 밀집하는 경우가 생기며 특징 점들이 밀집한 부분의 대응 쌍들이 호모그래피를 계산할 때 큰 영향을 주어 이미지의 특정 부분에 오버피팅(overfitting)된 호모그래피를 얻게 되는 문제가 생긴다.
세 번째 요소는 이미지 병합에서는 이미지의 크기, 프로세싱 속도 등 운영 환경 제약에 의하여 이미지에서 추출되는 특징 점들의 개수를 제한 해야 하는 경우가 많다. 이렇게 제한된 최대 특징 점 개수에서 이미지 전체에 고르게 분포된 특성 높은 특징 점들을 추출하는 것이 요구된다.
종래에는 특징 점들을 충분히 추출한 이후에 소팅(sorting) 알고리즘을 통하여 고유 특성이 높은 점을 정해진 개수만큼 선택하는 방법이 일반적으로 사용이 되었다. 그러나, 이러한 방법은 고유 특성이 높은 특징 점들을 추출할 수 있다는 장점이 있지만 소팅 알고리즘 수행으로 연산 복잡도가 증가하며, 특징 점 분포를 고려 할 수 없다는 단점이 있다.
이와 같은 단점을 보완하기 위하여 QuadTree와 같은 공간적 데이터 구조(spatial data structure) 기법을 이용하여 분포와 고유 특성을 고려하여 키포인트를 추출하는 방법이 사용된다. 그러나 이러한 QuadTree 방법은 특징 점들을 이미지 전체에 고르게 추출할 수 있다는 장점이 있으나, 이미지를 반복적으로 4개의 영역으로 나누는 작업을 수행하기 연산의 복잡도가 높다는 문제점이 있다.
본 발명의 실시예들에 따라서, 디지털 신호 프로세서(DSP, digital signal processor)의 병렬 프로세스를 이용하여 사전에 정의된 최대 특징 점 개수에 대하여 이미지 전체에 고르게 분포하면서 특성 높은 특징 점들을 추출할 수 있다.
전술한 바와 같이, 이미지의 크기, 프로세싱 속도 등을 고려하여 각각의 입력 이미지(Is)에 포함되는 특징 점들의 최대 개수를 나타내는 이미지 특징 점 최대 개수(Kmax)를 결정할 수 있다. 수학식 2와 같이, 이미지 특징 점 최대 개수(Kmax)를 각각의 이미지(Is)에 포함되는 복수의 이미지 타일들 타일들( )의 개수(N*M)로 나눈 값을 각각의 이미지 타일에 포함되는 특징 점들의 최대 개수를 나타내는 타일 특징 점 최대 개수(K)로 결정할 수 있다.
[수학식 2]
K=Kmax/(N*M)
도 7을 참조하면, 각각의 이미지 타일( )에 대한 특징 점 검출을 수행하여 L개의 후보 특징 점들( )을 포함하는 특징 점 후보군을 발생한다. 에서, s는 입력 이미지의 인덱스를 나타내고, i는 타일 행 인덱스를 나타내고, j는 타일 열 인덱스를 나타내고, p는 이미지 타일 내의 포인트 인덱스를 나타낸다.
L개의 후보 특징 점들( ) 중에서 특성 값이 높은 K개의 특징 점들( )을 추출하여 이미지 타일( )에 상응하는 특징 점 타일( )을 발생한다. 여기서 K는 전술한 바와 같은 각각의 이미지 타일에 포함되는 특징 점들의 최대 개수를 나타내는 타일 특징 점 최대 개수를 나타낸다.
이미지 타일( )에 상응하는 특징 점 타일( )에 포함되는 K개의 특징 점들( )의 각각에 대한 표현자들( )을 발생하여 이미지 타일( ) 및 특징 점 타일( )에 상응하는 표현자 타일( )을 발생한다.
실시예들에 따라서, 표현자들은 ORB(Oriented FAST(Features from Accelerated Segment Test) and Rotated BRIEF(Binary Robust Independent Elementary Features)), SIFT(Scale-Invariant Feature Transform), SURF(Speeded Up Robust Features) 및 MSD(Maximal Self-Dissimilarities) 중 적어도 하나에 기초하여 발생될 수 있다.
도 8에는 복수의 이미지 타일들( )로 분할된 입력 이미지(Is), 복수의 이미지 타일들( )에 각각 상응하는 복수의 특징 점 타일들( )을 포함하는 특징 점 맵(FMPs) 및 복수의 이미지 타일들( )에 각각 상응하는 복수의 표현자 타일들( )을 포함하는 표현자 맵(DMPs)이 도시되어 있다.
도 2의 특징 점 맵 발생부(220)는 복수의 특징 점 타일들( )이 각각 특징 점 타일 사이즈에 상응하는 동일한 개수의 데이터 비트들을 포함하도록 각각의 특징 점 타일을 발생할 수 있다. 또한, 도 2의 표현자 맵 발생부(230)는 복수의 표현자 타일들( )이 각각 표현자 타일 사이즈에 상응하는 동일한 개수의 데이터 비트들을 포함하도록 각각의 표현자 타일을 발생할 수 있다.
이미지 타일들, 특징 점 타일들 및 표현자 타일들은 각각 이차원 평면 상의 위치들에 의해 서로 대응될 수 있다. 여기서, 상기 이차원 평면 상의 위치는 타일 행 인덱스(i) 및 타일 열 인덱스(j)에 상응한다. 후술하는 바와 같이, 특징 점들 사이의 유클리디언 거리에 관계 없이 표현자 타일들의 이차원 평면 상의 위치들에 기초하여 표현자들 사이의 유사도를 결정할 수 있다.
일 실시예에서, 표현자들 사이의 유사도는 상기 표현자들 사이의 해밍 거리(Hamming distance)에 해당할 수 있다.
이와 같이, 본 발명의 실시예들에 따라서 일정한 사이즈의 타일 기반으로 특징 점들과 표현자들을 발생함으로써 기존의 Quadtree 방법과 비교하여 반복적인 공간 분할 작업 필요 없이 균등한 분포의 특성이 높은 키포인트를 얻을 수 있으며 전체 이미지에서 추출 되어야 하는 특징 점들의 최대 개수를 효율적으로 제어 할 수 있다.
특징 점 타일들 및 표현자 타일들은 이미지 타일들과 동일한 이차원 평면 상의 위치들에 대한 정보를 포함한다. 다시 말해, 타일 행 인덱스(i) 및 타일 열 인덱스(j)이 동일한 특징 점 타일, 표현자 타일 및 이미지 타일은 서로 대응된다.
일 실시예에서, 도 12 내지 20을 참조하여 후술하는 바와 같이 타일 행 인덱스(i) 및 타일 열 인덱스(j)에 상응하는 이차원 평면 상의 위치에 관한 정보를 이용하여 서로 다른 입력 이미지들에 포함되는 특징 점들의 거리 정보는 메모리 장치의 어드레스들로 표현될 수 있다. 이 경우, 단순한 메모리 어드레스의 계산만으로 특징 점의 픽셀 위치와 표현자에 대한 정보 접근이 가능하여 대응 쌍들을 효율적으로 추정할 수 있다. 나아가, 이러한 어드레스 계산을 통하여 대응 쌍들 중에서 상관 관계가 낮은 대응 점(outlier point)의 제거 및 호모그래피 연산시에도 효율적인 정보 접근이 가능하다.
도 9는 특징 점들의 대응 관계를 판별하기 위한 검색 영역을 나타내는 도면이고, 도 10은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 검색 영역을 나타내는 도면이다.
이미지 병합에서 서로 다른 이미지들에 포함되는 특징 점들의 대응 관계, 즉 대응 쌍을 찾는 과정은 일반적으로 이미지 공간에서의 거리 값 (spatial distance) 제한과 특징 점들의 표현자들 사이의 유사도 (descriptor similarity)를 이용한다.
도 9에 도시된 바와 같이, 타겟 이미지(It)의 특징 점들(Xt1~Xt5) 중에서, 기준 이미지(Ir) 상의 기준 특징 점(Xro)의 위치와 동일한 타겟 이미지(It) 상의 위치를 중심으로 일정한 검색 영역(SREG) 내에 있는 특징 점들(Xt1~Xt3)에 대하여 기준 특징 점(Xro)의 표현자와 특징 점들(Xt1~Xt3)의 표현자들 사이의 유사도들을 평가하여 유사도가 가장 높은 점을 대응점으로 추정을 한다. 특징 점들의 거리 값은 일반적으로 유클리디안 거리 값을 이용한다. 기준 이미지(Ir)의 한 개의 특징 점에 대하여 타겟 이미지(It)의 모든 특징 점들과의 유클리디안 거리 값을 계산하여 검색 영역(SREG) 내에 포함되는 타겟 이미지(It)의 특징 점들을 찾는 작업은 많은 연산량이 요구된다.
타겟 표현자 맵(DMPt)에 포함되는 복수의 표현자 타일들 중에서 이차원 평면 상에서 기준 표현자 타일( )과 동일한 위치에 있는 중앙 타겟 표현자 타일( )을 결정한다. 타겟 표현자 맵(DMPt)에 포함되는 복수의 표현자 타일들 중에서, 기준 표현자 타일( )과 행 인덱스(i) 및 타일 열 인덱스(j)가 일치하는 표현자 타일을 중앙 타겟 표현자 타일( )로 결정할 수 있다.
또한, 타겟 표현자 맵(DMPt)에 포함되는 복수의 표현자 타일들 중에서 상기 이차원 평면 상에서 중앙 타겟 표현자 타일( )에 인접한 주변 타겟 표현자 타일들( , , , , , , , )을 결정한다. 타겟 표현자 맵(DMPt)에 포함되는 복수의 표현자 타일들 중에서, 기준 표현자 타일( )과 행 인덱스(i) 및 타일 열 인덱스(j)의 차이가 기준 값보다 작은 표현자 타일들을 주변 타겟 표현자 타일들로 결정할 수 있다.
이와 같이, 행 인덱스(i) 및 타일 열 인덱스(j)의 비교를 통해 결정된 중앙 타겟 표현자 타일( ) 및 주변 타겟 표현자 타일들( , , , , , , , )을 전술한 유사도 결정을 위한 검색 영역(SREG)으로 설정할 수 있다.
기준 표현자 타일(DMPr)에 포함되는 기준 표현자 및 중앙 타겟 표현자 타일( ) 및 주변 타겟 표현자 타일들( , , , , , , , )에 포함되는 타겟 표현자들 사이의 유사도들을 결정한다. 상기 유사도들에 기초하여, 상기 타겟 표현자들에 상응하는 타겟 특징 점들 중에서 상기 기준 표현자에 상응하는 기준 특징 점에 대응하는 특징 점을 결정할 수 있다. 도 7을 참조하여 전술한 바와 같이, 표현자에 상응하는 특징 점은 동일한 포인트 인덱스(p)를 갖는다.
도 10에는 검색 영역(SREG)이 9개의 표현자 타일들을 포함하는 실시예가 도시되어 있으나, 본 발명의 실시예들이 이에 한정되는 것은 아니다. 실시예들에 따라서, 검색 영역(SREG)에 포함되는 표현자 타일들의 개수는 입력 이미지의 사이즈, 각각의 입력 이미지에 포함되는 이미지 타일들의 개수, 목표 프로세싱 시간 등에 기초하여 다양하게 결정될 수 있다.
이와 같이, 특징 점들 사이의 유클리디언 거리에 관계 없이 표현자 타일들의 이차원 평면 상의 위치들, 즉, 타일 행 인덱스(i) 및 타일 열 인덱스(j)에 기초하여 검색 영역(SREG)을 설정하고 표현자들 사이의 유사도들을 결정할 수 있다.
도 11은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 매핑 정보의 일 예를 나타내는 도면이다.
도 11에는 예시적으로 병합 대상이 되는 제1 내지 제5 입력 이미지들(I0~I4)에 각각 포함되는 특징 점들(Xij)의 매핑 정보(MINF)가 도시되어 있다. 도 11에서 동일한 행에 배열된 특징 점들은 이미지의 동일한 지점에 대응된다. 예를 들어, 매핑 정보(MINF)를 통하여 제1 입력 이미지(I0)의 특징 점(X02), 제2 입력 이미지(I1)의 특징 점(X11), 제3 입력 이미지(I2)의 특징 점(X22) 및 제4 입력 이미지(I3)의 특징 점(X32)은 모두 대응되는 특징 점들이고, 제5 입력 이미지(I4)에는 대응되는 특징 점이 없음을 알 수 있다. 이러한 매핑 정보(MINF)를 이용하여 도 22 내지 26을 참조하여 후술하는 바와 같은 이미지 병합을 수행할 수 있다.
이하, 도 12 내지 20을 참조하여, 어드레스 기반의 이미지 매칭 방법에 대하여 설명한다.
도 12는 본 발명의 실시예들에 따른 이미지 매칭 방법을 나타내는 순서도이다.
도 12를 참조하면, 복수의 입력 이미지들의 각각에 대하여, 각각의 입력 이미지를 복수의 이미지 타일들로 분할한다(S100). 도 6을 참조하여 전술한 바와 같이, 상기 복수의 이미지 타일들이 동일한 행 수 및 동일한 열 수에 상응하는 픽셀들을 각각 포함하도록 상기 각각의 입력 이미지를 균일하게 분할할 수 있다.
상기 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵을 발생한다(S200). 또한, 상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵을 발생한다(S300).
일 실시예에서, 도 7 및 8을 참조하여 전술한 바와 같이, 상기 각각의 이미지 타일에 포함되는 특징 점들의 개수를 타일 특징 점 최대 개수 이하로 제한할 수 있다. 예를 들어, 상기 각각의 입력 이미지에 포함되는 특징 점들의 최대 개수를 나타내는 이미지 특징 점 최대 개수를 결정하고, 상기 이미지 특징 점 최대 개수를 상기 복수의 이미지 타일들의 개수로 나눈 값을 상기 타일 특징 점 최대 개수로 결정할 수 있다.
상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들을 메모리 장치에 저장한다(S350). 일 실시예에서, 상기 각각의 입력 이미지에 상응하는 특징 점 시작 어드레스부터 상기 각각의 입력 이미지에 상응하는 복수의 특징 점 타일들을 하나씩 특징 점 타일 어드레스 오프셋의 간격으로 메모리 장치에 순차적으로 저장할 수 있다. 마찬가지로, 상기 각각의 이미지에 상응하는 표현자 시작 어드레스부터 상기 복수의 표현자 타일들을 하나씩 표현자 타일 어드레스 오프셋의 간격으로 상기 복수의 특징 점 타일들의 저장 순서와 동일하게 상기 메모리 장치에 순차적으로 저장할 수 있다.
이와 같이 메모리 장치에 저장된 표현자 맵들에 기초하여, 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생할 수 있다.
상기 메모리 장치에 저장된 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 상응하는 표현자 맵들에 포함되는 표현자 타일들의 어드레스들에 기초하여 유사도 결정을 위한 표현자 타일들을 독출한다(S410). 여기서, 유사도 결정을 위한 표현자 타일들은 도 10을 참조하여 설명한 바와 같은 기준 표현자 타일 및 상기 기준 표현 타일에 상응하는 중앙 타겟 표현자 타일과 주변 타겟 표현자 타일들을 나타낸다.
독출된 표현자 타일들에 포함되는 표현자들 사이의 유사도들을 결정한다(S420). 상기 유사도들에 기초하여, 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생한다(S430). 상기 매핑 정보를 이용하여 상기 복수의 입력 이미지들을 동기화하여 병합 이미지를 발생할 수 있다.
상기 복수의 입력 이미지들은 병합 대상이 되는 상호 연관된 이미지들의 세트에 해당한다. 상기 복수의 입력 이미지들은 동일한 장면(scene)의 적어도 일부를 공통적으로 포함할 수 있다.
일 실시예에서, 도 4a를 참조하여 전술한 바와 같이, 상기 복수의 입력 이미지들은 복수의 카메라들에 의해 각각 캡쳐된 이미지들일 수 있다. 다른 실시예에서, 도 4b를 참조하여 전술한 바와 같이, 상기 복수의 입력 이미지들은 1개의 카메라에 의해 순차적으로 캡쳐된 이미지들일 수 있다.
이와 같이, 본 발명의 실시예들에 따른 이미지 매칭 방법은 입력 이미지를 복수의 이미지 타일들로 분할하여 특징 점들의 분포 균일성을 향상함으로써 이미지 병합 성능을 향상시킬 수 있다.
또한, 본 발명의 실시예들에 따른 이미지 매칭 방법은 복수의 이미지 타일들에 상응하는 특징 점 맵 및 표현자 맵을 이용하여 이미지 매칭에 필요한 연산량 및 프로세싱 시간을 감소함으로써 이미지 병합 성능을 더욱 향상시킬 수 있다.
도 13은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 저장 순서의 일 실시예를 나타내는 도면이다.
도 13을 참조하면, 행 단위 저장 순서에 따라서, 특징 점 맵(PTLs) 또는 표현자 맵(DTLs)에 포함되는 복수의 타일들( )을 순차적으로 메모리 장치에 저장할 수 있다. 복수의 타일들( )은 특징 점 맵(PTLs)에 포함되는 복수의 특징 점 타일들( ) 또는 표현자 맵(DTLs)에 포함되는 복수의 표현자 타일들( )에 해당할 수 있다.
행 단위 저장 순서에 따라서, 첫 번째 행의 타일들( )이 메모리 장치의 순차적으로 증가하는 어드레스들에 저장되고, 두 번째 행의 타일들( )이 메모리 장치의 순차적으로 증가하는 어드레스들에 저장되고, 이와 같은 방식으로 마지막 행의 타일들( )이 메모리 장치의 순차적으로 증가하는 어드레스들에 저장될 수 있다.
도 14 및 15는 도 13의 저장 순서에 따라서 특징 점 맵 및 표현자 맵에 할당되는 어드레스들을 나타내는 도면들이다.
도 14를 참조하면, 복수의 입력 이미지들에 각각 상응하는 복수의 특징 점 맵들(PMP0~PMPR)이 메모리 장치의 특징 점 시작 어드레스들(S_PADD0~S_PADDR)에 순차적으로 저장될 수 있다. 특징 점 시작 어드레스들(S_PADD0~S_PADDR) 사이의 어드레스 오프셋(POFF1)은 특징 점 맵들(PMP0~PMPR)의 각각에 포함되는 데이터 비트들의 개수에 상응하고 특징 점 맵들(PMP0~PMPR)에 대해 동일한 값을 가질 수 있다.
도 14에는 하나의 특징 점 맵(PMPs)에 상응하는 복수의 특징 점 타일들( )이 도시되어 있다. 첫 번째 특징 점 타일( )의 어드레스( )는 특징 점 맵(PMPs)의 특징 점 시작 어드레스(S_PADD0)와 동일하다. 도 14에 도시된 바와 같이, 입력 이미지(Is)에 상응하는 특징 점 맵(PMPs)에 포함되는 복수의 특징 점 타일들( )은 입력 이미지(Is)에 상응하는 특징 점 시작 어드레스(S_PADD0= )부터 하나씩 특징 점 타일 어드레스 오프셋(POFF2)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다. 특징 점 타일 어드레스 오프셋(POFF2)은 각각의 특징 점 타일에 포함되는 데이터 비트들의 개수에 상응하는 특징 점 타일 사이즈에 기초하여 결정될 수 있다.
이와 같이, 행 단위 저장 순서에 따라서, 각각의 특징 점 타일( )의 어드레스( )는 입력 이미지(Is)에 상응하는 특징 점 시작 어드레스(S_PADD0= ) 및 특징 점 타일 어드레스 오프셋(POFF2)에 기초하여 수학식 3과 같이 결정될 수 있다.
[수학식 3]
수학식 3에서, M은 하나의 입력 이미지에 포함되는 이미지 타일들의 열 개수, 즉 하나의 특징 점 맵에 포함되는 특징 점 타일들의 열 개수를 나타낸다.
또한, 도 14에는 하나의 특징 점 타일( )에 상응하는 복수의 특징 점들( )이 도시되어 있다. 첫 번째 특징 점( )의 어드레스( )는 특징 점 타일( )의 시작 어드레스( )와 동일하다. 도 14에 도시된 바와 같이, 특징 점 타일( )에 포함되는 복수의 특징 점들( )은 특징 점 타일( )의 시작 어드레스( )부터 하나씩 어드레스 오프셋(POFF3)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다.
도 15를 참조하면, 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들(DMP0~DMPR)이 메모리 장치의 표현자 시작 어드레스들(S_DADD0~S_DADDR)에 순차적으로 저장될 수 있다. 표현자 시작 어드레스들(S_DADD0~S_DADDR) 사이의 어드레스 오프셋(DOFF1)은 표현자 맵들(DMP0~DMPR)의 각각에 포함되는 데이터 비트들의 개수에 상응하고 표현자 맵들(DMP0~DMPR)에 대해 동일한 값을 가질 수 있다.
도 15에는 하나의 표현자 맵(DMPs)에 상응하는 복수의 표현자 타일들( )이 도시되어 있다. 첫 번째 표현자 타일( )의 어드레스( )는 표현자 맵(DMPs)의 표현자 시작 어드레스(S_DADD0)와 동일하다. 도 15에 도시된 바와 같이, 입력 이미지(Is)에 상응하는 표현자 맵(DMPs)에 포함되는 복수의 표현자 타일들( )은 입력 이미지(Is)에 상응하는 표현자 시작 어드레스(S_DADD0= )부터 하나씩 표현자 타일 어드레스 오프셋(DOFF2)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다. 표현자 타일 어드레스 오프셋(DOFF2)은 각각의 표현자 타일에 포함되는 데이터 비트들의 개수에 상응하는 표현자 타일 사이즈에 기초하여 결정될 수 있다.
이와 같이, 행 단위 저장 순서에 따라서, 각각의 표현자 타일( )의 어드레스( )는 입력 이미지(Is)에 상응하는 표현자 시작 어드레스(S_DADD0= ) 및 표현자 타일 어드레스 오프셋(DOFF2)에 기초하여 수학식 4와 같이 결정될 수 있다.
[수학식 4]
수학식 4에서, M은 하나의 입력 이미지에 포함되는 이미지 타일들의 열 개수, 즉 하나의 표현자 맵에 포함되는 표현자 타일들의 열 개수를 나타낸다.
또한, 도 15에는 하나의 표현자 타일( )에 상응하는 복수의 표현자들( )이 도시되어 있다. 첫 번째 표현자( )의 어드레스( )는 표현자 타일( )의 시작 어드레스( )와 동일하다. 도 15에 도시된 바와 같이, 표현자 타일( )에 포함되는 복수의 표현자들( )은 표현자 타일( )의 시작 어드레스( )부터 하나씩 어드레스 오프셋(DOFF3)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다.
이와 같이, 행 단위 저장 방식에 따른 어드레스들은 수학식 3 및 4와 같은 관계를 만족한다. 따라서, 도 16 및 17을 참조하여 설명하는 바와 같이, 복수의 입력 이미지들(I0~IR)에 각각 상응하는 복수의 표현자 시작 어드레스들(S_DADD0~S_DADDR) 및 표현자 타일 어드레스 오프셋(DOFF2)에 기초하여 유사도 결정을 위한 표현자들을 독출할 수 있다.
도 16은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 데이터 독출의 일 실시예를 나타내는 순서도이고, 도 17은 도 16의 데이터 독출 방법을 설명하기 위한 도면이다.
도 16을 참조하면, 매핑 정보의 발생을 위해, 복수의 표현자 맵들의 하나에 해당하는 기준 표현자 맵에 상응하는 기준 표현자 시작 어드레스 및 표현자 타일 어드레스 오프셋에 기초하여 상기 기준 표현자 맵에 포함되는 복수의 표현자 타일들 중에서 기준 표현자 타일의 기준 어드레스를 결정할 수 있다(S411).
상기 복수의 표현자 맵들의 다른 하나에 해당하는 타겟 표현자 맵에 상응하는 타겟 표현자 시작 어드레스 및 상기 표현자 타일 어드레스 오프셋에 기초하여 상기 타겟 표현자 맵에 포함되는 복수의 표현자 타일들 중에서 이차원 평면 상에서 상기 기준 표현자 타일과 동일한 위치에 있는 중앙 타겟 표현자 타일 및 상기 이차원 평면 상에서 상기 중앙 타겟 표현자 타일에 인접한 주변 타겟 표현자 타일들의 타겟 어드레스들을 결정할 수 있다(S412).
상기 기준 어드레스 및 상기 타겟 어드레스들에 기초하여 상기 메모리 장치로부터 상기 기준 표현자 타일 및 상기 중앙 타겟 표현자 타일과 상기 주변 타겟 표현자 타일들을 독출할 수 있다(S413).
도 17에는 기준 표현자 맵(DMPr) 및 타겟 표현자 맵(DMPt)과 도 13, 14 및 15를 참조하여 설명한 행 단위 저장 순서에 따라 메모리 장치에 저장되는 기준 표현자 맵(DMPr) 및 타겟 표현자 맵(DMPt)에 상응하는 어드레스들이 도시되어 있다. 기준 표현자 맵(DMPr)은 표현자 맵들(DMP0~DMPR)의 하나에 해당하고, 타겟 표현자 맵(DMPt) 표현자 맵들(DMP0~DMPR)의 다른 하나에 해당한다.
기준 표현자 맵(DMPr)에 포함되는 복수의 표현자 타일들( ) 중에서 기준 표현자 타일( )의 기준 어드레스( )는 수학식 4를 참조하여 설명한 바와 같이 기준 표현자 맵(DMPr)에 상응하는 기준 표현자 시작 어드레스( ) 및 표현자 타일 어드레스 오프셋(DOFF2)에 기초하여 수학식 5와 같이 결정될 수 있다.
[수학식 5]
타겟 표현자 맵(DMPt)에 포함되는 복수의 표현자 타일들( ) 중에서 이차원 평면 상에서 기준 표현자 타일( )과 동일한 위치에 있는 중앙 타겟 표현자 타일( ) 및 상기 이차원 평면 상에서 중앙 타겟 표현자 타일( )에 인접한 주변 타겟 표현자 타일들( , , , , , , , )의 타겟 어드레스들( ~ )은 동일한 방식으로 타겟 표현자 맵(DMPt)에 상응하는 기준 표현자 시작 어드레스( ) 및 표현자 타일 어드레스 오프셋(DOFF2)에 기초하여 수학식 6과 같이 결정될 수 있다.
[수학식 6]
도 2의 어드레스 발생기(110)는 이와 같이 행 단위 저장 순서에 상응하는 기준 어드레스 기준 어드레스( ) 및 타겟 어드레스들( ~ )을 액세스 어드레스(ACCAD)로서 발생하여 메모리 장치(30)로 제공할 수 있다. 기준 어드레스( ) 및 타겟 어드레스들( ~ )에 기초하여 메모리 장치(30)로부터 기준 표현자 타일( ) 및 중앙 타겟 표현자 타일 중앙 타겟 표현자 타일( )과 주변 타겟 표현자 타일들( , , , , , , , )이 메모리 장치(30)로부터 독출되어 표현자 맵 버퍼(310)에 로딩될 수 있다.
도 2의 매칭기(320)는 표현자 맵 버퍼(310)에 로딩된 기준 표현자 타일( )에 포함되는 각각의 기준 표현자 및 중앙 타겟 표현자 타일 중앙 타겟 표현자 타일( )과 주변 타겟 표현자 타일들( , , , , , , , )에 포함되는 타겟 표현자들 사이의 유사도들을 결정하고, 상기 유사도들에 기초하여, 상기 타겟 표현자들에 상응하는 타겟 특징 점들 중에서 상기 각각의 기준 표현자에 상응하는 기준 특징 점에 대응하는 특징 점을 결정할 수 있다.
이와 같이, 이 경우, 단순한 메모리 어드레스의 계산만으로 특징 점의 픽셀 위치와 표현자에 대한 정보 접근이 가능하여 대응 쌍들을 효율적으로 추정할 수 있다. 나아가, 이러한 어드레스 계산을 통하여 대응 쌍들 중에서 상관 관계가 낮은 대응 점(outlier point)의 제거 및 호모그래피 연산시에도 효율적인 정보 접근이 가능하다.
도 18은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점 맵 및 표현자 맵의 저장 순서의 일 실시예를 나타내는 도면이다.
도 18을 참조하면, 열 단위 저장 순서에 따라서, 특징 점 맵(PTLs) 또는 표현자 맵(DTLs)에 포함되는 복수의 타일들( )을 순차적으로 메모리 장치에 저장할 수 있다. 복수의 타일들( )은 특징 점 맵(PTLs)에 포함되는 복수의 특징 점 타일들( ) 또는 표현자 맵(DTLs)에 포함되는 복수의 표현자 타일들( )에 해당할 수 있다.
열 단위 저장 순서에 따라서, 첫 번째 열의 타일들( )이 메모리 장치의 순차적으로 증가하는 어드레스들에 저장되고, 두 번째 열의 타일들( )이 메모리 장치의 순차적으로 증가하는 어드레스들에 저장되고, 이와 같은 방식으로 마지막 열의 타일들( )이 메모리 장치의 순차적으로 증가하는 어드레스들에 저장될 수 있다.
도 19 및 20은 도 18의 저장 순서에 따라서 특징 점 맵 및 표현자 맵에 할당되는 어드레스들을 나타내는 도면들이다.
도 19를 참조하면, 복수의 입력 이미지들에 각각 상응하는 복수의 특징 점 맵들(PMP0~PMPR)이 메모리 장치의 특징 점 시작 어드레스들(S_PADD0~S_PADDR)에 순차적으로 저장될 수 있다. 특징 점 시작 어드레스들(S_PADD0~S_PADDR) 사이의 어드레스 오프셋(POFF1)은 특징 점 맵들(PMP0~PMPR)의 각각에 포함되는 데이터 비트들의 개수에 상응하고 특징 점 맵들(PMP0~PMPR)에 대해 동일한 값을 가질 수 있다.
도 19에는 하나의 특징 점 맵(PMPs)에 상응하는 복수의 특징 점 타일들( )이 도시되어 있다. 첫 번째 특징 점 타일( )의 어드레스( )는 특징 점 맵(PMPs)의 특징 점 시작 어드레스(S_PADD0)와 동일하다. 도 19에 도시된 바와 같이, 입력 이미지(Is)에 상응하는 특징 점 맵(PMPs)에 포함되는 복수의 특징 점 타일들( )은 입력 이미지(Is)에 상응하는 특징 점 시작 어드레스(S_PADD0= )부터 하나씩 특징 점 타일 어드레스 오프셋(POFF2)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다. 특징 점 타일 어드레스 오프셋(POFF2)은 각각의 특징 점 타일에 포함되는 데이터 비트들의 개수에 상응하는 특징 점 타일 사이즈에 기초하여 결정될 수 있다.
이와 같이, 열 단위 저장 순서에 따라서, 각각의 특징 점 타일( )의 어드레스( )는 입력 이미지(Is)에 상응하는 특징 점 시작 어드레스(S_PADD0= ) 및 특징 점 타일 어드레스 오프셋(POFF2)에 기초하여 수학식 7과 같이 결정될 수 있다.
[수학식 7]
수학식 7에서, N은 하나의 입력 이미지에 포함되는 이미지 타일들의 행 개수, 즉 하나의 특징 점 맵에 포함되는 특징 점 타일들의 행 개수를 나타낸다.
또한, 도 19에는 하나의 특징 점 타일( )에 상응하는 복수의 특징 점들( )이 도시되어 있다. 첫 번째 특징 점( )의 어드레스( )는 특징 점 타일( )의 시작 어드레스( )와 동일하다. 도 19에 도시된 바와 같이, 특징 점 타일( )에 포함되는 복수의 특징 점들( )은 특징 점 타일( )의 시작 어드레스( )부터 하나씩 어드레스 오프셋(POFF3)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다.
도 20을 참조하면, 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들(DMP0~DMPR)이 메모리 장치의 표현자 시작 어드레스들(S_DADD0~S_DADDR)에 순차적으로 저장될 수 있다. 표현자 시작 어드레스들(S_DADD0~S_DADDR) 사이의 어드레스 오프셋(DOFF1)은 표현자 맵들(DMP0~DMPR)의 각각에 포함되는 데이터 비트들의 개수에 상응하고 표현자 맵들(DMP0~DMPR)에 대해 동일한 값을 가질 수 있다.
도 20에는 하나의 표현자 맵(DMPs)에 상응하는 복수의 표현자 타일들( )이 도시되어 있다. 첫 번째 표현자 타일( )의 어드레스( )는 표현자 맵(DMPs)의 표현자 시작 어드레스(S_DADD0)와 동일하다. 도 20에 도시된 바와 같이, 입력 이미지(Is)에 상응하는 표현자 맵(DMPs)에 포함되는 복수의 표현자 타일들( )은 입력 이미지(Is)에 상응하는 표현자 시작 어드레스(S_DADD0= )부터 하나씩 표현자 타일 어드레스 오프셋(DOFF2)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다. 표현자 타일 어드레스 오프셋(DOFF2)은 각각의 표현자 타일에 포함되는 데이터 비트들의 개수에 상응하는 표현자 타일 사이즈에 기초하여 결정될 수 있다.
이와 같이, 열 단위 저장 순서에 따라서, 각각의 표현자 타일( )의 어드레스( )는 입력 이미지(Is)에 상응하는 표현자 시작 어드레스(S_DADD0= ) 및 표현자 타일 어드레스 오프셋(DOFF2)에 기초하여 수학식 8과 같이 결정될 수 있다.
[수학식 8]
수학식 8에서, N은 하나의 입력 이미지에 포함되는 이미지 타일들의 행 개수, 즉 하나의 표현자 맵에 포함되는 표현자 타일들의 행 개수를 나타낸다.
또한, 도 20에는 하나의 표현자 타일( )에 상응하는 복수의 표현자들( )이 도시되어 있다. 첫 번째 표현자( )의 어드레스( )는 표현자 타일( )의 시작 어드레스( )와 동일하다. 도 15에 도시된 바와 같이, 표현자 타일( )에 포함되는 복수의 표현자들( )은 표현자 타일( )의 시작 어드레스( )부터 하나씩 어드레스 오프셋(DOFF3)의 간격으로 메모리 장치에 순차적으로 저장될 수 있다.
이와 같이, 열 단위 저장 방식에 따른 어드레스들은 수학식 7 및 8과 같은 관계를 만족한다. 따라서, 도 16 및 17을 참조하여 설명한 바와 동일한 방식으로, 복수의 입력 이미지들(I0~IR)에 각각 상응하는 복수의 표현자 시작 어드레스들(S_DADD0~S_DADDR) 및 표현자 타일 어드레스 오프셋(DOFF2)에 기초하여 유사도 결정을 위한 표현자들을 독출할 수 있다.
도 21은 본 발명의 실시예들에 따른 이미지 매칭 방법에 의한 특징 점의 좌표를 나타내는 도면이다.
수학식 1을 참조하여 설명한 바와 같이, 각각의 입력 이미지(Is)에 포함되는 이미지 타일들의 행 개수(N)는 각각의 입력 이미지(Is)의 행 사이즈(SZA) 및 각각의 이미지 타일( )의 행 사이즈(SZA')에 의해 결정되고, 각각의 입력 이미지(Is)에 포함되는 이미지 타일들의 열 개수(M)는 각각의 입력 이미지(Is)의 열 사이즈(SZB) 및 각각의 이미지 타일( )의 열 사이즈(SZB')에 의해 결정될 수 있다.
일 실시예에서, 특징 점( )의 위치는 입력 이미지(Is) 내에서의 좌표(A, B)로 표현될 수도 있다. 다른 실시예에서, 특징 점( )의 위치는 이미지 타일( ) 내에서의 좌표(A', B')로 표현될 수 있다. 입력 이미지(Is) 내에서의 위치는 이미지 타일( )의 타일 행 인덱스(i) 및 타일 열 인덱스(j)에 의해 결정되기 때문에 이미지 타일( ) 내에서의 좌표(A', B') 및 입력 이미지(Is) 내에서의 좌표(A, B) 중 하나는 다른 하나로부터 수학적인 계산에 의해 결정될 수 있다. 이미지 타일( ) 내에서의 좌표(A', B')로 특징 점을 표현하는 경우에는 전술한 특징 점 맵의 사이즈를 감소할 수 있으므로, 메모리 장치로부터의 입출력 시간을 감소하여 이미지 매칭에 소요되는 시간을 더욱 감소할 수 있다.
도 22은 본 발명의 실시예들에 따른 이미지 병합 방법을 나타내는 순서도이다.
도 22를 참조하면, 복수의 입력 이미지들의 각각을 복수의 이미지 타일들로 분할하여 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생한다(S10). 매핑 정보는 전술한 바와 같이 본 발명의 실시예들에 따라서 입력 이미지를 복수의 이미지 타일들로 분할하고, 특징 점 맵 및 표현자 맵을 이용하여 효율적으로 수행될 수 있다.
상기 매핑 정보에 기초하여 상기 서로 다른 입력 이미지들 사이의 변환을 나타내는 호모그래피 행렬들을 발생한다(S20). 상기 호모그래피 행렬들에 기초하여 상기 복수의 입력 이미지들을 동기화한 동기화 이미지들을 발생한다(S30). 상기 동기화 이미지들을 병합하여 병합 이미지를 발생한다(S40). 이하, 도 23a 내지 26을 상기 매핑 정보에 기초한 병합 이미지의 발생(S20, S30, S40)의 실시예들을 설명하지만, 본 발명의 실시예들이 이에 한정되는 것은 아니다.
도 23a 내지 24d는 본 발명의 실시예들에 따른 이미지 병합 방법에 사용되는 이미지 변환의 예들을 나타내는 도면들이다.
이미지 변환은 주어진 영상에 특정 알고리즘을 적용하여 변환된 이미지를 얻어내는 것을 의미한다. 즉, 주어진 영상을 평행이동(translation)하거나 회전(rotation), 크기(scale), 시점(perspective) 등을 적용해 원하는 이미지를 얻어내는 방식이다.
이미지 변환은 도 23a 에 도시된 바와 같은 리지드 변환(Rigid Transformation), 도 23b에 도시된 바와 같은 유사 변환(Similarity Transformation), 도 23c에 도시된 바와 같은 아핀 변환(Affine Transformation), 도 24d에 도시된 바와 같은 투영 변환(Projective Transformation) 등을 포함한다.
이러한 변환을 적용하면 기존 위치를 나타내는 좌표(x, y)에 이러한 변환을 적용하면 변환된 위치(x', y')를 구할 수 있다.
도 23a의 리지드 변환은 이미지 변환의 가장 기본적인 형태로, 이미지의 크기를 고정시킨 변환이다. 즉, 평행이동 (translation)과 회전(rotation) 만을 허용한 변환이다.
도 24b의 유사 변환은 물체의 크기 변화, 즉 스케일(scale)의 변화를 추가적으로 고려한 변환이며, 이때 물체의 모양은 보존된다.
도 24c의 아핀 변환은 상기 유사 변환에 선형성을 보존하는 특징을 더한 변환이다. 따라서 직선의 평행 관계, 길이와 거리의 비 등이 보존된다.
도 24d의 투영 변환은 3D 공간에서의 이미지를 2D 공간으로 투영시킨 변환이다. 즉, 3D 공간에서 서로 다른 두 시점에서 바라본 두 개의 이미지를 서로 변환하는 방법이다. 이때 서로 다른 두 이미지의 관계를 표현한 행렬을 호모그래피(homography) 행렬 또는 단순히 호모그래피라 한다.
즉, 일반적인 투영 변환의 관계를 표현하는 식을 구하면 서로 다른 두 이미지를 변환할 수 있으며, 이때 그 관계가 호모그래피라고 불리는 변환 행렬이다.
영상 처리에서는 주로 서로 다른 시점에서 촬영한 두 개의 2D 이미지를 변환하는 것이 필요하다. 이때 요구되는 호모그래피의 크기는 3x3이다. 단, 8개의 값만 주어져도 변환이 가능한데, 이를 위해서는 변환의 기준이 되는 4개의 대응쌍이 필요하다. 다시 말해, 어느 점이 어느 점으로 대응될 것인지의 대응점 순서쌍이 4개 필요하다.
도 24는 본 발명의 실시예들에 따른 이미지 병합 방법에 사용되는 호모그래피 행렬을 설명하기 위한 도면이다.
도 24에는 두 이미지들에서의 1개의 대응쌍 X(u,v,1) 와 X'(u', v',1)에 해당하는 호모그래피 행렬(H)를 구하는 과정이 도시되어 있다. 호모그래피 행렬(H)의 성분들(h1~h9)를 구하면 호모그래피 행렬이 결정된다.
도 24의 윗부분에 도시된 바와 같은 HX=X'의 관계를 도 24의 아랫부분에 도시된 바와 같은 Ah= 0 형태로 변경하여 h 값을 구한다.
한 개의 대응쌍에 대하여 A 행렬은 은 3x9 형태이며 대응점이 n개인 경우에 A 행렬은 3nx9 형태가 된다.
도 25는 복수의 입력 이미지들 사이의 호모그래피 행렬들을 나타내는 도면이고, 도 26은 복수의 입력 이미지들의 병합 과정을 나타내는 도면이다.
도 25를 참조하면, 병합 대상이 되는 입력 이미지들이 제1 내지 제5 이미지들(I0~I4)인 경우, 도 24를 참조하여 설명한 바와 같이 서로 다른 2개의 입력 이미지들 사이의 변환에 해당하는 호모그래피 행렬들 Hij (i=0~4, j=1~4)을 구한다. Hij는 i번째 입력 이미지(Ii)의 좌표를 j번째 이미지(Ij)에 상응하는 2차원 평면에 정렬한 좌표로 변환하는 호모그래피 행렬이다. Hij 는 Hji에 역행렬이 되므로 중복되는 호모그래피 행렬들은 도시가 생략되어 있다.
이와 같이, 2개의 입력 이미지들(Ii, Ij)의 특징 점들의 매칭 정보에 기초하여 2개의 입력 이미지들(Ii, Ij) 사이의 변환을 나타내는 호모그래피 행렬(Hij)을 결정한다(도 22의 단계 S20).
도 26을 참조하면, 도 23a 내지 25를 참조하여 설명한 호모그래피 행렬들에 기초하여 복수의 입력 이미지들(I0~I3)을 동기화한 동기화 이미지들(SI0~SI2)을 발생한다(도 22의 단계 S30). 입력 이미지들(I0~I3)의 일부는 노이즈 이미지로서 제외될 수 있고, 동기화 이미지들(SI0~SI2)의 개수는 입력 이미지들(I0~I3)의 개수 이하일 수 있다.
동기화 이미지들(SI0~SI2)을 병합하여 병합 이미지(MI)를 발생한다(도 22의 단계 S40).
일 실시예에서, 동기화 이미지들(SI0~SI2)을 이용하여 이미지 스티칭을 수행하여 병합 이미지(MI)를 발생할 수 있다. 여러 이미지를 스티칭하는 과정에서 약간의 정렬 오류 또는 노출 차이로 인해 이미지 간 경계부분이 선명하게 드러나게 되는 데, 이를 제거하기 위해 블렌딩을 수행할 수 있다. 스티칭 과정에서 블렌딩 없이 이미지를 단순히 붙이거나, 중첩영역에 대한 블렌딩을 수행하여 이미지 간 경계선을 제거하는 작업이 이루어질 수 있다. 이러한 이미지 스티칭은 다수의 동기화 이미지들(SI0~SI2)을 이용하여 수행됨으로써 이미지의 부분이 겹쳐보이는 문제를 최소화하면서 정확한 병합 이미지(MI)를 얻을 수 있다.
일 실시예에서, 동기화 이미지들(SI0~SI2)을 이용하여 동적 범위가 확장된 HDR(high dynamic range)의 병합 이미지(MI)를 발생할 수 있다.
동기화 이미지들(SI0~SI2)의 병합은 다양한 방식으로 수행될 수 있으며, 이미지 스티칭(image stitching), 노이즈 감소(noise reduction), 동적 범위(dynamic range)의 변환 등에 한정되는 것은 아니다.
도 27은 본 발명의 실시예들에 따른 전자 시스템을 나타내는 블록도이다.
도 27 참조하면, 전자 시스템(2000)은 프로세서(2010), 통신부(2020), 메모리 장치(2030), 사용자 인터페이스(2040), 영상 촬상 장치(2050) 및 데이터 처리 장치(2060)를 포함하며, 전원 장치(미도시)를 더 포함할 수 있다.
프로세서(2010)는 특정 계산들 또는 태스크들과 같은 다양한 컴퓨팅 기능들을 실행할 수 있다. 통신부(2020)는 외부 장치와 통신을 수행할 수 있다. 메모리 장치(2030)는 프로세서(2010)에 의해 처리되는 데이터를 저장할 수 있다. 사용자 인터페이스(2040)는 하나 이상의 입/출력 장치를 포함할 수 있다. 상기 전원 장치는 전원을 공급할 수 있다.
영상 촬상 장치(2050) 및 데이터 처리 장치(2060)는 프로세서(2010)에 의해 제어된다. 영상 촬상 장치(2050)는 입력 이미지들을 제공하며, 예를 들어 CMOS(complementary metal oxide semiconductor) 이미지 센서, CCD(charge-coupled device) 이미지 센서 등을 포함할 수 있다. 데이터 처리 장치(2060)는 도 2의 데이터 처리 장치(20)이며, 도 1 내지 26을 참조하여 설명한 바와 같은 본 발명의 실시예들에 따른 이미지 매칭 및 이미지 병합을 수행하도록 구현될 수 있다.
이상 설명한 바와 같이, 본 발명의 실시예들에 따른 이미지 매칭 방법 및 상기 이미지 매칭 방법을 수행하는 데이터 처리 장치는 입력 이미지를 복수의 이미지 타일들로 분할하여 특징 점들의 분포 균일성을 향상함으로써 이미지 병합 성능을 향상시킬 수 있다.
또한, 본 발명의 실시예들에 따른 이미지 매칭 방법 및 상기 이미지 매칭 방법을 수행하는 데이터 처리 장치는 복수의 이미지 타일들에 상응하는 특징 점 맵 및 표현자 맵을 이용하여 이미지 매칭에 필요한 연산량 및 프로세싱 시간을 감소함으로써 이미지 병합 성능을 더욱 향상시킬 수 있다.
본 발명의 실시예들은 이미지 처리가 요구되는 장치 및 시스템에 유용하게 이용될 수 있다. 특히 본 발명의 실시예들은 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular phone), 스마트폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console), 네비게이션(navigation) 기기, 웨어러블(wearable) 기기, IoT(internet of things;) 기기, IoE(internet of everything:) 기기, e-북(e-book), VR(virtual reality) 기기, AR(augmented reality) 기기 등과 같은 전자 기기에 더욱 유용하게 적용될 수 있다. 또한, 자동차용(automotive) 카메라, 의료용 카메라 등과 같은 영상 처리가 필요한 다양한 분야에도 적용될 수 있다.
상기에서는 본 발명이 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.
Claims (10)
- 복수의 입력 이미지들의 각각에 대하여, 각각의 입력 이미지를 복수의 이미지 타일들로 분할하는 단계;
상기 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵을 발생하는 단계;
상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵을 발생하는 단계; 및
상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들에 기초하여 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생하는 단계를 포함하는 이미지 매칭 방법. - 제1 항에 있어서,
상기 특징 점 맵을 발생하는 단계는,
상기 각각의 이미지 타일에 포함되는 특징 점들의 개수를 타일 특징 점 최대 개수 이하로 제한하는 단계를 포함하는 것을 특징으로 하는 이미지 매칭 방법. - 제1 항에 있어서,
상기 각각의 입력 이미지를 복수의 이미지 타일들로 분할하는 단계는,
상기 복수의 이미지 타일들이 동일한 행 수 및 동일한 열 수에 상응하는 픽셀들을 각각 포함하도록 상기 각각의 입력 이미지를 균일하게 분할하는 단계를 포함하고,
상기 특징 점 맵을 발생하는 단계는,
상기 복수의 특징 점 타일들이 각각 특징 점 타일 사이즈에 상응하는 동일한 개수의 데이터 비트들을 포함하도록 각각의 특징 점 타일을 발생하는 단계를 포함하고,
상기 표현자 맵을 발생하는 단계는,
상기 복수의 표현자 타일들이 각각 표현자 타일 사이즈에 상응하는 동일한 개수의 데이터 비트들을 포함하도록 각각의 표현자 타일을 발생하는 단계를 포함하는 것을 특징으로 하는 이미지 매칭 방법. - 제1 항에 있어서,
특징 점들 사이의 유클리디언 거리에 관계 없이 표현자 타일들의 이차원 평면 상의 위치들에 기초하여 표현자들 사이의 유사도를 결정하고,
각각의 표현자 타일의 상기 이차원 평면 상의 위치는 타일 행 인덱스 및 타일 열 인덱스에 상응하는 것을 특징으로 하는 이미지 매칭 방법. - 제1 항에 있어서,
상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들을 메모리 장치에 저장하고,
특징 점들 사이의 유클리디언 거리에 관계 없이 상기 메모리 장치에 저장된 상기 복수의 표현자 맵들에 포함되는 표현자 타일들의 어드레스들에 기초하여 표현자들 사이의 유사도를 결정하는 것을 특징으로 하는 이미지 매칭 방법. - 제1 항에 있어서,
상기 매핑 정보를 발생하는 단계는,
상기 복수의 표현자 맵들의 하나에 해당하는 기준 표현자 맵에 포함되는 복수의 표현자 타일들 중에서 기준 표현자 타일을 결정하는 단계;
상기 복수의 표현자 맵들의 다른 하나에 해당하는 타겟 표현자 맵에 포함되는 복수의 표현자 타일들 중에서 이차원 평면 상에서 상기 기준 표현자 타일과 동일한 위치에 있는 중앙 타겟 표현자 타일을 결정하는 단계;
상기 타겟 표현자 맵에 포함되는 복수의 표현자 타일들 중에서 상기 이차원 평면 상에서 상기 중앙 타겟 표현자 타일에 인접한 주변 타겟 표현자 타일들을 결정하는 단계;
상기 기준 표현자 타일에 포함되는 기준 표현자 및 상기 중앙 타겟 표현자 타일과 상기 주변 타겟 표현자 타일들에 포함되는 타겟 표현자들 사이의 유사도들을 결정하는 단계; 및
상기 유사도들에 기초하여, 상기 타겟 표현자들에 상응하는 타겟 특징 점들 중에서 상기 기준 표현자에 상응하는 기준 특징 점에 대응하는 특징 점을 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 매칭 방법. - 제1 항에 있어서,
상기 각각의 입력 이미지에 상응하는 특징 점 시작 어드레스부터 상기 각각의 입력 이미지에 상응하는 복수의 특징 점 타일들을 하나씩 특징 점 타일 어드레스 오프셋의 간격으로 메모리 장치에 순차적으로 저장하는 단계; 및
상기 각각의 이미지에 상응하는 표현자 시작 어드레스부터 상기 복수의 표현자 타일들을 하나씩 표현자 타일 어드레스 오프셋의 간격으로 상기 복수의 특징 점 타일들의 저장 순서와 동일하게 상기 메모리 장치에 순차적으로 저장하는 단계를 더 포함하는 것을 특징으로 하는 이미지 매칭 방법. - 제7 항에 있어서,
상기 매핑 정보를 발생하는 단계는,
상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 시작 어드레스들 및 상기 표현자 타일 어드레스 오프셋에 기초하여 유사도 결정을 위한 표현자들을 독출하는 단계를 포함하는 것을 특징으로 하는 이미지 매칭 방법. - 제7 항에 있어서,
상기 매핑 정보를 발생하는 단계는,
상기 복수의 표현자 맵들의 하나에 해당하는 기준 표현자 맵에 상응하는 기준 표현자 시작 어드레스 및 상기 표현자 타일 어드레스 오프셋에 기초하여 상기 기준 표현자 맵에 포함되는 복수의 표현자 타일들 중에서 기준 표현자 타일의 기준 어드레스를 결정하는 단계;
상기 복수의 표현자 맵들의 다른 하나에 해당하는 타겟 표현자 맵에 상응하는 타겟 표현자 시작 어드레스 및 상기 표현자 타일 어드레스 오프셋에 기초하여 상기 타겟 표현자 맵에 포함되는 복수의 표현자 타일들 중에서 이차원 평면 상에서 상기 기준 표현자 타일과 동일한 위치에 있는 중앙 타겟 표현자 타일 및 상기 이차원 평면 상에서 상기 중앙 타겟 표현자 타일에 인접한 주변 타겟 표현자 타일들의 타겟 어드레스들을 결정하는 단계;
상기 기준 어드레스 및 상기 타겟 어드레스들에 기초하여 상기 메모리 장치로부터 상기 기준 표현자 타일 및 상기 중앙 타겟 표현자 타일과 상기 주변 타겟 표현자 타일들을 독출하는 단계;
상기 기준 표현자 타일에 포함되는 기준 표현자 및 상기 중앙 타겟 표현자 타일과 상기 주변 타겟 표현자 타일들에 포함되는 타겟 표현자들 사이의 유사도들을 결정하는 단계; 및
상기 유사도들에 기초하여, 상기 타겟 표현자들에 상응하는 타겟 특징 점들 중에서 상기 기준 표현자에 상응하는 기준 특징 점에 대응하는 특징 점을 결정하는 단계를 포함하는 것을 특징으로 하는 이미지 매칭 방법. - 복수의 입력 이미지들의 각각의 입력 이미지를 분할한 복수의 이미지 타일들의 각각에 대하여, 각각의 이미지 타일에 포함되는 특징 점들을 추출하여 상기 복수의 이미지 타일들에 각각 상응하는 복수의 특징 점 타일들을 포함하는 특징 점 맵을 발생하는 특징 점 맵 발생부;
상기 특징 점 맵에 포함되는 특징 점들의 각각에 대한 표현자들을 발생하여 상기 복수의 특징 점 타일들에 각각 상응하는 복수의 표현자 타일들을 포함하는 표현자 맵을 발생하는 표현자 맵 발생부; 및
상기 복수의 입력 이미지들에 각각 상응하는 복수의 표현자 맵들에 기초하여 상기 복수의 입력 이미지들의 서로 다른 입력 이미지들에 포함되는 특징 점들의 대응 관계를 나타내는 매핑 정보를 발생하는 이미지 매칭부를 포함하는 데이터 처리 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200082313A KR20220004460A (ko) | 2020-07-03 | 2020-07-03 | 이미지 병합을 위한 이미지 매칭 방법 및 이를 수행하는 데이터 처리 장치 |
US17/204,434 US11580617B2 (en) | 2020-07-03 | 2021-03-17 | Method of matching images to be merged and data processing device performing the same |
CN202110688931.5A CN113962909A (zh) | 2020-07-03 | 2021-06-21 | 匹配要合并的图像的方法和执行该方法的数据处理设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200082313A KR20220004460A (ko) | 2020-07-03 | 2020-07-03 | 이미지 병합을 위한 이미지 매칭 방법 및 이를 수행하는 데이터 처리 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220004460A true KR20220004460A (ko) | 2022-01-11 |
Family
ID=79166336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200082313A KR20220004460A (ko) | 2020-07-03 | 2020-07-03 | 이미지 병합을 위한 이미지 매칭 방법 및 이를 수행하는 데이터 처리 장치 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11580617B2 (ko) |
KR (1) | KR20220004460A (ko) |
CN (1) | CN113962909A (ko) |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4988408B2 (ja) * | 2007-04-09 | 2012-08-01 | 株式会社デンソー | 画像認識装置 |
KR101622110B1 (ko) | 2009-08-11 | 2016-05-18 | 삼성전자 주식회사 | 특징점 추출 방법 및 추출 장치, 이를 이용한 영상 기반 위치인식 방법 |
KR101633893B1 (ko) | 2010-01-15 | 2016-06-28 | 삼성전자주식회사 | 다중노출 영상을 합성하는 영상합성장치 및 방법 |
KR101256194B1 (ko) | 2010-10-26 | 2013-04-19 | 이태경 | 이종영상정합 또는 좌표동기화를 위한 참조점 추출방법 |
US9020187B2 (en) | 2011-05-27 | 2015-04-28 | Qualcomm Incorporated | Planar mapping and tracking for mobile devices |
US8385732B2 (en) | 2011-07-29 | 2013-02-26 | Hewlett-Packard Development Company, L.P. | Image stabilization |
GB2506338A (en) | 2012-07-30 | 2014-04-02 | Sony Comp Entertainment Europe | A method of localisation and mapping |
US9082008B2 (en) | 2012-12-03 | 2015-07-14 | Honeywell International Inc. | System and methods for feature selection and matching |
US9761008B2 (en) | 2014-05-08 | 2017-09-12 | The Trustees Of The University Of Pennsylvania | Methods, systems, and computer readable media for visual odometry using rigid structures identified by antipodal transform |
CN106204422B (zh) * | 2016-06-30 | 2019-06-28 | 西安电子科技大学 | 基于区块子图搜索的超大幅影像快速匹配拼接方法 |
CN106530214B (zh) * | 2016-10-21 | 2023-11-17 | 微景天下(北京)科技有限公司 | 图像拼接***和图像拼接方法 |
US20190205693A1 (en) | 2017-12-28 | 2019-07-04 | MorphoTrak, LLC | Scale-Invariant Feature Point Extraction in Edge Map |
US10839508B2 (en) * | 2019-03-21 | 2020-11-17 | Sri International | Integrated circuit image alignment and stitching |
-
2020
- 2020-07-03 KR KR1020200082313A patent/KR20220004460A/ko active Search and Examination
-
2021
- 2021-03-17 US US17/204,434 patent/US11580617B2/en active Active
- 2021-06-21 CN CN202110688931.5A patent/CN113962909A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US11580617B2 (en) | 2023-02-14 |
CN113962909A (zh) | 2022-01-21 |
US20220004799A1 (en) | 2022-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110574026B (zh) | 卷积引擎、电子设备和用于处理数据的方法 | |
CN110574025B (zh) | 用于合并交错通道数据的卷积引擎 | |
JP5940453B2 (ja) | 画像のシーケンス内のオブジェクトのリアルタイム表現のハイブリッド型追跡のための方法、コンピュータプログラム、および装置 | |
CN110637297B (zh) | 卷积引擎、数据处理方法和电子设备 | |
KR101017802B1 (ko) | 영상 왜곡 보정 | |
WO2016144578A1 (en) | Methods and systems for generating enhanced images using multi-frame processing | |
US11182908B2 (en) | Dense optical flow processing in a computer vision system | |
US11682212B2 (en) | Hierarchical data organization for dense optical flow processing in a computer vision system | |
CN111383252A (zh) | 多相机目标追踪方法、***、装置及存储介质 | |
Dürre et al. | A HOG-based real-time and multi-scale pedestrian detector demonstration system on FPGA | |
WO2022267939A1 (zh) | 图像处理方法及装置、计算机可读存储介质 | |
KR20090020452A (ko) | 디지털 이미지에서 특징점을 추출하는 방법 및 장치 | |
US11232323B2 (en) | Method of merging images and data processing device | |
US20230016350A1 (en) | Configurable keypoint descriptor generation | |
US11580617B2 (en) | Method of matching images to be merged and data processing device performing the same | |
US20190171909A1 (en) | Selecting keypoints in images using descriptor scores | |
US11810266B2 (en) | Pattern radius adjustment for keypoint descriptor generation | |
WO2022271499A1 (en) | Methods and systems for depth estimation using fisheye cameras | |
CN111161408B (zh) | 一种实现增强现实的方法及其应用、计算设备 | |
Yum et al. | A hardware architecture for the affine-invariant extension of SIFT | |
Vemulapati et al. | ORB-based SLAM accelerator on SoC FPGA | |
TWI756771B (zh) | 影像轉換方法 | |
US11494880B2 (en) | Image pyramid generation for image keypoint detection and descriptor generation | |
US20230334820A1 (en) | Image processing apparatus, image processing method, and non-transitory computer-readable storage medium | |
CN114750147B (zh) | 机器人的空间位姿确定方法、装置和机器人 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |