# OpenCV 이미지 로딩
- imread()를 이용한 이미지 로딩
> OpenCV에서 이미지 로딩은 imread('파일명')을 이용 , imread()은 파일을 읽어 넘파이 배열로 변환 (x,y,z)세로,가로,채널
* OpenCV가 이미지를 RGB 형태가 아닌 BRG 형태로 로딩하기 때문에 이미지의 색감이 변한다.
- 이미지 로딩시 BGR을 RGB로 변환
> cvtColor (이미지 배열 , cv2.COLOR_BGR2RGB) 이용
- OpenCV 이미지 배열을 파일에 쓰기
> opencv에서 메모리에 있는 이미지 배열을 저장하려면 imwrite('출력파일명',img_array)이용. 이때 imwrite()로 인해 BGR형태인 이미지 배열을 다시 RGB 형태로 변환하여 저장함 . 즉 , imread()로 일고 imwrite()로 출력하면서 이미지파일은 다시 RGB형태로 저장된다.
#OpenCV 영상처리 개요
> Video Capture 클래스는 동영상을 개별 frame으로 하나씩 읽어들이는 기능을 제공한다.
cap = cv2.VideoCapture(Video_input_path)
while True:
has_Frame , img_frame = cap.read()
if not has_Frame:
break
- Vdieo Capture 개요
- Video Capture 객체는 생성 인자로 입력 Video파일 위치를 받아 생성
cap = cv2.VideoCapture(video_input_path)
- 입력 video 파일의 다양한 속성을 가져올 수 있다.
영상 Frame 너비 , 영상 Frame 높이 , 영상 FPS
cap.get(cv2.CAP_PROP_FRAME_WIDTH)
cap.get(cv2.CAP_PROP_FRAME_HIGHT)
cap.get(cv2.CAP_PROP_FPS)
- Video Writter 개요
Video Writter 객체는 write할 동영상 파일 위치, encoding 코덱 유형 , write fps 수치 , frame 크기를 생성자로 입력 받아 이들 값에 따른 동여상 write 한다.
cap = cv2.VideoCapture(video_input_path)
codec = cv2.VideoWritter(*'XVID')
vid_size = (round(cap.get(cv2.get(CV2~WIDTH)),round(cap.get(cv2.get(CV2~HEIGHT)))
vid_fps = cap.get(cv2.CAP_PROP_FPS)
vid_writter = cv2.VideoWritter(video_output_path,codec,vid_fps,vid_size)
'DNN > 컴퓨터 비전' 카테고리의 다른 글
7) SPP( Spatial Pyramid Pooling) Net (0) | 2021.08.16 |
---|---|
6) RCNN(Region with CNN) (0) | 2021.08.16 |
4) 컴퓨터비전을 위한 주요 데이터 세트 (0) | 2021.08.16 |
3) Object Detection의 기본 원리와 주요 개념 (0) | 2021.08.16 |
2) Object Detection과 Segmentation의 이해 (0) | 2021.08.16 |
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!