개발자 끄적끄적

영상처리 개요 본문

영상처리

영상처리 개요

햏치 2023. 3. 9. 23:57

<영상처리>
- 1 : 인간의 인식을 위해 그림정보를 개선하거나
- 2 : 자동화 기계의 인식을 위해 보다 적절하게 표현하기 위해 영상의 성질을 변화시키는 것을 의미한다


<조건 1> - 인간의 인식을 위해 그림정보를 개선
1. 샤프닝 처리(Sharpening)
- 보다 샤프(Sharp)하게 나타내기 위해 영상의 에지를 강조한다
  에지의 샤프닝처리는 프린트를 하는데 필수적인 요소이다
  영상을 프린트하는데 최적으로 하기 위해 보통 샤프닝 처리를 한다

2. 잡음 제거
- 영상에서 잡음을 제거한다
- 잡음은 영상에서 불규칙한 오차를 유발하게된다
- 잡음은 데이터전송에 매우 공통적인 문제가 야기되는데, 데이터가 모든 종류의 전자부품들을 통해 전송되고,
- 이 과정에서 원하지 않는 결과를 주게 된다
  잡음은 여러 가지 다른 형태를 가지고, 이들 각 잡음을 제거하기 위해 다른 방법의 적용을 요구한다
- 검은점 : 화소값 0 -> 검은점을 중심으로 block을 친 다음 그 중 가장 큰 데이터를 선택 -> 검은점이 없어진다
- 하얀점 : 화소값 255 -> 하얀점을 중심으로 block을 친 다음 그 중 가장 작은 데이터를 선택 -> 하얀점이 없어진다

3. 블러링(Bluring)
- 영상에서 움직임의 블러링을 제거한다
- 움직임 블러링은 카메라의 셔터스피드가 물체의 스피드보다 느린 경우에 발생된다



<조건2> - 자동화 기계의 인식을 위해 보다 적절하게 표현하기 위해 영상의 성질을 변화
1. 엣지 검출
- 영상의 엣지를 구한다. 이것은 영상에서 물체의 계측이 필요하다
  *계측 : 물건의 무게, 길이, 부피 등을 재어 계산하는 것(=계량)
- 일단 엣지가 검출되면 물체들의 불포 및 그들 내부의 면적을 계측할 수 있다
- 에지강조 과정에서 첫 단계로서 에지검출 알고리즘을 적용한다 
  에지검출 결과로부터 그 에지들을 명확히 하기 위해 원 영상을 약간 강조할 필요가 있다

2. 블러링(Bluring)
- 영상의 섬세함을 제거한다
- 계측이나 카운팅(물체의 수)을 목적으로 영상의 섬세한 모든 부분에는 관심이 없다
  예를 들면 기계가 제조라인에서 어떤 항목을 검사할 때 단지 그 모양, 사이즈 혹은 칼라 등에만
  관심의 대상으로 하는 경우이다
  이러한 경우, 영상을 단순화하기를 원한다
  즉, 남은 것은 영상의 대략적인 구조이다
  불필요한 섬세함을 없애고 필요한 물체의 사이즈 및 모양으로 계측할 수 있다


<영상의 획득과 샘플링>
- 샘플링(Sampling) : 연속적인 함수의 이산화 처리
  - CCD 카메라 : Digital output으로 CCD 배열(CCD Array)로 영상을 획득할 수 있다
  *CCD 카메라 : 디지털 카메라의 하나로, 전자 결합 소자(CCD)를 사용하여 영상을 전기 신호로 변환함으로써
   디지털 데이터로 플래시 메모리 등의 기억 매체에 저장하는 장치


<광의 이용>
- 평판형 스캐너 
- 전자기파의 스펙트럼 : 가시광선(VISIBLE LIGH - Blue, Green, Red)
- X선 토모그라피 : CAT(Computer Axial Tomography)
  *X선 토모그라피 : 단측 촬영법을 말하며, 처음 시도된 것은 X-선 사진이었으며 의학방면의 X-선 컴퓨터 단층촬영법으로
   대표되는 불가시 정보를 영상화하는 일련의 기술의 총칭을 가르킨다


<몇 가지의 응용>
1. 의료 분야
  - X선, MRI 혹은 CAT 스캔으로부터 얻어지는 검사 및 해석
  - 세포영상 및 염색체 핵의 형상 분석

2. 농업 분야
  - 과일 및 채소의 검사 
    - 상품의 품질과 크기 무게 등을 선별
  - Smart Farming

3. 산업 분야
  - 제조라인에서의 항목들의 자동 검사
  - 종이의 샘플 검사

4. 법률 시행 분야
  - 지문 해석
  - 속도 위반용 카메라 영상의 샤프닝 혹은 블러링 제거


