Skip to content

Canny-edge, Image Pyramid, Histogram Equalization, Image Stitching, Calibration, Panda3D

Notifications You must be signed in to change notification settings

tgt5248/Visual-Copmuting

Repository files navigation

Visual-Copmuting

파이썬을 이용한 Canny-edge, Image Pyramid, Histogram Equalization, Image Stitching, Calibration, Panda3D

Canny-edge

stage1. RGB 채널의 이미지를 GRAYSCALE로 변환 후 노이즈 감소를 위한 스무딩 필터 적용

stage2. sobel 커널을 수평,수직 방향으로 적용 후 Edge_Gradient와 Angle계산 low_threshold value보다 낮은 값을 가지는 픽셀을 제거하여 Edge candidates를 구함

stage3. 픽셀의 방향과 연결된 엣지 픽셀들을 비교하여 Gradient 값이 최대인 픽셀만 남겨 Edge Thinning 수행

stage4. 픽셀의 Gradient값이 high_threshold value보다 크면 확실한 엣지로 결정 (빨간색), low ~ high_threshold value 사이 값이라면 확실한 엣지와 연결되어 있을 경우 엣지로 선정 (파란색), 확실한한 엣지와 연결되어 있지 않아 선정되지 못한 픽셀 (노란색)

result. 노란색을 제외한 최종 엣지 검출 결과

image

Image Pyramid

  1. 눈, 손 이미지를 이용해 각각 가우시안 피라미드, 라플라시안 피라미드를 구함

  2. 가우시안, 라플라시안 피라미드를 이용하여 손바닥 안에 눈 합성

  3. 이미지에 라플라시안 피라미드를 더하는것을 반복하여 이미지가 선명해도록함

image

image

단순히 두 이미지를 합친 것보다 경계가 희미해져 자연스럽게 합성되었음을 확인할 수 있다.

Histogram Equalization

Original. HSV 채널의 이미지의 V값으로 cdf(누적분포함수)를 구함

cv.HE. V값에 관해서 Histogram Equalization을 진행하여 HE가 적용된 이미지 생성. => 이미지의 대비 상승

AHE. V값을 기준으로 Adaptive Histogram Equalization을 진행. => HE 과도/소 밝기 문제점 해결

CLAHE. 과도하게 기울어진 cdf를 제한하기 위해 clipLimit을 설정하여 Contrast Limited AHE 진행. => 노이즈 감소 확인

image

Image Stitching

  1. SIFT 알고리즘을 통해 이미지의 keypoint, description 계산

  2. 기반 이미지를 선택하고 나머지 이미지들과의 description으로 KNN-Matching 진행하여 good correpondences 계산

  3. good correpondences이 가장 높은 이미지와 stitching

  4. 반복

image

IMG_7050

Panda3D

아루코 마커 위에 객체를 그리는 AR

  1. 노트북 웹캠을 사용하여 Camera calibration 진행

image

  1. ArUco Marker 인식하고 축 표시

image

  1. 객체를 marker에 배치 후 marker의 좌표계를 조정하여 축 표시

image

  1. 3개의 marker 생성 후 각각 다른 객체를 배치, 축 표시

image

  1. 애니메이션 및 Rendering effets(point light, ambient light)추가

image

About

Canny-edge, Image Pyramid, Histogram Equalization, Image Stitching, Calibration, Panda3D

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published