ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Intensity Transformation
    컴공지식/컴퓨터비전 2024. 9. 3. 12:34

    Intensity Transformation이미지의 각 픽셀 값(밝기)을 어떤 수학적인 함수를 이용해서 다른 값으로 변환하는 과정이다.

    입력 밝기 값이 r일 때 이 값을 어떤 함수를 이용해 출력 밝기 값 s 로 바꿀 수 있다.

    이걸 이용해서 이미지의 밝기를 조정하거나 대비를 향상시킬 수 있다.

     

    Image Negatives에 대해 알아보자

    원본 이미지의 밝기 값을 반전시키는 거다.

    예를 들어, 밝은 부분은 어둡게, 어두운 부분은 밝게 바꾸는 거다.

    공식은 s = L - 1 - r 이다.

    r는 입력 이미지의 밝기 값이다. 즉, 원래 이미지에서 각 픽셀의 밝기 값

    s는 변환된 결과 이미지의 밝기 값이다.

    L은 이미지의 밝기 레벨의 최대값이다. 만약 밝기 값의 범위가 0부터 255라면, L - 1은 255가 된다.

     

     

     

    Log Transformation에 대해 알아보자

    s = c * log(1 + r) 에 따라 입력 r을 변환하여 출력 s를 생성한다.

    저조도 영역을 넓은 범위로 맵핑하여 어두운 부분의 명암비를 증가시킨다.

    밝은 영역은 상대적으로 덜 확장된다.

     

     

    Gamma Transformation에 대해 알아보자

    이 변환은 s = c * r ^ γ 라는 공식을 사용한다.

    는 입력 이미지의 밝기 값

    는 변환된 출력 이미지의 밝기 값

    는 상수값, 그리고 γ는 감마라고 불리는 값이다.

    감마 값 γ가 변환의 핵심인데, 이 값에 따라 이미지의 밝기와 대비가 어떻게 조정될지 결정된다.

    감마가 1보다 크면 밝은 부분은 더 밝아지고 어두운 부분은 더 어둡게 보인다.

    즉, 어두운 영역의 디테일이 강조되는 대신, 밝은 부분이 더 부각된다.

    반대로 1보다 작으면 어두운 부분이 더 밝게 보이고, 밝은 부분은 덜 강조된다.

    즉, 전체적으로 이미지가 더 밝아져서 어두운 영역의 디테일이 드러나는 거다.

    여기서 중요한 건, 감마 값에 따라 어두운 픽셀들이 얼마나 더 뚜렷해지거나 덜 뚜렷해질지가 결정된다는 거다.

    감마 값이 만약 1이면 이미지의 밝기는 변하지 않는다.

     

    아무튼.. 이미지가 밝으면 감마 값을 1보다 크게.. 이미지가 어두우면 감마 값을 1보다 작게 해보자

     

     

    구간별 선형 변환이란 무엇일까?

    이미지의 밝기 값을 구간별로 나눠서 각 구간에 대해 다른 선형 변환을 적용하는 방법이다.

    즉, 이미지의 특정 밝기 구간을 강조하거나 줄이고 싶을 때 사용하는 방법이다.

    예를 들어, 어두운 부분을 더 밝게 하고 싶다면 그 부분에 대한 변환 함수를 조정하면 되는 거다.

     

     

    Intensity Transformation의 여러 기법은 다음 사진을 통해 쉽게 이해할 수 있다.

    네거티브 변환은 원래 어두웠던 부분은 밝게, 밝았던 부분은 어둡게하고

    로그 변환은 밝은 부분이 더 강조되고, 어두운 부분의 디테일이 더 잘 보이게하고

    여기에서의  감마 변환은 원본보다 더 밝은 느낌이 나니까, 아마 감마 값이 1보다 작을 것이다.

    '컴공지식 > 컴퓨터비전' 카테고리의 다른 글

    네거티브 변환(Negative Transformation) 구현  (0) 2024.09.06
    Pixel Access  (0) 2024.09.06
    imread 함수  (0) 2024.08.31
    픽셀의 값이 바뀐다는 건 뭘까?  (0) 2024.08.31
    setTo 함수  (0) 2024.08.31
Designed by Tistory.