<영상처리의 분류>
1. 영상의 강조
  - 초점이 맞지 않은 영상의 샤프닝 혹은 블러링 제거
  - 에지를 뚜렷하게 함
  - 영상의 대비를 개선하거나 영상을 밝게 한다
  - 잡음 제거

2. 영상의 복원
  - 선형적 움직임에 대한 블러링의 제거
  - 광학적 일그러짐의 제거(보상)
  - 주기적 간섭의 제거

3. 영상의 분할
  - 영상에서 라인, 원 혹은 특정한 모양을 구한다
  - 항공사진에서 차, 나무, 건물 혹은 도로를 확인한다



<영상처리의 과정>
1. 영상 획득
  - 카메라 혹은 스캐너를 이용하여 얻을 수 있다
 
2. 전처리(Preprocessing)
  - 이것은 핵심적인 영상처리를 하기 전에 처리되는 단계이다

3. 영역분할
  - 대상 물체만을 포함하는 부분의 영상을 추출한다

4. 표현 및 묘사
  - 물체들(문자들) 사이에 차이를 나타내는 특정한 특징들을 추출한다

5. 인식 및 판단
  - 앞 단계에서 묘사된 사항들에 라벨을 부여하고 그 라벨들의 의미를 부여하는 것
  - 특정한 물체(숫자)를 확인하고 인식한다



<디지털 영상의 형태>
1. 이진 영상(0, 1으로 이루어진 영상 즉, black and white 색깔만 존재)
- 화소 당 1bit만 필요하고 비트수가 적기때문에 데이터를 저장하기에 굉장히 효율적이다
- ex)책, 지문인식, 건축의 도면 등 
  - 512 * 512 * 1 = 252,144
                      = 32768 bytes
                      = 32.768 Kb
                      = 약 0.033 Mb

2. 그레이 스케일 영상(Gray Scale)
- 일반적인 대부분의 영상처리는 그레이 스케일 도메인에서 처리(칼라영상은 비트수가 많기 때문에 process 시간이 많이 걸린다)
- 채널이 1개로만 이루어져있다(0(블랙에 가까운)~255(white에 가까운))
  - 512 * 512 * 1 = 252,144 bytes
                      = 262.14 Kb
                      = 약 0.262 Mb

3. 천연 칼라 혹은 RGB 영상
- 채널(Channel)이 3개로 이루어져있다(Red(8bit : 0~255), Green(8bit : 0~255), Blue(8bit : 0~255))
  - 512 * 512 * 3 = 786,432 bytes
                      = 768.43 Kb
                      = 약 0.786 Mb

4. 인덱스화 영상
- 칼라가 저장되있는 주소값(Indices)를 갖는다
- 인덱스화 영상을 사용하는 이유 : True Color Level(즉, 우리가 칼라를 보고 알 수 있는 레벨)이 너무 많기때문에 
  제일 많이 사용하는 칼라를 256개만 뽑아내어 데이터 사용량을 줄이기 위해 사용한다


<영상의 인지(Perception)>
1. 영상을 눈으로 획득하고

2. 뇌에 있는 시각신경으로 영상을 인식하고 판단한다
  - 명암의 관측은 그 배경에 따라 변화한다
  - 연속적으로 변화하는 그레이 레벨(Gray Level)에 대하여 실제로는 존재하지 않는 막대(Bar)모양을 볼 수 있게 된다

3. 인간의 시각시스템은 서로 다른 밝기의 경계영역 주위에서 오버슈트 혹은 언더슈트를 느끼는 경향이 있다
*오버슈트(Overshoot)
- 반응값이 안정 상태로부터 감소하기 전에 나타나는 미세한 증가 또는 반응값의 변화(증가) 후 안정 상태에 이르기 전에
  나타나는 일시적인 초과 반응 현상

*언더슈트(Undershoot)
- 반응값이 안정 상태로부터 증가하기 전에 나타나는 미세한 감소 또는 반응값의 변화(감소) 후 안정 상태에 이르기 전에
  나타나는 일시적인 감소 현상


<Digital Art Intensity(화소 데이터의 값의 크기) Transformations>
- Posterizing
  - reduces the number of gray levels in an images 

- Thresholding(인계값을 기준으로 영상처리)
  - results when number of gray levels is reduced to 2

- A bounced threshold(특정한 영역에서만 threshold 처리)
  - reduces the thresholding to a limited range and treats the other input pixels as null transformation


<Intensity transformations>
- Null(input, output data를 같게 처리)
- Negative(아날로그형 방식)
- Contrest(조소) Strech(확장) -> input data의 영역은 좁고 output data 영역이 넓게 처리

'영상처리' 카테고리의 다른 글

영상의 디스플레이  (1) 2023.03.16
영상과 Matlab  (0) 2023.03.10
영상처리 기본  (0) 2023.03.08