Carpe diem

NLP 관련 석사 과정 재학 중 (2022.03 ~ )

OpenCV 14

문서 스캐너

[개요] 문서의 4개의 꼭짓점을 사람이 직접 찍어줌으로써 문서를 스캔했던 기존 방식과 달리, 자동으로 스캔 효과를 내는 프로그램 작성 * 해당 포스팅에서 다루고 있는 모든 내용은 다음 서적을 참고하였습니다. 파이썬으로 만드는 OpenCV 프로젝트 “개발자에게 딱 필요한 만큼의 이론과 활용 가능한프로젝트로 배우는 OPENCV 프로그래밍”OPENCV는 영상 처리와 컴퓨터 비전 분야에서 현존하는 가장 영향력 있는 라이브러리이다.이 책은 누구나 [내용 정리] 0. 접근 방법 입력받은 이미지를 그레이 스케일로 바꾸고, 가우시안 블러로 노이즈를 없앤 후 캐니 엣지로 경계를 검출한다. 경계 검출한 영상에 대해 findContour() 함수로 컨투어를 찾아 그 영역이 가장 큰 컨투어를 골라 approxPolyDP() ..

Python/OpenCV 2021.10.21

스케치 효과 카메라

[개요] 카메라 영상을 스케치한 그림처럼 보여주는 카메라 만들기 * 해당 포스팅에서 다루고 있는 모든 내용은 다음 서적을 참고하였습니다. 파이썬으로 만드는 OpenCV 프로젝트 “개발자에게 딱 필요한 만큼의 이론과 활용 가능한프로젝트로 배우는 OPENCV 프로그래밍”OPENCV는 영상 처리와 컴퓨터 비전 분야에서 현존하는 가장 영향력 있는 라이브러리이다.이 책은 누구나 [내용 정리] 0. 접근 방식 -> 스케치 영상을 만들기 위해서는 그레이 스케일로 바꾸어서 엣지를 얻어야 한다. 엣지를 얻기 위해서는 Laplacian 함수를 쓰는 것이 좋은데, 그 전에 잡음을 없애기 위해 GaussianBlur 함수를 먼저 적용한다. 엣지를 얻은 후 스레시홀드로 경계선 이외의 것들은 제거하고 반전하면 흰 도화지에 검은 ..

Python/OpenCV 2021.10.20

모자이크 처리

[개요] 사진의 특정 영역을 마우스로 선택하면 그 영역을 모자이크 처리하는 기능을 구현해보자. * 해당 포스팅에서 다루고 있는 모든 내용은 다음 서적을 참고하였습니다. 파이썬으로 만드는 OpenCV 프로젝트 “개발자에게 딱 필요한 만큼의 이론과 활용 가능한프로젝트로 배우는 OPENCV 프로그래밍”OPENCV는 영상 처리와 컴퓨터 비전 분야에서 현존하는 가장 영향력 있는 라이브러리이다.이 책은 누구나 [내용 정리] 0. 접근 방식 -> 특정 영역을 작게 축소했다가 다시 확대하면 원래의 픽셀과 비슷하긴 하지만, 보간법에 의해 연산된 결과이기 때문에 선명도가 떨어져 뿌옇게 보인다. OpenCV에서 제공하는 보간법 알고리즘 (cv.INTER_AREA)를 이용하여 저해상도 이미지를 만들어보자. 1. 구현 (확대,..

Python/OpenCV 2021.10.19

웹캠으로 실시간 움직임 감지하기

[개요] 웹캠을 이용하여, 실시간 움직임이 감지될 경우 움직임이 있는 부분에 대해 표시를 해 주는 기능을 구현해보자 * 해당 포스팅에서 다루고 있는 모든 내용은 다음 서적을 참고하였습니다. 파이썬으로 만드는 OpenCV 프로젝트 “개발자에게 딱 필요한 만큼의 이론과 활용 가능한프로젝트로 배우는 OPENCV 프로그래밍”OPENCV는 영상 처리와 컴퓨터 비전 분야에서 현존하는 가장 영향력 있는 라이브러리이다.이 책은 누구나 [내용 정리] 0. 접근 방식 -> 카메라를 고정한 책상이나 건물이 미세하게 떨리기도 하고 카메라의 이미지 센서의 한계 때문에 영상 간의 차이는 항상 발생) 이전과 이후의 두 프레임 영상에서 단순히 차이를 구해서는 움직임을 감지할 수 없다. ∴ 세 프레임 a, b, c를 순차적으로 얻어 ..

Python/OpenCV 2021.09.26

역투영

[개요] 앞서 배운 2차원 히스토그램과 HSV 컬러 스페이스를 이용하면 색상으로 특정 물체나 사물의 일부분을 배경에서 분리할 수 있다. 기본 원리는 물체가 있는 관심영역과 H와 V 값의 분포를 얻어낸 후 전체 영상에서 해당 분포의 픽셀만 찾아내는 것 * 해당 포스팅에서 다루고 있는 모든 내용은 다음 서적을 참고하였습니다. 파이썬으로 만드는 OpenCV 프로젝트 “개발자에게 딱 필요한 만큼의 이론과 활용 가능한프로젝트로 배우는 OPENCV 프로그래밍”OPENCV는 영상 처리와 컴퓨터 비전 분야에서 현존하는 가장 영향력 있는 라이브러리이다.이 책은 누구나 [내용 정리] 1. 역투영 0) 정의 -> 히스토그램 역투영은 영상의 각 픽셀이 주어진 히스토그램 모델에 얼마나 일치하는지를 검사하는 방법으로, 임의의 색..

Python/OpenCV 2021.09.25

영상 히스토그램 그리기

[개요] 영상 분야에서의 히스토그램에 대해 알아보고, 실제로 그려본다. * 해당 포스팅에서 다루고 있는 모든 내용은 다음 서적을 참고하였습니다. 파이썬으로 만드는 OpenCV 프로젝트 “개발자에게 딱 필요한 만큼의 이론과 활용 가능한프로젝트로 배우는 OPENCV 프로그래밍”OPENCV는 영상 처리와 컴퓨터 비전 분야에서 현존하는 가장 영향력 있는 라이브러리이다.이 책은 누구나 [내용] 1. 히스토그램 0) 정의 -> 영상 분야에서의 히스토그램은 전체 영상에서 픽셀 값이 1인 픽셀이 몇 개이고 2인 픽셀이 몇 개이고 하는 식으로 픽셀 값이 255이 픽셀이 몇 개인지까지 세는 것을 나타낸다. 이를 통해, 전체 영상에서 픽셀들의 색상이나 명암의 분포를 파악할 수 있다. 1) 히스토그램 함수 -> cv2.cal..

Python/OpenCV 2021.09.24