※ interpolation (보간법)
- pixel과 pixel사이를 채워주는 것을 의미.
• 지난 시간, image를 "number"와 "array", "information"의 관점에서 보았다.
• 이번 시간에는 image는 space 즉, 공간이라는 관점에서 보도록 하자.
이때 공간을 표현하기 위해서는 연속성이 중요한데, pixel은 discrete한 데이터이다.
우리가 배운 내용중 continuous한 데이터가 무엇이 있을까?
https://chan4im.tistory.com/74
처음 배웠던 vector를 이용하면 우리는 image를 소수점 단위로 이동시킬 수 있다.
즉, interpolation을 위해 vector가 필요하며 이를 위해 pixel을 vector로 근사시킬 수 있다.
이를 vectorize 즉, 벡터화 시키는 것이라 말한다.
vectorize: 픽셀을 벡터화 시키는 것
rasterize: 벡터를 픽셀화 시키는 것
🤔 Bilinear interpolation
- linear interpolation을 2번한다는 의미로 예를 들어 꼬인위치의 선분으로 이루어진 점4개에 대해
예를 들어 0.3, 0.75 이동시 AB, CD에서 0.3내분점선분을 이은 후 0.75만큼을 이동한다.
- 즉, 내분식을 2번 중첩하면 된다.
N = aB+(1-a)A
M = aD+(1-a)C
bN + (1-b)M
장점: 구현이 간단, 빠름
단점: 미분이 까다로움(곡면근사이기 때문)
🤔 Triangulation interpolation
- 여러 점에 대해 3개의 점으로 삼각형을 만들어 평면상에 모두 mapping시키는 기법
M = (A+B+C+D)/4
밝기(z)가 주체이므로 평면의 방정식: z = ax+by+c로 정리 가능
i) A,B,M을 지나는 평면: z = (3 5 5)
x = (0 0.5 1)
y = (0 0.5 0)
if (0.5, 0.75)로 이동한다면 CMD평면이어서 위의 방정식을 사용할 수 없다.
장점: 미분이 쉽다.
단점: 매우 느리다.
[실습]: import
[실습] - Bilinear interpolation
[실습] - Triangulation interpolation
'Deep Learning : Vision System > 영상처리 ~ 최신비전' 카테고리의 다른 글
[Vision System]. Transformation (rotation, scale, transition) (0) | 2023.01.22 |
---|---|
[Vision System]. Scaling & Rotation (0) | 2022.12.29 |
[Vision System]. image blending & image masking (0) | 2022.11.23 |
[Vision System]. image crop & padding, translation, axis (0) | 2022.11.17 |
[Vision System]. 컴퓨터비전의 소개, prev_ pixel과 RGB, HSV (0) | 2022.11.10 |