Computer Vision/OpenCV

Computer Vision/OpenCV

[openCV] 특정 색상 영역 추출하기

📌 Intro BGR to HSV로의 색상변경, 비디오에서 특정 색상을 가진 물체 추출하는 방법에 대해 알아보자. 사용하는 라이브러리는 openCV이며 함수는 cv2.cvtColor(), cv2.inRange() 다. 📌 BGR to HSV 색상은 보통 R(Red), G(Green), B(Blue)로 이루어져 있으며 각각 0~255사이의 숫자를 가져 특정한 색을 만들어낼 수 있다. HSV는 Hue(색상), Saturation(채도), Value(명도)로 각각 0~179, 0~255, 0~255 범위의 값을 가진다. HSV 중 H에 해당하는 색상을 이용하여 이미지에서 원하는 색상을 가진 물체를 추출할 수 있다. HSV를 사용하기 위해서는 BGR 색상 값을 이용하여 바꿔줄 수 있다. import cv2 im..

Computer Vision/OpenCV

[openCV] 허프 변환

📌 Intro 이미지에서 선레이저로 된 직선을 찾는 방법을 알아보다 허프변환에 대해 알게 되었다. 허프변환은 이미지에서 모양을 찾는 방법으로 가장 잘 알려져있다. 이 방법을 이용하면 이미지의 형태를 찾거나, 누락되거나 깨진 영역을 복원할 수도 있다고 한다. 허프변환의 간단한 이론적인 내용과 사용 방법에 대해 정리해보려 한다. 📌 이론 하나의 점을 지나는 무수한 직선의 방적식은 y=mx+c로 표현할 수 있고, 이를 삼각함수를 통해 변형하면 r = 𝑥 cos𝜃 + 𝑦 sin𝜃 로 표현할 수 있다. 각 점(x,y)에 대해서 삼각함수를 이용하여 𝜃 값을 1 ~ 180까지 변화를 하면서 원점에서 (x,y)까지의 거리(r)을 구한다. 그러면 (𝜃, r)로 구성된 180개의 2차원 배열을 구할 수 있다. 세 점에 대..

Computer Vision/OpenCV

[openCV] 영상에서 프레임 추출하기

📌 Intro 기능테스트를 위해 찍어놨던 영상에서 몇 장의 프레임을 가져와야 하는 일이 생겼다. 앞으로도 필요할 것 같은 작업이기 때문에 정리해두려고 한다. 📌 환경 openCV 라이브러리를 사용하고, 프레임을 추출할 영상은 아래 소스코드를 실행할 폴더 내에 있는 images폴더 아래 위치시켰다. 📌 소스코드 import cv2 # 비디오 출력 클래스(cv2.VideoCapture)를 통해 파일 경로의 동영상 파일을 불러옴 capture = cv2.VideoCapture('./images/side laser without tilting.MP4') count = 0 # 비디오가 성공적으로 열렸다면 while(capture.isOpened()): # 동영상 파일을 읽어옴 ret, image = capture..

Computer Vision/OpenCV

[openCV] 캐스케이드 분류기

📌 Intro 이번에는 OpenCV의 얼굴 검출 기능에 대해 정리할 것이다. 이 기능은 비올라와 존스라는 사람이 발표한 부스팅기반의 캐스케이드 분류기 알고리즘을 기반으로 만들어졌다. 이 알고리즘은 특히 얼굴 검출에 적용될 때 속도와 정확도가 좋다고 알려져있다. 📌 유사 하르 필터(Haar-like Filter) 먼저 알아야 할 정보로 유사 하르 필터가 있다. 유사 하르 필터란 흑백 사각형이 서로 붙어 있는 형태로 구성된 필터다. 유사 하르 필터 형태에서 흰색 영역 픽셀 값은 모두 더하고, 검은색 영역 픽셀 값은 모두 빼서 하나의 특징 값을 얻을 수 있다. 사람의 정면 얼굴 형태가 전형적으로 밝은 영역(이마, 미간, 볼 등)과 어두운 영역(눈썹, 입술 등)이 정해져 있기 때문에 유사 하르 필터로 구한 특징..

Krrong
'Computer Vision/OpenCV' 카테고리의 글 목록