본문 바로가기

전생의 기억/영상처리

영상의 화질 향상 - 영상반전

반응형

인터넷, 오프라인 상에는 영상, 또는 이미지라고 말하는 이미지나 동영상과 같은 컨텐츠들이 굉장히 많이 존재하며, 이와같은 컨텐츠의 질을 향상시키는데 있어서 화질을 향상시키는 것이 좋은 컨텐츠를 만드는 필수요소입니다.

이 화질을 향상시키는 가장 단순한 방법은 영상에 있는 픽셀의 정보를 조작하는 것인데, 픽셀의 값을 조정시킴으로써 영상 전체의 밝기를 올리거나, 명암대비(=각 픽셀간의 픽셀값의 차이를 증가시킨다)를 높이거나, 영상의 감마값을 조정하는 등 여러 기초적인 방법을 이용해서 화질 개선을 달성할 수 있습니다.

이 화질 개선은 인간의 눈에 좀더 나은 결과물로 보여질 수 있으며, 컴퓨터 비전 분야에서도 화질이 좋은 컨텐츠를 입력 이미지로 사용하는 것이 더 나은 결과 이미지를 얻을 수 있다는 점에서 매우 중요합니다.


 자 그럼, 영상의 반전에 대해 알아보도록 합시다.

영상의 반전, 영어로는 Inverse 뒤집는다는 뜻입니다. [Reverse = 거꾸로]

영상을 반전시키기 위해서는 영상의 모든 픽셀 영역에 대해 값을 뒤집어야 합니다.

즉, 검은색의 픽셀값은 0이고 흰색은 255의 값을 가진다면(그레이스케일 영역 기준으로), 이를 뒤집어서 흰색은 검은색의 값인 0이 되도록, 검은색은 흰색의 값인 255가 되도록 값을 변경하는 것입니다.

3*3 크기의 이미지가 있다면, 아래의 그림과 같이

Input_Img(x,y)에서 Input_Img(1,1)=255,Input_Img(1,2) = 0, ..... ,  Input_Img(3,3) = 255의 값을 가집니다.



Input 이미지의 값을 Output 이미지처럼 변경시키기 위해서는, Input_Img(1,1)=0으로, .... , Input_Img(3,3)=0으로 값을 변경시켜주어야 합니다.

즉, Output_Img(x,y) = 255 - Input_Img(x,y) 라는 수식을 얻을 수 있습니다.


위의 공식을 C++코드로 구현하면, 실제 영상의 반전이 일어나는 것을 확인할 수 있습니다.

반응형