회원 로그인
|
OpenCV 7-4. 이미지 채널을 분할하고, 합치기
https://blog.naver.com/samsjang OpenCV의 강좌를 공부 차원에서 재정리한 것입니다. |
:이미지 채널을 분할(cv2.split())하고 합치기(cv2.merge())
- cv2.split() : 채널 분리
- cv2.merge((b, g, r)) : 채널 합치기
- 컬러 이미지의 경우 B, G, R 채널별로 픽셀값들을 따로 분리할 수 있다.
- 분리해 놓은 B, G, R 채널을 합쳐서 컬러 이미지로 변환도 가능하다.
# -*- coding: utf-8 -*- # opencv_011-4.py # https://blog.naver.com/samsjang/220502203203 import cv2 img = cv2.imread('images/image.png') # 채널 분리 b, g, r = cv2.split(img) # 100, 100 위치에 픽셀 값 출력(리스트) (0~255 사이) print(img[100, 100]) # 100, 100 위치에 b, g, r 픽셀 값 출력(0~255 사이) print(b[100, 100], g[100, 100], r[100, 100]) cv2.imshow('blue channel', b) cv2.imshow('green channel', g) cv2.imshow('red channel', r) cv2.waitKey(0) # 키 대기 esc키 누르면 cv2.destroyAllWindows() # 창 종료 # numpy 인덱싱 활용?하여 b, g, r분리 b = img[:, :, 0] g = img[:, :, 1] r = img[:, :, 2] # 모든 픽셀의 r 채널 값을 0으로 만든다. img[:, :, 2] = 0 # 채널 합치기 merged_img = cv2.merge((b, g, r)) cv2.imshow('merged', merged_img) cv2.waitKey(0) cv2.destroyAllWindows()
결과
r값이 모두 0이기 때문에 레드 채널이 빠져 원본 이미지 처럼 나오지 않는다.
댓글 0개
| 엮인글 0개
285개(1/15페이지)
번호 | 제목 | 글쓴이 | 조회 | 날짜 |
---|---|---|---|---|
285 | [Python] 동적 import - 모듈을 변수로 받아오기 | 푸딩뱃살 | 405 | 2022.10.27 10:45 |
284 | [Python] 파이썬 3.7.7과 3.9.7의 os.path.expanduser() 차이 | 푸딩뱃살 | 435 | 2022.08.18 12:22 |
283 | [Python] error: Microsoft Visual C++ 9.0 is required. | 푸딩뱃살 | 654 | 2022.08.03 13:35 |
282 | [Python] pyscript | 푸딩뱃살 | 433 | 2022.06.09 11:21 |
281 | [Python] float is / float not is | 푸딩뱃살 | 580 | 2022.03.02 15:03 |
280 | [Python] 이터널 문자열 f | 푸딩뱃살 | 807 | 2022.01.27 16:35 |
279 | [Python] is와 ==의 차이 | 푸딩뱃살 | 475 | 2021.11.25 15:54 |
278 |
[Python] Error: ImportError: file |
푸딩뱃살 | 883 | 2021.11.16 11:24 |
277 | [Python] 파이썬 디컴파일 - uncompyle6 | 푸딩뱃살 | 749 | 2021.11.10 14:46 |
276 | [Python] 파이썬 확장자 설명 | 푸딩뱃살 | 534 | 2021.11.03 14:38 |
275 | [참고] 웹 fbx 뷰어 | 푸딩뱃살 | 452 | 2021.10.19 15:46 |
274 | [Python] enumerate() | 푸딩뱃살 | 482 | 2021.10.13 14:44 |
273 | [Python] 아나콘다에서 가상 환경 | 푸딩뱃살 | 690 | 2020.11.21 00:26 |
272 | [Python] pip로 설치 때 퍼미션 에러 | 푸딩뱃살 | 1245 | 2020.06.06 17:13 |
271 | [Python] OpenCV 10-3. 이미지 Thresholding - Otsu's Binarizatio | 푸딩뱃살 | 651 | 2020.06.05 14:01 |
270 | [Python] OpenCV 10-2. 이미지 Thresholding - Adaptive Threshold | 푸딩뱃살 | 673 | 2020.06.05 13:58 |
269 | [Python] OpenCV 10-1. 이미지 Thresholding | 푸딩뱃살 | 565 | 2020.06.05 13:56 |
268 | [Python] OpenCV 9-2. 색 추적 | 푸딩뱃살 | 740 | 2020.06.02 23:29 |
267 | [Python] OpenCV 9-1. 색공간 바꾸기 | 푸딩뱃살 | 626 | 2020.06.02 23:27 |
266 | [Python] OpenCV 8-3. 이미지 비트 연산 | 푸딩뱃살 | 509 | 2020.06.02 23:21 |