인지(Cognition)의 중요성 컴퓨터의 시각(Vision) 컴퓨터가 직접 자신에 필요한 사항을 감각기를 사용하여 획득(인간이 정보를 특정의 표현기법에 맞게 입력하는 것은 쉽지 않다) 대화(컴퓨터와 인간의 상호작용)의 효율을 향상 키보드 없이 컴퓨터와의 인터페이스 컴퓨터의 시각(Vision) 방대한 정보를 정확하고 빠르게 획득 인공적인 시각 : 컴퓨터와 카메라 + 영상 처리용 하드웨어, 소프트웨어 인간의 시각 : 두뇌와 눈 및 시신경 + 시각신호를 이해하는 지식과 경험, 추론 능력 카메라를 통해 획득한 영상을 처리하고 피사체들의 특성과 상대적 관계를 이해하여 시스템의 지능적 동작을 위해 사용
Computer Vision 정의 참조 사이트: CMU의 컴퓨터 시각 홈페이지 ‘영상을 해석하여 인간이 얻은 것과 비슷한 결과를 얻기 위한 기술’ ‘영상 내의 물체를 명확하고 의미 있게 묘사하는 기술’ 분야에 따라 다양하게 해석 (cf. 영상신호처리: 영상 대 영상 변환중심, 신호 자체의 처리, 활용) 참조 사이트: CMU의 컴퓨터 시각 홈페이지 http://www.cs.cmu.edu/~cil/vision.html
영상의 획득(카메라 입력+표본화, 양자화) 카메라 빛이 카메라로 입사 변환기 2차원 명암 배열로 대응 영상센서 특성 가격과 시장현황 CCD Charge Coupled Device - 현재 로봇시각용으로 가장 널리 사용 - 광전소자배열의 라인별 출력 - 일반적으로 낮은 가격 - 수많은 제조자와 공급자가 있음 CID Charge Injection Device - 블루밍에 대한 면역성이 큼 - 광전 소자 배열의 특정부분만 읽는 것이 가능 - 고가임 - 제조자와 공급자가 제한적임 CMOS Complementary Metal Oxide Semiconductor - 주로 통신용 카메라에서 채용 - 메모리가 아닌 영상센서로서의 역할과 기능이 급격히 증대 - 저가로 고해상도 실현이 가능 - 전반적으로는 성능이 비교적 낮은 편이나, 근래 CCD수준과 동등한 제품들이 출시 - 급격히 시장이 커지고 있음
표본화(Sampling), 양자화(Quantization) 영상의 해상도 : 비디콘 카메라 : 출력 파형을 얼마나 조밀하게 표본화 하느냐? CCD 카메라 : CCD 요소 배열에 의해 결정 아날로그 영상신호 Sample & Hold A/D 변환 디지털 신호 표본화 양자화 각 화소의 값의 크기 예) 256 단계 어떤 시간 간격으로 신호의 표본을 취하는 것
Data stored in computer 95 98 96 100 103 100 96 74 75 73 67 82 73 81 59 54 47 56 81 105 94 75 48 46 67 69 64 84 94 87 77 69 70 87 84 64 64 67 62 57 59 57 54 50 44 50 53 60 55 56 47 43 47 48 48 56 80 72 71 60 52 59 64 56 54 57 53 50 56 49 50 53 51 53 53 50 49 45 43 45 43 41 40 44 67 63 58 53 51 54 52 51 52 52 49 50 47 49 48 46 50 59 48 56 57 54 65 44 46 40 38 44 55 57 53 50 53 52 52 58 51 47 50 52 46 48 46 47 44 51 55 63 84 71 55 51 46 40 46 39 50 47 48 53 53 51 53 55 51 53 45 44 42 47 46 47 48 79 66 98 119 111 92 70 57 46 42 39 48 52 47 48 48 47 55 47 51 48 46 44 46 47 44 50 56 70 90 138 162 150 142 104 78 56 42 41 49 48 49 48 53 53 47 43 54 49 50 40 46 48 76 62 69 94 128 162 193 192 175 149 119 98 59 42 42 51 53 61 77 67 43 47 62 60 45 39 36 40 88 87 65 86 121 174 202 204 191 176 163 154 97 69 44 51 65 82 90 81 50 60 80 79 48 38 36 39 56 90 65 50 72 163 204 204 199 192 192 185 139 107 52 56 70 92 103 90 50 57 94 93 76 48 41 43 69 112 77 56 66 157 204 204 198 198 198 193 172 144 47 66 71 95 115 107 71 52 92 98 90 72 66 66 90 108 74 53 87 177 207 204 204 206 203 200 191 171 45 69 74 93 117 121 99 67 58 84 98 86 86 91 83 72 57 66 126 197 209 206 208 210 205 206 200 182 51 69 83 90 108 127 115 88 59 60 79 87 90 80 77 55 65 113 173 207 211 210 211 211 205 206 202 182 43 51 68 92 105 114 125 113 89 62 57 54 61 58 65 77 107 160 198 208 206 208 207 209 202 200 192 176 47 47 73 99 113 112 117 120 113 95 82 63 66 75 88 127 158 188 202 203 202 202 206 204 198 195 188 163 67 67 82 99 115 119 119 124 132 120 108 101 102 116 137 163 186 197 198 202 205 207 209 207 202 198 176 151 95 91 93 95 94 110 119 130 139 141 131 133 138 147 158 182 187 193 197 199 203 206 209 206 199 182 158 144 116 107 99 105 83 75 113 125 135 138 146 149 157 157 159 168 173 176 187 187 193 196 193 185 175 167 170 155 129 112 109 114 105 108 120 114 111 116 133 133 143 151 155 151 158 169 167 172 178 178 170 177 180 187 189 177 134 120 118 125 126 127 126 108 109 107 124 111 96 122 133 136 146 150 145 147 167 160 141 159 162 164 175 172 137 134 132 136 138 131 122 109 104 119 125 100 89 118 129 130 132 127 105 106 128 115 101 127 159 163 168 167 143 140 144 141 142 133 129 109 119 128 122 110 92 128 128 137 134 139 113 110 128 123 102 125 166 152 147 156 144 144 150 149 148 142 131 119 129 129 123 113 110 134 127 136 138 143 123 108 134 138 129 134 166 146 146 151 140 143 147 150 151 144 132 131 140 137 130 124 126 132 127 136 136 133 133 119 140 149 142 144 160 153 153 150 Data stored in computer Digital Image
영상의 해상도 (표본화) 256x256 128x128 64x64 32x32
영상의 깊이 해상도 (양자화) 256 단계 16 단계 4 단계 2 단계
영상의 기초적 처리 잡음의 제거 평활화(Smoothing) : 주변 화소들과 크게 틀린 화소의 밝기 값을 주변의 것들과 비슷하게 만들어 주는 것 8이웃(8-neighborhood) 화소 : 어떤 화소에 대해 주변 화소의 범위를 팔방의 인접 화소들만 고려한 것 3X3 mask를 많이 사용하지만 응용영역에 따라 그 이상도 적용 평균 마스크(averaging mask) 9개의 화소들의 합 / 9 중심 화소의 값과 대체 전체적인 선명성을 저하 중간값 여과기(median filter) : Mask가 적용되는 영역 내의 화소값들을 sorting하여 중간 순위의 값을 중심 화소의 값과 대체 임펄스 형태의 잡음을 저하시키는 데 탁월 sorting에 많은 처리시간 소요
평활화 예 14 10 9 10 46 1 Averaging Mask 10 Median Filter
평활화 창을 Lena 영상에 적용한 결과 전반적으로 잡음은 제거되었지만 몽롱화(blurring)가 생기는 것에 주목하라 (예제 10.3 참조)
경계 검출(Edge Detection) 경계 검출 마스크 사용 (그림 10.13 참조) 영상은 빛의 분포로 구성되므로 화소값이 급격히 변화하는 부분은 명암이 다른 물체나 면이 시작되는 부분, 즉 경계라 한다. 이웃 하는 화소들 사이의 밝기 변화를 계산하여 임의의 임계치 이상이면 경계로 판단 경계 검출 마스크 사용 (그림 10.13 참조) Prewitt mask : 2차원 영상에서 여러 가지 방향의 경계를 검출할 수 있는 마스크 Sobel mask : 경계 검출 시 약간의 가중치를 준 것 경계 검출용으로 널리 사용 마스크 사용의 장단점 뚜렷하지 못한 경계에서 잡음에 민감 간단, 프로그래밍 용이, 빠른 계산
경계검출의 예 (문) 다음 영상 데이터에서 다음과 같이 마스크를 적용한 부분은 경계에 속한다고 결론내릴 수 있을까? 단 Prewitt 마스크를 사용하고, 판정을 위한 임계치는 100이라고 하자. 46 47 44 50 56 70 90 138 162 150 142 104 46 48 76 62 69 94 128 162 193 192 175 149 36 40 88 87 65 86 121 174 201 204 191 176 36 39 56 90 65 50 72 163 204 204 199 192 35 43 69 112 77 56 61 154 201 204 198 198 66 66 90 108 74 53 87 177 207 204 204 206 56 91 83 72 57 66 126 197 209 206 208 210 (답) 수평경계에 대해서는 마스크 적용의 결과가 (121-61)+(174-154)+(201-201)=80<임계치 이지만, 사선으로는 192와 292가 모두 임계치보다 크고, 수직으로도 352로 임계치보다 크므로 마스크가 적용된 결과는 ‘경계이다’라는 결과에 도달한다.
경계검출의 예: Pentagon 영상
영상의 이진화 카메라로부터 얻어진 영상의 밝기값을 임계치 기준으로 2개의 집합으로 구분 물체(object)와 배경(background) 구분 용이 히스토그램 (histogram) 명암영상 (gray image) 이진영상 (binary image)
실제 영상에서는 어려움 영역 분할 후, 영역별 임계치 조정등의 방법 사용할 수 있지만 여전히 완전한 결과를 얻기는 어려움 이진화의 방법 b(x, y) = 1 if g(x, y) > threshold 0 otherwise (0 x N-1, 0 y M-1) N x M의 배열에서 임의의 좌표 (x, y)에 대해 g(x, y) : 화소의 밝기 b(x, y) : 이진화 작업후의 화소값 이진 영상 : 화소가 0 혹은 1의 값만을 가지므로, 표현이 간단하고, 기억용량의 수요가 적고, 실시간 처리에 유리 예) 3비트 화소값 (교재 그림 10.14 참조) 히스토그램에서 3 또는 4값이 임계치가 될 수 있음 참조) 경계검출의 결과도 이진 영상임에 주목 (예: 펜타곤 영상의 경우 입력은 명암영상이었지만 결과는 경계와 경계가 아닌 부분을 이진으로 표현한 영상이 되었음) 실제 영상에서는 어려움 영역 분할 후, 영역별 임계치 조정등의 방법 사용할 수 있지만 여전히 완전한 결과를 얻기는 어려움
영역 분할(Region Segmentation) 비슷한 특징을 가지는 이웃 화소들을 하나의 영역으로 묶는 것 영상 내의 피사체를 배경과 분리 피사체 내의 면이나 특징있는 부분으로 분리 영역 확장법(region growing) : 하나의 화소로부터 시작하여 비슷한 특성을 가지는 이웃 화소들을 같은 영역으로 통합 다른 영역에 속하는 화소들과 구분되는 번호를 주는 labeling 필요 영역 분할법(region splitting) : 전체 영상을 하나의 영역으로 둔 후, 이질적인 화소들로 새로운 영역을 형성시키며 영상을 나누는 것 분할된 영상의 예
영역 확장법의 예 1 2 3 20 21 19 54 56 22 50 53 4 51 17 5 6 23 1 1 1 1 1
영역의 Labeling Haralick의 알고리즘 (그림 10.18) 1단계. 모든 화소들에 다른 라벨들을 지정 2단계. top-down 단계로 모든 화소들에 대해 자신과 이웃화소들의 라벨들 중 가장 작은 값으로 자신의 라벨을 대치: 상→하, 좌→우 3단계. bottom-up 단계로 하→상, 우→좌로 앞 단계의 작업을 진행 4단계. 더이상 라벨의 변화가 일어나지 않을 때까지 2와 3단계를 반복한다.
특징의 추출(Feature Extraction) 기하학적 특성 영상에서 물체를 인식하는데 유용한 특징들 평균 밝기값 : 특정 영역의 화소값들의 평균값 최대, 최소 밝기값 : 동일 영역 내에서 최대 화소값, 최소 화소값 면적 : 특정 영역에 속하는 화소의 개수로 정의 둘레 : 해당 영역에 외접하는 화소들의 총 개수로 구하는 것 직경 : 물체의 경계에 존재하며 상호간에 가장 멀리 떨어져 있는 두 화소 사이의 거리 얇기 : (둘레)2 / 면적, 또는 직경 / 면적 등의 특징 사용 무게중심 : 물체의 영역에서 화소들의 x좌표 평균값, y좌표 평균값 형태비 : 물체 영역의 길이/폭 을 말하는 것. 두가지 형태비 모멘트 : 무게 중심 좌표에서 의미있는 방향의 특징을 계산 물체 둘레의 굴곡도 물체내의 구멍(hole) 방향 코드(chain code)
형태의 인식(Recognition) 영상내의 특정의 물체 찾기 또는 그 물체가 무엇인지 알아내는 작업 영상내의 특정의 물체 찾기 또는 그 물체가 무엇인지 알아내는 작업 대상의 원형과 매칭 (template matching) 확률적 기법 (Bayesian theorem) 인공 신경회로망 이용 (neural network) 원형 매칭(template matching) 물체의 영상이나 처리된 결과를 미리 저장된 표준 모델, 즉 원형과 비교하여 대상을 인식하는 방법 고정된 카메라로 물체 분류 카메라 각도, 거리가 가변이면 오인식 가능성 증대 (그림 10.22) 문자의 인식과 같이 대상이 2차원 평면에 존재하고 크기나 종류의 가변성이 제한된 경우 유용한 기법임
2. 세포의 원형 1.원영상(현미경) 3.세포의 인식
확률적 기법에 의한 인식 Bayes의 정리 사용 물체에서 얻어지는 임의의 특징 x 어떤 물체가 w1에서 wn 패턴 중에서 임의의 wk 로 인식될 확률 P(wk) 특징 x가 주어졌을 때, 패턴 wk 로 인식될 확률 P(wk|x) wk 패턴에 속하는 물체가 특징 x를 가질 확률 P(x|wk) 막연한 통계 : 영상 내에 나타날 수 있을 것으로 예측되는 모든 물체들은 모두 1/n의 가능성 물체의 특징들에 관계없이 항상 동일한 인식은 무리 영상내의 물체의 임의의 특징 x의 측정치 존재 + P(x|wk)를 알 경우 측정치 x로부터 인식될 수 있는 어떤 물체의 확률은 두 물체 w1과 w2에서 Decide w1 if P(x|w1) P(w1) > P(x| w2) P(w2), otherwise decide w2
3D vision 3D(x,y,z) -> 2D(I,j) (x,y,z) (i,j) j z y i 공간 평면 x
3차원 시각 (카메라 : 3차원 2차원) 3차원 복원은 많은 정보 필요 사람은 두 눈 사용 두 개 이상의 카메라 영상으로부터 3차원 정보획득 스테레오 시각(stereo vision) 또는 양안시 기법 B간격으로 나란히 배치된 두 대의 카메라 (그림 10.24) 3차원 공간의 한 점 w는 각 카메라 영상 pn(xn, yn)으로 투영 카메라 영상 좌표계 + 광학축 Zn 가정 w는 각 카메라 좌표계에서 wn(Xn, Yn, Zn)로 표현 카메라로 입사되는 광선은 λ거리의 렌즈 통과(바늘 구멍) 스테레오 매칭 : 두 카메라 영상에서 대상의 같은 지점 찾기 매우 어렵고 많은 처리시간 소요 (영역기반, 특징기반)
스테레오에 의한 3차원 시각의 절차 좌 카메라 보정 우 카메라 보정 좌 영상 획득 우 영상 획득 좌우 영상의 정합 3차원 좌표 계산
스테레오 영상의 정합(matching)
스테레오 시각에 의한 거리 지도 (range map)
스테레오 시각에 의한 3차원 구조 회복
다면체 표현과 해석 일반적인 3차원 영상 해석의 어려움 간단 모델 사용(구조화된 환경, 박스 영상 가정) + + + + - - 평면에 직선으로만 표현 인간은 쉽게 3차원 구조 이해 물체의 면을 인식하기 꼭지점 형태에 의한 면의 연결 방식 + + + - - + +
Hot Issues in Current Computer Vision Robot Vision 인식 (문자, 지문, 홍채, 얼굴) 손동작 (Hand gesture, Sign language) 감시 및 관측 HCI 가상현실 추적