«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Archives
Today
Total
관리 메뉴

(1) Digital Image Processing이란? 본문

Image processing

(1) Digital Image Processing이란?

jae_walker 2022. 4. 14. 18:57

Digital image processing이란,

imagedigital computing으로 가공(processing)하는 방법론에 관한 학문이다.

 

먼저 Processing은

1) Input을

2) 어떤 system(=function, algorithm)을 통해서

3) 의도한 output을 얻는 것을 말한다.

 

1) Input : Image

Image란? 2차원 공간 상에서 position과 value로 표현되는 유의미한 시각적 정보의 집합이다.

실제 우리가 인식하는 사물이나 필름 사진 등은 연속적인 signal로 존재한다. (우리가 흔히 아날로그라고 부름) 

하지만, digital computing을 하려면 image는 digitalize되어야 한다. 

즉, image의 position과 value는 -2, -1, 0, 1, 2와 같은 integer로 표현되어야 한다.

 

2) System : Digital computing

Digital computing ? 원하는 output을 얻기 위해서 system을 나타내는 수학적/논리적 function을 보통 algorithm이라고 한다. algorithm은 수학적 지식을 바탕으로 만들어지고, programming을 통해 모델링/구현할 수 있다.

 

3) Output : ???

DIP를 통해서 얻고 싶은 data, 즉 목적이 되겠다. 예를 들어,

DIP를 사용하는 목적이 더 보기 좋은 image를 만들어 내는 것이라고 하면, enhanced image가 output이 될 것이다. (Image Enhancement)

자율주행자동차에서 차선 인식을 하는데 DIP를 사용한다고 하면, 차선 image 정보가 output이 되겠지. (Object detection)

Image를 사람, 하늘, 풀처럼 유의미한 조각으로 나누고 싶다면, segment map이 output이 되겠고. (Segmentation)

 

 

 

DIP를 하기 위해 알아야 하는 것들... (몰라도 할 수는 있다...)
DIP의 기반이 되는 학문들... 

먼저, "Digital Signal Processing"

processing하는 대상이 image로 특정되는 것 뿐이지 결국 DIP도 DSP의 한 분야이다. 

 

다만, Image의 특성에 따라 추가로 알아야할 것들이 있다.

앞서 언급한 Image의 정의를 좀 더 학문(?)적으로 정의해보면, 

2-Dimensional matrix with random value라고 할 수 있다.

 

Image는 결국 matrix이다. --> 행렬을 다루는 "선형대수학"

시각적 정보는 random*하다. --> "확률 및 랜덤 프로세스"

 

*random하다 = 어떤 원인값을 통해 결과값을 정확히 알 수 없고, 확률적인 분포를 파악해 "예측"할 수는 있다.

<--> linear하다. = 원인값을 기준으로 결과값이 반드시 1:1로 정해진다. 

 

또한, DIP를 실제 구현하고 Image에 적용해보려면, "기초 프로그래밍 지식과 언어"도 필요하다. 

OpenCV라는 영상처리 라이브러리만 있으면,

위에 말한 거 하나도 몰라도 Image processing이든 Compuer vision이든 뭐든 해볼 수 있다.

 

 

 

Comments