회원 로그인
|
OpenCV 8-2. 이미지 블렌딩 (Image Blending)
https://blog.naver.com/samsjang OpenCV의 강좌를 공부 차원에서 재정리한 것입니다. |
: 이미지 블렌딩 (Image Blending) - 두개의 이미지가 있고, 1번 이미지에서 2번 이미지로 서서히 변해가는 블렌딩
- 블렌딩 하는 공식
- 알파값이 0에서 1로 변해가면 f0의 효과는 감소하고, f1의 효과는 커진다.
- cv2.addWeighted() 함수는 위의 수식을 차용하여 새로운 이미지로 블렌딩하는 함수이다.
- cv2.namedWindow() : 윈도우명
- cv2.createTrackbar() : 트랙바 생성
- cv2.getTrackbarPos() : 트랙바 현재 위치 추출
- cv2.addWeighted() : 이미지에 가중치
# -*- coding: utf-8 -*- # opencv_012-2.py # https://blog.naver.com/samsjang/220503082434 import numpy as np import cv2 def onMouse(x): pass def imgBlending(imgfile1, imgfile2): img1 = cv2.imread(imgfile1) img2 = cv2.imread(imgfile2) cv2.namedWindow('ImgPane') # 0~100까지 이동 가능한 트랙바 생성 cv2.createTrackbar('Mixing', 'ImgPane', 0, 100, onMouse) # 생성한 직후 트랙바의 현재 위치(0)를 mix에 넣는다 mix = cv2.getTrackbarPos('Mixing', 'ImgPane') while True: # 트랙바로 얻은 값(mix, 0~100)을 얻어 img1에 float(100-mix)/100, img2에 float(mix)/100 가중치를 준다. img = cv2.addWeighted(img1, float(100-mix)/100, img2, float(mix)/100, 0) cv2.imshow('ImgPane', img) k = cv2.waitKey(1) & 0xFF if k == 27: break mix = cv2.getTrackbarPos('Mixing', 'ImgPane') cv2.destroyAllWindows() imgBlending('images/add_image1.jpg', 'images/add_image2.jpg')
댓글 0개
| 엮인글 0개
285개(2/15페이지)
번호 | 제목 | 글쓴이 | 조회 | 날짜 |
---|---|---|---|---|
>> | [Python] OpenCV 8-2. 이미지 블렌딩 (Image Blending) | 푸딩뱃살 | 652 | 2020.06.02 23:15 |
264 | [Python] OpenCV 8-1. 이미지 연산 처리를 이용한 이미지 합성 | 푸딩뱃살 | 684 | 2020.06.02 23:06 |
263 | [Python] OpenCV 7-5. 이미지를 b/g/r 채널로 분할하기 | 푸딩뱃살 | 660 | 2020.05.17 18:23 |
262 | [Python] OpenCV 7-4. 이미지 채널을 분할하고, 합치기 | 푸딩뱃살 | 816 | 2020.05.17 18:16 |
261 | [Python] OpenCV 7-3. 이미지 영역(Region of Image:ROI) 설정 | 푸딩뱃살 | 751 | 2020.05.17 18:12 |
260 | [Python] OpenCV 7-2. 이미지 속성 얻기 | 푸딩뱃살 | 652 | 2020.05.17 18:08 |
259 | [Python] OpenCV 7-1. 이미지 픽셀 값 얻고 수정 | 푸딩뱃살 | 646 | 2020.05.13 10:22 |
258 | [Python] OpenCV 6. 트랙바(슬라이드바) 활용하기 | 푸딩뱃살 | 692 | 2020.05.03 00:14 |
257 | [Python] OpenCV 5-2. 마우스로 도형 그리기 (직사각형) | 푸딩뱃살 | 702 | 2020.05.03 00:08 |
256 | [Python] OpenCV 5-1. 마우스로 도형 그리기 (원형) | 푸딩뱃살 | 730 | 2020.05.03 00:05 |
255 | [Python] OpenCV 4. 폰트 | 푸딩뱃살 | 742 | 2020.05.02 23:59 |
254 | [Python] OpenCV 3. 도형 그리기 | 푸딩뱃살 | 705 | 2020.05.02 23:56 |
253 | [Python] OpenCV 2-2. 비디오 저장하기, 녹화하기 | 푸딩뱃살 | 603 | 2020.05.02 23:53 |
252 | [Python] OpenCV 2-1. 비디오 읽기 / 재생 | 푸딩뱃살 | 566 | 2020.05.02 23:49 |
251 | [Python] OpenCV 1-3. matplotlib 플로팅 라이브러리 | 푸딩뱃살 | 753 | 2020.05.02 23:43 |
250 | [Python] OpenCV 1-2. 키보드 제어와 이미지 저장하기 | 푸딩뱃살 | 663 | 2020.05.02 22:55 |
249 | [Python] OpenCV 1-1. 이미지를 읽고, 화면에 출력 | 푸딩뱃살 | 661 | 2020.05.02 22:06 |
248 | [Python] Cython | 푸딩뱃살 | 1710 | 2020.04.11 01:26 |
247 | [Python] video to mocap | 푸딩뱃살 | 1349 | 2020.04.03 10:45 |
246 | [Python] DeprecationWarning: the imp module ~ import imp | 푸딩뱃살 | 2135 | 2019.11.24 20:37 |