어도비 사의 걸작품 포토샵의 기능들 중 많이 사용하는 것들은 상당수가 프리웨어들로 대체가 가능하다.

그런데, 자유 변형(Free Transform)의 경우 효과적인 대체 프로그램을 찾지 못했다[각주:1].

 

그래서 프리웨어 이미지 편집 도구인 Paint.NET 용으로 이 플러그인을 만들어봤다.

이 플러그인을 설치한 뒤 효과 - 비틀기 메뉴 아래에서 FreeTransform... 을 선택하면 이 기능을 사용할 수 있다.

 

 

이 플러그인을 실행하면 네 개의 꼭지점과 렌더링 모드를 지정할 수 있다.

지정하는 꼭지점은 직사각형에 집어넣고 싶은 네 개의 꼭지점이고, 렌더링 모드는 화면에 표시하는 방식을 의미한다.

 

UI는 이 정도가 현재는 최선인 듯. Paint.NET에서 이 이상을 구현하기가 쉽지 않음

 

예를 들어, 아래와 같은 원본 이미지가 있을 때...

 

어디선가 줏어온 이미지

 

일단 lines only 모드에서 아래와 같이 네 개의 꼭지점을 지정한 뒤...

 

안내선의 개수는 영역의 길이에 따라 적절하게 자동으로 결정됨

 

quick and dirty with guide lines 모드에서 아래와 같은 화면을 볼 수 있다.

이 모드에선 위에서 지정한 네 개의 꼭지점을 적절한 직사각형으로 매핑시켜 변형하고, 안내선을 표시해준다.

이 때, 이미지는 거칠게[각주:2] 복사하고, 안내선을 표시한다.

 

간단해 보이지만, 자그마치 8x8 역행렬을 활용해서 구현한 Homography 알고리즘

 

변형 결과가 마음에 들면, 마지막으로 high quality result 모드를 선택하고 확인 버튼을 클릭하면 된다.

이 때는 Mitchell-Netravali Filter를 적절히[각주:3] 적용해서 자연스럽게 보간된 이미지를 보여준다.[각주:4]

 

 

이 플러그인은 아래 링크에서 다운받을 수 있으며, 압축을 푼 뒤 Paint.NET 설치 폴더 아래의 Effects 폴더에 저장하면 설치된다.

통상적인 위치는 C:\Program Files\Paint.NET\Effects.

 

FreeTransform v2.5.zip
0.01MB

 

▲ 히스토리

2020.2.3: v2.4

- 종횡비를 추가로 지정할 수 있는 옵션 추가

- 안정성 보강

 

2020.2.5: v2.5

- 성능 개선: IsNAN(), IsInfinity() 고속화

- 오류 수정: 썸네일만 선택영역으로 표시되던 오류 수정

  (범위 선택시 전체가 아니라 선택영역을 기준으로 하도록 수정)

 

 

  1. 있는데 내가 못 찾은 것일 수도 있고... [본문으로]
  2. 아무런 리샘플링 없이 Nearest Neighbourhood 모드로 픽셀을 복사함... [본문으로]
  3. 이 표현을 사용한 이유는, 통상적인 리샘플링과는 달리 확대/축소 배율을 계산하는 게 쉽지 않아 다소 변형했기 때문 [본문으로]
  4. 자체 필터를 제거하고 Paint.NET 내장 Bilinear로 교체 [본문으로]

+ Recent posts