블로그
-
OpenCV 프로젝트 : 8.2 - 영상의 특징과 키 포인트
1) 코너 특징 검출 주로 픽셀의 변화가 심한 곳에 중점적으로 관심을 두는데, 특히 엣지와 엣지가 만나는 코너(corner)에 가장 큰 관심을 두게 된다. 코너를 검출하기 위한 방법으로 해리스 코너 검출(Harris corner detection)이 원조의 방법이다. dst = cv2.
blog.naver.com · 2020.05.20
-
OpenCV 프로젝트 : 5.4 - 5장 실전 워크숍
1) 모자이크 처리 특정 영역을 작게 축소했다가 다시 확대하면 원래의 픽셀과 비슷하긴 하지만, 보간법에 의해 연산한 결과로 선명도가 떨어져 뿌옇게 보이는 효과가 있다. (보간법으로는 cv2.INTER_AREA를 사용하면 저해상도 픽셀처럼 된다.) 축소 비율(rate)은 임의의 값을 지정
blog.naver.com · 2020.05.06
-
OpenCV 프로젝트 : 4.2 - 컬러 스페이스
1) 디지털 영상의 종류 1. 바이너리 이미지(binary) 바이너리 이미지의 두가지 값은 0과1 또는 0과 255 를 사용하고, 0은 검은색 255는 흰색을 표시해서 말 그대로 흑백이미지이다. (명암을 표현할 수 없고, 아주 오래전 신문 같은 인쇄물에서 사용했던 방법) 2. 그레이 스
blog.naver.com · 2020.04.25
-
OpenCV 프로젝트 : 4.1 - 관심영역 지정
이미지에 어떤 연산을 적용해서 새로운 이미지나 정보를 얻어내려고 할 때 전체 이미지를 대상으로 연산을 하는 것보다는 관심이 있는 부분만 잘라내서 하는 것이 훨씬 효과적이며, 데이터의 양이 줄어들어 알고리즘도 단순해진다. * Numpy 를 이용해서 관심영역을 지정할 때 주의사항 * 1)
blog.naver.com · 2020.04.25
-
OpenCV 프로젝트 : 4.6 - 4장 실전 워크숍
1) 반해골 괴물 얼굴 합성 얼굴과 해골 사진을 반씩 각각 합성한다. 단순히 합성하면 그냥 두개의 영상을 이어 붙인 것처럼 보여서 어색하다. 알파 블렌딩을 이용하여 자연스럽게 하나로 합성되도록 한다. 0 1.0 0.0 1 0.9838709677419355 0.016129032258064
blog.naver.com · 2020.05.02
-
OpenCV 프로젝트 : 4.4 - 이미지 연산 (2)
다음은 OpenCV이미지를 노을 배경에 합성하는 예제이다. cv2.IMREAD_UNCHANGED 를 통해 불러들인 이미지의 4번째 영역인 알파 채널을 이용한다. mask = OpenCV 이미지 (배경은 무시 - 검정) mask_inv = 배경 이미지 (OpenCV 이미지는 무시 - 검정) 배경 영상에서 OpenCV 이미지만큼 사이즈로 관심영역(RO.......
blog.naver.com · 2020.04.28
-
OpenCV 프로젝트 : 4.4 - 이미지 연산 (1)
1) 영상과 영상의 연산 영상에서의 한 픽셀이 가질 수 있는 범위는 0~255인데, 더하거나 빼기 연산을 한 결과가 255보다 클 수도 있고 0보다 작을 수도 있어서 결과 값을 0과 255로 제한할 장치가 필요하다. OpenCV는 아래의 함수로 이와 같은 기능을 제공한다. cv2.add
blog.naver.com · 2020.04.27
-
OpenCV 프로젝트 : 2.3 - 창 관리
한 개 이상의 이미지를 여러 창에 띄우는 경우 키보드와 마우스 이벤트처리하려면 창을 관리하는 기능이 필요하다. cv2.namedWindow(title, option) : 이름을 갖는 창 열기 option = cv2.WINDOW_NORMAL(사용자 창 크기 조정 가능) cv2.WINDOW
blog.naver.com · 2020.04.18
-
OpenCV 프로젝트 : 5.1 - 이동, 확대/축소, 회전
영상의 모양을 바꾸는 방법에 대해 알아보자. 기하학적 변환(geometric transform)은 영상 좌표에 기하학적 연산을 가해 변환된 새로운 좌표를 얻는 것을 말한다. 1) 이동 이동의 새로운 좌표 구하기 방정식을 행렬식으로 표현하면 아래와 같다. OpenCV는 2x3 행렬로 영상
blog.naver.com · 2020.05.03
-
OpenCV 프로젝트 : 2.2 - 그림 그리기
이번에는 이미지나 비디오에 그림을 그리는 것을 배워보자 예제를 진행하기 위해 먼저 blank_500.jpg 라는 흰색 배경의 500x500 픽셀 이미지를 생성하자 1. 직선 그리기 cv2.line(img, start, end, color, thickness, linetype) img =
blog.naver.com · 2020.04.15