4-(1) 영상 생성
영상 데이터는 Numpy의 array로 표현되므로 array를 생성하는 것과 동일합니다.
Import Library
import cv2
import numpy as np
from google.colab.patches import cv2_imshow
- 필요한 라이브러리들을 불러옵니다.
Create Numpy Array
img1 = np.empty((480, 640), dtype=np.uint8)
img2 = np.zeros((480, 640, 3), dtype=np.uint8)
img3 = np.ones((480, 640), dtype=np.uint8) * 100
img4 = np.full((480, 640, 3), (0, 255, 255), dtype=np.uint8)
- img1 : 모든 원소가 임의의 값으로 초기화된 (480, 640) array.
- img2 : 모든 원소가 0으로 초기화된 (480, 640, 3) array.
- img3 : 모든 원소가 1로 초기화된 (480, 640) array.
- img4 : 모든 원소가 (0, 255, 255)로 초기화된 (480, 640, 3) array.
Print Image
cv2_imshow(img1)
cv2_imshow(img2)
cv2_imshow(img3)
cv2_imshow(img4)
4-(2) 영상 복사
영상 데이터는 Numpy의 array로 표현되므로 array를 복사하는 것과 동일합니다.
Upload File
from google.colab import files
upload = files.upload()
Saving HappyFish.jpg to HappyFish.jpg
Copy and Modify Image
import cv2
from google.colab.patches import cv2_imshow
img1 = cv2.imread('HappyFish.jpg')
img2 = img1
img3 = img1.copy()
img1.fill(100)
- img1 : 'HappyFish' 컬러 이미지.
- img2 : img1과 동일한 메모리를 공유하는 변수.
- img3 : img1의 데이터를 복사한 이미지.(img1과 다른 메모리)
- img1의 array의 각 원소를 모두 100으로 값을 수정합니다.
Print Image
cv2_imshow(img1)
cv2_imshow(img2)
cv2_imshow(img3)
4-(3) 영상 추출
영상 데이터는 Numpy의 array로 표현되므로 array를 슬라이싱하는 것과 동일합니다.
Upload File
from google.colab import files
upload = files.upload()
Saving HappyFish.jpg to HappyFish.jpg
Slicing Image
import cv2
from google.colab.patches import cv2_imshow
img1 = cv2.imread('HappyFish.jpg')
img2 = img1[40:120, 30:150]
img3 = img1[40:120, 30:150].copy()
img2.fill(0)
- img1 : 'HappyFish' 컬러 이미지.
- img2 : img1의 행(index 40~119) * 열(index 30~149) 크기의 부분 이미지. (img1과 동일한 메모리)
- img3 : img2를 복사한 이미지.(img2와 다른 메모리)
- img2의 모든 원소의 값을 0으로 수정합니다.
Print Image
cv2_imshow(img1)
cv2_imshow(img2)
cv2_imshow(img3)
*참고 : OpenCV를 활용한 컴퓨터 비전과 딥러닝
'Fields Applied with AI > 컴퓨터 비전 Computer Vision' 카테고리의 다른 글
Ⅰ. 컴퓨터 비전 기초 (6. 동영상이란?) (0) | 2022.02.27 |
---|---|
Ⅰ. 컴퓨터 비전 기초 (5. 마스크 연산과 ROI) (0) | 2022.02.25 |
Ⅰ. 컴퓨터 비전 기초 (3. 영상의 속성) (0) | 2022.02.24 |
Ⅰ. 컴퓨터 비전 기초 (2. 영상이란?) (0) | 2022.02.22 |
Ⅰ. 컴퓨터 비전 기초 (1. 컴퓨터 비전이란?) (0) | 2022.02.19 |