主頁 > 知識庫 > 超詳細(xì)注釋之OpenCV構(gòu)建透明的疊加層

超詳細(xì)注釋之OpenCV構(gòu)建透明的疊加層

熱門標(biāo)簽:電話機(jī)器人適用業(yè)務(wù) 鄭州智能外呼系統(tǒng)運(yùn)營商 不錯的400電話辦理 湛江電銷防封卡 佛山防封外呼系統(tǒng)收費 南昌辦理400電話怎么安裝 徐州天音防封電銷卡 哈爾濱外呼系統(tǒng)代理商 獲客智能電銷機(jī)器人

為了構(gòu)造透明的疊加層,需要準(zhǔn)備兩個圖像:

(1)原始圖片;

(2)要 “疊加”在第一個圖像上的圖像(包含某種級別的Alpha透明度)。

透明疊加層的用例幾乎無窮無盡,其中倆個是:

  • 可以將運(yùn)行時的重要信息直接覆蓋在輸出圖像上,而不是在單獨的窗口或終端中顯示。使用透明的疊加層可以減少混淆輸出圖像內(nèi)容的需要!
  • 使用Alpha透明度,將兩個圖像“融合”在一起。

使用cv2.addWeighted應(yīng)用透明疊加層功能

cv2.addWeighted(overlay, alpha, output, 1 - alpha, 0, output)

  • –overlay: 我們要應(yīng)用的疊加層圖像
  • –cv2.addWeighted(overlay, alpha, output, 1 - alpha, 0, output)
  • –alpha: 疊加層的實際Alpha透明度,alpha越接近1,圖像越不透明;alpha越接近0,疊加層顯示得越透明;
  • –output: 原始圖像
  • –beta: Beta定義為1-alpha 。我們需要定義alpha + beta = 1.0
  • gamma: 伽瑪值-加到加權(quán)和的標(biāo)量??梢詫amma視為應(yīng)用加權(quán)加法后添加到輸出圖像的常數(shù)。將其設(shè)置為零,表示不需要應(yīng)用恒定值的加法運(yùn)算。
  • –output: 最終的結(jié)果,輸出圖像

效果圖:

# USAGE
# python overlay.py

# 導(dǎo)入必要的包
from __future__ import print_function
import numpy as np
import cv2
import imutils

# 加載圖像
image = cv2.imread("../image/flower4.jpg")
image = imutils.resize(image, width=600)
cv2.imshow("origin", image)
cv2.waitKey(0)

# 循環(huán)遍歷 [0,1.0] 的透明度
for alpha in np.arange(0, 1.1, 0.1)[::-1]:
    # 創(chuàng)建倆個原始圖的拷貝
    # 一個用于構(gòu)建疊加層 一個用于輸出圖像
    overlay = image.copy()
    output = image.copy()
    # 在左上角 添加文本: PyimageSerach:alpha
    # 在右下角畫一個矩形的紅色框
    cv2.rectangle(overlay, (150, 210), (500, 630),
                  (0, 0, 255), -1)
    cv2.putText(overlay, "PyImageSearch: alpha={:.2f}".format(alpha),
                (10, 30), cv2.FONT_HERSHEY_SIMPLEX, 1.0, (0, 0, 255), 3)

    # 使用cv2.addWeighted應(yīng)用透明疊加層功能
    # overlay: 我們要應(yīng)用的疊加層圖像
    # alpha:   疊加層的實際Alpha透明度,alpha越接近1,圖像越不透明;alpha越接近0,疊加層顯示得越透明;
    # output: 原始圖像
    # beta:   我們提供beta值作為第四個參數(shù)。 Beta定義為1-alpha 。我們需要定義alpha和beta,以便alpha + beta = 1.0
    # gamma:  伽瑪值-加到加權(quán)和的標(biāo)量。您可以將gamma視為應(yīng)用加權(quán)加法后添加到輸出圖像的常數(shù)。在這種情況下,我們將其設(shè)置為零,因為我們不需要應(yīng)用恒定值的加法運(yùn)算。
    # output: 輸出圖像
    cv2.addWeighted(overlay, alpha, output, 1 - alpha,
                    0, output)

    # 展示輸出圖像,alpha,beta
    print("alpha={:.2f}, beta={:.2f}".format(alpha, 1 - alpha))
    cv2.imshow("Output", output)
    cv2.waitKey(0)

cv2.destroyAllWindows()

參考:

https://www.pyimagesearch.com/2016/03/07/transparent-overlays-with-opencv/

到此這篇關(guān)于超詳細(xì)注釋之OpenCV構(gòu)建透明的疊加層的文章就介紹到這了,更多相關(guān)OpenCV構(gòu)建疊加層內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 超詳細(xì)注釋之OpenCV按位AND OR XOR和NOT
  • 超詳細(xì)注釋之OpenCV Haar級聯(lián)檢測器進(jìn)行面部檢測
  • 超詳細(xì)注釋之OpenCV更改像素與修改圖像通道
  • 超詳細(xì)注釋之OpenCV dlib實現(xiàn)人臉采集

標(biāo)簽:呂梁 紹興 蕪湖 安康 蘭州 懷化 吉安 廣西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《超詳細(xì)注釋之OpenCV構(gòu)建透明的疊加層》,本文關(guān)鍵詞  超,詳細(xì),注釋,之,OpenCV,構(gòu)建,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《超詳細(xì)注釋之OpenCV構(gòu)建透明的疊加層》相關(guān)的同類信息!
  • 本頁收集關(guān)于超詳細(xì)注釋之OpenCV構(gòu)建透明的疊加層的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章