国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - 詳解python opencv圖像混合算術運算

詳解python opencv圖像混合算術運算

2021-12-30 00:03RayChiu757374816 Python

這篇文章主要介紹了python opencv圖像混合算術運算的相關知識,本文通過實例圖文相結合給大家介紹的非常詳細,需要的朋友可以參考下

圖片相加cv2.add()

要疊加兩張圖片,可以用 cv2.add() 函數,相加兩幅圖片的形狀(高度 / 寬度 / 通道數)必須相同。
numpy中可以直接用res = img + img1相加,但這兩者的結果并不相同(看下邊代碼):
add()兩個圖片進行加和,大于255的使用255計數.
numpy會對結果取256(相當于255+1)的模:

import numpy as np
import cv2

x = np.uint8([250])
y = np.uint8([10])

print(cv2.add(x, y)) # 250+10 = 260 => 255
print(x + y) # 250+10 = 260 % (255 + 1) = 4

如果是二值化圖片(只有0和255兩種值),兩者結果是一樣的(用numpy的方式更簡便一些)。

實驗圖片:

詳解python opencv圖像混合算術運算

詳解python opencv圖像混合算術運算

add()后效果

詳解python opencv圖像混合算術運算

相減、相乘、相除:

  • subtract(img1,img2) # 相減,可以用于目標檢測m
  • ultiply(img1,img2) # 相乘
  • divide(img1,img2) # 相除

圖像融合、混合addWeighted()

圖像混合 cv2.addWeighted() 也是一種圖片相加的操作,只不過兩幅圖片的權重不一樣,γ相當于一個修正值:

詳解python opencv圖像混合算術運算

img1 = cv2.imread('lena_small.jpg') 
img2 = cv2.imread('opencv-logo-white.png') 
res = cv2.addWeighted(img1, 0.6, img2, 0.4, 0)

效果:

詳解python opencv圖像混合算術運算

α和β都等于1時,就相當于圖片相加。

 

按位運算

按位操作包括按位與 / 或 / 非 / 異或操作,有什么用途呢?比如說我們要實現下圖的效果:

詳解python opencv圖像混合算術運算

如果將兩幅圖片直接相加會改變圖片的顏色,如果用圖像混合,則會改變圖片的透明度,所以我們需要 用按位操作。 首先來了解一下 掩膜(mask) 的概念:掩膜是用一副二值化圖片對另外一幅圖片進行局 部的遮擋,看下圖就一目了然了:

詳解python opencv圖像混合算術運算

所以我們的思路就是把原圖中要放logo的區域摳出來,再把logo放進去就行了:

img1 = cv2.imread('lena.jpg') 
img2 = cv2.imread('opencv-logo-white.png')

# 把logo放在左上角,所以我們只關心這一塊區域 
rows, cols = img2.shape[:2] 
roi = img1[:rows, :cols] 
# 創建掩膜 
img2gray = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY) 
ret, mask = cv2.threshold(img2gray, 10, 255, cv2.THRESH_BINARY) 
mask_inv = cv2.bitwise_not(mask) 

# 保留除logo外的背景 
img1_bg = cv2.bitwise_and(roi, roi, mask=mask_inv) 
dst = cv2.add(img1_bg, img2)# 進行融合 
img1[:rows, :cols] = dst # 融合后放在原圖上

掩膜的概念在圖像混合/疊加的場景下使用較多。

上邊我們使用了

  • 按位與 bitwise_and(roi, roi, mask=mask_inv)
  • 非運算 bitwise_not(mask)

除了按位與、非運算還有:

  • 或運算 bitwise_or(img1,img2)
  • 異或運算bitwise_xor(img1,img2)

到此這篇關于詳解python opencv圖像混合算術運算的文章就介紹到這了,更多相關python opencv圖像算術運算內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/RayChiu757374816/article/details/120065974

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲国产精品一区二区久久,亚洲午夜 | 国产成人精品综合 | 国产成人高清在线 | 91影院| 欧美中文字幕 | 久久久久久久久久久久免费 | 成人黄页在线观看 | 国产一区二区视频在线观看 | 色综合中文 | 最新毛片在线观看 | 久久色视频 | 欧美中文一区二区三区 | 激情五月激情综合网 | 亚洲国产第一页 | 激情国产精品 | 日韩av一区二区在线观看 | 日韩精品一区二区三区在线观看 | 国产在线精品一区二区 | 亚洲激情在线观看 | 在线观看av网站 | 青娱乐国产视频 | 999在线观看精品免费不卡网站 | www.av在线 | av私库在线观看 | 欧美日韩在线免费 | 91精品久久久久久久久 | 日本在线黄色 | 国产精品亚洲精品 | 在线免费视频一区二区 | 成人在线观看免费视频 | 久久久久99精品国产片 | 久久久久网站 | 少妇精品久久久久久久久久 | 亚洲精品日韩激情在线电影 | 无码一区二区三区视频 | 欧美精品一二三 | 性欧美精品高清 | 神马久久久久久久 | 国产精品美女久久久久久久网站 | 在线看亚洲 | 欧州一级片 |