어떤 이미지를 불러왔을때, 이 이미지가 가로로 길거나 세로로 긴 경우가 있습니다. 일반적으로 리사이즈를 이용하여 짜부러트리지만 그러면 이미지가 예쁘지 않지요. 그래서 가로/세로 중 짧은 축을 중심으로 리사이징 하는 방법과 패딩을 넣는 방법등이 사용됩니다. 여기서는 가로세로 짧은 축을 중심으로 리사이즈 하는 방법에 대해서 연구해 보았습니다.

 

짧은 축으로 리사이즈


1) 원본 이미지를 CV 로 읽어서 BGR 채널 순서를 RGB 로 바꿉니다.

2) 이미지의 Shape 중 0번째와 1번째, 즉 가로와 세로값을 비교하여 가장 작은 값을 구합니다.

3) 2번에서 구한 값을 가로 세로 각각에서 빼고 2로 나눕니다.

4) 1번에서 만들어진 이미지 array 를 재가공합니다.

이 결과는 왼쪽 아래를 기준으로 재배열하였지만, 코드를 약간만 손본다면 이미지의 중심을 기준으로 리사이징도 가능합니다. 어쨋든 불러온 이미지는 픽셀의 값들이 저장된 array 에 불과하니, 이를 잘 컨트롤 한다면 원하는 조작을 쉽게 가할 수 있습니다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기