해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 레이블링 (Labeling) 각 객체 영역에 대해 고유의 번호를 지정한다. 이진화 처리 된 영상에 대해 각 객체의 위치, 크기, 모양을 분석할 때 사용한다. 객체 픽셀 집합에 고유 번호를 매기는 작업...
OpenCV 모폴로지 연산
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 모폴로지 (Mophology) 연산 모폴로지는 형태 또는 모양에 관한 학문을 의미하며, 영상 내부 객체의 형태와 구조를 분석하고 처리하는 기법이다. 그레이스케일 영상과 이진 영상 둘 다 가능하지만 주로 ...
OpenCV 이진화
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 이진화 (Binarization) 영상의 각 픽셀을 두 분류로 나누는 작업이다. 픽셀값은 0 또는 255가 될 수 있으며, 해당 부류는 사용자가 지정하기에 따라 달라진다. 객체영역과 ...
OpenCV 컬러 영상 히스토그램
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 컬러 히스토그램 평탄화 기존의 함수 cv::equalization() 을 통해 히스토그램 평탄화가 가능하지만 해당 함수는 그레이스케일만 입력을 받는다. 컬러 영상의 히스토그램 평탄화를 하기 위해선 직접 ...
OpenCV 컬러스케일
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 컬러 영상 픽셀 참조 cv::imread("/path/to/src", cv::IMREAD_COLOR); 함수로 BGR 형식으로 불러온다. 각 컬러는 0 부터 255 까지, uchar 형태를 사용하며, 컬...
OpenCV 허프 변환 원 검출
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 허프 변환 원 검출 중심좌표가 $(a, b)$이고 반지름이 $r$인 원의 방정식은 $(x - a)^2 + (y - b)^2 = r^2$ 로 표현가능하다. 해당 식은 파라미터가 3개이므로 ...
redis update 시 한글 깨짐 현상
문제 Redis 에 json으로 update 시 한글이 깨지는 문제가 발생했다. 해결 json.dumps() 시에 ensure_ascii = False 로 지정해준 뒤 .encode("utf-8")을 해주면 된다.
OpenCV 허프 변환 직선 검출
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 허프 변환 직선 검출 직선 검출은 주로 허프 변환 기법을 사용한다. 직선 성분을 찾기 위해 우선 에지를 찾아내고 해당 에지가 일직선상으로 배열 되어있는지를 확인한다. 허프 변환 (Hough Trans...
OpenCV 캐니 에지 기반 검출
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 캐니 에지 검출 기존 방식의 에지 검출기는 임계값에 민감하여 에지 픽셀이 두껍게 표현 되는 등의 문제가 발생한다. 해당 문제를 해결하기 위해 198년 캐니가 신규 에지 검출기를 3가지의 조건을 통해 제시...
OpenCV 마스크 에지 기반 검출
해당 포스팅은 OpenCV 4로 배우는 컴퓨터 비전과 머신러닝 (황선규 저)를 보고 공부하며 개인적인 용도를 위해 정리한 글이다. 마스크 에지 기반 검출 영상을 $x$ 축 방향 $(1, 3)$ 혹은 $y$ 축 방향 $(3, 1)$ 방향으로 편미분을 하게 되면 노이즈의 영향으로 결과의 정확도가 떨어질 수 있다. 실제 영상에서는 노이즈...