-> Anaconda를 사용, ComputerVision이라는 가상환경 만들어서 실행하고 있는 상태임!
-> Incognito project 의 시작...ㅎㅎ
-> 사용한 이미지: 인프런 강좌에서 인용함!!
1. 비트맵/ 벡터 이미지
1) 비트맵 (래스터 이미지)
: 그림을 하나하나 셀 단위로 나누어서 채도별로 각각 matrix(표) 에 정보를 저장한다.
픽셀 단위로 색깔을 저장하고, 이 픽셀이 많아질수록 더 정교하고 실물에 가깝게 사진을 저장할 수 있다. 그렇지만 그림을 확대하면 깨질 가능성이 있다.
2) 벡터 방식
: 벡터 방식으로 이미지를 저장하면 이미지 자체 의 선과 곡선을 어떻게 그리는지(벡터) 에 대한 정보를 갖고 있기 때문에 확대해도 깨지지 않는다.
: 이와 같이 그림 자체를 어떻게 그리는지에 대하는 명령과 정보를 갖고있게 된다. 따라서 그림을 언제나 선명하게 그릴수 있게 된다.
-> 이미지를 모노톤으로 처리하는 실습을 해보았다.
+) destroyAllwindows, waitkey 누르면 창이 다 사라진다.
jupyternotebook- 기본적인 가상환경에서 실행이 된다. 따라서 앞서 만든 가상환경과 독립적으로 실행이 된다.
( 앞으로 사용한 예제는 ComputerVision에서 실행할 예정임.)
2. 이미지 픽셀 좌표체계
-> 기본적으로 opencv에서는 비트맵 이미지를 처리하게 된다.
: 좌표 위치를 찾아가면서 바꿔주거나 조작이 가능하다. r,g,b 컬러를 사용하게 된다.
-> 참고로 반드시 이미지가 저장되어있는 공간에 파이썬 파일을 실행해줘야 정상적으로 처리된다.
높이, 너비, rgb channel 개수가 정상적으로 출력이 된다.
-> 여기에 cv2.imshow("파일이름")을 추가하면 png 파일이 뜬다.
3. 이미지에 그리기
-> 이미지에 영역을 하나 정해서 위에 도형을 그릴수도 있고, 픽셀을 추출해서 rgb의 구성요소를 출력할수 있다.
+) img[50:100,50:100]=(0,0,255) -> 가로 50~100, 세로 50~100픽셀까지 추출해주는 것.
-> 함수를 이용해 rectangle,circle,line 등의 도형도 그릴 수 있다.
4. 이미지 변형하기
+) do not add any korean annotation at spyder.. ur program might not run properly..:(
-> rotate하여 출력도 가능하다.
-> 크기를 resizing할 수도 있다.
-> 이미지 뒤집기는 flip 함수 사용
5) 이미지 마스킹
: 이미지를 일정한 영역을 정해서 마스킹을 해줄 수 있다.
-> 마스크를 만들고, 이미지와 마스크의 공통적인 부분을 추출해서 출력해낼 수 있다, (이를 응용하여 얼굴에 마스크를 씌우는 방식인둡!!
6) 이미지 채널 조작
: 채널을 조작하고 관리하는 것에 대한 내용
-> 디지털에서 r,g,b등의 색깔 채널을 나타내는 부분. 이 채널을 잘 결합해서 총천연색의 색을 만들어 내는 것이다.
-> Gray scale로 그림이 출력되면 R,G,B 채널의 구별이 쉽지 않다.
이를 구분하기 위해서 나머지 색깔을 아예 지워버리는 방법을 도입할 수 있다.
=> 색깔별로 분리된 이미지가 나타나는 것을 확인 할 수 있다.
-> 몇가지 사진 필터를 적용할 수 있다.
=> merge 함수를 통해 모든 색깔을 병합해서 고유의 이미지를 그대로 출력할 수 있다.
'Computer Science > 영상처리 + FACE-ID project' 카테고리의 다른 글
DNN 모듈 집중 분석 (3) | 2020.04.30 |
---|---|
Haar module detection (0) | 2020.04.07 |