[DIP] Image Morphing (Simple)
·
Programming/DIP
Image Morphing은 한 이미지에서 다른 이미지로 부드럽게 전환하는 기술 두 image간에 대응되는 특징점들을 추출하여 mesh를 만들고 이들을 이용하여 부드럽게 전환이 되도록하는 게 일반적이지만,다음은 alpha-blending만을 이용한 아주 간단한 방법임.https://dsaint31.me/mkdocs_site/DIP/cv2/ch01/dip_1_04/ BMEImage Blending (or alpha Blending) 이것도 이미지 더하기 의 일종이지만, 이미지에 다른 가중치(\(\alpha\))를 부여하여 Blending 또는 transparency (투명감) 느낌을 부여함. 이는 아래 수식에 따라 더해짐: \[ g(i,jdsaint31.meExampleimport cv2import osd..
[CV] Camera Response Function (+Gamma Correction)
·
Programming/DIP
https://www.youtube.com/watch?v=95DNdbxaIXECamera Response Function카메라가 실제 장면의 빛의 강도(Brightness)를 디지털 이미지 픽셀 값으로 변환하는 방식을 설명하는 함수.$p(\lambda)$ : Photon flux, $\lambda$ 는 wavelength.$I$ : Electron flux from photodiode (Luminance라고 생각해도 된다.) 여기서 $B$ 는 brightness 임.$$ \begin{aligned}B&=It\left(\frac{\pi d^2}{4}\right) = It\pi r^2\\&=Ie\end{aligned} $$where$t$ : exposure time or integration time$d$ ..
[CV] DIP, Image Analysis, and Computer Vision
·
Programming/DIP
Image Processing과 Computer Vision(CV)은 상당 부분 겹쳐있으며, 명확하게 구분하기 어려운 분야들임. 이 두 분야는 연속선상에 있으며, 상당히 경계가 모호함. 공통적으로 두 분야 모두linear algebra, probability, statistics 등의 수학적 지식에 익숙할수록 깊이 있는 이해와 응용이 가능하며이론적 개념을 실제로 구현하고 적용하는 것이 필수적이라,MATLAB, Python, C, C++ 등의 프로그래밍 언어를 다룰 수 있는 능력을 요구함.프로그래밍 기술은 알고리즘을 구현하고, 실험하며, 결과를 시각화하는 데 핵심적인 역할을 함. 이러한 공통점과 모호한 경계에도 불구하고, Image Processing, Image Analysis, 그리고 Computer ..
[DIP] Image Stitching
·
Programming/DIP
Image Stitching"Image Stitching"은 여러 장의 사진 이미지를 결합하여 하나의 큰 이미지나 파노라마를 만드는 기술임.이 용어는 원래 바느질에서 유래했으며,바느질에서 "stitch"(바늘질)는 바늘과 실을 사용해 천이나 다른 재료를 연결하는 각각의 작은 바늘질을 의미함."Stitching"(스티칭)은 이러한 바늘질을 모아 하나의 큰 구조를 만드는 과정임. Image Patch들을 결합하는 과정도 이와 비슷한 측면이 있으며, 이에 기반해 Image Stitching이라는 용어가 생김.여러 개의 작은 이미지 조각들을 하나의 큰 이미지로 결합하는 과정을 "stitching"(스티칭)이라고 부름.Image Stitching 단계이 과정은 크게 다음의 네 가지 단계로 이루어짐:Alignmen..
[DIP] functional plot and image plot.
·
Programming/DIP
functional plot and image plot.Functional plot $f(x,y)$라는  function으로 image를 모델링할 수 있음.2개의 독립변수 $x,y$의 함수로 볼 경우, 3D graphics로 그릴 수 있음.2개의 독립변수에 의해  intensity 또는 brightness가 결정됨.(color 의 경우엔 dependent variable이 여러개로 vector라고 볼 수 있음) 다음은 matplotlib 로 functinal plot 을 수행하는 code snippet 임.from scipy import datasetsimport cv2import numpy as npimport matplotlib.pyplot as pltimg = datasets.face()img_gr..
[OpenCV] imshow 창설정 및 종료 처리 (x버튼 처리)
·
Programming/DIP
imshow 창설정 및 종료 처리 (x버튼 처리)창 설정 관련 arguments 및 options cv2.namedWindow를 통해 미리 창에 대한 title을 지정하여 놓을 수 있음.cv2.namedWindow('image', cv2.WINDOW_NORMAL)# Using resizeWindow() : Below code does not works with cv2.WINDOW_AUTOSIZE# cv2.resizeWindow("image", 300, 700)cv2.WINDOW_AUTOSIZE가 기본으로 2nd argument없이 호출시 선택됨.읽어들이는 image 크기에 맞춰 window의 크기가 결정됨.2nd argument로 cv2.WINDOW_NORMAL를 설정시 window의 크기 조정이 가능함..