728x90
영상 처리 개요
영상
- 광선 혹은 매체에 의한 정보를 시각적으로 표현한 것
- 이미지
- Gray image vs. Color image
영상처리
- 영상을 대상으로 하는 신호처리의 한 분야
- 영상의 화소값을 조작하여 여러 효과를 줌
- 잡음 제거, 화질 향상, 영상 압축, 영상 와핑, 모핑 등
- 아날로그 방식 ( ~ 20세기 중)
- 1960년 달 표면 사진 화질 복원에 대한 연구가 시초
영상 처리의 분야
- 화질 향상
- 기하학적 변화
- 영상 압축
- 동영상 처리
- 영상 분할
- 객체의 모양 기술
- 객체 인식
컴퓨터 비전
- 컴퓨터에 시각을 주는 작업으로 시각으로부터 입력 받은 영상을 이용하여 인간이 할 수 있는 일을 자율적으로 수행하는 알고리즘에 대한 연구분야
- 특정 물체의 사진을 컴퓨터에 입력
- 사진 안의 객체를 인식하는 일을 자동으로 수행
- 영상 정보로부터 얻을 수 있는 밝기, 색상, 모양, 텍스처 등을 이용하여 업무 수행
- 주로 머신러닝 기술을 이용하여 영상에 적용
- 영상 처리와 컴퓨터 비전의 경계는 명확히 나누기 어려움
- 많은 사람들이 혼용하여 사용
- 수학 및 공학 이론이 차지하는 비중이 매우 큼
- 선형대수, 미적분학, 확률과 통계, 기하학
- 수치해석, 알고리즘, 최적화
- 신호처리, 인지과학
- 카메라 구조 및 영상 획득과 관련된 관련된 과학
- 컴퓨터 그래픽스와 상대적인 개념이지만 함께 발전
Open CV 라이브러리
이미지 파일 불러오기
윈도우 창으로 이미지 출력하기
폴더에 이미지 넣기
color image display
이미지를 color 값 변경
gray image display
- Interpolation은 보간법을 뜻하며, 픽셀들의 축 위치 간격을 보정하여 이미지가 자연스러운 모양으로 분리할 수 있게 하는 방법
- imshow()에서는 16가지 보간법이 있고, 'nearest'는 가장 고해상도인 보간법
magin image save
subplot image display
video input and display
- 영상 입력: cv2.imreaad(filename[,flage]) → retval
- 영상 파일 출력: cv2.imwrite(filename, img[, params]) → retval
- 윈도우 생성: cv2.namedWindow(winname[, flags])
- 윈도우 표시: cv2.imshow(winname,mat)
- 키보드 입력 대기: cv2.waitKey([,delay])
- 윈도우 파괴: cv2.destroyWindow(winname) cv2.destroyAllWindows()
- 비디오 획득 객체 생성: cv2.VideoCapture() → cv2.VideoCapture(filename) → cv2.VideoCapture(device) → device = 0, 1, …
- 프레임 획득: cv2.VideoCapture.read([image]) → retval, image
- 프레임 잡기: cv2.VideoCapture.grab() → retval
- 프레임 획득: cv2.VideoCapture.retrieve([image[, channel]]) → retval, image
영상 처리를 위한 기본 기능 및 이벤트 처리 구현
white 배경 생성 및 pt1 - pt2(red), pt1-pt3(blue)을 잇는 선 그리
white 배경 생성 및 사각형 그리기
clipLine: 직사각형과 직선이 만나는 교차점을 구하는 함수
반지름이 200(red), 100(red), 10(blue),1(red)이고 이미지 중심에 같은 원 그려보기
ellipse: 타원을 그리는 함수
그림의 중심에 임의의 크기 타원 그려보기, 각도 0, 45 변경 등 다양한 시도
앞의 타원을 box 옵션 지정해서 구현해보기
728x90
'부트캠프 > 컴퓨터 비전' 카테고리의 다른 글
[OpenCV] 코너 검출 (0) | 2022.11.15 |
---|---|
[OpenCv] Border Type, Blur Filter (0) | 2022.11.11 |
[Open CV] 이미지 정규화(Normalize), 임계값 분석 (0) | 2022.11.08 |
[OpenCV] 영상 접근법/영상처리 알고리즘 및 응용 (0) | 2022.11.07 |
[Open CV] 도형 그리기 (0) | 2022.11.04 |