반응형
OpenCV/OpenCV 강좌2019. 1. 3. 23:42OpenCV Python 강좌 - 템플릿 매칭(Template Matching)

이번 포스팅에서는 템플릿 매칭을 사용하여 이미지상에서 오브젝트를 찾는 방법을 다룹니다. 다음 OpenCV Python 튜토리얼을 참고하여 강좌를 비정기적로 포스팅하고 있습니다. https://docs.opencv.org/4.0.1/d6/d00/tutorial_py_root.html 템플릿 매칭 구현은 다음 링크를 참고하세요. OpenCV 강좌 - 템플릿 매칭(Template Matching) 구현https://webnautes.tistory.com/1349 마지막 업데이트 2019. 1. 3 템플릿 매칭은 입력 이미지에서 템플릿 이미지의 위치를 찾는 방법입니다. OpenCV에서는 템플릿 매칭을 위해 cv.matchTemplate() 함수를 제공합니다. 2차원 컨볼루션처럼 템플릿 이미지를 입력 이미지상 위..

OpenCV/OpenCV 강좌2018. 12. 24. 10:24OpenCV Python 강좌 - 8. Hough Line Transform

Hough Line Transform 구현 원리에 대해서 다룹니다. 유튜브에서 사용한 코드입니다. import cv2 as cv import numpy as np import math import time img_original = cv.imread('square.jpg', cv.IMREAD_COLOR) img_gray = cv.cvtColor(img_original, cv.COLOR_BGR2GRAY) img_edge = cv.GaussianBlur(img_gray, (5, 5), 0, 0) img_edge = cv.Canny(img_edge, 50, 150, 3) height = img_edge.shape[0] width = img_edge.shape[1] tmp = min(height, width) ..

OpenCV/OpenCV 강좌2018. 12. 23. 12:16성능 좋은 얼굴 인식(Face Recognition) 라이브러리 테스트

깃허브에 공개되어 있는 파이썬 기반 얼굴 인식 라이브러리를 테스트해보았습니다. 1. dlib를 설치합니다.(시간이 오래 걸립니다.)pip3 install dlib 2. Face Recognition 라이브러리를 설치합니다. pip3 install face_recognition 3. OpenCV를 설치합니다. pip3 install opencv-contrib-python 4. 아래 주소에 있는 코드를 가져옵니다. https://github.com/ageitgey/face_recognition/blob/master/examples/facerec_from_webcam_faster.py 5. 인식할 얼굴 사진과 이름을 변경해줍니다. 오바마 이미지를 스마트폰으로 촬영후 얼굴만 잘라낸 사진으로 변경했습니다. 인식할..

OpenGL2018. 12. 16. 23:28Python으로 배우는 Modern OpenGL - 3. 사각형 그리기( Element Buffer Object)

PyOpenGL과 GLFW를 사용하여 사각형을 그려보는 Modern OpenGL 예제입니다. 다음 깃허브의 코드를 바탕으로 강좌를 진행하고 있습니다. https://github.com/totex/PyOpenGL_tutorials Python으로 배우는 Modern OpenGL - 1. 개발환경 만들기https://webnautes.tistory.com/1271 Python으로 배우는 Modern OpenGL - 2. 삼각형 그리기(Vertex Buffer Object)https://webnautes.tistory.com/1272 이전 포스팅과 겹치는 부분을 제외하고 설명합니다. 사각형을 그리려면 삼각형을 2번 그려야 합니다. 그러면 같은 버텍스를 두 번 정의해야 하는 문제가 생깁니다. 복잡한 모델을 이 ..

OpenGL2018. 12. 16. 22:50Python으로 배우는 Modern OpenGL - 2. 삼각형 그리기(Vertex Buffer Object)

PyOpenGL과 GLFW를 사용하여 삼각형을 그려보는 Modern OpenGL 예제입니다. 다음 깃허브의 코드를 바탕으로 강좌를 진행하고 있습니다. https://github.com/totex/PyOpenGL_tutorials Python으로 배우는 Modern OpenGL - 1. 개발환경 만들기https://webnautes.tistory.com/1271 1. GLFW를 초기화합니다. if not glfw.init(): return 2. 크기 800 x 600의 윈도우를 생성합니다. 생성시 문제가 발생하면 GLFW를 사용해 생성한 윈도우와 context 관련 자원을 해제합니다. window = glfw.create_window(800, 600, "My OpenGL window", None, None..

OpenCV/OpenCV 강좌2018. 12. 15. 13:52OpenCV Python 강좌 - 2차원 히스토그램과 Histogram Backprojection

