본문 바로가기

Computer Vision/이미지처리

포토샵 Blur의 구현(수정)


Mophology(Blur) 는 다른알고리즘으로 조금씩다르지만
기본적인 Blur 기능은 간단한 원리이다

픽셀의 그룹의 평균값을 다시 재배정한다.
아례 예는 9 x 9의 사이즈 mask(그룹)으로 알고리즘을 보여준다.

/* 9x9 마스크이므로 이미지의 가로와 세로는 9로 나누어 떨어저야한다. */
/* 변수처리해주어 애초에 image->width/40 이런식으로 이미지 크기에따른 동적 마스크도 가능 */

for(i = 0 to image->width;  i++)
  for( j = 0 to image->height; j++)
   {
     for(w=0 to 9)
     {
        for(h=0 to 9)
        {
          sum += pixelData ; //9 x 9 공간의 모든 픽셀값을 더함
         }
     }
        pixelData = sum/81; //평균값
    }
  }







더 넓은영역의 평균값으로 덮어줬을경우 더 흐릿흐릿한 효과가 나온다.
4 x 4 정도의 크기면 큰 차이가 없다.
9 x 9 정도의 mask를 사용하면 대략 흐릿한 안경을  쓰고 본 정도가 나온다.



평균값 Blur 효과

 

 

 


이전에 올렸던 내용에 다소 착오가 있어 수정하였습니다.

블러 알고리즘에서 평균값을 구한뒤에 다시 모든 픽셀에 나누어주었는데 이는 잘못된 방식입니다.

평균값은 현재의 픽셀 즉 마스크의 중심의 값만을 결정합니다. 또한 마스크를 마스크 크기만큼 움직이게 하였는데 이 또한 잘못된 것입니다.

마스크는 1씩 움직이며 중복되어서 돕니다. 어쨌거나 비스무리하게 결과는 나왔네요^^;;

내용은 수정하였습니다.