이미지에서 2차원 히스토그램을 구하는 방법과 응용으로 Histogram Backprojection을 설명합니다. 다음 OpenCV Python 튜토리얼을 참고하여 강좌를 비정기적로 포스팅하고 있습니다. https://docs.opencv.org/4.0.0/d6/d00/tutorial_py_root.html 최초작성 2018. 12. 15 1. 2차원 히스토그램(2D Histograms)그레이스케일 이미지로 부터 구한 히스토그램은 1차원 히스토그램이었습니다. 그레이스케일 이미지가 하나의 채널을 가지고 있었기 때문에 하나의 특징만을 고려했습니다. 2차원 히스토그램에서는 두가지 특징을 고려합니다. 예를 들어 HSV 색공간 이미지를 입력으로 사용한다면 모든 픽셀에서 두가지 특징 Hue 값와 Saturation ..

OpenCV/OpenCV 강좌2018. 12. 14. 07:31OpenCV Python 강좌 - 히스토그램(Histogram)

이미지에서 히스토그램을 구하는 방법과 응용으로 Histogram Equalization, CLAHE을 설명합니다. 다음 OpenCV Python 튜토리얼을 참고하여 강좌를 비정기적로 포스팅하고 있습니다. https://docs.opencv.org/4.0.0/d6/d00/tutorial_py_root.html 최초작성 2018. 12. 13 1. 히스토그램이란? 히스토그램은 이미지를 구성하는 픽셀값 분포에 대한 그래프입니다. X축은 픽셀값으로 범위는 0 ~ 255 사이입니다. Y축은 이미지에서 해당 픽셀값을 가진 픽셀의 개수입니다. 히스토그램의 왼쪽에는 가장 어두운 검은색 픽셀(0)의 갯수를 보여주며 오른쪽으로 갈 수록 밝은 픽셀의 갯수를 보여줍니다. 히스토그램을 보면 이미지 촬영시 빛의 노출이 제대로 되..

OpenGL2018. 12. 1. 22:05Python으로 배우는 Modern OpenGL - 1. 개발환경 만들기

Python에서 OpenGL을 동작시켜야 하는 필요성을 느껴서 PyOpenGL, glfw를 설치하고 예전에 작성했던 포스팅에 있는 코드를 Python으로 변환해서 실행시켜 보려했는데 잘 안되네요. C++ 코드에서는 glew를 사용했었는데 파이썬에는 존재하지 않는 라이브러리라서 그런듯 싶습니다. Modern OpenGL 강좌 - 삼각형 그리기( 렌더링, Vertex Array Object, Vertex Buffer Object)https://webnautes.tistory.com/1153 그래서 깃허브에서 찾은 PyOpenGL 예제 코드를 분석하고 필요하면 변형해서 포스팅을 해보려고 합니다. https://github.com/totex/PyOpenGL_tutorials 오늘은 실행시켜 보는 방법만 소개합니..

OpenCV/OpenCV 강좌2018. 11. 28. 11:51OpenCV Python강좌 - 컨투어(Contour) 검출 및 특성 사용하기

컨투어 검출하는 방법과 컨투어 특성을 사용하는 방법을 다룹니다. 사용하는 OpenCV 버전에 따라 findContours 함수의 사용 방법이 다음처럼 차이가 있습니다. OpenCV 4.xcontours, hierarchy = cv.findContours(img_binary, cv.RETR_LIST, cv.CHAIN_APPROX_SIMPLE) OpenCV 3.x_, contours, hierarchy = cv.findContours(img_binary, cv.RETR_LIST, cv.CHAIN_APPROX_SIMPLE) Contour Features영역 크기 import cv2 as cv img_color = cv.imread('test.png') img_gray = cv.cvtColor(img_color..

OpenCV/OpenCV 강좌2018. 11. 15. 08:00OpenCV 강좌 - Canny Edge Detector 이론 및 사용 예제

Canny Edge Detector를 구현하기 위해 필요한 이론과 OpenCV에서 제공하는 Canny 함수 사용방법을 다룹니다. 캐니 에지 디텍터(Canny Edge Detector) 이론 2. OpenCV Canny 함수 2-1. Python 기본 예제 트랙바 사용 예제 2-2. C++ 기본 예제 트랙바 사용 예제 3. 참고 2018. 11. 14. 최초 작성. 1. 캐니 에지 디텍터(Canny Edge Detector) 이론 2. OpenCV Canny 함수OpenCV에서는 하나의 함수 Canny만 호출하면 캐니 에지를 얻을 수 있습니다. 2-1. Python 기본 예제 img_canny = cv2.Canny(image, threshold1, threshold2, edges=None, aperture..

반응형
image